intentdna 1.7.4 → 1.8.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (152) hide show
  1. package/.claude-plugin/marketplace.json +2 -2
  2. package/.claude-plugin/plugin.json +1 -1
  3. package/LICENSE +201 -0
  4. package/README.md +143 -194
  5. package/dist/assets/candidates.d.ts +124 -0
  6. package/dist/assets/candidates.js +1249 -0
  7. package/dist/assets/catalog.d.ts +101 -0
  8. package/dist/assets/catalog.js +311 -0
  9. package/dist/assets/evidence.d.ts +93 -0
  10. package/dist/assets/evidence.js +391 -0
  11. package/dist/assets/index.d.ts +4 -0
  12. package/dist/assets/index.js +4 -0
  13. package/dist/assets/metadata.d.ts +19 -0
  14. package/dist/assets/metadata.js +227 -0
  15. package/dist/cli/commands/assets.d.ts +65 -0
  16. package/dist/cli/commands/assets.js +2871 -0
  17. package/dist/cli/commands/auth.d.ts +322 -0
  18. package/dist/cli/commands/auth.js +1592 -0
  19. package/dist/cli/commands/cloud-auth-guidance.d.ts +2 -0
  20. package/dist/cli/commands/cloud-auth-guidance.js +4 -0
  21. package/dist/cli/commands/cloud.d.ts +1359 -0
  22. package/dist/cli/commands/cloud.js +8364 -0
  23. package/dist/cli/commands/evolve.js +18 -2
  24. package/dist/cli/commands/generate.js +25 -2
  25. package/dist/cli/commands/guard.d.ts +1 -1
  26. package/dist/cli/commands/guard.js +1 -1
  27. package/dist/cli/commands/guide.d.ts +15 -0
  28. package/dist/cli/commands/guide.js +1747 -0
  29. package/dist/cli/commands/init.d.ts +12 -0
  30. package/dist/cli/commands/init.js +95 -60
  31. package/dist/cli/commands/org.d.ts +16 -0
  32. package/dist/cli/commands/org.js +2393 -0
  33. package/dist/cli/commands/release.d.ts +59 -0
  34. package/dist/cli/commands/release.js +716 -0
  35. package/dist/cli/commands/report.d.ts +82 -0
  36. package/dist/cli/commands/report.js +1516 -0
  37. package/dist/cli/commands/run.d.ts +6 -1
  38. package/dist/cli/commands/run.js +95 -26
  39. package/dist/cli/commands/sync.d.ts +8 -1
  40. package/dist/cli/commands/sync.js +436 -141
  41. package/dist/cli/commands/templates.d.ts +64 -0
  42. package/dist/cli/commands/templates.js +2151 -1
  43. package/dist/cli/commands/workflow.d.ts +26 -0
  44. package/dist/cli/commands/workflow.js +3053 -0
  45. package/dist/cli/index.js +719 -42
  46. package/dist/compiler/cascade.js +4 -9
  47. package/dist/compiler/compile.js +1 -0
  48. package/dist/governance/evidence-capture-attribution.d.ts +12 -0
  49. package/dist/governance/evidence-capture-attribution.js +46 -0
  50. package/dist/governance/index.d.ts +2 -0
  51. package/dist/governance/index.js +1 -0
  52. package/dist/hooks/cli.d.ts +6 -0
  53. package/dist/hooks/cli.js +168 -12
  54. package/dist/hooks/enforce.d.ts +1 -0
  55. package/dist/hooks/protocol.d.ts +1 -1
  56. package/dist/hooks/protocol.js +1 -1
  57. package/dist/hooks/state.d.ts +41 -0
  58. package/dist/hooks/state.js +126 -2
  59. package/dist/index.d.ts +3 -0
  60. package/dist/index.js +3 -0
  61. package/dist/mcp/tools-state.js +2 -0
  62. package/dist/organization/index.d.ts +121 -0
  63. package/dist/organization/index.js +413 -0
  64. package/dist/runtime/claude-sync-target.d.ts +49 -0
  65. package/dist/runtime/claude-sync-target.js +280 -0
  66. package/dist/runtime/codex-adapter.d.ts +254 -0
  67. package/dist/runtime/codex-adapter.js +1204 -0
  68. package/dist/runtime/codex-sync-target.d.ts +33 -0
  69. package/dist/runtime/codex-sync-target.js +241 -0
  70. package/dist/runtime/index.d.ts +8 -0
  71. package/dist/runtime/index.js +4 -0
  72. package/dist/runtime/output-artifact-registry.d.ts +1 -1
  73. package/dist/runtime/output-artifact-registry.js +2 -0
  74. package/dist/runtime/settings-adapter.d.ts +1 -1
  75. package/dist/runtime/settings-adapter.js +1 -1
  76. package/dist/runtime/skill-adapter.d.ts +5 -1
  77. package/dist/runtime/skill-adapter.js +120 -34
  78. package/dist/runtime/sync-artifact-registry.d.ts +99 -0
  79. package/dist/runtime/sync-artifact-registry.js +194 -0
  80. package/dist/runtime/sync-target-plan.d.ts +45 -0
  81. package/dist/runtime/sync-target-plan.js +19 -0
  82. package/dist/schema/controller-registry.d.ts +8 -1
  83. package/dist/schema/controller-registry.js +8 -0
  84. package/dist/schema/types.d.ts +35 -23
  85. package/dist/schema/types.js +10 -1
  86. package/dist/schema/validate.js +22 -22
  87. package/dist/schema/validators/controllers.js +38 -20
  88. package/dist/schema/workflow-authoring-contract.d.ts +29 -0
  89. package/dist/schema/workflow-authoring-contract.js +109 -0
  90. package/dist/schema/yaml-parser.js +18 -0
  91. package/dist/templates/api-backend.dna.yaml +19 -0
  92. package/dist/templates/brainstorming-first.dna.yaml +19 -0
  93. package/dist/templates/code-cleanup.dna.yaml +19 -0
  94. package/dist/templates/code-review-pipeline.dna.yaml +18 -0
  95. package/dist/templates/documentation-writer.dna.yaml +19 -0
  96. package/dist/templates/flutter-behavior-lock.dna.yaml +19 -0
  97. package/dist/templates/flutter-refactoring-rescue.dna.yaml +19 -0
  98. package/dist/templates/flutter-rewrite-diagnosis-review.dna.yaml +210 -0
  99. package/dist/templates/flutter-rewrite-fix-review-loop.dna.yaml +260 -0
  100. package/dist/templates/flutter-rewrite-new.dna.yaml +506 -0
  101. package/dist/templates/flutter-rewrite.dna.yaml +20 -0
  102. package/dist/templates/frontend-quality.dna.yaml +19 -0
  103. package/dist/templates/full-pipeline.dna.yaml +20 -0
  104. package/dist/templates/marketplace.d.ts +92 -0
  105. package/dist/templates/marketplace.js +502 -0
  106. package/dist/templates/metadata.d.ts +25 -0
  107. package/dist/templates/metadata.js +136 -3
  108. package/dist/templates/mobile-dev.dna.yaml +19 -0
  109. package/dist/templates/multi-agent-handoff-coordination.dna.yaml +156 -0
  110. package/dist/templates/multi-perspective-review.dna.yaml +19 -0
  111. package/dist/templates/persistent-executor.dna.yaml +19 -0
  112. package/dist/templates/qa-loop.dna.yaml +18 -0
  113. package/dist/templates/release-evidence-gate.dna.yaml +131 -0
  114. package/dist/templates/requirements-gate.dna.yaml +19 -0
  115. package/dist/templates/research-orchestration.dna.yaml +19 -0
  116. package/dist/templates/root-cause-analysis.dna.yaml +19 -0
  117. package/dist/templates/safe-refactoring.dna.yaml +321 -0
  118. package/dist/templates/secure-dev.dna.yaml +19 -0
  119. package/dist/templates/subagent-parallel.dna.yaml +19 -0
  120. package/dist/templates/systematic-debugging.dna.yaml +19 -0
  121. package/dist/templates/tdd-strict.dna.yaml +19 -0
  122. package/dist/templates/ui-visual-regression-qa.dna.yaml +133 -0
  123. package/dist/templates/workflow-author.dna.yaml +302 -0
  124. package/dist/templates/workflow-blocked-scope-triage.dna.yaml +242 -0
  125. package/dist/templates/workflow-completion-audit.dna.yaml +254 -0
  126. package/dist/templates/workflow-cross-boundary-resource-approval.dna.yaml +249 -0
  127. package/dist/templates/workflow-evidence-review.dna.yaml +198 -0
  128. package/dist/templates/workflow-module-inventory.dna.yaml +257 -0
  129. package/dist/templates/workflow-runtime-smoke-review.dna.yaml +252 -0
  130. package/dist/templates/workflow-verification-command-routing.dna.yaml +278 -0
  131. package/dist/workflow/authoring-packet.d.ts +67 -0
  132. package/dist/workflow/authoring-packet.js +218 -0
  133. package/dist/workflow/draft.d.ts +159 -0
  134. package/dist/workflow/draft.js +800 -0
  135. package/dist/workflow/index.d.ts +3 -0
  136. package/dist/workflow/index.js +3 -0
  137. package/dist/workflow/suggestion-review.d.ts +65 -0
  138. package/dist/workflow/suggestion-review.js +245 -0
  139. package/package.json +1 -1
  140. package/spec/README.md +15 -48
  141. package/spec/codex-adapter-contract.md +176 -0
  142. package/spec/sync-target-plan.md +158 -0
  143. package/spec/workflow-capability-ir.md +153 -0
  144. package/spec/agent-dispatch-fix.md +0 -116
  145. package/spec/control-plane-convergence-handoff-2026-04-24.md +0 -432
  146. package/spec/flutter-rewrite-template-optimization.md +0 -301
  147. package/spec/foundation-hardening.md +0 -178
  148. package/spec/hooks-infra-harness-hardening.md +0 -741
  149. package/spec/multi-config.md +0 -172
  150. package/spec/parallel-isolation.md +0 -268
  151. package/spec/template-version-namespace-fix.md +0 -653
  152. package/spec/workflow-pipeline.md +0 -101
