@osolmaz/pi-workflows 0.13.0 → 0.13.1

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 (45) hide show
  1. package/README.md +7 -5
  2. package/dist/builtins/autodoc.workflow.d.ts +191 -4
  3. package/dist/builtins/autodoc.workflow.js +156 -30
  4. package/dist/builtins/autodoc.workflow.js.map +1 -1
  5. package/dist/builtins/autoimplement-command-batches.d.ts +1 -0
  6. package/dist/builtins/autoimplement-command-batches.js +29 -31
  7. package/dist/builtins/autoimplement-command-batches.js.map +1 -1
  8. package/dist/builtins/autoimplement.workflow.d.ts +1255 -29
  9. package/dist/builtins/autoimplement.workflow.js +416 -153
  10. package/dist/builtins/autoimplement.workflow.js.map +1 -1
  11. package/dist/builtins/catalog.js +2 -2
  12. package/dist/builtins/catalog.js.map +1 -1
  13. package/dist/builtins/change-verification.workflow.d.ts +110 -0
  14. package/dist/builtins/change-verification.workflow.js +860 -0
  15. package/dist/builtins/change-verification.workflow.js.map +1 -0
  16. package/dist/builtins/monitor.workflow.js +4 -3
  17. package/dist/builtins/monitor.workflow.js.map +1 -1
  18. package/dist/builtins/plan-change.workflow.d.ts +359 -6
  19. package/dist/builtins/plan-change.workflow.js +26 -0
  20. package/dist/builtins/plan-change.workflow.js.map +1 -1
  21. package/dist/builtins/workspace-preparation.workflow.d.ts +75 -0
  22. package/dist/builtins/workspace-preparation.workflow.js +498 -0
  23. package/dist/builtins/workspace-preparation.workflow.js.map +1 -0
  24. package/dist/extension/executor.js +1 -4
  25. package/dist/extension/executor.js.map +1 -1
  26. package/dist/extension/index.js +0 -14
  27. package/dist/extension/index.js.map +1 -1
  28. package/docs/WORKFLOW_COMPOSITION.md +8 -0
  29. package/docs/plans/2026-08-23-assistant-agent-completion-plan.md +1 -1
  30. package/docs/plans/2026-08-24-change-scoped-verification-plan.md +419 -0
  31. package/docs/workflows.md +8 -13
  32. package/herdr-plugin.toml +1 -1
  33. package/package.json +1 -1
  34. package/skills/autodoc/SKILL.md +7 -0
  35. package/skills/autoimplement/SKILL.md +4 -0
  36. package/src/builtins/autodoc.workflow.ts +184 -33
  37. package/src/builtins/autoimplement-command-batches.ts +39 -33
  38. package/src/builtins/autoimplement.workflow.ts +483 -175
  39. package/src/builtins/catalog.ts +2 -2
  40. package/src/builtins/change-verification.workflow.ts +1143 -0
  41. package/src/builtins/monitor.workflow.ts +6 -3
  42. package/src/builtins/plan-change.workflow.ts +35 -0
  43. package/src/builtins/workspace-preparation.workflow.ts +668 -0
  44. package/src/extension/executor.ts +1 -4
  45. package/src/extension/index.ts +0 -14
@@ -1,14 +1,16 @@
1
1
  import type { WorkflowNodeContext } from "../workflows/types.js";
2
2
  import { type AutodocInput } from "./autodoc.workflow.js";
3
3
  import { type AutoimplementConcurrency } from "./autoimplement-command-batches.js";
4
+ import { type ChangeVerificationInput, type VerificationCheck } from "./change-verification.workflow.js";
4
5
  import { type PlanApprovalPolicy } from "./plan-approval.workflow.js";
5
6
  import { type NormalizedPlanChangeInput } from "./plan-change.workflow.js";
7
+ import { parsePreparedWorkspace, type PreparedWorkspace, type WorkspaceMode, type WorkspacePreparationInput } from "./workspace-preparation.workflow.js";
6
8
  export type AutoimplementInput = {
7
9
  task: string;
8
10
  plan?: unknown;
9
11
  scope?: string;
10
12
  constraints?: string[];
11
- repository?: string;
13
+ repository: string;
12
14
  baseBranch?: string;
13
15
  merge?: boolean;
14
16
  documents?: string[];
@@ -19,6 +21,10 @@ export type AutoimplementInput = {
19
21
  };
20
22
  approval?: PlanApprovalPolicy;
21
23
  concurrency?: Partial<AutoimplementConcurrency>;
24
+ workspaceMode?: WorkspaceMode;
25
+ directDefaultBranchAuthorized?: boolean;
26
+ preparedWorkspace?: PreparedWorkspace;
27
+ verificationChecks?: VerificationCheck[];
22
28
  };
23
29
  export type ExistingPlanDiscovery = {
24
30
  route: "found" | "blocked";
@@ -82,6 +88,57 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
82
88
  readonly validate: (value: unknown) => AutoimplementBlocked;
83
89
  };
