poly-weaver 0.4.1 → 0.4.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAQjE,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAEjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAOjD,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,eAAe,EAGrB,MAAM,iBAAiB,CAAC;AAEzB,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,QAAQ,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,iEAAiE;IACjE,cAAc,CAAC,EAAE;QACf,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,aAAa,CAAC;KACzB,CAAC;CACH;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CActE;AAED,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACpC,WAAW,SAAI,GACd,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB5E;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpE;AAcD,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAmCzF;AAID,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,eAAe,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,YAAY,EACnB,eAAe,CAAC,EAAE,MAAM,IAAI,GAC3B,iBAAiB,CAEnB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA+G7B"}
1
+ {"version":3,"file":"orchestrator.d.ts","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAQjE,OAAO,EAAyC,KAAK,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AACjG,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AACrD,OAAO,EAAuB,KAAK,YAAY,EAAE,MAAM,yBAAyB,CAAC;AAGjF,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAOjD,OAAO,EAKL,KAAK,YAAY,EACjB,KAAK,eAAe,EAGrB,MAAM,iBAAiB,CAAC;AAEzB,qBAAa,oBAAqB,SAAQ,KAAK;gBACjC,OAAO,EAAE,MAAM;CAI5B;AAED,qBAAa,qBAAsB,SAAQ,KAAK;gBAClC,OAAO,EAAE,MAAM;CAI5B;AAED,MAAM,WAAW,kBAAkB;IACjC,2BAA2B;IAC3B,IAAI,EAAE,MAAM,CAAC;IACb,oCAAoC;IACpC,UAAU,EAAE,MAAM,CAAC;IACnB,uFAAuF;IACvF,QAAQ,EAAE,OAAO,CAAC;IAClB,qCAAqC;IACrC,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,iEAAiE;IACjE,cAAc,CAAC,EAAE;QACf,QAAQ,EAAE,OAAO,CAAC;QAClB,UAAU,EAAE,MAAM,CAAC;QACnB,OAAO,CAAC,EAAE,aAAa,CAAC;KACzB,CAAC;CACH;AAED;;;GAGG;AACH,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CActE;AAED,wBAAsB,mBAAmB,CAAC,CAAC,EACzC,SAAS,EAAE,MAAM,EACjB,GAAG,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,OAAO,CAAC,CAAC,CAAC,EACpC,WAAW,SAAI,GACd,OAAO,CAAC,CAAC,CAAC,CAoBZ;AAED,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7D;AAED,wBAAsB,oBAAoB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAkB5E;AAED,wBAAsB,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAMpE;AAcD,wBAAsB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAmCzF;AAID,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,EAAE,YAAY,CAAC;IACvB,WAAW,EAAE,eAAe,CAAC;IAC7B,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,WAAW,CAAC,EAAE,WAAW,CAAC;CAC3B;AAED,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,OAAO,EACb,KAAK,EAAE,YAAY,EACnB,eAAe,CAAC,EAAE,MAAM,IAAI,GAC3B,iBAAiB,CAEnB;AAED;;;GAGG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,2BAA2B,GAChC,OAAO,CAAC,kBAAkB,CAAC,CA6H7B"}
@@ -6,6 +6,7 @@ import { readFile, writeFile, unlink } from "node:fs/promises";
6
6
  import { join } from "node:path";
7
7
  import { AutoUserPrompt, InteractiveUserPrompt } from "./user/prompt.js";
8
8
  import { computeFeatureGates } from "./providers/registry.js";
9
+ import { computePreflightNeeds, ensureProviderVersions } from "./preflight.js";
9
10
  import { UserRoleHandler } from "./user/handler.js";
10
11
  import { dim, reset, cyan } from "./ansi.js";
11
12
  import { MapArtifactStore } from "./flow/artifacts.js";
