@research-engineering/agentic-proofkit 0.7.0 → 0.9.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.
@@ -10,6 +10,8 @@ This map helps consuming repositories choose the smallest Proofkit CLI command
10
10
  or JSON contract without loading the full README or source tree. It is not an
11
11
  exhaustive schema reference. The canonical command inventory is
12
12
  `proofkit/cli-contract.v2.json`.
13
+ Its `commandRouteGrammar.omittedRoutePolicy` field owns how consumers expand a
14
+ command record that omits an explicit `route`.
13
15
 
14
16
  Formal rule:
15
17
 
@@ -39,8 +41,9 @@ owner boundaries. It is not a second command-family inventory.
39
41
 
40
42
  | Family | Main commands | Caller provides | Proofkit owns | Consumer owns | Output authority |
41
43
  |---|---|---|---|---|---|
42
- | Agent workflow planning | `change-workflow-plan`, `native-evidence-guidance` | explicit checkpoint, completed stage ids, bounded context refs, governing authority ref, and required context ref ids | optional built-in `proofkit.reviewed-change.v1` checkpoint relation, reference-closed next-stage context, deterministic agent prompts, bounded text/JSON/envelope projections, and repository-neutral native-evidence guidance with closed applicability classes | custom workflow topology, repository state discovery, stage execution, native witness semantics, evidence collection, review conclusions, merge, release, deployment, and rollout authority | next-action plan, terminal workflow report, bounded agent envelope, or guidance catalog |
43
- | Adoption and scaffolding | `adopt plan`, `repository-inventory`, `adoption-contract-envelope`, `adoption-workflow-plan`, `adoption-checklist`, `adoption-doctor`, `gradual-adoption`, `gradual-adoption-bootstrap`, `gradual-adoption-guidance`, `capability-map-admission`, `pilot-admission`, `scaffold-profile-plan`, `scaffold-project-structure`, `stack-preset` | explicit repository root, explicit fresh/code-baseline/audit-from-code intent, optional stack hint, aggregate adoption contract envelope, checklist facts, target paths, owner routes, caller-extracted stale authority vocabulary facts, explicit pre-spec capability observations, and pilot records | bounded fixed-catalog root inventory, candidate-only front-door tasks, aggregate contract-envelope admission, deterministic starter plans, checklist/report admission, bounded guidance envelopes, dry-run manifests, pre-spec trust-mode admission, adoption gap and stale-authority classification, and pilot shape admission | stack selection, arbitrary source inspection, final files, final requirements, rollout policy, text extraction, code observation extraction, and pilot truth | inventory, candidate-only plan, selected child output, report, seed packet, or agent envelope |
44
+ | Project state navigation | `status`, `next` | explicit repository root | bounded transaction-first materialized-project inspection, normalized observation identity, deterministic project-state classification, and one non-executable next action; admitted in-bound records bind exact content digests, while unread out-of-bound records intentionally identify only their invalid class | repository policy, byte identity for unread out-of-bound records, witness execution, receipt trust/currentness/scope, merge, release, deployment, rollout, and production readiness | project-status report, next-action packet, or bounded text projection |
45
+ | Agent workflow planning | `change plan`, `native-evidence-guidance` | explicit checkpoint, completed stage ids, bounded context refs, governing authority ref, and required context ref ids | optional built-in `proofkit.reviewed-change.v1` checkpoint relation, reference-closed next-stage context, deterministic agent prompts, bounded text/JSON/envelope projections, and repository-neutral native-evidence guidance with closed applicability classes | custom workflow topology, repository state discovery, stage execution, native witness semantics, evidence collection, review conclusions, merge, release, deployment, and rollout authority | next-action plan, terminal workflow report, bounded agent envelope, or guidance catalog |
46
+ | Adoption and scaffolding | `adopt plan`, `adopt materialize plan`, `adopt materialize apply`, `adopt materialize recover`, `repository-inventory`, `adoption-contract-envelope`, `adoption-workflow-plan`, `adoption-checklist`, `adoption-doctor`, `gradual-adoption`, `gradual-adoption-bootstrap`, `gradual-adoption-guidance`, `capability-map-admission`, `pilot-admission`, `scaffold-profile-plan`, `scaffold-project-structure`, `stack-preset` | explicit repository root, explicit fresh/code-baseline/audit-from-code intent, optional stack hint, owner-reviewed candidate packet, expected transaction and desired-state identities, recovery action, aggregate adoption contract envelope, checklist facts, target paths, owner routes, caller-extracted stale authority vocabulary facts, explicit pre-spec capability observations, and pilot records | bounded fixed-catalog root inventory, candidate-only front-door tasks, owner-closed read-only materialization plans, confined transactional apply and recovery receipts, aggregate contract-envelope admission, deterministic starter plans, checklist/report admission, bounded guidance envelopes, dry-run manifests, pre-spec trust-mode admission, adoption gap and stale-authority classification, and pilot shape admission | stack selection, arbitrary source inspection, candidate review, final requirement meaning, proof adequacy, rollout policy, text extraction, code observation extraction, and pilot truth | inventory, candidate-only plan, transaction-bound materialization plan or receipt, selected child output, report, seed packet, or agent envelope |
44
47
  | Requirement source | `capability-map-admission`, `requirement-authoring-plan`, `requirement-source-admission`, `requirement-source-transition`, `spec-overview-claims`, `requirement-spec-tree`, `requirement-spec-tree-view`, `requirement-source-view`, `requirement-browser-server` | `requirements.v1.json`, caller-owned capability maps, caller-owned authoring facts, overview claim extraction, explicit spec hierarchy, view options | candidate seed admission, candidate-only authoring packets, source-shape admission, lifecycle checks, explicit tree topology/source-ref admission, shared safe renderer fragments, presentation-only views | requirement meaning, extraction completeness, Markdown extraction completeness, hierarchy ownership, proof adequacy, file materialization | capability map report, authoring packet, source report, spec-tree report, rendered view, or browser presentation |
