@research-engineering/agentic-proofkit 0.3.0 → 0.5.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.
- package/dist/platform/darwin-arm64/agentic-proofkit +0 -0
- package/dist/platform/darwin-x64/agentic-proofkit +0 -0
- package/dist/platform/linux-arm64/agentic-proofkit +0 -0
- package/dist/platform/linux-x64/agentic-proofkit +0 -0
- package/docs/proofkit-contract-map.md +5 -3
- package/docs/release-process.md +10 -1
- package/docs/specs/proofkit-agent-workflow/overview.md +86 -0
- package/docs/specs/proofkit-agent-workflow/requirements.v1.json +157 -0
- package/docs/specs/proofkit-spec-proof-core/overview.md +29 -16
- package/docs/specs/proofkit-spec-proof-core/requirements.v1.json +18 -5
- package/docs/specs/proofkit-supply-chain-quality/overview.md +41 -19
- package/docs/specs/proofkit-supply-chain-quality/requirements.v1.json +30 -4
- package/package.json +2 -2
- package/proofkit/cli-contract.v2.json +709 -249
- package/proofkit/command-families.v1.json +9 -0
- package/proofkit/requirement-bindings.json +1241 -14
- package/proofkit/witness-plan.json +12 -0
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
Binary file
|
|
@@ -39,14 +39,15 @@ owner boundaries. It is not a second command-family inventory.
|
|
|
39
39
|
|
|
40
40
|
| Family | Main commands | Caller provides | Proofkit owns | Consumer owns | Output authority |
|
|
41
41
|
|---|---|---|---|---|---|
|
|
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 |
|
|
42
43
|
| Adoption and scaffolding | `init`, `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` | adoption intent, aggregate adoption contract envelope, checklist facts, target paths, owner routes, caller-extracted stale authority vocabulary facts, explicit pre-spec capability observations, pilot records, stack preset id, optional init preset id | dry-run route selection, 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, pilot shape admission | final files, final requirements, rollout policy, text extraction from files, code observation extraction, pilot truth | selected child output, plan, report, seed packet, or agent envelope |
|
|
43
44
|
| 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 |
|
|
44
|
-
| 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,
|
|
45
|
+
| 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 |
|
|
45
46
|
| 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 |
|
|
46
|
-
| Selective planning | `changed-path-set`, `requirement-impact-input-compose`, `impact`, `selective-gate-plan`, `selective-gate-evidence`, `selective-gate-obligation-decision-input`, `proof-obligation-algebra`, `obligation-decision` | changed paths, base/current requirement sources, base/current
|
|
47
|
+
| Selective planning | `changed-path-set`, `requirement-impact-input-compose`, `impact`, `selective-gate-plan`, `selective-gate-evidence`, `selective-gate-obligation-decision-input`, `proof-obligation-algebra`, `obligation-decision` | changed paths, base/current requirement sources, base/current declaration-only proof contracts with zero or more scenario bindings per requirement, generated-artifact policy, local environment policy, proof-like path policy, scan obligation ownership, planned receipts, obligation routes, obligation algebra records | fail-closed impact input composition, binding-aware fan-out, fail-closed planning, receipt comparison, obligation algebra admission, bounded agent packets | git diff truth, repository scanning, command execution, producer trust, final admission | composed impact input, plan, evidence report, obligation algebra report, or obligation input |
|
|
47
48
|
| Receipts and producers | `proof-receipt-admission`, `receipt-producer-admission`, `receipt-currentness-scope`, `receipt-trust-class`, `producer-policy-self-proof` | receipt sets, producer policy, scope/currentness facts, trust classes | receipt shape, producer/receipt compatibility, self-proof diagnostics | producer authentication, freshness policy, CI trust roots | receipt/provenance report |
|
|
48
49
|
| Release and deployment | `release-authority`, `external-consumer`, `registry-consumer-proof-input-compose`, `registry-consumer`, `deployment-evidence-admission`, `completion-criteria`, `branch-authority`, `readiness-closeout` | package facts, tarball/registry facts, explicit primitive registry/install/smoke facts, deployment evidence, criteria, branch facts | artifact/channel boundary checks, registry-consumer input composition, release diagnostics, falsifiable criteria shape | package publication, registry fetch, package-manager execution, deployment, rollback, approval | composed input, release/deployment/readiness report |
|
|
49
|
-
| Supply-chain and quality | `self-check`, release workflow, `npm run release:sbom`, `npm run self:coverage`, `npm run go:actionlint`, `npm run go:bench` | release artifacts, source workflows, specs, bindings, witness plans, explicit benchmark invocation | deterministic self-check report shape, SBOM candidate evidence, coverage metrics, workflow lint routing, benchmark entrypoints | public-source provenance, vulnerability triage, license approval, CI run admission, release approval | self-check report, SBOM, metrics report, CI signal, or benchmark output |
|
|
50
|
+
| Supply-chain and quality | `self-check`, release workflow, `npm run release:sbom`, `npm run self:coverage`, `npm run go:actionlint`, `npm run go:bench` | release artifacts, source workflows, specs, bindings, witness plans, command-oracle candidate inventory, independently authored counterfeit corpus, explicit benchmark invocation | deterministic self-check report shape, SBOM candidate evidence, exact-file materialized-snapshot package-scoped selected-test execution, production-owner counterfeit decisions, strict one-read and current-owner command-oracle diagnostic admission, execution-backed coverage metrics, workflow lint routing, benchmark entrypoints | assertion-branch execution, mutation adequacy, producer authentication, public-source provenance, vulnerability triage, license approval, CI run admission, release approval | self-check report, SBOM, command-oracle diagnostic, metrics report, CI signal, or benchmark output |
|
|
50
51
|
|
|
51
52
|
The `npm run release:sbom`, `npm run self:coverage`, `npm run go:actionlint`,
|
|
52
53
|
and `npm run go:bench` routes above are maintainer commands for a source
|
|
@@ -122,6 +123,7 @@ Semantic context routes are `requirement-context-compose`,
|
|
|
122
123
|
| State or goal | Next Proofkit route | Stop or escalation condition |
|
|
123
124
|
|---|---|---|
|
|
124
125
|
| The agent does not know where to start. | `init`, or `init --preset` with `fresh`, `code-baseline`, `code-audit`, `legacy`, or `change-set` | Treat output as dry-run route guidance only. Stop before scanning, writing files, or making requirements authoritative. |
|
|
126
|
+
| 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. |
|
|
125
127
|
| 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. |
|
|
126
128
|
| No admitted spec/profile exists and no capability observations exist. | `scaffold-project-structure`, `adoption-workflow-plan`, or `stack-preset` | Stop before writing files; the consumer owns materialization, overwrite policy, and final requirement text. |
|
|
127
129
|
| 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. |
|
package/docs/release-process.md
CHANGED
|
@@ -128,7 +128,16 @@ static analysis, workflow linting, vulnerability checks, npm package artifact
|
|
|
128
128
|
creation, package artifact verification, Python wheel artifact creation, Python
|
|
129
129
|
wheel verification, release SBOM, release manifest and checksum generation,
|
|
130
130
|
outside-consumer binary smoke proof, self-hosting receipt validation, and
|
|
131
|
-
coverage metrics generation.
|
|
131
|
+
coverage metrics generation. Coverage generation runs the exact owner-selected
|
|
132
|
+
Go tests through package-scoped argv vectors from an exact-file materialized
|
|
133
|
+
source snapshot, evaluates the independently authored counterfeit corpus
|
|
134
|
+
through production admission owners, and emits a command-oracle diagnostic
|
|
135
|
+
plus coverage metrics v2 only while the candidate, corpus, runtime, and source
|
|
136
|
+
identities remain current. Release closeout re-admits that diagnostic through
|
|
137
|
+
its sole strict owner, binds its digest to the same canonical byte read, and
|
|
138
|
+
revalidates current producer reachability. This local cooperative execution
|
|
139
|
+
does not prove assertion-branch execution, mutation adequacy, producer
|
|
140
|
+
authentication, or provider admission.
|
|
132
141
|
|
|
133
142
|
The dry-run package identity proves candidate tarball shape only. It does not
|
|
134
143
|
prove the bytes served by the registry after publish.
|
|
@@ -0,0 +1,86 @@
|
|
|
1
|
+
# Proofkit Agent Workflow Spec
|
|
2
|
+
|
|
3
|
+
This spec owns Proofkit's generic support for planning one engineering-change
|
|
4
|
+
snapshot and for teaching a consuming repository to define executable native
|
|
5
|
+
evidence. It does not own consumer product meaning, repository policy,
|
|
6
|
+
witnesses, merge, release, rollout, or production-readiness decisions.
|
|
7
|
+
|
|
8
|
+
The public capability is deliberately small:
|
|
9
|
+
|
|
10
|
+
1. `change-workflow-plan` admits explicit JSON and projects one next action for
|
|
11
|
+
the optional built-in profile `proofkit.reviewed-change.v1`, whose ordered
|
|
12
|
+
stages are `architecture`, `design`, `implementation_plan`,
|
|
13
|
+
`implementation`, `verification`, `pull_request`, and `closeout`.
|
|
14
|
+
2. `native-evidence-guidance` exposes one versioned 22-slot template for
|
|
15
|
+
repository-owned falsifiers, oracles, bounds, lifecycle, and non-claims.
|
|
16
|
+
Every slot names one closed applicability class: `always`,
|
|
17
|
+
`declared_input_channels`, `environment_or_network_access`,
|
|
18
|
+
`external_process`, or `mutable_artifacts`. The latter four apply only when
|
|
19
|
+
the consuming witness declares the named mechanism.
|
|
20
|
+
3. Existing descriptors, dispatch, command families, root-shape CLI contracts,
|
|
21
|
+
agent envelopes, and package gates provide public-surface closure.
|
|
22
|
+
|
|
23
|
+
Neither command scans a repository. Both command cores are stateless pure
|
|
24
|
+
projections with no filesystem, Git, process, environment, clock, random,
|
|
25
|
+
network, container, or provider dependency. No setup facade, agent-route extension,
|
|
26
|
+
external prompt resource, persisted experiment state, or second source codec is
|
|
27
|
+
introduced.
|
|
28
|
+
|
|
29
|
+
## Requirements
|
|
30
|
+
|
|
31
|
+
- `REQ-PROOFKIT-WORKFLOW-001`: one-time typed admission, pure deterministic
|
|
32
|
+
projection, and derived-output authority boundary.
|
|
33
|
+
- `REQ-PROOFKIT-WORKFLOW-002`: named optional built-in profile, exact
|
|
34
|
+
seven-stage order, prefix/checkpoint biconditional, and a disjoint terminal
|
|
35
|
+
output.
|
|
36
|
+
- `REQ-PROOFKIT-WORKFLOW-003`: 28 active state rows, one terminal row,
|
|
37
|
+
authority- and witness-gated executable envelope transitions, closed
|
|
38
|
+
blockers and clarifications when those preconditions are absent, exact
|
|
39
|
+
accepted-subject carry into each nonterminal successor, and an explicit
|
|
40
|
+
terminal stop packet.
|
|
41
|
+
- `REQ-PROOFKIT-WORKFLOW-004`: typed subject/finding resolution, incoming
|
|
42
|
+
subject identity on every noninitial stage, and internally consistent
|
|
43
|
+
caller-declared digests.
|
|
44
|
+
- `REQ-PROOFKIT-WORKFLOW-005`: shared 256-byte stable-ID admission before work,
|
|
45
|
+
global candidate-dependency resolution, one explicit nullable
|
|
46
|
+
governing-authority reference, role-preserving bounded least dependency
|
|
47
|
+
closure over explicit seeds, exact omission accounting, and output-byte
|
|
48
|
+
limits.
|
|
49
|
+
- `REQ-PROOFKIT-WORKFLOW-006`: only existing launcher and presentation
|
|
50
|
+
capabilities outside explicit input, with no ambient repository authority,
|
|
51
|
+
setup facade, hidden policy, or agent-route extension.
|
|
52
|
+
- `REQ-PROOFKIT-WORKFLOW-007`: pure deterministic repository-neutral
|
|
53
|
+
native-evidence guidance from one versioned typed table with five closed
|
|
54
|
+
applicability classes, explicit absent-channel decisions, and finite
|
|
55
|
+
nondisclosure corpora.
|
|
56
|
+
- `REQ-PROOFKIT-WORKFLOW-008`: display-safe caller admission, no-leak denial,
|
|
57
|
+
exact retained-or-missing witness projection, bounded actionable and
|
|
58
|
+
terminal text with required coordinates and exact rendered successor delta,
|
|
59
|
+
and no styling of caller values.
|
|
60
|
+
- `REQ-PROOFKIT-WORKFLOW-009`: explicit text/color selection and confinement of
|
|
61
|
+
ANSI to eligible terminal stdout.
|
|
62
|
+
- `REQ-PROOFKIT-WORKFLOW-010`: one production catalog owner for stage,
|
|
63
|
+
checkpoint-schema, action-prerequisite, and successor semantics,
|
|
64
|
+
independently authored semantic and literal-duplication oracles, and an
|
|
65
|
+
AST-checked two-command carrier topology with no runtime experiment or
|
|
66
|
+
external template residue.
|
|
67
|
+
- `REQ-PROOFKIT-WORKFLOW-011`: a finite factorized CLI relation closed across
|
|
68
|
+
descriptor/dispatcher/family/help/root-contract/witness/generated/package
|
|
69
|
+
surfaces, with npm-only non-runtime specification docs and cross-channel
|
|
70
|
+
runtime behavior proof.
|
|
71
|
+
|
|
72
|
+
Shared stable-JSON/diagnostic hardening is owned by the supply-chain-quality
|
|
73
|
+
spec. Typed local-reference closure is owned by the existing agent-envelope
|
|
74
|
+
requirement. This workflow spec consumes those owners without duplicating them.
|
|
75
|
+
|
|
76
|
+
## Non-Claims
|
|
77
|
+
|
|
78
|
+
- Generated prompts are not authenticated and need not be obeyed or adequate.
|
|
79
|
+
- The built-in reviewed-change profile is optional guidance, not universal
|
|
80
|
+
consuming-repository process policy or a custom workflow-graph engine.
|
|
81
|
+
- Static prompt bytes do not prove provider token use or model reasoning.
|
|
82
|
+
- Least dependency closure does not prove context truth, freshness, semantic
|
|
83
|
+
sufficiency, or global minimality.
|
|
84
|
+
- A finite pilot does not prove universal repository fit.
|
|
85
|
+
- This spec does not select a persisted requirement-source codec.
|
|
86
|
+
- This spec does not approve merge, release, rollout, or production readiness.
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
{
|
|
2
|
+
"schemaVersion": 1,
|
|
3
|
+
"sourceId": "proofkit.agent-workflow.requirements",
|
|
4
|
+
"specPackagePath": "docs/specs/proofkit-agent-workflow",
|
|
5
|
+
"overviewPath": "docs/specs/proofkit-agent-workflow/overview.md",
|
|
6
|
+
"requirementsPath": "docs/specs/proofkit-agent-workflow/requirements.v1.json",
|
|
7
|
+
"requirements": [
|
|
8
|
+
{
|
|
9
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-001",
|
|
10
|
+
"ownerId": "proofkit.agent-workflow",
|
|
11
|
+
"invariant": "Change-workflow planning admits one explicit caller snapshot into an immutable typed projection, decides only from that projection, and deterministically returns one derived non-authoritative plan without executing or supervising agents, witnesses, repository operations, providers, CI, merge, release, rollout, or deployment; no prompt, report, envelope, view, test, or generated record becomes a second semantic owner.",
|
|
12
|
+
"claimLevel": "blocking",
|
|
13
|
+
"riskClass": "high",
|
|
14
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
15
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-001"],
|
|
16
|
+
"nonClaims": ["The planner does not authenticate caller assertions or prove that a planned action was executed, correct, reviewed, or completed."],
|
|
17
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
18
|
+
"deferral": null,
|
|
19
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
20
|
+
},
|
|
21
|
+
{
|
|
22
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-002",
|
|
23
|
+
"ownerId": "proofkit.agent-workflow",
|
|
24
|
+
"invariant": "The optional built-in workflow profile proofkit.reviewed-change.v1 owns exactly the ordered stages architecture, design, implementation_plan, implementation, verification, pull_request, and closeout; every non-envelope plan names that profile, completedStageIds is exactly one prefix of that order, every incomplete prefix has a non-null checkpoint and an active stage equal to the first stage outside the prefix, and the complete prefix has a null checkpoint if and only if the output is the disjoint workflow_complete variant with no active-stage, action, checkpoint-state, or prompt field.",
|
|
25
|
+
"claimLevel": "blocking",
|
|
26
|
+
"riskClass": "high",
|
|
27
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
28
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-002"],
|
|
29
|
+
"nonClaims": ["Stage ordering does not prove the semantic adequacy of any architecture, design, plan, implementation, verification, pull request, or closeout artifact."],
|
|
30
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
31
|
+
"deferral": null,
|
|
32
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-003",
|
|
36
|
+
"ownerId": "proofkit.agent-workflow",
|
|
37
|
+
"invariant": "The active checkpoint is exactly one closed discriminated variant not_started, ready_for_review, review_findings, or review_passed; one independently enumerable total non-overlapping relation maps the 28 active stage/checkpoint rows to exactly one stage-specific first action, review, repair, or accept_stage, the twenty-ninth complete-prefix row maps only to workflow_complete, an active agent envelope emits its single next_action only when a governing authority ref is retained and the verify action additionally retains at least one caller-owned witness ref, otherwise it emits no executable action plus closed blockers and clarification questions, every accept_stage plan and emitted envelope action declares exactly one equal successorStateDelta containing only completedStageIds and checkpoint, a nonterminal delta carries the accepted subjectRefId and subjectDigest into the next stage's not_started checkpoint while the terminal delta has a null checkpoint, applying that delta by replacing only those two input fields while preserving schemaVersion, governingAuthorityRefId, contextRefs, and requiredContextRefIds produces exactly one legal successor snapshot, the terminal envelope names workflow_complete and an explicit stop action without a successor delta, and every surplus, missing, or otherwise illegal field combination fails closed.",
|
|
38
|
+
"claimLevel": "blocking",
|
|
39
|
+
"riskClass": "high",
|
|
40
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
41
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-003"],
|
|
42
|
+
"nonClaims": ["The snapshot relation does not own pending work, elapsed time, predecessor history, waiver, abort, reopen, or external task-state transitions."],
|
|
43
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
44
|
+
"deferral": null,
|
|
45
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-004",
|
|
49
|
+
"ownerId": "proofkit.agent-workflow",
|
|
50
|
+
"invariant": "Every noninitial not_started, ready_for_review, review_findings, and review_passed checkpoint binds the caller-declared stage artifact through one subjectRefId that resolves exactly one artifact context reference and one equal lowercase SHA-256 subject digest; the initial architecture/not_started checkpoint alone has no incoming subject, assessed variants require an equal assessmentSubjectDigest, review_findings resolves each findingRef exactly once to a finding context reference, and a malformed, absent, surplus, unresolved, wrong-kind, or mismatched identity fails before an action is projected.",
|
|
51
|
+
"claimLevel": "blocking",
|
|
52
|
+
"riskClass": "high",
|
|
53
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
54
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-004"],
|
|
55
|
+
"nonClaims": ["Digest equality proves only internal equality of caller-declared identity fields and does not bind actual bytes, authenticate the reviewer, establish currentness or trust, or prove assessment quality."],
|
|
56
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
57
|
+
"deferral": null,
|
|
58
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
59
|
+
},
|
|
60
|
+
{
|
|
61
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-005",
|
|
62
|
+
"ownerId": "proofkit.agent-workflow",
|
|
63
|
+
"invariant": "The planner admits 0 to 48 strictly refId-sorted unique candidate context references; every candidate ID, nullable governingAuthorityRefId, required seed ID, dependency ID, subject ID, and finding ID is first admitted by the shared stable RuleID owner with a 256 UTF-8 byte maximum before sorting, indexing, closure, or projection; every dependency of every candidate resolves exactly once before seed selection or closure, including dependencies of candidates that the final closure omits; the governingAuthorityRefId when present resolves exactly one authority reference; it admits 0 to 12 required seed IDs, at most 12 finding references, at most 8 dependencies per candidate, at most 384 UTF-8 bytes per artifact path, and at most 18432 aggregate candidate-path bytes; it returns the unique least dependency-closed subset containing the governing authority, required, subject, and finding seeds, fails closed above 24 retained references or 9216 retained-path bytes, derives the exact sorted candidate-minus-retained omission set, summarizes that set once in an envelope, classifies only the selected governing authority as semantic_owner while other authority, artifact, finding, and witness references remain owner_surface, evidence, review_finding, and proof_binding respectively, and fails JSON, envelope, and text outputs above 128 KiB, 128 KiB, and 8192 bytes before partial output.",
|
|
64
|
+
"claimLevel": "blocking",
|
|
65
|
+
"riskClass": "high",
|
|
66
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
67
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-005"],
|
|
68
|
+
"nonClaims": ["Structural least closure relative to caller-declared seeds and edges does not prove context truth, freshness, semantic sufficiency, global minimality, or provider token usage."],
|
|
69
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
70
|
+
"deferral": null,
|
|
71
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
72
|
+
},
|
|
73
|
+
{
|
|
74
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-006",
|
|
75
|
+
"ownerId": "proofkit.agent-workflow",
|
|
76
|
+
"invariant": "After existing bounded CLI transport, immutable installed-launcher profile admission, and immutable presentation-capability capture, the semantic planner accepts no repository root, caller prompt, caller-selected bound, command, environment, receipt body, or external authority field and has no filesystem, Git, process, environment, clock, random, network, container, or provider dependency; the CLI reads only the explicit input transport, the existing launcher-profile and optional Python-executable transport capabilities, and startup TTY/NO_COLOR presence needed by requested presentation, and the capability adds no setup facade, ambient scan, hidden repository policy, consumer-specific route, or agent-route extension.",
|
|
77
|
+
"claimLevel": "blocking",
|
|
78
|
+
"riskClass": "high",
|
|
79
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
80
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-006"],
|
|
81
|
+
"nonClaims": ["Explicit caller input does not establish repository identity, policy, source meaning, authorization to mutate, or the truth of observations made outside Proofkit."],
|
|
82
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
83
|
+
"deferral": null,
|
|
84
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
85
|
+
},
|
|
86
|
+
{
|
|
87
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-007",
|
|
88
|
+
"ownerId": "proofkit.agent-workflow",
|
|
89
|
+
"invariant": "Native-evidence guidance has exactly one versioned repository-neutral semantic owner that emits exactly the declared semantic owner, subject/currentness, execution root/source snapshot, exact argv, stdin/input bytes, toolchain/platform/locale/timezone/dependencies, positive control, independent near-miss falsifier, executable oracle, input/work bounds, environment/network policy, CPU/memory/disk/file-descriptor/PID bounds, output-channel bounds, timeout/process-group/detached-child policy, exit mapping, nondisclosure, cleanup/crash inventory, receipt identity, currentness/trust, escalation, retirement, and non-claim slots; every slot carries exactly one closed applicability class from always, declared_input_channels, environment_or_network_access, external_process, and mutable_artifacts so mechanism-specific decisions are conditional on the corresponding declared consumer mechanism; always-applicable output and receipt slots require each present channel to be bounded and identity-bound while each absent channel is explicitly not_applicable, nondisclosure selects one finite exact corpus and one finite explicitly derived fragment list rather than an unbounded fragment claim; every admitted CLI delivery is deterministically bound to that owner, and JSON and text are derived without input, mutable shared state, filesystem, Git, process, environment, clock, random, network, container, provider, or other ambient dependency.",
|
|
90
|
+
"claimLevel": "blocking",
|
|
91
|
+
"riskClass": "high",
|
|
92
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
93
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-007"],
|
|
94
|
+
"nonClaims": ["The template does not generate, execute, approve, authenticate, or prove adequacy of a consuming repository's script, witness, oracle, receipt, policy, or cleanup implementation."],
|
|
95
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
96
|
+
"deferral": null,
|
|
97
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
98
|
+
},
|
|
99
|
+
{
|
|
100
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-008",
|
|
101
|
+
"ownerId": "proofkit.agent-workflow",
|
|
102
|
+
"invariant": "Every workflow caller-visible value is admitted through its typed owner; display-safe values reject malformed UTF-8, secret-shaped content, ASCII controls, DEL, Unicode Cc, Cf, Zl, and Zp without echo; every active prompt packet projects observed fact, uncertainty, the resolved governingAuthorityRefId or a closed missing-owner escalation target, exact admitted coordinates, candidate action, one closed proof-availability state distinguishing a missing consumer witness from exact retained witness refs, non-claim, stop condition, and expected successor from command-owned tables, and when governingAuthorityRefId is null the packet forbids repository mutation until the caller supplies it; planner text contains the state, active stage and action when present, checkpoint, owner or escalation, stop condition, expected successor, omission count, and one non-claim within 24 lines and 8192 bytes, and an accept_stage projection additionally renders the exact successor completed-stage set, checkpoint state, subject ref, and subject digest while the terminal variant renders explicit consumer owner, stop condition, and no successor; guidance text contains every slot ID, applicability class, required decision, and completion criterion within 48 lines and 16384 bytes; caller-owned values are never terminal-styled.",
|
|
103
|
+
"claimLevel": "blocking",
|
|
104
|
+
"riskClass": "high",
|
|
105
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
106
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-008"],
|
|
107
|
+
"nonClaims": ["Bounded nondisclosure admission does not prove absence of every possible sensitive value or every terminal interpretation."],
|
|
108
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
109
|
+
"deferral": null,
|
|
110
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
111
|
+
},
|
|
112
|
+
{
|
|
113
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-009",
|
|
114
|
+
"ownerId": "proofkit.agent-workflow",
|
|
115
|
+
"invariant": "Workflow commands default to JSON and color never; text and color auto require explicit flags, auto is eligible only for terminal stdout when immutable startup capabilities report a TTY and no NO_COLOR setting, admitted style tokens strip exactly to canonical plain text, and JSON, stderr, redirected stdout, files, prompts, envelopes, reports, receipts, and generated records remain ANSI-free.",
|
|
116
|
+
"claimLevel": "blocking",
|
|
117
|
+
"riskClass": "high",
|
|
118
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
119
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-009"],
|
|
120
|
+
"nonClaims": ["Terminal styling is presentation only and does not claim identical rendering across terminal emulators."],
|
|
121
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
122
|
+
"deferral": null,
|
|
123
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
124
|
+
},
|
|
125
|
+
{
|
|
126
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-010",
|
|
127
|
+
"ownerId": "proofkit.agent-workflow",
|
|
128
|
+
"invariant": "The production capability has exactly one workflow catalog declaration owning stage order, incoming-subject policy, checkpoint field schemas, checkpoint-action relations, action prerequisites, successor-emission policy, and action profiles, and exactly one guidance-table declaration owning evidence slots; descriptor closure exposes exactly one required-input planner carrier and one no-input guidance carrier in one coherent command family, a source-topology oracle rejects duplicate or retired production owners, duplicated catalog vocabulary, and runtime guidance resources, and independent literal state, action-profile, successor, and slot oracles falsify semantic drift without becoming production owners; the capability adds no persisted experiment matrix, candidate receipt, source-codec variant, external prompt duplicate, repository adapter, setup state, or generic agent executor.",
|
|
129
|
+
"claimLevel": "blocking",
|
|
130
|
+
"riskClass": "medium",
|
|
131
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
132
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-010"],
|
|
133
|
+
"nonClaims": ["Structural minimality does not prove universal usability, open-world optimality, lower provider token use, or lower cognitive cost for every user and repository."],
|
|
134
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
135
|
+
"deferral": null,
|
|
136
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
137
|
+
},
|
|
138
|
+
{
|
|
139
|
+
"requirementId": "REQ-PROOFKIT-WORKFLOW-011",
|
|
140
|
+
"ownerId": "proofkit.agent-workflow",
|
|
141
|
+
"invariant": "Every admitted workflow command, option, and runtime guidance resource participates in one finite factorized relation over carrier identity, global-option position/cardinality/value, command-option cardinality/value, help exclusivity, positional-operand count, input transport, output mode, envelope, and presentation capability; that relation is closed across descriptor, dedicated dispatcher, command family, help, contract-map route, root-shape CLI input/output summary, positive whole-process witness, independent negative falsifier, generated contract projection, breaking version-edge wire observation, and supported installed npm and wheel smokes for each admitted CLI carrier that exercise required input, pre-read input-pointer admission, JSON layout, agent envelope, text, color denial, exclusive help, surplus positional operands, and no-input guidance classes as applicable; the npm package admits the durable workflow specification as channel-specific non-runtime documentation through its existing docs projection, every runtime-required resource remains closed in each package channel, the selected topology adds no external runtime or template resource, and omission, surplus, cross-wire, or stale projection fails the repository gate.",
|
|
142
|
+
"claimLevel": "blocking",
|
|
143
|
+
"riskClass": "high",
|
|
144
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
145
|
+
"nonClaimRefs": ["NC-PROOFKIT-WORKFLOW-011"],
|
|
146
|
+
"nonClaims": ["Public-surface closure does not claim wheel documentation parity and does not prove registry publication, provider ingestion, compatibility on untested platforms, native witness truth, merge approval, rollout, or production readiness."],
|
|
147
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
148
|
+
"deferral": null,
|
|
149
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.agent-workflow", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
150
|
+
}
|
|
151
|
+
],
|
|
152
|
+
"nonClaims": [
|
|
153
|
+
"Generated plans, prompts, templates, envelopes, views, reports, and patches remain derived guidance and are not semantic, proof, merge, release, rollout, or readiness authority.",
|
|
154
|
+
"Proofkit does not own consuming-repository requirement meaning, engineering policy, witnesses, merge decisions, release decisions, rollout decisions, or production-readiness decisions.",
|
|
155
|
+
"This source neither selects nor authorizes a persisted requirement-source codec or a migration away from the current requirement source."
|
|
156
|
+
]
|
|
157
|
+
}
|
|
@@ -16,14 +16,13 @@ execution receipts, and merge policy.
|
|
|
16
16
|
or scanning overview prose as authority; one shipped, marker-bounded example
|
|
17
17
|
is parsed as bounded expansion-free literal shell words and executed through
|
|
18
18
|
the installed current product as a first valid input.
|
|
19
|
-
- `REQ-PROOFKIT-SPEC-002`:
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
without executing witnesses or deciding proof freshness.
|
|
19
|
+
- `REQ-PROOFKIT-SPEC-002`: compact proof route declarations preserve the full
|
|
20
|
+
requirement/surface/scenario binding identity and role-qualified witness-route
|
|
21
|
+
identity, preserve each route's JSON-safe non-negative resolution order, admit
|
|
22
|
+
declaration-only v2 contracts plus source-set v2 and fragment v3 inputs, retain
|
|
23
|
+
distinct positive and falsification roles even for one shared selector, and
|
|
24
|
+
reject legacy proof-state, synthetic evidence counts, collapsed roles, and
|
|
25
|
+
identity-loss projections without claiming execution or assurance.
|
|
27
26
|
- `REQ-PROOFKIT-SPEC-003`: witness planning accepts caller-owned structured
|
|
28
27
|
command metadata, scheduler constraints, environment classes, and
|
|
29
28
|
binding-derived command projections only through admitted witness vocabulary
|
|
@@ -36,9 +35,13 @@ execution receipts, and merge policy.
|
|
|
36
35
|
candidates explicit, keep merge approval consumer-owned, and fail closed for
|
|
37
36
|
unknown or unmatched proof inputs.
|
|
38
37
|
- `REQ-PROOFKIT-SPEC-005`: rendered proof views and agent envelopes remain
|
|
39
|
-
bounded, reference-closed derived presentations over structured source
|
|
40
|
-
|
|
41
|
-
|
|
38
|
+
bounded, reference-closed derived presentations over structured source and
|
|
39
|
+
never become canonical proof or requirement authority; agent envelopes also
|
|
40
|
+
admit lossless safe local identities before display sanitization, omit unsafe
|
|
41
|
+
identities without turning a redaction label into a lookup key, count each
|
|
42
|
+
semantic omission once, and use unique, pairwise-disjoint local target-ID
|
|
43
|
+
domains so each retained untyped local reference resolves to at most one
|
|
44
|
+
target in their union.
|
|
42
45
|
- `REQ-PROOFKIT-SPEC-006`: test evidence inventory, explicit test-discovery
|
|
43
46
|
draft projections, proof-binding-derived inventory projections, normalized
|
|
44
47
|
inventory projections, coverage-view input composition, and requirement
|
|
@@ -79,11 +82,13 @@ execution receipts, and merge policy.
|
|
|
79
82
|
serving with one exact supported-view vocabulary without accepting
|
|
80
83
|
caller-owned raw HTML or making rendered output authoritative.
|
|
81
84
|
- `REQ-PROOFKIT-SPEC-010`: requirement impact input composition converts
|
|
82
|
-
caller-owned base/current requirement sources,
|
|
83
|
-
|
|
84
|
-
environment policy, and proof-like
|
|
85
|
-
|
|
86
|
-
|
|
85
|
+
caller-owned base/current requirement sources, compact proof contracts with
|
|
86
|
+
one or more current bindings per active blocking requirement, changed-path
|
|
87
|
+
facts, generated-artifact policy, local environment policy, and proof-like
|
|
88
|
+
path policy into a direct `impact` input, treating every referenced surface
|
|
89
|
+
semantic change as a change to every referencing binding under the
|
|
90
|
+
proof-binding source-path policy, without scanning repositories, executing
|
|
91
|
+
witnesses, or becoming a second impact evaluator.
|
|
87
92
|
- `REQ-PROOFKIT-SPEC-011`: adoption contract envelope admission validates a
|
|
88
93
|
complete caller-owned aggregate adoption envelope, selects one child route
|
|
89
94
|
through orthogonal CLI flags, rejects repeated single-value mode or pilot
|
|
@@ -141,6 +146,14 @@ execution receipts, and merge policy.
|
|
|
141
146
|
evidence planes, consumes the normalized v1/v2 context boundary, and accepts
|
|
142
147
|
code topology only as explicit caller-owned input with source-digest,
|
|
143
148
|
parent-edge, abstraction-order, and pre-materialization budget closure.
|
|
149
|
+
- `REQ-PROOFKIT-SPEC-024`: a private representation-neutral requirement-source
|
|
150
|
+
v2 model separates immutable atomic, authoring-layout, and typed-reference
|
|
151
|
+
projections, closes every metadata owner, group-member relation, and typed
|
|
152
|
+
reference under independently observed input, instantiated-scenario, and
|
|
153
|
+
expanded-output bounds with fixed budget-error precedence, and proves exact
|
|
154
|
+
package, field, representation, variant, and positive/negative relation
|
|
155
|
+
coverage without attributing correlated edits to independent field
|
|
156
|
+
causality, selecting a codec, or changing a public source boundary.
|
|
144
157
|
|
|
145
158
|
## Non-Claims
|
|
146
159
|
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
{
|
|
36
36
|
"requirementId": "REQ-PROOFKIT-SPEC-002",
|
|
37
37
|
"ownerId": "proofkit.spec-proof-core",
|
|
38
|
-
"invariant": "Requirement proof binding
|
|
38
|
+
"invariant": "Requirement proof route declaration admission preserves each compact binding identity as requirementId, surfaceId, and scenarioId; preserves each witness route as bindingRecordId, role, selector, a JSON-safe non-negative resolutionOrderIndex, and witnessRouteId; admits exactly one positive and one falsification role even when both roles use the same selector; requires declaration-only v2 compact discriminators and admitted source-set v2 or fragment-v3 identities; rejects legacy proof-state, synthetic checked or finding counts, collapsed roles, and identity-loss projections; and derives only caller-owned declaration or lookup facts without executing witnesses or deciding selector resolution, oracle quality, mutation adequacy, proof freshness, trust, assurance, merge, rollout, or production readiness.",
|
|
39
39
|
"claimLevel": "blocking",
|
|
40
40
|
"riskClass": "high",
|
|
41
41
|
"proofBindingRefs": [
|
|
@@ -45,7 +45,7 @@
|
|
|
45
45
|
"NC-PROOFKIT-SPEC-002"
|
|
46
46
|
],
|
|
47
47
|
"nonClaims": [
|
|
48
|
-
"This requirement does not claim native witness pass evidence, proof freshness, receipt authenticity,
|
|
48
|
+
"This requirement does not claim selector existence or resolution, oracle quality, native witness execution or pass evidence, mutation adequacy, finding completeness or absence, proof freshness, receipt authenticity, trust, assurance, merge approval, rollout approval, or production readiness."
|
|
49
49
|
],
|
|
50
50
|
"lifecycle": {
|
|
51
51
|
"state": "active",
|
|
@@ -116,9 +116,9 @@
|
|
|
116
116
|
{
|
|
117
117
|
"requirementId": "REQ-PROOFKIT-SPEC-005",
|
|
118
118
|
"ownerId": "proofkit.spec-proof-core",
|
|
119
|
-
"invariant": "Rendered proof views and agent envelopes remain bounded, reference-closed derived presentations over structured source, count each semantic omission once, and
|
|
119
|
+
"invariant": "Rendered proof views and agent envelopes remain bounded, reference-closed derived presentations over structured source and never become canonical proof or requirement authority; agent envelopes additionally admit local target IDs and untyped local references as lossless safe identities before display sanitization, omit unsafe identities without using a replacement label as a lookup key, count each semantic omission once, and require target IDs to be unique within each local domain and pairwise disjoint across local domains so every retained untyped local reference resolves to at most one target in their union.",
|
|
120
120
|
"claimLevel": "blocking",
|
|
121
|
-
"riskClass": "
|
|
121
|
+
"riskClass": "high",
|
|
122
122
|
"proofBindingRefs": [
|
|
123
123
|
"proofkit/requirement-bindings.json"
|
|
124
124
|
],
|
|
@@ -251,7 +251,7 @@
|
|
|
251
251
|
{
|
|
252
252
|
"requirementId": "REQ-PROOFKIT-SPEC-010",
|
|
253
253
|
"ownerId": "proofkit.spec-proof-core",
|
|
254
|
-
"invariant": "Requirement impact input composition converts caller-owned base and current requirement sources,
|
|
254
|
+
"invariant": "Requirement impact input composition converts caller-owned base and current requirement sources, compact proof contracts with one or more current bindings per active blocking requirement, changed-path facts, generated-artifact policy, local environment policy, and proof-like path policy into a direct impact command input; treats every referenced surface semantic change as a change to every referencing binding under the proof-binding source-path policy; preserves downstream impact semantics; and does not scan repositories, execute witnesses, decide freshness, or become a second impact evaluator.",
|
|
255
255
|
"claimLevel": "blocking",
|
|
256
256
|
"riskClass": "high",
|
|
257
257
|
"proofBindingRefs": [
|
|
@@ -555,6 +555,19 @@
|
|
|
555
555
|
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
556
556
|
"deferral": null,
|
|
557
557
|
"updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
558
|
+
},
|
|
559
|
+
{
|
|
560
|
+
"requirementId": "REQ-PROOFKIT-SPEC-024",
|
|
561
|
+
"ownerId": "proofkit.spec-proof-core",
|
|
562
|
+
"invariant": "A private representation-neutral requirement-source v2 model admits one bounded source into immutable atomic, authoring-layout, and typed-reference projections; it preserves atomic requirement identity while expanding grouped statement stems and premises, preserves group-to-member relations under composite identity, assigns every effective metadata field to exactly one resolving profile or member owner, admits lifecycle, deferral, update-policy, scenario, vocabulary, non-claim, and derivation semantics through closed variants and references, applies architecture-independent input, instantiated-scenario, and expanded-materialization cardinality and text budgets in a fixed precedence before per-item semantic work, rejects both lexical and single-pass parameter-instantiated observation contradictions, normalizes admitted set-like values deterministically, emits nondisclosing diagnostics deterministically for each exact input, and preserves ordered action sequences. An independently authored exact typed-field and closed-variant manifest plus an identity-aware admitted semantic mutant corpus proves individual field projection, both metadata-owner branches, or an explicitly named referential relation with negative near-miss controls and without attributing correlated edits to independent field causality; independent structural observers prove exact package exports and direct imports, representation neutrality, exact input, instantiated-scenario, and expanded-output costs, and exact versus limit-minus-one budget behavior.",
|
|
563
|
+
"claimLevel": "blocking",
|
|
564
|
+
"riskClass": "high",
|
|
565
|
+
"proofBindingRefs": ["proofkit/requirement-bindings.json"],
|
|
566
|
+
"nonClaimRefs": ["NC-PROOFKIT-SPEC-024"],
|
|
567
|
+
"nonClaims": ["This private single-source model does not select or expose a source codec, parse or serialize a persisted source, retain a normalized mirror, establish cross-source requirement identity, authenticate derivation objects, digests, selectors, or freshness, authenticate a caller-declared sourceKind or prove its author's authority or trust class, cut over any current requirement consumer, prove requirement meaning or implementation correctness, execute native witnesses, approve merge or release, or establish rollout or production readiness."],
|
|
568
|
+
"lifecycle": {"state": "active", "replacementRequirementIds": [], "evidenceRefs": []},
|
|
569
|
+
"deferral": null,
|
|
570
|
+
"updatePolicy": {"reviewOwnerId": "proofkit.spec-proof-core", "requiresImpactDeclaration": true, "requiresProofBindingReview": true}
|
|
558
571
|
}
|
|
559
572
|
],
|
|
560
573
|
"nonClaims": [
|
|
@@ -58,15 +58,20 @@ vulnerability absence, or consumer rollout safety by itself.
|
|
|
58
58
|
- `REQ-PROOFKIT-QUALITY-009`: performance-sensitive parser and serializer
|
|
59
59
|
paths expose benchmark entrypoints without making wall-clock budgets a
|
|
60
60
|
required PR gate before stable baselines exist.
|
|
61
|
-
- `REQ-PROOFKIT-QUALITY-010`: coverage metrics
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
61
|
+
- `REQ-PROOFKIT-QUALITY-010`: coverage metrics keep static proof-route
|
|
62
|
+
candidates separate from an execution-backed command-oracle ledger. The
|
|
63
|
+
ledger runs exact selected Go tests through package-scoped argv vectors from
|
|
64
|
+
one exact-file materialized source snapshot, joins reserved lifecycle
|
|
65
|
+
attributes to every candidate identity, terminates bounded subprocesses on
|
|
66
|
+
cancellation or output overflow, confines atomic artifact publication and
|
|
67
|
+
invalidation to non-symlink repository paths, and fails closed on incomplete
|
|
68
|
+
command coverage or event, source, selection, producer-reachability, and
|
|
69
|
+
identity drift. A versioned counterfeit corpus owns checked-in expected
|
|
70
|
+
decisions for every required policy axis, evidence class, record coordinate,
|
|
71
|
+
and substitution axis; its mutations execute the production admission and
|
|
72
|
+
lifecycle owners rather than a generated expectation copy. Passing selected
|
|
73
|
+
tests does not prove assertion-branch execution, mutation adequacy, or
|
|
74
|
+
exhaustive command semantics.
|
|
70
75
|
- `REQ-PROOFKIT-QUALITY-011`: CI separates the OS-independent full
|
|
71
76
|
source/package gate from macOS platform smoke, executes the complete Go
|
|
72
77
|
package set through its owner command, uses explicit hosted runner labels
|
|
@@ -102,12 +107,11 @@ vulnerability absence, or consumer rollout safety by itself.
|
|
|
102
107
|
fields after validation.
|
|
103
108
|
- `REQ-PROOFKIT-QUALITY-015`: the package gate includes an admitted release
|
|
104
109
|
closeout completion-criteria report so unit tests alone cannot satisfy
|
|
105
|
-
release closeout
|
|
106
|
-
producer relations plus the complete command inventory,
|
|
107
|
-
coverage
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
closeout.
|
|
110
|
+
release closeout. Coverage re-admission rejects candidate-only v1, requires
|
|
111
|
+
overflow-safe exact producer relations plus the complete command inventory,
|
|
112
|
+
and binds coverage v2 to the current command-oracle diagnostic through the
|
|
113
|
+
ledger owner's one-read canonical admission, current-owner revalidation, and
|
|
114
|
+
record, candidate-set, corpus, revision, and source-snapshot digests.
|
|
111
115
|
- `REQ-PROOFKIT-QUALITY-016`: release platform targets use one private owner
|
|
112
116
|
that projects platform suffixes, Go build targets, npm OS/CPU metadata,
|
|
113
117
|
package tar entries, Python wheel tags, PyPI candidate completeness,
|
|
@@ -156,10 +160,16 @@ vulnerability absence, or consumer rollout safety by itself.
|
|
|
156
160
|
failed attempts retain attempt-scoped action, DOM, network, and source traces
|
|
157
161
|
without continuous screenshot capture plus a bounded best-effort failure
|
|
158
162
|
screenshot, without creating passed proof.
|
|
159
|
-
- `REQ-PROOFKIT-QUALITY-023`:
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
+
- `REQ-PROOFKIT-QUALITY-023`: npm platform binaries and Python wheels
|
|
164
|
+
independently bind to the same release binary for every target; a separate
|
|
165
|
+
bounded decoder also compares the final tar and wheel members directly,
|
|
166
|
+
without a mutable intermediate; package-set wheel and embedded-binary digest
|
|
167
|
+
claims, including npm SHA-1/SRI, must equal bytes decoded from one immutable
|
|
168
|
+
snapshot and release closeout recomputes them through repository-confined,
|
|
169
|
+
bounded, identity-checked non-symlink handles; wheels bind advertised platform
|
|
170
|
+
compatibility to decoded executable bytes, reject version, identity,
|
|
171
|
+
presence, and digest drift, and carry Core Metadata 2.4 plus an exact,
|
|
172
|
+
RECORD-closed repository license payload.
|
|
163
173
|
- `REQ-PROOFKIT-QUALITY-024`: a closed version-bound machine record binds the
|
|
164
174
|
exact previous/current SemVer pair and compatible/breaking class, declares the
|
|
165
175
|
exact complete current breaking, addition, and migration inventories
|
|
@@ -176,6 +186,18 @@ vulnerability absence, or consumer rollout safety by itself.
|
|
|
176
186
|
commit identities, admitted status expressions, the required aggregate shell
|
|
177
187
|
program, and read-only treatment of an existing release are source-oracle
|
|
178
188
|
invariants.
|
|
189
|
+
- `REQ-PROOFKIT-QUALITY-026`: every public or retained-evidence stable JSON
|
|
190
|
+
implementation accepts only the repository-pinned Unicode scalar set and matches one
|
|
191
|
+
preimplementation byte corpus for the pinned control, format, and separator
|
|
192
|
+
table without changing decoded values.
|
|
193
|
+
- `REQ-PROOFKIT-QUALITY-027`: report-visible diagnostics and structural text
|
|
194
|
+
apply the same scalar, Unicode-whitespace, control/format, and split-secret
|
|
195
|
+
taxonomy, replace rejected caller values as a whole without echoing any
|
|
196
|
+
fragment, bound diagnostic output, and own dynamic Go/JavaScript error
|
|
197
|
+
projection plus failure-only bounded child-process diagnostics for repository
|
|
198
|
+
tools. On supported Unix hosts, an installed-carrier success additionally
|
|
199
|
+
requires confirmed process-group absence after the parent is reaped; cleanup
|
|
200
|
+
timeout is an explicit failure rather than a successful terminal result.
|
|
179
201
|
|
|
180
202
|
## Non-Claims
|
|
181
203
|
|