@@ -134,6 +135,19 @@ export function createUserPromptHandler(auto, gates, onDumpRequested) {
134
135
  * drivers dynamically; structure params shape the flow via build().
135
136
  */
136
137
  export async function orchestrateWithTemplate(opts) {
138
+ // Detect provider CLI versions before computing feature gates. Idempotent
139
+ // when cli.ts already ran preflight; required when programmatic callers
140
+ // (tests, embedders) skip preflight, since `nativePlanFile` and the
141
+ // plan-mode prompt prefix are version-gated on Claude.
142
+ await ensureProviderVersions(computePreflightNeeds({
143
+ planner: String(opts.paramValues.planner),
144
+ reviewer: String(opts.paramValues.reviewer),
145
+ implementor: String(opts.paramValues.implementor),
146
+ simplifier: opts.paramValues.simplifier
147
+ ? String(opts.paramValues.simplifier)
148
+ : undefined,
149
+ planOnly: !!opts.paramValues.planOnly,
150
+ }));
137
151
  const gates = computeFeatureGates(String(opts.paramValues.planner));
138
152
  const onDumpRequested = opts.dumpService
139
153
  ? () => { void opts.dumpService.trigger(); }
@@ -1 +1 @@
1
- {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"orchestrator.js","sourceRoot":"","sources":["../src/orchestrator.ts"],"names":[],"mappings":"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"}
@@ -27,4 +27,15 @@ export declare function runPreflight(opts: {
27
27
  needCodex: boolean;
28
28
  needCopilot: boolean;
29
29
  }): Promise<PreflightResult>;
30
+ /**
31
+ * Ensure all needed provider strategies have their `version` populated.
32
+ *
33
+ * Idempotent: skips strategies whose `version` is already set, and reports
34
+ * no errors for missing CLIs. The orchestrator calls this on entry so that
35
+ * `computeFeatureGates`/`PlanModeConfig` reflect the installed CLI even
36
+ * when the caller bypasses `cli.ts` (tests, embedders). Strict
37
+ * "CLI must be installed" enforcement remains in `runPreflight` —
38
+ * that's still owned by `cli.ts`.
39
+ */
40
+ export declare function ensureProviderVersions(needs: PreflightNeeds): Promise<void>;
30
41
  //# sourceMappingURL=preflight.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../src/preflight.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,cAAc,CAkBjB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,GAAG,OAAO,CAAC,eAAe,CAAC,CAoE3B"}
1
+ {"version":3,"file":"preflight.d.ts","sourceRoot":"","sources":["../src/preflight.ts"],"names":[],"mappings":"AAQA,MAAM,WAAW,cAAc;IAC7B,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,IAAI,EAAE;IAC1C,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,GAAG,cAAc,CAkBjB;AAED,MAAM,WAAW,eAAe;IAC9B,EAAE,EAAE,OAAO,CAAC;IACZ,MAAM,EAAE,MAAM,EAAE,CAAC;IACjB,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;CAC/B;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,IAAI,EAAE;IACvC,UAAU,EAAE,OAAO,CAAC;IACpB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;CACtB,GAAG,OAAO,CAAC,eAAe,CAAC,CAoE3B;AAED;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAAC,KAAK,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAUjF"}
package/dist/preflight.js CHANGED
@@ -1,6 +1,7 @@
1
1
  import { exec, execFile } from "node:child_process";
2
2
  import { promisify } from "node:util";
3
3
  import { parseVersion } from "./providers/version.js";
4
+ import { builtinStrategies, setProviderVersions } from "./providers/registry.js";
4
5
  const execAsync = promisify(exec);
5
6
  const execFileAsync = promisify(execFile);
6
7
  /**
@@ -78,6 +79,28 @@ export async function runPreflight(opts) {
78
79
  versions,
79
80
  };
80
81
  }
82
+ /**
83
+ * Ensure all needed provider strategies have their `version` populated.
84
+ *
85
+ * Idempotent: skips strategies whose `version` is already set, and reports
86
+ * no errors for missing CLIs. The orchestrator calls this on entry so that
87
+ * `computeFeatureGates`/`PlanModeConfig` reflect the installed CLI even
88
+ * when the caller bypasses `cli.ts` (tests, embedders). Strict
89
+ * "CLI must be installed" enforcement remains in `runPreflight` —
90
+ * that's still owned by `cli.ts`.
91
+ */
92
+ export async function ensureProviderVersions(needs) {
93
+ const strategies = builtinStrategies();
94
+ const missing = {
95
+ needClaude: needs.needClaude && !strategies.get("claude")?.version,
96
+ needCodex: needs.needCodex && !strategies.get("codex")?.version,
97
+ needCopilot: needs.needCopilot && !strategies.get("copilot")?.version,
98
+ };
99
+ if (!missing.needClaude && !missing.needCodex && !missing.needCopilot)
100
+ return;
101
+ const { versions } = await runPreflight(missing);
102
+ setProviderVersions(versions);
103
+ }
81
104
  /**
82
105
  * Run `<command> --version`, capture stdout, and parse the version string.
83
106
  * Returns the parsed version string, undefined if CLI ran but version couldn't
@@ -1 +1 @@
1
- {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../src/preflight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAE,SAAS,EAAE,MAAM,WAAW,CAAC;AACtC,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAClC,MAAM,aAAa,GAAG,SAAS,CAAC,QAAQ,CAAC,CAAC;AAQ1C;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,IAMrC;IACC,OAAO;QACL,UAAU,EACR,IAAI,CAAC,OAAO,KAAK,QAAQ;YACzB,IAAI,CAAC,QAAQ,KAAK,QAAQ;YAC1B,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,QAAQ,CAAC;YACjD,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,QAAQ,CAAC;QAClD,SAAS,EACP,IAAI,CAAC,OAAO,KAAK,OAAO;YACxB,IAAI,CAAC,QAAQ,KAAK,OAAO;YACzB,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,OAAO,CAAC;YAChD,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,OAAO,CAAC;QACjD,WAAW,EACT,IAAI,CAAC,OAAO,KAAK,SAAS;YAC1B,IAAI,CAAC,QAAQ,KAAK,SAAS;YAC3B,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,CAAC;YAClD,CAAC,CAAC,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,CAAC;KACpD,CAAC;AACJ,CAAC;AAQD;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CAAC,IAIlC;IACC,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,MAAM,QAAQ,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE3C,6BAA6B;IAC7B,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,UAAU,CAAC,CAAC;IAC3B,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,CAAC,IAAI,CACT,mEAAmE;YACjE,wBAAwB,CAC3B,CAAC;IACJ,CAAC;IAED,MAAM,MAAM,GAAoB,EAAE,CAAC;IAEnC,IAAI,IAAI,CAAC,UAAU,EAAE,CAAC;QACpB,MAAM,CAAC,IAAI,CACT,gBAAgB,CAAC,QAAQ,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACzD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CACT,0CAA0C;oBACxC,4CAA4C,CAC/C,CAAC;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC;YAClC,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;QACnB,MAAM,CAAC,IAAI,CACT,gBAAgB,CAAC,OAAO,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YACxD,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CACT,oCAAoC;oBAClC,gCAAgC,CACnC,CAAC;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YACjC,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,IAAI,IAAI,CAAC,WAAW,EAAE,CAAC;QACrB,MAAM,CAAC,IAAI,CACT,gBAAgB,CAAC,SAAS,EAAE,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE;YAC1D,IAAI,OAAO,KAAK,KAAK,EAAE,CAAC;gBACtB,MAAM,CAAC,IAAI,CACT,6CAA6C;oBAC3C,oCAAoC,CACvC,CAAC;YACJ,CAAC;iBAAM,IAAI,OAAO,EAAE,CAAC;gBACnB,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;YACnC,CAAC;QACH,CAAC,CAAC,CACH,CAAC;IACJ,CAAC;IAED,MAAM,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAE1B,OAAO;QACL,EAAE,EAAE,MAAM,CAAC,MAAM,KAAK,CAAC;QACvB,MAAM;QACN,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,KAAK,UAAU,gBAAgB,CAC7B,OAAe,EACf,IAAc;IAEd,IAAI,CAAC;QACH,IAAI,MAAc,CAAC;QACnB,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,EAAE,CAAC;YACjC,kEAAkE;YAClE,2CAA2C;YAC3C,MAAM,MAAM,GAAG,MAAM,SAAS,CAAC,GAAG,OAAO,IAAI,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,EAAE;gBAC7D,OAAO,EAAE,MAAM;aAChB,CAAC,CAAC;YACH,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,CAAC;aAAM,CAAC;YACN,MAAM,MAAM,GAAG,MAAM,aAAa,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC,CAAC;YACvE,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QACzB,CAAC;QACD,OAAO,YAAY,CAAC,MAAM,CAAC,IAAI,SAAS,CAAC;IAC3C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,KAAK,CAAC;IACf,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"preflight.js","sourceRoot":"","sources":["../src/preflight.ts"],"names":[],"mappings":"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"}
@@ -34,6 +34,15 @@ export declare abstract class AbstractCompletionDetector implements CompletionDe
34
34
  /** Tracks the last time the session file grew (independent of PTY data). */
35
35
  protected lastFileGrowthTime: number;
36
36
  protected lastParsedLines: SessionLine[];
37
+ /**
38
+ * Lines that lived in the session file *before* `lineOffset` — i.e. content
39
+ * from prior turns of a resumed session. Empty for fresh sessions
40
+ * (`lineOffset === 0`). Refreshed each poll from the same `readSessionFile`
41
+ * call that produces `lastParsedLines`, so subclasses can read it without
42
+ * extra IO. Subclasses should treat this as session-scoped context and
43
+ * keep turn-scoped state derived from `lastParsedLines`.
44
+ */
45
+ protected priorLines: SessionLine[];
37
46
  constructor(pollMs?: number, quietMs?: number, staleFallbackMs?: number);
38
47
  start(sessionFile: string, lineOffset?: number): Promise<string>;
39
48
  onPtyData(_data: string): void;
@@ -1 +1 @@
1
- {"version":3,"file":"base-completion.d.ts","sourceRoot":"","sources":["../../src/providers/base-completion.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEzE;;;;;;;;;;;;;;;;;;GAkBG;AACH,8BAAsB,0BAA2B,YAAW,kBAAkB;IAe1E,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAhBlC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,UAAU,CAAK;IAEvB,SAAS,CAAC,YAAY,SAAK;IAC3B,4EAA4E;IAC5E,SAAS,CAAC,kBAAkB,SAAK;IACjC,SAAS,CAAC,eAAe,EAAE,WAAW,EAAE,CAAM;gBAG3B,MAAM,SAAM,EACZ,OAAO,SAAM,EACb,eAAe,SAAW;IAG7C,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB3D,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM9B,OAAO,IAAI,IAAI;IAUf,qEAAqE;IACrE,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI;IAE3D,2EAA2E;IAC3E,SAAS,CAAC,QAAQ,CAAC,oBAAoB,IAAI,OAAO;IAElD,iEAAiE;IACjE,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM;IAEhE;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO;IAI5D;;;;OAIG;IACH,SAAS,CAAC,2BAA2B,IAAI,OAAO;IAIhD;;;;;;;;OAQG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO;YAM3B,IAAI;CAkDnB"}
1
+ {"version":3,"file":"base-completion.d.ts","sourceRoot":"","sources":["../../src/providers/base-completion.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AACrD,OAAO,EAAmB,KAAK,WAAW,EAAE,MAAM,sBAAsB,CAAC;AAEzE;;;;;;;;;;;;;;;;;;GAkBG;AACH,8BAAsB,0BAA2B,YAAW,kBAAkB;IAwB1E,OAAO,CAAC,QAAQ,CAAC,MAAM;IACvB,OAAO,CAAC,QAAQ,CAAC,OAAO;IACxB,OAAO,CAAC,QAAQ,CAAC,eAAe;IAzBlC,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,SAAS,CAA+C;IAChE,OAAO,CAAC,OAAO,CAAyC;IACxD,OAAO,CAAC,MAAM,CAAuC;IACrD,OAAO,CAAC,YAAY,CAAK;IACzB,OAAO,CAAC,WAAW,CAAM;IACzB,OAAO,CAAC,UAAU,CAAK;IAEvB,SAAS,CAAC,YAAY,SAAK;IAC3B,4EAA4E;IAC5E,SAAS,CAAC,kBAAkB,SAAK;IACjC,SAAS,CAAC,eAAe,EAAE,WAAW,EAAE,CAAM;IAC9C;;;;;;;OAOG;IACH,SAAS,CAAC,UAAU,EAAE,WAAW,EAAE,CAAM;gBAGtB,MAAM,SAAM,EACZ,OAAO,SAAM,EACb,eAAe,SAAW;IAG7C,KAAK,CAAC,WAAW,EAAE,MAAM,EAAE,UAAU,SAAI,GAAG,OAAO,CAAC,MAAM,CAAC;IAgB3D,SAAS,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI;IAM9B,OAAO,IAAI,IAAI;IAUf,qEAAqE;IACrE,SAAS,CAAC,QAAQ,CAAC,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,IAAI;IAE3D,2EAA2E;IAC3E,SAAS,CAAC,QAAQ,CAAC,oBAAoB,IAAI,OAAO;IAElD,iEAAiE;IACjE,SAAS,CAAC,QAAQ,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM;IAEhE;;;;OAIG;IACH,SAAS,CAAC,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO;IAI5D;;;;OAIG;IACH,SAAS,CAAC,2BAA2B,IAAI,OAAO;IAIhD;;;;;;;;OAQG;IACH,SAAS,CAAC,oBAAoB,IAAI,OAAO;YAM3B,IAAI;CAmDnB"}
@@ -34,6 +34,15 @@ export class AbstractCompletionDetector {
34
34
  /** Tracks the last time the session file grew (independent of PTY data). */
35
35
  lastFileGrowthTime = 0;
36
36
  lastParsedLines = [];
37
+ /**
38
+ * Lines that lived in the session file *before* `lineOffset` — i.e. content
39
+ * from prior turns of a resumed session. Empty for fresh sessions
40
+ * (`lineOffset === 0`). Refreshed each poll from the same `readSessionFile`
41
+ * call that produces `lastParsedLines`, so subclasses can read it without
42
+ * extra IO. Subclasses should treat this as session-scoped context and
43
+ * keep turn-scoped state derived from `lastParsedLines`.
44
+ */
45
+ priorLines = [];
37
46
  constructor(pollMs = 500, quietMs = 500, staleFallbackMs = Infinity) {
38
47
  this.pollMs = pollMs;
39
48
  this.quietMs = quietMs;
@@ -124,6 +133,7 @@ export class AbstractCompletionDetector {
124
133
  this.lastFileSize = s.size;
125
134
  this.lastDataTime = Date.now();
126
135
  this.lastFileGrowthTime = Date.now();
136
+ this.priorLines = this.lineOffset > 0 ? lines.slice(0, this.lineOffset) : [];
127
137
  this.lastParsedLines = lines.slice(this.lineOffset);
128
138
  this.analyzeLines(this.lastParsedLines);
129
139
  // Allow providers to short-circuit (e.g. Codex on task_complete)
@@ -1 +1 @@
1
- {"version":3,"file":"base-completion.js","sourceRoot":"","sources":["../../src/providers/base-completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"base-completion.js","sourceRoot":"","sources":["../../src/providers/base-completion.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,18 @@ import { AbstractCompletionDetector } from "../base-completion.js";
12
12
  *
13
13
  * Both signals must agree before the turn is considered complete.
14
14
  *
15
+ * **Async-launched tools**: When a tool is launched asynchronously
16
+ * (`Agent` with or without `subagent_type`, `Bash` with
17
+ * `run_in_background: true`, `Monitor`, etc.), the immediate `tool_result`
18
+ * is a launch acknowledgement carrying outer field
19
+ * `toolUseResult.isAsync === true` — *not* a real result. We deliberately
20
+ * do not remove the `tool_use_id` from `pendingToolUses` for these acks.
21
+ * The real resolution arrives later as a `type: "user"` line whose
22
+ * string `message.content` begins with `<task-notification>` and embeds
23
+ * the original `<tool-use-id>`. That message clears the pending set and
24
+ * bumps `lastToolActivityIdx`, forcing the detector to wait for a fresh
25
+ * assistant turn (narrative text or `ExitPlanMode`) before firing.
26
+ *
15
27
  * **Plan-exit prefetch fallback (Claude Code ≥ 2.1.74 deferred-tools era)**:
16
28
  * Since 2.1.114, `ExitPlanMode` ships as a deferred tool — Claude must call
17
29
  * `ToolSearch({query:"select:ExitPlanMode"})` to load its schema before it can
@@ -23,6 +35,15 @@ import { AbstractCompletionDetector } from "../base-completion.js";
23
35
  * off it is safe. The arm is deliberately narrow to avoid the
24
36
  * extended-thinking false-positives that forced removal of the broad
25
37
  * staleness fallback (commit `9ccbd83`).
38
+ *
39
+ * The ToolSearch prefetch is a **session-scoped** fact: once Claude has
40
+ * resolved `ToolSearch(select:ExitPlanMode)` anywhere in the session, the
41
+ * schema stays loaded for every subsequent turn. So the prefetch check
42
+ * inspects both the current turn (`currentLines`) and the pre-resume
43
+ * prefix (`priorLines`). The plan-file Write/Edit half remains
44
+ * **turn-scoped** — iteration N must do its own edit before the fallback
45
+ * arms, so a stale plan from iteration 1 cannot resolve iteration 2
46
+ * before any work happens.
26
47
  */
27
48
  export declare class ClaudeCompletionStrategy extends AbstractCompletionDetector {
28
49
  private readonly exitToolName?;
@@ -1 +1 @@
1
- {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/completion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAEnE;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,qBAAa,wBAAyB,SAAQ,0BAA0B;IAWpE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAThC,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,wBAAwB,CAAS;gBAGvC,MAAM,SAAM,EACZ,OAAO,SAAM,EACI,YAAY,CAAC,EAAE,MAAM,YAAA,EACtC,eAAe,SAAW;IAK5B,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;IAyIzD,SAAS,CAAC,oBAAoB,IAAI,OAAO;cAItB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO;cAIlD,oBAAoB,IAAI,OAAO;cAI/B,2BAA2B,IAAI,OAAO;IAQzD,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM;CAGxD"}
1
+ {"version":3,"file":"completion.d.ts","sourceRoot":"","sources":["../../../src/providers/claude/completion.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,yBAAyB,CAAC;AAE3D,OAAO,EAAE,0BAA0B,EAAE,MAAM,uBAAuB,CAAC;AAcnE;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA4CG;AACH,qBAAa,wBAAyB,SAAQ,0BAA0B;IAWpE,OAAO,CAAC,QAAQ,CAAC,YAAY,CAAC;IAThC,OAAO,CAAC,eAAe,CAAqB;IAC5C,OAAO,CAAC,aAAa,CAAS;IAC9B,OAAO,CAAC,YAAY,CAAS;IAC7B,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,wBAAwB,CAAS;gBAGvC,MAAM,SAAM,EACZ,OAAO,SAAM,EACI,YAAY,CAAC,EAAE,MAAM,YAAA,EACtC,eAAe,SAAW;IAK5B,SAAS,CAAC,YAAY,CAAC,YAAY,EAAE,WAAW,EAAE,GAAG,IAAI;IAyMzD,SAAS,CAAC,oBAAoB,IAAI,OAAO;cAItB,kBAAkB,CAAC,MAAM,EAAE,WAAW,EAAE,GAAG,OAAO;cAIlD,oBAAoB,IAAI,OAAO;cAI/B,2BAA2B,IAAI,OAAO;IAQzD,SAAS,CAAC,eAAe,CAAC,KAAK,EAAE,WAAW,EAAE,GAAG,MAAM;CAGxD"}
@@ -1,5 +1,15 @@
1
1
  import { CLAUDE_PLAN_FILE_PATH_REGEX, extractClaudeResponse } from "./session.js";
2
2
  import { AbstractCompletionDetector } from "../base-completion.js";
3
+ /**
4
+ * Resolution signal for any Claude Code tool launched asynchronously
5
+ * (Agent fork/subagent, Bash with run_in_background, Monitor, etc.).
6
+ * The launch-ack `tool_result` for these arrives with
7
+ * `toolUseResult.isAsync === true` and is intentionally not treated as
8
+ * resolution; the actual completion lands later as a `type: "user"` line
9
+ * whose string `content` matches this regex. Capture group 1 is the
10
+ * original `tool_use_id`.
11
+ */
12
+ const TASK_NOTIFICATION_REGEX = /^<task-notification>[\s\S]*?<tool-use-id>([^<]+)<\/tool-use-id>/;
3
13
  /**
4
14
  * Claude completion detection using the two-signal rule:
5
15
  *
@@ -12,6 +22,18 @@ import { AbstractCompletionDetector } from "../base-completion.js";
12
22
  *
13
23
  * Both signals must agree before the turn is considered complete.
14
24
  *
25
+ * **Async-launched tools**: When a tool is launched asynchronously
26
+ * (`Agent` with or without `subagent_type`, `Bash` with
27
+ * `run_in_background: true`, `Monitor`, etc.), the immediate `tool_result`
28
+ * is a launch acknowledgement carrying outer field
29
+ * `toolUseResult.isAsync === true` — *not* a real result. We deliberately
30
+ * do not remove the `tool_use_id` from `pendingToolUses` for these acks.
31
+ * The real resolution arrives later as a `type: "user"` line whose
32
+ * string `message.content` begins with `<task-notification>` and embeds
33
+ * the original `<tool-use-id>`. That message clears the pending set and
34
+ * bumps `lastToolActivityIdx`, forcing the detector to wait for a fresh
35
+ * assistant turn (narrative text or `ExitPlanMode`) before firing.
36
+ *
15
37
  * **Plan-exit prefetch fallback (Claude Code ≥ 2.1.74 deferred-tools era)**:
16
38
  * Since 2.1.114, `ExitPlanMode` ships as a deferred tool — Claude must call
17
39
  * `ToolSearch({query:"select:ExitPlanMode"})` to load its schema before it can
@@ -23,6 +45,15 @@ import { AbstractCompletionDetector } from "../base-completion.js";
23
45
  * off it is safe. The arm is deliberately narrow to avoid the
24
46
  * extended-thinking false-positives that forced removal of the broad
25
47
  * staleness fallback (commit `9ccbd83`).
48
+ *
49
+ * The ToolSearch prefetch is a **session-scoped** fact: once Claude has
50
+ * resolved `ToolSearch(select:ExitPlanMode)` anywhere in the session, the
51
+ * schema stays loaded for every subsequent turn. So the prefetch check
52
+ * inspects both the current turn (`currentLines`) and the pre-resume
53
+ * prefix (`priorLines`). The plan-file Write/Edit half remains
54
+ * **turn-scoped** — iteration N must do its own edit before the fallback
55
+ * arms, so a stale plan from iteration 1 cannot resolve iteration 2
56
+ * before any work happens.
26
57
  */
27
58
  export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
28
59
  exitToolName;
@@ -49,6 +80,14 @@ export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
49
80
  // Claude Code's JSONL writer can append tool_result before the
50
81
  // corresponding tool_use when parallel tool calls are dispatched.
51
82
  const resolvedIds = new Set();
83
+ // Track per-message-id whether stop_reason was "tool_use" and whether a
84
+ // tool_use block has actually been observed for that id. Claude Code's
85
+ // session writer splits multi-block messages across separate JSONL
86
+ // lines (one per content block) and the gap between a text block and
87
+ // the corresponding tool_use block can exceed the quiet-debounce
88
+ // window — observed at 12 s in dump 2026-04-30T09-40-25-745Z.
89
+ const stopReasonToolUseMessages = new Set();
90
+ const messagesWithToolUseBlock = new Set();
52
91
  // Track the tool_use IDs that participate in the deferred-ExitPlanMode
53
92
  // dance, so we can flip `planExitPrefetchComplete` once both have their
54
93
  // matching tool_result.
@@ -61,8 +100,14 @@ export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
61
100
  if (!message?.content)
62
101
  continue;
63
102
  lastAssistantStopReason = message.stop_reason;
103
+ const messageId = message.id;
104
+ if (messageId && message.stop_reason === "tool_use") {
105
+ stopReasonToolUseMessages.add(messageId);
106
+ }
64
107
  for (const block of message.content) {
65
108
  if (block.type === "tool_use" && block.id) {
109
+ if (messageId)
110
+ messagesWithToolUseBlock.add(messageId);
66
111
  // If this is the plan-exit tool, mark it and skip tracking
67
112
  if (this.exitToolName && block.name === this.exitToolName) {
68
113
  this.exitToolCalled = true;
@@ -91,12 +136,33 @@ export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
91
136
  }
92
137
  }
93
138
  else if (line.type === "user") {
94
- // Tool results resolve pending tool uses
95
139
  const message = line.message;
96
140
  if (!message?.content)
97
141
  continue;
142
+ // String content is rare in tool-result lines but is exactly how
143
+ // Claude Code delivers async-tool completion notifications.
144
+ if (typeof message.content === "string") {
145
+ const m = TASK_NOTIFICATION_REGEX.exec(message.content);
146
+ if (m) {
147
+ const id = m[1];
148
+ this.pendingToolUses.delete(id);
149
+ resolvedIds.add(id);
150
+ lastToolActivityIdx = idx;
151
+ }
152
+ continue;
153
+ }
154
+ // Async-launch ack: the outer line carries
155
+ // `toolUseResult.isAsync === true`. Treat as activity but do not
156
+ // resolve — the matching `<task-notification>` will arrive later.
157
+ const tur = line
158
+ .toolUseResult;
159
+ const isAsyncLaunch = !!tur && tur.isAsync === true;
98
160
  for (const block of message.content) {
99
161
  if (block.type === "tool_result" && block.tool_use_id) {
162
+ if (isAsyncLaunch) {
163
+ lastToolActivityIdx = idx;
164
+ continue;
165
+ }
100
166
  this.pendingToolUses.delete(block.tool_use_id);
101
167
  resolvedIds.add(block.tool_use_id);
102
168
  lastToolActivityIdx = idx;
@@ -125,14 +191,39 @@ export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
125
191
  break;
126
192
  }
127
193
  }
194
+ // Prefetch is session-scoped: a resolved ToolSearch(ExitPlanMode) in any
195
+ // prior turn keeps the schema loaded for the current turn too. Only
196
+ // scan `priorLines` if the current slice did not already observe one,
197
+ // since the in-slice scan is strictly more authoritative (same data).
198
+ if (!sawResolvedExitPlanModePrefetch && this.priorLines.length > 0) {
199
+ sawResolvedExitPlanModePrefetch = didResolveExitPlanModePrefetch(this.priorLines);
200
+ }
128
201
  this.planExitPrefetchComplete =
129
202
  sawResolvedPlanFileWrite && sawResolvedExitPlanModePrefetch;
130
- // Guard: stop_reason === null (strict) means the API response is still
131
- // streaming content blocks. Suppress primary to avoid false completion
132
- // during the gap between intermediate JSONL lines of the same response.
203
+ // A message whose stop_reason is "tool_use" is guaranteed to contain at
204
+ // least one tool_use block. If we have not yet observed any tool_use
205
+ // block from such a message, the message is still being written to
206
+ // JSONL and the response is not done.
207
+ let awaitingPromisedToolUse = false;
208
+ for (const id of stopReasonToolUseMessages) {
209
+ if (!messagesWithToolUseBlock.has(id)) {
210
+ awaitingPromisedToolUse = true;
211
+ break;
212
+ }
213
+ }
214
+ // Guard: suppress the primary signal while the response is provably
215
+ // not done.
216
+ // - stop_reason === null → API response still streaming blocks.
217
+ // - stop_reason === "stop_sequence" → synthetic resume responses.
218
+ // - awaitingPromisedToolUse → a message with stop_reason "tool_use"
219
+ // has emitted text but its tool_use block has not yet been written
220
+ // to JSONL (Claude Code splits multi-block messages across lines and
221
+ // the gap can exceed the quiet-debounce window — observed at 12 s
222
+ // in dump 2026-04-30T09-40-25-745Z).
133
223
  // undefined (missing field, e.g. in test data) falls through.
134
224
  const responseIncomplete = lastAssistantStopReason === null ||
135
- lastAssistantStopReason === "stop_sequence";
225
+ lastAssistantStopReason === "stop_sequence" ||
226
+ awaitingPromisedToolUse;
136
227
  // Primary signal:
137
228
  // - the last assistant response is not mid-stream
138
229
  // - no pending tool uses
@@ -164,4 +255,45 @@ export class ClaudeCompletionStrategy extends AbstractCompletionDetector {
164
255
  return extractClaudeResponse(lines);
165
256
  }
166
257
  }
258
+ /**
259
+ * Scan a slice of session lines for a resolved
260
+ * `ToolSearch({query: includes("ExitPlanMode")})` invocation. Used to detect
261
+ * whether the deferred-tool schema was loaded in any prior turn of a resumed
262
+ * Claude session.
263
+ */
264
+ function didResolveExitPlanModePrefetch(lines) {
265
+ const prefetchIds = new Set();
266
+ const resolvedIds = new Set();
267
+ for (const line of lines) {
268
+ if (line.type === "assistant") {
269
+ const message = line.message;
270
+ if (!message?.content)
271
+ continue;
272
+ for (const block of message.content) {
273
+ if (block.type === "tool_use" &&
274
+ block.id &&
275
+ block.name === "ToolSearch" &&
276
+ typeof block.input?.query === "string" &&
277
+ block.input.query.includes("ExitPlanMode")) {
278
+ prefetchIds.add(block.id);
279
+ }
280
+ }
281
+ }
282
+ else if (line.type === "user") {
283
+ const message = line.message;
284
+ if (!message?.content || typeof message.content === "string")
285
+ continue;
286
+ for (const block of message.content) {
287
+ if (block.type === "tool_result" && block.tool_use_id) {
288
+ resolvedIds.add(block.tool_use_id);
289
+ }
290
+ }
291
+ }
292
+ }
293
+ for (const id of prefetchIds) {
294
+ if (resolvedIds.has(id))
295
+ return true;
296
+ }
297
+ return false;
298
+ }
167
299
  //# sourceMappingURL=completion.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../src/providers/claude/completion.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"completion.js","sourceRoot":"","sources":["../../../src/providers/claude/completion.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "poly-weaver",
3
- "version": "0.4.1",
3
+ "version": "0.4.3",
4
4
  "description": "Orchestrates pluggable AI coding agents in an iterative plan-review loop",
5
5
  "license": "MIT",
6
6
  "repository": {