45
48
  | Requirement proof binding | `requirement-bindings`, `binding-partition`, `proof-slice`, `evidence-graph`, `requirement-proof-resolver`, `requirement-proof-source-set`, `requirement-proof-view`, `spec-proof-bundle-admission` | requirement records, bindings, witness commands, source-set facts, receipt reports, partition policy | graph validation, binding partition projection, compact slices, declaration-only compact route projection with full binding identity and role-qualified witness routes, resolver projection, bundle linkage checks | selector resolution, oracle quality, witness execution, mutation adequacy, finding completeness, proof freshness, trust, assurance, merge policy | proof report, partition report, slice, declaration lookup graph, or view |
46
49
  | Test inventory and coverage | `test-evidence-inventory`, `test-evidence-inventory --projection discovery-draft`, `test-evidence-inventory --normalized-inventory`, `requirement-coverage-input-compose`, `requirement-coverage-view`, `requirement-browser-server --view coverage` | caller-owned direct or source-set test inventory, caller-owned explicit test discovery facts, declared quality findings, requirement source, proof binding or compact proof contract, coverage universe, optional owner-invariant registry, aggregate coverage compose input | strict inventory/source-set admission, candidate-only discovery draft projection, fail-closed normalized inventory projection, deterministic coverage-view input composition from explicit facts, missing declared assertion-signal and declared-quality classification, bounded agent action guidance, requirement/test/command/owner-invariant joins, nonsemantic command-evidence classification, stable coverage failure/warning classifications, presentation-only coverage view | inventory completeness, oracle quality, test quality, test discovery extraction, native test execution, receipt freshness, producer trust, merge policy | candidate inventory guidance, inventory report, normalized inventory data product, coverage-view input, coverage view, or browser presentation |