@@ -0,0 +1,252 @@
1
+ # workflow-runtime-smoke-review: runtime surface smoke review after rollout or sync
2
+ # Source: extracted from Flutter rewrite dogfood ACTS e2e UI/logcat evidence
3
+ # Purpose: prove a synced or distributed runtime surface is usable before wider rollout
4
+
5
+ version: "0.1.0"
6
+ id: template_workflow_runtime_smoke_review
7
+ name: Workflow Runtime Smoke Review
8
+ purpose: Prove a synced, deployed, or distributed runtime surface is usable before wider rollout or completion claims.
9
+ maturity: reviewed
10
+ fit:
11
+ - Post-sync, post-rollout, or post-deploy checks where opening the real surface matters.
12
+ - CLI, agent, web, mobile, or desktop surfaces that need target-specific smoke evidence.
13
+ not_for:
14
+ - Treating sync or deploy command success as product runtime proof by itself.
15
+ - Moving runtime authority to Online, marketplace, Supabase, or dashboard projections.
16
+ inputs:
17
+ - rollout or sync plan
18
+ - runtime target and expected surface
19
+ - smoke command, route, screenshot, log, or output evidence
20
+ outputs:
21
+ - runtime smoke plan
22
+ - smoke evidence directory
23
+ - reviewed smoke verdict and rollout route
24
+ lineage:
25
+ source: Flutter rewrite dogfood ACTS runtime smoke evidence
26
+ reference: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress
27
+ type: project
28
+ namespace: wrsr
29
+
30
+ cascade:
31
+ inherits: ["species:default"]
32
+ priority: 100
33
+
34
+ variables:
35
+ rollout_plan_path:
36
+ description: "Organization rollout or sync plan artifact"
37
+ default: ".dna/rollout/$ARGUMENTS.rollout.json"
38
+ smoke_evidence_path:
39
+ description: "Runtime smoke evidence directory"
40
+ default: ".dna/runtime-smoke/$ARGUMENTS"
41
+ smoke_review_path:
42
+ description: "Runtime smoke review artifact path"
43
+ default: ".dna/runtime-smoke/$ARGUMENTS.review.json"
44
+ runtime_target:
45
+ description: "Runtime target such as codex, claude, web, android, ios, or desktop"
46
+ default: "$ARGUMENTS"
47
+
48
+ evidence:
49
+ - label: Flutter rewrite ACTS e2e runtime evidence
50
+ kind: reference
51
+ path: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress
52
+ description: Dogfood ACTS runtime smoke artifacts: screenshots, UI XML, UI summaries, logcat captures, route probes, crash dialogs, and login/fullscreen blockers.
53
+ - label: IntentDNA release deploy gate
54
+ kind: reference
55
+ path: docs/archive/2026H1/workflows/release-runbook.md
56
+ description: Existing release gate that requires deployed URL verification when web/public surfaces changed.
57
+
58
+ genes:
59
+ runtime_smoke_after_sync:
60
+ description: Runtime sync or rollout is not complete until the target surface is opened, probed, and evidenced
61
+ codons:
62
+ - type: attract
63
+ target: runtime_surface_opened
64
+ - type: attract
65
+ target: smoke_evidence_captured
66
+ - type: repel
67
+ target: sync_command_as_success_claim
68
+ - type: threshold
69
+ condition: "runtime_smoke_evidence_present == true"
70
+ action: block
71
+
72
+ blocker_classification_before_rollout:
73
+ description: Crash, login, route, permission, loading, and stale-surface blockers must be classified before wider distribution
74
+ codons:
75
+ - type: attract
76
+ target: crash_log_review
77
+ - type: attract
78
+ target: ui_state_review
79
+ - type: attract
80
+ target: route_probe_review
81
+ - type: repel
82
+ target: ignored_runtime_blocker
83
+ - type: sense
84
+ signal: smoke_blocker_detected
85
+ response: block_rollout
86
+
87
+ target_specific_verification:
88
+ description: Smoke checks adapt to target surface while keeping governance in dna core
89
+ codons:
90
+ - type: attract
91
+ target: target_specific_probe
92
+ - type: attract
93
+ target: canonical_smoke_artifact
94
+ - type: repel
95
+ target: harness_specific_policy_truth
96
+ - type: threshold
97
+ condition: "smoke_review_written == true"
98
+ action: block
99
+
100
+ contexts: {}
101
+
102
+ roles:
103
+ smoke_planner:
104
+ description: Chooses the smallest runtime smoke path for the target surface after rollout or sync.
105
+ tool_permissions:
106
+ allow: [Read, Grep, Glob]
107
+ deny: [Edit, Write, Bash, NotebookEdit]
108
+ scope:
109
+ read: ["**/*", ".dna/**", "docs/**"]
110
+ write: []
111
+ instructions:
112
+ - Read {{rollout_plan_path}} when present and identify the runtime target, asset, and expected surface.
113
+ - Define the smallest smoke path that proves the target can open and reach the intended route or capability.
114
+ - For web/public surfaces, include deployed URL verification from dna release deploy-plan when required.
115
+ - For CLI or agent surfaces, include a post-sync command or dry smoke that proves generated artifacts are usable.
116
+ - For mobile/desktop surfaces, include screenshot, UI tree/summary, logs, and route probes when available.
117
+ - Do not treat a sync command by itself as runtime success.
118
+
119
+ smoke_collector:
120
+ description: Collects runtime smoke evidence without changing governance assets or policy truth.
121
+ tool_permissions:
122
+ allow: [Read, Write, Grep, Glob, Bash]
123
+ deny: [Edit, NotebookEdit]
124
+ scope:
125
+ read: ["**/*", ".dna/**", "docs/**"]
126
+ write: [".dna/runtime-smoke/**"]
127
+ instructions:
128
+ - Run only the agreed smoke commands for {{runtime_target}}.
129
+ - Capture command status, stdout/stderr or logs, screenshots where relevant, UI summaries where relevant, route/output evidence, and timestamps under {{smoke_evidence_path}}.
130
+ - If the smoke cannot run, record the exact environment blocker and required human action.
131
+ - Do not edit app code, templates, organization profiles, dashboard state, evolution markers, or runtime sync artifacts.
132
+
133
+ smoke_reviewer:
134
+ description: Reviews runtime smoke evidence and classifies blockers before rollout or sync claims are accepted.
135
+ tool_permissions:
136
+ allow: [Read, Grep, Glob]
137
+ deny: [Edit, Write, Bash, NotebookEdit]
138
+ scope:
139
+ read: ["**/*", ".dna/**", "docs/**"]
140
+ write: []
141
+ instructions:
142
+ - Read all artifacts under {{smoke_evidence_path}} before judging runtime readiness.
143
+ - Classify findings as PASS, CRASH_BLOCKER, LOGIN_BLOCKER, ROUTE_BLOCKER, PERMISSION_BLOCKER, LOADING_BLOCKER, STALE_SURFACE, INFRA_BLOCKER, or INCONCLUSIVE.
144
+ - Reject rollout if the app is stuck on launcher, crash dialog, login wall, fullscreen system prompt, missing route, or stale surface unless explicitly accepted as out of scope.
145
+ - Distinguish product blockers from environment blockers and missing evidence.
146
+ - Return PASS, REQUEST_CHANGES, BLOCKED, or INCONCLUSIVE with evidence paths.
147
+
148
+ manager_reviewer:
149
+ description: Produces a manager-readable runtime distribution decision.
150
+ tool_permissions:
151
+ allow: [Read, Write, Grep, Glob]
152
+ deny: [Edit, Bash, NotebookEdit]
153
+ scope:
154
+ read: ["**/*", ".dna/**", "docs/**"]
155
+ write: [".dna/runtime-smoke/**"]
156
+ instructions:
157
+ - Write {{smoke_review_path}} with target, asset, status, blocker classification, evidence paths, next commands, and updated_at.
158
+ - State whether rollout, runtime sync, public deploy verification, or wider distribution is allowed.
159
+ - If blocked, route to fix/review, completion audit, deploy-plan verification, or environment setup as appropriate.
160
+ - Keep Obsidian/wiki as internal memory only; use runtime smoke artifacts as product evidence.
161
+
162
+ workflows:
163
+ runtime-smoke-review:
164
+ name: Runtime Smoke Review
165
+ description: Plan, collect, review, and route runtime smoke evidence after rollout or sync before wider distribution.
166
+ steps:
167
+ - id: plan-smoke
168
+ role: smoke_planner
169
+ description: Choose the smallest target-specific smoke path for the runtime surface.
170
+ prompt: |
171
+ Plan runtime smoke for $ARGUMENTS.
172
+ Read {{rollout_plan_path}} if it exists.
173
+ Define the minimal smoke path for {{runtime_target}} and required evidence under {{smoke_evidence_path}}.
174
+ Do not treat sync completion as runtime proof.
175
+ handoff:
176
+ produces:
177
+ - type: summary
178
+ name: smoke_plan
179
+ description: Runtime target, expected route/capability, commands, and evidence requirements.
180
+ - id: collect-smoke
181
+ role: smoke_collector
182
+ depends_on: [plan-smoke]
183
+ description: Run smoke commands and capture canonical runtime evidence.
184
+ prompt: |
185
+ Collect runtime smoke evidence for $ARGUMENTS into {{smoke_evidence_path}}.
186
+ Capture command status, logs, screenshots/UI summaries when relevant, and route/output evidence.
187
+ If smoke cannot run, record the environment blocker instead of claiming success.
188
+ handoff:
189
+ consumes:
190
+ - type: summary
191
+ name: smoke_plan
192
+ from: plan-smoke
193
+ description: Smoke plan.
194
+ produces:
195
+ - type: file
196
+ path: "{{smoke_evidence_path}}"
197
+ description: Runtime smoke evidence directory.
198
+ - id: review-smoke
199
+ role: smoke_reviewer
200
+ depends_on: [collect-smoke]
201
+ description: Review runtime smoke evidence and classify blockers.
202
+ prompt: |
203
+ Review runtime smoke evidence under {{smoke_evidence_path}} for $ARGUMENTS.
204
+ Classify blockers and return PASS, REQUEST_CHANGES, BLOCKED, or INCONCLUSIVE with evidence paths.
205
+ handoff:
206
+ consumes:
207
+ - type: file
208
+ path: "{{smoke_evidence_path}}"
209
+ from: collect-smoke
210
+ description: Runtime smoke evidence.
211
+ produces:
212
+ - type: summary
213
+ name: smoke_review_verdict
214
+ description: Runtime smoke verdict, blockers, and evidence paths.
215
+ - id: manager-route
216
+ role: manager_reviewer
217
+ depends_on: [review-smoke]
218
+ description: Write manager-readable runtime distribution decision.
219
+ prompt: |
220
+ Write {{smoke_review_path}} for $ARGUMENTS.
221
+ Include target, asset, status, blocker classification, evidence paths, next commands, and updated_at.
222
+ State whether rollout, sync, deployed URL verification, or wider distribution is allowed.
223
+ checkpoints:
224
+ - assert: smoke_review_artifact_written
225
+ command: "test -s \"{{smoke_review_path}}\""
226
+ message: "Runtime smoke review artifact must exist before wider rollout."
227
+ action: block
228
+ handoff:
229
+ consumes:
230
+ - type: summary
231
+ name: smoke_review_verdict
232
+ from: review-smoke
233
+ description: Runtime smoke verdict.
234
+ produces:
235
+ - type: file
236
+ path: "{{smoke_review_path}}"
237
+ description: Durable runtime smoke review JSON.
238
+
239
+ controllers:
240
+ runtime-smoke-review:
241
+ name: Runtime Smoke Review
242
+ description: "Review runtime smoke evidence after rollout or sync before wider distribution."
243
+ kind: sequential
244
+ workflow: runtime-smoke-review
245
+ max_rounds: 1
246
+ progress_artifact_path: ".dna/runtime-smoke/$ARGUMENTS.controller.json"
247
+ roles:
248
+ smoke_planner: smoke_planner
249
+ smoke_collector: smoke_collector
250
+ smoke_reviewer: smoke_reviewer
251
+ manager_reviewer: manager_reviewer
252
+ stop_format: configured_stop_report
@@ -0,0 +1,278 @@
1
+ # workflow-verification-command-routing: choose the authoritative verification command and evidence capture path
2
+ # Source: extracted from Flutter rewrite dogfood ACTS/Gallery/AAC verification failures
3
+ # Purpose: prevent false pass/fail evidence caused by running tests from the wrong root, wrong scope, or without canonical summaries
4
+
5
+ version: "0.1.0"
6
+ id: template_workflow_verification_command_routing
7
+ name: Workflow Verification Command Routing
8
+ purpose: Select the authoritative verification command root, scope, and evidence format before completion, adoption, rollout, or sync.
9
+ maturity: reviewed
10
+ fit:
11
+ - Test or verification results from ambiguous roots, packages, or scopes.
12
+ - Completion claims requiring canonical machine-readable evidence.
13
+ not_for:
14
+ - Replacing the actual test command with prose.
15
+ - Treating wrong-root failures as valid product evidence.
16
+ inputs:
17
+ - target module, package, route, or workflow
18
+ - diagnosis or baseline artifact
19
+ - candidate verification command
20
+ outputs:
21
+ - verification route plan
22
+ - routed command output
23
+ - canonical verification summary
24
+ lineage:
25
+ source: Flutter rewrite dogfood verification failures
26
+ reference: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress
27
+ type: project
28
+ namespace: wvcr
29
+
30
+ cascade:
31
+ inherits: ["species:default"]
32
+ priority: 100
33
+
34
+ variables:
35
+ target:
36
+ description: "Module, package, route, or workflow target to verify"
37
+ default: "$ARGUMENTS"
38
+ diagnosis_path:
39
+ description: "Optional diagnosis or baseline artifact path"
40
+ default: ".dna/specs/diagnosis-$ARGUMENTS.md"
41
+ route_plan_path:
42
+ description: "Verification route plan artifact path"
43
+ default: ".dna/verification-routing/$ARGUMENTS.route.json"
44
+ route_verdict_path:
45
+ description: "Verification route review verdict artifact path"
46
+ default: ".dna/verification-routing/$ARGUMENTS.route-verdict.json"
47
+ evidence_dir:
48
+ description: "Directory for routed verification command output"
49
+ default: ".dna/verification-routing/$ARGUMENTS"
50
+ verification_summary_path:
51
+ description: "Canonical verification summary path"
52
+ default: ".dna/verification-routing/$ARGUMENTS.summary.json"
53
+
54
+ evidence:
55
+ - label: Flutter rewrite ACTS wrong-root verification note
56
+ kind: reference
57
+ path: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress/ACTS.md
58
+ description: ACTS dogfood evidence records that running flutter test from the worktree root is invalid because that root has no pubspec.yaml; valid behavior evidence came from the v2 project root.
59
+ - label: Flutter rewrite Gallery package-root verification note
60
+ kind: reference
61
+ path: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress/Gallery.md
62
+ description: Gallery dogfood evidence records that final verification must run from the feature_gallery package root, not the standalone behavior-test directory.
63
+ - label: Flutter rewrite AAC completion evidence
64
+ kind: reference
65
+ path: /Users/samuel/lawark/lwk_flutter_v2-rewrite/.dna/fix-progress/AAC.md
66
+ description: AAC dogfood evidence records canonical status, machine log, parsed summary, red classification, and skipped-test checks before accepting PASS.
67
+
68
+ genes:
69
+ verification_root_must_match_target:
70
+ description: Verification evidence is authoritative only when the command runs from the target's required project/package root
71
+ codons:
72
+ - type: attract
73
+ target: verified_command_root
74
+ - type: attract
75
+ target: target_specific_test_scope
76
+ - type: repel
77
+ target: wrong_root_test_result
78
+ - type: threshold
79
+ condition: "verification_command_root_confirmed == true"
80
+ action: block
81
+
82
+ canonical_machine_evidence_required:
83
+ description: Completion and manager review require machine-readable verification output plus parsed summary/classification artifacts
84
+ codons:
85
+ - type: attract
86
+ target: machine_log_capture
87
+ - type: attract
88
+ target: parsed_summary_capture
89
+ - type: attract
90
+ target: red_classification_capture
91
+ - type: repel
92
+ target: console_summary_only
93
+ - type: threshold
94
+ condition: "canonical_verification_summary_written == true"
95
+ action: block
96
+
97
+ invalid_verification_is_not_progress:
98
+ description: Environment, dependency, wrong-root, stale-scope, and no-test-found failures must be classified before acting on them
99
+ codons:
100
+ - type: attract
101
+ target: verification_blocker_classification
102
+ - type: repel
103
+ target: invalid_run_as_product_failure
104
+ - type: repel
105
+ target: green_run_without_scope_check
106
+ - type: sense
107
+ signal: invalid_verification_route
108
+ response: request_route_replan
109
+
110
+ contexts: {}
111
+
112
+ roles:
113
+ route_planner:
114
+ description: Finds the authoritative verification root, command, target scope, and required evidence artifacts before a test/analyze/build command runs.
115
+ tool_permissions:
116
+ allow: [Read, Write, Grep, Glob]
117
+ deny: [Edit, Bash, NotebookEdit]
118
+ scope:
119
+ read: ["**/*", ".dna/**", "docs/**"]
120
+ write: [".dna/verification-routing/**"]
121
+ instructions:
122
+ - Read {{diagnosis_path}} when it exists and identify the target module/package/workflow being verified.
123
+ - Inspect project/package roots before proposing a command; do not assume the repository root is the runnable root.
124
+ - Choose the smallest command that proves {{target}} while preserving authoritative evidence.
125
+ - Write {{route_plan_path}} with cwd, command, expected test files or routes, machine/log outputs, parsed summary, red classification, and skipped-test comparison requirements.
126
+ - If no authoritative command can be chosen, classify the blocker instead of inventing a green path.
127
+
128
+ route_reviewer:
129
+ description: Reviews the proposed verification route for wrong-root, stale-scope, missing evidence, or weak partial-run risk.
130
+ tool_permissions:
131
+ allow: [Read, Write, Grep, Glob]
132
+ deny: [Edit, Bash, NotebookEdit]
133
+ scope:
134
+ read: ["**/*", ".dna/**", "docs/**"]
135
+ write: [".dna/verification-routing/**"]
136
+ instructions:
137
+ - Read {{route_plan_path}} before judging the route.
138
+ - Reject routes that run from a directory without the required project/package context.
139
+ - Reject routes that do not produce machine-readable output, command status, parsed summary, and red/skipped classification when those artifacts are required.
140
+ - Distinguish a valid focused command from weak partial evidence.
141
+ - Write {{route_verdict_path}} with APPROVE, REQUEST_CHANGES, or BLOCKED and evidence paths.
142
+
143
+ evidence_runner:
144
+ description: Runs only the reviewed verification route and records canonical command evidence.
145
+ tool_permissions:
146
+ allow: [Read, Write, Grep, Glob, Bash]
147
+ deny: [Edit, NotebookEdit]
148
+ scope:
149
+ read: ["**/*", ".dna/**", "docs/**"]
150
+ write: [".dna/verification-routing/**"]
151
+ instructions:
152
+ - Run only the command from {{route_plan_path}} after {{route_verdict_path}} approves the route.
153
+ - Capture command status, stdout/stderr or machine logs, parsed summary, red classification, skipped comparison, cwd, and timestamps under {{evidence_dir}}.
154
+ - If the command cannot run, record WRONG_ROOT, DEPENDENCY, NO_TEST_FOUND, STALE_SCOPE, INFRA, or INCONCLUSIVE instead of treating it as product failure or success.
155
+ - Do not edit app code, tests, templates, organization profiles, dashboard state, or runtime sync artifacts.
156
+
157
+ manager_reviewer:
158
+ description: Produces a manager-readable verification route decision before completion audit, adoption, rollout, or sync.
159
+ tool_permissions:
160
+ allow: [Read, Write, Grep, Glob]
161
+ deny: [Edit, Bash, NotebookEdit]
162
+ scope:
163
+ read: ["**/*", ".dna/**", "docs/**"]
164
+ write: [".dna/verification-routing/**"]
165
+ instructions:
166
+ - Write {{verification_summary_path}} with target, cwd, command, status, blocker classification, evidence paths, counts, and next commands.
167
+ - State whether the evidence may feed completion audit, manager review, adoption, rollout, evolution preview, or runtime sync.
168
+ - If the route is invalid, send the work back to route planning rather than completion audit.
169
+ - Keep Obsidian/wiki as internal memory only; use command artifacts as product evidence.
170
+
171
+ workflows:
172
+ verification-command-routing:
173
+ name: Verification Command Routing
174
+ description: Plan, review, run, and record the authoritative verification command before completion, adoption, rollout, or sync decisions.
175
+ steps:
176
+ - id: plan-route
177
+ role: route_planner
178
+ description: Identify the verification root, command, target scope, and required artifacts.
179
+ prompt: |
180
+ Plan the authoritative verification route for $ARGUMENTS.
181
+ Read {{diagnosis_path}} when present.
182
+ Write {{route_plan_path}} with cwd, command, target files/routes, machine/log output, parsed summary, red classification, and skipped comparison requirements.
183
+ Do not assume the repository root is the runnable root.
184
+ checkpoints:
185
+ - assert: route_plan_written
186
+ command: "test -s \"{{route_plan_path}}\""
187
+ message: "Verification route plan must be written before route review."
188
+ action: block
189
+ handoff:
190
+ produces:
191
+ - type: file
192
+ path: "{{route_plan_path}}"
193
+ description: Proposed cwd, command, target scope, expected artifacts, and invalid-route risks.
194
+ - id: review-route
195
+ role: route_reviewer
196
+ depends_on: [plan-route]
197
+ description: Review the route before any command is run.
198
+ prompt: |
199
+ Review the verification route for $ARGUMENTS.
200
+ Read {{route_plan_path}}.
201
+ Reject wrong-root, stale-scope, missing-artifact, weak partial-run, or no-test-found routes.
202
+ Write {{route_verdict_path}} with APPROVE, REQUEST_CHANGES, or BLOCKED.
203
+ checkpoints:
204
+ - assert: route_verdict_written
205
+ command: "test -s \"{{route_verdict_path}}\""
206
+ message: "Verification route verdict must be written before command execution."
207
+ action: block
208
+ handoff:
209
+ consumes:
210
+ - type: file
211
+ path: "{{route_plan_path}}"
212
+ from: plan-route
213
+ description: Verification route plan.
214
+ produces:
215
+ - type: file
216
+ path: "{{route_verdict_path}}"
217
+ description: Reviewed route verdict and required changes.
218
+ - id: run-evidence
219
+ role: evidence_runner
220
+ depends_on: [review-route]
221
+ description: Run the reviewed command and capture canonical verification evidence.
222
+ prompt: |
223
+ Run the reviewed verification route for $ARGUMENTS.
224
+ Use {{route_plan_path}} and require APPROVE in {{route_verdict_path}} before running any command.
225
+ Capture command status, cwd, output, machine/log evidence, parsed summary, red classification, skipped comparison, and timestamps under {{evidence_dir}}.
226
+ If the route is invalid, classify the blocker instead of claiming success or failure.
227
+ handoff:
228
+ consumes:
229
+ - type: file
230
+ path: "{{route_plan_path}}"
231
+ from: plan-route
232
+ description: Approved verification route plan.
233
+ - type: file
234
+ path: "{{route_verdict_path}}"
235
+ from: review-route
236
+ description: Approved verification route verdict.
237
+ produces:
238
+ - type: file
239
+ path: "{{evidence_dir}}"
240
+ description: Routed verification evidence directory.
241
+ - id: manager-route
242
+ role: manager_reviewer
243
+ depends_on: [run-evidence]
244
+ description: Write manager-readable route decision for downstream completion/adoption/sync gates.
245
+ prompt: |
246
+ Write {{verification_summary_path}} for $ARGUMENTS.
247
+ Include target, cwd, command, status, blocker classification, evidence paths, counts, next commands, and updated_at.
248
+ State whether completion audit, adoption, rollout, evolution preview, or sync may proceed.
249
+ checkpoints:
250
+ - assert: verification_summary_written
251
+ command: "test -s \"{{verification_summary_path}}\""
252
+ message: "Verification summary must exist before completion audit or rollout decisions."
253
+ action: block
254
+ handoff:
255
+ consumes:
256
+ - type: file
257
+ path: "{{evidence_dir}}"
258
+ from: run-evidence
259
+ description: Verification evidence directory.
260
+ produces:
261
+ - type: file
262
+ path: "{{verification_summary_path}}"
263
+ description: Durable verification route summary.
264
+
265
+ controllers:
266
+ verification-command-routing:
267
+ name: Verification Command Routing
268
+ description: "Route verification commands to the authoritative root/scope and capture canonical evidence before completion or rollout decisions."
269
+ kind: sequential
270
+ workflow: verification-command-routing
271
+ max_rounds: 1
272
+ progress_artifact_path: ".dna/verification-routing/$ARGUMENTS.controller.json"
273
+ roles:
274
+ route_planner: route_planner
275
+ route_reviewer: route_reviewer
276
+ evidence_runner: evidence_runner
277
+ manager_reviewer: manager_reviewer
278
+ stop_format: configured_stop_report
@@ -0,0 +1,67 @@
1
+ import { WORKFLOW_AUTHORING_SCHEMA } from "../schema/workflow-authoring-contract.js";
2
+ export declare const AUTHORING_PACKET_SCHEMA_VERSION = "intentdna.authoring_packet.v1";
3
+ export interface AuthoringPacketOptions {
4
+ goal?: string;
5
+ projectDir?: string;
6
+ generatedAt?: string;
7
+ exampleTemplates?: readonly string[];
8
+ }
9
+ export interface AuthoringPacketExample {
10
+ name: string;
11
+ display_name?: string;
12
+ source_path: string;
13
+ content_hash: string;
14
+ annotation: string;
15
+ c1_metadata: Record<string, unknown>;
16
+ workflow_keys: string[];
17
+ role_keys: string[];
18
+ yaml: string;
19
+ }
20
+ export interface AuthoringPacket {
21
+ schema_version: typeof AUTHORING_PACKET_SCHEMA_VERSION;
22
+ generated_at: string;
23
+ network_performed: false;
24
+ mutation_performed: false;
25
+ runtime_authority: false;
26
+ project_context: {
27
+ root: string;
28
+ handling: "local_path_only";
29
+ explicitly_requested: boolean;
30
+ };
31
+ goal_context?: {
32
+ raw: string;
33
+ handling: "opaque_context_only";
34
+ goal_modeling_performed: false;
35
+ };
36
+ asset_contract: {
37
+ source: string;
38
+ required_fields: readonly string[];
39
+ recommended_fields: readonly string[];
40
+ validation_required_fields: readonly string[];
41
+ validation_notes: readonly string[];
42
+ directory_protocol: {
43
+ builtin_templates: string;
44
+ project_templates: string;
45
+ candidate_staging: string;
46
+ };
47
+ compatibility: string[];
48
+ };
49
+ schema_constraints: typeof WORKFLOW_AUTHORING_SCHEMA;
50
+ red_lines: string[];
51
+ examples: AuthoringPacketExample[];
52
+ interview_protocol: Array<{
53
+ id: string;
54
+ question: string;
55
+ required_output: string;
56
+ }>;
57
+ validate_loop: Array<{
58
+ step: string;
59
+ command?: string;
60
+ owner: "external_agent" | "human" | "dna";
61
+ writes: boolean;
62
+ repeat_until?: string;
63
+ }>;
64
+ handoff_boundary: string[];
65
+ next_commands: string[];
66
+ }
67
+ export declare function buildAuthoringPacket(options?: AuthoringPacketOptions): Promise<AuthoringPacket>;