Repository navigation
Releases
Releases · shaneconner/canon
pi-canon 0.3.1
What changed
Version 0.3.1 carries the canonical core to a fourth harness, renames the identifiers a stranger reads, and stops shipping a second copy of the host's UI library.
- The marketplace, the plugin, the MCP server, and the tool are now
canon. Outside Pi the prefix named an agent the reader has never heard of, and the tool name rides in the window on every request, which is the same cost the orientation line and the tool schema were deleted for. The npm package stayspi-canon: nine published versions are immutable. The hook's self-recognition guard had hardcoded the old spelling, so the rename alone would have made canon stop recognising its own reads and silently broken batch de-duplication. - DeepSeek Harness resolves a plugin's entry through
package.jsonmain, so the adapter ships compiled JS rather than the sources Pi loads through jiti, arriving by the same sync that already feeds the Claude Code and Codex plugin. The workspace resolves per call, because that host serves several workspaces from one process. @earendil-works/pi-tuiis a peer dependency with a*range rather than a dependency. As a dependency, an install pulled a second copy beside the one Pi bundles, and the settings editor was extending aContainerclass the renderer never sees. The peer range onpi-coding-agentalso excluded 1.0, declaring the package unfit for the version it shipped on.- The fourth paper's DOI joins the README and the citation file, and the study record moves to canon-bench.
- A new gate holds every file that states the version to the same one. Four files state it, and three of them previously had nothing holding them to
package.json.
All 175 gates pass.
pi-canon 0.3.0
What changed
Version 0.3.0 gives the article schema a home in the store and makes recall report honestly what it left out.
- The schema is a per-store data contract. A first persist writes
schema.jsonwith the shipped defaults made explicit, and an editedschema.jsonis never overwritten by later persists. Required rules reject the violating write before anything touches disk, hint included, and a malformed schema fails open with the problem named rather than bricking the store. - Identical writes report already current and leave the article untouched. A real change still lands. Growth is named rather than nagged, and an article that keeps its values is not nagged at all.
- Relations rules join the contract, with typos surfaced and both orphan and children parsed for the tools that enforce them.
- Search returns articles and scopes them by address, and guarantees the article appears somewhere in the returned window instead of claiming to have returned everything.
- Journal search is opt-in, invited by name, and scoped by instant and subject.
- An orphaned article, one whose asset went missing, is named on read and write. Conceptual, root-level, and declared-rule addresses stay silent.
/canon-settingspresents the behavior options as a screen.- The third paper's DOI joins the README and the citation file.
All 174 gates pass.
pi-canon 0.2.4
Adds the shared user-level Codex and Claude Code plugin alongside Pi.
- Codex surfaces after each supported tool result.
- Claude Code batches capsule delivery after each PostToolBatch.
- Surfacing state is scoped to the active compaction cycle, with no catch-up from earlier cycles.
- Journal entries record harness and session provenance when available.
All 149 gates pass.
pi-canon 0.2.3
What changed
Version 0.2.3 makes rule-scoped retrieval and presence tracking exact.
- Retrieval covers every off-spine article plus articles declared with
scope: rule, keeping a declared rule reachable if an asset later appears at the same address. - Surfacing tests presence using the article address and the tail of the text actually delivered. A marked article can surface again after folding or compaction removes it from context.
- Deliveries shorter than 24 normalized characters conservatively remain seen for the session.
- Documentation now states the measured limits of the orientation-line and standout experiments precisely.
Verification
- 142 package gates
npm pack --dry-runcontains the intended 10 files- npm
gitHeadand annotated tagv0.2.3both bind commit8d92710b06617591f8bfc5556c29570914837aef
Install with npm install pi-canon@0.2.3.