@osolmaz/pi-workflows 0.11.2 → 0.12.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 (177) hide show
  1. package/README.md +15 -10
  2. package/dist/builtins/autoimplement-command-batches.d.ts +52 -0
  3. package/dist/builtins/autoimplement-command-batches.js +258 -0
  4. package/dist/builtins/autoimplement-command-batches.js.map +1 -0
  5. package/dist/builtins/autoimplement.workflow.d.ts +509 -124
  6. package/dist/builtins/autoimplement.workflow.js +884 -327
  7. package/dist/builtins/autoimplement.workflow.js.map +1 -1
  8. package/dist/builtins/catalog.js +5 -3
  9. package/dist/builtins/catalog.js.map +1 -1
  10. package/dist/builtins/index.d.ts +4 -1
  11. package/dist/builtins/index.js +3 -1
  12. package/dist/builtins/index.js.map +1 -1
  13. package/dist/builtins/monitor.workflow.d.ts +2 -4
  14. package/dist/builtins/monitor.workflow.js +26 -128
  15. package/dist/builtins/monitor.workflow.js.map +1 -1
  16. package/dist/builtins/pi-agent-group.d.ts +72 -0
  17. package/dist/builtins/pi-agent-group.js +1087 -0
  18. package/dist/builtins/pi-agent-group.js.map +1 -0
  19. package/dist/builtins/plan-approval.workflow.d.ts +39 -5
  20. package/dist/builtins/plan-approval.workflow.js +92 -14
  21. package/dist/builtins/plan-approval.workflow.js.map +1 -1
  22. package/dist/builtins/plan-change.workflow.d.ts +301 -0
  23. package/dist/builtins/plan-change.workflow.js +256 -0
  24. package/dist/builtins/plan-change.workflow.js.map +1 -0
  25. package/dist/builtins/plan-presentation.js +2 -2
  26. package/dist/builtins/plan-presentation.js.map +1 -1
  27. package/dist/builtins/sanity-check.workflow.d.ts +85 -0
  28. package/dist/builtins/sanity-check.workflow.js +482 -0
  29. package/dist/builtins/sanity-check.workflow.js.map +1 -0
  30. package/dist/controllers/sqlite.d.ts +90 -2
  31. package/dist/controllers/sqlite.js +380 -5
  32. package/dist/controllers/sqlite.js.map +1 -1
  33. package/dist/extension/decision-channels.d.ts +2 -2
  34. package/dist/extension/decision-channels.js +29 -35
  35. package/dist/extension/decision-channels.js.map +1 -1
  36. package/dist/extension/deferred-turn-coordinator.d.ts +32 -0
  37. package/dist/extension/deferred-turn-coordinator.js +143 -0
  38. package/dist/extension/deferred-turn-coordinator.js.map +1 -0
  39. package/dist/extension/deferred-turn.d.ts +44 -0
  40. package/dist/extension/deferred-turn.js +110 -0
  41. package/dist/extension/deferred-turn.js.map +1 -0
  42. package/dist/extension/index.js +348 -80
  43. package/dist/extension/index.js.map +1 -1
  44. package/dist/extension/session-events.d.ts +2 -2
  45. package/dist/extension/step-message.d.ts +1 -0
  46. package/dist/extension/step-message.js.map +1 -1
  47. package/dist/extension/widget.js +23 -3
  48. package/dist/extension/widget.js.map +1 -1
  49. package/dist/herdr/setup.js +4 -4
  50. package/dist/render/graph-render.js +1 -2
  51. package/dist/render/graph-render.js.map +1 -1
  52. package/dist/viewer/render.js +7 -6
  53. package/dist/viewer/render.js.map +1 -1
  54. package/dist/workflows/catalog.js +7 -2
  55. package/dist/workflows/catalog.js.map +1 -1
  56. package/dist/workflows/command-batch.d.ts +38 -0
  57. package/dist/workflows/command-batch.js +176 -0
  58. package/dist/workflows/command-batch.js.map +1 -0
  59. package/dist/workflows/composition.js +8 -0
  60. package/dist/workflows/composition.js.map +1 -1
  61. package/dist/workflows/decision-presentation.d.ts +1 -1
  62. package/dist/workflows/decision-presentation.js +51 -38
  63. package/dist/workflows/decision-presentation.js.map +1 -1
  64. package/dist/workflows/engine.d.ts +2 -2
  65. package/dist/workflows/engine.js +22 -17
  66. package/dist/workflows/engine.js.map +1 -1
  67. package/dist/workflows/errors.d.ts +13 -0
  68. package/dist/workflows/errors.js +15 -0
  69. package/dist/workflows/errors.js.map +1 -1
  70. package/dist/workflows/human-decision.d.ts +16 -4
  71. package/dist/workflows/human-decision.js +175 -72
  72. package/dist/workflows/human-decision.js.map +1 -1
  73. package/dist/workflows/index.d.ts +3 -2
  74. package/dist/workflows/index.js +2 -1
  75. package/dist/workflows/index.js.map +1 -1
  76. package/dist/workflows/progress.d.ts +1 -0
  77. package/dist/workflows/progress.js +15 -3
  78. package/dist/workflows/progress.js.map +1 -1
  79. package/dist/workflows/schema.js +12 -1
  80. package/dist/workflows/schema.js.map +1 -1
  81. package/dist/workflows/shell.d.ts +4 -0
  82. package/dist/workflows/shell.js +6 -0
  83. package/dist/workflows/shell.js.map +1 -1
  84. package/dist/workflows/store.js +8 -1
  85. package/dist/workflows/store.js.map +1 -1
  86. package/dist/workflows/types.d.ts +37 -48
  87. package/docs/2026-08-18-herdr-piw-plan.md +1 -1
  88. package/docs/2026-08-20-durable-workflow-launch-plan.md +19 -23
  89. package/docs/CONTROLLERS.md +2 -2
  90. package/docs/DEFERRED_TURNS.md +298 -0
  91. package/docs/DESIGN_PHILOSOPHY.md +1 -1
  92. package/docs/HUMAN_DECISIONS.md +30 -40
  93. package/docs/HUMAN_DECISION_PRESENTATIONS.md +17 -27
  94. package/docs/MONITOR.md +7 -13
  95. package/docs/WORKFLOW_COMPOSITION.md +10 -9
  96. package/docs/WORKFLOW_STEP_MESSAGES.md +5 -5
  97. package/docs/WORKFLOW_UPDATES.md +28 -5
  98. package/docs/plans/2026-08-04-controller-runtime-plan.md +1 -1
  99. package/docs/plans/2026-08-05-always-on-workflows-plan.md +1 -1
  100. package/docs/plans/2026-08-10-agent-managed-monitor-workflows-plan.md +9 -9
  101. package/docs/plans/2026-08-13-built-in-workflow-catalog-plan.md +1 -1
  102. package/docs/plans/2026-08-13-session-addressed-workflow-notifications-plan.md +1 -1
  103. package/docs/plans/2026-08-16-workflow-updates-plan.md +3 -3
  104. package/docs/plans/2026-08-17-bundled-skills-plan.md +6 -6
  105. package/docs/plans/2026-08-19-human-decision-gates-plan.md +5 -5
  106. package/docs/plans/2026-08-19-human-decision-presentations-plan.md +1 -1
  107. package/docs/plans/2026-08-19-provider-compatible-workflow-tool-schema-plan.md +1 -1
  108. package/docs/plans/2026-08-19-workflow-composition-plan.md +6 -6
  109. package/docs/plans/2026-08-20-autoimplement-blocker-challenge-plan.md +3 -3
  110. package/docs/plans/2026-08-20-bounded-command-batches-plan.md +206 -0
  111. package/docs/plans/2026-08-20-herdr-plugin-sync-plan.md +9 -9
  112. package/docs/plans/2026-08-21-autoimplement-timeout-fallback-plan.md +242 -0
  113. package/docs/plans/2026-08-21-deferred-turn-intents-plan.md +324 -0
  114. package/docs/plans/2026-08-21-plan-change-approval-policy-plan.md +322 -0
  115. package/docs/plans/2026-08-21-sanity-check-plan.md +283 -0
  116. package/docs/run-bundles.md +8 -6
  117. package/docs/workflows.md +85 -22
  118. package/examples/workflows/approved-plan.workflow.ts +19 -46
  119. package/examples/workflows/command-batch.workflow.ts +50 -0
  120. package/examples/workflows/sanity-check.workflow.ts +1 -0
  121. package/herdr-plugin.toml +3 -3
  122. package/package.json +7 -7
  123. package/schemas/decision-presentation-v1.schema.json +1 -1
  124. package/schemas/human-decision-accepted-v1.schema.json +16 -4
  125. package/schemas/human-decision-answer-attempt-v1.schema.json +1 -1
  126. package/schemas/human-decision-cancellation-v1.schema.json +1 -1
  127. package/schemas/human-decision-continuation-v1.schema.json +11 -2
  128. package/schemas/human-decision-delivery-v1.schema.json +9 -1
  129. package/schemas/human-decision-receipt-v1.schema.json +9 -1
  130. package/schemas/human-decision-request-v1.schema.json +25 -5
  131. package/schemas/human-decision-resolution-v1.schema.json +1 -1
  132. package/schemas/human-decision-settlement-v1.schema.json +1 -1
  133. package/skills/autodoc/SKILL.md +33 -2
  134. package/skills/autoimplement/SKILL.md +93 -12
  135. package/skills/autoplan/SKILL.md +26 -2
  136. package/skills/monitor/SKILL.md +66 -24
  137. package/skills/pi-workflows/SKILL.md +21 -6
  138. package/skills/sanity-check/SKILL.md +44 -0
  139. package/src/builtins/autoimplement-command-batches.ts +364 -0
  140. package/src/builtins/autoimplement.workflow.ts +1075 -370
  141. package/src/builtins/catalog.ts +5 -3
  142. package/src/builtins/index.ts +24 -0
  143. package/src/builtins/monitor.workflow.ts +27 -150
  144. package/src/builtins/pi-agent-group.ts +1407 -0
  145. package/src/builtins/plan-approval.workflow.ts +157 -24
  146. package/src/builtins/plan-change.workflow.ts +321 -0
  147. package/src/builtins/plan-presentation.ts +2 -2
  148. package/src/builtins/sanity-check.workflow.ts +769 -0
  149. package/src/controllers/sqlite.ts +580 -7
  150. package/src/extension/decision-channels.ts +36 -66
  151. package/src/extension/deferred-turn-coordinator.ts +171 -0
  152. package/src/extension/deferred-turn.ts +166 -0
  153. package/src/extension/index.ts +438 -90
  154. package/src/extension/session-events.ts +2 -2
  155. package/src/extension/step-message.ts +1 -0
  156. package/src/extension/widget.ts +24 -5
  157. package/src/herdr/setup.ts +4 -4
  158. package/src/render/graph-render.ts +1 -2
  159. package/src/viewer/render.ts +7 -6
  160. package/src/workflows/catalog.ts +7 -2
  161. package/src/workflows/command-batch.ts +254 -0
  162. package/src/workflows/composition.ts +9 -0
  163. package/src/workflows/decision-presentation.ts +56 -43
  164. package/src/workflows/engine.ts +25 -20
  165. package/src/workflows/errors.ts +24 -0
  166. package/src/workflows/human-decision.ts +218 -101
  167. package/src/workflows/index.ts +20 -11
  168. package/src/workflows/progress.ts +18 -3
  169. package/src/workflows/schema.ts +19 -1
  170. package/src/workflows/shell.ts +10 -0
  171. package/src/workflows/store.ts +8 -1
  172. package/src/workflows/types.ts +43 -59
  173. package/schemas/human-decision-accepted-v2.schema.json +0 -50
  174. package/schemas/human-decision-delivery-v2.schema.json +0 -36
  175. package/schemas/human-decision-receipt-v2.schema.json +0 -39
  176. package/schemas/human-decision-request-v2.schema.json +0 -69
  177. package/schemas/human-decision-resolution-v2.schema.json +0 -27