84
90
  }, {
91
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
92
+ readonly ready: {
93
+ readonly from: "ready";
94
+ readonly validate: typeof parsePreparedWorkspace;
95
+ };
96
+ readonly blocked: {
97
+ readonly from: "blocked";
98
+ readonly validate: (value: unknown) => {
99
+ route: "ready" | "propose" | "blocked";
100
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
101
+ preparedWorkspace?: PreparedWorkspace;
102
+ repository: string;
103
+ baseBranch: string;
104
+ baseRevision?: string;
105
+ currentBranch?: string;
106
+ preExistingChangedPaths: string[];
107
+ reason: string;
108
+ evidence: string[];
109
+ };
110
+ };
111
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
112
+ nodes: {
113
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
114
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
115
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
116
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
117
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
118
+ };
119
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
120
+ exits?: {
121
+ readonly ready: {
122
+ readonly from: "ready";
123
+ readonly validate: typeof parsePreparedWorkspace;
124
+ };
125
+ readonly blocked: {
126
+ readonly from: "blocked";
127
+ readonly validate: (value: unknown) => {
128
+ route: "ready" | "propose" | "blocked";
129
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
130
+ preparedWorkspace?: PreparedWorkspace;
131
+ repository: string;
132
+ baseBranch: string;
133
+ baseRevision?: string;
134
+ currentBranch?: string;
135
+ preExistingChangedPaths: string[];
136
+ reason: string;
137
+ evidence: string[];
138
+ };
139
+ };
140
+ };
141
+ }>;
85
142
  readonly documentation: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<AutodocInput, {
86
143
  readonly ready: {
87
144
  readonly from: "finalize";
@@ -91,17 +148,191 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
91
148
  readonly from: "blocked";
92
149
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
93
150
  };
94
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
151
+ }, {
152
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
153
+ readonly ready: {
154
+ readonly from: "ready";
155
+ readonly validate: typeof parsePreparedWorkspace;
156
+ };
157
+ readonly blocked: {
158
+ readonly from: "blocked";
159
+ readonly validate: (value: unknown) => {
160
+ route: "ready" | "propose" | "blocked";
161
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
162
+ preparedWorkspace?: PreparedWorkspace;
163
+ repository: string;
164
+ baseBranch: string;
165
+ baseRevision?: string;
166
+ currentBranch?: string;
167
+ preExistingChangedPaths: string[];
168
+ reason: string;
169
+ evidence: string[];
170
+ };
171
+ };
172
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
173
+ nodes: {
174
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
175
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
176
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
177
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
178
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
179
+ };
180
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
181
+ exits?: {
182
+ readonly ready: {
183
+ readonly from: "ready";
184
+ readonly validate: typeof parsePreparedWorkspace;
185
+ };
186
+ readonly blocked: {
187
+ readonly from: "blocked";
188
+ readonly validate: (value: unknown) => {
189
+ route: "ready" | "propose" | "blocked";
190
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
191
+ preparedWorkspace?: PreparedWorkspace;
192
+ repository: string;
193
+ baseBranch: string;
194
+ baseRevision?: string;
195
+ currentBranch?: string;
196
+ preExistingChangedPaths: string[];
197
+ reason: string;
198
+ evidence: string[];
199
+ };
200
+ };
201
+ };
202
+ }>;
203
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
204
+ readonly ready: {
205
+ readonly from: "ready";
206
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
207
+ };
208
+ readonly blocked: {
209
+ readonly from: "blocked";
210
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
211
+ };
212
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
213
+ nodes: {
214
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
215
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
216
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
217
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
218
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
219
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
220
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
221
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
222
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
223
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
224
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
225
+ };
226
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
227
+ exits?: {
228
+ readonly ready: {
229
+ readonly from: "ready";
230
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
231
+ };
232
+ readonly blocked: {
233
+ readonly from: "blocked";
234
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
235
+ };
236
+ };
237
+ }>;
238
+ }> & {
95
239
  nodes: {
96
240
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
97
241
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
242
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
98
243
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
99
244
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
100
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
101
245
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
102
246
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
103
247
  };
104
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
248
+ includes?: {
249
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
250
+ readonly ready: {
251
+ readonly from: "ready";
252
+ readonly validate: typeof parsePreparedWorkspace;
253
+ };
254
+ readonly blocked: {
255
+ readonly from: "blocked";
256
+ readonly validate: (value: unknown) => {
257
+ route: "ready" | "propose" | "blocked";
258
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
259
+ preparedWorkspace?: PreparedWorkspace;
260
+ repository: string;
261
+ baseBranch: string;
262
+ baseRevision?: string;
263
+ currentBranch?: string;
264
+ preExistingChangedPaths: string[];
265
+ reason: string;
266
+ evidence: string[];
267
+ };
268
+ };
269
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
270
+ nodes: {
271
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
272
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
273
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
274
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
275
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
276
+ };
277
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
278
+ exits?: {
279
+ readonly ready: {
280
+ readonly from: "ready";
281
+ readonly validate: typeof parsePreparedWorkspace;
282
+ };
283
+ readonly blocked: {
284
+ readonly from: "blocked";
285
+ readonly validate: (value: unknown) => {
286
+ route: "ready" | "propose" | "blocked";
287
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
288
+ preparedWorkspace?: PreparedWorkspace;
289
+ repository: string;
290
+ baseBranch: string;
291
+ baseRevision?: string;
292
+ currentBranch?: string;
293
+ preExistingChangedPaths: string[];
294
+ reason: string;
295
+ evidence: string[];
296
+ };
297
+ };
298
+ };
299
+ }>;
300
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
301
+ readonly ready: {
302
+ readonly from: "ready";
303
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
304
+ };
305
+ readonly blocked: {
306
+ readonly from: "blocked";
307
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
308
+ };
309
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
310
+ nodes: {
311
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
312
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
313
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
314
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
315
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
316
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
317
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
318
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
319
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
320
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
321
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
322
+ };
323
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
324
+ exits?: {
325
+ readonly ready: {
326
+ readonly from: "ready";
327
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
328
+ };
329
+ readonly blocked: {
330
+ readonly from: "blocked";
331
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
332
+ };
333
+ };
334
+ }>;
335
+ };
105
336
  exits?: {
106
337
  readonly ready: {
107
338
  readonly from: "finalize";
@@ -113,6 +344,41 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
113
344
  };
114
345
  };
