agent-nuvira 3.3.0 → 3.3.3

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 (231) hide show
  1. package/.agents/skills/code-assessment/SKILL.md +10 -1
  2. package/.agents/skills/index.json +1 -1
  3. package/README.md +47 -9
  4. package/dist/agents/agents/runner.d.ts +9 -0
  5. package/dist/agents/agents/runner.d.ts.map +1 -1
  6. package/dist/agents/agents/runner.js +34 -12
  7. package/dist/agents/agents/runner.js.map +1 -1
  8. package/dist/agents/agents/writer-tool-calling.d.ts.map +1 -1
  9. package/dist/agents/agents/writer-tool-calling.js +7 -2
  10. package/dist/agents/agents/writer-tool-calling.js.map +1 -1
  11. package/dist/agents/agents/writer.d.ts.map +1 -1
  12. package/dist/agents/agents/writer.js +7 -1
  13. package/dist/agents/agents/writer.js.map +1 -1
  14. package/dist/agents/artifact-verification.d.ts +102 -0
  15. package/dist/agents/artifact-verification.d.ts.map +1 -0
  16. package/dist/agents/artifact-verification.js +216 -0
  17. package/dist/agents/artifact-verification.js.map +1 -0
  18. package/dist/agents/checkpoint-store.d.ts +73 -0
  19. package/dist/agents/checkpoint-store.d.ts.map +1 -1
  20. package/dist/agents/checkpoint-store.js +161 -0
  21. package/dist/agents/checkpoint-store.js.map +1 -1
  22. package/dist/agents/credential-store.d.ts +120 -0
  23. package/dist/agents/credential-store.d.ts.map +1 -1
  24. package/dist/agents/credential-store.js +358 -19
  25. package/dist/agents/credential-store.js.map +1 -1
  26. package/dist/agents/orchestrator.d.ts +10 -1
  27. package/dist/agents/orchestrator.d.ts.map +1 -1
  28. package/dist/agents/orchestrator.js +234 -75
  29. package/dist/agents/orchestrator.js.map +1 -1
  30. package/dist/agents/phase-engine.d.ts +61 -0
  31. package/dist/agents/phase-engine.d.ts.map +1 -1
  32. package/dist/agents/phase-engine.js +68 -2
  33. package/dist/agents/phase-engine.js.map +1 -1
  34. package/dist/agents/prompt-assembly.d.ts +11 -0
  35. package/dist/agents/prompt-assembly.d.ts.map +1 -1
  36. package/dist/agents/prompt-assembly.js +17 -0
  37. package/dist/agents/prompt-assembly.js.map +1 -1
  38. package/dist/agents/release-preflight.d.ts +121 -0
  39. package/dist/agents/release-preflight.d.ts.map +1 -0
  40. package/dist/agents/release-preflight.js +259 -0
  41. package/dist/agents/release-preflight.js.map +1 -0
  42. package/dist/agents/release-runner.d.ts +157 -0
  43. package/dist/agents/release-runner.d.ts.map +1 -0
  44. package/dist/agents/release-runner.js +719 -0
  45. package/dist/agents/release-runner.js.map +1 -0
  46. package/dist/agents/step-handoff.d.ts +190 -0
  47. package/dist/agents/step-handoff.d.ts.map +1 -0
  48. package/dist/agents/step-handoff.js +443 -0
  49. package/dist/agents/step-handoff.js.map +1 -0
  50. package/dist/cli/benchmark.d.ts.map +1 -1
  51. package/dist/cli/benchmark.js +11 -4
  52. package/dist/cli/benchmark.js.map +1 -1
  53. package/dist/cli/chat.d.ts.map +1 -1
  54. package/dist/cli/chat.js +25 -4
  55. package/dist/cli/chat.js.map +1 -1
  56. package/dist/cli/cli-program.d.ts.map +1 -1
  57. package/dist/cli/cli-program.js +9 -2
  58. package/dist/cli/cli-program.js.map +1 -1
  59. package/dist/cli/commands.d.ts +2 -1
  60. package/dist/cli/commands.d.ts.map +1 -1
  61. package/dist/cli/commands.js +3 -2
  62. package/dist/cli/commands.js.map +1 -1
  63. package/dist/cli/config.js +2 -2
  64. package/dist/cli/config.js.map +1 -1
  65. package/dist/cli/credentials.d.ts +28 -0
  66. package/dist/cli/credentials.d.ts.map +1 -0
  67. package/dist/cli/credentials.js +213 -0
  68. package/dist/cli/credentials.js.map +1 -0
  69. package/dist/cli/dashboard.d.ts +26 -0
  70. package/dist/cli/dashboard.d.ts.map +1 -1
  71. package/dist/cli/dashboard.js +123 -3
  72. package/dist/cli/dashboard.js.map +1 -1
  73. package/dist/cli/failover-runner.d.ts.map +1 -1
  74. package/dist/cli/failover-runner.js +9 -3
  75. package/dist/cli/failover-runner.js.map +1 -1
  76. package/dist/cli/intent.d.ts +1 -1
  77. package/dist/cli/intent.js +2 -2
  78. package/dist/cli/intent.js.map +1 -1
  79. package/dist/cli/loop-executor.d.ts +7 -0
  80. package/dist/cli/loop-executor.d.ts.map +1 -1
  81. package/dist/cli/loop-executor.js +75 -7
  82. package/dist/cli/loop-executor.js.map +1 -1
  83. package/dist/cli/nlu.d.ts.map +1 -1
  84. package/dist/cli/nlu.js +8 -2
  85. package/dist/cli/nlu.js.map +1 -1
  86. package/dist/cli/process-control.d.ts +15 -0
  87. package/dist/cli/process-control.d.ts.map +1 -1
  88. package/dist/cli/process-control.js +38 -14
  89. package/dist/cli/process-control.js.map +1 -1
  90. package/dist/cli/publish.d.ts +22 -0
  91. package/dist/cli/publish.d.ts.map +1 -1
  92. package/dist/cli/publish.js +109 -13
  93. package/dist/cli/publish.js.map +1 -1
  94. package/dist/config/live-credentials.d.ts +57 -0
  95. package/dist/config/live-credentials.d.ts.map +1 -0
  96. package/dist/config/live-credentials.js +126 -0
  97. package/dist/config/live-credentials.js.map +1 -0
  98. package/dist/config/paths.d.ts +18 -0
  99. package/dist/config/paths.d.ts.map +1 -1
  100. package/dist/config/paths.js +25 -0
  101. package/dist/config/paths.js.map +1 -1
  102. package/dist/federation/a2a-types.js +1 -1
  103. package/dist/federation/a2a-types.js.map +1 -1
  104. package/dist/forwarded.d.ts +2 -0
  105. package/dist/forwarded.d.ts.map +1 -0
  106. package/dist/forwarded.js +2 -0
  107. package/dist/forwarded.js.map +1 -0
  108. package/dist/inference/model-validator.d.ts +6 -1
  109. package/dist/inference/model-validator.d.ts.map +1 -1
  110. package/dist/inference/model-validator.js +7 -2
  111. package/dist/inference/model-validator.js.map +1 -1
  112. package/dist/inference/route-resolver.d.ts +116 -0
  113. package/dist/inference/route-resolver.d.ts.map +1 -0
  114. package/dist/inference/route-resolver.js +159 -0
  115. package/dist/inference/route-resolver.js.map +1 -0
  116. package/dist/inference/tool-call-utils.d.ts +44 -0
  117. package/dist/inference/tool-call-utils.d.ts.map +1 -1
  118. package/dist/inference/tool-call-utils.js +126 -4
  119. package/dist/inference/tool-call-utils.js.map +1 -1
  120. package/dist/learning/autonomy-policy.d.ts +24 -0
  121. package/dist/learning/autonomy-policy.d.ts.map +1 -1
  122. package/dist/learning/autonomy-policy.js +110 -23
  123. package/dist/learning/autonomy-policy.js.map +1 -1
  124. package/dist/learning/eval-framework.d.ts +24 -0
  125. package/dist/learning/eval-framework.d.ts.map +1 -1
  126. package/dist/learning/eval-framework.js +291 -0
  127. package/dist/learning/eval-framework.js.map +1 -1
  128. package/dist/learning/intent-envelope.d.ts +162 -0
  129. package/dist/learning/intent-envelope.d.ts.map +1 -0
  130. package/dist/learning/intent-envelope.js +235 -0
  131. package/dist/learning/intent-envelope.js.map +1 -0
  132. package/dist/learning/reasoning-trace.d.ts +2 -2
  133. package/dist/learning/reasoning-trace.d.ts.map +1 -1
  134. package/dist/learning/reasoning-trace.js +25 -1
  135. package/dist/learning/reasoning-trace.js.map +1 -1
  136. package/dist/learning/resilient-call.d.ts.map +1 -1
  137. package/dist/learning/resilient-call.js +29 -17
  138. package/dist/learning/resilient-call.js.map +1 -1
  139. package/dist/learning/run-trace.d.ts +164 -0
  140. package/dist/learning/run-trace.d.ts.map +1 -0
  141. package/dist/learning/run-trace.js +342 -0
  142. package/dist/learning/run-trace.js.map +1 -0
  143. package/dist/learning/skill-store.d.ts.map +1 -1
  144. package/dist/learning/skill-store.js +35 -10
  145. package/dist/learning/skill-store.js.map +1 -1
  146. package/dist/learning/skill-types.d.ts +14 -0
  147. package/dist/learning/skill-types.d.ts.map +1 -1
  148. package/dist/learning/skill-types.js +19 -0
  149. package/dist/learning/skill-types.js.map +1 -1
  150. package/dist/mcp/catalog.js +2 -3
  151. package/dist/mcp/catalog.js.map +1 -1
  152. package/dist/mcp/manager.d.ts.map +1 -1
  153. package/dist/mcp/manager.js +5 -3
  154. package/dist/mcp/manager.js.map +1 -1
  155. package/dist/resources/command-manifest.json +10 -10
  156. package/dist/skills/bundled-skills.d.ts.map +1 -1
  157. package/dist/skills/bundled-skills.js +13 -2
  158. package/dist/skills/bundled-skills.js.map +1 -1
  159. package/dist/skills/secret-capture.d.ts.map +1 -1
  160. package/dist/skills/secret-capture.js +9 -4
  161. package/dist/skills/secret-capture.js.map +1 -1
  162. package/dist/tools/coding-tools.d.ts.map +1 -1
  163. package/dist/tools/coding-tools.js +33 -8
  164. package/dist/tools/coding-tools.js.map +1 -1
  165. package/dist/tools/credentials-tool.d.ts +24 -0
  166. package/dist/tools/credentials-tool.d.ts.map +1 -0
  167. package/dist/tools/credentials-tool.js +125 -0
  168. package/dist/tools/credentials-tool.js.map +1 -0
  169. package/dist/tools/edit-verification.d.ts +78 -0
  170. package/dist/tools/edit-verification.d.ts.map +1 -1
  171. package/dist/tools/edit-verification.js +213 -16
  172. package/dist/tools/edit-verification.js.map +1 -1
  173. package/dist/tools/git-tool.d.ts +25 -7
  174. package/dist/tools/git-tool.d.ts.map +1 -1
  175. package/dist/tools/git-tool.js +155 -15
  176. package/dist/tools/git-tool.js.map +1 -1
  177. package/dist/tools/loop-project-context.d.ts.map +1 -1
  178. package/dist/tools/loop-project-context.js +16 -0
  179. package/dist/tools/loop-project-context.js.map +1 -1
  180. package/dist/tools/loop-route-feed.d.ts +57 -0
  181. package/dist/tools/loop-route-feed.d.ts.map +1 -0
  182. package/dist/tools/loop-route-feed.js +101 -0
  183. package/dist/tools/loop-route-feed.js.map +1 -0
  184. package/dist/tools/pipeline-tool.d.ts.map +1 -1
  185. package/dist/tools/pipeline-tool.js +8 -2
  186. package/dist/tools/pipeline-tool.js.map +1 -1
  187. package/dist/tools/publish-tool.d.ts.map +1 -1
  188. package/dist/tools/publish-tool.js +76 -10
  189. package/dist/tools/publish-tool.js.map +1 -1
  190. package/dist/tools/registry.d.ts +52 -3
  191. package/dist/tools/registry.d.ts.map +1 -1
  192. package/dist/tools/registry.js +88 -11
  193. package/dist/tools/registry.js.map +1 -1
  194. package/dist/tools/run-cli.d.ts.map +1 -1
  195. package/dist/tools/run-cli.js +15 -2
  196. package/dist/tools/run-cli.js.map +1 -1
  197. package/dist/tools/run-terminal.d.ts +9 -0
  198. package/dist/tools/run-terminal.d.ts.map +1 -1
  199. package/dist/tools/run-terminal.js +103 -6
  200. package/dist/tools/run-terminal.js.map +1 -1
  201. package/dist/tools/skill-tool.d.ts.map +1 -1
  202. package/dist/tools/skill-tool.js +5 -0
  203. package/dist/tools/skill-tool.js.map +1 -1
  204. package/dist/tools/tool-loop.d.ts +40 -6
  205. package/dist/tools/tool-loop.d.ts.map +1 -1
  206. package/dist/tools/tool-loop.js +409 -14
  207. package/dist/tools/tool-loop.js.map +1 -1
  208. package/dist/tools/toolsets.js +2 -2
  209. package/dist/tools/toolsets.js.map +1 -1
  210. package/dist/web-dashboard/chat-console.d.ts +5 -0
  211. package/dist/web-dashboard/chat-console.d.ts.map +1 -1
  212. package/dist/web-dashboard/chat-console.js +32 -3
  213. package/dist/web-dashboard/chat-console.js.map +1 -1
  214. package/dist/web-dashboard/server.d.ts +46 -0
  215. package/dist/web-dashboard/server.d.ts.map +1 -1
  216. package/dist/web-dashboard/server.js +115 -1
  217. package/dist/web-dashboard/server.js.map +1 -1
  218. package/dist/web-dashboard/src/admin-auth.d.ts +49 -2
  219. package/dist/web-dashboard/src/admin-auth.d.ts.map +1 -1
  220. package/dist/web-dashboard/src/admin-auth.js +64 -3
  221. package/dist/web-dashboard/src/admin-auth.js.map +1 -1
  222. package/dist/web-dashboard/src/types.d.ts +41 -0
  223. package/dist/web-dashboard/src/types.d.ts.map +1 -1
  224. package/dist/workflow/registry.js +1 -1
  225. package/dist/workflow/registry.js.map +1 -1
  226. package/package.json +9 -5
  227. package/src/web-dashboard/public/assets/index-CxDj7p6i.js +207 -0
  228. package/src/web-dashboard/public/assets/index-CxDj7p6i.js.map +1 -0
  229. package/src/web-dashboard/public/index.html +1 -1
  230. package/src/web-dashboard/public/assets/index-kCUkORm7.js +0 -207
  231. package/src/web-dashboard/public/assets/index-kCUkORm7.js.map +0 -1
