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
@@ -1,3 +1,123 @@
1
+ export const WORKFLOW_ASSET_IDS = {
2
+ default: "flutter-rewrite",
3
+ behaviorLock: "flutter-behavior-lock",
4
+ refactoringRescue: "flutter-refactoring-rescue",
5
+ rewriteDiagnosisReview: "flutter-rewrite-diagnosis-review",
6
+ rewriteFixReviewLoop: "flutter-rewrite-fix-review-loop",
7
+ rewriteActiveFollowup: "flutter-rewrite-active-followup",
8
+ author: "workflow-author",
9
+ blockedScopeTriage: "workflow-blocked-scope-triage",
10
+ crossBoundaryResourceApproval: "workflow-cross-boundary-resource-approval",
11
+ verificationCommandRouting: "workflow-verification-command-routing",
12
+ };
13
+ export const WORKFLOW_SUGGESTION_IDS = {
14
+ activeFollowup: "template-active-followup",
15
+ blockedTriage: "template-blocked-triage",
16
+ c5CapturedRunFacts: "c5-captured-run-facts",
17
+ crossBoundaryResourceApproval: "template-cross-boundary-resource-approval",
18
+ modelVerifier: "template-model-verifier",
19
+ };
20
+ const REWRITE_GOVERNANCE_INTENT = {
21
+ keywords: [
22
+ "logic equivalence",
23
+ "逻辑对等",
24
+ "behavior preserving",
25
+ "behavior-preserving",
26
+ "行为保持",
27
+ "行为锁定",
28
+ "意图锁定",
29
+ "v1/v2",
30
+ "v1 to v2",
31
+ "精准改写",
32
+ ],
33
+ signal: "rewrite-governance-intent",
34
+ weight: 5,
35
+ };
36
+ const FLUTTER_DOMAIN_INTENT = {
37
+ keywords: ["flutter"],
38
+ signal: "flutter-domain",
39
+ weight: 2,
40
+ };
41
+ const REFACTORING_RESCUE_INTENT = {
42
+ keywords: [
43
+ "rescue",
44
+ "migrated but broken",
45
+ "broken migration",
46
+ "already migrated",
47
+ "already done",
48
+ "feature chain",
49
+ "one chain at a time",
50
+ "v1 is oracle",
51
+ "v1 as oracle",
52
+ "迁移救援",
53
+ "链路修复",
54
+ ],
55
+ signal: "refactoring-rescue-intent",
56
+ weight: 12,
57
+ };
58
+ const BLOCKED_SCOPE_INTENT = {
59
+ keywords: [
60
+ "blocked scope",
61
+ "blocked triage",
62
+ "blocked by review",
63
+ "needs human",
64
+ "human approval",
65
+ "outside diagnosis",
66
+ "outside scope",
67
+ "deferred scope",
68
+ "intentionally deferred",
69
+ "remaining skipped",
70
+ "人工确认",
71
+ "超出诊断范围",
72
+ ],
73
+ signal: "blocked-scope-intent",
74
+ weight: 12,
75
+ };
76
+ const CROSS_BOUNDARY_RESOURCE_INTENT = {
77
+ keywords: [
78
+ "cross boundary",
79
+ "cross-boundary",
80
+ "shared resource",
81
+ "localization",
82
+ "i18n",
83
+ "translation key",
84
+ "resource approval",
85
+ "shared config",
86
+ "shared package",
87
+ "outside diagnosis",
88
+ "outside scope",
89
+ "跨边界",
90
+ "共享资源",
91
+ "本地化",
92
+ "国际化",
93
+ "资源审批",
94
+ "超出诊断范围",
95
+ ],
96
+ signal: "cross-boundary-resource-intent",
97
+ weight: 14,
98
+ };
99
+ const VERIFICATION_ROUTING_INTENT = {
100
+ keywords: [
101
+ "verification command",
102
+ "test command",
103
+ "test command routing",
104
+ "wrong root",
105
+ "wrong cwd",
106
+ "package root",
107
+ "test root",
108
+ "machine log",
109
+ "parsed summary",
110
+ "red classification",
111
+ "canonical verification",
112
+ "verification route",
113
+ "验证命令",
114
+ "测试目录",
115
+ "运行目录",
116
+ "证据采集",
117
+ ],
118
+ signal: "verification-routing-intent",
119
+ weight: 12,
120
+ };
1
121
  export const TEMPLATE_MATCH_METADATA = [
2
122
  { name: "code-review-pipeline", keywords: ["review", "code review", "pr review", "pull request", "审查"] },
3
123
  { name: "safe-refactoring", keywords: ["refactor", "refactoring", "restructure", "rewrite safely", "重构"] },
@@ -5,6 +125,14 @@ export const TEMPLATE_MATCH_METADATA = [
5
125
  { name: "full-pipeline", keywords: ["pipeline", "plan implement test", "full workflow", "完整流水线"] },
6
126
  { name: "systematic-debugging", keywords: ["debug", "debugging", "bug fix", "troubleshoot", "调试"] },
7
127
  { name: "verification-loop", keywords: ["verify", "verification", "validate", "check", "验证"] },
128
+ { name: "workflow-evidence-review", keywords: ["evidence review", "evidence package", "manager review", "adoption review", "evolution gate", "workflow evidence", "证据审查"] },
129
+ { name: WORKFLOW_ASSET_IDS.crossBoundaryResourceApproval, keywords: ["cross boundary", "cross-boundary", "shared resource", "localization", "i18n", "translation key", "resource approval", "outside diagnosis", "outside scope", "shared config", "跨边界", "共享资源", "本地化", "国际化", "资源审批", "超出诊断范围"], intent_signals: [CROSS_BOUNDARY_RESOURCE_INTENT] },
130
+ { name: WORKFLOW_ASSET_IDS.blockedScopeTriage, keywords: ["blocked scope", "blocked triage", "skip triage", "skipped tests", "deferred scope", "intentionally deferred", "blocked items", "remaining skipped", "blocked by review", "needs human", "human approval", "outside diagnosis", "outside scope", "阻塞", "人工确认", "超出诊断范围", "跳过", "延期"], intent_signals: [BLOCKED_SCOPE_INTENT] },
131
+ { name: "workflow-completion-audit", keywords: ["completion audit", "completion gate", "pass audit", "pass allowed", "done audit", "remaining work", "unimplemented skipped", "prove completion", "完成审计", "完成检查", "剩余工作"] },
132
+ { name: "workflow-runtime-smoke-review", keywords: ["runtime smoke", "smoke review", "sync verification", "post sync", "rollout smoke", "runtime distribution", "e2e smoke", "deployed url verification", "下发验收", "同步后验证", "运行面验收"] },
133
+ { name: WORKFLOW_ASSET_IDS.author, keywords: ["workflow author", "author workflow", "authoring packet", "create workflow", "new workflow", "workflow builder", "工作流创作", "创建工作流"] },
134
+ { name: "workflow-module-inventory", keywords: ["module inventory", "feature inventory", "global scan", "module scan", "page action inventory", "module priority", "workflow inventory", "全局扫描", "模块盘点", "功能清单", "动作清单"] },
135
+ { name: WORKFLOW_ASSET_IDS.verificationCommandRouting, keywords: ["verification command", "test command routing", "wrong root", "wrong cwd", "package root", "test root", "machine log", "parsed summary", "red classification", "canonical verification", "verification route", "验证命令", "测试目录", "运行目录", "证据采集"], intent_signals: [VERIFICATION_ROUTING_INTENT] },
8
136
  { name: "secure-dev", keywords: ["security", "secure", "owasp", "vulnerability", "安全"] },
9
137
  { name: "enterprise-baseline", keywords: ["enterprise", "organization", "company", "corporate", "企业"] },
10
138
  { name: "frontend-quality", keywords: ["frontend", "react", "vue", "css", "ui", "前端"] },
@@ -13,9 +141,11 @@ export const TEMPLATE_MATCH_METADATA = [
13
141
  { name: "documentation-writer", keywords: ["doc", "documentation", "readme", "wiki", "文档"] },
14
142
  { name: "devops-cicd", keywords: ["devops", "ci", "cd", "deploy", "pipeline", "运维"] },
15
143
  { name: "monorepo-governance", keywords: ["monorepo", "workspace", "packages", "governance"] },
16
- { name: "flutter-behavior-lock", keywords: ["flutter", "behavior lock", "behavior spec", "行为锁定"] },
17
- { name: "flutter-rewrite", keywords: ["flutter", "rewrite", "migration", "flutter rewrite"] },
18
- { name: "flutter-refactoring-rescue", keywords: ["flutter", "rescue", "refactoring rescue"] },
144
+ { name: WORKFLOW_ASSET_IDS.behaviorLock, keywords: ["flutter", "behavior lock", "behavior spec", "行为锁定"] },
145
+ { name: WORKFLOW_ASSET_IDS.default, keywords: ["flutter", "rewrite", "migration", "flutter rewrite", "logic equivalence", "逻辑对等", "意图锁定", "精准改写", "行为保持"], intent_signals: [REWRITE_GOVERNANCE_INTENT, FLUTTER_DOMAIN_INTENT] },
146
+ { name: WORKFLOW_ASSET_IDS.rewriteDiagnosisReview, keywords: ["diagnosis review", "classify before editing", "rewrite diagnosis", "diagnosis gate", "v1/v2 evidence", "flutter diagnosis", "诊断审查", "先诊断"] },
147
+ { name: "flutter-rewrite-new", keywords: ["flutter", "rewrite", "migration", "governed rewrite", "flutter rewrite new"] },
148
+ { name: WORKFLOW_ASSET_IDS.refactoringRescue, keywords: ["flutter", "rescue", "refactoring rescue", "migrated but broken", "broken migration", "already migrated", "already done", "feature chain", "one feature chain", "one chain at a time", "v1 is oracle", "v1 as oracle", "rescue small steps", "迁移救援", "链路修复", "v1事实源"], intent_signals: [REFACTORING_RESCUE_INTENT, FLUTTER_DOMAIN_INTENT] },
19
149
  { name: "multi-perspective-review", keywords: ["multi perspective", "multiple reviewer", "多角度"] },
20
150
  { name: "subagent-parallel", keywords: ["parallel", "subagent", "concurrent", "并行"] },
21
151
  { name: "yolo-with-guardrails", keywords: ["yolo", "fast", "guardrails", "move fast"] },
@@ -25,6 +155,9 @@ export const TEMPLATE_MATCH_METADATA = [
25
155
  { name: "migration-safety", keywords: ["migration", "migrate", "upgrade", "database migration", "dependency upgrade", "迁移"] },
26
156
  { name: "incident-response", keywords: ["incident", "production issue", "hotfix", "outage", "postmortem", "事故"] },
27
157
  { name: "performance-audit", keywords: ["performance", "profiling", "benchmark", "optimize", "latency", "性能"] },
158
+ { name: "ui-visual-regression-qa", keywords: ["ui qa", "visual regression", "screenshot qa", "responsive", "overflow", "视觉回归", "界面验收"] },
159
+ { name: "release-evidence-gate", keywords: ["release evidence", "deploy gate", "vercel verification", "deployed url", "release gate", "发布证据", "部署门禁"] },
160
+ { name: "multi-agent-handoff-coordination", keywords: ["multi-agent", "handoff", "parallel lanes", "worktree coordination", "lane isolation", "多智能体", "交接"] },
28
161
  ];
29
162
  const TEMPLATE_MATCH_METADATA_BY_NAME = new Map(TEMPLATE_MATCH_METADATA.map((entry) => [entry.name, entry]));
30
163
  export function getTemplateMatchMetadata(name) {
@@ -4,6 +4,25 @@
4
4
  version: "0.1.0"
5
5
  id: template_mobile_dev
6
6
  name: Mobile Development Standards
7
+ purpose: Provide a mobile development baseline for quality, performance, security, and platform-specific review.
8
+ maturity: draft
9
+ fit:
10
+ - Flutter, React Native, iOS, or Android projects needing local mobile guardrails.
11
+ - Mobile tasks where performance and security constraints should be explicit.
12
+ not_for:
13
+ - Replacing app-specific behavior locks, device QA, or release smoke evidence.
14
+ - Treating generic mobile standards as a complete workflow asset.
15
+ inputs:
16
+ - mobile feature or module scope
17
+ - platform and device constraints
18
+ - quality, performance, and security requirements
19
+ outputs:
20
+ - mobile development guardrails
21
+ - performance and security review notes
22
+ - platform-specific quality checklist
23
+ lineage:
24
+ source: built-in mobile development standards template
25
+ reference: src/templates/mobile-dev.dna.yaml
7
26
  type: project
8
27
  namespace: mob
9
28
 
@@ -0,0 +1,156 @@
1
+ version: "0.1.0"
2
+ id: template_multi_agent_handoff_coordination
3
+ name: Multi-Agent Handoff Coordination
4
+ purpose: Coordinate parallel agent lanes through isolated scopes, machine-checkable handoffs, and an explicit integration review.
5
+ maturity: reviewed
6
+ fit:
7
+ - Large tasks that need multiple agents working on disjoint write scopes.
8
+ - Integration work where each lane must report evidence before merge or adoption.
9
+ not_for:
10
+ - Unbounded parallel work without ownership or conflict escalation.
11
+ - Letting worker lanes rewrite the global plan or hide shared-file conflicts.
12
+ inputs:
13
+ - feature, bug, or productization scope
14
+ - lane ownership and write boundaries
15
+ - per-lane handoff artifacts
16
+ outputs:
17
+ - coordination artifact directory
18
+ - lane handoff evidence
19
+ - final integration plan
20
+ lineage:
21
+ source: Codex/OMX multi-agent handoff pattern
22
+ reference: docs/archive/2026H1/references/branch-consolidation-handoff-20260709.md
23
+ type: project
24
+ namespace: mah
25
+
26
+ cascade:
27
+ inherits: ["species:default"]
28
+ priority: 100
29
+
30
+ variables:
31
+ task_scope:
32
+ description: "Feature, bug, or productization scope to split"
33
+ default: "$ARGUMENTS"
34
+ handoff_dir:
35
+ description: "Coordination and handoff artifact directory"
36
+ default: ".dna/handoffs/$ARGUMENTS"
37
+ integration_plan_path:
38
+ description: "Final integration plan artifact"
39
+ default: ".dna/handoffs/$ARGUMENTS.integration.json"
40
+
41
+ evidence:
42
+ - label: Parallel productization boundary
43
+ kind: doc
44
+ path: docs/archive/2026H1/references/three-products-boundary.md
45
+ description: Route-lock reference for keeping lanes isolated and preserving product boundaries.
46
+
47
+ genes:
48
+ lane_isolation:
49
+ description: Parallel agents must own disjoint write scopes and report conflicts upward
50
+ codons:
51
+ - type: attract
52
+ target: explicit_write_scope_per_lane
53
+ - type: attract
54
+ target: independent_commits_per_lane
55
+ - type: repel
56
+ target: shared_file_freelancing
57
+ - type: threshold
58
+ condition: "lane_write_scopes_overlap == false"
59
+ action: block
60
+
61
+ handoff_evidence:
62
+ description: Every lane must produce a machine-checkable handoff before integration
63
+ codons:
64
+ - type: attract
65
+ target: changed_files_list
66
+ - type: attract
67
+ target: verification_command_output
68
+ - type: attract
69
+ target: boundary_tests
70
+ - type: threshold
71
+ condition: "handoff_artifact_present == true"
72
+ action: block
73
+
74
+ integration_review:
75
+ description: Integration must review boundaries before merging lane results
76
+ codons:
77
+ - type: attract
78
+ target: route_lock_recheck
79
+ - type: repel
80
+ target: mixed_diff_commit
81
+ - type: sense
82
+ signal: boundary_drift_detected
83
+ response: block_integration
84
+
85
+ contexts: {}
86
+
87
+ roles:
88
+ coordinator:
89
+ description: Splits work into independent lanes and owns integration review.
90
+ tool_permissions:
91
+ allow: [Read, Write, Grep, Glob, Bash]
92
+ deny: [Edit, NotebookEdit]
93
+ scope:
94
+ read: ["**/*", "docs/**", ".omx/plans/**"]
95
+ write: [".dna/handoffs/**"]
96
+ instructions:
97
+ - Read the route-lock docs before assigning lanes.
98
+ - Define each lane with owner, write scope, acceptance tests, verification commands, and boundary risks.
99
+ - Reject lanes with overlapping write scopes unless sequenced explicitly.
100
+ - Write coordination artifacts under {{handoff_dir}}.
101
+
102
+ lane_executor:
103
+ description: Executes one assigned lane inside its write scope.
104
+ tool_permissions:
105
+ allow: [Read, Edit, Write, Grep, Glob, Bash]
106
+ scope:
107
+ read: ["**/*"]
108
+ write: ["src/**", "apps/**", "test/**", "docs/**", ".dna/handoffs/**"]
109
+ instructions:
110
+ - Execute only the assigned lane and stay within the declared write scope.
111
+ - Do not revert unrelated edits or incidental local state.
112
+ - Run lane verification and write a handoff with changed files, tests, boundary checks, and residual risks.
113
+ - Escalate scope conflicts to the coordinator instead of editing shared files silently.
114
+
115
+ integration_reviewer:
116
+ description: Reviews lane handoffs, boundary compliance, and final integration order.
117
+ tool_permissions:
118
+ allow: [Read, Write, Grep, Glob, Bash]
119
+ deny: [Edit, NotebookEdit]
120
+ scope:
121
+ read: ["**/*", ".dna/handoffs/**"]
122
+ write: [".dna/handoffs/**"]
123
+ instructions:
124
+ - Read all lane handoffs before integration.
125
+ - Verify each lane has separate commits or a clean staged diff.
126
+ - Check local runtime truth, marketplace, online projection, hidden transport, and external-reference boundaries.
127
+ - Write {{integration_plan_path}} with merge order, blockers, verification commands, and final audit checklist.
128
+
129
+ workflows:
130
+ coordinate-handoffs:
131
+ name: Multi-Agent Handoff Coordination
132
+ description: Split independent lanes, execute scoped work, and review handoffs before integration.
133
+ steps:
134
+ - id: split-lanes
135
+ role: coordinator
136
+ description: Define independent lanes and handoff requirements.
137
+ prompt: |
138
+ Split {{task_scope}} into independent lanes.
139
+ For each lane, define owner, write scope, acceptance tests, verification commands, and product-boundary risks.
140
+ Write lane specs under {{handoff_dir}}.
141
+ - id: execute-lane
142
+ role: lane_executor
143
+ depends_on: [split-lanes]
144
+ description: Execute an assigned lane and write its handoff.
145
+ prompt: |
146
+ Execute only your assigned lane for {{task_scope}}.
147
+ Stay within the declared write scope.
148
+ Write a handoff under {{handoff_dir}} with changed files, tests, boundary checks, and residual risks.
149
+ - id: review-integration
150
+ role: integration_reviewer
151
+ depends_on: [execute-lane]
152
+ description: Review handoffs and write the final integration plan.
153
+ prompt: |
154
+ Review all handoffs under {{handoff_dir}}.
155
+ Verify lane isolation, boundary compliance, and required tests.
156
+ Write {{integration_plan_path}} with integration order and final audit checklist.
@@ -6,6 +6,25 @@
6
6
  version: "0.1.0"
7
7
  id: template_multi_perspective_review
8
8
  name: Multi-Perspective Review
9
+ purpose: Review high-risk decisions from opposing perspectives and produce an explicit arbitration verdict.
10
+ maturity: reviewed
11
+ fit:
12
+ - Architecture, product, or implementation choices with meaningful tradeoffs.
13
+ - Changes that need advocate, critic, and arbiter separation before adoption.
14
+ not_for:
15
+ - Rubber-stamp reviews or vague opinions without actionable evidence.
16
+ - Replacing owner approval for destructive or business decisions.
17
+ inputs:
18
+ - proposed change or decision
19
+ - supporting evidence and alternatives
20
+ - risk and constraint context
21
+ outputs:
22
+ - advocate review
23
+ - critic review
24
+ - arbiter decision and follow-up actions
25
+ lineage:
26
+ source: multi-role debate and review workflow pattern
27
+ reference: src/templates/multi-perspective-review.dna.yaml
9
28
  type: project
10
29
  namespace: mpr
11
30
 
@@ -1,6 +1,25 @@
1
1
  version: "0.1.0"
2
2
  id: template_persistent_executor
3
3
  name: Persistent Executor (PRD-Driven)
4
+ purpose: Execute PRD-backed stories to completion with acceptance criteria, verification, and explicit remaining-work reporting.
5
+ maturity: reviewed
6
+ fit:
7
+ - Story or PRD-driven implementation where completion must map to acceptance criteria.
8
+ - Work that benefits from separate executor and verifier roles.
9
+ not_for:
10
+ - Open-ended exploration without a task spec.
11
+ - Claiming partial work as done without explicit remaining scope.
12
+ inputs:
13
+ - PRD or story specification
14
+ - acceptance criteria
15
+ - verification commands
16
+ outputs:
17
+ - implemented story diff
18
+ - verifier evidence
19
+ - completion or remaining-work report
20
+ lineage:
21
+ source: PRD-driven persistent execution workflow
22
+ reference: src/templates/persistent-executor.dna.yaml
4
23
  type: project
5
24
  namespace: pe
6
25
 
@@ -1,6 +1,24 @@
1
1
  version: "0.1.0"
2
2
  id: template_qa_loop
3
3
  name: QA Loop (Test-Fix Cycle)
4
+ purpose: Drive a bounded test-fix loop with separate tester and fixer roles until evidence converges or blockers are explicit.
5
+ maturity: reviewed
6
+ fit:
7
+ - Test failures that need diagnosis, prioritized fixes, and repeated verification.
8
+ - Separating evidence collection from code modification.
9
+ not_for:
10
+ - Infinite retry loops without progress tracking.
11
+ - Self-approval by the same role that made the fix.
12
+ inputs:
13
+ - failing test output
14
+ - changed code scope
15
+ - previous round evidence
16
+ outputs:
17
+ - categorized failures
18
+ - scoped fixes
19
+ - convergence or blocker report
20
+ lineage:
21
+ source: test-fix cycle template
4
22
  type: project
5
23
  namespace: ql
6
24
 
@@ -0,0 +1,131 @@
1
+ version: "0.1.0"
2
+ id: template_release_evidence_gate
3
+ name: Release Evidence Gate
4
+ purpose: Require release deploy-plan and deployed-route evidence before public web or release completion claims.
5
+ maturity: reviewed
6
+ fit:
7
+ - Public web, release, or deploy changes that need deployed URL verification.
8
+ - Teams separating local build/test readiness from production release evidence.
9
+ not_for:
10
+ - Treating local preview, screenshots, or successful deploy commands as release completion.
11
+ - Moving workflow execution or runtime authority into Online.
12
+ inputs:
13
+ - changed files or release scope
14
+ - release deploy-plan JSON
15
+ - deployed URL and checked routes
16
+ outputs:
17
+ - read-only release plan
18
+ - release verification evidence
19
+ - release boundary decision
20
+ lineage:
21
+ source: IntentDNA release runbook and Online V2 release evidence
22
+ reference: docs/archive/2026H1/workflows/release-runbook.md
23
+ type: project
24
+ namespace: reg
25
+
26
+ cascade:
27
+ inherits: ["species:default"]
28
+ priority: 100
29
+
30
+ variables:
31
+ changed_files:
32
+ description: "Changed files or release scope"
33
+ default: "$ARGUMENTS"
34
+ release_plan_path:
35
+ description: "Read-only release deploy-plan JSON"
36
+ default: ".dna/release/$ARGUMENTS.deploy-plan.json"
37
+ release_evidence_path:
38
+ description: "Release verification evidence artifact"
39
+ default: ".dna/release/$ARGUMENTS.evidence.json"
40
+
41
+ evidence:
42
+ - label: Three-product deployment boundary
43
+ kind: doc
44
+ path: docs/archive/2026H1/references/three-products-boundary.md
45
+ description: Boundary that deployment is separate from runtime sync and online projection must not become policy truth.
46
+
47
+ genes:
48
+ deploy_plan_before_deploy:
49
+ description: Public web release work must run deploy-plan before any deploy claim
50
+ codons:
51
+ - type: attract
52
+ target: run_release_deploy_plan
53
+ - type: repel
54
+ target: deploy_without_gate
55
+ - type: threshold
56
+ condition: "deploy_plan_status_known == true"
57
+ action: block
58
+
59
+ deployed_url_verification:
60
+ description: A web deploy is incomplete until the deployed URL is verified
61
+ codons:
62
+ - type: attract
63
+ target: verify_public_routes_after_deploy
64
+ - type: attract
65
+ target: record_deployment_url
66
+ - type: repel
67
+ target: build_as_deploy_evidence
68
+ - type: threshold
69
+ condition: "required_deployed_routes_verified == true"
70
+ action: block
71
+
72
+ release_boundary:
73
+ description: Release verification does not execute workflows or runtime policy
74
+ codons:
75
+ - type: threshold
76
+ condition: "release_gate_executed_runtime_sync == false"
77
+ action: block
78
+ - type: repel
79
+ target: online_dashboard_as_policy_truth
80
+
81
+ contexts: {}
82
+
83
+ roles:
84
+ release_planner:
85
+ description: Runs the read-only deploy-plan gate and decides required release evidence.
86
+ tool_permissions:
87
+ allow: [Read, Write, Grep, Glob, Bash]
88
+ deny: [Edit, NotebookEdit]
89
+ scope:
90
+ read: ["**/*"]
91
+ write: [".dna/release/**"]
92
+ instructions:
93
+ - Run dna release deploy-plan for {{changed_files}} and save JSON to {{release_plan_path}}.
94
+ - If deployment_required, list exact local build/test/deploy/readiness/URL verification commands.
95
+ - If not required, record why no Vercel deployment is needed.
96
+ - Do not deploy, sync runtime artifacts, or change dashboard state in this role.
97
+
98
+ release_verifier:
99
+ description: Verifies release evidence after local commands and any required deployed URL checks.
100
+ tool_permissions:
101
+ allow: [Read, Write, Grep, Glob, Bash]
102
+ deny: [Edit, NotebookEdit]
103
+ scope:
104
+ read: ["**/*", ".dna/release/**"]
105
+ write: [".dna/release/**"]
106
+ instructions:
107
+ - Read {{release_plan_path}} before running verification.
108
+ - Run only commands required by the plan and capture outputs.
109
+ - If deployment is required, record deployment URL plus checked routes.
110
+ - Write {{release_evidence_path}} with status, commands, URLs, blockers, and boundary notes.
111
+
112
+ workflows:
113
+ release-gate:
114
+ name: Release Evidence Gate
115
+ description: Decide whether deploy is required, then verify release evidence without moving runtime authority.
116
+ steps:
117
+ - id: plan-release
118
+ role: release_planner
119
+ description: Run read-only deploy-plan and save the release plan.
120
+ prompt: |
121
+ Run dna release deploy-plan for {{changed_files}} and save JSON to {{release_plan_path}}.
122
+ Do not deploy or sync runtime artifacts in this step.
123
+ - id: verify-release
124
+ role: release_verifier
125
+ depends_on: [plan-release]
126
+ description: Execute the required verification path and write release evidence.
127
+ prompt: |
128
+ Read {{release_plan_path}}.
129
+ Run the local commands required by the plan.
130
+ If deployment_required, deploy only after local verification and then verify the deployed URL routes listed by the plan.
131
+ Write {{release_evidence_path}} with evidence, blockers, and next actions.
@@ -5,6 +5,25 @@
5
5
  version: "0.1.0"
6
6
  id: template_requirements_gate
7
7
  name: Requirements Clarity Gate
8
+ purpose: Block implementation until requirements are clear enough and the weakest ambiguity is addressed one question at a time.
9
+ maturity: reviewed
10
+ fit:
11
+ - Tasks with unclear intent, boundaries, success criteria, or constraints.
12
+ - Planning lanes where implementation should wait for a structured requirement packet.
13
+ not_for:
14
+ - Already scoped implementation with stable acceptance criteria.
15
+ - Endless interviewing after the blocking ambiguity is resolved.
16
+ inputs:
17
+ - raw user request or task brief
18
+ - current known constraints
19
+ - clarity threshold
20
+ outputs:
21
+ - structured requirement assessment
22
+ - next clarifying question
23
+ - implementation readiness verdict
24
+ lineage:
25
+ source: requirements-first interview workflow
26
+ reference: src/templates/requirements-gate.dna.yaml
8
27
  type: project
9
28
  namespace: rg
10
29
 
@@ -4,6 +4,25 @@
4
4
  version: "0.1.0"
5
5
  id: template_research_orchestration
6
6
  name: Research Orchestration (Parallel Hypotheses)
7
+ purpose: Run hypothesis-driven research with independent evidence gathering, cross-verification, and structured synthesis.
8
+ maturity: reviewed
9
+ fit:
10
+ - Research tasks that need multiple hypotheses, subquestions, and evidence grading.
11
+ - Technical or product investigations where facts and inferences must be separated.
12
+ not_for:
13
+ - Single-source summaries without verification.
14
+ - Implementation work that should be governed by a delivery workflow.
15
+ inputs:
16
+ - research question
17
+ - initial hypotheses
18
+ - source and evidence constraints
19
+ outputs:
20
+ - subquestion findings
21
+ - evidence quality grades
22
+ - synthesized conclusion with residual uncertainty
23
+ lineage:
24
+ source: parallel hypothesis research workflow
25
+ reference: src/templates/research-orchestration.dna.yaml
7
26
  type: project
8
27
  namespace: ro
9
28
 
@@ -1,6 +1,25 @@
1
1
  version: "0.1.0"
2
2
  id: template_root_cause_analysis
3
3
  name: Root Cause Analysis (Competing Hypotheses)
4
+ purpose: Diagnose failures by generating competing hypotheses, gathering evidence, and proving a minimal root cause before fixing.
5
+ maturity: reviewed
6
+ fit:
7
+ - Bugs, regressions, outages, or test failures with uncertain cause.
8
+ - Investigations where premature fixes would hide the underlying failure mode.
9
+ not_for:
10
+ - Cosmetic changes or known one-line fixes with clear cause.
11
+ - Shipping a fix before reproduction and evidence support the root cause.
12
+ inputs:
13
+ - symptom or failure report
14
+ - logs, tests, traces, or reproduction steps
15
+ - suspected change scope
16
+ outputs:
17
+ - competing hypothesis list
18
+ - evidence ranking
19
+ - minimal reproduction and root-cause verdict
20
+ lineage:
21
+ source: systematic debugging and competing-hypothesis workflow
22
+ reference: src/templates/root-cause-analysis.dna.yaml
4
23
  type: project
5
24
  namespace: rca
6
25