@@ -128,10 +131,12 @@ Semantic context routes are `requirement-context-compose`,
128
131
 
129
132
  | State or goal | Next Proofkit route | Stop or escalation condition |
130
133
  |---|---|---|
134
+ | The repository may already contain a materialized Proofkit project. | `status --repo-root <caller-selected-root>` for the full bounded classification or `next --repo-root <caller-selected-root>` for its single action projection. | Treat `verification_required` as a request to run repository-owned verification, never as completion or approval. Stop on blocked or recovery-required states; the packet does not execute its route or own policy. |
131
135
  | The agent does not know where to start. | `adopt plan --mode <mode> --repo-root <caller-selected-root>`, where mode is `fresh`, `code-baseline`, or `audit-from-code` | Choose the trust intent explicitly. Treat the fixed-catalog inventory and tasks as a read-only candidate plan; stop before arbitrary source inspection, writing files, or making requirements authoritative. |
132
- | An agent needs a bounded, deterministic stage transition for an engineering change. | `change-workflow-plan` selects the optional built-in `proofkit.reviewed-change.v1` profile; use `--agent-envelope` for the compact work packet and `native-evidence-guidance` when the consuming repository has not yet materialized repository-specific evidence instructions. | Supply only explicit current checkpoint, completed stages, and admitted context references. Apply conditional guidance slots only when their applicability class matches a declared consumer mechanism. Stop before treating the profile, plan, or guidance as repository policy or as proof that a stage ran, evidence exists, review passed, or merge/release is authorized. |
136
+ | An agent needs a bounded, deterministic stage transition for an engineering change. | `change plan` selects the optional built-in `proofkit.reviewed-change.v1` profile; use `--agent-envelope` for the compact work packet and `native-evidence-guidance` when the consuming repository has not yet materialized repository-specific evidence instructions. | Supply only explicit current checkpoint, completed stages, and admitted context references. Apply conditional guidance slots only when their applicability class matches a declared consumer mechanism. Stop before treating the profile, plan, or guidance as repository policy or as proof that a stage ran, evidence exists, review passed, or merge/release is authorized. |
133
137
  | No admitted spec/profile exists and the caller has explicit capability observations. | `capability-map-admission`; use `trustMode: "code_baseline"` only when maintainers intentionally freeze current code, otherwise use `trustMode: "audit_from_code"`. | Stop before treating seeds as stable requirements. The consumer owns observation extraction, materialization, requirement meaning, and proof adequacy. |
134
138
  | No admitted spec/profile exists and no capability observations exist. | Start with `adopt plan --mode fresh --repo-root <caller-selected-root>`; use `scaffold-project-structure`, `adoption-workflow-plan`, or `stack-preset` only as later specialist routes when an owner has selected them. | Treat front-door tasks as candidate-only. Stop before writing files; the consumer owns materialization, overwrite policy, and final requirement text. |
139
+ | Owner-reviewed candidate requirement sources, proof bindings, and test inventory are ready for repository materialization. | Use command ID `adopt-materialize-plan` through route `adopt materialize plan --input <candidate-packet> --repo-root <caller-selected-root>`, review the exact transaction and desired-state identities, then use command ID `adopt-materialize-apply` through route `adopt materialize apply` with both expected identities. Use `adopt materialize recover` only for the exact observed transaction and state-compatible `resume` or `rollback` action. | Stop on stale state, unknown ownership, path-role collision, pending transaction, identity mismatch, or recovery-required output. A plan or receipt does not prove requirement meaning, witness truth, proof adequacy, merge approval, rollout, or production readiness. |
135
140
  | Candidate boundary is uncertain. | `adoption-doctor` or `gradual-adoption-guidance --agent-envelope` | Escalate to owner review when the boundary is advisory, ambiguous, or missing native witnesses. |
136
141
  | Temporary external design, implementation-plan, PR, code, or test observations may contain durable requirements. | `requirement-authoring-plan` | Treat output as candidate-only; stop before writing `requirements.v1.json`, retaining temporary documents, or claiming requirement meaning. |
