@davidorex/pi-context 0.30.0 → 0.31.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (50) hide show
  1. package/CHANGELOG.md +69 -0
  2. package/README.md +21 -6
  3. package/dist/block-api.d.ts +13 -0
  4. package/dist/block-api.d.ts.map +1 -1
  5. package/dist/block-api.js +1 -1
  6. package/dist/block-api.js.map +1 -1
  7. package/dist/content-hash.d.ts +13 -0
  8. package/dist/content-hash.d.ts.map +1 -1
  9. package/dist/content-hash.js +16 -0
  10. package/dist/content-hash.js.map +1 -1
  11. package/dist/context-dir.d.ts +12 -0
  12. package/dist/context-dir.d.ts.map +1 -1
  13. package/dist/context-dir.js +14 -0
  14. package/dist/context-dir.js.map +1 -1
  15. package/dist/context.d.ts +60 -0
  16. package/dist/context.d.ts.map +1 -1
  17. package/dist/context.js +44 -0
  18. package/dist/context.js.map +1 -1
  19. package/dist/index.d.ts +534 -0
  20. package/dist/index.d.ts.map +1 -1
  21. package/dist/index.js +1879 -20
  22. package/dist/index.js.map +1 -1
  23. package/dist/migration-registry-loader.d.ts +16 -0
  24. package/dist/migration-registry-loader.d.ts.map +1 -1
  25. package/dist/migration-registry-loader.js +33 -0
  26. package/dist/migration-registry-loader.js.map +1 -1
  27. package/dist/ops-registry.d.ts +16 -0
  28. package/dist/ops-registry.d.ts.map +1 -1
  29. package/dist/ops-registry.js +270 -8
  30. package/dist/ops-registry.js.map +1 -1
  31. package/dist/pending-blocked-store.d.ts +83 -0
  32. package/dist/pending-blocked-store.d.ts.map +1 -0
  33. package/dist/pending-blocked-store.js +93 -0
  34. package/dist/pending-blocked-store.js.map +1 -0
  35. package/dist/schema-merge.d.ts +26 -0
  36. package/dist/schema-merge.d.ts.map +1 -0
  37. package/dist/schema-merge.js +176 -0
  38. package/dist/schema-merge.js.map +1 -0
  39. package/package.json +2 -1
  40. package/samples/conception.json +50 -0
  41. package/samples/schemas/framework-gaps.schema.json +1 -1
  42. package/samples/schemas/issues.schema.json +2 -2
  43. package/samples/schemas/layer-plans.schema.json +2 -2
  44. package/samples/schemas/research.schema.json +1 -1
  45. package/samples/schemas/work-orders.schema.json +2 -2
  46. package/schemas/config.schema.json +25 -1
  47. package/schemas/pending-blocked.schema.json +190 -0
  48. package/skill-narrative.md +7 -5
  49. package/skills/pi-context/SKILL.md +90 -7
  50. package/skills/pi-context/references/bundled-resources.md +2 -1
