@intrect/openswarm 0.10.1 → 0.11.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/README.md +13 -61
  2. package/dist/agents/pairPipeline.d.ts.map +1 -1
  3. package/dist/agents/pairPipeline.js +4 -3
  4. package/dist/agents/pairPipeline.js.map +1 -1
  5. package/dist/cli/reviewAudit.d.ts +72 -1
  6. package/dist/cli/reviewAudit.d.ts.map +1 -1
  7. package/dist/cli/reviewAudit.js +119 -7
  8. package/dist/cli/reviewAudit.js.map +1 -1
  9. package/dist/cli/reviewMaxCommand.d.ts +2 -0
  10. package/dist/cli/reviewMaxCommand.d.ts.map +1 -1
  11. package/dist/cli/reviewMaxCommand.js +38 -9
  12. package/dist/cli/reviewMaxCommand.js.map +1 -1
  13. package/dist/cli/reviewProgress.d.ts +8 -5
  14. package/dist/cli/reviewProgress.d.ts.map +1 -1
  15. package/dist/cli/reviewProgress.js +19 -14
  16. package/dist/cli/reviewProgress.js.map +1 -1
  17. package/dist/cli.js +2 -0
  18. package/dist/cli.js.map +1 -1
  19. package/dist/orchestration/taskScheduler.d.ts.map +1 -1
  20. package/dist/orchestration/taskScheduler.js +10 -1
  21. package/dist/orchestration/taskScheduler.js.map +1 -1
  22. package/dist/runners/cliRunner.d.ts.map +1 -1
  23. package/dist/runners/cliRunner.js +21 -5
  24. package/dist/runners/cliRunner.js.map +1 -1
  25. package/dist/support/colors.d.ts +20 -0
  26. package/dist/support/colors.d.ts.map +1 -1
  27. package/dist/support/colors.js +29 -0
  28. package/dist/support/colors.js.map +1 -1
  29. package/dist/support/glyphs.d.ts +9 -0
  30. package/dist/support/glyphs.d.ts.map +1 -0
  31. package/dist/support/glyphs.js +27 -0
  32. package/dist/support/glyphs.js.map +1 -0
  33. package/dist/tui/components/AuditBoard.d.ts.map +1 -1
  34. package/dist/tui/components/AuditBoard.js +3 -8
  35. package/dist/tui/components/AuditBoard.js.map +1 -1
  36. package/dist/tui/components/StageTimeline.d.ts.map +1 -1
  37. package/dist/tui/components/StageTimeline.js +5 -4
  38. package/dist/tui/components/StageTimeline.js.map +1 -1
  39. package/dist/tui/components/Status.d.ts +14 -0
  40. package/dist/tui/components/Status.d.ts.map +1 -0
  41. package/dist/tui/components/Status.js +33 -0
  42. package/dist/tui/components/Status.js.map +1 -0
  43. package/dist/tui/components/SubagentTree.d.ts.map +1 -1
  44. package/dist/tui/components/SubagentTree.js +4 -4
  45. package/dist/tui/components/SubagentTree.js.map +1 -1
  46. package/dist/tui/loadingMessages.d.ts +1 -3
  47. package/dist/tui/loadingMessages.d.ts.map +1 -1
  48. package/dist/tui/loadingMessages.js +3 -5
  49. package/dist/tui/loadingMessages.js.map +1 -1
  50. package/dist/tui/theme.d.ts +17 -3
  51. package/dist/tui/theme.d.ts.map +1 -1
  52. package/dist/tui/theme.js +27 -5
  53. package/dist/tui/theme.js.map +1 -1
  54. package/package.json +1 -1
  55. package/dist/agents/multiLensReview.d.ts +0 -49
  56. package/dist/agents/multiLensReview.d.ts.map +0 -1
  57. package/dist/agents/multiLensReview.js +0 -148
  58. package/dist/agents/multiLensReview.js.map +0 -1
  59. package/dist/automation/backlogGrooming.d.ts +0 -21
  60. package/dist/automation/backlogGrooming.d.ts.map +0 -1
  61. package/dist/automation/backlogGrooming.js +0 -80
  62. package/dist/automation/backlogGrooming.js.map +0 -1
  63. package/dist/automation/localCI.d.ts +0 -24
  64. package/dist/automation/localCI.d.ts.map +0 -1
  65. package/dist/automation/localCI.js +0 -84
  66. package/dist/automation/localCI.js.map +0 -1
  67. package/dist/support/chat.d.ts +0 -3
  68. package/dist/support/chat.d.ts.map +0 -1
  69. package/dist/support/chat.js +0 -313
  70. package/dist/support/chat.js.map +0 -1
  71. package/dist/support/chatTui.d.ts +0 -3
  72. package/dist/support/chatTui.d.ts.map +0 -1
  73. package/dist/support/chatTui.js +0 -1225
  74. package/dist/support/chatTui.js.map +0 -1
  75. package/dist/support/quotaTracker.d.ts +0 -29
  76. package/dist/support/quotaTracker.d.ts.map +0 -1
  77. package/dist/support/quotaTracker.js +0 -89
  78. package/dist/support/quotaTracker.js.map +0 -1
  79. package/dist/tui/components/StatusBar.d.ts +0 -7
  80. package/dist/tui/components/StatusBar.d.ts.map +0 -1
  81. package/dist/tui/components/StatusBar.js +0 -8
  82. package/dist/tui/components/StatusBar.js.map +0 -1