137
142
  | Requirement records exist. | `requirement-source-admission`; use `requirement-source-transition` for lifecycle changes. | Escalate when blocking requirements lack proof routes or lifecycle replacement ids are incomplete. |
@@ -7,7 +7,7 @@ witnesses, merge, release, rollout, or production-readiness decisions.
7
7
 
8
8
  The public capability is deliberately small:
9
9
 
10
- 1. `change-workflow-plan` admits explicit JSON and projects one next action for
10
+ 1. `change plan` admits explicit JSON and projects one next action for
11
11
  the optional built-in profile `proofkit.reviewed-change.v1`, whose ordered
12
12
  stages are `architecture`, `design`, `implementation_plan`,
13
13
  `implementation`, `verification`, `pull_request`, and `closeout`.
@@ -19,12 +19,19 @@ The public capability is deliberately small:
19
19
  the consuming witness declares the named mechanism.
20
20
  3. Existing descriptors, dispatch, command families, root-shape CLI contracts,
21
21
  agent envelopes, and package gates provide public-surface closure.
22
+ 4. `status --repo-root` classifies only a bounded normalized
23
+ materialized-project observation, and `next --repo-root` projects one
24
+ bounded action. Admitted in-bound records bind exact content digests;
25
+ unread out-of-bound records bind only their invalid class. Neither command
26
+ claims native execution or proof completion.
22
27
 
23
- Neither workflow command scans a repository. Both command cores are stateless
24
- pure projections with no filesystem, Git, process, environment, clock, random,
25
- network, container, or provider dependency. Neither workflow command adds a
26
- setup facade, hidden route policy, external prompt resource, persisted
27
- experiment state, or second source codec. Agent-route brief and full
28
+ The change planner and evidence-guidance cores are stateless pure projections.
29
+ Project status reads only an explicit repository root, the conventional routing
30
+ manifest, its declared children, and transaction control state through bounded
31
+ owner-admitted transport. No workflow command executes Git, native witnesses,
32
+ network, containers, or providers. No workflow command adds a setup facade,
33
+ hidden route policy, external prompt resource, persisted experiment state,
34
+ generic report interpreter, or second source codec. Agent-route brief and full
28
35
  projections remain independently owned by the spec-proof-core package.
29
36
 
30
37
  ## Requirements
@@ -69,6 +76,22 @@ projections remain independently owned by the spec-proof-core package.
69
76
  descriptor/dispatcher/family/help/root-contract/witness/generated/package
70
77
  surfaces, with npm-only non-runtime specification docs and cross-channel
71
78
  runtime behavior proof.
79
+ - `REQ-PROOFKIT-WORKFLOW-012`: one truthful project-state owner, exhaustive
80
+ precedence, existing child and cross-record closure owners, and no promotion
81
+ of source declarations or caller status into execution evidence.
82
+ - `REQ-PROOFKIT-WORKFLOW-013`: one application-write-free root-bound inspection
83
+ lease, cooperative writer exclusion, descriptor-relative exact-path
84
+ traversal, bounded content-cohort validation, fail-closed partial control
85
+ observations, one bounded retry, and a portable non-disclosing
86
+ normalized-observation identity.
87
+ Filesystem-owned read metadata such as access time is outside that guarantee.
88
+ - `REQ-PROOFKIT-WORKFLOW-014`: one total state-to-action table, one bounded
89
+ next action, explicit owner decisions, and no embedded route universe.
90
+ - `REQ-PROOFKIT-WORKFLOW-015`: status/next CLI channel and exit semantics,
91
+ checkpointed pre-emission failure discipline, one bounded stdout write
92
+ without claiming cancellation rollback or atomicity from an external sink,
93
+ and a versioned breaking replacement
94
+ of the flat change route by `change plan` across source and installed carriers.
72
95
 
