@dewtech/dare-cli 3.10.0 → 3.11.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 (150) hide show
  1. package/README.md +5 -1
  2. package/dist/__tests__/ci-pr-regression.test.d.ts +2 -0
  3. package/dist/__tests__/ci-pr-regression.test.d.ts.map +1 -0
  4. package/dist/__tests__/ci-pr-regression.test.js +76 -0
  5. package/dist/__tests__/ci-pr-regression.test.js.map +1 -0
  6. package/dist/__tests__/dashboard-front.test.d.ts +2 -0
  7. package/dist/__tests__/dashboard-front.test.d.ts.map +1 -0
  8. package/dist/__tests__/dashboard-front.test.js +37 -0
  9. package/dist/__tests__/dashboard-front.test.js.map +1 -0
  10. package/dist/__tests__/dashboard-regression.test.d.ts +2 -0
  11. package/dist/__tests__/dashboard-regression.test.d.ts.map +1 -0
  12. package/dist/__tests__/dashboard-regression.test.js +68 -0
  13. package/dist/__tests__/dashboard-regression.test.js.map +1 -0
  14. package/dist/__tests__/dynamic-dag-regression.test.d.ts +2 -0
  15. package/dist/__tests__/dynamic-dag-regression.test.d.ts.map +1 -0
  16. package/dist/__tests__/dynamic-dag-regression.test.js +464 -0
  17. package/dist/__tests__/dynamic-dag-regression.test.js.map +1 -0
  18. package/dist/__tests__/ide-command-parity.test.js +1 -0
  19. package/dist/__tests__/ide-command-parity.test.js.map +1 -1
  20. package/dist/bin/dare.js +2 -0
  21. package/dist/bin/dare.js.map +1 -1
  22. package/dist/commands/__tests__/dashboard-command.test.d.ts +2 -0
  23. package/dist/commands/__tests__/dashboard-command.test.d.ts.map +1 -0
  24. package/dist/commands/__tests__/dashboard-command.test.js +62 -0
  25. package/dist/commands/__tests__/dashboard-command.test.js.map +1 -0
  26. package/dist/commands/__tests__/gate-flags.test.d.ts +2 -0
  27. package/dist/commands/__tests__/gate-flags.test.d.ts.map +1 -0
  28. package/dist/commands/__tests__/gate-flags.test.js +58 -0
  29. package/dist/commands/__tests__/gate-flags.test.js.map +1 -0
  30. package/dist/commands/__tests__/persist-viz.test.d.ts +2 -0
  31. package/dist/commands/__tests__/persist-viz.test.d.ts.map +1 -0
  32. package/dist/commands/__tests__/persist-viz.test.js +178 -0
  33. package/dist/commands/__tests__/persist-viz.test.js.map +1 -0
  34. package/dist/commands/__tests__/refine-apply.test.d.ts +2 -0
  35. package/dist/commands/__tests__/refine-apply.test.d.ts.map +1 -0
  36. package/dist/commands/__tests__/refine-apply.test.js +118 -0
  37. package/dist/commands/__tests__/refine-apply.test.js.map +1 -0
  38. package/dist/commands/__tests__/replan-splice.test.d.ts +2 -0
  39. package/dist/commands/__tests__/replan-splice.test.d.ts.map +1 -0
  40. package/dist/commands/__tests__/replan-splice.test.js +295 -0
  41. package/dist/commands/__tests__/replan-splice.test.js.map +1 -0
  42. package/dist/commands/dag.d.ts.map +1 -1
  43. package/dist/commands/dag.js +2 -0
  44. package/dist/commands/dag.js.map +1 -1
  45. package/dist/commands/dashboard.d.ts +17 -0
  46. package/dist/commands/dashboard.d.ts.map +1 -0
  47. package/dist/commands/dashboard.js +77 -0
  48. package/dist/commands/dashboard.js.map +1 -0
  49. package/dist/commands/execute.d.ts.map +1 -1
  50. package/dist/commands/execute.js +108 -2
  51. package/dist/commands/execute.js.map +1 -1
  52. package/dist/commands/graph.d.ts.map +1 -1
  53. package/dist/commands/graph.js +33 -5
  54. package/dist/commands/graph.js.map +1 -1
  55. package/dist/commands/guard.d.ts.map +1 -1
  56. package/dist/commands/guard.js +27 -3
  57. package/dist/commands/guard.js.map +1 -1
  58. package/dist/commands/refine.d.ts +2 -0
  59. package/dist/commands/refine.d.ts.map +1 -1
  60. package/dist/commands/refine.js +71 -20
  61. package/dist/commands/refine.js.map +1 -1
  62. package/dist/commands/review.d.ts.map +1 -1
  63. package/dist/commands/review.js +36 -5
  64. package/dist/commands/review.js.map +1 -1
  65. package/dist/dag-runner/__tests__/maxdepth-config.test.d.ts +2 -0
  66. package/dist/dag-runner/__tests__/maxdepth-config.test.d.ts.map +1 -0
  67. package/dist/dag-runner/__tests__/maxdepth-config.test.js +28 -0
  68. package/dist/dag-runner/__tests__/maxdepth-config.test.js.map +1 -0
  69. package/dist/dag-runner/__tests__/sub-dag.test.d.ts +2 -0
  70. package/dist/dag-runner/__tests__/sub-dag.test.d.ts.map +1 -0
  71. package/dist/dag-runner/__tests__/sub-dag.test.js +127 -0
  72. package/dist/dag-runner/__tests__/sub-dag.test.js.map +1 -0
  73. package/dist/dag-runner/run_dag.d.ts +2 -0
  74. package/dist/dag-runner/run_dag.d.ts.map +1 -1
  75. package/dist/dag-runner/run_dag.js.map +1 -1
  76. package/dist/dag-runner/state-store.d.ts +2 -0
  77. package/dist/dag-runner/state-store.d.ts.map +1 -1
  78. package/dist/dag-runner/state-store.js +44 -8
  79. package/dist/dag-runner/state-store.js.map +1 -1
  80. package/dist/dag-runner/sub-dag.d.ts +23 -0
  81. package/dist/dag-runner/sub-dag.d.ts.map +1 -0
  82. package/dist/dag-runner/sub-dag.js +117 -0
  83. package/dist/dag-runner/sub-dag.js.map +1 -0
  84. package/dist/dashboard/__tests__/dashboard-routes.test.d.ts +2 -0
  85. package/dist/dashboard/__tests__/dashboard-routes.test.d.ts.map +1 -0
  86. package/dist/dashboard/__tests__/dashboard-routes.test.js +102 -0
  87. package/dist/dashboard/__tests__/dashboard-routes.test.js.map +1 -0
  88. package/dist/dashboard/routes.d.ts +8 -0
  89. package/dist/dashboard/routes.d.ts.map +1 -0
  90. package/dist/dashboard/routes.js +70 -0
  91. package/dist/dashboard/routes.js.map +1 -0
  92. package/dist/graphrag/__tests__/hybrid-integration.test.js +1 -1
  93. package/dist/graphrag/__tests__/hybrid-integration.test.js.map +1 -1
  94. package/dist/graphrag/__tests__/no-heavy-dep-in-core.test.js +2 -2
  95. package/dist/graphrag/__tests__/no-heavy-dep-in-core.test.js.map +1 -1
  96. package/dist/graphrag/embeddings.js +1 -1
  97. package/dist/graphrag/embeddings.js.map +1 -1
  98. package/dist/http/__tests__/shared-app.test.d.ts +2 -0
  99. package/dist/http/__tests__/shared-app.test.d.ts.map +1 -0
  100. package/dist/http/__tests__/shared-app.test.js +57 -0
  101. package/dist/http/__tests__/shared-app.test.js.map +1 -0
  102. package/dist/http/app.d.ts +15 -0
  103. package/dist/http/app.d.ts.map +1 -0
  104. package/dist/http/app.js +32 -0
  105. package/dist/http/app.js.map +1 -0
  106. package/dist/mcp-server/server.d.ts.map +1 -1
  107. package/dist/mcp-server/server.js +5 -15
  108. package/dist/mcp-server/server.js.map +1 -1
  109. package/dist/reporters/__tests__/github-reporter.test.d.ts +2 -0
  110. package/dist/reporters/__tests__/github-reporter.test.d.ts.map +1 -0
  111. package/dist/reporters/__tests__/github-reporter.test.js +93 -0
  112. package/dist/reporters/__tests__/github-reporter.test.js.map +1 -0
  113. package/dist/reporters/ci-gate.d.ts +27 -0
  114. package/dist/reporters/ci-gate.d.ts.map +1 -0
  115. package/dist/reporters/ci-gate.js +100 -0
  116. package/dist/reporters/ci-gate.js.map +1 -0
  117. package/dist/reporters/github.d.ts +36 -0
  118. package/dist/reporters/github.d.ts.map +1 -0
  119. package/dist/reporters/github.js +142 -0
  120. package/dist/reporters/github.js.map +1 -0
  121. package/dist/telemetry/__tests__/aggregator.test.d.ts +2 -0
  122. package/dist/telemetry/__tests__/aggregator.test.d.ts.map +1 -0
  123. package/dist/telemetry/__tests__/aggregator.test.js +164 -0
  124. package/dist/telemetry/__tests__/aggregator.test.js.map +1 -0
  125. package/dist/telemetry/aggregator.d.ts +43 -0
  126. package/dist/telemetry/aggregator.d.ts.map +1 -0
  127. package/dist/telemetry/aggregator.js +282 -0
  128. package/dist/telemetry/aggregator.js.map +1 -0
  129. package/dist/utils/excalidraw-renderer.d.ts.map +1 -1
  130. package/dist/utils/excalidraw-renderer.js +1 -0
  131. package/dist/utils/excalidraw-renderer.js.map +1 -1
  132. package/dist/utils/graph-renderer.d.ts +2 -0
  133. package/dist/utils/graph-renderer.d.ts.map +1 -1
  134. package/dist/utils/graph-renderer.js +188 -14
  135. package/dist/utils/graph-renderer.js.map +1 -1
  136. package/dist/verification/__tests__/decay-policy.test.js +1 -0
  137. package/dist/verification/__tests__/decay-policy.test.js.map +1 -1
  138. package/dist/verification/config.d.ts.map +1 -1
  139. package/dist/verification/config.js +2 -0
  140. package/dist/verification/config.js.map +1 -1
  141. package/dist/verification/types.d.ts +2 -0
  142. package/dist/verification/types.d.ts.map +1 -1
  143. package/package.json +2 -2
  144. package/templates/.github/workflows/dare-pr.yml +26 -0
  145. package/templates/dashboard/app.js +184 -0
  146. package/templates/dashboard/index.html +63 -0
  147. package/templates/dashboard/style.css +134 -0
  148. package/templates/ide/antigravity/.agents/skills/dare-dashboard/SKILL.md +18 -0
  149. package/templates/ide/claude/.claude/commands/dare-dashboard.md +18 -0
  150. package/templates/ide/cursor/.cursor/commands/dare-dashboard.md +18 -0
