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.
- package/.claude-plugin/marketplace.json +2 -2
- package/.claude-plugin/plugin.json +1 -1
- package/LICENSE +201 -0
- package/README.md +143 -194
- package/dist/assets/candidates.d.ts +124 -0
- package/dist/assets/candidates.js +1249 -0
- package/dist/assets/catalog.d.ts +101 -0
- package/dist/assets/catalog.js +311 -0
- package/dist/assets/evidence.d.ts +93 -0
- package/dist/assets/evidence.js +391 -0
- package/dist/assets/index.d.ts +4 -0
- package/dist/assets/index.js +4 -0
- package/dist/assets/metadata.d.ts +19 -0
- package/dist/assets/metadata.js +227 -0
- package/dist/cli/commands/assets.d.ts +65 -0
- package/dist/cli/commands/assets.js +2871 -0
- package/dist/cli/commands/auth.d.ts +322 -0
- package/dist/cli/commands/auth.js +1592 -0
- package/dist/cli/commands/cloud-auth-guidance.d.ts +2 -0
- package/dist/cli/commands/cloud-auth-guidance.js +4 -0
- package/dist/cli/commands/cloud.d.ts +1359 -0
- package/dist/cli/commands/cloud.js +8364 -0
- package/dist/cli/commands/evolve.js +18 -2
- package/dist/cli/commands/generate.js +25 -2
- package/dist/cli/commands/guard.d.ts +1 -1
- package/dist/cli/commands/guard.js +1 -1
- package/dist/cli/commands/guide.d.ts +15 -0
- package/dist/cli/commands/guide.js +1747 -0
- package/dist/cli/commands/init.d.ts +12 -0
- package/dist/cli/commands/init.js +95 -60
- package/dist/cli/commands/org.d.ts +16 -0
- package/dist/cli/commands/org.js +2393 -0
- package/dist/cli/commands/release.d.ts +59 -0
- package/dist/cli/commands/release.js +716 -0
- package/dist/cli/commands/report.d.ts +82 -0
- package/dist/cli/commands/report.js +1516 -0
- package/dist/cli/commands/run.d.ts +6 -1
- package/dist/cli/commands/run.js +95 -26
- package/dist/cli/commands/sync.d.ts +8 -1
- package/dist/cli/commands/sync.js +436 -141
- package/dist/cli/commands/templates.d.ts +64 -0
- package/dist/cli/commands/templates.js +2151 -1
- package/dist/cli/commands/workflow.d.ts +26 -0
- package/dist/cli/commands/workflow.js +3053 -0
- package/dist/cli/index.js +719 -42
- package/dist/compiler/cascade.js +4 -9
- package/dist/compiler/compile.js +1 -0
- package/dist/governance/evidence-capture-attribution.d.ts +12 -0
- package/dist/governance/evidence-capture-attribution.js +46 -0
- package/dist/governance/index.d.ts +2 -0
- package/dist/governance/index.js +1 -0
- package/dist/hooks/cli.d.ts +6 -0
- package/dist/hooks/cli.js +168 -12
- package/dist/hooks/enforce.d.ts +1 -0
- package/dist/hooks/protocol.d.ts +1 -1
- package/dist/hooks/protocol.js +1 -1
- package/dist/hooks/state.d.ts +41 -0
- package/dist/hooks/state.js +126 -2
- package/dist/index.d.ts +3 -0
- package/dist/index.js +3 -0
- package/dist/mcp/tools-state.js +2 -0
- package/dist/organization/index.d.ts +121 -0
- package/dist/organization/index.js +413 -0
- package/dist/runtime/claude-sync-target.d.ts +49 -0
- package/dist/runtime/claude-sync-target.js +280 -0
- package/dist/runtime/codex-adapter.d.ts +254 -0
- package/dist/runtime/codex-adapter.js +1204 -0
- package/dist/runtime/codex-sync-target.d.ts +33 -0
- package/dist/runtime/codex-sync-target.js +241 -0
- package/dist/runtime/index.d.ts +8 -0
- package/dist/runtime/index.js +4 -0
- package/dist/runtime/output-artifact-registry.d.ts +1 -1
- package/dist/runtime/output-artifact-registry.js +2 -0
- package/dist/runtime/settings-adapter.d.ts +1 -1
- package/dist/runtime/settings-adapter.js +1 -1
- package/dist/runtime/skill-adapter.d.ts +5 -1
- package/dist/runtime/skill-adapter.js +120 -34
- package/dist/runtime/sync-artifact-registry.d.ts +99 -0
- package/dist/runtime/sync-artifact-registry.js +194 -0
- package/dist/runtime/sync-target-plan.d.ts +45 -0
- package/dist/runtime/sync-target-plan.js +19 -0
- package/dist/schema/controller-registry.d.ts +8 -1
- package/dist/schema/controller-registry.js +8 -0
- package/dist/schema/types.d.ts +35 -23
- package/dist/schema/types.js +10 -1
- package/dist/schema/validate.js +22 -22
- package/dist/schema/validators/controllers.js +38 -20
- package/dist/schema/workflow-authoring-contract.d.ts +29 -0
- package/dist/schema/workflow-authoring-contract.js +109 -0
- package/dist/schema/yaml-parser.js +18 -0
- package/dist/templates/api-backend.dna.yaml +19 -0
- package/dist/templates/brainstorming-first.dna.yaml +19 -0
- package/dist/templates/code-cleanup.dna.yaml +19 -0
- package/dist/templates/code-review-pipeline.dna.yaml +18 -0
- package/dist/templates/documentation-writer.dna.yaml +19 -0
- package/dist/templates/flutter-behavior-lock.dna.yaml +19 -0
- package/dist/templates/flutter-refactoring-rescue.dna.yaml +19 -0
- package/dist/templates/flutter-rewrite-diagnosis-review.dna.yaml +210 -0
- package/dist/templates/flutter-rewrite-fix-review-loop.dna.yaml +260 -0
- package/dist/templates/flutter-rewrite-new.dna.yaml +506 -0
- package/dist/templates/flutter-rewrite.dna.yaml +20 -0
- package/dist/templates/frontend-quality.dna.yaml +19 -0
- package/dist/templates/full-pipeline.dna.yaml +20 -0
- package/dist/templates/marketplace.d.ts +92 -0
- package/dist/templates/marketplace.js +502 -0
- package/dist/templates/metadata.d.ts +25 -0
- package/dist/templates/metadata.js +136 -3
- package/dist/templates/mobile-dev.dna.yaml +19 -0
- package/dist/templates/multi-agent-handoff-coordination.dna.yaml +156 -0
- package/dist/templates/multi-perspective-review.dna.yaml +19 -0
- package/dist/templates/persistent-executor.dna.yaml +19 -0
- package/dist/templates/qa-loop.dna.yaml +18 -0
- package/dist/templates/release-evidence-gate.dna.yaml +131 -0
- package/dist/templates/requirements-gate.dna.yaml +19 -0
- package/dist/templates/research-orchestration.dna.yaml +19 -0
- package/dist/templates/root-cause-analysis.dna.yaml +19 -0
- package/dist/templates/safe-refactoring.dna.yaml +321 -0
- package/dist/templates/secure-dev.dna.yaml +19 -0
- package/dist/templates/subagent-parallel.dna.yaml +19 -0
- package/dist/templates/systematic-debugging.dna.yaml +19 -0
- package/dist/templates/tdd-strict.dna.yaml +19 -0
- package/dist/templates/ui-visual-regression-qa.dna.yaml +133 -0
- package/dist/templates/workflow-author.dna.yaml +302 -0
- package/dist/templates/workflow-blocked-scope-triage.dna.yaml +242 -0
- package/dist/templates/workflow-completion-audit.dna.yaml +254 -0
- package/dist/templates/workflow-cross-boundary-resource-approval.dna.yaml +249 -0
- package/dist/templates/workflow-evidence-review.dna.yaml +198 -0
- package/dist/templates/workflow-module-inventory.dna.yaml +257 -0
- package/dist/templates/workflow-runtime-smoke-review.dna.yaml +252 -0
- package/dist/templates/workflow-verification-command-routing.dna.yaml +278 -0
- package/dist/workflow/authoring-packet.d.ts +67 -0
- package/dist/workflow/authoring-packet.js +218 -0
- package/dist/workflow/draft.d.ts +159 -0
- package/dist/workflow/draft.js +800 -0
- package/dist/workflow/index.d.ts +3 -0
- package/dist/workflow/index.js +3 -0
- package/dist/workflow/suggestion-review.d.ts +65 -0
- package/dist/workflow/suggestion-review.js +245 -0
- package/package.json +1 -1
- package/spec/README.md +15 -48
- package/spec/codex-adapter-contract.md +176 -0
- package/spec/sync-target-plan.md +158 -0
- package/spec/workflow-capability-ir.md +153 -0
- package/spec/agent-dispatch-fix.md +0 -116
- package/spec/control-plane-convergence-handoff-2026-04-24.md +0 -432
- package/spec/flutter-rewrite-template-optimization.md +0 -301
- package/spec/foundation-hardening.md +0 -178
- package/spec/hooks-infra-harness-hardening.md +0 -741
- package/spec/multi-config.md +0 -172
- package/spec/parallel-isolation.md +0 -268
- package/spec/template-version-namespace-fix.md +0 -653
- 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:
|
|
17
|
-
{ name:
|
|
18
|
-
{ name:
|
|
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
|
|