agentic-proofkit 0.1.91
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/ADOPTION.md +464 -0
- package/LICENSE +21 -0
- package/NON_CLAIMS.md +197 -0
- package/README.md +265 -0
- package/dist/agentic-proofkit +35 -0
- 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/adoption-checklist-report-design.md +138 -0
- package/docs/adoption-workflow-agent-envelope-design.md +67 -0
- package/docs/adoption-workflow-authority-routes-design.md +76 -0
- package/docs/adoption-workflow-contract-envelope-design.md +87 -0
- package/docs/adoption-workflow-plan-design.md +97 -0
- package/docs/agent-guidance-envelope-design.md +550 -0
- package/docs/binding-partition-admission-design.md +127 -0
- package/docs/bootstrap-agent-envelope-design.md +97 -0
- package/docs/bootstrap-materialization-manifest-design.md +100 -0
- package/docs/branch-authority-report-design.md +121 -0
- package/docs/changed-path-set-agent-envelope-design.md +70 -0
- package/docs/completion-criteria-report-design.md +132 -0
- package/docs/custom-rule-boundary-design.md +56 -0
- package/docs/deployment-evidence-admission-design.md +80 -0
- package/docs/document-lifecycle-boundary-design.md +62 -0
- package/docs/json-report-cli-adapter-design.md +83 -0
- package/docs/migration-parity-admission-design.md +90 -0
- package/docs/migration-plan-design.md +73 -0
- package/docs/obligation-decision-agent-envelope-design.md +105 -0
- package/docs/obligation-decision-state-design.md +100 -0
- package/docs/package-runtime-dependency-admission-design.md +80 -0
- package/docs/producer-policy-self-proof-design.md +142 -0
- package/docs/project-structure-agent-envelope-design.md +121 -0
- package/docs/project-structure-scaffold-design.md +89 -0
- package/docs/proof-obligation-algebra-design.md +108 -0
- package/docs/proof-receipt-admission-design.md +108 -0
- package/docs/proofkit-contract-map.md +55 -0
- package/docs/receipt-currentness-scope-admission-design.md +103 -0
- package/docs/receipt-producer-admission-design.md +106 -0
- package/docs/receipt-trust-class-admission-design.md +113 -0
- package/docs/rendered-artifact-freshness-design.md +55 -0
- package/docs/requirement-browser-view-design.md +229 -0
- package/docs/requirement-proof-resolver-projection-design.md +97 -0
- package/docs/requirement-proof-source-set-design.md +72 -0
- package/docs/requirement-proof-view-design.md +138 -0
- package/docs/requirement-source-admission-design.md +66 -0
- package/docs/requirement-source-transition-design.md +66 -0
- package/docs/requirement-source-view-design.md +51 -0
- package/docs/scaffold-profile-plan-design.md +72 -0
- package/docs/secret-shaped-json-scan-design.md +60 -0
- package/docs/selective-evidence-obligation-decision-design.md +139 -0
- package/docs/selective-evidence-producer-admission-design.md +106 -0
- package/docs/selective-evidence-receipt-trust-class-design.md +100 -0
- package/docs/selective-gate-evidence-agent-envelope-design.md +100 -0
- package/docs/selective-gate-plan-agent-envelope-design.md +95 -0
- package/docs/selective-planner-edge-coverage-design.md +89 -0
- package/docs/spec-overview-claim-boundary-design.md +50 -0
- package/docs/spec-proof-bundle-admission-design.md +105 -0
- package/docs/specs/proofkit-consumer-infra-retirement/overview.md +44 -0
- package/docs/specs/proofkit-consumer-infra-retirement/requirements.v1.json +175 -0
- package/docs/specs/proofkit-package-boundary/overview.md +32 -0
- package/docs/specs/proofkit-package-boundary/requirements.v1.json +121 -0
- package/docs/specs/proofkit-receipt-authority/overview.md +35 -0
- package/docs/specs/proofkit-receipt-authority/requirements.v1.json +121 -0
- package/docs/specs/proofkit-spec-proof-core/overview.md +36 -0
- package/docs/specs/proofkit-spec-proof-core/requirements.v1.json +148 -0
- package/docs/witness-scheduler-plan-design.md +57 -0
- package/docs/workspace-planning-agent-envelope-design.md +101 -0
- package/docs/workspace-registry-admission-design.md +57 -0
- package/package.json +54 -0
- package/proofkit/cli-contract.v1.json +808 -0
- package/proofkit/receipt-producer-policy.json +48 -0
- package/proofkit/requirement-bindings.json +520 -0
- package/proofkit/witness-plan.json +649 -0
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Adoption Workflow Agent Envelope Design
|
|
2
|
+
|
|
3
|
+
## Decision
|
|
4
|
+
|
|
5
|
+
Proofkit supports `adoption-workflow-plan --agent-envelope` as an opt-in
|
|
6
|
+
projection from a deterministic workflow plan to a bounded agent work packet.
|
|
7
|
+
The projection keeps structured `argv` command refs so agents do not have to
|
|
8
|
+
recover command boundaries from shell text.
|
|
9
|
+
|
|
10
|
+
## Problem
|
|
11
|
+
|
|
12
|
+
`adoption-workflow-plan` gives consumers a scenario-level route over existing
|
|
13
|
+
Proofkit primitives. Agents still need a compact work packet that says which
|
|
14
|
+
inputs to inspect, which commands are planned, which blockers remain, and which
|
|
15
|
+
ownership questions must be answered.
|
|
16
|
+
|
|
17
|
+
Returning the full plan is machine-correct, but it is not the most
|
|
18
|
+
token-efficient agent input. Converting it into a generic agent guidance
|
|
19
|
+
envelope avoids another bespoke agent protocol, but the envelope must not
|
|
20
|
+
degrade structured workflow command refs into shell-only strings.
|
|
21
|
+
|
|
22
|
+
## Boundary
|
|
23
|
+
|
|
24
|
+
Proofkit owns:
|
|
25
|
+
|
|
26
|
+
- projection from an admitted workflow plan to an agent guidance envelope;
|
|
27
|
+
- context refs for declared workflow inputs;
|
|
28
|
+
- action items grouped by existing workflow phases;
|
|
29
|
+
- command refs that preserve `argv` arrays;
|
|
30
|
+
- blockers mapped to caller-owned preconditions;
|
|
31
|
+
- non-claims that deny execution, file writes, proof freshness, scenario
|
|
32
|
+
selection, and policy authority.
|
|
33
|
+
|
|
34
|
+
The consuming repository owns:
|
|
35
|
+
|
|
36
|
+
- scenario appropriateness;
|
|
37
|
+
- input file content;
|
|
38
|
+
- command execution and receipts;
|
|
39
|
+
- CI producer admission and freshness;
|
|
40
|
+
- file materialization, merge, enforcement, release, and rollout decisions.
|
|
41
|
+
|
|
42
|
+
## Invariant
|
|
43
|
+
|
|
44
|
+
For the same admitted workflow plan, the envelope must emit the same bounded
|
|
45
|
+
context refs, command refs, action plan, blockers, and non-claims. The envelope
|
|
46
|
+
must not include payload bodies or execute commands. Every emitted command ref
|
|
47
|
+
must preserve the structured `argv` from the workflow plan.
|
|
48
|
+
|
|
49
|
+
## Rejected Alternatives
|
|
50
|
+
|
|
51
|
+
| Alternative | Rejection |
|
|
52
|
+
|---|---|
|
|
53
|
+
| Return only the raw workflow plan to agents | Correct but less token-efficient; agents must infer context roles and blockers from a route graph. |
|
|
54
|
+
| Add a second bespoke workflow-agent schema | This duplicates the existing reusable agent guidance envelope contract. |
|
|
55
|
+
| Convert commands to shell strings only | This loses argument boundaries and weakens deterministic command routing. |
|
|
56
|
+
| Make `--agent-envelope` the default output | Existing CLI users expect the canonical plan JSON unless they opt into agent presentation. |
|
|
57
|
+
|
|
58
|
+
## Proof Obligations
|
|
59
|
+
|
|
60
|
+
- Unit tests prove workflow envelopes preserve `argv`, context refs, actions,
|
|
61
|
+
blockers, and non-claims.
|
|
62
|
+
- CLI tests prove ordinary workflow output is unchanged without
|
|
63
|
+
`--agent-envelope`, and `--agent-envelope` is deterministic for file and
|
|
64
|
+
stdin inputs.
|
|
65
|
+
- Agent-envelope tests prove optional `argv` command refs remain backward
|
|
66
|
+
compatible with existing command-string envelopes.
|
|
67
|
+
- Package artifact tests prove the shipped public API and design note.
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
# Adoption Workflow Authority Routes Design
|
|
2
|
+
|
|
3
|
+
## Decision
|
|
4
|
+
|
|
5
|
+
Extend `adoption-workflow-plan` so caller-provided workflow inputs may route to
|
|
6
|
+
the existing `adoption-checklist` and `branch-authority` primitives.
|
|
7
|
+
|
|
8
|
+
The extension is optional and routing-only. It does not make either primitive a
|
|
9
|
+
new global adoption prerequisite, and it does not change the authority of those
|
|
10
|
+
primitive reports.
|
|
11
|
+
|
|
12
|
+
## Problem
|
|
13
|
+
|
|
14
|
+
Proofkit now provides focused primitives for adoption state summaries and
|
|
15
|
+
branch authority drift checks. A consumer using the scenario-level adoption
|
|
16
|
+
workflow still has to remember to run those primitives outside the workflow.
|
|
17
|
+
|
|
18
|
+
That creates unnecessary glue:
|
|
19
|
+
|
|
20
|
+
- the workflow can route proof bindings, witness plans, selective gates,
|
|
21
|
+
receipts, migration plans, and release-channel checks;
|
|
22
|
+
- the workflow cannot yet route adoption checklist or branch authority refs;
|
|
23
|
+
- agents must load extra examples or infer where the commands belong.
|
|
24
|
+
|
|
25
|
+
The missing route is an integration gap, not a reason to add another
|
|
26
|
+
orchestrator.
|
|
27
|
+
|
|
28
|
+
## Boundary
|
|
29
|
+
|
|
30
|
+
Proofkit owns:
|
|
31
|
+
|
|
32
|
+
- admitting `adoption_checklist` and `branch_authority` as workflow input kinds;
|
|
33
|
+
- deterministic command refs for `adoption-checklist` and `branch-authority`;
|
|
34
|
+
- stable phase placement for those optional routes;
|
|
35
|
+
- agent-envelope context roles and command refs derived from the same plan.
|
|
36
|
+
|
|
37
|
+
The consuming repository owns:
|
|
38
|
+
|
|
39
|
+
- whether either route is relevant to the scenario;
|
|
40
|
+
- the checklist content, branch facts, expected branch policy, and evidence
|
|
41
|
+
refs;
|
|
42
|
+
- command execution, receipts, freshness, merge approval, release approval,
|
|
43
|
+
rollout approval, and repository policy.
|
|
44
|
+
|
|
45
|
+
## Invariant
|
|
46
|
+
|
|
47
|
+
If an admitted workflow input declares `adoption_checklist` or
|
|
48
|
+
`branch_authority`, the plan must emit the corresponding command ref exactly
|
|
49
|
+
once. If the input omits either ref, the plan must not invent a path, scan the
|
|
50
|
+
repository, or create a blocker solely because the optional ref is absent.
|
|
51
|
+
|
|
52
|
+
`branch_authority` routes in the `profile` phase because branch identity is a
|
|
53
|
+
repository authority fact that can affect adoption and release routing.
|
|
54
|
+
|
|
55
|
+
`adoption_checklist` routes in the `collect-evidence` phase because it
|
|
56
|
+
summarizes caller-owned adoption evidence after scenario selection.
|
|
57
|
+
|
|
58
|
+
## Rejected Alternatives
|
|
59
|
+
|
|
60
|
+
| Alternative | Rejection |
|
|
61
|
+
|---|---|
|
|
62
|
+
| Make both refs required for every scenario | This would introduce hidden policy and break valid minimal consumers. |
|
|
63
|
+
| Add a new closeout/orchestration primitive | The existing workflow already owns scenario routing; another layer would duplicate authority. |
|
|
64
|
+
| Infer checklist or branch paths from conventions | Ambient discovery would turn Proofkit into a repository scanner. |
|
|
65
|
+
| Inline checklist or branch report semantics in the workflow | That would duplicate primitive schemas and create drift. |
|
|
66
|
+
|
|
67
|
+
## Proof Obligations
|
|
68
|
+
|
|
69
|
+
- Unit tests prove optional refs produce the expected command refs and are not
|
|
70
|
+
missing-input blockers.
|
|
71
|
+
- Agent-envelope tests prove the routes remain structured argv refs and bounded
|
|
72
|
+
context refs.
|
|
73
|
+
- CLI tests prove workflow output remains deterministic for stdin and file
|
|
74
|
+
inputs.
|
|
75
|
+
- Package artifact tests prove the design note is shipped with the public
|
|
76
|
+
artifact.
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Adoption Workflow Contract Envelope Design
|
|
2
|
+
|
|
3
|
+
## Decision
|
|
4
|
+
|
|
5
|
+
Proofkit admits an optional contract-envelope projection for
|
|
6
|
+
`adoption-workflow-plan`. The envelope gives consumers one stable adoption
|
|
7
|
+
entrypoint while preserving the existing workflow planner as the owner of
|
|
8
|
+
scenario routing.
|
|
9
|
+
|
|
10
|
+
## Problem
|
|
11
|
+
|
|
12
|
+
`adoption-workflow-plan` is the highest-level adoption route. It currently
|
|
13
|
+
accepts its native input directly, while older adoption surfaces can be invoked
|
|
14
|
+
from a caller-owned contract envelope. That mismatch forces consumer agents to
|
|
15
|
+
remember which entrypoints support envelope projection and makes gradual
|
|
16
|
+
adoption less uniform.
|
|
17
|
+
|
|
18
|
+
The missing invariant is:
|
|
19
|
+
|
|
20
|
+
```text
|
|
21
|
+
caller-owned adoption workflow envelope
|
|
22
|
+
-> admitted workflow planner input
|
|
23
|
+
-> deterministic workflow plan or agent envelope
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## Boundary
|
|
27
|
+
|
|
28
|
+
Proofkit owns:
|
|
29
|
+
|
|
30
|
+
- the envelope schema id;
|
|
31
|
+
- exact extraction of the `workflow` object;
|
|
32
|
+
- fail-closed schema and field drift diagnostics;
|
|
33
|
+
- CLI routing for `adoption-workflow-plan --contract-envelope`;
|
|
34
|
+
- compatibility with `--agent-envelope`.
|
|
35
|
+
|
|
36
|
+
The consuming repository owns:
|
|
37
|
+
|
|
38
|
+
- the workflow object content;
|
|
39
|
+
- scenario choice;
|
|
40
|
+
- referenced input files;
|
|
41
|
+
- file materialization;
|
|
42
|
+
- native witness execution;
|
|
43
|
+
- receipts, producer admission, freshness, merge, release, and rollout.
|
|
44
|
+
|
|
45
|
+
## Chosen Shape
|
|
46
|
+
|
|
47
|
+
The v1 envelope is intentionally small:
|
|
48
|
+
|
|
49
|
+
```json
|
|
50
|
+
{
|
|
51
|
+
"schema": "proofkit.adoption-workflow.v1",
|
|
52
|
+
"workflow": {
|
|
53
|
+
"schemaVersion": 1,
|
|
54
|
+
"workflowId": "consumer-owned-id",
|
|
55
|
+
"scenario": "existing_gradual_adoption",
|
|
56
|
+
"presetId": "typescript_workspace",
|
|
57
|
+
"inputRefs": [],
|
|
58
|
+
"nonClaims": []
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
The envelope does not embed primitive payload bodies. It only carries the
|
|
64
|
+
caller-owned workflow routing record. Referenced primitive inputs remain
|
|
65
|
+
separate caller-owned files because they have separate owners, review cycles,
|
|
66
|
+
and proof obligations.
|
|
67
|
+
|
|
68
|
+
## Rejected Alternatives
|
|
69
|
+
|
|
70
|
+
| Alternative | Rejection |
|
|
71
|
+
|---|---|
|
|
72
|
+
| Make `workflow` optional and infer it from other fields | That would turn Proofkit into a scenario selector. |
|
|
73
|
+
| Embed every primitive input payload in the envelope | That creates a token-heavy mega-object and duplicates primitive schemas. |
|
|
74
|
+
| Use a generic `input` field | Existing contract envelopes already use command-specific fields; `workflow` is clearer and avoids confusing it with lower-level primitive inputs. |
|
|
75
|
+
| Support ambient repository discovery | Contract envelopes are explicit caller records, not repo scans. |
|
|
76
|
+
|
|
77
|
+
## Proof Obligations
|
|
78
|
+
|
|
79
|
+
- Contract-envelope unit tests prove extraction, schema drift, and missing
|
|
80
|
+
`workflow` fail closed.
|
|
81
|
+
- CLI tests prove `adoption-workflow-plan --contract-envelope` works both with
|
|
82
|
+
normal plan output and `--agent-envelope`.
|
|
83
|
+
- CLI tests prove unsupported contract-envelope commands remain fail-closed.
|
|
84
|
+
- Package artifact tests prove the new public projection and design note are
|
|
85
|
+
exported.
|
|
86
|
+
- Full package check proves existing adoption, agent-envelope, and contract
|
|
87
|
+
envelope behavior remains compatible.
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
# Adoption Workflow Plan Design
|
|
2
|
+
|
|
3
|
+
## Decision
|
|
4
|
+
|
|
5
|
+
Proofkit provides a deterministic `adoption-workflow-plan` primitive that
|
|
6
|
+
routes common consumer adoption scenarios to existing Proofkit primitives. The
|
|
7
|
+
plan is an ordered caller-reviewed workflow, not an orchestrator.
|
|
8
|
+
|
|
9
|
+
## Problem
|
|
10
|
+
|
|
11
|
+
Proofkit already exposes focused primitives for stack presets, repository
|
|
12
|
+
profile scaffolding, gradual adoption bootstrap, proof migration, selective
|
|
13
|
+
gates, receipts, and release-channel authority. A new consumer still needs a
|
|
14
|
+
small deterministic entrypoint that answers:
|
|
15
|
+
|
|
16
|
+
- which Proofkit command should run first for this scenario;
|
|
17
|
+
- which caller-owned input files are required;
|
|
18
|
+
- which steps are blocked because their input refs are absent;
|
|
19
|
+
- which commands are follow-up checks rather than proof evidence.
|
|
20
|
+
|
|
21
|
+
Without that entrypoint, adoption agents must load broad README material or
|
|
22
|
+
guess command order from examples. That increases token load and makes
|
|
23
|
+
cross-repository onboarding less reproducible.
|
|
24
|
+
|
|
25
|
+
## Boundary
|
|
26
|
+
|
|
27
|
+
Proofkit owns:
|
|
28
|
+
|
|
29
|
+
- scenario vocabulary;
|
|
30
|
+
- deterministic mapping from scenario and caller-provided input refs to ordered
|
|
31
|
+
workflow phases;
|
|
32
|
+
- optional command routes for adoption checklist and branch authority refs
|
|
33
|
+
declared by the caller;
|
|
34
|
+
- fail-closed blockers for missing required input refs;
|
|
35
|
+
- structured CLI command refs that do not rely on shell parsing;
|
|
36
|
+
- non-claims denying repository scanning, native witness execution, file
|
|
37
|
+
writes, proof freshness, merge approval, rollout approval, and policy
|
|
38
|
+
ownership.
|
|
39
|
+
|
|
40
|
+
The consuming repository owns:
|
|
41
|
+
|
|
42
|
+
- whether a scenario is appropriate;
|
|
43
|
+
- all input files referenced by the workflow;
|
|
44
|
+
- file materialization, overwrite, and deletion decisions;
|
|
45
|
+
- native witness execution and command receipts;
|
|
46
|
+
- CI producer admission and freshness;
|
|
47
|
+
- merge, enforcement, release, and rollout decisions.
|
|
48
|
+
|
|
49
|
+
Scenario selection is caller-owned. The plan only validates that the selected
|
|
50
|
+
scenario has the declared input refs needed to route to existing Proofkit
|
|
51
|
+
primitives.
|
|
52
|
+
|
|
53
|
+
Adoption checklist and branch authority refs are optional workflow routes. They
|
|
54
|
+
are included when the caller declares them, but their absence is not a
|
|
55
|
+
missing-input blocker. Checklist requiredness and branch policy remain
|
|
56
|
+
consumer-owned.
|
|
57
|
+
|
|
58
|
+
## Invariant
|
|
59
|
+
|
|
60
|
+
For the same admitted caller input, the workflow plan must emit the same ordered
|
|
61
|
+
phases, command refs, blockers, and non-claims. A step that requires a missing
|
|
62
|
+
input ref must be represented as a blocker, not silently omitted or invented
|
|
63
|
+
from repository state.
|
|
64
|
+
|
|
65
|
+
The plan may reference existing Proofkit commands, but it must not inline or
|
|
66
|
+
reimplement the semantics of those commands. Each step points at the command
|
|
67
|
+
that owns the next proof-infrastructure operation.
|
|
68
|
+
|
|
69
|
+
## Scenarios
|
|
70
|
+
|
|
71
|
+
The initial scenario vocabulary is intentionally small:
|
|
72
|
+
|
|
73
|
+
| Scenario | Purpose |
|
|
74
|
+
|---|---|
|
|
75
|
+
| `new_repository` | Start a repository with a profile plan, bootstrap payloads, and first non-blocking proof route. |
|
|
76
|
+
| `existing_gradual_adoption` | Add Proofkit to an existing repository one bounded module at a time. |
|
|
77
|
+
| `legacy_proof_migration` | Run old and new proof owners side by side until caller-owned parity evidence allows retirement review. |
|
|
78
|
+
| `release_channel` | Prove package artifact or registry consumption boundaries before consumer rollout. |
|
|
79
|
+
|
|
80
|
+
## Rejected Alternatives
|
|
81
|
+
|
|
82
|
+
| Alternative | Rejection |
|
|
83
|
+
|---|---|
|
|
84
|
+
| Build a full orchestrator | Execution, retries, receipts, credentials, and CI freshness are repository or CI authority. |
|
|
85
|
+
| Duplicate command-specific inputs in the workflow | That would create a second schema for each primitive and drift from the owning command. |
|
|
86
|
+
| Infer missing input paths from repository layout | Ambient discovery would turn Proofkit into a repository scanner and weaken reproducibility. |
|
|
87
|
+
| Emit shell command strings | Structured argv refs avoid shell parsing ambiguity and are easier for agents and CI adapters to validate. |
|
|
88
|
+
|
|
89
|
+
## Proof Obligations
|
|
90
|
+
|
|
91
|
+
- Unit tests prove scenario-to-phase order, missing-input blockers, structured
|
|
92
|
+
argv command refs, and non-claims.
|
|
93
|
+
- CLI tests prove `adoption-workflow-plan --input <path>` emits stable JSON and
|
|
94
|
+
fails invalid input shapes.
|
|
95
|
+
- Package artifact tests prove the public API and design note are exported.
|
|
96
|
+
- Full package check proves the workflow plan does not change existing
|
|
97
|
+
primitive behavior.
|