package/README.md CHANGED
@@ -77,8 +77,12 @@ openswarm review # Review the working-tree changes
77
77
  openswarm review --max # Full-codebase audit: fan reviewer subagents over areas
78
78
  # → report at .openswarm/audit/ + PM-synthesized Linear
79
79
  # issues by default (≤10 cohesive, master + sub-issues)
80
- # --no-linear (report only), --issues-per-area (legacy spray),
81
- # --issues <id> (set parent), --fallback <adapter>, --out <file>
80
+ openswarm review --max --fix # after the audit, a worker per flagged area applies the
81
+ # fixes in the working tree (review the diff, then commit)
82
+ openswarm review --max --concurrency 8 # widen the fan-out — areas auto-split to fill the pool
83
+ # more --max flags: --no-linear (report only) · --issues-per-area
84
+ # (legacy spray) · --issues <id> (set parent) · --fallback
85
+ # <adapter> · --out <file> · --dry-run (print the plan)
82
86
 
83
87
  # Code Registry & BS Detector
84
88
  openswarm check --scan # Scan repo → register all entities
@@ -272,6 +276,7 @@ openswarm dash # open the web dashboard (:3847)
272
276
  - **BS Detector** — Built-in static analysis engine that detects bad code patterns (empty catch, hardcoded secrets, `as any`, etc.) with pipeline guard integration
273
277
  - **Autonomous Pipeline** — Cron-driven heartbeat fetches Linear issues, runs Worker/Reviewer pair loops, and updates issue state automatically
274
278
  - **Worker/Reviewer Pairs** — Multi-iteration code generation with automated review, testing, and documentation stages
279
+ - **Codebase Audit (`review --max`)** — fans reviewer subagents out over directory-shaped areas (auto-split to fill `--concurrency`), aggregates a deduped verdict into a markdown report, and synthesizes ≤10 cohesive Linear issues via a PM agent. `--fix` sends a worker per flagged area to apply the fixes in the working tree. Language-agnostic; codex usage-limit aware with automatic `claude` fallback
275
280
  - **Decision Engine** — Scope validation, rate limiting, priority-based task selection, and workflow mapping
276
281
  - **Cognitive Memory** — LanceDB vector store with Xenova/multilingual-e5-base embeddings for long-term recall across sessions
277
282
  - **Repo Knowledge Loop** — workers learn each repository over time: task outcomes (success patterns, review-rejection pitfalls) are stored per-repo and recalled into the next worker prompt