@@ -1 +1 @@
1
- {"version":3,"file":"autoimplement.workflow.js","sourceRoot":"","sources":["../../src/builtins/autoimplement.workflow.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"autoimplement.workflow.js","sourceRoot":"","sources":["../../src/builtins/autoimplement.workflow.ts"],"names":[],"mappings":"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"}
@@ -4,14 +4,16 @@ import autoimplementWorkflow from "./autoimplement.workflow.js";
4
4
  import autoplanWorkflow from "./autoplan.workflow.js";
5
5
  import monitorWorkflow from "./monitor.workflow.js";
6
6
  import planApprovalWorkflow from "./plan-approval.workflow.js";
7
+ import sanityCheckWorkflow from "./sanity-check.workflow.js";
7
8
  export const builtinWorkflowCatalog = new BuiltinWorkflowCatalog([
8
9
  { id: "autoplan", revision: "1", definition: autoplanWorkflow },
9
10
  { id: "autodoc", revision: "1", definition: autodocWorkflow },
10
- { id: "autoimplement", revision: "4", definition: autoimplementWorkflow },
11
- { id: "plan-approval", revision: "2", definition: planApprovalWorkflow },
11
+ { id: "autoimplement", revision: "8", definition: autoimplementWorkflow },
12
+ { id: "plan-approval", revision: "4", definition: planApprovalWorkflow },
13
+ { id: "sanity-check", revision: "3", definition: sanityCheckWorkflow },
12
14
  {
13
15
  id: "monitor",
14
- revision: "7",
16
+ revision: "9",
15
17
  definition: monitorWorkflow,
16
18
  legacySources: [
17
19
  {
@@ -1 +1 @@
1
- {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/builtins/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,eAAe,MAAM,uBAAuB,CAAC;AACpD,OAAO,qBAAqB,MAAM,6BAA6B,CAAC;AAChE,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,eAAe,MAAM,uBAAuB,CAAC;AACpD,OAAO,oBAAoB,MAAM,6BAA6B,CAAC;AAE/D,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,CAAC;IAC/D,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,gBAAgB,EAAE;IAC/D,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE;IAC7D,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,qBAAqB,EAAE;IACzE,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,oBAAoB,EAAE;IACxE;QACE,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,eAAe;QAC3B,aAAa,EAAE;YACb;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE;oBACZ,mCAAmC;oBACnC,oCAAoC;oBACpC,oCAAoC;oBACpC,qCAAqC;iBACtC;aACF;YACD;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,CAAC,oCAAoC,CAAC;aACrD;YACD;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,CAAC,oCAAoC,CAAC;aACrD;SACF;KACF;CACF,CAAC,CAAC"}
1
+ {"version":3,"file":"catalog.js","sourceRoot":"","sources":["../../src/builtins/catalog.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,MAAM,yBAAyB,CAAC;AACjE,OAAO,eAAe,MAAM,uBAAuB,CAAC;AACpD,OAAO,qBAAqB,MAAM,6BAA6B,CAAC;AAChE,OAAO,gBAAgB,MAAM,wBAAwB,CAAC;AACtD,OAAO,eAAe,MAAM,uBAAuB,CAAC;AACpD,OAAO,oBAAoB,MAAM,6BAA6B,CAAC;AAC/D,OAAO,mBAAmB,MAAM,4BAA4B,CAAC;AAE7D,MAAM,CAAC,MAAM,sBAAsB,GAAG,IAAI,sBAAsB,CAAC;IAC/D,EAAE,EAAE,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,gBAAgB,EAAE;IAC/D,EAAE,EAAE,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,eAAe,EAAE;IAC7D,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,qBAAqB,EAAE;IACzE,EAAE,EAAE,EAAE,eAAe,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,oBAAoB,EAAE;IACxE,EAAE,EAAE,EAAE,cAAc,EAAE,QAAQ,EAAE,GAAG,EAAE,UAAU,EAAE,mBAAmB,EAAE;IACtE;QACE,EAAE,EAAE,SAAS;QACb,QAAQ,EAAE,GAAG;QACb,UAAU,EAAE,eAAe;QAC3B,aAAa,EAAE;YACb;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE;oBACZ,mCAAmC;oBACnC,oCAAoC;oBACpC,oCAAoC;oBACpC,qCAAqC;iBACtC;aACF;YACD;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,CAAC,oCAAoC,CAAC;aACrD;YACD;gBACE,YAAY,EAAE,kEAAkE;gBAChF,QAAQ,EAAE,GAAG;gBACb,YAAY,EAAE,CAAC,oCAAoC,CAAC;aACrD;SACF;KACF;CACF,CAAC,CAAC"}
@@ -1,6 +1,9 @@
1
1
  export { autoplanWorkflow, type AutoplanBlocked, type AutoplanInput, type AutoplanReady, } from "./autoplan.workflow.js";
2
2
  export { autodocWorkflow, type AutodocBlocked, type AutodocInput, type DocumentedPlan, } from "./autodoc.workflow.js";
3
3
  export { autoimplementWorkflow, type AutoimplementBlocked, type AutoimplementCompleted, type AutoimplementInput, type ExistingPlanDiscovery, } from "./autoimplement.workflow.js";
4
+ export type { AutoimplementConcurrency } from "./autoimplement-command-batches.js";
4
5
  export { default as monitorWorkflow, type MonitorInput, type MonitorRepairPolicy, } from "./monitor.workflow.js";
6
+ export { planChangeWorkflow, type PlanChangeBlocked, type PlanChangeInput, type PlanChangeReady, } from "./plan-change.workflow.js";
5
7
  export { presentPlan } from "./plan-presentation.js";
6
- export { planApprovalWorkflow, type PlanApprovalContinue, type PlanApprovalInput, type PlanApprovalReplan, type PlanApprovalStop, } from "./plan-approval.workflow.js";
8
+ export { sanityCheckWorkflow, type ContributionEvidence, type SanityCheckArea, type SanityCheckAreaResult, type SanityCheckEvidence, type SanityCheckInput, type SanityCheckMode, type SanityCheckResult, type SanityCheckReview, type SanityCheckVerdict, } from "./sanity-check.workflow.js";
9
+ export { planApprovalWorkflow, parsePlanApprovalPolicy, type PlanApprovalContinue, type PlanApprovalInput, type PlanApprovalMode, type PlanApprovalPolicy, type PlanApprovalReplan, type PlanApprovalResolution, type PlanApprovalStop, type ResolvedPlanApprovalPolicy, } from "./plan-approval.workflow.js";
@@ -2,6 +2,8 @@ export { autoplanWorkflow, } from "./autoplan.workflow.js";
2
2
  export { autodocWorkflow, } from "./autodoc.workflow.js";
3
3
  export { autoimplementWorkflow, } from "./autoimplement.workflow.js";
4
4
  export { default as monitorWorkflow, } from "./monitor.workflow.js";
5
+ export { planChangeWorkflow, } from "./plan-change.workflow.js";
5
6
  export { presentPlan } from "./plan-presentation.js";
6
- export { planApprovalWorkflow, } from "./plan-approval.workflow.js";
7
+ export { sanityCheckWorkflow, } from "./sanity-check.workflow.js";
8
+ export { planApprovalWorkflow, parsePlanApprovalPolicy, } from "./plan-approval.workflow.js";
7
9
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAIjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,GAIhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,GAKtB,MAAM,6BAA6B,CAAC;AACrC,OAAO,EACL,OAAO,IAAI,eAAe,GAG3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,oBAAoB,GAKrB,MAAM,6BAA6B,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/builtins/index.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,gBAAgB,GAIjB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,eAAe,GAIhB,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,qBAAqB,GAKtB,MAAM,6BAA6B,CAAC;AAErC,OAAO,EACL,OAAO,IAAI,eAAe,GAG3B,MAAM,uBAAuB,CAAC;AAC/B,OAAO,EACL,kBAAkB,GAInB,MAAM,2BAA2B,CAAC;AACnC,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EACL,mBAAmB,GAUpB,MAAM,4BAA4B,CAAC;AACpC,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GASxB,MAAM,6BAA6B,CAAC"}
@@ -1,4 +1,5 @@
1
1
  import type { WorkflowDefinition, WorkflowProgressData } from "../workflows/types.js";
2
+ import { type PlanApprovalPolicy } from "./plan-approval.workflow.js";
2
3
  export type MonitorRepairPolicy = {
3
4
  authorized: true;
4
5
  scope?: string;
@@ -6,10 +7,7 @@ export type MonitorRepairPolicy = {
6
7
  repository?: string;
7
8
  baseBranch?: string;
8
9
  merge?: boolean;
9
- approval?: {
10
- audience: string;
11
- maxReplans: number;
12
- };
10
+ approval?: PlanApprovalPolicy;
13
11
  };
14
12
  export type MonitorInput = {
15
13
  task: string;
@@ -1,10 +1,9 @@
1
1
  import { action, agent, compute, defineWorkflow, includeWorkflow, includedResult, notify, shell, } from "../workflows/definition.js";
2
2
  import { estimateProgress, formatProgressReport, } from "../workflows/progress.js";
3
3
  import { validateProgressData } from "../workflows/updates.js";
4
- import autodocWorkflow, {} from "./autodoc.workflow.js";
5
4
  import autoimplementWorkflow, {} from "./autoimplement.workflow.js";
6
- import autoplanWorkflow from "./autoplan.workflow.js";
7
- import planApprovalWorkflow, {} from "./plan-approval.workflow.js";
5
+ import { parsePlanApprovalPolicy } from "./plan-approval.workflow.js";
6
+ import planChangeWorkflow, {} from "./plan-change.workflow.js";
8
7
  const MIN_INTERVAL_MINUTES = 1;
9
8
  const MAX_INTERVAL_MINUTES = 24 * 60;
10
9
  const DEFAULT_INTERVAL_MINUTES = 30;
@@ -94,20 +93,7 @@ export function prepareMonitorInput(input) {
94
93
  if (raw.merge !== undefined && typeof raw.merge !== "boolean") {
95
94
  throw new Error("repair merge must be a boolean");
96
95
  }
97
- let approval;
98
- if (raw.approval !== undefined) {
99
- const value = requireRecord(raw.approval, "repair approval");
100
- const maxReplans = value.maxReplans ?? 3;
101
- if (!Number.isInteger(maxReplans) ||
102
- maxReplans < 1 ||
103
- maxReplans > 20) {
104
- throw new Error("repair approval maxReplans must be from 1 through 20");
105
- }
106
- approval = {
107
- audience: requireBoundedString(value.audience, "repair approval audience", 200),
108
- maxReplans: maxReplans,
109
- };
110
- }
96
+ const approval = parsePlanApprovalPolicy(raw.approval);
111
97
  repair = {
112
98
  authorized: true,
113
99
  ...(raw.scope !== undefined
@@ -121,7 +107,7 @@ export function prepareMonitorInput(input) {
121
107
  ? { baseBranch: requireBoundedString(raw.baseBranch, "repair base branch", 256) }
122
108
  : {}),
123
109
  ...(raw.merge !== undefined ? { merge: raw.merge !== false } : {}),
124
- ...(approval !== undefined ? { approval } : {}),
110
+ approval,
125
111
  };
126
112
  }
127
113
  return {
@@ -239,43 +225,23 @@ function repeatedRepairWithoutProgress(context) {
239
225
  return false;
240
226
  }
241
227
  function currentRepairPlan(outputs) {
242
- const documentation = outputs.documentation;
243
- if (documentation?.exit === "ready" &&
244
- documentation.output?.plan !== undefined &&
245
- typeof documentation.output.planDigest === "string") {
246
- return {
247
- plan: documentation.output.plan,
248
- planDigest: documentation.output.planDigest,
249
- documents: documentation.output.documentation?.files ?? [],
250
- };
251
- }
252
- const design = includedResult(autoplanWorkflow, outputs.initialDesign);
253
- if (design.exit !== "ready")
254
- throw new Error("monitor design did not return a ready plan");
255
- return { plan: design.output.plan, planDigest: design.output.planDigest, documents: [] };
256
- }
257
- function latestReplanInstructions(outputs) {
258
- const approval = outputs.approval;
259
- return approval?.exit === "replan" && typeof approval.output?.instructions === "string"
260
- ? approval.output.instructions
261
- : undefined;
228
+ const result = includedResult(planChangeWorkflow, outputs.planChange);
229
+ if (result.exit !== "ready")
230
+ throw new Error("monitor plan change did not return a ready plan");
231
+ return {
232
+ plan: result.output.plan,
233
+ planDigest: result.output.planDigest,
234
+ documents: result.output.documents,
235
+ };
262
236
  }
263
237
  function repairBlockedReason(outputs) {
264
238
  const guard = outputs.repairGuard;
265
239
  if (guard?.route === "blocked" && guard.reason !== undefined)
266
240
  return guard.reason;
267
- const replan = outputs.replanGuard;
268
- if (replan?.route === "blocked" && replan.reason !== undefined)
269
- return replan.reason;
270
- const approval = outputs.approval;
271
- if (approval?.exit === "stop")
272
- return "The operator stopped the proposed repair.";
273
- const documentation = outputs.documentation;
241
+ const planChange = outputs.planChange;
274
242
  const implementation = outputs.implementation;
275
- const design = outputs.initialDesign;
276
243
  return (implementation?.output?.reason ??
277
- documentation?.output?.reason ??
278
- design?.output?.reason ??
244
+ planChange?.output?.reason ??
279
245
  "The repair did not produce new verified progress.");
280
246
  }
281
247
  function reportMessage(context) {
@@ -314,66 +280,27 @@ const monitorWorkflow = defineWorkflow({
314
280
  startAt: "prepare",
315
281
  maxSteps: 200_000,
316
282
  includes: {
317
- initialDesign: includeWorkflow({
318
- workflow: "autoplan",
319
- contract: autoplanWorkflow,
283
+ planChange: includeWorkflow(planChangeWorkflow, {
320
284
  input: ({ outputs }) => {
321
285
  const config = configFrom(outputs);
322
286
  const repair = outputs.check.repair;
323
287
  if (repair === undefined)
324
288
  throw new Error("monitor repair details are missing");
325
- const prior = outputs.initialDesign;
326
- const instructions = latestReplanInstructions(outputs);
289
+ const prior = outputs.planChange;
327
290
  return {
328
- problem: repair.problem,
291
+ task: repair.problem,
329
292
  ...(config.repair?.scope !== undefined ? { scope: config.repair.scope } : {}),
330
293
  ...(config.repair?.constraints !== undefined
331
294
  ? { constraints: config.repair.constraints }
332
295
  : {}),
333
- ...(prior?.exit === "ready" && prior.output?.plan !== undefined
334
- ? { previousPlan: prior.output.plan }
335
- : {}),
336
- newEvidence: instructions === undefined
337
- ? repair.evidence
338
- : { observedEvidence: repair.evidence, operatorInstructions: instructions },
339
- };
340
- },
341
- }),
342
- documentation: includeWorkflow(autodocWorkflow, {
343
- input: ({ outputs }) => {
344
- const config = configFrom(outputs);
345
- const repair = outputs.check.repair;
346
- const design = includedResult(autoplanWorkflow, outputs.initialDesign);
347
- if (design.exit !== "ready")
348
- throw new Error("monitor design did not return a ready plan");
349
- if (repair === undefined)
350
- throw new Error("monitor repair details are missing");
351
- return {
352
- task: repair.problem,
353
- plan: design.output.plan,
354
296
  ...(config.repair?.repository !== undefined
355
297
  ? { repository: config.repair.repository }
356
298
  : {}),
357
- evidence: latestReplanInstructions(outputs) ?? repair.evidence,
358
- };
359
- },
360
- }),
361
- approval: includeWorkflow(planApprovalWorkflow, {
362
- input: ({ outputs, state }) => {
363
- const config = configFrom(outputs);
364
- const repair = outputs.check.repair;
365
- const approval = config.repair?.approval;
366
- if (repair === undefined || approval === undefined) {
367
- throw new Error("monitor approval was entered without an approval policy");
368
- }
369
- const current = currentRepairPlan(outputs);
370
- const revision = state.steps.filter((step) => step.nodeId === "approval/approve").length + 1;
371
- return {
372
- task: repair.problem,
373
- plan: current.plan,
374
- planDigest: current.planDigest,
375
- audience: approval.audience,
376
- revision,
299
+ ...(prior?.exit === "ready" && prior.output?.plan !== undefined
300
+ ? { previousPlan: prior.output.plan }
301
+ : {}),
302
+ newEvidence: repair.evidence,
303
+ approval: parsePlanApprovalPolicy(config.repair?.approval),
377
304
  };
378
305
  },
379
306
  }),
@@ -404,6 +331,7 @@ const monitorWorkflow = defineWorkflow({
404
331
  ...(config.repair?.baseBranch !== undefined
405
332
  ? { baseBranch: config.repair.baseBranch }
406
333
  : {}),
334
+ approval: parsePlanApprovalPolicy(config.repair?.approval),
407
335
  merge: config.repair?.merge === true,
408
336
  };
409
337
  return request;
@@ -489,23 +417,6 @@ const monitorWorkflow = defineWorkflow({
489
417
  }
490
418
  : { route: "repair", reason: "The issue is new or has changed evidence." },
491
419
  }),
492
- approvalRoute: compute({
493
- run: ({ outputs }) => ({
494
- route: configFrom(outputs).repair?.approval === undefined ? "implement" : "approve",
495
- }),
496
- }),
497
- replanGuard: compute({
498
- run: (context) => {
499
- const limit = configFrom(context.outputs).repair?.approval?.maxReplans ?? 3;
500
- const replans = context.state.steps.filter((step) => step.nodeId === "approval/replan").length;
501
- return replans > limit
502
- ? {
503
- route: "blocked",
504
- reason: `Monitor repair reached the ${limit}-replan safety limit.`,
505
- }
506
- : { route: "design", replans, limit };
507
- },
508
- }),
509
420
  repairBlocked: compute({
510
421
  run: (context) => ({
511
422
  reason: repairBlockedReason(context.outputs),
@@ -589,23 +500,10 @@ const monitorWorkflow = defineWorkflow({
589
500
  },
590
501
  {
591
502
  from: "repairGuard",
592
- switch: { on: "$.route", cases: { repair: "initialDesign", blocked: "repairBlocked" } },
593
- },
594
- { from: "initialDesign.ready", to: "documentation" },
595
- { from: "initialDesign.blocked", to: "repairBlocked" },
596
- { from: "documentation.ready", to: "approvalRoute" },
597
- { from: "documentation.blocked", to: "repairBlocked" },
598
- {
599
- from: "approvalRoute",
600
- switch: { on: "$.route", cases: { approve: "approval", implement: "implementation" } },
601
- },
602
- { from: "approval.continue", to: "implementation" },
603
- { from: "approval.stop", to: "repairBlocked" },
604
- { from: "approval.replan", to: "replanGuard" },
605
- {
606
- from: "replanGuard",
607
- switch: { on: "$.route", cases: { design: "initialDesign", blocked: "repairBlocked" } },
503
+ switch: { on: "$.route", cases: { repair: "planChange", blocked: "repairBlocked" } },
608
504
  },
505
+ { from: "planChange.ready", to: "implementation" },
506
+ { from: "planChange.blocked", to: "repairBlocked" },
609
507
  { from: "implementation.completed", to: "check" },
610
508
  { from: "implementation.blocked", to: "repairBlocked" },
611
509
  { from: "repairBlocked", to: "repairReport" },