Skip to content

v0.4.0 — Reversible agentic work, memory governance, Codex MCP

Choose a tag to compare

@JRS1986 JRS1986 released this 18 May 19:53
· 112 commits to main since this release
1d7906e

Minor release. Closes the last two priorities from the maintainer brief plus the deferred Codex TOML parsing.

Reversible agentic work (priority 5)

coding-scaffold session start [--worktree]  Create a branch (or worktree); commit a baseline
coding-scaffold session checkpoint -m ...   git add -A + commit + record in session state
coding-scaffold session diff                Files changed since the start commit
coding-scaffold session rollback            Preview by default; --confirm for soft reset;
                                            --confirm --hard for a destructive reset
coding-scaffold session summary             Branch, baseline, checkpoint count, files changed

Never auto-pushes. Never deletes work without `--confirm --hard`. The per-session state file is git-ignored so it doesn't pollute checkpoint commits.

Memory governance (priority 6)

coding-scaffold memory capture --class X --content ...  Reviewable Markdown entry; class=secret
                                                        is refused outright; personal_data requires
                                                        --allow-personal; content matching the
                                                        secret-pattern heuristic is refused
coding-scaffold memory review               List active entries; flag unowned / expiring / expired
coding-scaffold memory promote <id> --to Y  Copy to a more durable class; original is kept and
                                            marked status=promoted (audit trail)
coding-scaffold memory expire               Move past-expiry entries to memory/_expired/
coding-scaffold memory audit                Heuristic scan for secrets (error severity) and
                                            PII (warning); exits non-zero on error
coding-scaffold memory init                 Optional config.json documenting the backend

Memory classes: `project_fact`, `team_preference`, `decision`, `session_lesson` (default 30-day TTL), `failed_attempt`, `personal_data` (restricted), `secret` (never stored).

Backend: Markdown only in v1. SQLite / MemPalace / vector are reserved for future versions.

Codex .codex/config.toml parsing

`mcp scan` now reads Codex's TOML configuration in addition to `opencode.json` and `.claude/settings.json`:

  • Canonical form: `[mcp_servers.]`
  • Legacy fallback: `[mcp.]`
  • Malformed TOML is a warning, not a crash.
  • Uses stdlib `tomllib`. No new dependencies.

The eval harness's MCP-policy check inherits the new source automatically.

Verification

304 tests passing, ruff clean, CI green on Linux.

Properties

  • Zero new dependencies.
  • Zero LLM calls.
  • Zero network calls.
  • Zero telemetry.
  • Every new command supports `--json` for CI / scripting.
  • Backwards compatible with v0.3.0.

Cumulative scope across v0.1.0 → v0.4.0

All seven maintainer-brief priorities are now implemented:

Priority Theme
1 Agent-context linter (`context lint` / `explain`)
2 PR template + session traces (`pr-template init`, `session init / summarize`)
3 MCP and skill governance (`mcp policy / scan / snapshot / diff`, `skills new / lint / approve / export`)
4 Machine-readable permissions (`permissions write`)
5 Reversible work (`session start / checkpoint / diff / rollback / summary`)
6 Memory governance (`memory capture / review / promote / expire / audit / init`)
7 Readiness benchmark (`eval init / run / report`)

Full notes: CHANGELOG.md.