115
346
  }>;
347
+ readonly localVerification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
348
+ readonly ready: {
349
+ readonly from: "ready";
350
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
351
+ };
352
+ readonly blocked: {
353
+ readonly from: "blocked";
354
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
355
+ };
356
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
357
+ nodes: {
358
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
359
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
360
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
361
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
362
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
363
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
364
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
365
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
366
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
367
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
368
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
369
+ };
370
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
371
+ exits?: {
372
+ readonly ready: {
373
+ readonly from: "ready";
374
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
375
+ };
376
+ readonly blocked: {
377
+ readonly from: "blocked";
378
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
379
+ };
380
+ };
381
+ }>;
116
382
  readonly redesign: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<NormalizedPlanChangeInput, {
117
383
  readonly ready: {
118
384
  readonly from: "finalize";
@@ -237,17 +503,191 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
237
503
  readonly from: "blocked";
238
504
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
239
505
  };
240
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
506
+ }, {
507
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
508
+ readonly ready: {
509
+ readonly from: "ready";
510
+ readonly validate: typeof parsePreparedWorkspace;
511
+ };
512
+ readonly blocked: {
513
+ readonly from: "blocked";
514
+ readonly validate: (value: unknown) => {
515
+ route: "ready" | "propose" | "blocked";
516
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
517
+ preparedWorkspace?: PreparedWorkspace;
518
+ repository: string;
519
+ baseBranch: string;
520
+ baseRevision?: string;
521
+ currentBranch?: string;
522
+ preExistingChangedPaths: string[];
523
+ reason: string;
524
+ evidence: string[];
525
+ };
526
+ };
527
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
528
+ nodes: {
529
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
530
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
531
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
532
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
533
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
534
+ };
535
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
536
+ exits?: {
537
+ readonly ready: {
538
+ readonly from: "ready";
539
+ readonly validate: typeof parsePreparedWorkspace;
540
+ };
541
+ readonly blocked: {
542
+ readonly from: "blocked";
543
+ readonly validate: (value: unknown) => {
544
+ route: "ready" | "propose" | "blocked";
545
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
546
+ preparedWorkspace?: PreparedWorkspace;
547
+ repository: string;
548
+ baseBranch: string;
549
+ baseRevision?: string;
550
+ currentBranch?: string;
551
+ preExistingChangedPaths: string[];
552
+ reason: string;
553
+ evidence: string[];
554
+ };
555
+ };
556
+ };
557
+ }>;
558
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
559
+ readonly ready: {
560
+ readonly from: "ready";
561
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
562
+ };
563
+ readonly blocked: {
564
+ readonly from: "blocked";
565
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
566
+ };
567
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
568
+ nodes: {
569
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
570
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
571
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
572
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
573
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
574
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
575
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
576
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
577
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
578
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
579
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
580
+ };
581
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
582
+ exits?: {
583
+ readonly ready: {
584
+ readonly from: "ready";
585
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
586
+ };
587
+ readonly blocked: {
588
+ readonly from: "blocked";
589
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
590
+ };
591
+ };
592
+ }>;
593
+ }> & {
241
594
  nodes: {
242
595
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
243
596
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
597
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
244
598
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
245
599
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
246
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
247
600
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
248
601
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
249
602
  };
250
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
603
+ includes?: {
604
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
605
+ readonly ready: {
606
+ readonly from: "ready";
607
+ readonly validate: typeof parsePreparedWorkspace;
608
+ };
609
+ readonly blocked: {
610
+ readonly from: "blocked";
611
+ readonly validate: (value: unknown) => {
612
+ route: "ready" | "propose" | "blocked";
613
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
614
+ preparedWorkspace?: PreparedWorkspace;
615
+ repository: string;
616
+ baseBranch: string;
617
+ baseRevision?: string;
618
+ currentBranch?: string;
619
+ preExistingChangedPaths: string[];
620
+ reason: string;
621
+ evidence: string[];
622
+ };
623
+ };
624
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
625
+ nodes: {
626
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
627
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
628
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
629
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
630
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
631
+ };
632
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
633
+ exits?: {
634
+ readonly ready: {
635
+ readonly from: "ready";
636
+ readonly validate: typeof parsePreparedWorkspace;
637
+ };
638
+ readonly blocked: {
639
+ readonly from: "blocked";
640
+ readonly validate: (value: unknown) => {
641
+ route: "ready" | "propose" | "blocked";
642
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
643
+ preparedWorkspace?: PreparedWorkspace;
644
+ repository: string;
645
+ baseBranch: string;
646
+ baseRevision?: string;
647
+ currentBranch?: string;
648
+ preExistingChangedPaths: string[];
649
+ reason: string;
650
+ evidence: string[];
651
+ };
652
+ };
653
+ };
654
+ }>;
655
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
656
+ readonly ready: {
657
+ readonly from: "ready";
658
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
659
+ };
660
+ readonly blocked: {
661
+ readonly from: "blocked";
662
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
663
+ };
664
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
665
+ nodes: {
666
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
667
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
668
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
669
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
670
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
671
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
672
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
673
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
674
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
675
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
676
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
677
+ };
678
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
679
+ exits?: {
680
+ readonly ready: {
681
+ readonly from: "ready";
682
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
683
+ };
684
+ readonly blocked: {
685
+ readonly from: "blocked";
686
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
687
+ };
688
+ };
689
+ }>;
690
+ };
251
691
  exits?: {
252
692
  readonly ready: {
253
693
  readonly from: "finalize";
@@ -439,23 +879,197 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
439
879
  readonly from: "blocked";
440
880
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
441
881
  };
442
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
882
+ }, {
883
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
884
+ readonly ready: {
885
+ readonly from: "ready";
886
+ readonly validate: typeof parsePreparedWorkspace;
887
+ };
888
+ readonly blocked: {
889
+ readonly from: "blocked";
890
+ readonly validate: (value: unknown) => {
891
+ route: "ready" | "propose" | "blocked";
892
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
893
+ preparedWorkspace?: PreparedWorkspace;
894
+ repository: string;
895
+ baseBranch: string;
896
+ baseRevision?: string;
897
+ currentBranch?: string;
898
+ preExistingChangedPaths: string[];
899
+ reason: string;
900
+ evidence: string[];
901
+ };
902
+ };
903
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
904
+ nodes: {
905
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
906
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
907
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
908
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
909
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
910
+ };
911
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
912
+ exits?: {
913
+ readonly ready: {
914
+ readonly from: "ready";
915
+ readonly validate: typeof parsePreparedWorkspace;
916
+ };
917
+ readonly blocked: {
918
+ readonly from: "blocked";
919
+ readonly validate: (value: unknown) => {
920
+ route: "ready" | "propose" | "blocked";
921
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
922
+ preparedWorkspace?: PreparedWorkspace;
923
+ repository: string;
924
+ baseBranch: string;
925
+ baseRevision?: string;
926
+ currentBranch?: string;
927
+ preExistingChangedPaths: string[];
928
+ reason: string;
929
+ evidence: string[];
930
+ };
931
+ };
932
+ };
933
+ }>;
934
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
935
+ readonly ready: {
936
+ readonly from: "ready";
937
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
938
+ };
939
+ readonly blocked: {
940
+ readonly from: "blocked";
941
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
942
+ };
943
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
944
+ nodes: {
945
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
946
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
947
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
948
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
949
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
950
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
951
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
952
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
953
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
954
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
955
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
956
+ };
957
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
958
+ exits?: {
959
+ readonly ready: {
960
+ readonly from: "ready";
961
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
962
+ };
963
+ readonly blocked: {
964
+ readonly from: "blocked";
965
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
966
+ };
967
+ };
968
+ }>;
969
+ }> & {
443
970
  nodes: {
444
971
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
445
972
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
973
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
446
974
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
447
975
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
448
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
449
976
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
450
977
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
451
978
  };
452
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
453
- exits?: {
454
- readonly ready: {
455
- readonly from: "finalize";
456
- readonly validate: (value: unknown) => import("./autodoc.workflow.js").DocumentedPlan;
457
- };
458
- readonly blocked: {
979
+ includes?: {
980
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
981
+ readonly ready: {
982
+ readonly from: "ready";
983
+ readonly validate: typeof parsePreparedWorkspace;
984
+ };
985
+ readonly blocked: {
986
+ readonly from: "blocked";
987
+ readonly validate: (value: unknown) => {
988
+ route: "ready" | "propose" | "blocked";
989
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
990
+ preparedWorkspace?: PreparedWorkspace;
991
+ repository: string;
992
+ baseBranch: string;
993
+ baseRevision?: string;
994
+ currentBranch?: string;
995
+ preExistingChangedPaths: string[];
996
+ reason: string;
997
+ evidence: string[];
998
+ };
999
+ };
1000
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1001
+ nodes: {
1002
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1003
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1004
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1005
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1006
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1007
+ };
1008
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1009
+ exits?: {
1010
+ readonly ready: {
1011
+ readonly from: "ready";
1012
+ readonly validate: typeof parsePreparedWorkspace;
1013
+ };
1014
+ readonly blocked: {
1015
+ readonly from: "blocked";
1016
+ readonly validate: (value: unknown) => {
1017
+ route: "ready" | "propose" | "blocked";
1018
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1019
+ preparedWorkspace?: PreparedWorkspace;
1020
+ repository: string;
1021
+ baseBranch: string;
1022
+ baseRevision?: string;
1023
+ currentBranch?: string;
1024
+ preExistingChangedPaths: string[];
1025
+ reason: string;
1026
+ evidence: string[];
1027
+ };
1028
+ };
1029
+ };
1030
+ }>;
1031
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1032
+ readonly ready: {
1033
+ readonly from: "ready";
1034
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1035
+ };
1036
+ readonly blocked: {
1037
+ readonly from: "blocked";
1038
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1039
+ };
1040
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1041
+ nodes: {
1042
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1043
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1044
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1045
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1046
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1047
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1048
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1049
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1050
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1051
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1052
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1053
+ };
1054
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1055
+ exits?: {
1056
+ readonly ready: {
1057
+ readonly from: "ready";
1058
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1059
+ };
1060
+ readonly blocked: {
1061
+ readonly from: "blocked";
1062
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1063
+ };
1064
+ };
1065
+ }>;
1066
+ };
1067
+ exits?: {
1068
+ readonly ready: {
1069
+ readonly from: "finalize";
1070
+ readonly validate: (value: unknown) => import("./autodoc.workflow.js").DocumentedPlan;
1071
+ };
1072
+ readonly blocked: {
459
1073
  readonly from: "blocked";
460
1074
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
461
1075
  };
@@ -535,23 +1149,27 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
535
1149
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
536
1150
  readonly findPlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
537
1151
  readonly routeFoundPlan: import("../workflows/types.js").ComputeNodeDefinition;
1152
+ readonly routeWorkspace: import("../workflows/types.js").ComputeNodeDefinition;
538
1153
  readonly adoptPlan: import("../workflows/types.js").ComputeNodeDefinition;
539
1154
  readonly timeoutFallbackGuard: import("../workflows/types.js").ComputeNodeDefinition;
540
1155
  readonly timeoutFallback: import("../workflows/types.js").SubmittedAgentNodeDefinition;
541
1156
  readonly routeTimeoutFallback: import("../workflows/types.js").ComputeNodeDefinition;
542
- readonly propagateSupportedFailure: import("../workflows/types.js").ComputeNodeDefinition;
543
1157
  readonly routeVerifyP2Result: import("../workflows/types.js").ComputeNodeDefinition;
544
1158
  readonly routeInspectCommentsResult: import("../workflows/types.js").ComputeNodeDefinition;
545
1159
  readonly routeInspectCiResult: import("../workflows/types.js").ComputeNodeDefinition;
546
1160
  readonly routeFinalizeDeliveryResult: import("../workflows/types.js").ComputeNodeDefinition;
547
1161
  readonly implement: import("../workflows/types.js").SubmittedAgentNodeDefinition;
548
1162
  readonly classifyImplementation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1163
+ readonly createBlockerClaim: import("../workflows/types.js").ComputeNodeDefinition;
1164
+ readonly routeBlockerClaim: import("../workflows/types.js").ComputeNodeDefinition;
549
1165
  readonly challengeBlockerGuard: import("../workflows/types.js").ComputeNodeDefinition;
550
1166
  readonly challengeBlocker: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1167
+ readonly routeChallenge: import("../workflows/types.js").ComputeNodeDefinition;
1168
+ readonly selectVerificationPath: import("../workflows/types.js").ComputeNodeDefinition;
551
1169
  readonly planVerification: import("../workflows/types.js").SubmittedAgentNodeDefinition;
552
- readonly runVerification: import("../workflows/types.js").FunctionActionNodeDefinition;
553
- readonly verify: import("../workflows/types.js").SubmittedAgentNodeDefinition;
554
- readonly classifyVerification: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1170
+ readonly routeVerifiedWorkspace: import("../workflows/types.js").ComputeNodeDefinition;
1171
+ readonly routeFinalizeDefaultBranchResult: import("../workflows/types.js").ComputeNodeDefinition;
1172
+ readonly finalizeDefaultBranch: import("../workflows/types.js").SubmittedAgentNodeDefinition;
555
1173
  readonly fix: import("../workflows/types.js").SubmittedAgentNodeDefinition;
556
1174
  readonly publish: import("../workflows/types.js").SubmittedAgentNodeDefinition;
557
1175
  readonly selectReviewCommands: import("../workflows/types.js").ComputeNodeDefinition;
@@ -573,6 +1191,57 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
573
1191
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
574
1192
  };
575
1193
  includes?: {
1194
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1195
+ readonly ready: {
1196
+ readonly from: "ready";
1197
+ readonly validate: typeof parsePreparedWorkspace;
1198
+ };
1199
+ readonly blocked: {
1200
+ readonly from: "blocked";
1201
+ readonly validate: (value: unknown) => {
1202
+ route: "ready" | "propose" | "blocked";
1203
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1204
+ preparedWorkspace?: PreparedWorkspace;
1205
+ repository: string;
1206
+ baseBranch: string;
1207
+ baseRevision?: string;
1208
+ currentBranch?: string;
1209
+ preExistingChangedPaths: string[];
1210
+ reason: string;
1211
+ evidence: string[];
1212
+ };
1213
+ };
1214
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1215
+ nodes: {
1216
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1217
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1218
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1219
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1220
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1221
+ };
1222
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1223
+ exits?: {
1224
+ readonly ready: {
1225
+ readonly from: "ready";
1226
+ readonly validate: typeof parsePreparedWorkspace;
1227
+ };
1228
+ readonly blocked: {
1229
+ readonly from: "blocked";
1230
+ readonly validate: (value: unknown) => {
1231
+ route: "ready" | "propose" | "blocked";
1232
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1233
+ preparedWorkspace?: PreparedWorkspace;
1234
+ repository: string;
1235
+ baseBranch: string;
1236
+ baseRevision?: string;
1237
+ currentBranch?: string;
1238
+ preExistingChangedPaths: string[];
1239
+ reason: string;
1240
+ evidence: string[];
1241
+ };
1242
+ };
1243
+ };
1244
+ }>;
576
1245
  readonly documentation: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<AutodocInput, {
577
1246
  readonly ready: {
578
1247
  readonly from: "finalize";
@@ -582,17 +1251,191 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
582
1251
  readonly from: "blocked";
583
1252
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
584
1253
  };
585
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
1254
+ }, {
1255
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1256
+ readonly ready: {
1257
+ readonly from: "ready";
1258
+ readonly validate: typeof parsePreparedWorkspace;
1259
+ };
1260
+ readonly blocked: {
1261
+ readonly from: "blocked";
1262
+ readonly validate: (value: unknown) => {
1263
+ route: "ready" | "propose" | "blocked";
1264
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1265
+ preparedWorkspace?: PreparedWorkspace;
1266
+ repository: string;
1267
+ baseBranch: string;
1268
+ baseRevision?: string;
1269
+ currentBranch?: string;
1270
+ preExistingChangedPaths: string[];
1271
+ reason: string;
1272
+ evidence: string[];
1273
+ };
1274
+ };
1275
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1276
+ nodes: {
1277
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1278
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1279
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1280
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1281
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1282
+ };
1283
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1284
+ exits?: {
1285
+ readonly ready: {
1286
+ readonly from: "ready";
1287
+ readonly validate: typeof parsePreparedWorkspace;
1288
+ };
1289
+ readonly blocked: {
1290
+ readonly from: "blocked";
1291
+ readonly validate: (value: unknown) => {
1292
+ route: "ready" | "propose" | "blocked";
1293
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1294
+ preparedWorkspace?: PreparedWorkspace;
1295
+ repository: string;
1296
+ baseBranch: string;
1297
+ baseRevision?: string;
1298
+ currentBranch?: string;
1299
+ preExistingChangedPaths: string[];
1300
+ reason: string;
1301
+ evidence: string[];
1302
+ };
1303
+ };
1304
+ };
1305
+ }>;
1306
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1307
+ readonly ready: {
1308
+ readonly from: "ready";
1309
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1310
+ };
1311
+ readonly blocked: {
1312
+ readonly from: "blocked";
1313
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1314
+ };
1315
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1316
+ nodes: {
1317
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1318
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1319
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1320
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1321
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1322
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1323
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1324
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1325
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1326
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1327
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1328
+ };
1329
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1330
+ exits?: {
1331
+ readonly ready: {
1332
+ readonly from: "ready";
1333
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1334
+ };
1335
+ readonly blocked: {
1336
+ readonly from: "blocked";
1337
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1338
+ };
1339
+ };
1340
+ }>;
1341
+ }> & {
586
1342
  nodes: {
587
1343
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
588
1344
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1345
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
589
1346
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
590
1347
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
591
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
592
1348
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
593
1349
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
594
1350
  };
595
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
1351
+ includes?: {
1352
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1353
+ readonly ready: {
1354
+ readonly from: "ready";
1355
+ readonly validate: typeof parsePreparedWorkspace;
1356
+ };
1357
+ readonly blocked: {
1358
+ readonly from: "blocked";
1359
+ readonly validate: (value: unknown) => {
1360
+ route: "ready" | "propose" | "blocked";
1361
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1362
+ preparedWorkspace?: PreparedWorkspace;
1363
+ repository: string;
1364
+ baseBranch: string;
1365
+ baseRevision?: string;
1366
+ currentBranch?: string;
1367
+ preExistingChangedPaths: string[];
1368
+ reason: string;
1369
+ evidence: string[];
1370
+ };
1371
+ };
1372
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1373
+ nodes: {
1374
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1375
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1376
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1377
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1378
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1379
+ };
1380
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1381
+ exits?: {
1382
+ readonly ready: {
1383
+ readonly from: "ready";
1384
+ readonly validate: typeof parsePreparedWorkspace;
1385
+ };
1386
+ readonly blocked: {
1387
+ readonly from: "blocked";
1388
+ readonly validate: (value: unknown) => {
1389
+ route: "ready" | "propose" | "blocked";
1390
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1391
+ preparedWorkspace?: PreparedWorkspace;
1392
+ repository: string;
1393
+ baseBranch: string;
1394
+ baseRevision?: string;
1395
+ currentBranch?: string;
1396
+ preExistingChangedPaths: string[];
1397
+ reason: string;
1398
+ evidence: string[];
1399
+ };
1400
+ };
1401
+ };
1402
+ }>;
1403
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1404
+ readonly ready: {
1405
+ readonly from: "ready";
1406
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1407
+ };
1408
+ readonly blocked: {
1409
+ readonly from: "blocked";
1410
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1411
+ };
1412
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1413
+ nodes: {
1414
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1415
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1416
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1417
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1418
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1419
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1420
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1421
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1422
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1423
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1424
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1425
+ };
1426
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1427
+ exits?: {
1428
+ readonly ready: {
1429
+ readonly from: "ready";
1430
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1431
+ };
1432
+ readonly blocked: {
1433
+ readonly from: "blocked";
1434
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1435
+ };
1436
+ };
1437
+ }>;
1438
+ };
596
1439
  exits?: {
597
1440
  readonly ready: {
598
1441
  readonly from: "finalize";
@@ -604,6 +1447,41 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
604
1447
  };
605
1448
  };