package/CHANGELOG.md CHANGED
@@ -4,6 +4,75 @@ All notable changes to this package are documented here. Format follows [Keep a
4
4
 
5
5
  ## [Unreleased]
6
6
 
7
+ ## [0.31.0] - 2026-06-13
8
+
9
+ ### Changed
10
+ - Internal refactor (usage unchanged): the in-memory migration-registry seeding shared by the read-only update/diagnostic paths is centralized in one `buildFreshRegistryWithChain` helper, and the git-style block-marker sentinel tokens are defined once as named constants the writer and detectors derive from.
11
+ - A repeat live `update` over a block that already carries failure markers retains the existing pending-blocked entry whole (the per-item failures, the migration chain, and the pre-marker restore reference) — the re-run report keeps the per-item diagnostic. The blocked report claims markers were written only for schemas where they actually were; dry-run and no-migration-chain reports carry no write claim.
12
+
13
+ ### Documentation
14
+ - The `skill-narrative.md` `<substrate_config>` section and the package README's accept-all/install paragraph now note that a fresh accept-all substrate carries advisory (severity-`warning`) convention-articulation invariants — every decision/feature/task should carry an `item_governed_by_convention` edge to a convention or an `item_acknowledges_missing_convention` edge to a missing-convention gap, surfaced by `context-validate` as a warning that does not block writes.
15
+ - Regenerated `skills/pi-context/SKILL.md` for the `update` op's corrected `dryRun` description (the preview now states the precise per-schema outcome — resync / migrate / block — computed by in-memory forward-migration + re-validation).
16
+ - The `update` op's `promptSnippet` now states that a blocked resync persists a pending-blocked record (target catalog schema + the chain reaching it) resolved via `resolve-blocked` once the block's items are fixed — lockstep with the op's `description`.
17
+ - Regenerated `skills/pi-context/SKILL.md` for the `update` op's extended `promptSnippet` (the pending-blocked record + `resolve-blocked` resolution clause).
18
+ - Regenerated `skills/pi-context/SKILL.md` to surface the new `read-catalog-schema` op.
19
+ - Regenerated `skills/pi-context/SKILL.md` to surface the new `context-install` op.
20
+ - Regenerated `skills/pi-context/SKILL.md` to carry the fresh-substrate advisory convention-articulation note (the catalog's `*-articulates-convention` warning-severity invariants).
21
+
22
+ ### Fixed
23
+ - The `read-catalog-schema` op's text-surface output is now byte-exact: it emits the catalog `*.schema.json` bytes verbatim (the file's own trailing newline preserved, none appended) via a declared `verbatimText` flag on the op honored by the CLI print path. Previously the print path appended a second newline, doubling the file's trailing `}\n` to `}\n\n` and surfacing a phantom trailing-empty-line under `read-catalog-schema --kind <k> | diff <installed-schema> -` even when content matched.
24
+
25
+ ### Added
26
+ - New `context-install` op (`pi-context context-install`, `authGated`) reflects the install ceremony — the same engine the `/context install` slash command runs (`installContext`, unchanged; no behavior fork). It materializes the schemas + starter blocks declared in `config.json`'s `installed_schemas` / `installed_blocks` from the package samples catalog (`<substrate>/schemas/<name>.schema.json` per declared schema; `<substrate>/<name>.json` per declared block), records the install baseline (`config.installed_from`: catalog source + per-schema fingerprint, for installed-vs-catalog drift detection), and is idempotent on an unchanged substrate. Default skip-if-exists — `--update true` re-syncs existing installed schemas (migration-aware) and replaces empty/absent blocks with the catalog starter, while populated block data is always preserved (the flag maps to the engine's `overwrite` exactly as the slash command's `--update` does). The install ceremony was previously reachable only as the `/context install` command, not as a reflected op; with the op calling `installContext` directly, the parity gate now classifies `installContext` as op-backed (its `INTENTIONALLY_UNEXPOSED_WRITERS` allowlist entry removed).
27
+ - The packaged catalog (`samples/conception.json`) now ships the convention-articulation governance vocabulary — the two relation_types `item_governed_by_convention` (decisions/features/tasks → conventions) and `item_acknowledges_missing_convention` (decisions/features/tasks → framework-gaps), plus three `requires-edge` invariants (`decision-articulates-convention`, `feature-articulates-convention`, `task-articulates-convention`) at severity `warning` — so a fresh accept-all substrate carries advisory convention-articulation. Each invariant `as_parent` expects every decision/feature/task to carry an `item_governed_by_convention` edge to a convention or an `item_acknowledges_missing_convention` edge to a missing-convention gap; at severity warning an unarticulated artifact is reported by `context-validate` without erroring.
28
+ - New `read-catalog-schema` op (`pi-context read-catalog-schema --kind <canonical_id>`) fetches and prints the verbatim bundled catalog `*.schema.json` body for a named block kind — the raw JSON Schema (properties/definitions/$id), not the `read-samples-catalog` projection — so the body is diffable locally against the installed `<substrate>/schemas/<name>.schema.json` without touching node_modules. Read-only and package-intrinsic: it reads the extension's bundled samples catalog, independent of any project substrate, and mutates no installed schema, block, or config. The op returns the schema file's raw bytes as a string (printed as-is on the prose surface; carried as a string on the `--json` envelope). An unknown kind throws (non-zero CLI exit).
29
+ - New exported `readCatalogSchemaText(kindName): { kind, schemaPath, text }` (`@davidorex/pi-context`) reads the verbatim bundled catalog `*.schema.json` body for a named block_kind — the raw file bytes (raw JSON Schema, not the `read-samples-catalog` projection). It resolves the catalog through the shared catalog resolver (the same `samplesRoot` + `canonical_id`→`schema_path` map the installer and the drift detector use), takes no cwd, and reads only the package-bundled samples directory, so the read path touches no installed schema, block, or config. Throws on an unknown kind.
30
+ - The read-only `checkStatus` drift report now carries, per asset, two additive reporting fields surfacing which installed schemas are behind the catalog and by what version gap. A `behind?: boolean` is set true exactly for the catalog-moved states (`catalog-ahead` / `both-diverged`); a `version_delta?: { from?, to?, basis }` carries the baseline → catalog version pair with `basis: "version-bump"` when both versions are present and differ, or `basis: "content-only"` when the versions match or either is undefined (catalog-ahead is a content-hash comparison, so the catalog body can move while the version string is unchanged). The fields are computed after the existing drift-state classification (the classification is unchanged); not-behind assets carry neither field. `renderCheckStatus` annotates each behind asset's name inline with the gap — `name (1.0.0 -> 1.0.1)` for a version bump, `name (1.0.1, content changed)` / `name (content changed)` for a content-only drift — and keeps the per-state grouping + total line.
31
+ - The new reflected op `context-check-status` (`pi-context context-check-status --json`) returns the `checkStatus` drift report as a `{ json }` data op — the read-only front of the check-status → update --dryRun → update sequence; writes nothing. The drift report was previously reachable only as the `/context check-status` command, not as a reflected op.
32
+ - A live `/context update` that blocks a catalog-ahead schema on items failing the catalog schema (`validation-failed`) now inscribes git-style failure markers INTO the block file at the offending items/fields — full-line `<<<<<<< BLOCKED <name> <from> -> <to> <instancePath> [<keyword>]: <message>` / `>>>>>>> target: <name>@<to>` sentinels (envelope-level / unlocatable failures collect in a top-of-file header block). This is the default behavior of a validation-blocked schema (no flag, no mode). The pre-marker block bytes are pinned into the content-addressed object store (a new optional `premarker_hash` on the pending-blocked entry records the byte-exact restore point); the installed schema and `migrations.json` stay byte-unchanged (only the block file carries markers). The line-targeting walker lexes each line skipping JSON string literals, so braces/brackets inside string values do not mis-place a marker. `resolve-blocked` now detects + strips the full-line marker sentinels, re-validates the corrected block against the SAME pinned target, and on pass raw-writes the stripped text to disk before the commit so item `oid`s are preserved across the round-trip (`content_parent` advances only on genuinely changed items); a still-failing block leaves the marker file untouched. A `--dryRun` update writes no markers. The exported `renderBlocked` report now states the markers are in the block file (open it, fix the marked items, then `resolve-blocked`).
33
+ - A live `/context update` that BLOCKS a catalog-ahead schema now persists a pending-blocked record (`<substrateDir>/pending-blocked.json`, schema-versioned) and a new `resolve-blocked` op commits its resolution. Each blocked entry pins the TARGET catalog schema body into the content-addressed object store (`{ name, from?, to?, reason, target_hash, chain, failures?, blocked_at }`) plus the migration chain reaching it; the sidecar is replaced wholesale each live run (an empty set removes the file) and a `--dryRun` update writes neither the sidecar nor the pinned object. The blocked contract is unchanged — the installed schema, the block, and `migrations.json` remain byte-unchanged on a block; the sidecar + pinned object are additive, outside that contract. New `resolve-blocked` op (`pi-context resolve-blocked --schemaName <name>`, `authGated`) commits a block's resolution: it re-validates the corrected block against the SAME pinned target (forward-migrating in memory through the pinned chain when the block lags the target version), and on PASS registers the chain decls not already on disk, writes the target schema (`replace`), advances the migrated block's `schema_version` envelope to the target + persists it (skipping the block write when it has no items), advances the merge base to the target (so a subsequent `update` converges in-sync instead of re-blocking), and clears the pending entry (removing the file when empty); on FAIL it returns the remaining per-item `failures` and writes nothing (the pending record stays intact for a retry). An absent pending entry, or a missing pinned object, throws (non-zero CLI exit). Backed by the new exported `resolveBlocked(cwd, name, ctx?)` (returns `{ schemaName, resolved: false, failures }` or `{ schemaName, resolved: true, registeredMigrations, baseAdvancedTo }`), the `pending-blocked-store` helpers, and `pendingBlockedPathForDir` (`@davidorex/pi-context/context-dir`). The exported `renderBlocked` report now ends with a guidance line stating how to commit a resolution (fix the named items or widen the local schema → `resolve-blocked --schemaName <name> --yes`).
34
+ - `/context update` now carries a per-schema blocked-resync diagnostic under a new `UpdateResult.blockedDetail: Array<{ name; reason; from?; to?; failures? }>` (one entry per name in `blocked`). Each entry records why the catalog-ahead resync refused: `reason: "no-migration-chain"` (no shipped chain reaches the catalog version — carries the installed→catalog version pair) or `reason: "validation-failed"` (the forward-migrated items fail the catalog schema — carries the version pair plus per-item `failures`, each `{ itemId?, instancePath, keyword, message }` naming the failing item id, the field by JSON pointer, and the constraint that failed). `--dryRun` predicts the same `blockedDetail` it would land. The `blocked: string[]` list is unchanged. Backed by the new exported `renderBlocked(blockedDetail)` (a readable per-schema report — header `blocked: <name> (<from> -> <to>)` then the no-chain line or the per-item failure lines) plus the exported `BlockedDetail` / `BlockValidationFailure` interfaces (`@davidorex/pi-context`).
35
+ - New `validate-block-items` op (`pi-context validate-block-items --block <name>`) validates a block's items against the catalog schema version and returns the per-item failures without writing. It resolves the block's catalog block_kind, loads the installed block, forward-migrates its items in memory through the shipped chain when the block lags the catalog version (a fresh registry; never warms the project's cache), and validates against the catalog schema body. Returns `{ block, from?, to?, valid, failures }` (`from` the block's declared version, `to` the catalog version; `failures[]` each `{ itemId?, instancePath, keyword, message }`). Read-only — never overwrites the schema, the block, or `migrations.json`. An unknown block or a missing installed block file throws (non-zero CLI exit). Backed by the new exported `validateBlockItemsAgainstCatalog(cwd, blockName)`.
36
+ - New `context-lens-view` op (`pi-context context-lens-view --lensId <id>`) projects a config-declared lens (`config.lenses[]`) as a binned item-view, reusing `loadLensView`. Without `--bin` it returns a bin→count summary — `{ lens, kind, bins: { <bin>: count }, uncategorized, total }` over every declared bin (including empty bins → 0) plus the uncategorized count and the total item count, serialized whole (always under the read cap). With `--bin <name>` it returns that bin's items paged by `--offset`/`--limit` through the shared `pageArray` (`{ items, total, hasMore }`). Both routes serialize through `structureForRead` so an over-cap per-bin page fails closed (`data: null`, `complete: false`). Serves target, composition, and hand-curated lenses. An unknown lens id (or, with `--bin`, an undeclared bin) throws — surfacing a non-zero CLI exit.
37
+ - Each surfaced op now carries an optional `examples` field — copy-pasteable `pi-context <op> …` invocation strings consumed by the CLI's per-op `--help` (its `EXAMPLES` section and `--help --format json` model). It is help metadata only and is not part of the in-pi tool surface (the registered pi tool still exposes only name/label/description/promptSnippet/parameters).
38
+
39
+ ### Fixed
40
+ - An addressed-single-node read now returns the WHOLE addressed subtree (capped), not a 50-item page of one incidental array child. `read-schema --path`, `read-config --registry` (and `--registry --id`), `list-tools name=<tool>`, and `read-samples-catalog kind=<kind>` each name ONE node; the op now passes `whole: true` to the addressed `structureForRead`, so an object node carrying an array child serializes every sibling key instead of collapsing to a page of that one array (dropping siblings). The 50KB read cap is retained — applied unconditionally after the whole-skip — so an over-cap addressed node still fails closed (`data: null`, `complete: false`, `truncated: true`); `whole: true` skips paging only, it does not bypass the cap. The whole-config / whole-schema no-arg wrapper reads and every intentional collection-paging read are unchanged.
41
+
42
+ ### Changed
43
+ - `/context update --dryRun` now predicts the precise per-schema catalog-ahead outcome (`resynced` / `migrated` / `blocked`) by an in-memory forward-migration + re-validation, rather than listing every `catalog-ahead` schema under `resynced`. The dryRun plan buckets each catalog-ahead schema as the outcome a live `--update` would land; a dry-blocked schema reports no would-register migration declarations (`migrationsRegistered` excludes them).
44
+ - Regenerated the generated `SKILL.md` so the surfaced skill doc carries the new `resolve-conflict` op and the caller-reconciles conflict route.
45
+
46
+ ### Added
47
+ - `/context update` now surfaces the migration declarations a version-bump re-sync registers into `migrations.json`, under a new `UpdateResult.migrationsRegistered: Array<{ schema; from; to }>`. When a `catalog-ahead` schema's installed `version` differs from the catalog `version`, the re-sync walks the shipped catalog migration chain and registers each not-already-present declaration; those appended declarations are now reported (each `{ schema, from, to }`). A same-version re-sync, or a `blocked` outcome (whose rollback reverts `migrations.json`), contributes nothing — the live report reflects post-rollback truth. `--dryRun` computes the would-register set READ-ONLY (the catalog chain minus the declarations already on disk) and reports it without writing. `resyncSchema`'s return widens from a bare status string to `{ status; registeredMigrations }`; `/context install`'s schema loop consumes only the status (the migration-decl reporting surface is on `/context update`).
48
+ - `/context install --update`'s empty-block overwrite now skips a block whose on-disk content already equals the catalog starter (JCS-canonical content equality, key-order/whitespace insensitive), reporting it under `skipped` rather than rewriting it. Previously an itemless block equal to the starter was copied over on every `--update` (an mtime-bumping no-op with identical bytes); it is now left byte-identical. An empty block whose content DIFFERS from the starter (e.g. an extra top-level field) is still overwritten and reported `updated`.
49
+ - `/context update` now also propagates catalog-new config-registry entries into the substrate config, additively. After the per-schema drift routing, `update` brings the four keyed-array config registries — `relation_types`, `invariants`, `block_kinds`, `lenses` — current with the packaged catalog: any catalog entry whose identity (`canonical_id` for `relation_types` / `block_kinds`, `id` for `invariants` / `lenses`) is ABSENT from the substrate config is appended, while every user-authored entry (absent from the catalog) and any locally-diverged body of an entry already present are preserved untouched (present entries are never replaced, removed, or body-merged). The added ids are reported under a new `UpdateResult.registryAdditions: { relation_types; invariants; block_kinds; lenses }` (`string[]` each). `--dryRun` computes and reports `registryAdditions` without writing. Backed by the new exported pure helper `mergeCatalogRegistries(existing, catalog): { merged, additions }` (reads each registry's identity field from the internal registry descriptors; deep-clones `existing`; no I/O) and the `RegistryAdditions` interface (`@davidorex/pi-context`). `status_buckets` (a map registry) is out of scope.
50
+ - New `resolve-conflict` op (`pi-context resolve-conflict --schemaName <name> [--schema <reconciled>]`) commits the reconciliation of a merge conflict `update` surfaced, completing the caller-as-reconciler path end-to-end. It writes the reconciled schema body (meta-validated + nested-id-guarded atomic `replace`, when `schema` is supplied; a JSON-string body is parsed like `write-schema`) AND advances the merge base for that schema to the catalog body. Advancing the base is the step a bare `write-schema` lacks: it stamps the catalog body as the install baseline (`config.installed_from.assets[name]`), so the next `update`'s 3-way check sees the schema as `locally-modified` (base === catalog ≠ the reconciled body) and `mergeSchema(base=catalog, ours=R, theirs=catalog)` takes R via the `base === theirs → ours` rule — auto-merging with zero conflicts and preserving the resolution; without it, `update` re-derives the same `both-diverged` conflict on every run. Omitting `schema` treats the current on-disk body as already reconciled and only advances the base. The op is `authGated` (auto-joins `gatedTools`) and returns `{ schemaName, wroteSchema, baseAdvancedTo }`. Backed by the new exported `resolveConflict(cwd, name, schema?, ctx?)` and `stampBaselineFromBody(cwd, name, body, version)` (the stamp mechanics — object-store put + `installed_from.assets[name]` set + config write — factored out of `refreshBaselineForSchema`, which now delegates to it with behavior unchanged).
51
+ - New exports backing the `pi-context update` conflict-surfacing path (consumed by `@davidorex/pi-context-cli`): `refreshBaselineForSchema(cwd, name)` re-stamps the install baseline (`config.installed_from.assets[name]`) from a schema's current on-disk body (idempotent: `true` + stamp-and-write when the freshly-computed `content_hash` differs from the recorded one, `false` no-op when unchanged or the file is absent) — `updateContext`'s post-loop baseline-refresh calls it per brought-current schema (resynced / migrated / auto-merged). `renderConflicts(conflicts)` renders an `UpdateResult["conflicts"]` set as a readable per-schema report and ends with a guidance line stating how the calling agent applies a reconciliation (reconcile the conflicting paths into a schema → `resolve-conflict --schemaName <name> --schema <reconciled>`, which writes the body AND advances the merge base to the catalog); pure, no I/O. The `SchemaConflict` interface is re-exported from the package root (`@davidorex/pi-context`).
52
+ - `/context update` now 3-way merges a locally-edited schema instead of unconditionally refusing it. For a `locally-modified` / `both-diverged` installed schema, `update` reconstructs the merge BASE from the content-addressed body stored under the install baseline's `content_hash` (`getObject`), then key/path-merges that BASE with OURS (the installed file) and THEIRS (the catalog file) via the new pure `mergeSchema(base, ours, theirs)`. The merge is deterministic and canonical-JSON-keyed: plain objects merge per key over the sorted union (a key deleted on one side and unchanged on the other is honored as a deletion); `required` / `enum` / array-valued `type` nodes merge as SETS honoring both adds and removes (`(ours ∩ theirs) ∪ (ours \ base) ∪ (theirs \ base)`, so a user narrowing an enum and the catalog widening it both apply); every other node merges atomically 3-way (base==ours → theirs, base==theirs → ours, ours==theirs → converged, all-three-differ → conflict). A conflict-free merge is written through `writeSchemaCheckedForDir` (meta-validated + nested-id-guarded; `--dryRun` validates without writing) and recorded under a new `UpdateResult.merged: string[]`; an auto-merged body is re-base-stamped and its baseline `content_hash` refreshed in the post-loop step (treated like a resync) so it becomes the next merge base. A merge that surfaces irreconcilable per-path disagreements writes NOTHING and records `{ name, conflicts }` under a new `UpdateResult.conflicts: Array<{ name; conflicts: SchemaConflict[] }>` (each `SchemaConflict` carries the dotted `path` + `base`/`ours`/`theirs` values). When no stamped base body is retrievable, or a parse/merge/validation throws, the schema falls back to the prior refuse-and-report behavior (recorded under `refused`), keeping its drift signal. New exports: `mergeSchema` + the `SchemaConflict` interface (`schema-merge`).
53
+ - `/context install` and `/context update` now base-stamp every installed/resynced SCHEMA body into the content-addressed object store (`<substrateDir>/objects/<content_hash>.json`) at each baseline-write site, keyed by the SAME `content_hash` recorded in `config.installed_from.assets`. The install loop stamps each schema's as-installed body under its install-baseline hash; the live (`!dryRun`) `update` refresh stamps each `resynced`/`migrated` schema's body under its NEW refreshed baseline hash (a `--dryRun` update stamps nothing). Stamping is idempotent (content-addressed — same hash implies same bytes). This makes the recorded merge base — the schema body a baseline hash refers to — durably retrievable via `getObject(substrateDir, content_hash)` rather than only fingerprinted, the precondition for a later three-way installed/baseline/catalog schema merge. Additive: no config-shape or signature change; the object store was previously unwired, so existing substrates gain stamped bodies on their next install/update.
54
+ - New `update` op (`pi-context update`) brings the installed substrate model (schemas) current with the packaged catalog. Per installed schema it consults the read-only drift check and routes by state: a schema the package shipped a newer version of (`catalog-ahead`) is re-synced through the migration-aware path (reported under `resynced` / `migrated`, or `blocked` when no safe migration exists); a schema edited locally (`locally-modified` / `both-diverged`) is REFUSED — never overwritten — and recorded under `refused` for reconciliation; an undecidable / absent schema (`no-baseline` / `missing-catalog` / `missing-installed`) is recorded under `reported`; an already-current (`in-sync`) schema is a no-op (recorded under `inSync`). After a live run the install baseline (`config.installed_from.assets`) refreshes for the schemas actually brought current (`resynced` / `migrated`) so a subsequent `/context check-status` reports them `in-sync`; a `refused` schema keeps its baseline (and its drift signal). Pass `--dryRun` to compute and return the per-schema action plan WITHOUT writing anything. Backed by the new exported `updateContext(cwd, { dryRun? }): UpdateResult`.
55
+ - `/context check-status` previews installed-vs-catalog schema drift WITHOUT writing anything. This standalone read-only command runs `checkStatus(cwd): CheckStatusReport` (and renders it via `renderCheckStatus(report): string`), comparing, per installed schema, the recorded install baseline (`config.installed_from.assets[name].content_hash`) against the catalog's current schema file and the currently-installed schema file, and classifies each as `in-sync` / `catalog-ahead` (the package shipped a newer schema) / `locally-modified` (the installed file was edited) / `both-diverged` / `no-baseline` / `missing-catalog` / `missing-installed`. Each per-asset entry also carries `baseline_version`, `catalog_version`, and `installed_modified`. Every file-hash read is wrapped so a corrupt file degrades to a `missing-*`/diverged classification rather than throwing. The detector performs zero writes (no config write, no copy, no mkdir). A shared `resolveCatalog()` read helper (samples root + `canonical_id`→paths map) is extracted so the installer and the drift detector resolve the catalog identically.
56
+ - `/context install` records an install baseline of the installed SCHEMAS in a new optional `config.installed_from`: the catalog source (`catalog` = pi-context package `name@version`, `catalog_version` = `samples/conception.json` `schema_version`), a baseline timestamp (`at`), and per-schema fingerprints (`assets[canonical_id] = { content_hash, version }`, the content hash over the installed schema file via JCS, plus the schema's own declared `version`). Blocks are user data and are NOT baselined — only the re-syncable model (schemas) is fingerprinted. The baseline is the basis for later installed-vs-catalog drift detection. Idempotent: a re-install on an unchanged substrate (deep-equal `catalog` + `catalog_version` + `assets`) preserves the existing baseline verbatim — including `at` — so the resulting `config.json` is byte-identical; only a content change refreshes `at`. New exported `computeFileContentHash(filePath)` (content hash of a JSON file via canonical JSON). `installed_from` is additive-optional in `config.schema.json` (bumped to `1.6.0`); configs without it remain valid.
57
+
58
+ ### Changed
59
+ - Regenerated the generated `SKILL.md` so the surfaced skill doc carries the `update` op description's surfaced-migration-reporting addition.
60
+ - Regenerated the generated `SKILL.md` so the surfaced skill doc carries the `update` op description's config-registry-propagation addition.
61
+ - Regenerated the generated `SKILL.md` so the surfaced skill doc carries the `update` op's refreshed `description`/`promptSnippet` (the drift-aware 3-way-merge behavior).
62
+ - The `update` op's surfaced `description` / `promptSnippet` strings now state the drift-aware 3-way-merge behavior (resync `in-sync`/`catalog-ahead`; 3-way merge `locally-modified`/`both-diverged` preserving non-conflicting edits; conflicts → returned in the op output (under `conflicts`) plus a report for the calling agent to reconcile and commit via `resolve-conflict`; `--dryRun` previews) — they previously described `locally-modified` as unconditionally refused, which no longer matches the implemented merge arm.
63
+ - Reverted the schema-resync identity-stamping escape hatch — `/context install --update`'s migration-aware re-sync now stamps identity unconditionally like every other write, instead of skipping identity stamping when the substrate has no established substrate_id.
64
+ - `/context install --update`'s schema re-sync now restores `migrations.json` to its pre-call bytes when it refuses a schema (the `blocked` path previously left the just-registered migration declarations on disk). The version-bump path registers the shipped migration chain into `migrations.json` before forward-validating the block; when validation refuses, the captured pre-call bytes are written back (or the file removed when it did not exist pre-call), so a `blocked` outcome leaves the schema file, the block file, AND `migrations.json` all byte-unchanged.
65
+ - `/context install --update` now re-syncs installed SCHEMAS through the migration registry instead of a blind `fs.copyFileSync`. A new per-schema `resyncSchema` helper decides: same installed/catalog `version` (description-only drift, or a non-versioned schema) → verbatim overwrite (reported `resynced`); a `version` bump with a shipped catalog migration chain whose forward-migrated block items re-validate against the new schema → overwrite + block re-written via the migration path (reported `migrated`); a `version` bump with NO shipped chain reaching the catalog version, OR migrated items that would fail the new schema → refused, leaving BOTH the installed schema file AND the block file byte-unchanged (reported `blocked`). The version-bump path registers each shipped decl (idempotently) into the substrate's `migrations.json`, overwrites the schema, then forward-migrates + AJV-validates the populated block against the now-installed schema; on any failure it rolls the schema file back to its captured pre-call bytes and never touches the block. `InstallResult` gains `resynced` / `migrated` / `blocked` string arrays (schema `--update` outcomes route into these, not `updated`; fresh installs still report `installed`), and the install summary renders `Re-synced (…)` / `Migrated (…)` / `Blocked (N, no safe migration — left unchanged): …` lines (a `blocked` outcome escalates the notify level to warning). After the loop, the install baseline (`config.installed_from.assets[name]`) refreshes for every `resynced`/`migrated` schema so a subsequent `/context check-status` reports them `in-sync`. Closes the "no safe schema re-sync" gap — a schema version bump can no longer strand already-filed block items under a schema they fail. Preview drift first with `/context check-status`.
66
+ - The read-only schema-drift report is surfaced as the standalone `/context check-status` command, not a flag on `/context install` — the command surface separates the (mutating) install from the (read-only) drift check.
67
+ - `/context install --update` no longer overwrites a populated block — block data files are preserved (reported as `preserved`); only installed schemas are refreshed by `--update`. Empty or absent blocks still receive the catalog starter. The block-existence branch now reads the destination block (via `readBlockForDir` + `forEachBlockArray`) and, when any array carries items, preserves it regardless of `--update`; a block that cannot be read/confirmed-empty is treated as populated (preserved) by default. `InstallResult` gains a `preserved: string[]` field and the install summary renders a `Preserved (…)` line. Closes a data-loss path where `--update` copied an empty catalog starter over a block holding filed items.
68
+ - Genericized originating-project identity out of the installable sample schema descriptions (`samples/schemas/` — issues, work-orders, framework-gaps, layer-plans, research): hardcoded monorepo package names, the project layer-model proper noun, the `in-pi` runtime qualifier, and the internal `.project/` directory are replaced with generic placeholders, so an installed or exported context model no longer carries this repo's identity into the installing project. Description text only; no structural/schema-shape change. The model's own intrinsic vocabulary (closure-table `relations.json`, the L1–L5 layer mapping, substrate terms) is deliberately preserved. A portable strip-list (`analysis/2026-06-05-disinfect-schema-descriptions.md`) lets other projects sanitize their own installed copies.
69
+
70
+ ### Removed
71
+ - The `getConflictMergeInputs(cwd, name)` and `installedSchemaOnDiskHash(cwd, name)` exports — both added earlier in this same `[Unreleased]` window and removed before any release — are gone. They existed only to feed the subordinate conflict resolver (the mergetool reconstructed BASE/OURS/THEIRS bodies and snapshotted the installed-schema hash before/after the session). With the resolver retired in favor of returning the conflict set to the calling agent, neither has a remaining consumer. `refreshBaselineForSchema` (now `updateContext`-internal) and `renderConflicts` (the report renderer) remain exported.
72
+
73
+ ### Fixed
74
+ - `/context update`'s 3-way merge now records a merged schema's install baseline as the CATALOG body (theirs), not the merged on-disk body. A merge that KEEPS a local divergence — a reconciled conflict (the resolved body `R` ≠ catalog) OR a disjoint auto-merge (a local-only field the catalog lacks) — now reads as `locally-modified` on the next `check-status` (baseline === catalog, installed differs), so the next `update` re-takes the local divergence via the `base === theirs → ours` rule and preserves it. Previously the baseline was stamped from the merged body, so the following `update` read the schema as `catalog-ahead` and RESYNCED it to the catalog — silently clobbering the kept-local divergence on the very next run. The kept-local divergence is now a stable fixed point across repeated updates.
75
+
7
76
  ## [0.30.0] - 2026-06-04
8
77
 
9
78
  ### Added
package/README.md CHANGED
@@ -15,9 +15,14 @@ pi install npm:@davidorex/pi-context
15
15
  ```
16
16
  /context init <substrate-dir> # create the empty substrate skeleton
17
17
  /context install # reconcile <substrate-dir>/ against installed_* lists in config.json
18
+ /context check-status # read-only: report which installed schemas are behind the catalog + the version gap (writes nothing)
19
+ /context update [--dryRun] # bring the installed schema model current with the catalog, preserving local edits (3-way merge); --dryRun previews
20
+ /context resolve-conflict --schemaName <name> [--schema <reconciled>] # commit a reconciled merge conflict: write the resolved body + advance the merge base to the catalog
18
21
  ```
19
22
 
20
- `init` (and `switch -c`) is intentionally minimal: it writes the bootstrap pointer, the substrate/schemas dirs, and a minimal schema-valid **skeleton config** (`schema_version` + empty `block_kinds` + `root` + a minted, registered `substrate_id`) — no schemas, no starter blocks (ship-no-defaults). The skeleton is never-clobbered: an idempotent re-init leaves an existing config untouched. From the skeleton there are two onward paths: adopt the packaged conception with `/context accept-all` (overwrites a skeleton config, never a populated one; writes `config.json` from `samples/conception.json` and preserves the skeleton's `substrate_id`), then `/context install`; or build a custom vocabulary directly via `amend-config` / `write-schema` / `append-block-item` (no catalog adoption). The opt-in install ceremony copies the `installed_schemas` / `installed_blocks` declared in `config.json` from the package samples catalog (`samples/blocks/` and `samples/schemas/`); it is idempotent, `--update` overwrites.
23
+ `init` (and `switch -c`) is intentionally minimal: it writes the bootstrap pointer, the substrate/schemas dirs, and a minimal schema-valid **skeleton config** (`schema_version` + empty `block_kinds` + `root` + a minted, registered `substrate_id`) — no schemas, no starter blocks (ship-no-defaults). The skeleton is never-clobbered: an idempotent re-init leaves an existing config untouched. From the skeleton there are two onward paths: adopt the packaged conception with `/context accept-all` (overwrites a skeleton config, never a populated one; writes `config.json` from `samples/conception.json` and preserves the skeleton's `substrate_id`), then `/context install`; or build a custom vocabulary directly via `amend-config` / `write-schema` / `append-block-item` (no catalog adoption). The opt-in install ceremony copies the `installed_schemas` / `installed_blocks` declared in `config.json` from the package samples catalog (`samples/blocks/` and `samples/schemas/`); it is idempotent. Populated block data is never overwritten (reported as `preserved`), while empty or absent blocks get the catalog starter. Install records an **install baseline** (`config.installed_from`) — the catalog source + a per-schema content fingerprint of the installed schemas — for installed-vs-catalog drift detection; the baseline covers schemas only. The adopted conception also carries advisory (severity-`warning`) convention-articulation invariants: every decision, feature, and task should carry an `item_governed_by_convention` edge to a convention it follows, or an `item_acknowledges_missing_convention` edge to a missing-convention gap — `context-validate` reports an artifact articulating neither as a warning (not an error), so the advice surfaces without blocking writes.
24
+
25
+ `/context update` is the drift-aware, customization-preserving path for bringing the installed schema model current with the catalog (it supersedes the former `/context install --update`). Per installed schema it consults the drift classification: an `in-sync` schema is a no-op; a `catalog-ahead` schema re-syncs through the migration-aware path; a `locally-modified` / `both-diverged` schema is reconciled by a deterministic 3-way merge of base (the as-installed schema body in the object store, keyed by the recorded baseline `content_hash`) × ours (the installed schema) × theirs (the catalog schema) — disjoint edits auto-merge so both the user's and the catalog's changes survive (`required` / `enum` / array-valued `type` nodes merge as sets), and a schema with irreconcilable per-path conflicts is left unmodified — the conflict set is returned in the op output (under `conflicts`) alongside a readable report, and the calling agent reconciles it then commits via `/context resolve-conflict` (no subordinate resolver is spawned). `update` also additively propagates catalog-new config-registry entries (`relation_types` / `invariants` / `block_kinds` / `lenses`) absent from the config, preserving every user-authored entry and any locally-diverged body of an existing entry (additive-only; the added ids are reported under `registryAdditions`). A version-bump `catalog-ahead` resync registers the shipped catalog migration chain's declarations into `migrations.json`, reported under `migrationsRegistered` (each `{ schema, from, to }`). `--dryRun` predicts the precise per-schema outcome (resync / migrate / block / merge / conflict) by running the forward-migration and re-validation in memory, alongside the config-registry entries that would be added and the migration declarations that would be registered, writing nothing. Preview drift first with `/context check-status`, which reports which installed schemas are behind the catalog and by what version gap.
21
26
 
22
27
  ## How It Works
23
28
 
@@ -60,6 +65,8 @@ Every item in an identity-bearing block carries a three-layer identity (the bloc
60
65
 
61
66
  On a stamping write, the content projection is persisted to `<substrate-dir>/objects/<content_hash>.json` — a content-addressed, git-tracked object store (one file per content version). The metadata fields excluded from the hash are the mandatory floor `{id, oid, content_hash, content_parent}` plus a discretionary set (the author fields and `closed_by`/`closed_at`); a schema's item subschema may redefine the discretionary set via `x-identity.metadata_fields`, but the floor is always excluded.
62
67
 
68
+ `/context install` and `/context update` also base-stamp each as-installed / resynced schema body into `objects/<content_hash>.json`, keyed by the schema's baseline `content_hash` recorded in `config.installed_from.assets`. This stamped body is the merge BASE the `/context update` 3-way merge reconstructs for a locally-modified schema.
69
+
63
70
  ### Cross-substrate: substrate_id + registry
64
71
 
65
72
  Each substrate's `config.json` carries a `substrate_id` (pattern `sub-` + 16 hex), minted once and immutable on disk. A project-root, git-tracked `.pi-context-registry.json` enumerates *all* substrates by `substrate_id` (each mapped to its `dir` and any `aliases`), distinct from the `.pi-context.json` pointer which names only the one active substrate. `resolveRef(cwd, ref)` classifies any endpoint as `active` (resolved in the active substrate), `foreign` (a registered `substrate_id` or `<alias>:<refname>` resolved in another substrate), `dangling` (a registered substrate that lacks the named item), or `unregistered` (a substrate_id/alias the registry does not carry). `validateContext` requires the active `config.substrate_id` to have a matching registry entry, guarding against source-of-truth drift.
@@ -75,12 +82,12 @@ All inter-item relationships are closure-table edges in `<substrate-dir>/relatio
75
82
  **Tools registered:** the tool surface grows with the package — read the generated `skills/pi-context/SKILL.md` for the current set, or call the `list-tools` tool at runtime (in-pi) / `grep pi.registerTool packages/pi-context/src/index.ts` (source). Families:
76
83
 
77
84
  - **Block CRUD** — `read-block`, `write-block`, `read-block-dir`, `append-block-item`, `update-block-item`, `upsert-block-item` (validated find-or-append), `remove-block-item`, and the nested-array variants (`append/update/remove-block-nested-item`).
78
- - **Item-level read/query** — `read-block-item`, `read-block-page`, `filter-block-items`, `resolve-item-by-id`, `resolve-items-by-id`, `join-blocks`, `find-references`, `walk-ancestors`, `context-walk-descendants`, `context-edges-for-lens`, `gather-execution-context`.
85
+ - **Item-level read/query** — `read-block-item`, `read-block-page`, `filter-block-items`, `resolve-item-by-id`, `resolve-items-by-id`, `join-blocks`, `find-references`, `walk-ancestors`, `context-walk-descendants`, `context-edges-for-lens`, `context-lens-view`, `gather-execution-context`.
79
86
  - **Substrate writes** — `append-relation`, `append-relations` (bulk edge append), `remove-relation`, `replace-relation` (single-write atomic re-orient), `amend-config`, `write-schema`, `write-schema-migration`, `rename-canonical-id`.
80
87
  - **Content-addressing lifecycle** — `promote-item` (cross-substrate derivation: promote an item into another registered substrate as a new content-addressed item + `item_derived_from_item` lineage edge; `dryRun` previews the destination write without persisting).
81
- - **Discovery/introspection** — `read-config`, `read-schema`, `read-samples-catalog`, `list-tools`, `context-current-state`, `context-bootstrap-state`.
88
+ - **Discovery/introspection** — `read-config`, `read-schema`, `read-samples-catalog`, `read-catalog-schema`, `list-tools`, `context-current-state`, `context-bootstrap-state`.
82
89
  - **Lifecycle/state** — `context-status`, `context-validate`, `context-validate-relations`, `complete-task` (gates on a passing `verification_verifies_item` edge — verification=parent, task=child).
83
- - **Substrate management** — `context-init`, `context-accept-all`, `context-switch`, `context-list`, `context-archive`.
90
+ - **Substrate management** — `context-init`, `context-accept-all`, `context-install`, `context-switch`, `context-list`, `context-archive`.
84
91
  - **Roadmap** — `context-roadmap-load`, `context-roadmap-render`, `context-roadmap-validate`, `context-roadmap-list`.
85
92
 
86
93
  The relation byRef ops (`append-relation` / `remove-relation` / `replace-relation` / `append-relations`) and `upsert-block-item` accept a `dryRun` flag: it resolves the operation and validates the prospective whole file under the SAME write-path validation, returning the would-decision (`{ ..., dryRun: true }`) while writing nothing. The same shared library path backs both the op (`--dryRun`) and the orchestrator scripts — one implementation, not a script-only preview.
@@ -94,7 +101,13 @@ The relation byRef ops (`append-relation` / `remove-relation` / `replace-relatio
94
101
  **Commands registered:**
95
102
  - `/context init <substrate-dir>` — bootstrap pointer + substrate/schemas dirs + a never-clobber skeleton `config.json` (schema-valid, empty of vocabulary, minted `substrate_id`); onward via accept-all OR amend-config / edit
96
103
  - `/context accept-all` — adopt `samples/conception.json` as `config.json` (idempotent; never overwrites an existing config)
97
- - `/context install [--update]` — reconcile the substrate against `installed_schemas` / `installed_blocks` in `config.json` by copying assets from the samples catalog (skip-if-exists by default; `--update` overwrites)
104
+ - `/context install` (CLI: `pi-context context-install [--update]`) — reconcile the substrate against `installed_schemas` / `installed_blocks` in `config.json` by copying assets from the samples catalog (skip-if-exists by default). Populated block data is never overwritten (reported as `preserved`), and empty or absent blocks get the catalog starter. Install also base-stamps each as-installed schema body into the object store and records an **install baseline** in `config.installed_from` — the catalog source (`name@version` + conception `schema_version`) plus a per-schema fingerprint (content hash + declared version) of the installed schemas — used for installed-vs-catalog drift detection. The baseline covers schemas only (blocks are user data); a re-install on an unchanged substrate is idempotent (byte-identical `config.json`, `at` preserved). (Bringing the installed schema model current is now `/context update`, below.)
105
+ - `/context check-status` (CLI: `pi-context context-check-status`) — read-only: reports drift between the installed schemas and the catalog, reporting each as `in-sync` / `catalog-ahead` / `locally-modified` / `both-diverged` / `no-baseline` / `missing-catalog` / `missing-installed`, and for each schema behind the catalog (`catalog-ahead` / `both-diverged`) it surfaces `behind` and a `version_delta` — the baseline → catalog version pair (a declared version bump) or a content-only basis when the catalog body moved with the version string unchanged; writes nothing
106
+ - `read-catalog-schema` (CLI: `pi-context read-catalog-schema --kind <canonical_id>`) — read-only: fetches and prints the verbatim bundled catalog `*.schema.json` body for a named block kind (the raw JSON Schema — `properties` / `definitions` / `$id`, not the `read-samples-catalog` projection), so the body is diffable locally against the installed `<substrate>/schemas/<name>.schema.json` without hunting through `node_modules`. Package-intrinsic (reads the extension's bundled samples catalog, independent of any project substrate); mutates nothing. An unknown kind is an error
107
+ - `validate-block-items` (CLI: `pi-context validate-block-items --block <name>`) — read-only: validates a block's items against the catalog schema version (forward-migrating in memory when the block lags the catalog version) and returns `{ block, from?, to?, valid, failures[] }`, each failure naming the item id, field, and constraint; writes nothing. An unknown block or a missing installed block file is an error
108
+ - `/context update [--dryRun]` (CLI: `pi-context update [--dryRun]`) — bring the installed schema model current with the catalog, routing each schema by its drift state: `in-sync` no-op; `catalog-ahead` resync (migration-aware); `locally-modified` / `both-diverged` reconciled by a deterministic 3-way merge of base (the as-installed body in the object store, keyed by the baseline `content_hash`) × ours (installed schema) × theirs (catalog schema) — disjoint edits auto-merge (`required` / `enum` / array-`type` nodes merge as sets), and a schema with irreconcilable per-path conflicts is left unmodified — the conflict set is returned in the op output (under `conflicts`) alongside a readable report, and the calling agent reconciles it then commits via `/context resolve-conflict` (below; no subordinate resolver is spawned). Update also additively propagates catalog-new config-registry entries (`relation_types` / `invariants` / `block_kinds` / `lenses`) absent from the config, preserving user-authored entries and any locally-diverged body of an existing entry (reported under `registryAdditions`). A version-bump `catalog-ahead` resync registers the shipped catalog migration chain's declarations into `migrations.json`; these are reported under `migrationsRegistered` (each `{ schema, from, to }`). A `catalog-ahead` schema whose resync is refused (`blocked`) carries its diagnostic under `blockedDetail` (one entry per blocked schema): the refusal reason — `no-migration-chain` (no shipped chain reaches the catalog version) vs `validation-failed` (the forward-migrated items fail the catalog schema) — the installed→catalog version pair, and for a validation failure the per-item failures naming the failing item id, field, and constraint. A live block also persists a pending-blocked record (`pending-blocked.json`, pinning the target catalog schema + the chain reaching it) consumable by `/context resolve-blocked` (below): fix the named items (or widen the local schema) then run it to commit the resolution so a subsequent `update` converges instead of re-blocking. A `validation-failed` block additionally gets git-style failure markers written INTO the block file at the offending items (full-line `<<<<<<< BLOCKED …` / `>>>>>>> target: …` sentinels), pinning the pre-marker bytes; the schema and `migrations.json` stay byte-unchanged, and `/context resolve-blocked` strips the markers before re-validating. `--dryRun` predicts the precise per-schema outcome (resync / migrate / block / merge / conflict) by running the forward-migration and re-validation in memory, alongside the per-blocked-schema diagnostic detail, the config-registry entries that would be added, and the migration declarations that would be registered, and writes nothing (no markers). Each auto-merged / resynced schema refreshes its baseline so a follow-up `/context check-status` reports it `in-sync`; a schema left as a `conflict` is NOT brought current by update — it stays unmodified until `/context resolve-conflict` commits the reconciliation
109
+ - `/context resolve-conflict --schemaName <name> [--schema <reconciled>]` (CLI: `pi-context resolve-conflict --schemaName <name> [--schema <reconciled>]`) — commit the reconciliation of a merge conflict `update` surfaced. Run after reconciling a `both-diverged` conflict: it writes the reconciled schema body (meta-validated, atomic) AND advances the merge base for that schema to the catalog body, so the next `update` sees the schema as `locally-modified` and its deterministic merge takes the reconciled body (base === theirs → ours) — auto-merging with zero conflicts and preserving the resolution. Without advancing the base a bare `write-schema` leaves the baseline on the original pre-conflict body and `update` re-derives the same conflict on every run. If `--schema` is omitted the current on-disk schema is treated as already reconciled and only the base is advanced
110
+ - `/context resolve-blocked --schemaName <name>` (CLI: `pi-context resolve-blocked --schemaName <name>`) — commit the resolution of a schema `update` blocked. Run after fixing the block's failing items (or widening the local schema): when the block file carries git-style failure markers (written by `update`), it strips the full-line marker sentinels first, then re-validates the corrected block against the pinned target schema from the pending-blocked record (forward-migrating in memory through the pinned chain when the block lags the target version); on pass it registers the chain declarations, writes the target schema, advances the block's `schema_version` envelope and the merge base to the target (so a subsequent `update` converges in-sync instead of re-blocking), and clears the pending entry; on fail it returns the remaining per-item failures and writes nothing (the pending record and the marker file stay intact for a retry)
98
111
  - `/context view <lensId>` — render a configured lens (groupByLens projection) into the conversation as markdown
99
112
  - `/context lens-curate <lensId>` — surface bin-assignment suggestions for uncategorized items as a follow-up turn; the LLM persists chosen edges via `append-block-item` against `relations.json`
100
113
  - `/context status` — derived project state (source metrics, test counts, block summaries, git state)
@@ -107,6 +120,8 @@ The relation byRef ops (`append-relation` / `remove-relation` / `replace-relatio
107
120
  - `/context list` — enumerate top-level dirs containing `config.json` (switchable substrates); marks the active one
108
121
  - `/context archive <dir>` — move a non-active substrate dir to `archive/<dir>/`
109
122
 
123
+ **Constrained pi session.** The standalone `@davidorex/pi-context-cli` also provides `pi-context pi-bound` — a process mode that launches a `pi` coding-agent session restricted to the composed pi-extension tool surface. See the [pi-context-cli README](../pi-context-cli/README.md#pi-context-pi-bound--constrained-pi-session).
124
+
110
125
  ## Source Files
111
126
 
112
127
  | File | Purpose |
@@ -207,7 +222,7 @@ edgesForLensByName(cwd: string, lensId: string): Edge[] | { error: string }
207
222
  walkLensDescendants(cwd: string, parentId: string, relationType: string): string[]
208
223
  ```
209
224
 
210
- Pure functions consumed by the `/context view`, `/context lens-curate`, `context-edges-for-lens`, `context-walk-descendants`, and `context-validate-relations` shells in `index.ts`. Tests call them directly without an `ExtensionCommandContext`.
225
+ Pure functions consumed by the `/context view`, `/context lens-curate`, `context-edges-for-lens`, `context-lens-view`, `context-walk-descendants`, and `context-validate-relations` shells in `index.ts`. Tests call them directly without an `ExtensionCommandContext`.
211
226
 
212
227
  ### Substrate Path Surface (`src/context-dir.ts`)
213
228
 
@@ -183,6 +183,19 @@ export declare function readBlock(cwd: string, blockName: string, filter?: {
183
183
  * for existing callers.
184
184
  */
185
185
  export declare function writeTypedFile(filePath: string, schemaPath: string | null, data: unknown, ctx?: DispatchContext, errorLabel?: string): void;
186
+ /**
187
+ * Pure-data recursive walk over every array-valued property at any depth.
188
+ * For a plain (non-array) object `data`, each `[key, value]` pair whose `value`
189
+ * is an array is reported via `visit(key, value)`, then each element of that
190
+ * array that is itself a plain (non-array) object is recursed into (so an
191
+ * item's own nested id-bearing arrays — e.g. `layer-plans` items'
192
+ * `layers` / `migration_phases` — are visited under their item-local key).
193
+ * No schema is consulted; this matches the block shapes the schemas use
194
+ * (top-level arrays of items, items carrying nested arrays of items). Non-array
195
+ * object-valued properties that are NOT array elements are not descended into —
196
+ * block items live in arrays, so only array elements are recursion frontiers.
197
+ */
198
+ export declare function forEachBlockArray(data: unknown, visit: (arrayKey: string, array: unknown[]) => void): void;
186
199
  export declare function appendToTypedFile(filePath: string, schemaPath: string | null, arrayPath: string | null, item: unknown, ctx?: DispatchContext, errorLabel?: string): void;
187
200
  /**
188
201
  * Validated atomic bulk append-if-absent to an array within a
@@ -1 +1 @@
1
- {"version":3,"file":"block-api.d.ts","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-api.d.ts","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
package/dist/block-api.js CHANGED
@@ -925,7 +925,7 @@ function assertNoDuplicateIdsInArray(arr, labelForArray) {
925
925
  * object-valued properties that are NOT array elements are not descended into —
926
926
  * block items live in arrays, so only array elements are recursion frontiers.
927
927
  */
928
- function forEachBlockArray(data, visit) {
928
+ export function forEachBlockArray(data, visit) {
929
929
  if (!data || typeof data !== "object" || Array.isArray(data))
930
930
  return;
931
931
  for (const [key, value] of Object.entries(data)) {
@@ -1 +1 @@
1
- {"version":3,"file":"block-api.js","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"block-api.js","sourceRoot":"","sources":["../src/block-api.ts"],"names":[],"mappings":"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"}
@@ -22,4 +22,17 @@ export declare function sha256Hex(canonical: string): string;
22
22
  * built.
23
23
  */
24
24
  export declare function computeContentHash(content: Record<string, unknown>): string;
25
+ /**
26
+ * Content hash of the JSON value stored at `filePath`:
27
+ * `sha256Hex(canonicalJson(JSON.parse(fs.readFileSync(filePath, "utf8"))))`.
28
+ *
29
+ * Reads the file, parses it as JSON, and hashes its CONTENT via JCS (RFC 8785),
30
+ * so the digest is byte-layout-insensitive — two files whose JSON differs only
31
+ * in key order or whitespace produce the same hash. Used to fingerprint an
32
+ * installed schema file for the install baseline (`config.installed_from.assets`)
33
+ * so later slices can detect installed-vs-catalog drift. Distinct from
34
+ * `computeContentHash`, which takes an already-parsed record; this variant owns
35
+ * the read + parse so callers pass a path.
36
+ */
37
+ export declare function computeFileContentHash(filePath: string): string;
25
38
  //# sourceMappingURL=content-hash.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"content-hash.d.ts","sourceRoot":"","sources":["../src/content-hash.ts"],"names":[],"mappings":"AA6BA;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQpD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAE3E"}
1
+ {"version":3,"file":"content-hash.d.ts","sourceRoot":"","sources":["../src/content-hash.ts"],"names":[],"mappings":"AA8BA;;;;;;;;GAQG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,OAAO,GAAG,MAAM,CAQpD;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAEnD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,CAE3E;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE/D"}