73
96
  Shared stable-JSON/diagnostic hardening is owned by the supply-chain-quality
74
97
  spec. Typed local-reference closure is owned by the existing agent-envelope
@@ -147,6 +147,62 @@
147
147
  "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
148
148
  "deferral": null,
149
149
  "updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
150
+ },
151
+ {
152
+ "requirementId": "REQ-PROOFKIT-WORKFLOW-012",
153
+ "ownerId": "proofkit.agent-workflow",
154
+ "invariant": "Project status consumes only one explicit repository root, the conventional digest-routed project manifest, its exact manifest-declared canonical children, and one repository-transaction control projection; it delegates child admission and cross-record closure to the adoption-materialization owner, publishes exactly one state from uninitialized, recovery_required, blocked, stale, and verification_required through one exhaustive precedence table, and never promotes source declarations, binding commands, caller-owned passed labels, or caller-declared workflow completion into native execution, receipt currentness, trust, merge, release, rollout, deployment, or production-readiness evidence.",
155
+ "claimLevel": "blocking",
156
+ "riskClass": "high",
157
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
158
+ "nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-012"],
159
+ "nonClaims": ["Project status classifies the observed materialized-project snapshot and can become stale immediately after emission; it does not prove native witness execution or complete any declared proof scope."],
160
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
161
+ "deferral": null,
162
+ "updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
163
+ },
164
+ {
165
+ "requirementId": "REQ-PROOFKIT-WORKFLOW-013",
166
+ "ownerId": "proofkit.agent-workflow",
167
+ "invariant": "Project inspection is explicit, root-confined, application-write-free, symlink-denying, byte-bounded, and normalized-observation-bound: Proofkit performs no repository mutation operation; one inspection lease pins one repository root for the whole attempt, exports only exact read-only file capabilities, and, when the transaction control namespace exists, holds its native cooperative writer lock; transaction control is projected by its native owner as clean, recoverable with an exact transaction identity, or invalid with a portable content-bound observation epoch only after the entire namespace is observed within canonical entry, file, aggregate, depth, and file-type bounds, while overflow or unsupported shape fails without a partial packet; every manifest and child route is traversed component by component from the pinned root with exact-name admission, no symlink following, descriptor identity checks, regular-file admission, per-file one-MiB and per-pass aggregate eight-MiB limits before semantic decoding; the root identity and transaction observation are equal before and after the read and a second bounded digest pass over the manifest and every routed child equals the admitted first-pass cohort, or the operation performs at most one complete retry and then fails as concurrent change; every public state receives a snapshot identity over one total tagged observation whose admitted in-bound records bind exact content digests, whose unread out-of-bound records intentionally bind only their invalid class, whose project is unknown or admitted, whose manifest is absent, invalid with an optional bounded content digest, or admitted with identity and content digest, whose transaction carries its tagged state and epoch, whose children are ordered kind/state/expected/observed digest records, and whose cross-record closure state is explicit, without exposing raw bytes, repository paths, or caller text.",
168
+ "claimLevel": "blocking",
169
+ "riskClass": "high",
170
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
171
+ "nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-013"],
172
+ "nonClaims": ["A coherent read snapshot does not prevent later filesystem mutation, authenticate repository ownership, provide power-loss or multi-reader atomicity, exclude a same-user writer that bypasses the repository transaction owner, identify unread out-of-bound record bytes beyond their normalized invalid class, or prevent the filesystem from updating read-side metadata such as access time."],
173
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
174
+ "deferral": null,
175
+ "updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
176
+ },
177
+ {
178
+ "requirementId": "REQ-PROOFKIT-WORKFLOW-014",
179
+ "ownerId": "proofkit.agent-workflow",
180
+ "invariant": "Project next-action output is a deterministic bounded projection of the admitted project status through one total state-to-action table: blocked maps to non-executable repair, recovery_required maps to a non-executable recovery-direction decision bound to the transaction identity, uninitialized maps to a non-executable source-trust-mode decision, stale maps to rematerialization, and verification_required maps to repository-owned native verification; it emits exactly one action, at most sixteen stable non-disclosing issue codes, no route universe, no inferred trust mode, recovery direction, command success, or owner decision, and stable JSON within 32768 bytes plus text within 4096 UTF-8 bytes and sixteen lines that preserves exactly projectState, actionClass, executable, commandRoute, contextRef, requiredDecision, and issueCodes while intentionally omitting JSON-only packetId, snapshotId, statusRef, and nonClaims.",
181
+ "claimLevel": "blocking",
182
+ "riskClass": "high",
183
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
184
+ "nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-014"],
185
+ "nonClaims": ["A next-action packet is derived guidance; it does not execute, authorize, or prove the proposed action."],
186
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
187
+ "deferral": null,
188
+ "updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
189
+ },
190
+ {
191
+ "requirementId": "REQ-PROOFKIT-WORKFLOW-015",
192
+ "ownerId": "proofkit.agent-workflow",
193
+ "invariant": "The public status and next commands require exactly one explicit --repo-root, default to stable ANSI-free JSON, admit text and terminal-only color through the shared presentation contract, return exit zero for every successfully classified project state, including bounded project-record decoding or admission failure, and return exit one without beginning output emission for invocation, confinement, inspection-bound, concurrent-change, cleanup, serialization, or cancellation observed at bounded operation checkpoints and the final pre-emission checkpoint; successful serialization reaches stdout through one bounded write, and a transport failure returns exit one without claiming atomic behavior from a writer that accepted a prefix before failing; the same versioned breaking public edge adds both commands, replaces the flat change-workflow-plan route with change plan without adding a route-alias registry or second implementation, rejects the retired route, admits the hierarchical route, and closes descriptor, help, CLI contract, command family, contract map, ABI, source witness, installed npm, and installed wheel surfaces.",
194
+ "claimLevel": "blocking",
195
+ "riskClass": "high",
196
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
197
+ "nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-015"],
198
+ "nonClaims": [
199
+ "A caller-provided stdout writer that accepts a prefix and then fails does not provide an atomic sink, so Proofkit does not claim that such a transport leaves stdout empty.",
200
+ "CLI surface closure does not prove registry publication, provider ingestion, consumer migration, native witness truth, rollout, or production readiness.",
201
+ "Cancellation racing after the final pre-emission checkpoint cannot retract bytes subsequently accepted by an external writer."
202
+ ],
203
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
204
+ "deferral": null,
205
+ "updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
150
206
  }
