Skip to content

Release/v0.3.1 - #36

Merged
kjgpta merged 2 commits into
mainfrom
release/v0.3.1
Jul 1, 2026
Merged

Release/v0.3.1#36
kjgpta merged 2 commits into
mainfrom
release/v0.3.1

Conversation

@kjgpta

@kjgpta kjgpta commented Jul 1, 2026

Copy link
Copy Markdown
Owner

Summary

Type of change

  • Bug fix (non-breaking change which fixes an issue)
  • New feature (non-breaking change which adds functionality)
  • Breaking change (fix or feature that would cause existing behaviour to change)
  • Documentation only
  • Internal / refactor (no user-visible change)

Related issues

Test plan

  • python -m py_compile passes on every modified Python file
  • ruff check src/ tests/ tools/ is clean
  • Targeted test passes: pytest tests/test_<your_module>.py
  • Full suite passes: pytest tests/ --ignore=tests/stress
  • No new ResourceWarning during tests (no leaked DB connections / async tasks)
  • Manual smoke test against an example, if user-facing

Public-API changes

  • New: …
  • Changed: …
  • Removed: …

Screenshots / output

Checklist

  • I have read CONTRIBUTING.md
  • I have updated docs/changelog.md under the next unreleased version
  • I have updated docs in docs/ if user-visible behaviour changed
  • My commits follow the project's convention

Security policy

Supported versions

tracesage is currently in v0.1 alpha. Only the latest minor release receives
security fixes. Once v1.0 ships, the previous minor will receive fixes for
6 months after the next release.

Version Supported
0.1.x yes (alpha)
< 0.1 no

Reporting a vulnerability

Please do not open a public issue for security reports.

Use GitHub's Private Vulnerability Reporting
to send a confidential report. If that is unavailable, email
kjgpta+tracesage-security@users.noreply.github.com with:

  • A description of the issue and its impact
  • Steps to reproduce (a minimal proof-of-concept is ideal)
  • Affected versions, if known
  • Your suggested mitigation, if any

Response timeline

  • Acknowledgement within 3 business days
  • Initial assessment (severity + scope) within 7 business days
  • Fix or mitigation for high-severity issues within 30 days; lower-severity
    issues are scheduled into the next release
  • Public disclosure coordinated with the reporter; CVE assigned if
    applicable

Scope

In-scope:

  • The tracesage Python package itself (src/tracesage/)
  • The embedded server (FastAPI app, REST + WebSocket endpoints)
  • The on-disk storage format (SQLite + gzipped blobs)
  • The CLI (tracesage command)
  • Authentication and authorization paths

Out of scope:

  • Third-party dependencies — please report to the upstream project. We will
    upgrade once a fix is available.
  • LangChain / LangGraph behaviour itself — only the tracesage adapter is in scope.
  • Local-only attacks where the attacker already has shell access to the host.

Hardening recommendations

If you operate tracesage in production, please review
docs/production.md
which covers:

  • The hard fail-stop on non-loopback binding without auth_token
  • Constant-time bearer-token comparison
  • Path-traversal guards on blob reads
  • Sampling and per-run event caps as denial-of-service mitigations

kshitijgupta-ops and others added 2 commits July 1, 2026 10:33
The supervisor's stop branch (steps >= 4) returned a state without a "next"
key, so the conditional edge's pick() raised KeyError: 'next'. Always emit
next="done" in the stop branch and default pick() to "done" when absent.
Applied to both before.py and after.py (they differ only in the tracesage lines).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Bump version to 0.3.1 and document the changes merged since 0.3.0:
- register_mcp_client(handle_tool_errors=…) to fail runs on MCP tool errors
- failed nodes render solid red (fill + glow), not just a red outline
- MCP server palette recoloured so healthy servers never read as red
- register_mcp_client fallback across langchain-mcp-adapters API variants

Also update the README PyPI badge to v0.3.1 and remove the accidentally
committed code-session.txt (21.9k-line transcript) + gitignore it.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
@kjgpta
kjgpta merged commit d2232ca into main Jul 1, 2026
1 check passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants