Skip to content

feat: table renames, cp.run() context manager, adoption tiers (0.22.0)#10

Closed
ryanwi wants to merge 1 commit into
mainfrom
release/0.22.0
Closed

feat: table renames, cp.run() context manager, adoption tiers (0.22.0)#10
ryanwi wants to merge 1 commit into
mainfrom
release/0.22.0

Conversation

@ryanwi
Copy link
Copy Markdown
Owner

@ryanwi ryanwi commented Jun 2, 2026

Summary

  • Table renames — four SQL table names stripped of implementation-noise prefixes: control_sessions→agent_runs, control_events→audit_events, action_proposals→proposals, command_ledger→idempotency_ledger. Python class names unchanged. Migration SQL for existing deployments added to docs/compatibility.md.
  • cp.run() context manager — new RunHandle-yielding context manager on all four facade/resilient classes (async + sync). Opens, activates, and closes a session automatically; tags via run.tag() land in the close payload; exceptions abort the session with error repr and re-raise. Mirrors token_budget_tracker() ergonomics.
  • README adoption tiers — new Tier 1/2/3 section at the top, plus examples/audit_trail.py as the runnable Tier 2 demo.

Test plan

  • uv run pytest -q — 411 tests pass
  • make check — lint + typecheck + tests clean
  • uv run python examples/audit_trail.py — success path prints COMPLETED, error path prints ABORTED
  • Verify new table names appear in schema after create_tables() on a fresh DB

- Rename four SQL tables: control_sessions→agent_runs, control_events→audit_events,
  action_proposals→proposals, command_ledger→idempotency_ledger. Python class names
  unchanged; migration SQL in docs/compatibility.md.
- Add cp.run() context manager (async + sync + resilient variants) yielding RunHandle.
  Opens/activates/closes session automatically; tags written to close payload; aborts
  with error repr on exception. Mirrors token_budget_tracker() ergonomics.
- Add SyncControlPlane.activate_session() used by ControlPlaneFacade.run().
- Export RunHandle from top-level package.
- Add examples/audit_trail.py (Tier 2 runnable demo).
- README: adoption tiers section (Tier 1/2/3) with per-tier example pointers.
- Bump version to 0.22.0.
@ryanwi ryanwi closed this Jun 2, 2026
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.

1 participant