@@ -2,11 +2,25 @@
2
2
  * PhaseExecutionEngine — Phase-wise project scope execution.
3
3
  */
4
4
  import { CredentialStore } from './credential-store.js';
5
+ import type { ReleasePhaseRunner } from './release-runner.js';
5
6
  export interface PhaseDefinition {
6
7
  id: string;
7
8
  goal: string;
8
9
  description: string;
9
10
  dependsOn?: string[];
11
+ /**
12
+ * Deterministic implementation, when the phase is a known mechanical step.
13
+ *
14
+ * A phase WITHOUT a runner goes to the orchestrator (the LLM plans it). The
15
+ * publish pipeline attaches one to every phase, because a release run should
16
+ * not depend on plan quality or provider health — a live 3.3.2 attempt planned
17
+ * "add standard-version + write scripts/release.ts" for a goal that says
18
+ * "Bump version (patch)", then failed under a rate-limited provider.
19
+ *
20
+ * Deliberately NOT part of `PhaseState`: state is serialized to disk for
21
+ * resume, and a function cannot round-trip through JSON.
22
+ */
23
+ runner?: ReleasePhaseRunner;
10
24
  }
11
25
  export type PhaseStatus = 'pending' | 'running' | 'completed' | 'failed' | 'skipped';
12
26
  export interface PhaseState {
@@ -23,6 +37,13 @@ export interface PhaseScopeDefinition {
23
37
  name: string;
24
38
  phases: PhaseDefinition[];
25
39
  options?: PhaseScopeOptions;
40
+ /**
41
+ * The version a publish scope is creating (`3.3.2`). Persisted so a resumed
42
+ * run can tell "this release already bumped to the version it is aiming at"
43
+ * from "a previous release left a different version behind" — the difference
44
+ * between continuing a release and bumping it a second time.
45
+ */
46
+ targetVersion?: string;
26
47
  }
27
48
  export interface PhaseScopeState {
28
49
  name: string;
@@ -32,6 +53,8 @@ export interface PhaseScopeState {
32
53
  completed: boolean;
33
54
  currentPhaseIndex: number;
34
55
  credentialsCollected: boolean;
56
+ /** See {@link PhaseScopeDefinition.targetVersion}. */
57
+ targetVersion?: string;
35
58
  }
36
59
  export interface PhaseScopeOptions {
37
60
  provider?: string;
@@ -46,6 +69,36 @@ export interface PhaseResult {
46
69
  phase: PhaseState;
47
70
  continueExecution: boolean;
48
71
  }
72
+ /**
73
+ * Adopt the progress of an unfinished run into a freshly built scope.
74
+ *
75
+ * Returns the index to resume from, or -1 when there is nothing to resume.
76
+ *
77
+ * This is deliberately a pure function: it is the decision that separates
78
+ * "continue a release" from "bump the version again", and a live run got it
79
+ * wrong by not making the decision at all — a killed release left a pushed
80
+ * commit and tag, and the next run would have cut 3.3.3 on top of it.
81
+ *
82
+ * The rules, each for a specific reason:
83
+ * - A scope with a DIFFERENT (or missing) target version is not this release.
84
+ * Resuming it would mix two versions in one scope; a fresh run is announced
85
+ * by the caller instead.
86
+ * - A COMPLETED scope is a finished release, not an interrupted one.
87
+ * - Statuses are carried BY PHASE ID, because the phase list can grow between
88
+ * releases (a new phase must run even when everything else is done).
89
+ * - `running` is NOT carried: it is the mark a process leaves when it dies
90
+ * mid-phase, and the only safe reading of it is "this phase did not finish".
91
+ */
92
+ export declare function adoptSavedProgress(scope: PhaseScopeState, saved: PhaseScopeState | null): number;
93
+ /**
94
+ * Mark every phase before `from` as skipped, and return the index of `from`.
95
+ *
96
+ * `from` matches a phase id or its human description, because an operator
97
+ * reading the pipeline's own output has the description in hand, not the id
98
+ * (`--from "npm Build & Publish"` must work). Returns -1 when nothing matches,
99
+ * so a typo cannot silently run the whole pipeline from the start.
100
+ */
101
+ export declare function skipPhasesBefore(scope: PhaseScopeState, from: string): number;
49
102
  export declare class PhaseExecutionEngine {
50
103
  private credentialStore?;
51
104
  constructor(credentialStore?: CredentialStore);
@@ -54,6 +107,14 @@ export declare class PhaseExecutionEngine {
54
107
  saveScope(scope: PhaseScopeState): void;
55
108
  deleteScope(scopeName: string): void;
56
109
  listSavedScopes(): string[];
110
+ /**
111
+ * The first phase that still needs running.
112
+ *
113
+ * `running` counts as INCOMPLETE. A phase is marked `running` and only then
114
+ * written to disk, so a process killed mid-phase leaves exactly that state —
115
+ * and skipping it is how a resumed release jumped straight to the GitHub
116
+ * release while its npm publish had never happened.
117
+ */
57
118
  getNextPhase(scope: PhaseScopeState): PhaseState | null;
58
119
  getProgress(scope: PhaseScopeState): string;
59
120
  collectCredentials(scope: PhaseScopeState): Promise<boolean>;
@@ -1 +1 @@
1
- {"version":3,"file":"phase-engine.d.ts","sourceRoot":"","sources":["../../src/agents/phase-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase-engine.d.ts","sourceRoot":"","sources":["../../src/agents/phase-engine.ts"],"names":[],"mappings":"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"}
@@ -20,6 +20,61 @@ function getStatePath(scopeName) {
20
20
  const sanitized = scopeName.replace(/[^a-zA-Z0-9_-]/g, '_').slice(0, 64);
21
21
  return join(buffDir, `${sanitized}.json`);
22
22
  }
23
+ /**
24
+ * Adopt the progress of an unfinished run into a freshly built scope.
25
+ *
26
+ * Returns the index to resume from, or -1 when there is nothing to resume.
27
+ *
28
+ * This is deliberately a pure function: it is the decision that separates
29
+ * "continue a release" from "bump the version again", and a live run got it
30
+ * wrong by not making the decision at all — a killed release left a pushed
31
+ * commit and tag, and the next run would have cut 3.3.3 on top of it.
32
+ *
33
+ * The rules, each for a specific reason:
34
+ * - A scope with a DIFFERENT (or missing) target version is not this release.
35
+ * Resuming it would mix two versions in one scope; a fresh run is announced
36
+ * by the caller instead.
37
+ * - A COMPLETED scope is a finished release, not an interrupted one.
38
+ * - Statuses are carried BY PHASE ID, because the phase list can grow between
39
+ * releases (a new phase must run even when everything else is done).
40
+ * - `running` is NOT carried: it is the mark a process leaves when it dies
41
+ * mid-phase, and the only safe reading of it is "this phase did not finish".
42
+ */
43
+ export function adoptSavedProgress(scope, saved) {
44
+ if (!saved || saved.completed)
45
+ return -1;
46
+ if (!scope.targetVersion || saved.targetVersion !== scope.targetVersion)
47
+ return -1;
48
+ const previous = new Map(saved.phases.map((p) => [p.id, p.status]));
49
+ for (const phase of scope.phases) {
50
+ const status = previous.get(phase.id);
51
+ if (status === 'completed' || status === 'skipped')
52
+ phase.status = status;
53
+ }
54
+ const index = scope.phases.findIndex((p) => p.status === 'pending');
55
+ if (index <= 0)
56
+ return -1; // nothing done yet — this is a fresh run
57
+ scope.currentPhaseIndex = index - 1;
58
+ return index;
59
+ }
60
+ /**
61
+ * Mark every phase before `from` as skipped, and return the index of `from`.
62
+ *
63
+ * `from` matches a phase id or its human description, because an operator
64
+ * reading the pipeline's own output has the description in hand, not the id
65
+ * (`--from "npm Build & Publish"` must work). Returns -1 when nothing matches,
66
+ * so a typo cannot silently run the whole pipeline from the start.
67
+ */
68
+ export function skipPhasesBefore(scope, from) {
69
+ const index = scope.phases.findIndex((p) => p.id === from || p.description === from);
70
+ if (index === -1)
71
+ return -1;
72
+ for (let i = 0; i < index; i++) {
73
+ if (scope.phases[i].status === 'pending')
74
+ scope.phases[i].status = 'skipped';
75
+ }
76
+ return index;
77
+ }
23
78
  // ─── PhaseExecutionEngine ────────────────────────────────────────────────────
24
79
  export class PhaseExecutionEngine {
25
80
  credentialStore;
@@ -41,6 +96,7 @@ export class PhaseExecutionEngine {
41
96
  completed: false,
42
97
  currentPhaseIndex: -1,
43
98
  credentialsCollected: false,
99
+ ...(definition.targetVersion ? { targetVersion: definition.targetVersion } : {}),
44
100
  };
45
101
  }
46
102
  loadScope(scopeName) {
@@ -91,9 +147,17 @@ export class PhaseExecutionEngine {
91
147
  return [];
92
148
  }
93
149
  }
150
+ /**
151
+ * The first phase that still needs running.
152
+ *
153
+ * `running` counts as INCOMPLETE. A phase is marked `running` and only then
154
+ * written to disk, so a process killed mid-phase leaves exactly that state —
155
+ * and skipping it is how a resumed release jumped straight to the GitHub
156
+ * release while its npm publish had never happened.
157
+ */
94
158
  getNextPhase(scope) {
95
159
  for (const phase of scope.phases) {
96
- if (phase.status !== 'pending')
160
+ if (phase.status === 'completed' || phase.status === 'skipped')
97
161
  continue;
98
162
  return phase;
99
163
  }
@@ -215,7 +279,9 @@ export class PhaseExecutionEngine {
215
279
  async executeScope(scope, executeFn, options) {
216
280
  const interactive = options?.interactive !== false;
217
281
  const autoCredentials = options?.autoCredentials !== false;
218
- const startIndex = scope.phases.findIndex((p) => p.status === 'pending' || p.status === 'failed');
282
+ // `running` is included deliberately: a scope saved by a process that died
283
+ // mid-phase must re-run that phase, not step over it (see getNextPhase).
284
+ const startIndex = scope.phases.findIndex((p) => p.status === 'pending' || p.status === 'failed' || p.status === 'running');
219
285
  if (startIndex === -1) {
220
286
  logger.success('\n ✅ All phases are already completed!');
221
287
  logger.info(this.getProgress(scope));
@@ -1 +1 @@
1
- {"version":3,"file":"phase-engine.js","sourceRoot":"","sources":["../../src/agents/phase-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"phase-engine.js","sourceRoot":"","sources":["../../src/agents/phase-engine.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,aAAa,EAAE,SAAS,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AACtG,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AACpD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAC;AA8ExD,sDAAsD;AACtD,MAAM,aAAa,GAAkB,CAAC,WAAW,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AACxE,MAAM,qBAAqB,GAAkB,CAAC,WAAW,EAAE,SAAS,CAAC,CAAC;AAEtE,SAAS,YAAY,CAAC,SAAiB;IACrC,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,CAAC;IACpD,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,CAAC;QACzB,IAAI,CAAC;YAAC,SAAS,CAAC,OAAO,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QAAC,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC9E,CAAC;IACD,MAAM,SAAS,GAAG,SAAS,CAAC,OAAO,CAAC,iBAAiB,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzE,OAAO,IAAI,CAAC,OAAO,EAAE,GAAG,SAAS,OAAO,CAAC,CAAC;AAC5C,CAAC;AAED;;;;;;;;;;;;;;;;;;;GAmBG;AACH,MAAM,UAAU,kBAAkB,CAChC,KAAsB,EACtB,KAA6B;IAE7B,IAAI,CAAC,KAAK,IAAI,KAAK,CAAC,SAAS;QAAE,OAAO,CAAC,CAAC,CAAC;IACzC,IAAI,CAAC,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,aAAa,KAAK,KAAK,CAAC,aAAa;QAAE,OAAO,CAAC,CAAC,CAAC;IAEnF,MAAM,QAAQ,GAAG,IAAI,GAAG,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;IACpE,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;QACjC,MAAM,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtC,IAAI,MAAM,KAAK,WAAW,IAAI,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IAC5E,CAAC;IAED,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC;IACpE,IAAI,KAAK,IAAI,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC,CAAC,yCAAyC;IACpE,KAAK,CAAC,iBAAiB,GAAG,KAAK,GAAG,CAAC,CAAC;IACpC,OAAO,KAAK,CAAC;AACf,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,KAAsB,EAAE,IAAY;IACnE,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,IAAI,IAAI,CAAC,CAAC,WAAW,KAAK,IAAI,CAAC,CAAC;IACrF,IAAI,KAAK,KAAK,CAAC,CAAC;QAAE,OAAO,CAAC,CAAC,CAAC;IAC5B,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/B,IAAI,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,MAAM,GAAG,SAAS,CAAC;IAC/E,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,gFAAgF;AAEhF,MAAM,OAAO,oBAAoB;IACvB,eAAe,CAAmB;IAE1C,YAAY,eAAiC;QAC3C,IAAI,CAAC,eAAe,GAAG,eAAe,CAAC;IACzC,CAAC;IAED,WAAW,CAAC,UAAgC;QAC1C,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QACrC,OAAO;YACL,IAAI,EAAE,UAAU,CAAC,IAAI;YACrB,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;YACd,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;gBACpC,EAAE,EAAE,CAAC,CAAC,EAAE;gBACR,IAAI,EAAE,CAAC,CAAC,IAAI;gBACZ,WAAW,EAAE,CAAC,CAAC,WAAW;gBAC1B,MAAM,EAAE,SAAwB;aACjC,CAAC,CAAC;YACH,SAAS,EAAE,KAAK;YAChB,iBAAiB,EAAE,CAAC,CAAC;YACrB,oBAAoB,EAAE,KAAK;YAC3B,GAAG,CAAC,UAAU,CAAC,aAAa,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,UAAU,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACjF,CAAC;IACJ,CAAC;IAED,SAAS,CAAC,SAAiB;QACzB,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBAAE,OAAO,IAAI,CAAC;YACnC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;YACxC,OAAO,IAAI,CAAC,KAAK,CAAC,GAAG,CAAoB,CAAC;QAC5C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,SAAS,CAAC,KAAsB;QAC9B,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,MAAM,IAAI,GAAG,YAAY,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,CAAC;YACH,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;YAC1D,aAAa,CAAC,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;QAC/D,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,+BAA+B,GAAG,EAAE,CAAC,CAAC;QACrD,CAAC;IACH,CAAC;IAED,WAAW,CAAC,SAAiB;QAC3B,MAAM,IAAI,GAAG,YAAY,CAAC,SAAS,CAAC,CAAC;QACrC,IAAI,CAAC;YACH,IAAI,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;gBACrB,UAAU,CAAC,IAAI,CAAC,CAAC;YACnB,CAAC;QACH,CAAC;QAAC,MAAM,CAAC,CAAC,iBAAiB,CAAC,CAAC;IAC/B,CAAC;IAED,eAAe;QACb,MAAM,GAAG,GAAG,IAAI,CAAC,iBAAiB,EAAE,EAAE,QAAQ,CAAC,CAAC;QAChD,IAAI,CAAC;YACH,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBAAE,OAAO,EAAE,CAAC;YAChC,OAAO,WAAW,CAAC,GAAG,CAAC;iBACpB,MAAM,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;iBAC1C,GAAG,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC,CAAC;iBAC7D,MAAM,CAAC,OAAO,CAAC,CAAC;QACrB,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED;;;;;;;OAOG;IACH,YAAY,CAAC,KAAsB;QACjC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,MAAM,EAAE,CAAC;YACjC,IAAI,KAAK,CAAC,MAAM,KAAK,WAAW,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS;gBAAE,SAAS;YACzE,OAAO,KAAK,CAAC;QACf,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,WAAW,CAAC,KAAsB;QAChC,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC;QAClC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QAC9E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QACxE,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,MAAM,CAAC;QAE1E,MAAM,KAAK,GAAa,EAAE,CAAC;QAC3B,KAAK,CAAC,IAAI,CAAC,YAAY,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,eAAe,SAAS,IAAI,KAAK,mBAAmB,CAAC,CAAC;QACjE,IAAI,MAAM,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC;QAClD,IAAI,OAAO,GAAG,CAAC;YAAE,KAAK,CAAC,IAAI,CAAC,cAAc,OAAO,EAAE,CAAC,CAAC;QACrD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAEf,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YAC7C,MAAM,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC1B,MAAM,UAAU,GAAG,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;gBAChC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;oBAC7B,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;wBAC/B,CAAC,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;4BAC/B,GAAG,CAAC;YACvB,KAAK,CAAC,IAAI,CAAC,KAAK,UAAU,KAAK,CAAC,GAAG,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;YACnE,IAAI,CAAC,CAAC,OAAO,EAAE,CAAC;gBACd,KAAK,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,CAAC;YACjD,CAAC;QACH,CAAC;QAED,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAsB;QAC7C,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAC9C,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;YACxC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;YACvC,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CACtC,CAAC;QAEF,IAAI,CAAC,eAAe,EAAE,CAAC;YACrB,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,YAAY,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QACzE,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,OAAO,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC;QAE9C,IAAI,WAAW,IAAI,WAAW,EAAE,CAAC;YAC/B,MAAM,CAAC,IAAI,CAAC,iEAAiE,CAAC,CAAC;YAC/E,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,IAAI,CAAC,IAAI,CAAC,eAAe,EAAE,CAAC;gBAC1B,IAAI,CAAC,eAAe,GAAG,IAAI,eAAe,EAAE,CAAC;YAC/C,CAAC;YACD,MAAM,IAAI,CAAC,eAAe,CAAC,UAAU,EAAE,CAAC;YACxC,IAAI,CAAC,eAAe,CAAC,mBAAmB,EAAE,CAAC;YAC3C,IAAI,CAAC,eAAe,CAAC,YAAY,EAAE,CAAC;YACpC,KAAK,CAAC,oBAAoB,GAAG,IAAI,CAAC;YAClC,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,CAAC,KAAK,CAAC,qCAAqC,GAAG,EAAE,CAAC,CAAC;YACzD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAAsB,EACtB,UAAkB,EAClB,SAAsI;QAEtI,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;QACvC,IAAI,CAAC,KAAK,EAAE,CAAC;YACX,OAAO;gBACL,KAAK,EAAE,EAAE,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,WAAW,EAAE,iBAAiB,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,qBAAqB,EAAE;gBAClH,iBAAiB,EAAE,KAAK;aACzB,CAAC;QACJ,CAAC;QAED,KAAK,CAAC,MAAM,GAAG,SAAS,CAAC;QACzB,KAAK,CAAC,SAAS,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;QAC3C,KAAK,CAAC,iBAAiB,GAAG,UAAU,CAAC;QACrC,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEtB,MAAM,CAAC,SAAS,CAAC,KAAK,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACxC,MAAM,CAAC,SAAS,CAAC,WAAW,UAAU,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;QAC3F,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,CAAC,IAAI,CAAC,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACrC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAEhB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,EAAE,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YAExE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,QAAQ,CAAC;YACvD,KAAK,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC7C,KAAK,CAAC,OAAO,GAAG,MAAM,CAAC,OAAO,CAAC;YAC/B,IAAI,MAAM,CAAC,KAAK;gBAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;YAE7C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,CAAC,OAAO,CAAC,eAAe,UAAU,GAAG,CAAC,eAAe,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;YAClF,CAAC;iBAAM,CAAC;gBACN,MAAM,CAAC,KAAK,CAAC,eAAe,UAAU,GAAG,CAAC,YAAY,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;gBAC3E,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;oBACjB,MAAM,CAAC,KAAK,CAAC,QAAQ,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;gBACrD,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACb,MAAM,GAAG,GAAG,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;YAC7D,KAAK,CAAC,MAAM,GAAG,QAAQ,CAAC;YACxB,KAAK,CAAC,WAAW,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;YAC7C,KAAK,CAAC,KAAK,GAAG,GAAG,CAAC;YAClB,KAAK,CAAC,OAAO,GAAG,kBAAkB,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;YACtD,MAAM,CAAC,KAAK,CAAC,eAAe,UAAU,GAAG,CAAC,aAAa,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAC9E,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEtB,MAAM,OAAO,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC;QAC5E,IAAI,OAAO,EAAE,CAAC;YACZ,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;YACvB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;YAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QACxB,CAAC;QAED,MAAM,iBAAiB,GAAG,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;QACvE,OAAO;YACL,KAAK,EAAE,EAAE,GAAG,KAAK,EAAE;YACnB,iBAAiB;SAClB,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAChB,KAAsB,EACtB,SAAsI,EACtI,OAGC;QAED,MAAM,WAAW,GAAG,OAAO,EAAE,WAAW,KAAK,KAAK,CAAC;QACnD,MAAM,eAAe,GAAG,OAAO,EAAE,eAAe,KAAK,KAAK,CAAC;QAE3D,2EAA2E;QAC3E,yEAAyE;QACzE,MAAM,UAAU,GAAG,KAAK,CAAC,MAAM,CAAC,SAAS,CACvC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,SAAS,IAAI,CAAC,CAAC,MAAM,KAAK,QAAQ,IAAI,CAAC,CAAC,MAAM,KAAK,SAAS,CACjF,CAAC;QAEF,IAAI,UAAU,KAAK,CAAC,CAAC,EAAE,CAAC;YACtB,MAAM,CAAC,OAAO,CAAC,yCAAyC,CAAC,CAAC;YAC1D,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;YACrC,OAAO;QACT,CAAC;QAED,IAAI,UAAU,GAAG,CAAC,EAAE,CAAC;YACnB,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;YAC9E,MAAM,CAAC,IAAI,CAAC,yBAAyB,UAAU,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,KAAK,SAAS,qBAAqB,CAAC,CAAC;QACjH,CAAC;QAED,KAAK,IAAI,CAAC,GAAG,UAAU,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;YACtD,MAAM,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;YAC9B,IAAI,qBAAqB,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBAAE,SAAS;YAE3D,IAAI,eAAe,IAAI,CAAC,KAAK,CAAC,oBAAoB,EAAE,CAAC;gBACnD,MAAM,UAAU,GAAG,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC7D,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,SAAS,CAAC;oBAC5C,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC;oBAC3C,KAAK,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;gBAE5C,IAAI,UAAU,EAAE,CAAC;oBACf,MAAM,IAAI,CAAC,kBAAkB,CAAC,KAAK,CAAC,CAAC;gBACvC,CAAC;YACH,CAAC;YAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,CAAC,EAAE,SAAS,CAAC,CAAC;YAE5D,IAAI,CAAC,MAAM,CAAC,iBAAiB,EAAE,CAAC;gBAC9B,IAAI,WAAW,EAAE,CAAC;oBAChB,MAAM,CAAC,IAAI,CAAC,qBAAqB,MAAM,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;oBACzD,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;oBACtB,MAAM,CAAC,IAAI,CAAC,+DAA+D,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;oBAC1F,MAAM,CAAC,IAAI,CAAC,gDAAgD,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;oBAC3E,OAAO;gBACT,CAAC;qBAAM,CAAC;oBACN,OAAO;gBACT,CAAC;YACH,CAAC;YAED,IAAI,WAAW,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC/C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACtC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;gBACrC,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACtC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;gBAEhB,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;gBACtB,MAAM,CAAC,OAAO,CAAC,aAAa,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC;gBACtE,MAAM,CAAC,IAAI,CAAC,iBAAiB,KAAK,CAAC,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC,CAAC;gBAChE,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;gBAChB,MAAM,CAAC,IAAI,CAAC,+BAA+B,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC1D,MAAM,CAAC,IAAI,CAAC,+BAA+B,KAAK,CAAC,IAAI,GAAG,CAAC,CAAC;gBAC1D,OAAO;YACT,CAAC;QACH,CAAC;QAED,KAAK,CAAC,SAAS,GAAG,IAAI,CAAC;QACvB,KAAK,CAAC,iBAAiB,GAAG,CAAC,CAAC,CAAC;QAC7B,IAAI,CAAC,SAAS,CAAC,KAAK,CAAC,CAAC;QAEtB,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QACtC,MAAM,CAAC,SAAS,CAAC,yBAAyB,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;QACxD,MAAM,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;QAEtC,MAAM,SAAS,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,MAAM,CAAC;QAC9E,MAAM,MAAM,GAAG,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,MAAM,CAAC;QAExE,MAAM,CAAC,OAAO,CAAC,OAAO,SAAS,qBAAqB,CAAC,CAAC;QACtD,IAAI,MAAM,GAAG,CAAC;YAAE,MAAM,CAAC,KAAK,CAAC,OAAO,MAAM,kBAAkB,CAAC,CAAC;QAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;QAChB,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC,CAAC;QAErC,IAAI,IAAI,CAAC,eAAe,EAAE,CAAC;YACzB,IAAI,CAAC,eAAe,CAAC,OAAO,EAAE,CAAC;QACjC,CAAC;IACH,CAAC;CACF"}
@@ -48,6 +48,17 @@ export interface ProjectAssessment {
48
48
  * path inherits the cross-turn memory the chat path gained.
49
49
  */
50
50
  workingState?: string;
51
+ /**
52
+ * The durable hand-off block: work earlier attempts in THIS project started
53
+ * and did not finish, with the artifacts already on disk and the ones still
54
+ * missing. Populated by {@link assessProject} from step-handoff.ts, so every
55
+ * agent prompt carries it without each agent having to remember to ask.
56
+ *
57
+ * Distinct from `workingState` on purpose: the ledger is per-session prose
58
+ * memory (what changed, what the user reported broken), the hand-off is
59
+ * per-STEP and disk-verified (what this step still owes).
60
+ */
61
+ openHandoffs?: string;
51
62
  }
52
63
  /**
53
64
  * Assess the project before executing tasks.
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembly.d.ts","sourceRoot":"","sources":["../../src/agents/prompt-assembly.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAuBH,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,GAAG,iBAAiB,CAoDzE;AAkID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,MAAM,CAwDR"}
1
+ {"version":3,"file":"prompt-assembly.d.ts","sourceRoot":"","sources":["../../src/agents/prompt-assembly.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAwBH,MAAM,WAAW,WAAW;IAC1B,uEAAuE;IACvE,MAAM,EAAE,MAAM,CAAC;IACf,oEAAoE;IACpE,OAAO,EAAE,MAAM,CAAC;IAChB,6DAA6D;IAC7D,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,iBAAiB;IAChC,6DAA6D;IAC7D,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6DAA6D;IAC7D,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mEAAmE;IACnE,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,0DAA0D;IAC1D,YAAY,EAAE,OAAO,CAAC;IACtB,6CAA6C;IAC7C,QAAQ,EAAE,OAAO,CAAC;IAClB,8BAA8B;IAC9B,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,sCAAsC;IACtC,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iCAAiC;IACjC,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;OAMG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB;;;;;;;;;OASG;IACH,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAID;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,gBAAgB,EAAE,MAAM,GAAG,iBAAiB,CAgEzE;AAkID;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,YAAY,EAAE,MAAM,EACpB,iBAAiB,EAAE,iBAAiB,EACpC,eAAe,EAAE,MAAM,EACvB,SAAS,EAAE,MAAM,GAChB,MAAM,CA6DR"}
@@ -18,6 +18,7 @@
18
18
  import { existsSync, readFileSync, readdirSync } from 'node:fs';
19
19
  import { join, relative } from 'node:path';
20
20
  import { formatWorkingState, getWorkingState } from '../learning/working-state.js';
21
+ import { handoffBlockFor } from './step-handoff.js';
21
22
  // ─── Constants ──────────────────────────────────────────────────────────────
22
23
  /** Context file names in priority order (first match wins). */
23
24
  const CONTEXT_FILE_NAMES = [
@@ -76,6 +77,18 @@ export function assessProject(workingDirectory) {
76
77
  catch {
77
78
  // Best-effort — the ledger must never break assessment.
78
79
  }
80
+ // The durable hand-off — work a previous attempt in this project started and
81
+ // did not finish. Read on EVERY assessment (not only on an explicit resume),
82
+ // which is what stops a repeated or reworded ask from re-planning a step that
83
+ // already has half its artifacts on disk (see step-handoff.ts). Reconciled
84
+ // against the filesystem on read, so a step whose files have since vanished is
85
+ // correctly reported as outstanding again.
86
+ try {
87
+ assessment.openHandoffs = handoffBlockFor(workingDirectory) || undefined;
88
+ }
89
+ catch {
90
+ // Best-effort — a hand-off read must never break assessment.
91
+ }
79
92
  return assessment;
80
93
  }
81
94
  // ─── Framework Detection ────────────────────────────────────────────────────
@@ -259,6 +272,10 @@ export function assemblePrompt(stablePrompt, projectAssessment, taskDescription,
259
272
  if (projectAssessment.workingState) {
260
273
  contextParts.push(`\n${projectAssessment.workingState}`);
261
274
  }
275
+ // The unfinished-work hand-off (already self-labelled and self-bounded).
276
+ if (projectAssessment.openHandoffs) {
277
+ contextParts.push(`\n${projectAssessment.openHandoffs}`);
278
+ }
262
279
  if (contextParts.length > 0) {
263
280
  layers.push(`# Project Context\n${contextParts.join('\n')}`);
264
281
  }
@@ -1 +1 @@
1
- {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../../src/agents/prompt-assembly.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"prompt-assembly.js","sourceRoot":"","sources":["../../src/agents/prompt-assembly.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,121 @@
1
+ /**
2
+ * Release preflight — check the things a release cannot undo BEFORE it starts.
3
+ *
4
+ * WHY THIS EXISTS. A live release run bumped the version, committed, tagged and
5
+ * pushed `v3.3.2` — and only THEN discovered it could not publish, because the
6
+ * version-pinned CLI cast still recorded 3.3.1 and `prepublishOnly`'s test run
7
+ * refuses a stale artifact. Everything irreversible had already happened. A
8
+ * release has exactly one cheap moment: before the first phase.
9
+ *
10
+ * The checks are chosen by the same rule `credentials verify` follows — report
11
+ * what was MEASURED, and never fail on a check that could not be made:
12
+ *
13
+ * 1. `npm view <name>@<version>` — is this version already published? (The one
14
+ * condition under which the whole run is pointless; npm is immutable, so a
15
+ * second publish of 3.3.2 can only fail.)
16
+ * 2. The working tree — is it a git repo, is there a remote, is the branch
17
+ * ahead/behind, does the target tag already exist locally or on the remote?
18
+ * 3. The provider×model pair — ONLY when a phase will actually call a model.
19
+ * Since the release phases became deterministic that is normally zero
20
+ * phases, and claiming to have verified a route nothing will use would be
21
+ * exactly the kind of decorative check this repo keeps deleting.
22
+ *
23
+ * A `definitive` failure (the registry answered, the version exists, the tag is
24
+ * taken) blocks the run unless `--force`. An `unknown` (offline, no npm token,
25
+ * no network) warns and continues — a closed network must not make releases
26
+ * impossible, and pretending those checks passed would be worse than admitting
27
+ * they did not run.
28
+ */
29
+ import type { ConfigManager } from '../config/manager.js';
30
+ export interface PreflightCheck {
31
+ name: string;
32
+ /** 'ok' verified good · 'warn' advisory · 'block' a reason not to start. */
33
+ status: 'ok' | 'warn' | 'block';
34
+ detail: string;
35
+ /**
36
+ * True when the answer came from the authoritative source (the registry
37
+ * answered, the tag exists). A `block` with `definitive: false` is a caution,
38
+ * not a verdict.
39
+ */
40
+ definitive: boolean;
41
+ }
42
+ export interface PreflightResult {
43
+ checks: PreflightCheck[];
44
+ /** True when at least one DEFINITIVE block was found. */
45
+ blocked: boolean;
46
+ /** Human-readable one-screen summary. */
47
+ summary: string;
48
+ }
49
+ /**
50
+ * A command runner, injected rather than imported.
51
+ *
52
+ * The checks below are the ones a release must be able to TRUST, and trusting
53
+ * them means being able to test them against the answers that matter — "already
54
+ * published", "tag taken", "registry unreachable" — without a network, a
55
+ * registry or a git repository. A module-mocked `execSync` would also make every
56
+ * test depend on vitest's builtin-mock plumbing; an explicit parameter keeps the
57
+ * seam visible in the signature.
58
+ */
59
+ export type CommandRunner = (command: string, timeoutMs?: number) => {
60
+ ok: boolean;
61
+ output: string;
62
+ };
63
+ export interface PreflightInput {
64
+ /** `package.json` of the project being released. */
65
+ cwd?: string;
66
+ /** The version the release WILL create (computed from the bump type). */
67
+ targetVersion: string;
68
+ /**
69
+ * True when some phase will call a language model. Only then is the route
70
+ * checked — see the module docstring.
71
+ */
72
+ needsModel?: boolean;
73
+ /** Injected so the model check is testable without a provider instance. */
74
+ probeModel?: () => Promise<{
75
+ ok: boolean;
76
+ checked: boolean;
77
+ detail: string;
78
+ }>;
79
+ /** Injected so the command checks are testable without a network. */
80
+ runner?: CommandRunner;
81
+ }
82
+ /**
83
+ * Read the package name/version the release concerns.
84
+ * Exported for tests and for the caller that computes the target version.
85
+ */
86
+ export declare function readReleaseTarget(cwd?: string): {
87
+ name: string;
88
+ version: string;
89
+ private?: boolean;
90
+ } | null;
91
+ /** Is `name@version` already on the registry? */
92
+ export declare function checkVersionPublished(name: string, version: string, runner?: CommandRunner): PreflightCheck;
93
+ /** Repo/remote/tag state — the facts that make a push succeed or collide. */
94
+ export declare function checkGitState(targetVersion: string, cwd?: string, runner?: CommandRunner): PreflightCheck[];
95
+ /**
96
+ * Run every check. Never throws; a check that cannot run reports `warn`.
97
+ */
98
+ export declare function runReleasePreflight(input: PreflightInput): Promise<PreflightResult>;
99
+ /** One screen: what was verified, what could not be, and what stops the run. */
100
+ export declare function formatPreflight(result: {
101
+ checks: PreflightCheck[];
102
+ blocked: boolean;
103
+ }): string;
104
+ /**
105
+ * Verify the route a model-calling phase would use — WITHOUT spending a
106
+ * generation.
107
+ *
108
+ * What this genuinely proves: the provider is constructible and reachable, and
109
+ * the model exists on it (the resolver validates against the provider's LIVE
110
+ * model list, which is a real API call). What it does NOT prove: that a
111
+ * generation succeeds for this prompt. The detail string says exactly that, so
112
+ * the report cannot be read as more than it is.
113
+ */
114
+ export declare function probeProviderModel(configManager: ConfigManager, providerOption?: string, modelOption?: string): Promise<{
115
+ ok: boolean;
116
+ checked: boolean;
117
+ detail: string;
118
+ }>;
119
+ /** Log a preflight result at the right level for each status. */
120
+ export declare function reportPreflight(result: PreflightResult): void;
121
+ //# sourceMappingURL=release-preflight.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"release-preflight.d.ts","sourceRoot":"","sources":["../../src/agents/release-preflight.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AAQH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAC;AAG1D,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,4EAA4E;IAC5E,MAAM,EAAE,IAAI,GAAG,MAAM,GAAG,OAAO,CAAC;IAChC,MAAM,EAAE,MAAM,CAAC;IACf;;;;OAIG;IACH,UAAU,EAAE,OAAO,CAAC;CACrB;AAED,MAAM,WAAW,eAAe;IAC9B,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,yDAAyD;IACzD,OAAO,EAAE,OAAO,CAAC;IACjB,yCAAyC;IACzC,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;GASG;AACH,MAAM,MAAM,aAAa,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE,MAAM,KAAK;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC;AAYrG,MAAM,WAAW,cAAc;IAC7B,oDAAoD;IACpD,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,yEAAyE;IACzE,aAAa,EAAE,MAAM,CAAC;IACtB;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,2EAA2E;IAC3E,UAAU,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,EAAE,EAAE,OAAO,CAAC;QAAC,OAAO,EAAE,OAAO,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9E,qEAAqE;IACrE,MAAM,CAAC,EAAE,aAAa,CAAC;CACxB;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,GAAG,SAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,OAAO,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,IAAI,CAQlH;AAED,iDAAiD;AACjD,wBAAgB,qBAAqB,CACnC,IAAI,EAAE,MAAM,EACZ,OAAO,EAAE,MAAM,EACf,MAAM,GAAE,aAA6B,GACpC,cAAc,CAyBhB;AAED,6EAA6E;AAC7E,wBAAgB,aAAa,CAC3B,aAAa,EAAE,MAAM,EACrB,GAAG,SAAgB,EACnB,MAAM,GAAE,aAA6B,GACpC,cAAc,EAAE,CAwDlB;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CAmDzF;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,MAAM,EAAE;IAAE,MAAM,EAAE,cAAc,EAAE,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAAE,GAAG,MAAM,CAc9F;AAED;;;;;;;;;GASG;AACH,wBAAsB,kBAAkB,CACtC,aAAa,EAAE,aAAa,EAC5B,cAAc,CAAC,EAAE,MAAM,EACvB,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAAC;IAAE,EAAE,EAAE,OAAO,CAAC;IAAC,OAAO,EAAE,OAAO,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CA4B5D;AAED,iEAAiE;AACjE,wBAAgB,eAAe,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI,CAS7D"}