v0.2.0a2 — honest-install fix + GHA actions v6 bump (pre-release)
Pre-release
Pre-release
Pre-release. Behavior-preserving patch on top of v0.2.0a1 following a post-release 3-agent re-audit. The three v0.2 surfaces (Article 12(2) export, MCP audit-verify, cross-repo emit shim) are byte-identical to v0.2.0a1; their public APIs and on-disk artefacts have not changed.
Why this exists
The post-release audit (architect + GitHub-state verifier + meta-critic, run in parallel against v0.2.0a1) surfaced:
- A-tier finding (immediate fix) —
README.md's install command waspip install memcanon, but memcanon is not on PyPI:curl -sI https://pypi.org/pypi/memcanon/jsonreturnsHTTP/2 404 {"message": "Not Found"}. A first-time reader running the documented command would have seenERROR: No matching distribution. This is a ship-and-yank style hazard. - B-tier findings (short-term) — the README Status line still said
0.1.1 (alpha)(now reflects v0.2 pre-release); Systima's MIT-licensed@systima/aiact-audit-logwas named only inCHANGELOG's R14-round-2 section, not in the README's Article 12(2) section (now named as prior art); andactions/checkout@v4+actions/setup-python@v5still ran on Node 20, which GitHub deprecates on2026-06-02(now bumped to@v6).
Install (PyPI not yet available)
pip install "git+https://github.com/hinanohart/memcanon@v0.2.0a2"Optional extras (Mem0 adapter / Letta adapter / HuggingFace embedder slot) follow the same git+https form documented in the README.
Out of scope (deliberate)
- No change to
article12.py/mcp.py/emit.py. All 165 unit tests pass with no edits. __init__.pyre-export of v0.2 surfaces is intentionally deferred — module-level imports work; this would be a soft API change deserving its own version.- PyPI publication, Systima JSON field-name interop, and zk policy-private exploration all remain on the v0.3 backlog.
Local CI parity at release
All 11 CI steps reran locally before push: ruff + mypy + pytest 165 passed + 6 honest-marketing guards + golden vectors + README render check + measure-roundtrip check, every step green.
🤖 Generated with Claude Code