@mediadatafusion/pi-workflow-suite 0.0.10 → 0.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,37 @@
2
2
 
3
3
  All notable public releases will be documented in this file.
4
4
 
5
+ ## [0.0.11] - 2026-05-30
6
+
7
+ ### Added
8
+
9
+ - `workflow_browser_check` tool — headless browser verification for validator mode with interactive actions (click, type, read, reload, screenshot, evaluate). Uses Puppeteer from the Pi runtime so validators can verify web app behavior regardless of the target project's dependencies.
10
+ - Token budget controls (`maxTokens`, `maxRuntimeHours`) for Plan, Mission, and Standard modes.
11
+ - Structured validation boolean fields (`concreteRepairableIssue`, `manualVerificationRequired`, `evidenceGap`) on workflow and mission state for infallible classification.
12
+ - `/plan complete` command for explicit Plan Mode completion.
13
+ - Mission reviewer and workflow reviewer prompt templates.
14
+
15
+ ### Hardened
16
+
17
+ - **Validation pipeline**: PARTIAL PASS with no concrete code defects now completes the workflow. Classifier reordered so concrete fixes route to repair over evidence gaps. Expanded automatable-evidence-gap detection. Mission validation manual-only outcomes advance milestones; final-validation manual-only outcomes complete the mission.
18
+ - **Reviewer and repair**: Mission reviewer auto-repair uses centralized default-enabled configuration matching Plan Mode. Built-in mission defaults aligned (reviewer auto-repair enabled, retry mode `safe_only`, max retries 2). Consistent retry gating across both modes.
19
+ - **Tool guard and Repo Lock**: Safe-command recognition expanded across package managers and ecosystems (pnpm, yarn, bun, npx serve, python3, curl localhost, ps, pgrep, sleep). Shell preamble handling (`stripSafePreamble`) for `set -e` and `export` patterns. `/tmp/` and `/dev/` paths exempted from Repo Lock blocking. Reduced false-positive destructive-command blocks.
20
+ - **Prompts and agents**: Unified inline-diagram guidance across all prompts, agents, and skills. Web app verification procedures with structured evidence output requirements in validator prompts. Sub-agent write-ownership clarified in mission run prompt. Agent Mermaid guidance updated for raw blocks since sub-agents lack `workflow_diagram`.
21
+ - **Runtime accounting**: Wall-clock age uses terminal timestamp when workflow is stopped. Active-runtime tracking preserved for workflows that began before the current session.
22
+ - **Plan Mode progress tracking**: Plan execution step progress now reliably tracks across all steps. The `workflow_progress` tool is guaranteed on the agent's active tool surface every turn. The progress guard enforces step activation before file writes while allowing sub-agents to run freely for research and preparation. Multi-step prompt guidance with inline step status display keeps the agent aligned with the approved plan from first step through final validation.
23
+
24
+ ### Fixed
25
+
26
+ - Plan execution sub-agents no longer deadlock against the step progress guard when forced sub-agent policies are active.
27
+ - Plan Mode step progress widget consistently updates across multi-step execution instead of staying stuck on step 1.
28
+
29
+ ### Updated
30
+
31
+ - Validators can write temporary evidence-gathering scripts (was read-only).
32
+ - Mission `maxRuntimeHours` default 8→13.
33
+ - All 4 built-in presets updated with `planShowProgressBar`.
34
+ - Internal architecture documentation expanded with model routing, settings merge chain, and preset bundle architecture.
35
+
5
36
  ## [0.0.10] - 2026-05-25
6
37
 
7
38
  ### Changed
package/README.md CHANGED
@@ -4,7 +4,7 @@
4
4
 