151
207
  ],
152
208
  "nonClaims": [
@@ -190,6 +190,22 @@ execution receipts, and merge policy.
190
190
  - `REQ-PROOFKIT-SPEC-031`: the adoption version edge binds exact ABI, command,
191
191
  contract, generated-artifact, and release-change inventories while proving
192
192
  that the retired `init` route has no remaining public owner.
193
+ - `REQ-PROOFKIT-SPEC-032`: adoption materialization admits candidate artifacts
194
+ through their existing owners, proves cross-record closure, and binds a
195
+ read-only plan plus apply and recovery receipts to complete state identities.
196
+ - `REQ-PROOFKIT-SPEC-033`: repository transactions confine bounded immutable
197
+ plans, private journals, atomic target replacement, exact rollback, and
198
+ action-stable replay recovery without claiming repository-wide atomicity.
199
+ - `REQ-PROOFKIT-SPEC-034`: the pre-materialization-to-transactional-
200
+ materialization public version edge binds all three transactional
201
+ materialization routes and their exact public contracts to a compatible
202
+ byte-frozen predecessor release record without coupling the historical edge
203
+ to the live release record or reinterpreting the frozen prior edge.
204
+ - `REQ-PROOFKIT-SPEC-035`: the project-state public version edge binds the exact
205
+ raw ABI identities, proves the complete semantic ABI difference after
206
+ normalizing only native-source digests, and binds status, next, the
207
+ change-plan route replacement, and omitted-route policy to one breaking
208
+ release record without reinterpreting the frozen prior edge.
193
209
 
194
210
  ## Non-Claims
195
211
 
@@ -650,7 +650,7 @@
650
650
  {
651
651
  "requirementId": "REQ-PROOFKIT-SPEC-031",
652
652
  "ownerId": "proofkit.spec-proof-core",
653
- "invariant": "The adoption-front-door public version edge binds the exact previous and current public ABI digests, the exact removal of init, the exact addition of adopt plan and repository-inventory, one explicit selection policy covering every command whose declared input-contract identifier changed while leaving source-bound digest churn to the enclosing ABI digests, the live current input-contract identifier and wire schema of every selected command, every changed generated artifact identity, and the ordered breaking and additive change inventories to one digest-bound release change record; the superseded init route has no active descriptor, dispatcher, CLI contract, command family, or package owner.",
653
+ "invariant": "The frozen 0.6.0-to-0.7.0 adoption-front-door public version edge binds the exact previous and released public ABI digests, the exact removal of init, the exact addition of adopt plan and repository-inventory, one explicit selection policy covering every command whose declared input-contract identifier changed while leaving source-bound digest churn to the enclosing ABI digests, the released input-contract identifier and wire schema of every selected command, every changed generated artifact identity, and the ordered breaking and additive change inventories to one digest-bound frozen release change record; the superseded init route has no active descriptor, dispatcher, CLI contract, command family, or package owner, and later releases cannot reinterpret this historical edge through live contract metadata.",
654
654
  "claimLevel": "blocking",
655
655
  "riskClass": "high",
656
656
  "proofBindingRefs": ["proofkit/requirement-bindings.json"],
@@ -659,6 +659,58 @@
659
659
  "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
660
660
  "deferral": null,
661
661
  "updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
662
+ },
663
+ {
664
+ "requirementId": "REQ-PROOFKIT-SPEC-032",
665
+ "ownerId": "proofkit.spec-proof-core",
666
+ "invariant": "Adoption materialization fully admits one candidate packet through the existing requirement-source, requirement-binding, test-inventory, repository-inventory, and adoption-plan owners; proves exact cross-record identity and reference closure; derives canonical child-owned bytes plus one routing-only manifest without mirroring child field semantics; and emits a deterministic read-only plan whose transaction and desired-state identities bind the complete admitted before and after states. Apply recomputes that complete plan and requires both expected identities before any mutation, recovery accepts only one observed transaction identity and one state-compatible action, every plan and receipt is closed under its own output admission, and caller review declarations remain declarations rather than requirement, proof, execution, or approval evidence.",
667
+ "claimLevel": "blocking",
668
+ "riskClass": "critical",
669
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
670
+ "nonClaimRefs": ["NC-PROOFKIT-SPEC-032"],
671
+ "nonClaims": ["Materialization does not infer requirement meaning, authenticate witness truth or freshness, execute native witnesses, approve merge or release, establish rollout or production readiness, or make its routing manifest a second semantic owner."],
672
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
673
+ "deferral": null,
674
+ "updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
675
+ },
676
+ {
677
+ "requirementId": "REQ-PROOFKIT-SPEC-033",
678
+ "ownerId": "proofkit.spec-proof-core",
679
+ "invariant": "The repository-transaction owner confines every effect to one explicit repository root; freezes a bounded canonical execution plan before effects; rejects non-canonical, reserved, symlinked, case-folding, Unicode-folding, and prefix-alias target identities; keeps staged payloads, backups, ownership records, and publish temporaries in one private transaction namespace; records each created directory by exact filesystem identity; and performs each target replacement by same-filesystem atomic rename. A bounded durable journal identifies the exact before-state prefix, applied-target count, and terminal result; apply fails closed on stale state, unknown control records, and cooperative concurrency; rollback removes only transaction-owned artifacts and restores exact bytes and modes; resume and rollback are state-compatible, action-stable, cancellation-aware, and replay-idempotent; terminal receipts preserve the complete observable result until a later valid transaction replaces them. These guarantees cover process interruption at every injected mutation boundary but do not claim filesystem-wide atomic visibility, power-loss durability beyond successful synchronization, protection from arbitrary readers, or safety against a non-cooperative same-user process mutating the private namespace.",
680
+ "claimLevel": "blocking",
681
+ "riskClass": "critical",
682
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
683
+ "nonClaimRefs": ["NC-PROOFKIT-SPEC-033"],
684
+ "nonClaims": ["Repository transactions do not provide multi-file atomic visibility to concurrent arbitrary readers, distributed transactions, protection from a hostile same-user process, or stronger power-loss durability than the admitted filesystem synchronization operations."],
685
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
686
+ "deferral": null,
687
+ "updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
688
+ },
689
+ {
690
+ "requirementId": "REQ-PROOFKIT-SPEC-034",
691
+ "ownerId": "proofkit.spec-proof-core",
692
+ "invariant": "The byte-frozen 0.7.0-to-0.8.0 public version edge binds the exact previous and released 0.8.0 public ABI digests; the exact addition of adopt materialize plan, apply, and recover with their public routes and input/output contract identities and digests; an explicit added-command selection policy; and the complete ordered additive inventory to one digest-bound archived 0.8.0 release change record. The edge is compatible, contains no breaking changes or migration steps, and later releases cannot mutate, reinterpret, or bind it to the live current release record or live command metadata.",
693
+ "claimLevel": "blocking",
694
+ "riskClass": "high",
695
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
696
+ "nonClaimRefs": ["NC-PROOFKIT-SPEC-034"],
697
+ "nonClaims": ["A source-bound version edge does not authenticate registry publication, provider ingestion, consumer adoption, native witness truth, rollout, or production readiness."],
698
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
699
+ "deferral": null,
700
+ "updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
701
+ },
702
+ {
703
+ "requirementId": "REQ-PROOFKIT-SPEC-035",
704
+ "ownerId": "proofkit.spec-proof-core",
705
+ "invariant": "The 0.8.0-to-0.9.0 public version edge binds the exact raw previous and current public ABI digests and proves their complete semantic difference: status and next are the only added commands; their public routes and output contract identities and digests are exact; the flat change-workflow-plan route is replaced by change plan while preserving one internal implementation and the input/output contract identities and digests; every predecessor command is otherwise identical after normalizing only native-source canonical digests; every predecessor contract definition remains exact; added definitions are exactly the transitive closure of the added commands; and omitted-route policy is the only process-contract addition. Native-source digest churn remains bound by the raw edge digests rather than being misclassified as wire-semantic change. The complete ordered breaking, additive, and migration inventories bind to one digest-bound current release change record; the edge rejects the retired route, admits the hierarchical route, and cannot mutate or reinterpret the byte-frozen 0.7.0-to-0.8.0 edge.",
706
+ "claimLevel": "blocking",
707
+ "riskClass": "high",
708
+ "proofBindingRefs": ["proofkit/requirement-bindings.json"],
709
+ "nonClaimRefs": ["NC-PROOFKIT-SPEC-035"],
710
+ "nonClaims": ["A source-bound version edge does not authenticate registry publication, provider ingestion, consumer migration, native witness truth, rollout, or production readiness."],
711
+ "lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
712
+ "deferral": null,
713
+ "updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
662
714
  }
663
715
  ],
664
716
  "nonClaims": [
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@research-engineering/agentic-proofkit",
3
3
  "description": "Reusable proof profile, report, graph, and witness-planning primitives.",
4
- "version": "0.7.0",
4
+ "version": "0.9.0",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "sideEffects": false,