@@ -5,6 +5,9 @@ import path from 'path';
5
5
  import { analyzeTaskComplexity, proposeSplit, } from '../utils/complexity-analyzer.js';
6
6
  import { parseFilesFromSpec, findSpecFile } from '../utils/ReviewRunner.js';
7
7
  import { readProjectConfig } from '../utils/UpdateDetector.js';
8
+ import { convertDagToYaml, convertYamlToDag } from '../utils/dag-converter.js';
9
+ import { DEFAULT_STATE_PATH, loadAndApplyState, saveState, } from '../dag-runner/state-store.js';
10
+ import { CycleError, MaxDepthError, spliceSubDag, } from '../dag-runner/sub-dag.js';
8
11
  /**
9
12
  * `dare refine <task-id>` — measures complexity of a task and (optionally)
10
13
  * proposes how to break it down. Exit codes:
@@ -22,12 +25,16 @@ export const refineCommand = new Command('refine')
22
25
  .description("Mede complexidade de uma task e (opcional) propõe quebra em sub-tasks")
23
26
  .argument('<task-id>', 'ID da task (ex: task-001)')
24
27
  .option('--split', 'Emite uma proposta de quebra em sub-tasks', false)
25
- .option('--apply', 'Aplica o split: marca task original como SPLIT em DARE/TASKS.md', false)
28
+ .option('--apply', 'Aplica o split no DAG ativo (requer --split)', false)
26
29
  .option('--strict', 'Exit code 2 quando complexidade for HIGH/CRITICAL (CI-friendly)', false)
27
30
  .option('--format <fmt>', 'Saída: human | json', 'human')
28
31
  .option('--from-agent <path>', 'JSON com RefineVerdict produzido pelo agente IDE')
29
32
  .action(async (taskId, options) => {
30
33
  const projectRoot = process.cwd();
34
+ if (options.apply && !options.split) {
35
+ console.error(chalk.red('❌ --apply exige --split.'));
36
+ process.exit(1);
37
+ }
31
38
  // Read optional thresholds from dare.config.json (#refine.thresholds).
32
39
  const thresholds = await readThresholds(projectRoot);
33
40
  let report = null;
@@ -57,7 +64,18 @@ export const refineCommand = new Command('refine')
57
64
  printHuman(report, proposal, agentVerdict);
58
65
  }
59
66
  if (options.apply && proposal) {
60
- await applySplitMarker(projectRoot, taskId, proposal);
67
+ try {
68
+ await applySplitToDag(projectRoot, taskId, proposal);
69
+ }
70
+ catch (err) {
71
+ if (err instanceof MaxDepthError || err instanceof CycleError) {
72
+ console.error(chalk.red(`❌ ${err.message}`));
73
+ }
74
+ else {
75
+ console.error(chalk.red(`❌ ${err instanceof Error ? err.message : String(err)}`));
76
+ }
77
+ process.exit(1);
78
+ }
61
79
  }
62
80
  const isHigh = report.level === 'HIGH' || report.level === 'CRITICAL';
63
81
  if (options.strict && isHigh)
@@ -74,7 +92,7 @@ async function readThresholds(projectRoot) {
74
92
  return undefined;
75
93
  }
76
94
  }
77
- async function buildSplitProposal(taskId, projectRoot) {
95
+ export async function buildSplitProposal(taskId, projectRoot) {
78
96
  const specPath = await findSpecFile(projectRoot, taskId);
79
97
  if (!specPath) {
80
98
  return { originalTaskId: taskId, subtasks: [], notes: 'Spec não encontrada.' };
@@ -93,25 +111,58 @@ async function loadAgentVerdict(filePath) {
93
111
  }
94
112
  return data;
95
113
  }
96
- /**
97
- * Light-touch "apply": annotate `DARE/TASKS.md` with a marker so the dev /
98
- * agent can see this task was identified for split. Doesn't rewrite the
99
- * DAG that's intentionally left to the `dare-refine` IDE skill, which
100
- * has the context to write coherent sub-task specs.
101
- */
102
- async function applySplitMarker(projectRoot, taskId, proposal) {
103
- const tasksPath = path.join(projectRoot, 'DARE', 'TASKS.md');
104
- if (!(await fs.pathExists(tasksPath))) {
105
- console.log(chalk.yellow(` ⚠ ${tasksPath} não existe pulando apply.`));
114
+ async function applySplitToDag(projectRoot, taskId, proposal) {
115
+ const dagPath = path.join(projectRoot, 'DARE', 'dare-dag.yaml');
116
+ if (!(await fs.pathExists(dagPath))) {
117
+ throw new Error(`DAG não encontrado em ${dagPath}.`);
118
+ }
119
+ const dag = convertYamlToDag(await fs.readFile(dagPath, 'utf-8'));
120
+ const statePath = path.join(projectRoot, DEFAULT_STATE_PATH);
121
+ await loadAndApplyState(dag, statePath);
122
+ const subTasks = proposalToSubTasks(dag, taskId, proposal);
123
+ const maxDepth = await readLoopMaxDepth(projectRoot);
124
+ const result = spliceSubDag(dag, taskId, subTasks, maxDepth);
125
+ if (result.inserted.length === 0) {
126
+ console.log(chalk.gray(` ↺ Split já aplicado para ${taskId}; sem mudanças.`));
106
127
  return;
107
128
  }
108
- const md = await fs.readFile(tasksPath, 'utf-8');
109
- const stamp = `\n\n<!-- dare-refine: ${taskId} marcada para split em ${proposal.subtasks.length} sub-task(s) — ` +
110
- `regenere com /dare-refine ${taskId} no IDE -->\n`;
111
- if (md.includes(`dare-refine: ${taskId}`))
112
- return; // idempotent
113
- await fs.writeFile(tasksPath, md + stamp);
114
- console.log(chalk.green(` ✅ TASKS.md anotado com marker de split para ${taskId}.`));
129
+ await fs.writeFile(dagPath, convertDagToYaml(result.dag));
130
+ await saveState(result.dag, statePath);
131
+ console.log(chalk.green(` Sub-DAG aplicado em ${taskId} (${result.inserted.length} sub-task(s)).`));
132
+ }
133
+ function proposalToSubTasks(dag, parentId, proposal) {
134
+ const parent = dag.tasks.find((task) => task.id === parentId);
135
+ if (!parent)
136
+ throw new Error(`Task "${parentId}" não encontrada no DAG.`);
137
+ const baseSpecDir = resolveSpecDir(parent.spec_file);
138
+ return proposal.subtasks.map((subtask, idx) => ({
139
+ id: subtask.id,
140
+ parentId,
141
+ dependsOn: idx === 0 ? [...parent.depends_on] : [proposal.subtasks[idx - 1].id],
142
+ specPath: path.posix.join(baseSpecDir, `${subtask.id}.md`),
143
+ }));
144
+ }
145
+ function resolveSpecDir(parentSpecFile) {
146
+ if (!parentSpecFile)
147
+ return 'DARE/EXECUTION';
148
+ const normalized = parentSpecFile.replace(/\\/g, '/');
149
+ const dir = path.posix.dirname(normalized);
150
+ return dir === '.' ? 'DARE/EXECUTION' : dir;
151
+ }
152
+ async function readLoopMaxDepth(projectRoot) {
153
+ let rawConfig = {};
154
+ try {
155
+ rawConfig = await readProjectConfig(projectRoot);
156
+ }
157
+ catch {
158
+ rawConfig = {};
159
+ }
160
+ const value = rawConfig
161
+ .verification?.loop?.maxDepth;
162
+ if (typeof value === 'number' && Number.isInteger(value)) {
163
+ return value;
164
+ }
165
+ return 2;
115
166
  }
116
167
  function printHuman(report, proposal, verdict) {
117
168
  console.log(chalk.blue.bold(`\n🪓 DARE Refine — ${report.taskId}\n`));
@@ -1 +1 @@
1
- {"version":3,"file":"refine.js","sourceRoot":"","sources":["../../src/commands/refine.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EACL,qBAAqB,EACrB,YAAY,GAGb,MAAM,iCAAiC,CAAC;AACzC,OAAO,EAAE,kBAAkB,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAC5E,OAAO,EAAE,iBAAiB,EAAE,MAAM,4BAA4B,CAAC;AAO/D;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,OAAO,CAAC,QAAQ,CAAC;KAC/C,WAAW,CAAC,uEAAuE,CAAC;KACpF,QAAQ,CAAC,WAAW,EAAE,2BAA2B,CAAC;KAClD,MAAM,CAAC,SAAS,EAAE,2CAA2C,EAAE,KAAK,CAAC;KACrE,MAAM,CAAC,SAAS,EAAE,iEAAiE,EAAE,KAAK,CAAC;KAC3F,MAAM,CACL,UAAU,EACV,iEAAiE,EACjE,KAAK,CACN;KACA,MAAM,CAAC,gBAAgB,EAAE,qBAAqB,EAAE,OAAO,CAAC;KACxD,MAAM,CAAC,qBAAqB,EAAE,kDAAkD,CAAC;KACjF,MAAM,CACL,KAAK,EACH,MAAc,EACd,OAMC,EACD,EAAE;IACF,MAAM,WAAW,GAAG,OAAO,CAAC,GAAG,EAAE,CAAC;IAElC,uEAAuE;IACvE,MAAM,UAAU,GAAG,MAAM,cAAc,CAAC,WAAW,CAAC,CAAC;IAErD,IAAI,MAAM,GAA4B,IAAI,CAAC;IAC3C,IAAI,CAAC;QACH,MAAM,GAAG,MAAM,qBAAqB,CAAC,MAAM,EAAE,WAAW,EAAE,EAAE,UAAU,EAAE,CAAC,CAAC;IAC5E,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,OAAO,CAAC,KAAK,CACX,KAAK,CAAC,GAAG,CAAC,KAAK,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,CACnE,CAAC;QACF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IACD,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,sCAAsC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC1E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,QAAmC,CAAC;IACxC,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,QAAQ,GAAG,MAAM,kBAAkB,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,YAAuC,CAAC;IAC5C,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;QACtB,YAAY,GAAG,MAAM,gBAAgB,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC9B,OAAO,CAAC,MAAM,CAAC,KAAK,CAClB,IAAI,CAAC,SAAS,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,YAAY,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CACnE,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,UAAU,CAAC,MAAM,EAAE,QAAQ,EAAE,YAAY,CAAC,CAAC;IAC7C,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,IAAI,QAAQ,EAAE,CAAC;QAC9B,MAAM,gBAAgB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,CAAC,CAAC;IACxD,CAAC;IAED,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,KAAK,MAAM,IAAI,MAAM,CAAC,KAAK,KAAK,UAAU,CAAC;IACtE,IAAI,OAAO,CAAC,MAAM,IAAI,MAAM;QAAE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC9C,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CACF,CAAC;AAEJ,KAAK,UAAU,cAAc,CAC3B,WAAmB;IAEnB,IAAI,CAAC;QACH,MAAM,GAAG,GAAG,CAAC,MAAM,iBAAiB,CAAC,WAAW,CAAC,CAA4B,CAAC;QAC9E,MAAM,MAAM,GAAG,GAAG,CAAC,MAA2D,CAAC;QAC/E,OAAO,MAAM,EAAE,UAAU,CAAC;IAC5B,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,SAAS,CAAC;IACnB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,kBAAkB,CAC/B,MAAc,EACd,WAAmB;IAEnB,MAAM,QAAQ,GAAG,MAAM,YAAY,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;IACzD,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,EAAE,cAAc,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,EAAE,KAAK,EAAE,sBAAsB,EAAE,CAAC;IACjF,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;IAChD,MAAM,KAAK,GAAG,kBAAkB,CAAC,EAAE,CAAC,CAAC;IACrC,OAAO,YAAY,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;AACrC,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,QAAgB;IAC9C,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;IAC9D,CAAC;IACD,MAAM,IAAI,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACzC,IAAI,OAAO,IAAI,EAAE,UAAU,KAAK,SAAS,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,CAAC;QAC3E,MAAM,IAAI,KAAK,CACb,6BAA6B,QAAQ,qDAAqD,CAC3F,CAAC;IACJ,CAAC;IACD,OAAO,IAAqB,CAAC;AAC/B,CAAC;AAED;;;;;GAKG;AACH,KAAK,UAAU,gBAAgB,CAC7B,WAAmB,EACnB,MAAc,EACd,QAAuB;IAEvB,MAAM,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,CAAC,CAAC;IAC7D,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC,UAAU,CAAC,SAAS,CAAC,CAAC,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,QAAQ,SAAS,8BAA8B,CAAC,CAAC,CAAC;QAC3E,OAAO;IACT,CAAC;IACD,MAAM,EAAE,GAAG,MAAM,EAAE,CAAC,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,KAAK,GACT,yBAAyB,MAAM,0BAA0B,QAAQ,CAAC,QAAQ,CAAC,MAAM,iBAAiB;QAClG,6BAA6B,MAAM,eAAe,CAAC;IACrD,IAAI,EAAE,CAAC,QAAQ,CAAC,gBAAgB,MAAM,EAAE,CAAC;QAAE,OAAO,CAAC,aAAa;IAChE,MAAM,EAAE,CAAC,SAAS,CAAC,SAAS,EAAE,EAAE,GAAG,KAAK,CAAC,CAAC;IAC1C,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,KAAK,CAAC,iDAAiD,MAAM,GAAG,CAAC,CACxE,CAAC;AACJ,CAAC;AAED,SAAS,UAAU,CACjB,MAAwB,EACxB,QAAmC,EACnC,OAAkC;IAElC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,sBAAsB,MAAM,CAAC,MAAM,IAAI,CAAC,CAAC,CAAC;IACtE,OAAO,CAAC,GAAG,CAAC,iBAAiB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,IAAI,kBAAkB,CAAC,EAAE,CAAC,CAAC;IAClF,OAAO,CAAC,GAAG,CACT,iBAAiB,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,YAAY,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAC5F,CAAC;IAEF,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC9B,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;QACvC,KAAK,MAAM,CAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YAC/B,OAAO,CAAC,GAAG,CACT,SAAS,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,MAAM,EAAE,CAClG,CAAC;QACJ,CAAC;IACH,CAAC;IAED,IAAI,MAAM,CAAC,eAAe,EAAE,CAAC;QAC3B,OAAO,CAAC,GAAG,CACT,KAAK,CAAC,MAAM,CAAC,IAAI,CACf,mCAAmC,MAAM,CAAC,KAAK,iDAAiD,CACjG,CACF,CAAC;IACJ,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,0BAA0B,MAAM,CAAC,KAAK,IAAI,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,wBAAwB,CAAC,CAAC,CAAC;QAClD,OAAO,CAAC,GAAG,CACT,OAAO,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,kBAAkB,CAAC,EAAE,CAC1F,CAAC;QACF,KAAK,MAAM,CAAC,IAAI,OAAO,CAAC,OAAO;YAAE,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,EAAE,CAAC,CAAC;IAC/D,CAAC;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,0BAA0B,QAAQ,CAAC,QAAQ,CAAC,MAAM,gBAAgB,CAAC,CAAC,CAAC;QAC5F,KAAK,MAAM,EAAE,IAAI,QAAQ,CAAC,QAAQ,EAAE,CAAC;YACnC,OAAO,CAAC,GAAG,CACT,OAAO,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,MAAM,EAAE,CAAC,KAAK,KAAK,KAAK,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,cAAc,GAAG,CAAC,EAAE,CAClF,CAAC;YACF,KAAK,MAAM,CAAC,IAAI,EAAE,CAAC,KAAK;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC,CAAC,CAAC;YACpE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,SAAS,EAAE,CAAC,CAAC,CAAC;QACrD,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;SAAM,IAAI,QAAQ,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,OAAO,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC;IACnD,CAAC;IACD,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED,SAAS,WAAW,CAAC,KAAa;IAChC,QAAQ,KAAK,EAAE,CAAC;QACd,KAAK,KAAK;YACR,OAAO,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC5B,KAAK,KAAK;YACR,OAAO,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3B,KAAK,MAAM;YACT,OAAO,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC7B,KAAK,UAAU;YACb,OAAO,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;QAC1B;YACE,OAAO,KAAK,CAAC;IACjB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"refine.js","sourceRoot":"","sources":["../../src/commands/refine.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAMpC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,SAoDvB,CAAC"}
1
+ {"version":3,"file":"review.d.ts","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAapC;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,aAAa,SAsFvB,CAAC"}
@@ -2,6 +2,7 @@ import { Command } from 'commander';
2
2
  import chalk from 'chalk';
3
3
  import path from 'path';
4
4
  import { runReview } from '../utils/ReviewRunner.js';
5
+ import { applyCiGateOutput, parseCiFormat, parseFailOn, resolveVerdictFromCounts, violationsToFindings, } from '../reporters/ci-gate.js';
5
6
  /**
6
7
  * `dare review <task-id>` — runs the static analyzer (and optionally a
7
8
  * semantic verdict from the IDE agent) against the files a task touched.
@@ -22,9 +23,21 @@ export const reviewCommand = new Command('review')
22
23
  .option('--errors-only', 'Suprime warnings na saída humana', false)
23
24
  .option('--files <files...>', 'Lista explícita de arquivos a analisar (ignora spec/git)')
24
25
  .option('--from-agent <path>', 'Caminho para JSON com SemanticVerdict produzido pelo agente IDE')
25
- .option('--format <fmt>', 'Saída: human | json', 'human')
26
+ .option('--format <fmt>', 'Saída: human | json | github', 'human')
27
+ .option('--comment', 'Post idempotent PR comment (requires GITHUB_TOKEN + PR context)', false)
28
+ .option('--fail-on <mode>', 'Exit policy: none | warn | error', 'none')
26
29
  .action(async (taskId, options) => {
27
30
  const projectRoot = process.cwd();
31
+ const format = parseCiFormat(options.format);
32
+ if (!format) {
33
+ console.error(chalk.red(`❌ --format must be human, json, or github (got "${options.format}")`));
34
+ process.exit(1);
35
+ }
36
+ const failOn = parseFailOn(options.failOn);
37
+ if (!failOn) {
38
+ console.error(chalk.red(`❌ --fail-on must be none, warn, or error (got "${options.failOn}")`));
39
+ process.exit(1);
40
+ }
28
41
  let report;
29
42
  try {
30
43
  report = await runReview(taskId, {
@@ -33,18 +46,36 @@ export const reviewCommand = new Command('review')
33
46
  fromAgent: options.fromAgent,
34
47
  strict: options.strict,
35
48
  errorsOnly: options.errorsOnly,
36
- format: options.format,
49
+ format: format === 'github' ? 'human' : format,
37
50
  });
38
51
  }
39
52
  catch (err) {
40
53
  console.error(chalk.red(`❌ ${err instanceof Error ? err.message : String(err)}`));
41
54
  process.exit(1);
42
55
  }
43
- if (options.format === 'json') {
56
+ const allViolations = report.reports.flatMap((r) => r.violations);
57
+ const findings = violationsToFindings(allViolations, projectRoot);
58
+ const verdict = resolveVerdictFromCounts(report.totals.errors, report.totals.warnings);
59
+ if (format === 'json') {
44
60
  process.stdout.write(JSON.stringify(report, null, 2) + '\n');
45
- process.exit(report.failed ? 1 : 0);
46
61
  }
47
- printHumanReport(report, options.errorsOnly);
62
+ else {
63
+ printHumanReport(report, options.errorsOnly);
64
+ }
65
+ const ciMode = format === 'github' || options.comment || failOn !== 'none';
66
+ if (ciMode) {
67
+ const exitCode = await applyCiGateOutput({
68
+ gate: 'review',
69
+ format,
70
+ comment: options.comment,
71
+ failOn,
72
+ findings,
73
+ verdict,
74
+ cwd: projectRoot,
75
+ });
76
+ process.exit(exitCode);
77
+ return;
78
+ }
48
79
  process.exit(report.failed ? 1 : 0);
49
80
  });
50
81
  function printHumanReport(report, errorsOnly) {
@@ -1 +1 @@
1
- {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"review.js","sourceRoot":"","sources":["../../src/commands/review.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=maxdepth-config.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maxdepth-config.test.d.ts","sourceRoot":"","sources":["../../../src/dag-runner/__tests__/maxdepth-config.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,28 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { parseVerificationConfig, VerificationConfigError, } from '../../verification/config.js';
3
+ describe('loop.maxDepth config', () => {
4
+ it('defaults_to_2', () => {
5
+ const cfg = parseVerificationConfig({
6
+ verification: { enabled: true },
7
+ });
8
+ expect(cfg.loop.maxDepth).toBe(2);
9
+ });
10
+ it('parses_custom', () => {
11
+ const cfg = parseVerificationConfig({
12
+ verification: {
13
+ enabled: true,
14
+ loop: { maxDepth: 5 },
15
+ },
16
+ });
17
+ expect(cfg.loop.maxDepth).toBe(5);
18
+ });
19
+ it('rejects_zero_or_negative', () => {
20
+ expect(() => parseVerificationConfig({
21
+ verification: { loop: { maxDepth: 0 } },
22
+ })).toThrow(VerificationConfigError);
23
+ expect(() => parseVerificationConfig({
24
+ verification: { loop: { maxDepth: -1 } },
25
+ })).toThrow(VerificationConfigError);
26
+ });
27
+ });
28
+ //# sourceMappingURL=maxdepth-config.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"maxdepth-config.test.js","sourceRoot":"","sources":["../../../src/dag-runner/__tests__/maxdepth-config.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,EAAE,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAC9C,OAAO,EACL,uBAAuB,EACvB,uBAAuB,GACxB,MAAM,8BAA8B,CAAC;AAEtC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;QACvB,MAAM,GAAG,GAAG,uBAAuB,CAAC;YAClC,YAAY,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE;SAChC,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,eAAe,EAAE,GAAG,EAAE;QACvB,MAAM,GAAG,GAAG,uBAAuB,CAAC;YAClC,YAAY,EAAE;gBACZ,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE;aACtB;SACF,CAAC,CAAC;QACH,MAAM,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpC,CAAC,CAAC,CAAC;IAEH,EAAE,CAAC,0BAA0B,EAAE,GAAG,EAAE;QAClC,MAAM,CAAC,GAAG,EAAE,CACV,uBAAuB,CAAC;YACtB,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,EAAE,EAAE;SACxC,CAAC,CACH,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;QAEnC,MAAM,CAAC,GAAG,EAAE,CACV,uBAAuB,CAAC;YACtB,YAAY,EAAE,EAAE,IAAI,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC,EAAE,EAAE;SACzC,CAAC,CACH,CAAC,OAAO,CAAC,uBAAuB,CAAC,CAAC;IACrC,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=sub-dag.test.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sub-dag.test.d.ts","sourceRoot":"","sources":["../../../src/dag-runner/__tests__/sub-dag.test.ts"],"names":[],"mappings":""}
@@ -0,0 +1,127 @@
1
+ import { describe, it, expect } from 'vitest';
2
+ import { CycleError, MaxDepthError, nestingDepth, spliceSubDag, } from '../sub-dag.js';
3
+ function makeDag() {
4
+ return {
5
+ title: 'dynamic',
6
+ version: '1.0.0',
7
+ models: { cursor: { HIGH: 'h', MED: 'm', LOW: 'l' } },
8
+ tasks: [
9
+ {
10
+ id: 'task-root',
11
+ title: 'root',
12
+ depends_on: [],
13
+ complexity: 'LOW',
14
+ subtask_prompt: 'root',
15
+ status: 'PENDING',
16
+ },
17
+ {
18
+ id: 'task-parent',
19
+ title: 'parent',
20
+ depends_on: ['task-root'],
21
+ complexity: 'MED',
22
+ subtask_prompt: 'parent',
23
+ status: 'PENDING',
24
+ },
25
+ {
26
+ id: 'task-tail',
27
+ title: 'tail',
28
+ depends_on: ['task-parent'],
29
+ complexity: 'LOW',
30
+ subtask_prompt: 'tail',
31
+ status: 'PENDING',
32
+ },
33
+ ],
34
+ };
35
+ }
36
+ function makeSubTasks(parentId) {
37
+ return [
38
+ {
39
+ id: `${parentId}-a`,
40
+ parentId,
41
+ dependsOn: ['task-root'],
42
+ specPath: `DARE/EXECUTION/${parentId}-a.md`,
43
+ },
44
+ {
45
+ id: `${parentId}-b`,
46
+ parentId,
47
+ dependsOn: [`${parentId}-a`],
48
+ specPath: `DARE/EXECUTION/${parentId}-b.md`,
49
+ },
50
+ ];
51
+ }
52
+ describe('sub-dag splice', () => {
53
+ it('splices_children_under_parent', () => {
54
+ const dag = makeDag();
55
+ const subTasks = makeSubTasks('task-parent');
56
+ const result = spliceSubDag(dag, 'task-parent', subTasks, 3);
57
+ expect(result.inserted).toEqual(['task-parent-a', 'task-parent-b']);
58
+ const parent = result.dag.tasks.find((task) => task.id === 'task-parent');
59
+ expect(parent?.depends_on).toEqual(['task-root', 'task-parent-a', 'task-parent-b']);
60
+ const childA = result.dag.tasks.find((task) => task.id === 'task-parent-a');
61
+ const childB = result.dag.tasks.find((task) => task.id === 'task-parent-b');
62
+ expect(childA?.spec_file).toBe('DARE/EXECUTION/task-parent-a.md');
63
+ expect(childB?.depends_on).toEqual(['task-parent-a']);
64
+ });
65
+ it('rejects_cycle', () => {
66
+ const dag = makeDag();
67
+ const snapshot = structuredClone(dag);
68
+ const cyclicSubTasks = [
69
+ {
70
+ id: 'task-parent-cycle',
71
+ parentId: 'task-parent',
72
+ dependsOn: ['task-parent'],
73
+ specPath: 'DARE/EXECUTION/task-parent-cycle.md',
74
+ },
75
+ ];
76
+ expect(() => spliceSubDag(dag, 'task-parent', cyclicSubTasks, 3)).toThrowError(CycleError);
77
+ expect(dag).toEqual(snapshot);
78
+ });
79
+ it('rejects_beyond_maxDepth', () => {
80
+ const first = spliceSubDag(makeDag(), 'task-parent', makeSubTasks('task-parent'), 2).dag;
81
+ const nested = [
82
+ {
83
+ id: 'task-parent-a-i',
84
+ parentId: 'task-parent-a',
85
+ dependsOn: ['task-root'],
86
+ specPath: 'DARE/EXECUTION/task-parent-a-i.md',
87
+ },
88
+ ];
89
+ expect(() => spliceSubDag(first, 'task-parent-a', nested, 1)).toThrowError(MaxDepthError);
90
+ });
91
+ it('idempotent_resplice', () => {
92
+ const first = spliceSubDag(makeDag(), 'task-parent', makeSubTasks('task-parent'), 3).dag;
93
+ const sameSetDifferentOrder = [
94
+ {
95
+ id: 'task-parent-b',
96
+ parentId: 'task-parent',
97
+ dependsOn: ['task-parent-a'],
98
+ specPath: 'DARE/EXECUTION/task-parent-b.md',
99
+ },
100
+ {
101
+ id: 'task-parent-a',
102
+ parentId: 'task-parent',
103
+ dependsOn: ['task-root'],
104
+ specPath: 'DARE/EXECUTION/task-parent-a.md',
105
+ },
106
+ ];
107
+ const second = spliceSubDag(first, 'task-parent', sameSetDifferentOrder, 3);
108
+ expect(second.inserted).toEqual([]);
109
+ expect(second.dag).toBe(first);
110
+ expect(second.dag.tasks).toHaveLength(first.tasks.length);
111
+ });
112
+ it('nestingDepth_correct', () => {
113
+ const first = spliceSubDag(makeDag(), 'task-parent', makeSubTasks('task-parent'), 3).dag;
114
+ const second = spliceSubDag(first, 'task-parent-a', [
115
+ {
116
+ id: 'task-parent-a-i',
117
+ parentId: 'task-parent-a',
118
+ dependsOn: ['task-root'],
119
+ specPath: 'DARE/EXECUTION/task-parent-a-i.md',
120
+ },
121
+ ], 3).dag;
122
+ expect(nestingDepth(second, 'task-parent')).toBe(0);
123
+ expect(nestingDepth(second, 'task-parent-a')).toBe(1);
124
+ expect(nestingDepth(second, 'task-parent-a-i')).toBe(2);
125
+ });
126
+ });
127
+ //# sourceMappingURL=sub-dag.test.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"sub-dag.test.js","sourceRoot":"","sources":["../../../src/dag-runner/__tests__/sub-dag.test.ts"],"names":[],"mappings":"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"}
@@ -24,6 +24,8 @@ export interface DagTask {
24
24
  id: string;
25
25
  title: string;
26
26
  depends_on: string[];
27
+ /** Runtime-only link for sub-DAG nesting (persisted in `.dare/state.json`). */
28
+ __parentId?: string;
27
29
  complexity: Complexity;
28
30
  subtask_prompt: string;
29
31
  /** Optional path (relative to project root) to a spec file with detailed instructions. */
@@ -1 +1 @@
1
- {"version":3,"file":"run_dag.d.ts","sourceRoot":"","sources":["../../src/dag-runner/run_dag.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"run_dag.d.ts","sourceRoot":"","sources":["../../src/dag-runner/run_dag.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"run_dag.js","sourceRoot":"","sources":["../../src/dag-runner/run_dag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,MAAM,UAAU,CAAC;AAC1B,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,SAAS,EAAE,MAAM,uBAAuB,CAAC;AAClD,OAAO,EAAE,aAAa,EAAE,MAAM,2BAA2B,CAAC;AAC1D,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAwC/C,MAAM,CAAC,MAAM,kBAAkB,GAAc;IAC3C,oBAAoB,EAAE,IAAI;IAC1B,iBAAiB,EAAE,IAAI;IACvB,eAAe,EAAE,GAAG;CACrB,CAAC;AAEF,gFAAgF;AAChF,sBAAsB;AACtB,gFAAgF;AAEhF;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,KAAgB;IAC3C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAkB,CAAC;IACxC,MAAM,OAAO,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IAErD,SAAS,OAAO,CAAC,MAAc,EAAE,UAAU,IAAI,GAAG,EAAU;QAC1D,IAAI,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC;YAAE,OAAO,KAAK,CAAC,GAAG,CAAC,MAAM,CAAE,CAAC;QACjD,IAAI,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;YACxB,MAAM,IAAI,KAAK,CAAC,iCAAiC,MAAM,EAAE,CAAC,CAAC;QAC7D,CAAC;QACD,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACpB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QACjC,IAAI,CAAC,IAAI;YAAE,MAAM,IAAI,KAAK,CAAC,mBAAmB,MAAM,EAAE,CAAC,CAAC;QAExD,IAAI,IAAI,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACjC,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;YACrB,OAAO,CAAC,CAAC;QACX,CAAC;QACD,MAAM,UAAU,GAAG,IAAI,CAAC,GAAG,CACzB,GAAG,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,CAChE,CAAC;QACF,MAAM,IAAI,GAAG,UAAU,GAAG,CAAC,CAAC;QAC5B,KAAK,CAAC,GAAG,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;QACxB,OAAO,IAAI,CAAC;IACd,CAAC;IAED,KAAK,MAAM,CAAC,IAAI,KAAK;QAAE,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;IACrC,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gFAAgF;AAChF,iBAAiB;AACjB,gFAAgF;AAEhF;;;;;;GAMG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAQ,EAAE,eAAe,GAAG,IAAI;IAClE,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE;QACnC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC;QAChE,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,OAAO,KAAK,CAAC,CAAC,oBAAoB;QAC9D,OAAO,CAAC,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC,CAAC;IACnE,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC,eAAe,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC;IAEzD,MAAM,KAAK,GAAG,YAAY,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACtC,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpE,OAAO,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC;AACjE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,kBAAkB,CAAC,GAAQ;IACzC,MAAM,IAAI,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC;IACtD,MAAM,YAAY,GAAc,EAAE,CAAC;IACnC,IAAI,OAAO,GAAG,IAAI,CAAC;IACnB,OAAO,OAAO,EAAE,CAAC;QACf,OAAO,GAAG,KAAK,CAAC;QAChB,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;YAC7B,IAAI,IAAI,CAAC,MAAM,KAAK,SAAS;gBAAE,SAAS;YACxC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE;gBACzC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC;gBAC3B,OAAO,MAAM,EAAE,MAAM,KAAK,QAAQ,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS,CAAC;YACrE,CAAC,CAAC,CAAC;YACH,IAAI,OAAO,EAAE,CAAC;gBACZ,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;gBACxB,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACxB,OAAO,GAAG,IAAI,CAAC;YACjB,CAAC;QACH,CAAC;IACH,CAAC;IACD,OAAO,YAAY,CAAC;AACtB,CAAC;AAED,gFAAgF;AAChF,+DAA+D;AAC/D,gFAAgF;AAEhF;;;GAGG;AACH,MAAM,UAAU,eAAe,CAC7B,GAAQ,EACR,IAAa,EACb,IAA+B;IAE/B,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,kBAAkB,CAAC;IAChD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU;SAC5B,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;SAC/C,MAAM,CAAC,CAAC,CAAC,EAAgB,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,CAAC;IAE3C,OAAO,aAAa,CAAC;QACnB,IAAI;QACJ,OAAO;QACP,kBAAkB,EAAE,MAAM,CAAC,oBAAoB;QAC/C,WAAW,EAAE,IAAI,EAAE,WAAW;KAC/B,CAAC,CAAC;AACL,CAAC;AAcD,MAAM,UAAU,WAAW,CAAC,GAAQ,EAAE,MAAc;IAClD,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IACxB,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACvB,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,QAAQ,CAAC,GAAQ,EAAE,MAAc,EAAE,OAAoB,EAAE;IACvE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACtC,MAAM,MAAM,GAAG,GAAG,CAAC,MAAM,IAAI,kBAAkB,CAAC;IAChD,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACrB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,CAAC,MAAM,EAAE,MAAM,CAAC,iBAAiB,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC;IAC3F,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC;IACzC,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC;IACjD,IAAI,CAAC,KAAK,GAAG,SAAS,CAAC;IACvB,IAAI,IAAI,CAAC,KAAK;QAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAClD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,GAAQ,EAAE,MAAc,EAAE,OAAoB,EAAE;IACzE,MAAM,IAAI,GAAG,WAAW,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;IACtC,IAAI,CAAC,MAAM,GAAG,QAAQ,CAAC;IACvB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,IAAI,SAAS,CAAC;IACnD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,QAAQ,CAAC;IACjD,IAAI,IAAI,CAAC,KAAK;QAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAClD,gCAAgC;IAChC,MAAM,OAAO,GAAG,kBAAkB,CAAC,GAAG,CAAC,CAAC;IACxC,IAAI,IAAI,CAAC,KAAK;QAAE,KAAK,MAAM,CAAC,IAAI,OAAO;YAAE,UAAU,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC,EAAE,GAAG,CAAC,CAAC;IACxE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,gFAAgF;AAChF,mBAAmB;AACnB,gFAAgF;AAEhF,MAAM,WAAW,GAA+B;IAC9C,OAAO,EAAE,GAAG;IACZ,OAAO,EAAE,IAAI;IACb,IAAI,EAAE,GAAG;IACT,MAAM,EAAE,GAAG;IACX,OAAO,EAAE,IAAI;CACd,CAAC;AAEF,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,GAAQ,EAAE,UAAkB;IAC7D,MAAM,KAAK,GAAa;QACtB,0BAA0B,GAAG,CAAC,KAAK,EAAE;QACrC,EAAE;QACF,gBAAgB,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,EAAE;QAC1C,EAAE;QACF,UAAU;QACV,EAAE;QACF,6CAA6C;QAC7C,6CAA6C;KAC9C,CAAC;IAEF,KAAK,MAAM,IAAI,IAAI,GAAG,CAAC,KAAK,EAAE,CAAC;QAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,SAAS,CAAC;QACxC,MAAM,IAAI,GAAG,WAAW,CAAC,MAAM,CAAC,CAAC;QACjC,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,QAAQ,IAAI,CAAC,CAAC,CAAC,GAAG,CAAC;QAC5D,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC;QACpD,KAAK,CAAC,IAAI,CACR,KAAK,IAAI,CAAC,EAAE,MAAM,IAAI,CAAC,KAAK,MAAM,IAAI,IAAI,MAAM,MAAM,QAAQ,MAAM,MAAM,IAAI,CAC/E,CAAC;IACJ,CAAC;IAED,MAAM,KAAK,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC;IAC/B,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,CAAC,MAAM,CAAC;IACjE,MAAM,GAAG,GAAG,KAAK,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,IAAI,GAAG,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC;IAC/D,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,GAAG,CAAC,CAAC,CAAC;IAEnC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,gBAAgB,IAAI,IAAI,KAAK,WAAW,GAAG,IAAI,CAAC,CAAC;IAC5D,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,KAAK,CAAC,IAAI,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,GAAG,MAAM,CAAC,IAAI,GAAG,GAAG,CAAC,CAAC;IAEtE,MAAM,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC;IAC7C,MAAM,EAAE,CAAC,SAAS,CAAC,UAAU,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;AACnD,CAAC;AAED,gFAAgF;AAChF,UAAU;AACV,gFAAgF;AAEhF,SAAS,WAAW,CAAC,GAAQ,EAAE,MAAc;IAC3C,MAAM,IAAI,GAAG,GAAG,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,MAAM,CAAC,CAAC;IACpD,IAAI,CAAC,IAAI;QAAE,MAAM,IAAI,KAAK,CAAC,SAAS,MAAM,oBAAoB,CAAC,CAAC;IAChE,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,UAAU,CAAC,KAAqB,EAAE,IAAa,EAAE,GAAQ;IAChE,IAAI,CAAC;QACH,UAAU,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,CAAC,CAAC;IAC/B,CAAC;IAAC,MAAM,CAAC;QACP,mEAAmE;IACrE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"run_dag.js","sourceRoot":"","sources":["../../src/dag-runner/run_dag.ts"],"names":[],"mappings":"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"}
@@ -7,6 +7,8 @@ export interface PersistedTaskState {
7
7
  tokens?: number;
8
8
  duration?: number;
9
9
  attempts?: AttemptRecord[];
10
+ parentId?: string;
11
+ dependsOn?: string[];
10
12
  }
11
13
  export declare const DEFAULT_STATE_PATH: string;
12
14
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"state-store.d.ts","sourceRoot":"","sources":["../../src/dag-runner/state-store.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;CAC5B;AAQD,eAAO,MAAM,kBAAkB,QAAmC,CAAC;AAkBnE;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAclF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAoB1E;AAED,2DAA2D;AAC3D,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA2C,GACrD,OAAO,CAAC,aAAa,EAAE,CAAC,CAG1B;AAED,sEAAsE;AACtE,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,EACjC,SAAS,GAAE,MAA2C,GACrD,OAAO,CAAC,aAAa,CAAC,CAgBxB;AAWD,YAAY,EAAE,OAAO,EAAE,CAAC"}
1
+ {"version":3,"file":"state-store.d.ts","sourceRoot":"","sources":["../../src/dag-runner/state-store.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAC9D,OAAO,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE7D,MAAM,WAAW,kBAAkB;IACjC,MAAM,EAAE,UAAU,CAAC;IACnB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,aAAa,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,SAAS,CAAC,EAAE,MAAM,EAAE,CAAC;CACtB;AAQD,eAAO,MAAM,kBAAkB,QAAmC,CAAC;AAkBnE;;;GAGG;AACH,wBAAsB,iBAAiB,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAgClF;AAED;;GAEG;AACH,wBAAsB,SAAS,CAAC,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAsB1E;AAED,2DAA2D;AAC3D,wBAAsB,WAAW,CAC/B,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,SAAS,GAAE,MAA2C,GACrD,OAAO,CAAC,aAAa,EAAE,CAAC,CAG1B;AAED,sEAAsE;AACtE,wBAAsB,aAAa,CACjC,GAAG,EAAE,MAAM,EACX,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,IAAI,CAAC,aAAa,EAAE,GAAG,CAAC,EACjC,SAAS,GAAE,MAA2C,GACrD,OAAO,CAAC,aAAa,CAAC,CAgBxB;AAkCD,YAAY,EAAE,OAAO,EAAE,CAAC"}
@@ -30,16 +30,31 @@ function emptyPersistedState() {
30
30
  */
31
31
  export async function loadAndApplyState(dag, stateFile) {
32
32
  const data = await readPersistedState(stateFile);
33
+ const byId = new Map(dag.tasks.map((task) => [task.id, task]));
34
+ for (const [taskId, persisted] of Object.entries(data?.tasks ?? {})) {
35
+ let task = byId.get(taskId);
36
+ if (!task) {
37
+ task = materializeNestedTask(taskId, persisted, byId);
38
+ if (task) {
39
+ dag.tasks.push(task);
40
+ byId.set(taskId, task);
41
+ }
42
+ }
43
+ if (!task)
44
+ continue;
45
+ task.status = persisted.status;
46
+ task.output = persisted.output;
47
+ task.error = persisted.error;
48
+ task.tokens = persisted.tokens;
49
+ task.duration = persisted.duration;
50
+ if (Array.isArray(persisted.dependsOn)) {
51
+ task.depends_on = [...persisted.dependsOn];
52
+ }
53
+ task.__parentId = persisted.parentId;
54
+ }
33
55
  for (const task of dag.tasks) {
34
56
  const persisted = data?.tasks?.[task.id];
35
- if (persisted) {
36
- task.status = persisted.status;
37
- task.output = persisted.output;
38
- task.error = persisted.error;
39
- task.tokens = persisted.tokens;
40
- task.duration = persisted.duration;
41
- }
42
- else {
57
+ if (!persisted) {
43
58
  task.status = task.status ?? 'PENDING';
44
59
  }
45
60
  }
@@ -58,6 +73,8 @@ export async function saveState(dag, stateFile) {
58
73
  tokens: t.tokens,
59
74
  duration: t.duration,
60
75
  attempts: existing?.tasks?.[t.id]?.attempts,
76
+ dependsOn: [...t.depends_on],
77
+ parentId: t.__parentId,
61
78
  };
62
79
  }
63
80
  const payload = {
@@ -97,4 +114,23 @@ function isPersistedState(value) {
97
114
  'tasks' in value &&
98
115
  typeof value.tasks === 'object');
99
116
  }
117
+ function materializeNestedTask(taskId, persisted, byId) {
118
+ if (!persisted.parentId)
119
+ return undefined;
120
+ const parent = byId.get(persisted.parentId);
121
+ return {
122
+ id: taskId,
123
+ title: taskId,
124
+ depends_on: Array.isArray(persisted.dependsOn) ? [...persisted.dependsOn] : [],
125
+ __parentId: persisted.parentId,
126
+ complexity: parent?.complexity ?? 'MED',
127
+ subtask_prompt: `Execute ${taskId} as part of ${persisted.parentId}.`,
128
+ spec_file: undefined,
129
+ status: persisted.status,
130
+ output: persisted.output,
131
+ error: persisted.error,
132
+ tokens: persisted.tokens,
133
+ duration: persisted.duration,
134
+ };
135
+ }
100
136
  //# sourceMappingURL=state-store.js.map