5
5
  [![Install](https://cdn.jsdelivr.net/npm/@mediadatafusion/pi-workflow-suite@0.0.6/docs/assets/readme-link-install.svg)](#installation) [![Quick Start](https://cdn.jsdelivr.net/npm/@mediadatafusion/pi-workflow-suite@0.0.6/docs/assets/readme-link-quick-start.svg)](#quick-start) [![Commands](https://cdn.jsdelivr.net/npm/@mediadatafusion/pi-workflow-suite@0.0.6/docs/assets/readme-link-commands.svg)](#core-commands) [![Settings](https://cdn.jsdelivr.net/npm/@mediadatafusion/pi-workflow-suite@0.0.6/docs/assets/readme-link-settings.svg)](#settings-reference)
6
6
 
7
- **Workflow Suite Version:** `v0.0.10`
7
+ **Workflow Suite Version:** `v0.0.11`
8
8
 
9
9
  ## Overview
10
10
 
@@ -55,6 +55,7 @@ See Pi Workflow Suite in action: structured workflow modes, settings, runtime st
55
55
  - [Compaction Support](#compaction-support)
56
56
  - [Diagram Support](#diagram-support)
57
57
  - [Web Access](#web-access)
58
+ - [Browser Verification](#browser-verification)
58
59
  - [Repository Lock](#repository-lock)
59
60
  - [Plan History](#plan-history)
60
61
  - [Mission Progress, Checkpoints, And Runtime Tracking](#mission-progress-checkpoints-and-runtime-tracking)
@@ -115,9 +116,10 @@ Pi Workflow Suite turns Pi into a guided workflow environment:
115
116
  | Mission Mode | Long-running milestone workflows with approval, checkpoints, Mission-specific model overrides, validation gates, repair/retry, pause/resume, final-validation controls, and continuity tracking. |
116
117
  | Themes And Startup UI | Workflow Suite themes, startup visual cards, startup logo modes, custom terminal logo text, custom brand cards, footer/status styling, widgets, and optional input border styling. |
117
118
  | Interactive Diagrams | `workflow_diagram` Mermaid support with terminal preview, SVG-first clickable artifacts, PNG/runtime rendering support, dark-mode-friendly styling, and runtime artifact storage. |
118
- | Web Research | First-party `workflow_web_search` and `workflow_web_fetch` tools for public web search/fetch with source URLs, blocked local/private/internal hosts, time/size limits, and untrusted-content handling. |
119
+ | Web Research & Browser Verification | First-party `workflow_web_search`, `workflow_web_fetch`, and `workflow_browser_check` tools. Search and fetch for public web evidence with source URLs, blocked local/private/internal hosts, and time/size limits. Headless browser verification for runtime web app validation with interactive UI actions (click, type, read, screenshot, evaluate). |
119
120
  | Repo Lock | Project-scoped Global Safety control that constrains normal file tools, bash path checks, and sub-agents to the active repository, with protected configuration paths and clear non-sandbox caveats. |
120
121
  | Compaction | Pi default, custom model, or disabled Workflow Suite compaction so context summarization can use its own provider/model, proactive threshold checks, idle-boundary execution, custom token tuning, adaptive fitting, status reporting, and safe fallback. |
122
+ | Token Budgets | Optional per-mode token and runtime caps (`maxTokens`, `maxRuntimeHours`) for Plan, Mission, and Standard Mode. Off by default (unlimited). When enabled, Workflow Suite tracks cumulative usage and blocks further agent turns when the budget is exceeded. |
121
123
  | Workflow Roles | Planner, Executor, Reviewer, Validator, Mission, and compaction responsibilities are separated by phase so each job has clear boundaries and can be matched to the right model. |
122
124
  | Model Selection | Configure which provider/model and thinking level powers each workflow role, with shared defaults plus Standard-specific and Mission-specific overrides for simpler or higher-rigor setups. |
123
125
  | Presets | Built-in and custom workflow profiles with selector commands and Ctrl+Shift+U cycling while active modes are running. |
@@ -134,13 +136,15 @@ Pi Workflow Suite turns Pi into a guided workflow environment:
134
136
  - Mission Mode through `/mission`, `/m`, and `Ctrl+Shift+M` for durable milestone workflows.
135
137
  - Configurable clarification in Standard Mode, plus dynamic clarification in Plan Mode and Mission Mode.
136
138
  - Review, execution, validation, repair, retry, checkpoint, and final-validation controls where the selected mode supports them.
137
- - Plan history, mission checkpoint history, Standard runtime tracking, Mission runtime tracking, and mode-aware progress widgets.
139
+ - Plan history, mission checkpoint history, Standard runtime tracking, and Mission runtime tracking.
140
+ - Mode-aware progress widgets: Plan step tracking with step-by-step progress and validation gates, Mission milestone tracking with checkpoint history, and Standard Mode dynamic To Do progress.
138
141
  - Workflow settings UI for Standard Mode, Plan Mode, Mission Mode, model selection, sub-agents, compaction, widgets, themes, startup visuals, and safety.
139
142
  - Workflow themes with a `none` option, startup visual cards, startup logo modes, custom terminal logo text, custom brand cards, and optional themed input borders.
140
- - Integrated `workflow_web_search` and `workflow_web_fetch` tools for current public evidence and source-backed URL reading.
143
+ - Integrated `workflow_web_search`, `workflow_web_fetch`, and `workflow_browser_check` tools for current public evidence, source-backed URL reading, and headless browser verification of web app runtime behavior.
141
144
  - Interactive `workflow_diagram` Mermaid rendering with terminal preview, clickable SVG artifacts, and PNG/runtime rendering support.
142
145
  - Repo Lock for project-scoped path safety around repository work, protected project configuration, and sub-agent inheritance.
143
146
  - Role-aware model selection so planning, execution, review, validation, Mission work, and compaction can each use the provider/model and thinking level that fits the job.
147
+ - Optional per-mode token and runtime budgets (`maxTokens`, `maxRuntimeHours`) to cap usage in Plan, Mission, and Standard Mode. Off by default; enable when you need predictable cost or time limits.
144
148
  - Sub-agent usage policies for planning, execution, repair, review, and validation, with explicit documentation that these are orchestration settings, not a universal permission manager.
145
149
  - Safe install, backup, audit, quarantine, verification, and package validation scripts.
146
150
 
@@ -433,6 +437,80 @@ The grouped settings menus expose shared role selection, Standard-specific model
433
437
 
434
438
  Shared model selection is available through `/workflow settings Shared Models`. Standard-specific and mission-specific model selection is available through their mode settings menus.
435
439
 
440
+ ## Efficiency Guidance
441
+
442
+ Workflow Suite gives you independent control over workflow rigor and model cost. This section explains which settings affect token usage and how to tune them.
443
+
444
+ ### Thinking Levels
445
+
446
+ Six thinking levels control how much reasoning the model applies per inference:
447
+
448
+ ```text
449
+ off < minimal < low < medium < high < xhigh
450
+ ```
451
+
452
+ Higher levels use more tokens. Recommendations by role:
453
+
454
+ | Role | Guidance |
455
+ |------|----------|
456
+ | Planner | Higher thinking is often worth the cost — the plan defines scope, assumptions, risk, and validation strategy. |
457
+ | Reviewer | Higher thinking helps catch missing requirements, unsafe steps, or weak plans before execution begins. |
458
+ | Validator | Higher thinking reduces shared blind spots with the executor. An independent validator with a different model is more valuable than maxing thinking on the same model. |
459
+ | Executor | Medium-high is usually sufficient. Execution is about precise tool use and instruction following, not open-ended analysis. |
460
+ | Compaction | Summarization is mechanical. If using a custom compaction model, a lower thinking level or a cheaper model is often appropriate. |
461
+
462
+ Note: Pi may clamp thinking levels for model/provider combinations that do not support the requested level. This is Pi runtime behavior, not a Workflow Suite setting.
463
+
464
+ ### Token Budgets
465
+
466
+ Each mode supports an optional configurable token budget:
467
+
468
+ - `planning.maxTokens` — caps estimated token usage for a Plan Mode workflow.
469
+ - `missions.maxTokens` — caps estimated token usage for a Mission Mode workflow.
470
+ - `standard.maxTokens` — caps estimated token usage for a Standard Mode session.
471
+
472
+ Default is `0` (unlimited). When set to a positive value, Workflow Suite tracks cumulative usage and blocks further agent turns when the budget is exceeded. Set budgets with headroom — the tracker uses context window size as a proxy since Pi does not expose cumulative token counts.
473
+
474
+ Configure through `/workflow settings Plan Mode`, `/workflow settings Mission Mode`, or `/workflow settings Standard Mode`.
475
+
476
+ ### Sub-Agent Policy And Token Cost
477
+
478
+ Sub-agent policies control how many parallel workers are requested per phase:
479
+
480
+ ```text
481
+ off < auto < deep < maximum < forced
482
+ ```
483
+
484
+ Each worker has its own context window, so more workers multiply token spend. The built-in presets scale worker counts from 1 (simple) to 4 (maximum). For cost-sensitive work:
485
+
486
+ - Use `auto` to let the model decide when workers are worth the cost.
487
+ - Lower worker counts in `deep`/`maximum`/`forced` policies.
488
+ - Disable phases that are not needed for the current task.
489
+
490
+ Sub-agent settings are configured through `/workflow settings Shared Sub-agents`, with per-mode overrides in Standard Mode and Mission Mode settings.
491
+
492
+ ### Settings That Affect Token Usage
493
+
494
+ | Setting | Impact |
495
+ |---------|--------|
496
+ | Thinking levels (per role) | Directly controls tokens per inference for each workflow phase. |
497
+ | Sub-agent policies and worker counts | More workers = more parallel context windows = higher total spend. |
498
+ | `maxClarificationQuestions` | Higher counts mean more clarification turns before work begins. |
499
+ | `planning.depth` | `deep`/`maximum` prompt for more sub-agent research before planning. |
500
+ | `validationRetryMode` | `aggressive_within_scope` can trigger more repair cycles. |
501
+ | `finalValidationEnabled` | Adds a whole-mission validation pass after all milestones complete. |
502
+ | `maxTokens` (per mode) | Optional budget cap; blocks further turns when exceeded. |
503
+
504
+ ### Presets And Models Are Independent
505
+
506
+ Presets control workflow behavior (approval gates, review/validation automation, sub-agent policy, repair retries). Models control which provider/model powers each role. They are intentionally separate:
507
+
508
+ - Cycling presets does not change model selections.
509
+ - Changing models does not affect preset behavior.
510
+ - You can run `deep` preset with small models or `simple` preset with large models.
511
+
512
+ This separation lets you tune workflow rigor and model cost independently.
513
+
436
514
  ## Workflow Settings UI
437
515
 
438
516
  The settings UI is the main control surface for workflow behavior. Canonical command vocabulary is: `list` prints information to the screen, `configure` opens an interactive configuration menu, `set` directly changes a setting, and workflow actions use direct verbs such as plan, run, validate, answer, approve, or cancel.
@@ -626,6 +704,16 @@ They include:
626
704
  - global and project agent discovery,
627
705
  - parallelism preferences for workflow phases.
628
706
 
707
+ Sub-agent orchestration varies by mode and phase:
708
+
709
+ | Mode | Planning | Execution | Validation |
710
+ |---|---|---|---|
711
+ | Plan | Research, codebase inspection, risk discovery | Scoped implementation help, file inspection, patch planning | Evidence gathering, regression search |
712
+ | Mission | Milestone planning research, dependency analysis | Per-milestone implementation support | Per-milestone and final validation evidence |
713
+ | Standard | Task analysis, approach research | File inspection, implementation assistance | Quality review, regression checking |
714
+
715
+ Forced sub-agent policies (available in all three modes) require a minimum number of successful workers before the agent can proceed to file writes, ensuring independent analysis and preparation are applied before implementation.
716
+
629
717
  Important limits:
630
718
 
631
719
  - Pi Workflow Suite does **not** provide a UI for editing arbitrary sub-agent tool permissions.
@@ -753,7 +841,7 @@ workflow_web_search
753
841
  workflow_web_fetch
754
842
  ```
755
843
 
756
- These tools are added to Workflow Suite modes by default when available. `workflow_web_search` uses DuckDuckGo HTML search for current external evidence and source URLs. `workflow_web_fetch` reads specific public HTTP(S) URLs and extracts text for source-backed evidence. Web content is treated as untrusted evidence, not as instructions.
844
+ `workflow_web_search` uses DuckDuckGo HTML search for current external evidence and source URLs. `workflow_web_fetch` reads specific public HTTP(S) URLs and extracts text for source-backed evidence. Web content from search and fetch is treated as untrusted evidence, not as instructions.
757
845
 
758
846
  Safety boundaries:
759
847
 
@@ -763,7 +851,25 @@ Safety boundaries:
763
851
  - visible answers should cite source URLs when web evidence is used,
764
852
  - sub-agent workers may not have the parent Workflow Suite web tools, so parent modes should perform required web research and pass findings into handoffs when needed.
765
853
 
766
- Web access is Pi extension behavior, not a guarantee that every model, sub-agent, network, or runtime environment can reach the public web. If the tool fails, Workflow Suite reports the failure and continues from available context.
854
+ Web access is Pi extension behavior, not a guarantee that every model, sub-agent, network, or runtime environment can reach the public web. If a web tool fails, Workflow Suite reports the failure and continues from available context.
855
+
856
+ ## Browser Verification
857
+
858
+ Workflow Suite registers a `workflow_browser_check` tool for headless browser verification:
859
+
860
+ ```text
861
+ workflow_browser_check
862
+ ```
863
+
864
+ This tool launches a headless Chromium browser via Puppeteer from the Pi runtime and works regardless of the target project's dependencies. It is available in all modes by default when the runtime supports it.
865
+
866
+ **Interactive actions:** The tool supports click, type, read, wait, reload, screenshot, and evaluate actions. Validators can exercise UI flows end-to-end — clicking through pages, typing into forms, reading updated text, and capturing screenshots — rather than only observing static page state. Screenshots are saved to `/tmp/validator_screenshot.png`.
867
+
868
+ **Validator workflows:** Validators use `workflow_browser_check` to verify web app runtime behavior: console errors, page errors, DOM element counts, localStorage state, and interactive UI correctness. This provides automatable browser-level evidence for validation reports without requiring manual human verification.
869
+
870
+ **Executor and planner use:** Executors and planners can also use the tool to verify their own work during implementation — starting a dev server, running browser checks, and confirming behavior before handing off to validation.
871
+
872
+ **Graceful fallback:** If Puppeteer is not available in the Pi runtime, the tool reports the error and the workflow continues from available context. Browser verification is an enhancement, not a hard dependency.
767
873
 
768
874
  ## Repository Lock
769
875
 
@@ -781,6 +887,8 @@ Repo Lock does not grant normal agent tools access to the live Pi runtime under
781
887
 
782
888
  Repo Lock helps prevent accidental cross-repository work. It is not an operating-system sandbox, a complete shell parser, or a guarantee that every possible child process is contained. Review commands before running them, especially commands that invoke other tools or scripts.
783
889
 
890
+ Repo Lock is enabled by default in the Standard, Deep, and Maximum built-in presets. If your workflow requires cross-repository access, disable it through `/workflow settings Global Safety` or by setting `safety.repoLockEnabled` to `false`.
891
+
784
892
  ## Plan History
785
893
 
786
894
  Plan history can persist workflow plans under Pi runtime state. Saved plans include:
@@ -887,6 +995,15 @@ cd /path/to/project
887
995
  pi install -l npm:@mediadatafusion/pi-workflow-suite
888
996
  ```
889
997
 
998
+ ### Installing specific versions
999
+
1000
+ ```bash
1001
+ pi install npm:@mediadatafusion/pi-workflow-suite@0.0.11
1002
+ pi install -l npm:@mediadatafusion/pi-workflow-suite@0.0.11
1003
+ ```
1004
+
1005
+ An unversioned install follows normal update behavior: `pi update` and `pi update --extensions` will pick up new package releases. A versioned install pins the package to that version. Pinned package specs are intentionally skipped by Pi's normal package update commands. To move a pinned install to a newer version, reinstall with the desired version. To switch back to latest tracking, use the unversioned install command without `@<version>`.
1006
+
890
1007
  ### Source install
891
1008
 
892
1009
  ```bash
@@ -1088,10 +1205,10 @@ See `docs/TROUBLESHOOTING.md` for detailed diagnostics.
1088
1205
 
1089
1206
  ## Versioning
1090
1207
 
1091
- The current preparation version is `v0.0.10`. Version information is intentionally aligned across:
1208
+ The current preparation version is `v0.0.11`. Version information is intentionally aligned across:
1092
1209
 
1093
- - `VERSION` (`v0.0.10`),
1094
- - `package.json` (`0.0.10`),
1210
+ - `VERSION` (`v0.0.11`),
1211
+ - `package.json` (`0.0.11`),
1095
1212
  - `package-lock.json`,
1096
1213
  - this README,
1097
1214
  - Workflow Suite settings/about output.
package/VERSION CHANGED
@@ -1 +1 @@
1
- v0.0.10
1
+ v0.0.11
@@ -0,0 +1,42 @@
1
+ CRITICAL: Call workflow_review_result as your FIRST action in this turn. Do not output any text, analysis, or diagrams before the tool call. After the tool executes and returns, include a workflow_diagram to visualize your review findings (architecture concerns, risk flow, or recommendation path) with concise prose. Place the diagram inline -- not batched at the end.
2
+
3
+ ---
4
+ description: Review the mission milestone plan before approval and execution
5
+ ---
6
+
7
+ You are in PI MISSION MODE REVIEWER MODE.
8
+
9
+ Use read-only tools only. Do not edit, write, or run bash. Review the Mission milestone plan before Mission approval and execution. Reviewer is not validation. Reviewer checks whether the mission plan is safe, complete, properly scoped, and has validation-ready milestones before executor work begins.
10
+
11
+ Review checklist:
12
+ - Milestones are parser-safe, ordered, and scoped to the mission goal.
13
+ - Each milestone has clear objective, steps, acceptance criteria, required evidence, and risks.
14
+ - The mission plan does not authorize destructive, secret, auth/session/log/runtime-state, database, deployment, push, or out-of-scope work without explicit approval.
15
+ - Validation strategy is strong enough for per-milestone validation and optional final comprehensive validation.
16
+ - Autonomy and pause/continue behavior are safe for the mission scope.
17
+ - Any repair recommendation must revise the mission plan only; do not execute.
18
+
19
+ Output exactly:
20
+ # Review Report
21
+ ## Verdict
22
+ PASS — plan is complete, safe, scoped correctly, and ready for approval.
23
+ NOTES — plan is acceptable but has non-blocking observations for the executor.
24
+ NEEDS REPAIR — plan has concrete gaps that should be repaired before approval (missing requirements, unclear milestones, insufficient validation).
25
+ FAIL — plan has serious issues that block safe execution (missing safety constraints, out-of-scope work, broken dependencies).
26
+ BLOCKED — plan cannot proceed without external resolution (missing credentials, unavailable services, blocked dependencies).
27
+
28
+ Verdict criteria:
29
+ - PASS only when: no repairable issues remain and the plan is ready for approval.
30
+ - NOTES when: plan is sound but has minor observations the executor should consider.
31
+ - NEEDS REPAIR when: milestones lack acceptance criteria, validation plan is weak, scope is unclear, or concrete missing requirements are identified.
32
+ - FAIL when: plan authorizes destructive/secret/auth/database/deploy/push work without explicit approval, or safety constraints are absent.
33
+ - BLOCKED when: plan requires unavailable resources or external dependencies that cannot be resolved by repair.
34
+ ## Reason
35
+ ## Mission Plan Coverage
36
+ ## Milestone Quality
37
+ ## Validation Plan Review
38
+ ## Safety And Scope Review
39
+ ## Missing Requirements
40
+ ## Repairable Plan Issues
41
+ ## Regression Risks
42
+ ## Recommended Next Action
@@ -0,0 +1,44 @@
1
+ CRITICAL: Call workflow_review_result as your FIRST action in this turn. Do not output any text, analysis, or diagrams before the tool call. After the tool executes and returns, include a workflow_diagram to visualize your review findings (architecture concerns, risk flow, or recommendation path) with concise prose. Place the diagram inline -- not batched at the end.
2
+
3
+ ---
4
+ description: Review the approved plan before execution
5
+ ---
6
+
7
+ You are in PI WORKFLOW REVIEWER MODE.
8
+
9
+ Use read-only tools only. Do not edit, write, or run bash. Review the approved plan before execution for scope, risk, missing requirements, and files that should remain untouched.
10
+
11
+ Reviewer is not validation. Reviewer checks whether the plan or implementation approach is safe, complete, and aligned before execution. Validation checks whether work passes after or during implementation.
12
+
13
+ Review checklist:
14
+ - Plan scope is clear, bounded, and aligned with the user's request.
15
+ - Implementation steps are ordered correctly with no circular dependencies.
16
+ - Required files are identified and files to avoid are listed.
17
+ - Validation strategy covers all deliverables with concrete acceptance criteria.
18
+ - Risk assessment covers security, data loss, breaking changes, and deployment concerns.
19
+ - The plan does not authorize destructive, secret, auth/session/log/runtime-state, database, deployment, push, or out-of-scope work without explicit approval.
20
+ - Test and build verification is included where applicable.
21
+
22
+ Output exactly:
23
+ # Reviewer Report
24
+ ## Verdict
25
+ PASS — plan is complete, safe, properly scoped, and ready for execution.
26
+ NOTES — plan is sound with non-blocking observations for the executor.
27
+ NEEDS REPAIR — plan has concrete gaps (missing steps, unclear files, weak validation, scope creep, risks not addressed).
28
+ FAIL — plan has serious blockers (safety violations, missing security constraints, broken dependencies, impossible steps).
29
+ BLOCKED — plan cannot proceed without external resolution.
30
+
31
+ Do not write APPROVED, APPROVE, OK, or PROCEED as the verdict label.
32
+
33
+ Verdict criteria:
34
+ - PASS only when: all checklist items are satisfied and no repairable issues remain.
35
+ - NOTES when: minor observations exist (suggested file order, additional test ideas, optional improvements).
36
+ - NEEDS REPAIR when: concrete missing requirements, unclear scope boundaries, insufficient validation, or unaddressed risks.
37
+ - FAIL when: safety/security violations, circular dependencies, impossible steps, or work that exceeds approved scope without authorization.
38
+ - BLOCKED when: plan requires unavailable resources or external dependencies that cannot be resolved by repair.
39
+ ## Reason
40
+ ## Scope Risks
41
+ ## Missing Information
42
+ ## Files To Be Careful With
43
+ ## Required Plan Revisions
44
+ ## Recommended Execution Notes
@@ -106,6 +106,8 @@ export interface WorkflowSettings {
106
106
  clarificationQualityGate?: boolean;
107
107
  allowClarificationWithoutAnalysis?: boolean;
108
108
  useSubagentsBeforeClarification?: boolean;
109
+ maxTokens?: number;
110
+ maxRuntimeHours?: number;
109
111
  };
110
112
  workflow: {
111
113
  requirePlanApprovalBeforeExecute: boolean;
@@ -138,6 +140,7 @@ export interface WorkflowSettings {
138
140
  planHistoryLimit?: number;
139
141
  planProgressEnabled?: boolean;
140
142
  planRuntimeEnabled?: boolean;
143
+ planShowProgressBar?: boolean;
141
144
  };
142
145
  standard: {
143
146
  enabled: boolean;
@@ -160,11 +163,13 @@ export interface WorkflowSettings {
160
163
  useStandardSpecificModels?: boolean;
161
164
  modelRole?: StandardModelRole;
162
165
  models?: Record<WorkflowRole, RoleModelSettings>;
166
+ maxTokens?: number;
163
167
  };
164
168
  missions: {
165
169
  enabled: boolean;
166
170
  defaultAutonomy: MissionAutonomy;
167
171
  maxRuntimeHours: number;
172
+ maxTokens?: number;
168
173
  checkpointIntervalMinutes: number;
169
174
  requireApprovalForDestructiveActions: boolean;
170
175
  requireValidationPerMilestone: boolean;
@@ -214,6 +219,7 @@ export interface WorkflowSettings {
214
219
  disableBashInPlanMode: boolean;
215
220
  disableBashInValidatorMode: boolean;
216
221
  blockDestructiveCommands: boolean;
222
+ allowPackageInstallInExecution: boolean;
217
223
  };
218
224
  ui: {
219
225
  showWorkflowStatus: boolean;
@@ -242,6 +248,7 @@ export interface WorkflowSettings {
242
248
  customBrandEnabled?: boolean;
243
249
  customBrandText?: string;
244
250
  customBrandBaseVisual?: CustomBrandBaseVisual;
251
+ debugPlanStepTracking?: boolean;
245
252
  };
246
253
  subagents: WorkflowSubagentSettings;
247
254
  context: {
@@ -365,6 +372,7 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
365
372
  "planHistoryLimit": 50,
366
373
  "planProgressEnabled": true,
367
374
  "planRuntimeEnabled": true,
375
+ "planShowProgressBar": true,
368
376
  "requireApprovalBeforeExecution": true,
369
377
  "requireApprovalPerStep": false,
370
378
  "validateAfterEachStep": false,
@@ -415,7 +423,8 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
415
423
  "model": null,
416
424
  "thinkingLevel": "xhigh"
417
425
  }
418
- }
426
+ },
427
+ "maxTokens": 0
419
428
  },
420
429
  "missions": {
421
430
  "enabled": true,
@@ -429,9 +438,9 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
429
438
  "autoRunAfterApproval": true,
430
439
  "offerReviewerBeforeApprove": false,
431
440
  "autoRunReviewerBeforeApprove": false,
432
- "autoRepairReviewFailures": false,
433
- "reviewRetryMode": "off",
434
- "maxReviewRetriesPerMission": 0,
441
+ "autoRepairReviewFailures": true,
442
+ "reviewRetryMode": "safe_only",
443
+ "maxReviewRetriesPerMission": 2,
435
444
  "continueAcrossMilestones": true,
436
445
  "pauseBetweenMilestones": false,
437
446
  "progressWidgetEnabled": true,
@@ -488,13 +497,15 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
488
497
  "clarificationTiming": "after_initial_analysis",
489
498
  "clarificationQualityGate": true,
490
499
  "allowClarificationWithoutAnalysis": false,
491
- "useSubagentsBeforeClarification": true
500
+ "useSubagentsBeforeClarification": true,
501
+ "maxTokens": 0
492
502
  },
493
503
  "safety": {
494
- "repoLockEnabled": false,
495
- "disableBashInPlanMode": true,
504
+ "repoLockEnabled": true,
505
+ "disableBashInPlanMode": false,
496
506
  "disableBashInValidatorMode": true,
497
- "blockDestructiveCommands": true
507
+ "blockDestructiveCommands": true,
508
+ "allowPackageInstallInExecution": true
498
509
  },
499
510
  "ui": {
500
511
  "showWorkflowStatus": true,
@@ -522,7 +533,8 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
522
533
  "startupVisualOnSessionStart": true,
523
534
  "customBrandEnabled": false,
524
535
  "customBrandText": "",
525
- "customBrandBaseVisual": "mission_control"
536
+ "customBrandBaseVisual": "mission_control",
537
+ "debugPlanStepTracking": false
526
538
  },
527
539
  "shortcuts": {
528
540
  "planMode": null
@@ -572,7 +584,9 @@ const BUILTIN_DEFAULT_WORKFLOW_SETTINGS = {
572
584
  "clarificationTiming": "after_initial_analysis",
573
585
  "clarificationQualityGate": true,
574
586
  "allowClarificationWithoutAnalysis": false,
575
- "useSubagentsBeforeClarification": true
587
+ "useSubagentsBeforeClarification": true,
588
+ "maxTokens": 0,
589
+ "maxRuntimeHours": 0
576
590
  },
577
591
  "context": {
578
592
  "compactionMode": "pi_default",
@@ -869,7 +883,7 @@ export function builtInWorkflowPresets(): Record<string, WorkflowPresetBundle> {
869
883
  displayName: "Simple",
870
884
  description: "Fast end-to-end Plan/Mission/Standard workflow with minimal ceremony, automatic validation when work runs, low safe repair retries, and one-worker sub-agent support.",
871
885
  planning: { depth: "fast", clarificationMode: "auto", maxClarificationQuestions: 2, interactiveClarificationEnabled: true, clarificationQualityGate: false, useSubagentsBeforeClarification: true },
872
- workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: false, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: false, autoRepairValidationFailures: true, reviewRetryMode: "off", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 0, maxReviewRetriesPerWorkflow: 0, maxValidationRetriesPerPlan: 1, maxValidationRetriesPerWorkflow: 2, pauseAfterReviewFailure: true, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true },
886
+ workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: false, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: false, autoRepairValidationFailures: true, reviewRetryMode: "off", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 0, maxReviewRetriesPerWorkflow: 0, maxValidationRetriesPerPlan: 1, maxValidationRetriesPerWorkflow: 2, pauseAfterReviewFailure: true, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true, planShowProgressBar: true },
873
887
  standard: { enabled: true, autoTodoEnabled: true, todoProgressVisible: true, todoTriggerMode: "auto", clarificationEnabled: true, clarificationMode: "auto", maxClarificationQuestions: 1, interactiveClarificationEnabled: true, clarificationTiming: "after_initial_analysis", clarificationQualityGate: false, allowClarificationWithoutAnalysis: false, useSubagentsBeforeClarification: false, allowSubagents: true, subagentScope: "user", subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "auto", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 1, minPlanningWorkersForMaximum: 1, minExecutionWorkersForDeep: 1, minExecutionWorkersForMaximum: 1, minRepairWorkersForDeep: 1, minRepairWorkersForMaximum: 1, minReviewWorkersForDeep: 1, minReviewWorkersForMaximum: 1, minValidationWorkersForDeep: 1, minValidationWorkersForMaximum: 1 }, statusWidgetVisible: true, useSharedExecutorModel: true, useStandardSpecificModels: false, modelRole: "executor" },
874
888
  missions: { defaultAutonomy: "approval_gated", requireValidationPerMilestone: true, autoRunAfterApproval: true, continueAcrossMilestones: true, pauseBetweenMilestones: false, clarificationMode: "auto", maxClarificationQuestions: 2, planningDepth: "fast", useSubagentsBeforeClarification: true, autoRepairValidationFailures: true, validationRetryMode: "safe_only", maxValidationRetriesPerMilestone: 1, maxValidationRetriesPerMission: 2, finalValidationEnabled: false, autoRepairFinalValidationFailures: false, maxFinalValidationRetries: 0, subagentPolicy: "forced", minWorkersForDeep: 1, minWorkersForMaximum: 1 },
875
889
  subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "auto", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 1, minPlanningWorkersForMaximum: 1, minExecutionWorkersForDeep: 1, minExecutionWorkersForMaximum: 1, minRepairWorkersForDeep: 1, minRepairWorkersForMaximum: 1, minReviewWorkersForDeep: 1, minReviewWorkersForMaximum: 1, minValidationWorkersForDeep: 1, minValidationWorkersForMaximum: 1 },
@@ -878,7 +892,7 @@ export function builtInWorkflowPresets(): Record<string, WorkflowPresetBundle> {
878
892
  displayName: "Standard",
879
893
  description: "Default end-to-end workflow with useful clarification, automatic execution/validation after approval, safe repair retries, and balanced worker support.",
880
894
  planning: { depth: "standard", clarificationMode: "auto", maxClarificationQuestions: 3, interactiveClarificationEnabled: true, clarificationQualityGate: true, useSubagentsBeforeClarification: true },
881
- workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: false, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "safe_only", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 2, maxReviewRetriesPerWorkflow: 4, maxValidationRetriesPerPlan: 2, maxValidationRetriesPerWorkflow: 4, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true },
895
+ workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: false, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "safe_only", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 2, maxReviewRetriesPerWorkflow: 4, maxValidationRetriesPerPlan: 2, maxValidationRetriesPerWorkflow: 4, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true, planShowProgressBar: true },
882
896
  standard: { enabled: true, autoTodoEnabled: true, todoProgressVisible: true, todoTriggerMode: "auto", clarificationEnabled: true, clarificationMode: "auto", maxClarificationQuestions: 1, interactiveClarificationEnabled: true, clarificationTiming: "after_initial_analysis", clarificationQualityGate: true, allowClarificationWithoutAnalysis: false, useSubagentsBeforeClarification: false, allowSubagents: true, subagentScope: "user", subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 1, minPlanningWorkersForMaximum: 1, minExecutionWorkersForDeep: 2, minExecutionWorkersForMaximum: 2, minRepairWorkersForDeep: 2, minRepairWorkersForMaximum: 2, minReviewWorkersForDeep: 2, minReviewWorkersForMaximum: 2, minValidationWorkersForDeep: 2, minValidationWorkersForMaximum: 2 }, statusWidgetVisible: true, useSharedExecutorModel: true, useStandardSpecificModels: false, modelRole: "executor" },
883
897
  missions: { defaultAutonomy: "approval_gated", requireValidationPerMilestone: true, autoRunAfterApproval: true, continueAcrossMilestones: true, pauseBetweenMilestones: false, clarificationMode: "auto", maxClarificationQuestions: 3, planningDepth: "standard", useSubagentsBeforeClarification: true, autoRepairValidationFailures: true, validationRetryMode: "safe_only", maxValidationRetriesPerMilestone: 2, maxValidationRetriesPerMission: 6, finalValidationEnabled: false, autoRepairFinalValidationFailures: false, maxFinalValidationRetries: 1, subagentPolicy: "forced", minWorkersForDeep: 1, minWorkersForMaximum: 1 },
884
898
  subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 1, minPlanningWorkersForMaximum: 1, minExecutionWorkersForDeep: 2, minExecutionWorkersForMaximum: 2, minRepairWorkersForDeep: 2, minRepairWorkersForMaximum: 2, minReviewWorkersForDeep: 2, minReviewWorkersForMaximum: 2, minValidationWorkersForDeep: 2, minValidationWorkersForMaximum: 2 },
@@ -887,7 +901,7 @@ export function builtInWorkflowPresets(): Record<string, WorkflowPresetBundle> {
887
901
  displayName: "Deep",
888
902
  description: "Careful end-to-end workflow for risky or codebase-heavy work with stronger clarification, automatic review/validation, final mission validation, and larger worker teams.",
889
903
  planning: { depth: "deep", clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 5, interactiveClarificationEnabled: true, clarificationQualityGate: true, useSubagentsBeforeClarification: true },
890
- workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: true, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "safe_only", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 3, maxReviewRetriesPerWorkflow: 6, maxValidationRetriesPerPlan: 3, maxValidationRetriesPerWorkflow: 6, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true },
904
+ workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: true, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "safe_only", validationRetryMode: "safe_only", maxReviewRetriesPerPlan: 3, maxReviewRetriesPerWorkflow: 6, maxValidationRetriesPerPlan: 3, maxValidationRetriesPerWorkflow: 6, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true, planShowProgressBar: true },
891
905
  standard: { enabled: true, autoTodoEnabled: true, todoProgressVisible: true, todoTriggerMode: "required", clarificationEnabled: true, clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 2, interactiveClarificationEnabled: true, clarificationTiming: "after_initial_analysis", clarificationQualityGate: true, allowClarificationWithoutAnalysis: false, useSubagentsBeforeClarification: true, allowSubagents: true, subagentScope: "user", subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 2, minPlanningWorkersForMaximum: 2, minExecutionWorkersForDeep: 3, minExecutionWorkersForMaximum: 3, minRepairWorkersForDeep: 2, minRepairWorkersForMaximum: 2, minReviewWorkersForDeep: 3, minReviewWorkersForMaximum: 3, minValidationWorkersForDeep: 3, minValidationWorkersForMaximum: 3 }, statusWidgetVisible: true, useSharedExecutorModel: true, useStandardSpecificModels: false, modelRole: "executor" },
892
906
  missions: { defaultAutonomy: "approval_gated", requireValidationPerMilestone: true, autoRunAfterApproval: true, continueAcrossMilestones: true, pauseBetweenMilestones: false, clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 5, planningDepth: "deep", useSubagentsBeforeClarification: true, autoRepairValidationFailures: true, validationRetryMode: "safe_only", maxValidationRetriesPerMilestone: 3, maxValidationRetriesPerMission: 8, finalValidationEnabled: true, autoRepairFinalValidationFailures: true, maxFinalValidationRetries: 2, subagentPolicy: "forced", minWorkersForDeep: 3, minWorkersForMaximum: 3 },
893
907
  subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 3, minPlanningWorkersForMaximum: 3, minExecutionWorkersForDeep: 3, minExecutionWorkersForMaximum: 3, minRepairWorkersForDeep: 2, minRepairWorkersForMaximum: 2, minReviewWorkersForDeep: 3, minReviewWorkersForMaximum: 3, minValidationWorkersForDeep: 3, minValidationWorkersForMaximum: 3 },
@@ -896,7 +910,7 @@ export function builtInWorkflowPresets(): Record<string, WorkflowPresetBundle> {
896
910
  displayName: "Maximum",
897
911
  description: "Highest-rigor end-to-end workflow with strongest clarification, automatic review/validation, final mission validation, aggressive in-scope repair, and maximum worker teams.",
898
912
  planning: { depth: "maximum", clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 5, interactiveClarificationEnabled: true, clarificationQualityGate: true, useSubagentsBeforeClarification: true },
899
- workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: true, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "aggressive_within_scope", validationRetryMode: "aggressive_within_scope", maxReviewRetriesPerPlan: 5, maxReviewRetriesPerWorkflow: 8, maxValidationRetriesPerPlan: 5, maxValidationRetriesPerWorkflow: 8, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true },
913
+ workflow: { offerReviewerBeforeExecute: false, autoRunReviewerBeforeExecute: true, offerValidationAfterExecute: true, autoRunValidationAfterExecute: true, validateAfterExecution: true, requirePlanApprovalBeforeExecute: false, requireApprovalBeforeExecution: false, autoRepairReviewFailures: true, autoRepairValidationFailures: true, reviewRetryMode: "aggressive_within_scope", validationRetryMode: "aggressive_within_scope", maxReviewRetriesPerPlan: 5, maxReviewRetriesPerWorkflow: 8, maxValidationRetriesPerPlan: 5, maxValidationRetriesPerWorkflow: 8, pauseAfterReviewFailure: false, pauseAfterValidationFailure: false, planProgressEnabled: true, planRuntimeEnabled: true, planShowProgressBar: true },
900
914
  standard: { enabled: true, autoTodoEnabled: true, todoProgressVisible: true, todoTriggerMode: "required", clarificationEnabled: true, clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 2, interactiveClarificationEnabled: true, clarificationTiming: "after_initial_analysis", clarificationQualityGate: true, allowClarificationWithoutAnalysis: false, useSubagentsBeforeClarification: true, allowSubagents: true, subagentScope: "user", subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 3, minPlanningWorkersForMaximum: 3, minExecutionWorkersForDeep: 4, minExecutionWorkersForMaximum: 4, minRepairWorkersForDeep: 3, minRepairWorkersForMaximum: 3, minReviewWorkersForDeep: 4, minReviewWorkersForMaximum: 4, minValidationWorkersForDeep: 4, minValidationWorkersForMaximum: 4 }, statusWidgetVisible: true, useSharedExecutorModel: true, useStandardSpecificModels: false, modelRole: "executor" },
901
915
  missions: { defaultAutonomy: "supervised_auto", requireValidationPerMilestone: true, autoRunAfterApproval: true, continueAcrossMilestones: true, pauseBetweenMilestones: false, clarificationMode: "always_for_nontrivial", maxClarificationQuestions: 6, planningDepth: "maximum", useSubagentsBeforeClarification: true, autoRepairValidationFailures: true, validationRetryMode: "aggressive_within_scope", maxValidationRetriesPerMilestone: 4, maxValidationRetriesPerMission: 12, finalValidationEnabled: true, autoRepairFinalValidationFailures: true, maxFinalValidationRetries: 4, subagentPolicy: "forced", minWorkersForDeep: 4, minWorkersForMaximum: 4 },
902
916
  subagents: { planningPolicy: "forced", executionPolicy: "forced", repairPolicy: "forced", reviewPolicy: "forced", validationPolicy: "forced", autoUseDuringPlanning: true, autoUseDuringExecution: true, autoUseDuringRepair: true, autoUseDuringReview: true, autoUseDuringValidation: true, minPlanningWorkersForDeep: 4, minPlanningWorkersForMaximum: 4, minExecutionWorkersForDeep: 4, minExecutionWorkersForMaximum: 4, minRepairWorkersForDeep: 3, minRepairWorkersForMaximum: 3, minReviewWorkersForDeep: 4, minReviewWorkersForMaximum: 4, minValidationWorkersForDeep: 4, minValidationWorkersForMaximum: 4 },