Skip to content

v1.12.2

Latest

Choose a tag to compare

@github-actions github-actions released this 08 Sep 05:47
· 1 commit to main since this release
b3798b9

Cairntir 1.12.2 publishes the SQLite backup, workflow and transcript recovery fixes from PR #108.

Added

  • Behavioral verification gates replay five actual historical defects, require
    failing assertions against deliberate mutations, and exercise a freshly
    installed wheel through CLI and MCP processes. Recovery tests compare restored
    memories, physical vectors, provenance and task history, including interrupted
    backups, SQLite contention, failed writes and rollback. Existing frozen
    acceptance artifacts and the coverage surface are checked for preservation.

Changed

  • Raise the combined statement-and-branch coverage gate from 80% to 92% after
    meaningful outcome and failure-path tests achieved it. Measure subprocesses
    without adding coverage exclusions.

Fixed

  • Retry brief backup coordinator contention caused by status polling; keep
    prolonged contention bounded.

  • Accept an already committed SQLite snapshot when its completion callback is
    delayed beyond the copy deadline; retain timeout rollback for unfinished copies.

  • Coverage gating rejects below-threshold results instead of accepting 91.96%
    after rounding it to 92%; a real subprocess regression checks both sides.

  • Transcript recovery preserves original whitespace and Unicode across supported
    hosts, including text blocks, while retaining Qwen's hook-context exclusion.

  • Workflow results are validated before commit. Invalid result types roll back
    their writes and leave a retryable failure receipt. SQLite errors while
    committing a workflow receipt surface as typed workflow errors.

  • Reject invalid embedding batches and vectors with nonfinite or zero float32
    values before storing them or returning misleading semantic matches.

  • Rejected anchor updates and no-op repairs preserve access history. SQLite
    failures while reading legacy migration receipts surface as typed store errors.

  • Codex transcript recovery keeps valid unfinished requests when later lines
    contain invalid UTF-8. Malformed non-object headers return an unavailable
    receipt instead of crashing recovery.

Install or upgrade with python -m pip install --upgrade cairntir==1.12.2. Reconnect MCP sessions after upgrading to load the new version.

Full changelog