606
1449
  }>;
1450
+ readonly localVerification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1451
+ readonly ready: {
1452
+ readonly from: "ready";
1453
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1454
+ };
1455
+ readonly blocked: {
1456
+ readonly from: "blocked";
1457
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1458
+ };
1459
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1460
+ nodes: {
1461
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1462
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1463
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1464
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1465
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1466
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1467
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1468
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1469
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1470
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1471
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1472
+ };
1473
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1474
+ exits?: {
1475
+ readonly ready: {
1476
+ readonly from: "ready";
1477
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1478
+ };
1479
+ readonly blocked: {
1480
+ readonly from: "blocked";
1481
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1482
+ };
1483
+ };
1484
+ }>;
607
1485
  readonly redesign: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<NormalizedPlanChangeInput, {
608
1486
  readonly ready: {
609
1487
  readonly from: "finalize";
@@ -728,17 +1606,191 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
728
1606
  readonly from: "blocked";
729
1607
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
730
1608
  };
731
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
1609
+ }, {
1610
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1611
+ readonly ready: {
1612
+ readonly from: "ready";
1613
+ readonly validate: typeof parsePreparedWorkspace;
1614
+ };
1615
+ readonly blocked: {
1616
+ readonly from: "blocked";
1617
+ readonly validate: (value: unknown) => {
1618
+ route: "ready" | "propose" | "blocked";
1619
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1620
+ preparedWorkspace?: PreparedWorkspace;
1621
+ repository: string;
1622
+ baseBranch: string;
1623
+ baseRevision?: string;
1624
+ currentBranch?: string;
1625
+ preExistingChangedPaths: string[];
1626
+ reason: string;
1627
+ evidence: string[];
1628
+ };
1629
+ };
1630
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1631
+ nodes: {
1632
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1633
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1634
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1635
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1636
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1637
+ };
1638
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1639
+ exits?: {
1640
+ readonly ready: {
1641
+ readonly from: "ready";
1642
+ readonly validate: typeof parsePreparedWorkspace;
1643
+ };
1644
+ readonly blocked: {
1645
+ readonly from: "blocked";
1646
+ readonly validate: (value: unknown) => {
1647
+ route: "ready" | "propose" | "blocked";
1648
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1649
+ preparedWorkspace?: PreparedWorkspace;
1650
+ repository: string;
1651
+ baseBranch: string;
1652
+ baseRevision?: string;
1653
+ currentBranch?: string;
1654
+ preExistingChangedPaths: string[];
1655
+ reason: string;
1656
+ evidence: string[];
1657
+ };
1658
+ };
1659
+ };
1660
+ }>;
1661
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1662
+ readonly ready: {
1663
+ readonly from: "ready";
1664
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1665
+ };
1666
+ readonly blocked: {
1667
+ readonly from: "blocked";
1668
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1669
+ };
1670
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1671
+ nodes: {
1672
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1673
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1674
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1675
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1676
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1677
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1678
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1679
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1680
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1681
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1682
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1683
+ };
1684
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1685
+ exits?: {
1686
+ readonly ready: {
1687
+ readonly from: "ready";
1688
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1689
+ };
1690
+ readonly blocked: {
1691
+ readonly from: "blocked";
1692
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1693
+ };
1694
+ };
1695
+ }>;
1696
+ }> & {
732
1697
  nodes: {
733
1698
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
734
1699
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1700
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
735
1701
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
736
1702
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
737
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
738
1703
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
739
1704
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
740
1705
  };
741
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
1706
+ includes?: {
1707
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1708
+ readonly ready: {
1709
+ readonly from: "ready";
1710
+ readonly validate: typeof parsePreparedWorkspace;
1711
+ };
1712
+ readonly blocked: {
1713
+ readonly from: "blocked";
1714
+ readonly validate: (value: unknown) => {
1715
+ route: "ready" | "propose" | "blocked";
1716
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1717
+ preparedWorkspace?: PreparedWorkspace;
1718
+ repository: string;
1719
+ baseBranch: string;
1720
+ baseRevision?: string;
1721
+ currentBranch?: string;
1722
+ preExistingChangedPaths: string[];
1723
+ reason: string;
1724
+ evidence: string[];
1725
+ };
1726
+ };
1727
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1728
+ nodes: {
1729
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
1730
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1731
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
1732
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1733
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1734
+ };
1735
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1736
+ exits?: {
1737
+ readonly ready: {
1738
+ readonly from: "ready";
1739
+ readonly validate: typeof parsePreparedWorkspace;
1740
+ };
1741
+ readonly blocked: {
1742
+ readonly from: "blocked";
1743
+ readonly validate: (value: unknown) => {
1744
+ route: "ready" | "propose" | "blocked";
1745
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1746
+ preparedWorkspace?: PreparedWorkspace;
1747
+ repository: string;
1748
+ baseBranch: string;
1749
+ baseRevision?: string;
1750
+ currentBranch?: string;
1751
+ preExistingChangedPaths: string[];
1752
+ reason: string;
1753
+ evidence: string[];
1754
+ };
1755
+ };
1756
+ };
1757
+ }>;
1758
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
1759
+ readonly ready: {
1760
+ readonly from: "ready";
1761
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1762
+ };
1763
+ readonly blocked: {
1764
+ readonly from: "blocked";
1765
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1766
+ };
1767
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
1768
+ nodes: {
1769
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
1770
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1771
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
1772
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
1773
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
1774
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
1775
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
1776
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1777
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
1778
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
1779
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
1780
+ };
1781
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
1782
+ exits?: {
1783
+ readonly ready: {
1784
+ readonly from: "ready";
1785
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1786
+ };
1787
+ readonly blocked: {
1788
+ readonly from: "blocked";
1789
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
1790
+ };
1791
+ };
1792
+ }>;
1793
+ };
742
1794
  exits?: {
743
1795
  readonly ready: {
744
1796
  readonly from: "finalize";
@@ -930,17 +1982,191 @@ export declare const autoimplementWorkflow: import("../workflows/types.js").Work
930
1982
  readonly from: "blocked";
931
1983
  readonly validate: (value: unknown) => import("./autodoc.workflow.js").AutodocBlocked;
932
1984
  };
933
- }, import("../workflows/types.js").WorkflowIncludeMap> & {
1985
+ }, {
1986
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
1987
+ readonly ready: {
1988
+ readonly from: "ready";
1989
+ readonly validate: typeof parsePreparedWorkspace;
1990
+ };
1991
+ readonly blocked: {
1992
+ readonly from: "blocked";
1993
+ readonly validate: (value: unknown) => {
1994
+ route: "ready" | "propose" | "blocked";
1995
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
1996
+ preparedWorkspace?: PreparedWorkspace;
1997
+ repository: string;
1998
+ baseBranch: string;
1999
+ baseRevision?: string;
2000
+ currentBranch?: string;
2001
+ preExistingChangedPaths: string[];
2002
+ reason: string;
2003
+ evidence: string[];
2004
+ };
2005
+ };
2006
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
2007
+ nodes: {
2008
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
2009
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2010
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
2011
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
2012
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
2013
+ };
2014
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
2015
+ exits?: {
2016
+ readonly ready: {
2017
+ readonly from: "ready";
2018
+ readonly validate: typeof parsePreparedWorkspace;
2019
+ };
2020
+ readonly blocked: {
2021
+ readonly from: "blocked";
2022
+ readonly validate: (value: unknown) => {
2023
+ route: "ready" | "propose" | "blocked";
2024
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
2025
+ preparedWorkspace?: PreparedWorkspace;
2026
+ repository: string;
2027
+ baseBranch: string;
2028
+ baseRevision?: string;
2029
+ currentBranch?: string;
2030
+ preExistingChangedPaths: string[];
2031
+ reason: string;
2032
+ evidence: string[];
2033
+ };
2034
+ };
2035
+ };
2036
+ }>;
2037
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
2038
+ readonly ready: {
2039
+ readonly from: "ready";
2040
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2041
+ };
2042
+ readonly blocked: {
2043
+ readonly from: "blocked";
2044
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2045
+ };
2046
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
2047
+ nodes: {
2048
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
2049
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2050
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
2051
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
2052
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
2053
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
2054
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
2055
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2056
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2057
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
2058
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
2059
+ };
2060
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
2061
+ exits?: {
2062
+ readonly ready: {
2063
+ readonly from: "ready";
2064
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2065
+ };
2066
+ readonly blocked: {
2067
+ readonly from: "blocked";
2068
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2069
+ };
2070
+ };
2071
+ }>;
2072
+ }> & {
934
2073
  nodes: {
935
2074
  readonly prepare: import("../workflows/types.js").ComputeNodeDefinition;
936
2075
  readonly locatePlan: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2076
+ readonly workspaceGuard: import("../workflows/types.js").ComputeNodeDefinition;
937
2077
  readonly inspectDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
938
2078
  readonly updateDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
939
- readonly verifyDocumentation: import("../workflows/types.js").SubmittedAgentNodeDefinition;
940
2079
  readonly finalize: import("../workflows/types.js").ComputeNodeDefinition;
941
2080
  readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
942
2081
  };
943
- includes?: import("../workflows/types.js").WorkflowIncludeMap;
2082
+ includes?: {
2083
+ readonly workspace: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<WorkspacePreparationInput, {
2084
+ readonly ready: {
2085
+ readonly from: "ready";
2086
+ readonly validate: typeof parsePreparedWorkspace;
2087
+ };
2088
+ readonly blocked: {
2089
+ readonly from: "blocked";
2090
+ readonly validate: (value: unknown) => {
2091
+ route: "ready" | "propose" | "blocked";
2092
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
2093
+ preparedWorkspace?: PreparedWorkspace;
2094
+ repository: string;
2095
+ baseBranch: string;
2096
+ baseRevision?: string;
2097
+ currentBranch?: string;
2098
+ preExistingChangedPaths: string[];
2099
+ reason: string;
2100
+ evidence: string[];
2101
+ };
2102
+ };
2103
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
2104
+ nodes: {
2105
+ readonly inspect: import("../workflows/types.js").FunctionActionNodeDefinition;
2106
+ readonly propose: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2107
+ readonly apply: import("../workflows/types.js").FunctionActionNodeDefinition;
2108
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
2109
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
2110
+ };
2111
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
2112
+ exits?: {
2113
+ readonly ready: {
2114
+ readonly from: "ready";
2115
+ readonly validate: typeof parsePreparedWorkspace;
2116
+ };
2117
+ readonly blocked: {
2118
+ readonly from: "blocked";
2119
+ readonly validate: (value: unknown) => {
2120
+ route: "ready" | "propose" | "blocked";
2121
+ selectedMode?: import("./workspace-preparation.workflow.js").PreparedWorkspaceMode;
2122
+ preparedWorkspace?: PreparedWorkspace;
2123
+ repository: string;
2124
+ baseBranch: string;
2125
+ baseRevision?: string;
2126
+ currentBranch?: string;
2127
+ preExistingChangedPaths: string[];
2128
+ reason: string;
2129
+ evidence: string[];
2130
+ };
2131
+ };
2132
+ };
2133
+ }>;
2134
+ readonly verification: import("../workflows/types.js").WorkflowIncludeDefinition<import("../workflows/types.js").WorkflowDefinition<ChangeVerificationInput, {
2135
+ readonly ready: {
2136
+ readonly from: "ready";
2137
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2138
+ };
2139
+ readonly blocked: {
2140
+ readonly from: "blocked";
2141
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2142
+ };
2143
+ }, import("../workflows/types.js").WorkflowIncludeMap> & {
2144
+ nodes: {
2145
+ readonly selectChecks: import("../workflows/types.js").ComputeNodeDefinition;
2146
+ readonly planChecks: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2147
+ readonly runCandidate: import("../workflows/types.js").FunctionActionNodeDefinition;
2148
+ readonly runBase: import("../workflows/types.js").FunctionActionNodeDefinition;
2149
+ readonly classify: import("../workflows/types.js").ComputeNodeDefinition;
2150
+ readonly repairGuard: import("../workflows/types.js").ComputeNodeDefinition;
2151
+ readonly mechanicalRepair: import("../workflows/types.js").FunctionActionNodeDefinition;
2152
+ readonly semanticRepair: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2153
+ readonly judge: import("../workflows/types.js").SubmittedAgentNodeDefinition;
2154
+ readonly ready: import("../workflows/types.js").ComputeNodeDefinition;
2155
+ readonly blocked: import("../workflows/types.js").ComputeNodeDefinition;
2156
+ };
2157
+ includes?: import("../workflows/types.js").WorkflowIncludeMap;
2158
+ exits?: {
2159
+ readonly ready: {
2160
+ readonly from: "ready";
2161
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2162
+ };
2163
+ readonly blocked: {
2164
+ readonly from: "blocked";
2165
+ readonly validate: (value: unknown) => import("./change-verification.workflow.js").ChangeVerificationResult;
2166
+ };
2167
+ };
2168
+ }>;
2169
+ };
944
2170
  exits?: {
945
2171
  readonly ready: {
946
2172
  readonly from: "finalize";