gsdd-cli 0.18.5 → 0.19.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/LICENSE +21 -21
- package/README.md +609 -608
- package/agents/DISTILLATION.md +421 -421
- package/agents/README.md +62 -62
- package/agents/approach-explorer.md +361 -361
- package/agents/debugger.md +82 -82
- package/agents/executor.md +394 -394
- package/agents/integration-checker.md +318 -318
- package/agents/mapper.md +103 -103
- package/agents/planner.md +313 -313
- package/agents/researcher.md +84 -84
- package/agents/roadmapper.md +296 -296
- package/agents/synthesizer.md +236 -236
- package/agents/verifier.md +337 -337
- package/bin/adapters/agents.mjs +34 -34
- package/bin/adapters/claude.mjs +191 -191
- package/bin/adapters/codex.mjs +85 -85
- package/bin/adapters/index.mjs +20 -20
- package/bin/adapters/opencode.mjs +278 -278
- package/bin/gsdd.mjs +123 -116
- package/bin/lib/cli-utils.mjs +28 -28
- package/bin/lib/evidence-contract.mjs +112 -112
- package/bin/lib/file-ops.mjs +186 -144
- package/bin/lib/health-truth.mjs +181 -178
- package/bin/lib/health.mjs +246 -226
- package/bin/lib/init-flow.mjs +247 -231
- package/bin/lib/init-prompts.mjs +248 -247
- package/bin/lib/init-runtime.mjs +191 -190
- package/bin/lib/init.mjs +17 -17
- package/bin/lib/lifecycle-preflight.mjs +347 -325
- package/bin/lib/lifecycle-state.mjs +351 -267
- package/bin/lib/manifest.mjs +116 -114
- package/bin/lib/models.mjs +411 -411
- package/bin/lib/phase.mjs +360 -358
- package/bin/lib/plan-constants.mjs +30 -30
- package/bin/lib/provenance.mjs +109 -106
- package/bin/lib/rendering.mjs +115 -83
- package/bin/lib/runtime-freshness.mjs +214 -214
- package/bin/lib/templates.mjs +225 -224
- package/bin/lib/workspace-root.mjs +2 -1
- package/distilled/DESIGN.md +2333 -2323
- package/distilled/EVIDENCE-INDEX.md +394 -392
- package/distilled/README.md +196 -193
- package/distilled/SKILL.md +86 -85
- package/distilled/templates/agents.block.md +21 -21
- package/distilled/templates/agents.md +6 -6
- package/distilled/templates/approach.md +232 -232
- package/distilled/templates/auth-matrix.md +78 -78
- package/distilled/templates/brownfield-change/CHANGE.md +99 -0
- package/distilled/templates/brownfield-change/HANDOFF.md +38 -0
- package/distilled/templates/brownfield-change/VERIFICATION.md +56 -0
- package/distilled/templates/codebase/architecture.md +110 -110
- package/distilled/templates/codebase/concerns.md +95 -95
- package/distilled/templates/codebase/conventions.md +193 -193
- package/distilled/templates/codebase/stack.md +96 -96
- package/distilled/templates/delegates/approach-explorer.md +25 -25
- package/distilled/templates/delegates/mapper-arch.md +26 -26
- package/distilled/templates/delegates/mapper-concerns.md +27 -27
- package/distilled/templates/delegates/mapper-quality.md +28 -28
- package/distilled/templates/delegates/mapper-tech.md +25 -25
- package/distilled/templates/delegates/plan-checker.md +68 -68
- package/distilled/templates/delegates/researcher-architecture.md +30 -30
- package/distilled/templates/delegates/researcher-features.md +30 -30
- package/distilled/templates/delegates/researcher-pitfalls.md +30 -30
- package/distilled/templates/delegates/researcher-stack.md +30 -30
- package/distilled/templates/delegates/researcher-synthesizer.md +31 -31
- package/distilled/templates/research/architecture.md +57 -57
- package/distilled/templates/research/features.md +23 -23
- package/distilled/templates/research/pitfalls.md +46 -46
- package/distilled/templates/research/stack.md +45 -45
- package/distilled/templates/research/summary.md +67 -67
- package/distilled/templates/roadmap.md +74 -62
- package/distilled/templates/spec.md +110 -110
- package/distilled/workflows/audit-milestone.md +275 -271
- package/distilled/workflows/complete-milestone.md +336 -332
- package/distilled/workflows/execute.md +454 -449
- package/distilled/workflows/map-codebase.md +253 -253
- package/distilled/workflows/new-milestone.md +242 -238
- package/distilled/workflows/new-project.md +398 -398
- package/distilled/workflows/pause.md +160 -156
- package/distilled/workflows/plan-milestone-gaps.md +183 -183
- package/distilled/workflows/plan.md +451 -447
- package/distilled/workflows/progress.md +227 -223
- package/distilled/workflows/quick.md +351 -347
- package/distilled/workflows/resume.md +220 -212
- package/distilled/workflows/verify-work.md +260 -260
- package/distilled/workflows/verify.md +431 -429
- package/docs/BROWNFIELD-PROOF.md +95 -95
- package/docs/RUNTIME-SUPPORT.md +80 -69
- package/docs/USER-GUIDE.md +394 -386
- package/docs/VERIFICATION-DISCIPLINE.md +59 -59
- package/docs/claude/context-monitor.md +98 -98
- package/docs/proof/consumer-node-cli/README.md +37 -37
- package/docs/proof/consumer-node-cli/ROADMAP.md +14 -14
- package/docs/proof/consumer-node-cli/SPEC.md +17 -17
- package/docs/proof/consumer-node-cli/brief.md +9 -9
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md +34 -34
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md +10 -10
- package/docs/proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md +30 -30
- package/package.json +62 -61
package/docs/BROWNFIELD-PROOF.md
CHANGED
|
@@ -1,95 +1,95 @@
|
|
|
1
|
-
# Brownfield Proof
|
|
2
|
-
|
|
3
|
-
This is the strongest tracked public proof for Workspine's release-floor claim: a real brownfield-style consumer repo that used the shipped workflow contract, hit a real failure, and recovered through the same `plan -> execute -> verify` loop.
|
|
4
|
-
|
|
5
|
-
## What this proves
|
|
6
|
-
|
|
7
|
-
In a fresh consumer repo, Workspine produced:
|
|
8
|
-
|
|
9
|
-
- durable planning artifacts
|
|
10
|
-
- runnable workflow entry surfaces
|
|
11
|
-
- a concrete phase plan
|
|
12
|
-
- a real execution summary
|
|
13
|
-
- a failed verification
|
|
14
|
-
- a real fix
|
|
15
|
-
- a successful re-verification
|
|
16
|
-
|
|
17
|
-
That proves the repo-native delivery contract is not just conceptual.
|
|
18
|
-
|
|
19
|
-
## Public proof pack
|
|
20
|
-
|
|
21
|
-
Open the tracked proof pack:
|
|
22
|
-
|
|
23
|
-
- [Consumer proof pack index](proof/consumer-node-cli/README.md)
|
|
24
|
-
|
|
25
|
-
Key exported artifacts:
|
|
26
|
-
|
|
27
|
-
- [brief.md](proof/consumer-node-cli/brief.md)
|
|
28
|
-
- [SPEC.md](proof/consumer-node-cli/SPEC.md)
|
|
29
|
-
- [ROADMAP.md](proof/consumer-node-cli/ROADMAP.md)
|
|
30
|
-
- [01-01-PLAN.md](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md)
|
|
31
|
-
- [01-01-SUMMARY.md](proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md)
|
|
32
|
-
- [01-VERIFICATION.md](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md)
|
|
33
|
-
|
|
34
|
-
## The worked flow
|
|
35
|
-
|
|
36
|
-
### 1. Initialize a fresh consumer repo
|
|
37
|
-
|
|
38
|
-
The exported proof pack comes from a new non-framework project that used the shipped `gsdd init` flow.
|
|
39
|
-
|
|
40
|
-
The generated surface included:
|
|
41
|
-
|
|
42
|
-
- portable `.agents/skills/gsdd-*`
|
|
43
|
-
- consumer `.planning/` state
|
|
44
|
-
- a Codex-native checker adapter
|
|
45
|
-
- a compact consumer `AGENTS.md`
|
|
46
|
-
|
|
47
|
-
### 2. Plan real work
|
|
48
|
-
|
|
49
|
-
The consumer brief required a named greeting:
|
|
50
|
-
|
|
51
|
-
- `node index.js --name Ada` should print `Hello, Ada!`
|
|
52
|
-
|
|
53
|
-
That requirement is preserved in the exported [brief](proof/consumer-node-cli/brief.md), [spec](proof/consumer-node-cli/SPEC.md), and [phase plan](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md).
|
|
54
|
-
|
|
55
|
-
### 3. Execute and hit a real miss
|
|
56
|
-
|
|
57
|
-
The first implementation missed the named-greeting requirement:
|
|
58
|
-
|
|
59
|
-
- `node index.js --name Ada` returned `Hello, world!`
|
|
60
|
-
|
|
61
|
-
That miss is preserved in the exported [verification report](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md).
|
|
62
|
-
|
|
63
|
-
### 4. Verify, fix, and re-verify
|
|
64
|
-
|
|
65
|
-
The consumer repo then followed the same framework contract to:
|
|
66
|
-
|
|
67
|
-
- identify the failed requirement
|
|
68
|
-
- update the implementation and test path
|
|
69
|
-
- re-run verification
|
|
70
|
-
- close with a passing result
|
|
71
|
-
|
|
72
|
-
The final passing behavior is:
|
|
73
|
-
|
|
74
|
-
- `node index.js --name Ada` returns `Hello, Ada!`
|
|
75
|
-
|
|
76
|
-
## Why this matters
|
|
77
|
-
|
|
78
|
-
This proof is stronger than a polished README claim because it shows the exact behavior Workspine is trying to preserve:
|
|
79
|
-
|
|
80
|
-
- plan from durable artifacts
|
|
81
|
-
- execute against real repo state
|
|
82
|
-
- let verification catch a real miss
|
|
83
|
-
- recover without losing the thread
|
|
84
|
-
|
|
85
|
-
That is the release-floor claim in practice.
|
|
86
|
-
|
|
87
|
-
## What this does not prove
|
|
88
|
-
|
|
89
|
-
This proof does not claim:
|
|
90
|
-
|
|
91
|
-
- equal runtime ergonomics across every supported runtime
|
|
92
|
-
- parity validation on Cursor, Copilot, or Gemini CLI
|
|
93
|
-
- enterprise-hardening or orchestration-platform behavior
|
|
94
|
-
|
|
95
|
-
Those are outside the current proof floor.
|
|
1
|
+
# Brownfield Proof
|
|
2
|
+
|
|
3
|
+
This is the strongest tracked public proof for Workspine's release-floor claim: a real brownfield-style consumer repo that used the shipped workflow contract, hit a real failure, and recovered through the same `plan -> execute -> verify` loop.
|
|
4
|
+
|
|
5
|
+
## What this proves
|
|
6
|
+
|
|
7
|
+
In a fresh consumer repo, Workspine produced:
|
|
8
|
+
|
|
9
|
+
- durable planning artifacts
|
|
10
|
+
- runnable workflow entry surfaces
|
|
11
|
+
- a concrete phase plan
|
|
12
|
+
- a real execution summary
|
|
13
|
+
- a failed verification
|
|
14
|
+
- a real fix
|
|
15
|
+
- a successful re-verification
|
|
16
|
+
|
|
17
|
+
That proves the repo-native delivery contract is not just conceptual.
|
|
18
|
+
|
|
19
|
+
## Public proof pack
|
|
20
|
+
|
|
21
|
+
Open the tracked proof pack:
|
|
22
|
+
|
|
23
|
+
- [Consumer proof pack index](proof/consumer-node-cli/README.md)
|
|
24
|
+
|
|
25
|
+
Key exported artifacts:
|
|
26
|
+
|
|
27
|
+
- [brief.md](proof/consumer-node-cli/brief.md)
|
|
28
|
+
- [SPEC.md](proof/consumer-node-cli/SPEC.md)
|
|
29
|
+
- [ROADMAP.md](proof/consumer-node-cli/ROADMAP.md)
|
|
30
|
+
- [01-01-PLAN.md](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md)
|
|
31
|
+
- [01-01-SUMMARY.md](proof/consumer-node-cli/phases/01-foundation/01-01-SUMMARY.md)
|
|
32
|
+
- [01-VERIFICATION.md](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md)
|
|
33
|
+
|
|
34
|
+
## The worked flow
|
|
35
|
+
|
|
36
|
+
### 1. Initialize a fresh consumer repo
|
|
37
|
+
|
|
38
|
+
The exported proof pack comes from a new non-framework project that used the shipped `gsdd init` flow.
|
|
39
|
+
|
|
40
|
+
The generated surface included:
|
|
41
|
+
|
|
42
|
+
- portable `.agents/skills/gsdd-*`
|
|
43
|
+
- consumer `.planning/` state
|
|
44
|
+
- a Codex-native checker adapter
|
|
45
|
+
- a compact consumer `AGENTS.md`
|
|
46
|
+
|
|
47
|
+
### 2. Plan real work
|
|
48
|
+
|
|
49
|
+
The consumer brief required a named greeting:
|
|
50
|
+
|
|
51
|
+
- `node index.js --name Ada` should print `Hello, Ada!`
|
|
52
|
+
|
|
53
|
+
That requirement is preserved in the exported [brief](proof/consumer-node-cli/brief.md), [spec](proof/consumer-node-cli/SPEC.md), and [phase plan](proof/consumer-node-cli/phases/01-foundation/01-01-PLAN.md).
|
|
54
|
+
|
|
55
|
+
### 3. Execute and hit a real miss
|
|
56
|
+
|
|
57
|
+
The first implementation missed the named-greeting requirement:
|
|
58
|
+
|
|
59
|
+
- `node index.js --name Ada` returned `Hello, world!`
|
|
60
|
+
|
|
61
|
+
That miss is preserved in the exported [verification report](proof/consumer-node-cli/phases/01-foundation/01-VERIFICATION.md).
|
|
62
|
+
|
|
63
|
+
### 4. Verify, fix, and re-verify
|
|
64
|
+
|
|
65
|
+
The consumer repo then followed the same framework contract to:
|
|
66
|
+
|
|
67
|
+
- identify the failed requirement
|
|
68
|
+
- update the implementation and test path
|
|
69
|
+
- re-run verification
|
|
70
|
+
- close with a passing result
|
|
71
|
+
|
|
72
|
+
The final passing behavior is:
|
|
73
|
+
|
|
74
|
+
- `node index.js --name Ada` returns `Hello, Ada!`
|
|
75
|
+
|
|
76
|
+
## Why this matters
|
|
77
|
+
|
|
78
|
+
This proof is stronger than a polished README claim because it shows the exact behavior Workspine is trying to preserve:
|
|
79
|
+
|
|
80
|
+
- plan from durable artifacts
|
|
81
|
+
- execute against real repo state
|
|
82
|
+
- let verification catch a real miss
|
|
83
|
+
- recover without losing the thread
|
|
84
|
+
|
|
85
|
+
That is the release-floor claim in practice.
|
|
86
|
+
|
|
87
|
+
## What this does not prove
|
|
88
|
+
|
|
89
|
+
This proof does not claim:
|
|
90
|
+
|
|
91
|
+
- equal runtime ergonomics across every supported runtime
|
|
92
|
+
- parity validation on Cursor, Copilot, or Gemini CLI
|
|
93
|
+
- enterprise-hardening or orchestration-platform behavior
|
|
94
|
+
|
|
95
|
+
Those are outside the current proof floor.
|
package/docs/RUNTIME-SUPPORT.md
CHANGED
|
@@ -1,84 +1,95 @@
|
|
|
1
|
-
# Runtime Support Matrix
|
|
2
|
-
|
|
1
|
+
# Runtime Support Matrix
|
|
2
|
+
|
|
3
3
|
Workspine is a repo-native delivery spine with portable multi-runtime workflow surfaces, but the proof bar is not the same for every runtime today.
|
|
4
|
-
|
|
5
|
-
This matrix is the release-floor truth surface.
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
- **
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
4
|
+
|
|
5
|
+
This matrix is the release-floor truth surface.
|
|
6
|
+
|
|
7
|
+
Human setup and repair commands in this document use `npx -y gsdd-cli ...` because that works without a global install. If you installed `gsdd-cli` globally, the equivalent bare `gsdd ...` command is fine.
|
|
8
|
+
|
|
9
|
+
## Support tiers
|
|
10
|
+
|
|
11
|
+
### Directly validated
|
|
12
|
+
|
|
13
|
+
The workflow contract has direct repo proof for these runtimes:
|
|
14
|
+
|
|
15
|
+
- **Claude Code**
|
|
16
|
+
- **Codex CLI**
|
|
17
|
+
- **OpenCode**
|
|
18
|
+
|
|
19
|
+
These are the strongest public runtime claims.
|
|
20
|
+
|
|
21
|
+
### Qualified support
|
|
22
|
+
|
|
21
23
|
These runtimes use the same portable workflow surfaces, but they do not carry equal runtime proof or equal ergonomics today:
|
|
22
|
-
|
|
23
|
-
- **Cursor**
|
|
24
|
-
- **GitHub Copilot**
|
|
25
|
-
- **Gemini CLI**
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
24
|
+
|
|
25
|
+
- **Cursor**
|
|
26
|
+
- **GitHub Copilot**
|
|
27
|
+
- **Gemini CLI**
|
|
28
|
+
|
|
29
|
+
Codex CLI support means the terminal Codex CLI runtime. It does not automatically prove equal behavior in the Codex VS Code extension or Codex app; for those surfaces, use native discovery when available or open/paste the generated skill file manually.
|
|
30
|
+
|
|
31
|
+
### Fallback / manual use
|
|
32
|
+
|
|
33
|
+
Any tool that can read the generated markdown workflows can still use the framework manually, but that is outside the current native-proof story.
|
|
34
|
+
|
|
31
35
|
## Current runtime surfaces
|
|
32
36
|
|
|
33
37
|
Two surfaces matter for users:
|
|
34
38
|
|
|
35
39
|
- `.agents/skills/gsdd-*` is the shared workflow entry surface. Depending on the runtime, users invoke those workflows as `/gsdd-*`, `$gsdd-*`, or by opening the skill markdown directly.
|
|
36
40
|
- `.planning/bin/gsdd*` is an internal local helper surface used by workflow-embedded lifecycle mechanics after init. It is not the primary user entry surface.
|
|
37
|
-
|
|
41
|
+
|
|
38
42
|
| Runtime | Current claim | Entry surface | Notes |
|
|
39
43
|
| --- | --- | --- | --- |
|
|
40
|
-
| Claude Code | Directly validated | `.claude/skills/`, `.claude/commands/`, `.claude/agents/` | Native surface
|
|
44
|
+
| Claude Code | Directly validated | `.claude/skills/`, `.claude/commands/`, `.claude/agents/` | Native surface has direct lifecycle evidence; installed generated files are freshness-checked locally |
|
|
41
45
|
| OpenCode | Directly validated | `.opencode/commands/`, `.opencode/agents/` | Native command and checker path; installed generated files are freshness-checked locally |
|
|
42
|
-
| Codex CLI | Directly validated | `.agents/skills/gsdd-*` plus `.codex/agents/gsdd-plan-checker.toml` | Portable skill entry
|
|
43
|
-
|
|
|
44
|
-
|
|
|
45
|
-
|
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
46
|
+
| Codex CLI | Directly validated | `.agents/skills/gsdd-*` plus `.codex/agents/gsdd-plan-checker.toml` | Portable skill entry, native checker adapter, direct lifecycle evidence, and generated-surface freshness checks |
|
|
47
|
+
| Codex VS Code / app | Fallback only | `.agents/skills/gsdd-*` opened or pasted manually unless discovery is available | Separate product surface from Codex CLI; no equal runtime-proof claim |
|
|
48
|
+
| Cursor | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
|
|
49
|
+
| GitHub Copilot | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; generated skill files are freshness-checked locally, but the runtime is not claimed as parity-validated |
|
|
50
|
+
| Gemini CLI | Qualified support | `.agents/skills/gsdd-*` | Skill/slash path when discovery is available; governance is optional, generated skill files are freshness-checked locally, and parity is not claimed |
|
|
51
|
+
|
|
52
|
+
## Generated-surface freshness
|
|
53
|
+
|
|
49
54
|
The authored source contract stays in `distilled/workflows/*`. Generated runtime-facing files are trusted only through deterministic rendering:
|
|
50
55
|
|
|
51
|
-
- `gsdd health` compares any installed generated surfaces under `.
|
|
52
|
-
-
|
|
56
|
+
- `npx -y gsdd-cli health` compares any installed generated surfaces under `.agents/skills/`, `.planning/bin/`, `.claude/`, `.opencode/`, and `.codex/` against current render output.
|
|
57
|
+
- Workflow-internal deterministic helper commands run through `node .planning/bin/gsdd.mjs ...`.
|
|
58
|
+
- `npx -y gsdd-cli update` regenerates drifted generated surfaces from the authored workflow and delegate sources.
|
|
59
|
+
- Bare `gsdd health` and `gsdd update` are equivalent only when `gsdd-cli` is globally installed.
|
|
53
60
|
- Missing generated surfaces are not treated as drift unless the corresponding runtime surface is actually installed locally.
|
|
54
61
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
- `
|
|
62
|
+
## Entry and helper surfaces
|
|
63
|
+
|
|
64
|
+
- `.agents/skills/gsdd-*/SKILL.md` is the compact open-standard workflow entry surface. Agents read these files to know what workflow to run.
|
|
65
|
+
- `.planning/bin/gsdd.mjs` is the internal repo-local helper runtime. Generated workflows use `node .planning/bin/gsdd.mjs ...` for deterministic file, lifecycle, and status helpers instead of depending on an ambient global binary.
|
|
66
|
+
- Native adapter and governance surfaces are optional ergonomics. They can improve discovery or routing in a specific runtime, but they are not required for the portable workflow contract.
|
|
67
|
+
|
|
68
|
+
## What stays portable
|
|
69
|
+
|
|
70
|
+
The portable invariant for this release is the workflow contract:
|
|
71
|
+
|
|
72
|
+
- planning
|
|
73
|
+
- checking and revision loops
|
|
74
|
+
- execution discipline
|
|
75
|
+
- verification
|
|
76
|
+
- handoff and durable repo artifacts
|
|
77
|
+
|
|
78
|
+
## What does not stay equal yet
|
|
79
|
+
|
|
80
|
+
This release does **not** claim that every runtime has:
|
|
81
|
+
|
|
82
|
+
- the same native adapter richness
|
|
83
|
+
- the same invocation ergonomics
|
|
84
|
+
- the same validation depth
|
|
85
|
+
- the same checker/orchestration mechanics
|
|
86
|
+
|
|
87
|
+
Portable contract does not mean equal UX everywhere.
|
|
88
|
+
|
|
89
|
+
## Proof references
|
|
90
|
+
|
|
91
|
+
- `README.md`
|
|
92
|
+
- `docs/BROWNFIELD-PROOF.md`
|
|
93
|
+
- `docs/proof/consumer-node-cli/README.md`
|
|
94
|
+
- `docs/VERIFICATION-DISCIPLINE.md`
|
|
95
|
+
- `npx -y gsdd-cli health` / `npx -y gsdd-cli update` (or bare `gsdd ...` when globally installed)
|