@@ -498,65 +503,12 @@ the CLI (fire-and-forget with a short timeout, and failures are silently ignored
498
503
 
499
504
  ## Changelog
500
505
 
501
- ### v0.8.1
502
- - **License** — relicensed to **MIT** (was GPL-3.0)
503
- - **Docs** — README overhauled for first-time users (`openswarm init` walkthrough, accurate adapter registry, latest-build models) and contributor health files added (CONTRIBUTING, Code of Conduct, Security policy, PR template)
504
-
505
- ### v0.8.0
506
- - **Interactive `openswarm init` wizard** — Linear OAuth (PKCE) sign-in with arrow-key team/project picker, provider auto-detection, and a validated `config.yaml` (INT-1808)
507
- - **`openswarm doctor`** — one-shot environment diagnostics: Node version, native modules, provider CLIs, ports, and config discovery
508
- - **Linear OAuth login** — `openswarm auth login --provider linear` (PKCE, no API-key entry)
509
- - **CLI polish** — ASCII banner and colored output (NO_COLOR / non-TTY aware)
510
- - **Autonomy hardening** — dependency-order gating + Backlog parking (INT-1809), daemon self-modify guards (INT-1810), `jobProfiles` partial roles carried through to runtime (INT-1812), and an `init` symlink guard that refuses to overwrite the daemon's global config
511
- - **Fix** — codex adapter `--full-auto` → `--sandbox workspace-write` (codex 0.137 deprecation) (INT-1699)
512
-
513
- ### v0.5.0
514
- - **Native Codex Responses-API adapter** (`codex-responses`) — ChatGPT OAuth, no CLI binary required; live model discovery via the OAuth backend
515
- - **Linear-optional autonomy** — `ITaskSource` abstraction + local SQLite task source; the autonomous runner no longer requires Linear
516
- - **Notifier abstraction** — Discord / Slack / Telegram / webhook
517
- - **Agentic loop tools** — `web_fetch` + `web_search`
518
- - **Planner cockpit TUI** — `/plan` decompose → approve → dispatch
519
- - **Loop maturity (INT-1679)** — bad-edit guard + reflection self-repair loop
520
- - **Conflict-free concurrency (INT-1610)** — blocker/dependency ordering for parallel workers; worker instructions + actions logged to issue comments
521
-
522
- ### v0.4.0
523
- - **Benchmarks (L0–L6)** — difficulty rubric, model-routing benchmark, and a real SWE-bench harness
524
- - **Repo knowledge loop** — workers learn each repository across tasks (per-repo success patterns + review-rejection pitfalls recalled into prompts)
525
- - **OpenRouter agentic adapter** — native tool loop with harness hardening from SWE-bench findings
526
- - **LM Studio adapter** with auto model selection
527
- - **CLI** — `openswarm dash`, `--tree` / `--ci` flags for `check`
528
-
529
- ### v0.3.0
530
- - **Code Registry**: `openswarm check --scan` scans repo, registers 1000+ entities across 8 languages (TS, Python, Go, Rust, Java, C, C++, C#) with test mapping, complexity scoring, and risk assessment
531
- - **BS Detector**: `openswarm check --bs` — built-in static analysis for bad code patterns, pipeline guard integration
532
- - **Local Model Support**: Ollama, LMStudio, llama.cpp via single `local` adapter with auto-detection
533
- - **GPT Adapter**: OpenAI models via OAuth PKCE flow
534
- - **Local Issue Tracker**: SQLite + GraphQL + Kanban web UI at `:3847/issues`
535
- - **CLI**: `openswarm check`, `openswarm annotate` commands
536
-
537
- ### v0.2.2
538
- - `openswarm` without arguments now launches TUI chat directly
539
-
540
- ### v0.2.1
541
- - Security: patched lodash, picomatch, rollup, undici, yaml vulnerabilities
542
-
543
- ### v0.2.0
544
- - Published as `@intrect/openswarm` on npm
545
- - Extracted `@intrect/claude-driver` as standalone zero-dependency package
546
- - Autonomous runner hardening and multi-project orchestration
547
- - Task-state rehydration from Linear comments
548
- - `--verbose` flag for detailed execution logging
549
- - Codex adapter: dropped o-series model override
550
-
551
- ### v0.1.0
552
- - Initial release
553
- - Worker/Reviewer pair pipeline
554
- - Claude Code CLI + Codex CLI adapters
555
- - Discord bot control
556
- - Linear integration
557
- - LanceDB cognitive memory
558
- - Web dashboard (port 3847)
559
- - Rich TUI chat interface
506
+ Full version history lives in **[CHANGELOG.md](CHANGELOG.md)** and the
507
+ [GitHub Releases](https://github.com/unohee/OpenSwarm/releases) page.
508
+
509
+ Latest — **v0.11.0**: `review --max --fix` (a worker per flagged area applies the
510
+ audit fixes in the working tree) and concurrency-saturating area distribution
511
+ (areas auto-split to fill `--concurrency`). See CHANGELOG.md for the rest.
560
512
 
561
513
  ---
562
514
 
@@ -1 +1 @@
1
- {"version":3,"file":"pairPipeline.d.ts","sourceRoot":"","sources":["../../src/agents/pairPipeline.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oCAAoC,CAAC;AACnE,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC9E,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AAClE,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,oBAAoB,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AACpG,OAAO,EAAE,KAAK,QAAQ,EAA8B,MAAM,2BAA2B,CAAC;AAKtF,OAAO,EAAa,KAAK,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EACL,KAAK,eAAe,EAOrB,MAAM,iBAAiB,CAAC;AAiBzB,MAAM,WAAW,cAAc;IAC7B,gDAAgD;IAChD,MAAM,EAAE,aAAa,EAAE,CAAC;IACxB,0CAA0C;IAC1C,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B,oCAAoC;IACpC,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,oEAAoE;IACpE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB;;;;;OAKG;IACH,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,6BAA6B;IAC7B,KAAK,CAAC,EAAE;QACN,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,QAAQ,CAAC,EAAE,UAAU,CAAC;QACtB,MAAM,CAAC,EAAE,UAAU,CAAC;QACpB,UAAU,CAAC,EAAE,UAAU,CAAC;QACxB,OAAO,CAAC,EAAE,UAAU,CAAC;QACrB,kBAAkB,CAAC,EAAE,UAAU,CAAC;KACjC,CAAC;IACF,oCAAoC;IACpC,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,CAAC;IACvC,gDAAgD;IAChD,WAAW,CAAC,EAAE,UAAU,EAAE,CAAC;IAC3B,8EAA8E;IAC9E,wBAAwB,CAAC,EAAE,OAAO,CAAC;IACnC,8DAA8D;IAC9D,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,4EAA4E;IAC5E,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,2DAA2D;IAC3D,aAAa,CAAC,EAAE;QACd,QAAQ,EAAE,MAAM,CAAC;QACjB,aAAa,EAAE,MAAM,CAAC;QACtB,aAAa,EAAE,MAAM,EAAE,CAAC;QACxB,iBAAiB,EAAE,MAAM,CAAC;QAC1B,YAAY,CAAC,EAAE,MAAM,CAAC;QACtB,kBAAkB,CAAC,EAAE,MAAM,EAAE,CAAC;QAC9B,UAAU,CAAC,EAAE,OAAO,CAAC;QACrB,cAAc,CAAC,EAAE,OAAO,uBAAuB,EAAE,cAAc,CAAC;QAChE,gBAAgB,CAAC,EAAE,KAAK,CAAC;YAAE,QAAQ,EAAE,MAAM,CAAC;YAAC,OAAO,EAAE,MAAM,CAAC;YAAC,UAAU,EAAE,MAAM,EAAE,CAAA;SAAE,CAAC,CAAC;KACvF,CAAC;CACH;AAED,MAAM,WAAW,WAAW;IAC1B,KAAK,EAAE,aAAa,CAAC;IACrB,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,EAAE,YAAY,GAAG,YAAY,GAAG,YAAY,GAAG,gBAAgB,GAAG,aAAa,GAAG,qBAAqB,GAAG;QAAE,OAAO,EAAE,KAAK,CAAC;QAAC,KAAK,EAAE,MAAM,CAAA;KAAE,CAAC;IAClJ,QAAQ,EAAE,MAAM,CAAC;IACjB,kCAAkC;IAClC,SAAS,EAAE,MAAM,CAAC;IAClB,uCAAuC;IACvC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,cAAc;IAC7B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,EAAE,CAAC;IACtB,WAAW,EAAE,UAAU,GAAG,UAAU,GAAG,QAAQ,GAAG,WAAW,GAAG,YAAY,GAAG,cAAc,GAAG,aAAa,CAAC;IAC9G,qGAAqG;IACrG,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,aAAa,EAAE,MAAM,CAAC;IACtB,2CAA2C;IAC3C,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,mCAAmC;IACnC,WAAW,CAAC,EAAE;QACZ,eAAe,CAAC,EAAE,MAAM,CAAC;QACzB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,WAAW,CAAC,EAAE,MAAM,CAAC;QACrB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,gDAAgD;IAChD,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,mCAAmC;IACnC,SAAS,CAAC,EAAE,QAAQ,CAAC;CACtB;AAED,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,QAAQ,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,WAAW,CAAC;IACrB,MAAM,EAAE,cAAc,CAAC;IACvB,yCAAyC;IACzC,gBAAgB,EAAE,MAAM,CAAC;IACzB,oGAAoG;IACpG,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,YAAY,CAAC,EAAE,YAAY,CAAC;IAC5B,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IACpC,aAAa,CAAC,EAAE,aAAa,CAAC;IAC9B,qBAAqB,CAAC,EAAE,qBAAqB,CAAC;IAC9C,YAAY,CAAC,EAAE,eAAe,CAAC;IAC/B,6EAA6E;IAC7E,UAAU,EAAE,eAAe,CAAC;IAC5B;;;;;OAKG;IACH,cAAc,CAAC,EAAE,WAAW,GAAG,QAAQ,CAAC;CACzC;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,GAAG,MAAM,CAe3E;AAID,MAAM,MAAM,iBAAiB,GACzB,aAAa,GACb,gBAAgB,GAChB,YAAY,GACZ,iBAAiB,GACjB,oBAAoB,GACpB,gBAAgB,GAChB,mBAAmB,GACnB,eAAe,GACf,MAAM,CAAC;AAIX,qFAAqF;AACrF,qBAAa,sBAAuB,SAAQ,KAAK;;CAKhD;AAED,qBAAa,YAAa,SAAQ,YAAY;IAC5C,OAAO,CAAC,MAAM,CAAiB;IAC/B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,WAAW,CAAe;IAClC,sFAAsF;IACtF,OAAO,CAAC,WAAW,CAAC,CAAc;IAElC,kFAAkF;IAClF,OAAO,CAAC,cAAc;gBAIV,MAAM,EAAE,cAAc;IAiBlC,OAAO,CAAC,cAAc;IAQtB,OAAO,CAAC,iBAAiB;IAKzB,OAAO,CAAC,eAAe;IAKvB,gFAAgF;IAChF,OAAO,CAAC,gBAAgB;IAQxB;;;;;OAKG;IACG,GAAG,CAAC,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,WAAW,CAAA;KAAE,GAAG,OAAO,CAAC,cAAc,CAAC;IA4IxG;;;OAGG;YACW,oBAAoB;IAuGlC;;OAEG;IACH,OAAO,CAAC,QAAQ;IAIhB;;OAEG;YACW,QAAQ;IA2StB;;OAEG;IACH,OAAO,CAAC,cAAc;IA4BtB;;;;;;OAMG;IACH,OAAO,CAAC,qBAAqB;IA4B7B;;;;;;OAMG;YACW,oBAAoB;IA2TlC;;OAEG;IACH,OAAO,CAAC,WAAW;CAyDpB;AAID;;GAEG;AACH,wBAAgB,qBAAqB,CAAC,aAAa,SAAI,GAAG,YAAY,CAKrE;AAED;;GAEG;AACH,wBAAgB,kBAAkB,CAChC,MAAM,CAAC,EAAE,OAAO,CAAC,cAAc,CAAC,GAC/B,YAAY,CAQd;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,KAAK,EAAE,cAAc,CAAC,OAAO,CAAC,EAC9B,aAAa,SAAI,EACjB,MAAM,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAC,EACtC,WAAW,CAAC,EAAE,UAAU,EAAE,EAC1B,aAAa,CAAC,EAAE,cAAc,CAAC,eAAe,CAAC,EAC/C,cAAc,CAAC,EAAE,MAAM,GACtB,YAAY,CA+Bd;AAsGD,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,qBAAqB,CAAC"}
1
+ {"version":3,"file":"pairPipeline.d.ts","sourceRoot":"","sources":["../../src/agents/pairPipeline.ts"],"names":[],"mappings":"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"}
@@ -459,8 +459,7 @@ export class PairPipeline extends EventEmitter {
459
459
  // scaffolded task was getting LESS review — exactly the wrong incentive. The
460
460
  // completion-criteria hard gate is the real check now.
461
461
  const reviewerMaxTurns = this.config.roles?.reviewer?.maxTurns;
462
- console.log(`[${prefix}] Running full review...`);
463
- result = await reviewerAgent.runReviewer({
462
+ const reviewerOptions = {
464
463
  taskTitle: context.task.title,
465
464
  taskDescription: context.task.description || '',
466
465
  workerResult: context.workerResult,
@@ -474,7 +473,9 @@ export class PairPipeline extends EventEmitter {
474
473
  completionCriteria: this.config.draftAnalysis?.completionCriteria,
475
474
  processContext: { taskId: context.task.id, stage: 'reviewer' },
476
475
  signal: this.abortSignal,
477
- });
476
+ };
477
+ console.log(`[${prefix}] Running full review...`);
478
+ result = await reviewerAgent.runReviewer(reviewerOptions);
478
479
  agentPair.saveReviewerResult(context.session.id, result);
479
480
  context.reviewResult = result;
480
481
  // Verbose: emit reviewer decision details
@@ -1 +1 @@
1
- {"version":3,"file":"pairPipeline.js","sourceRoot":"","sources":["../../src/agents/pairPipeline.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"pairPipeline.js","sourceRoot":"","sources":["../../src/agents/pairPipeline.ts"],"names":[],"mappings":"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"}
@@ -57,6 +57,17 @@ export declare function listSourceFiles(cwd: string): string[];
57
57
  * deterministic (dirs and files sorted). (INT-2006)
58
58
  */
59
59
  export declare function partitionIntoAreas(files: string[], maxFilesPerArea?: number): AuditArea[];
60
+ /**
61
+ * Partition, then shrink the per-area cap until the fan-out can saturate the
62
+ * reviewer pool. The plain directory partition can yield far fewer areas than
63
+ * `concurrency` (e.g. two dirs, concurrency 8 → 2 subagents, 6 idle), so when
64
+ * we're under the pool size we re-partition with a smaller cap — more, smaller
65
+ * areas finish sooner in parallel. Monotonic (smaller cap ⇒ ≥ areas), so it
66
+ * converges; it stops as soon as areas ≥ concurrency or the cap bottoms out at
67
+ * one file per area. No-op when the directory partition already fills the pool.
68
+ * (INT-2249)
69
+ */
70
+ export declare function balanceAreasToConcurrency(files: string[], concurrency: number, maxFilesPerArea?: number): AuditArea[];
60
71
  /**
61
72
  * Roll N per-area results into one verdict + merged issues/actions. The worst
62
73
  * decision wins (reject > revise > approve); errored areas are counted but don't
@@ -68,7 +79,11 @@ export declare function aggregateAuditResults(results: AuditAreaResult[]): Audit
68
79
  * (no Date.now() inside) so it's deterministic and testable. (INT-2022)
69
80
  */
70
81
  export declare function formatAuditReport(summary: AuditSummary, repoName: string, timestamp: string): string;
71
- /** Render the aggregate audit verdict for the terminal. Pure. */
82
+ /**
83
+ * Render the aggregate audit verdict for the terminal. Glyphs + colors come from
84
+ * the shared status vocabulary (support/colors `status`), matching the AuditBoard
85
+ * — color is a no-op under NO_COLOR / non-TTY so the text stays clean. (INT-2260)
86
+ */
72
87
  export declare function formatAuditSummary(summary: AuditSummary): string;
73
88
  /** Live fan-out progress events — consumed by the ink board (or any listener). */
74
89
  export type AuditProgress = {
@@ -127,4 +142,60 @@ export declare function runMaxReview(areas: AuditArea[], cwd: string, opts: RunM
127
142
  * fallback's own rateLimit (e.g. claude also exhausted) carries forward. (INT-2192)
128
143
  */
129
144
  export declare function mergeFallback(primary: AuditRun, fallback: AuditRun): AuditRun;
145
+ /** Outcome of applying a reviewer's findings to one area. */
146
+ export interface FixAreaResult {
147
+ label: string;
148
+ /** true when the worker ran and reported success. */
149
+ applied: boolean;
150
+ filesChanged: string[];
151
+ error?: string;
152
+ }
153
+ /** Live fix-pass progress — mirrors AuditProgress for the same board/logging. */
154
+ export type FixProgress = {
155
+ type: 'start';
156
+ label: string;
157
+ done: number;
158
+ total: number;
159
+ } | {
160
+ type: 'log';
161
+ label: string;
162
+ line: string;
163
+ } | {
164
+ type: 'done';
165
+ label: string;
166
+ filesChanged: number;
167
+ done: number;
168
+ total: number;
169
+ } | {
170
+ type: 'error';
171
+ label: string;
172
+ error: string;
173
+ done: number;
174
+ total: number;
175
+ };
176
+ export interface RunAreaFixesOptions {
177
+ concurrency: number;
178
+ adapter?: AdapterName;
179
+ timeoutMs?: number;
180
+ signal?: AbortSignal;
181
+ }
182
+ export interface RunAreaFixesDeps {
183
+ /** Apply one area's fixes → worker result. Default spawns a real worker. Injectable for tests. */
184
+ fix?: (area: AuditArea, review: ReviewResult, onLog: (line: string) => void) => Promise<{
185
+ success: boolean;
186
+ filesChanged: string[];
187
+ }>;
188
+ onProgress?: (e: FixProgress) => void;
189
+ }
190
+ /** Only areas the reviewer did not approve are worth a fix pass. */
191
+ export declare function fixTargets(run: AuditRun): AuditAreaResult[];
192
+ /** Turn one area's reviewer verdict into a worker task that applies the fixes. */
193
+ export declare function buildFixTaskDescription(area: AuditArea, review: ReviewResult): string;
194
+ /**
195
+ * Apply reviewer-recommended fixes for every non-approve area, fanned out with
196
+ * the same concurrency cap as the review. Edits land in the working tree — no
197
+ * commit, no re-review — so the user reviews the diff before committing. Never
198
+ * throws on a single area: a failed fix lands as an error in its result. (INT-2249)
199
+ */
200
+ export declare function runAreaFixes(run: AuditRun, cwd: string, opts: RunAreaFixesOptions, deps?: RunAreaFixesDeps): Promise<FixAreaResult[]>;
130
201
  //# sourceMappingURL=reviewAudit.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"reviewAudit.d.ts","sourceRoot":"","sources":["../../src/cli/reviewAudit.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"reviewAudit.d.ts","sourceRoot":"","sources":["../../src/cli/reviewAudit.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAAE,YAAY,EAAE,iBAAiB,EAAE,MAAM,wBAAwB,CAAC;AAC9E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAExD,OAAO,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAC;AAgC/D,iFAAiF;AACjF,MAAM,WAAW,SAAS;IACxB,gEAAgE;IAChE,KAAK,EAAE,MAAM,CAAC;IACd,sDAAsD;IACtD,GAAG,EAAE,MAAM,CAAC;IACZ,yDAAyD;IACzD,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB;AAED,mFAAmF;AACnF,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,SAAS,CAAC;IAChB,MAAM,CAAC,EAAE,YAAY,CAAC;IACtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,GAAG,OAAO,CAAC;IAC7C,UAAU,EAAE,MAAM,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,YAAY;IAC3B,+FAA+F;IAC/F,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IACnC,UAAU,EAAE,MAAM,CAAC;IACnB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,gBAAgB,EAAE,CAAC;IAC1B,qDAAqD;IACrD,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,wEAAwE;IACxE,kBAAkB,EAAE,iBAAiB,EAAE,CAAC;CACzC;AAED,uDAAuD;AACvD,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAQ3D;AAED;;;;;GAKG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAGvD;AAED;;;;GAIG;AACH,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE,CAIrD;AAED;;;;;GAKG;AACH,wBAAgB,kBAAkB,CAAC,KAAK,EAAE,MAAM,EAAE,EAAE,eAAe,SAAK,GAAG,SAAS,EAAE,CAsBrF;AAED;;;;;;;;;GASG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,MAAM,EAAE,EACf,WAAW,EAAE,MAAM,EACnB,eAAe,SAAK,GACnB,SAAS,EAAE,CAOb;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,eAAe,EAAE,GAAG,YAAY,CA2D9E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAoDpG;AAED;;;;GAIG;AACH,wBAAgB,kBAAkB,CAAC,OAAO,EAAE,YAAY,GAAG,MAAM,CAkChE;AAID,kFAAkF;AAClF,MAAM,MAAM,aAAa,GACrB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,EAAE,YAAY,CAAC,UAAU,CAAC,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAChG;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF,MAAM,WAAW,mBAAmB;IAClC,gDAAgD;IAChD,WAAW,EAAE,MAAM,CAAC;IACpB,0CAA0C;IAC1C,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,qEAAqE;IACrE,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,gGAAgG;IAChG,MAAM,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC,YAAY,CAAC,CAAC;IACnF,0CAA0C;IAC1C,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,aAAa,KAAK,IAAI,CAAC;CACzC;AAED,yFAAyF;AACzF,MAAM,WAAW,QAAQ;IACvB,OAAO,EAAE,YAAY,CAAC;IACtB,OAAO,EAAE,eAAe,EAAE,CAAC;IAC3B,+FAA+F;IAC/F,SAAS,CAAC,EAAE,cAAc,CAAC;CAC5B;AAyBD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,KAAK,EAAE,SAAS,EAAE,EAClB,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,mBAAmB,EACzB,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,QAAQ,CAAC,CAqCnB;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAE,QAAQ,GAAG,QAAQ,CAI7E;AAID,6DAA6D;AAC7D,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,qDAAqD;IACrD,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,iFAAiF;AACjF,MAAM,MAAM,WAAW,GACnB;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAC7D;IAAE,IAAI,EAAE,KAAK,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,GAC5C;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,GAClF;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC;AAEjF,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,MAAM,CAAC,EAAE,WAAW,CAAC;CACtB;AAED,MAAM,WAAW,gBAAgB;IAC/B,kGAAkG;IAClG,GAAG,CAAC,EAAE,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,EAAE,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,KAAK,OAAO,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,YAAY,EAAE,MAAM,EAAE,CAAA;KAAE,CAAC,CAAC;IACtI,UAAU,CAAC,EAAE,CAAC,CAAC,EAAE,WAAW,KAAK,IAAI,CAAC;CACvC;AAED,oEAAoE;AACpE,wBAAgB,UAAU,CAAC,GAAG,EAAE,QAAQ,GAAG,eAAe,EAAE,CAK3D;AAED,kFAAkF;AAClF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,YAAY,GAAG,MAAM,CAkBrF;AAwBD;;;;;GAKG;AACH,wBAAsB,YAAY,CAChC,GAAG,EAAE,QAAQ,EACb,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,mBAAmB,EACzB,IAAI,GAAE,gBAAqB,GAC1B,OAAO,CAAC,aAAa,EAAE,CAAC,CA0B1B"}
@@ -11,14 +11,35 @@ import { execFileSync } from 'node:child_process';
11
11
  import { dirname } from 'node:path';
12
12
  import { runPool } from '../support/concurrencyPool.js';
13
13
  import { RateLimitError } from '../adapters/rateLimitError.js';
14
+ import { c, status } from '../support/colors.js';
14
15
  // Source extensions and test patterns mirror src/knowledge/scanner.ts. Kept
15
16
  // local (not imported) because those are unexported module consts; the audit
16
17
  // only needs the stable subset and drift here is low-risk.
17
- const SOURCE_EXTENSIONS = new Set(['.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs', '.py', '.pyw']);
18
- const TEST_PATTERNS = [/\.test\.[tj]sx?$/, /\.spec\.[tj]sx?$/, /_test\.py$/, /test_.*\.py$/, /\.test\.py$/];
18
+ // Language-agnostic: the reviewer is an LLM, so collect source across languages.
19
+ // Data/config/docs (.json/.toml/.yaml/.md/…) are intentionally NOT source.
20
+ const SOURCE_EXTENSIONS = new Set([
21
+ '.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs', // JS/TS
22
+ '.py', '.pyw', // Python
23
+ '.rs', '.go', // Rust / Go
24
+ '.java', '.kt', '.kts', '.scala', '.groovy', // JVM
25
+ '.c', '.cc', '.cpp', '.cxx', '.h', '.hpp', '.hxx', '.cs', // C / C++ / C#
26
+ '.rb', '.php', '.swift', '.m', '.mm', // Ruby / PHP / Swift / Obj-C
27
+ '.ex', '.exs', '.clj', '.cljs', '.ml', '.mli', '.hs', '.dart', '.lua', '.jl', '.zig', '.nim', // others
28
+ ]);
29
+ const TEST_PATTERNS = [
30
+ /\.test\.[tj]sx?$/, /\.spec\.[tj]sx?$/, // JS/TS
31
+ /_test\.py$/, /test_.*\.py$/, /\.test\.py$/, // Python
32
+ /_test\.go$/, // Go
33
+ /Tests?\.java$/, /Tests?\.kt$/, // JVM
34
+ /_spec\.rb$/, /_test\.rb$/, // Ruby
35
+ // Rust uses inline #[cfg(test)] — no file-level test split; reviewer sees it inline.
36
+ ];
19
37
  // Belt-and-suspenders: git ls-files already honors .gitignore, but tracked
20
38
  // junk dirs (snapshots, coverage) shouldn't be audited as if they were source.
21
- const SKIP_DIR_SEGMENTS = new Set(['node_modules', 'dist', 'build', 'trash', '.openswarm', 'htmlcov', 'coverage', 'vendor']);
39
+ const SKIP_DIR_SEGMENTS = new Set([
40
+ 'node_modules', 'dist', 'build', 'trash', '.openswarm', 'htmlcov', 'coverage', 'vendor',
41
+ 'target', '__pycache__', 'bin', 'obj', // Rust/JVM build, Python cache, .NET output
42
+ ]);
22
43
  /** Drop non-source, test, and junk-dir files. Pure. */
23
44
  export function filterSourceFiles(files) {
24
45
  return files.filter((f) => {
@@ -80,6 +101,25 @@ export function partitionIntoAreas(files, maxFilesPerArea = 12) {
80
101
  }
81
102
  return areas;
82
103
  }
104
+ /**
105
+ * Partition, then shrink the per-area cap until the fan-out can saturate the
106
+ * reviewer pool. The plain directory partition can yield far fewer areas than
107
+ * `concurrency` (e.g. two dirs, concurrency 8 → 2 subagents, 6 idle), so when
108
+ * we're under the pool size we re-partition with a smaller cap — more, smaller
109
+ * areas finish sooner in parallel. Monotonic (smaller cap ⇒ ≥ areas), so it
110
+ * converges; it stops as soon as areas ≥ concurrency or the cap bottoms out at
111
+ * one file per area. No-op when the directory partition already fills the pool.
112
+ * (INT-2249)
113
+ */
114
+ export function balanceAreasToConcurrency(files, concurrency, maxFilesPerArea = 12) {
115
+ let areas = partitionIntoAreas(files, maxFilesPerArea);
116
+ if (concurrency <= 1)
117
+ return areas;
118
+ for (let cap = maxFilesPerArea - 1; areas.length < concurrency && cap >= 1; cap--) {
119
+ areas = partitionIntoAreas(files, cap);
120
+ }
121
+ return areas;
122
+ }
83
123
  /**
84
124
  * Roll N per-area results into one verdict + merged issues/actions. The worst
85
125
  * decision wins (reject > revise > approve); errored areas are counted but don't
@@ -190,16 +230,22 @@ export function formatAuditReport(summary, repoName, timestamp) {
190
230
  }
191
231
  return lines.join('\n');
192
232
  }
193
- /** Render the aggregate audit verdict for the terminal. Pure. */
233
+ /**
234
+ * Render the aggregate audit verdict for the terminal. Glyphs + colors come from
235
+ * the shared status vocabulary (support/colors `status`), matching the AuditBoard
236
+ * — color is a no-op under NO_COLOR / non-TTY so the text stays clean. (INT-2260)
237
+ */
194
238
  export function formatAuditSummary(summary) {
195
- const mark = (d) => d === 'approve' ? '✓' : d === 'revise' ? '✎' : d === 'reject' ? '✗' : '⚠';
239
+ // decision shared status glyph (colored): approve ✓, revise ✎, reject ✗, error ⚠.
240
+ const mark = (d) => d === 'approve' ? status.glyph('ok') : d === 'revise' ? status.glyph('revise') : d === 'reject' ? status.glyph('err') : status.glyph('warn');
196
241
  const lines = [];
197
242
  const approved = summary.areas.filter((a) => a.decision === 'approve').length;
198
243
  const revised = summary.areas.filter((a) => a.decision === 'revise').length;
199
244
  const rejected = summary.areas.filter((a) => a.decision === 'reject').length;
200
- lines.push(`Codebase audit — ${summary.totalAreas} area(s): ${approved} ✓, ${revised} revise, ${rejected} reject` +
245
+ lines.push(`Codebase audit — ${summary.totalAreas} area(s): ${approved} ${status.glyph('ok')}, ${revised} ${status.glyph('revise')} revise, ${rejected} ${status.glyph('err')} reject` +
201
246
  (summary.failed ? ` [${summary.failed} failed]` : ''));
202
- lines.push(`Verdict: ${summary.decision.toUpperCase()}`);
247
+ const verdictPaint = summary.decision === 'reject' ? c.red : summary.decision === 'revise' ? c.yellow : c.green;
248
+ lines.push(verdictPaint(`Verdict: ${summary.decision.toUpperCase()}`));
203
249
  lines.push('');
204
250
  for (const a of summary.areas) {
205
251
  const counts = a.decision === 'error' ? '(subagent failed)' : `${a.issueCount} issue(s), ${a.actionCount} follow-up(s)`;
@@ -280,4 +326,70 @@ export function mergeFallback(primary, fallback) {
280
326
  const results = primary.results.map((r) => (r.error && fb.has(r.area.label) ? fb.get(r.area.label) : r));
281
327
  return { summary: aggregateAuditResults(results), results, rateLimit: fallback.rateLimit };
282
328
  }
329
+ /** Only areas the reviewer did not approve are worth a fix pass. */
330
+ export function fixTargets(run) {
331
+ return run.results.filter((r) => !!r.review && r.review.decision !== 'approve');
332
+ }
333
+ /** Turn one area's reviewer verdict into a worker task that applies the fixes. */
334
+ export function buildFixTaskDescription(area, review) {
335
+ const issues = (review.issues ?? []).map((i) => `- ${i}`);
336
+ const actions = (review.recommendedActions ?? []).map((a) => `- [${a.type}] ${a.title}${a.location ? ` (${a.location})` : ''}`);
337
+ return [
338
+ `A code review of ${area.label} found issues. Apply the MINIMAL edits needed to resolve them.`,
339
+ '',
340
+ `Files in scope (edit only these — do not touch files outside ${area.dir}):`,
341
+ ...area.files.map((f) => `- ${f}`),
342
+ '',
343
+ issues.length ? `Issues to fix:\n${issues.join('\n')}` : '',
344
+ actions.length ? `\nRecommended actions:\n${actions.join('\n')}` : '',
345
+ '',
346
+ 'Do not refactor beyond the fixes. Do not add features. Keep changes tight and verifiable.',
347
+ ]
348
+ .filter((l) => l !== '')
349
+ .join('\n');
350
+ }
351
+ /** Default fix applier: spawn a worker subagent that edits the area in place. */
352
+ async function defaultFixArea(area, review, cwd, opts, onLog) {
353
+ const { runWorker } = await import('../agents/worker.js');
354
+ const result = await runWorker({
355
+ taskTitle: `Apply review fixes: ${area.label}`,
356
+ taskDescription: buildFixTaskDescription(area, review),
357
+ projectPath: cwd,
358
+ adapterName: opts.adapter,
359
+ timeoutMs: opts.timeoutMs,
360
+ nudgeMaxOnNoEdit: 1,
361
+ signal: opts.signal,
362
+ onLog,
363
+ });
364
+ return { success: result.success, filesChanged: result.filesChanged };
365
+ }
366
+ /**
367
+ * Apply reviewer-recommended fixes for every non-approve area, fanned out with
368
+ * the same concurrency cap as the review. Edits land in the working tree — no
369
+ * commit, no re-review — so the user reviews the diff before committing. Never
370
+ * throws on a single area: a failed fix lands as an error in its result. (INT-2249)
371
+ */
372
+ export async function runAreaFixes(run, cwd, opts, deps = {}) {
373
+ const fix = deps.fix ?? ((area, review, onLog) => defaultFixArea(area, review, cwd, opts, onLog));
374
+ const targets = fixTargets(run);
375
+ const total = targets.length;
376
+ let done = 0;
377
+ const settled = await runPool(targets, opts.concurrency, async (t) => {
378
+ deps.onProgress?.({ type: 'start', label: t.area.label, done, total });
379
+ return fix(t.area, t.review, (line) => deps.onProgress?.({ type: 'log', label: t.area.label, line }));
380
+ }, (s) => {
381
+ done++;
382
+ const label = targets[s.index].area.label;
383
+ if (s.error)
384
+ deps.onProgress?.({ type: 'error', label, error: String(s.error), done, total });
385
+ else if (s.value)
386
+ deps.onProgress?.({ type: 'done', label, filesChanged: s.value.filesChanged.length, done, total });
387
+ });
388
+ return settled.map((s, i) => {
389
+ const label = targets[i].area.label;
390
+ if (s.error || !s.value)
391
+ return { label, applied: false, filesChanged: [], error: s.error ? String(s.error) : 'no result' };
392
+ return { label, applied: s.value.success, filesChanged: s.value.filesChanged };
393
+ });
394
+ }
283
395
  //# sourceMappingURL=reviewAudit.js.map