@cleocode/core 2026.8.2 → 2026.8.4

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 (186) hide show
  1. package/dist/check/pr-gate.d.ts.map +1 -1
  2. package/dist/check/pr-gate.js +9 -0
  3. package/dist/check/pr-gate.js.map +1 -1
  4. package/dist/docs/export-document.js +66 -16
  5. package/dist/docs/export-document.js.map +3 -3
  6. package/dist/doctor/index.d.ts +2 -0
  7. package/dist/doctor/index.d.ts.map +1 -1
  8. package/dist/doctor/index.js +1 -0
  9. package/dist/doctor/index.js.map +1 -1
  10. package/dist/doctor/superseded-store.d.ts +101 -0
  11. package/dist/doctor/superseded-store.d.ts.map +1 -0
  12. package/dist/doctor/superseded-store.js +156 -0
  13. package/dist/doctor/superseded-store.js.map +1 -0
  14. package/dist/hooks/registry.d.ts +2 -2
  15. package/dist/hooks/registry.d.ts.map +1 -1
  16. package/dist/hooks/registry.js +5 -0
  17. package/dist/hooks/registry.js.map +1 -1
  18. package/dist/hooks/types.d.ts +59 -0
  19. package/dist/hooks/types.d.ts.map +1 -1
  20. package/dist/init/scaffold-workflows.d.ts +12 -0
  21. package/dist/init/scaffold-workflows.d.ts.map +1 -1
  22. package/dist/init/scaffold-workflows.js +16 -0
  23. package/dist/init/scaffold-workflows.js.map +1 -1
  24. package/dist/init/upgrade-workflows.d.ts.map +1 -1
  25. package/dist/init/upgrade-workflows.js +16 -0
  26. package/dist/init/upgrade-workflows.js.map +1 -1
  27. package/dist/init.d.ts.map +1 -1
  28. package/dist/init.js +16 -1
  29. package/dist/init.js.map +1 -1
  30. package/dist/internal.d.ts +1 -0
  31. package/dist/internal.d.ts.map +1 -1
  32. package/dist/internal.js +2 -0
  33. package/dist/internal.js.map +1 -1
  34. package/dist/llm/credentials.d.ts +16 -1
  35. package/dist/llm/credentials.d.ts.map +1 -1
  36. package/dist/llm/credentials.js.map +1 -1
  37. package/dist/llm/cross-provider-selector.d.ts +25 -0
  38. package/dist/llm/cross-provider-selector.d.ts.map +1 -1
  39. package/dist/llm/cross-provider-selector.js +76 -3
  40. package/dist/llm/cross-provider-selector.js.map +1 -1
  41. package/dist/llm/local-inference-probe.d.ts +101 -0
  42. package/dist/llm/local-inference-probe.d.ts.map +1 -0
  43. package/dist/llm/local-inference-probe.js +174 -0
  44. package/dist/llm/local-inference-probe.js.map +1 -0
  45. package/dist/llm/plugin-facade.js +199 -21
  46. package/dist/llm/plugin-facade.js.map +3 -3
  47. package/dist/llm/role-executor.d.ts.map +1 -1
  48. package/dist/llm/role-executor.js +95 -9
  49. package/dist/llm/role-executor.js.map +1 -1
  50. package/dist/llm/role-resolver.d.ts +10 -0
  51. package/dist/llm/role-resolver.d.ts.map +1 -1
  52. package/dist/llm/role-resolver.js +92 -1
  53. package/dist/llm/role-resolver.js.map +1 -1
  54. package/dist/llm/system-resolver.d.ts.map +1 -1
  55. package/dist/llm/system-resolver.js +2 -0
  56. package/dist/llm/system-resolver.js.map +1 -1
  57. package/dist/memory/brain-search.d.ts +109 -0
  58. package/dist/memory/brain-search.d.ts.map +1 -1
  59. package/dist/memory/brain-search.js +149 -37
  60. package/dist/memory/brain-search.js.map +1 -1
  61. package/dist/memory/brain-stub-prune.d.ts +109 -0
  62. package/dist/memory/brain-stub-prune.d.ts.map +1 -0
  63. package/dist/memory/brain-stub-prune.js +155 -0
  64. package/dist/memory/brain-stub-prune.js.map +1 -0
  65. package/dist/memory/engine-compat.d.ts.map +1 -1
  66. package/dist/memory/engine-compat.js +61 -3
  67. package/dist/memory/engine-compat.js.map +1 -1
  68. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  69. package/dist/nexus/analyze-orchestrator.js +28 -0
  70. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  71. package/dist/nexus/context.d.ts.map +1 -1
  72. package/dist/nexus/context.js +3 -3
  73. package/dist/nexus/context.js.map +1 -1
  74. package/dist/nexus/impact.d.ts.map +1 -1
  75. package/dist/nexus/impact.js +3 -3
  76. package/dist/nexus/impact.js.map +1 -1
  77. package/dist/nexus/symbol-miss.d.ts +132 -0
  78. package/dist/nexus/symbol-miss.d.ts.map +1 -0
  79. package/dist/nexus/symbol-miss.js +168 -0
  80. package/dist/nexus/symbol-miss.js.map +1 -0
  81. package/dist/orchestrate/spawn-ops.d.ts +21 -1
  82. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  83. package/dist/orchestrate/spawn-ops.js +39 -2
  84. package/dist/orchestrate/spawn-ops.js.map +1 -1
  85. package/dist/orchestrate/worker-verify.d.ts.map +1 -1
  86. package/dist/orchestrate/worker-verify.js +22 -0
  87. package/dist/orchestrate/worker-verify.js.map +1 -1
  88. package/dist/release/changesets-aggregator.d.ts.map +1 -1
  89. package/dist/release/changesets-aggregator.js +15 -1
  90. package/dist/release/changesets-aggregator.js.map +1 -1
  91. package/dist/release/open.d.ts +29 -2
  92. package/dist/release/open.d.ts.map +1 -1
  93. package/dist/release/open.js +48 -11
  94. package/dist/release/open.js.map +1 -1
  95. package/dist/resources/governor.d.ts +12 -2
  96. package/dist/resources/governor.d.ts.map +1 -1
  97. package/dist/resources/governor.js +12 -3
  98. package/dist/resources/governor.js.map +1 -1
  99. package/dist/scaffold/ensure-dirs.d.ts.map +1 -1
  100. package/dist/scaffold/ensure-dirs.js +14 -2
  101. package/dist/scaffold/ensure-dirs.js.map +1 -1
  102. package/dist/scaffold/project-detection.d.ts.map +1 -1
  103. package/dist/scaffold/project-detection.js +2 -1
  104. package/dist/scaffold/project-detection.js.map +1 -1
  105. package/dist/selfimprove/draft-pr.d.ts +14 -1
  106. package/dist/selfimprove/draft-pr.d.ts.map +1 -1
  107. package/dist/selfimprove/draft-pr.js.map +1 -1
  108. package/dist/selfimprove/fix-gen.d.ts +0 -21
  109. package/dist/selfimprove/fix-gen.d.ts.map +1 -1
  110. package/dist/selfimprove/fix-gen.js +276 -76
  111. package/dist/selfimprove/fix-gen.js.map +3 -3
  112. package/dist/selfimprove/run-loop.d.ts.map +1 -1
  113. package/dist/selfimprove/run-loop.js +50 -19
  114. package/dist/selfimprove/run-loop.js.map +1 -1
  115. package/dist/selfimprove/scenarios/dhq-replay-find/golden.json +114 -4
  116. package/dist/selfimprove/scenarios/dhq-replay-find/scenario.json +3 -3
  117. package/dist/sentient/dream-cycle.d.ts +20 -19
  118. package/dist/sentient/dream-cycle.d.ts.map +1 -1
  119. package/dist/sentient/dream-cycle.js +322 -11
  120. package/dist/sentient/dream-cycle.js.map +1 -1
  121. package/dist/sentient/dream-watermark.d.ts +134 -0
  122. package/dist/sentient/dream-watermark.d.ts.map +1 -0
  123. package/dist/sentient/dream-watermark.js +156 -0
  124. package/dist/sentient/dream-watermark.js.map +1 -0
  125. package/dist/sentient/state.d.ts +17 -0
  126. package/dist/sentient/state.d.ts.map +1 -1
  127. package/dist/sentient/state.js +22 -3
  128. package/dist/sentient/state.js.map +1 -1
  129. package/dist/sentient/tick.d.ts.map +1 -1
  130. package/dist/sentient/tick.js +79 -2
  131. package/dist/sentient/tick.js.map +1 -1
  132. package/dist/sessions/index.d.ts.map +1 -1
  133. package/dist/sessions/index.js +5 -1
  134. package/dist/sessions/index.js.map +1 -1
  135. package/dist/sessions/snapshot.d.ts.map +1 -1
  136. package/dist/sessions/snapshot.js +6 -3
  137. package/dist/sessions/snapshot.js.map +1 -1
  138. package/dist/store/checkpoint-git-dir.d.ts +95 -0
  139. package/dist/store/checkpoint-git-dir.d.ts.map +1 -0
  140. package/dist/store/checkpoint-git-dir.js +111 -0
  141. package/dist/store/checkpoint-git-dir.js.map +1 -0
  142. package/dist/store/git-checkpoint.d.ts.map +1 -1
  143. package/dist/store/git-checkpoint.js +6 -5
  144. package/dist/store/git-checkpoint.js.map +1 -1
  145. package/dist/system/health.d.ts.map +1 -1
  146. package/dist/system/health.js +2 -1
  147. package/dist/system/health.js.map +1 -1
  148. package/dist/tasks/add.d.ts.map +1 -1
  149. package/dist/tasks/add.js +40 -4
  150. package/dist/tasks/add.js.map +1 -1
  151. package/dist/tasks/collection.d.ts +51 -0
  152. package/dist/tasks/collection.d.ts.map +1 -0
  153. package/dist/tasks/collection.js +81 -0
  154. package/dist/tasks/collection.js.map +1 -0
  155. package/dist/tasks/complete.d.ts.map +1 -1
  156. package/dist/tasks/complete.js +8 -3
  157. package/dist/tasks/complete.js.map +1 -1
  158. package/dist/tasks/evidence.d.ts.map +1 -1
  159. package/dist/tasks/evidence.js +17 -0
  160. package/dist/tasks/evidence.js.map +1 -1
  161. package/dist/tasks/find.d.ts +50 -0
  162. package/dist/tasks/find.d.ts.map +1 -1
  163. package/dist/tasks/find.js +63 -2
  164. package/dist/tasks/find.js.map +1 -1
  165. package/dist/tasks/heavy-tool-env.d.ts +112 -0
  166. package/dist/tasks/heavy-tool-env.d.ts.map +1 -0
  167. package/dist/tasks/heavy-tool-env.js +133 -0
  168. package/dist/tasks/heavy-tool-env.js.map +1 -0
  169. package/dist/tasks/index.d.ts +2 -0
  170. package/dist/tasks/index.d.ts.map +1 -1
  171. package/dist/tasks/index.js +1 -0
  172. package/dist/tasks/index.js.map +1 -1
  173. package/dist/tasks/tool-cache.d.ts.map +1 -1
  174. package/dist/tasks/tool-cache.js +9 -3
  175. package/dist/tasks/tool-cache.js.map +1 -1
  176. package/dist/tasks/tool-resolver.d.ts +1 -1
  177. package/dist/tasks/tool-resolver.d.ts.map +1 -1
  178. package/dist/tasks/tool-resolver.js +83 -0
  179. package/dist/tasks/tool-resolver.js.map +1 -1
  180. package/dist/tasks/tool-semaphore.d.ts +82 -12
  181. package/dist/tasks/tool-semaphore.d.ts.map +1 -1
  182. package/dist/tasks/tool-semaphore.js +79 -17
  183. package/dist/tasks/tool-semaphore.js.map +1 -1
  184. package/package.json +13 -13
  185. package/templates/CLEO-INJECTION.md +55 -22
  186. package/templates/workflows/release-prepare.yml.tmpl +73 -16
@@ -1 +1 @@
1
- {"version":3,"file":"role-executor.d.ts","sourceRoot":"","sources":["../../src/llm/role-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAsB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,gDAAgD,CAAC;AASxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAqDxD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,KAAK,EAAE,eAAe,CAAC;IACvB,uDAAuD;IACvD,QAAQ,EAAE,cAAc,CAAC;IACzB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;CACf;AAKD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,qBAA0B,GAC/B,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAoItC"}
1
+ {"version":3,"file":"role-executor.d.ts","sourceRoot":"","sources":["../../src/llm/role-executor.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,KAAK,EAAsB,QAAQ,EAAE,MAAM,qBAAqB,CAAC;AACxE,OAAO,KAAK,EACV,eAAe,EAEhB,MAAM,gDAAgD,CAAC;AASxD,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAqDxD;;;;;;GAMG;AACH,wBAAgB,2BAA2B,IAAI,IAAI,CAElD;AAED;;;;GAIG;AACH,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,sEAAsE;IACtE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,MAAM,CAAC,EAAE,WAAW,CAAC;IACrB,kEAAkE;IAClE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,4EAA4E;IAC5E,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,MAAM,WAAW,oBAAoB;IACnC,uEAAuE;IACvE,OAAO,EAAE,MAAM,CAAC;IAChB,4CAA4C;IAC5C,KAAK,EAAE,eAAe,CAAC;IACvB,uDAAuD;IACvD,QAAQ,EAAE,cAAc,CAAC;IACzB,6DAA6D;IAC7D,KAAK,EAAE,MAAM,CAAC;CACf;AAKD;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAsB,cAAc,CAClC,IAAI,EAAE,QAAQ,EACd,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,EACnB,IAAI,GAAE,qBAA0B,GAC/B,OAAO,CAAC,oBAAoB,GAAG,IAAI,CAAC,CAsBtC"}
@@ -116,7 +116,70 @@ const DEFAULT_MAX_TOKENS = 1024;
116
116
  * @task T9320
117
117
  */
118
118
  export async function executeForRole(role, systemPrompt, userContent, opts = {}) {
119
- const llm = await resolveLLMForRole(role, { projectRoot: opts.projectRoot });
119
+ // T12082: one broken provider must not take the role down.
120
+ //
121
+ // This path drives the whole brain layer — consolidation, extraction,
122
+ // hygiene, the dream cycle. It resolved ONE provider and returned null on
123
+ // any failure, so a credential that is present but rejected (here: an
124
+ // openai Codex OAuth answering `400 'gpt-5.5-pro' is not supported when
125
+ // using Codex with a ChatGPT account`) disabled every background capability
126
+ // while other usable providers sat unconsulted. `shouldFallback` was already
127
+ // computed by the classifier and then thrown away.
128
+ //
129
+ // Failing over costs one extra resolution on an already-failed call, and the
130
+ // excluded provider is remembered only for the duration of this call — no
131
+ // persistent state, so a provider that recovers is picked again immediately.
132
+ const excludeProviders = [];
133
+ for (let attempt = 0;; attempt++) {
134
+ const outcome = await attemptRoleCall(role, systemPrompt, userContent, opts, excludeProviders);
135
+ if (outcome.kind === 'ok')
136
+ return outcome.result;
137
+ if (outcome.kind === 'give-up' || attempt >= MAX_ROLE_FAILOVERS)
138
+ return null;
139
+ excludeProviders.push(outcome.provider);
140
+ }
141
+ }
142
+ /**
143
+ * How many alternate providers {@link executeForRole} may try after the first
144
+ * one fails.
145
+ *
146
+ * Two, not unbounded: each attempt costs a resolution plus a wire call, and a
147
+ * background pass that walks eleven providers to fail eleven times is worse
148
+ * than one that fails fast.
149
+ *
150
+ * @task T12082
151
+ */
152
+ const MAX_ROLE_FAILOVERS = 2;
153
+ /**
154
+ * Execute the role call against exactly one resolved provider.
155
+ *
156
+ * Extracted from {@link executeForRole} so the failover loop has a single
157
+ * attempt to drive; the body is unchanged apart from returning a discriminated
158
+ * outcome instead of `null`.
159
+ *
160
+ * @param role - semantic role.
161
+ * @param systemPrompt - system instruction.
162
+ * @param userContent - user message.
163
+ * @param opts - caller options.
164
+ * @param excludeProviders - providers that already failed this call.
165
+ * @returns the outcome of this single attempt.
166
+ *
167
+ * @task T9320
168
+ * @task T12082
169
+ */
170
+ async function attemptRoleCall(role, systemPrompt, userContent, opts, excludeProviders) {
171
+ const llm = await resolveLLMForRole(role, {
172
+ projectRoot: opts.projectRoot,
173
+ // Snapshot: the loop appends to this array between attempts, and handing
174
+ // the live reference out would let a resolver observe a list that changes
175
+ // under it after the call.
176
+ excludeProviders: [...excludeProviders],
177
+ });
178
+ // The resolver could not honour the exclusion — nothing else is provisioned.
179
+ // Calling the same failed provider a second time would repeat its failure and
180
+ // its side effects (a 401 would quarantine the same credential twice).
181
+ if (excludeProviders.includes(llm.provider))
182
+ return { kind: 'give-up' };
120
183
  if (!llm.sealedCredential || !llm.credential) {
121
184
  // No usable credential for this role's resolved provider. Surface ONE
122
185
  // actionable re-auth hint per (role, provider) tuple instead of a silent
@@ -124,10 +187,20 @@ export async function executeForRole(role, systemPrompt, userContent, opts = {})
124
187
  warnOnceForRole(`${role}|${llm.provider}|<none>`, `[role-executor] role=${role} provider=${llm.provider}: no usable credential. ` +
125
188
  `Run 'cleo llm login' (or 'cleo llm add ${llm.provider}') to authenticate, ` +
126
189
  `or 'cleo llm profile ${role} <provider>' to bind this role to a configured provider.`);
127
- return null;
190
+ // Another provider may well have a credential — that is worth one more
191
+ // resolution before the whole capability goes dark.
192
+ return { kind: 'failover', provider: llm.provider };
128
193
  }
129
194
  const credentialLabel = llm.credentialLabel ?? '<default>';
130
- const model = opts.modelOverride ?? llm.model;
195
+ // T12085: a model id belongs to ONE provider. Carrying the caller's
196
+ // `modelOverride` across a failover asks the substitute provider for a model
197
+ // it has never heard of — measured: an anthropic 429 failed over and then
198
+ // asked openai for `claude-fable-5` (400) and ollama for `claude-fable-5`
199
+ // (404 "model not found"), so failover was guaranteed to fail for exactly the
200
+ // callers who pinned a model. After a failover the substitute's OWN resolved
201
+ // model wins; the override applies only to the caller's first-choice provider.
202
+ const isFailover = excludeProviders.length > 0;
203
+ const model = isFailover ? llm.model : (opts.modelOverride ?? llm.model);
131
204
  const request = {
132
205
  model,
133
206
  system: systemPrompt,
@@ -169,7 +242,11 @@ export async function executeForRole(role, systemPrompt, userContent, opts = {})
169
242
  expiresAt: null,
170
243
  refreshToken: null,
171
244
  extraHeaders: {},
172
- baseUrl: wire.baseUrl,
245
+ // T12081: the credential's OWN endpoint wins. Using `wire.baseUrl`
246
+ // unconditionally rewrote every custom endpoint (Ollama, LM Studio,
247
+ // vLLM, OpenRouter, Azure) to the provider's public API, which then
248
+ // rejected the local key with 401.
249
+ baseUrl: llm.credential?.baseUrl ?? wire.baseUrl,
173
250
  awsProfile: null,
174
251
  };
175
252
  const transport = ModelRunner.buildTransportFromCredential(llm.provider, resolvedCredential, wire.apiMode);
@@ -185,10 +262,13 @@ export async function executeForRole(role, systemPrompt, userContent, opts = {})
185
262
  await llmQueueAdmit(llm.provider, resolveQueuePriorityClass(), opts.maxTokens ?? DEFAULT_MAX_TOKENS, `role:${role}:pid-${process.pid}`);
186
263
  const resp = await transport.complete(request);
187
264
  return {
188
- content: resp.content ?? '',
189
- usage: resp.usage,
190
- provider: llm.provider,
191
- model: resp.model,
265
+ kind: 'ok',
266
+ result: {
267
+ content: resp.content ?? '',
268
+ usage: resp.usage,
269
+ provider: llm.provider,
270
+ model: resp.model,
271
+ },
192
272
  };
193
273
  }
194
274
  catch (err) {
@@ -218,7 +298,13 @@ export async function executeForRole(role, systemPrompt, userContent, opts = {})
218
298
  // persistently-failing backend does not spam every background tick.
219
299
  warnOnceForRole(latchKey, `[role-executor] role=${role} provider=${llm.provider} model=${model} call failed: ${message}`);
220
300
  }
221
- return null;
301
+ // An abort is the CALLER's decision — retrying elsewhere would ignore it.
302
+ // Everything else (auth, rate limit, 4xx, 5xx, network) is a property of
303
+ // this provider, so another one is worth trying.
304
+ if (classified.reason === 'timeout' && opts.signal?.aborted === true) {
305
+ return { kind: 'give-up' };
306
+ }
307
+ return { kind: 'failover', provider: llm.provider };
222
308
  }
223
309
  }
224
310
  //# sourceMappingURL=role-executor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"role-executor.js","sourceRoot":"","sources":["../../src/llm/role-executor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"role-executor.js","sourceRoot":"","sources":["../../src/llm/role-executor.ts"],"names":[],"mappings":"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"}
@@ -50,6 +50,16 @@ export { IMPLICIT_FALLBACK_MODEL };
50
50
  * @task T9255
51
51
  */
52
52
  export declare const IMPLICIT_FALLBACK_PROVIDER: ModelTransport;
53
+ /**
54
+ * Placeholder bearer token used for a keyless local inference daemon (T12082).
55
+ *
56
+ * Not a secret and not validated by anything: local servers accept any bearer
57
+ * value. It exists because the transport contract requires a token field, and
58
+ * because every consumer in this layer gates on `credential != null` — without
59
+ * a placeholder, a perfectly usable daemon is indistinguishable from an
60
+ * unconfigured provider.
61
+ */
62
+ export declare const LOCAL_PLACEHOLDER_TOKEN = "local";
53
63
  /**
54
64
  * Implicit fallback model for the `hygiene` role.
55
65
  *
@@ -1 +1 @@
1
- {"version":3,"file":"role-resolver.d.ts","sourceRoot":"","sources":["../../src/llm/role-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EACV,OAAO,EAEP,sBAAsB,EAKtB,SAAS,EACT,gBAAgB,EAChB,wBAAwB,EACxB,QAAQ,EACR,gBAAgB,EAEjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAOrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAI9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,cAA4B,CAAC;AAEtE;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAKrE,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,QAAQ,EAAE,cAAc,CAAC;IACzB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB;;;;;;;OAOG;IACH,UAAU,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC1C;;;;;;;;OAQG;IACH,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,kDAAkD;IAClD,MAAM,EAAE,gBAAgB,CAAC;IACzB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;CAC1B;AAyVD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,WAAW,CAAC,CA+GtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC;IACT,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,IAAI,CAAC,CAwBR"}
1
+ {"version":3,"file":"role-resolver.d.ts","sourceRoot":"","sources":["../../src/llm/role-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAEH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AACnD,OAAO,KAAK,EACV,OAAO,EAEP,sBAAsB,EAKtB,SAAS,EACT,gBAAgB,EAChB,wBAAwB,EACxB,QAAQ,EACR,gBAAgB,EAEjB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAOrC,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAK9D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAExD;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,cAA4B,CAAC;AAEtE;;;;;;;;GAQG;AACH,eAAO,MAAM,uBAAuB,UAAU,CAAC;AAE/C;;;;;;;;;;;;;;GAcG;AACH,eAAO,MAAM,sBAAsB,sBAAsB,CAAC;AAE1D;;;;;;;;;;;;;;GAcG;AACH,MAAM,MAAM,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAKrE,YAAY,EAAE,gBAAgB,EAAE,wBAAwB,EAAE,CAAC;AAE3D;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,MAAM,WAAW,WAAW;IAC1B,gDAAgD;IAChD,QAAQ,EAAE,cAAc,CAAC;IACzB,6BAA6B;IAC7B,KAAK,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,MAAM,EAAE,SAAS,GAAG,IAAI,CAAC;IACzB;;;;;;;OAOG;IACH,UAAU,EAAE,sBAAsB,GAAG,IAAI,CAAC;IAC1C;;;;;;;;OAQG;IACH,gBAAgB,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC1C,kDAAkD;IAClD,MAAM,EAAE,gBAAgB,CAAC;IACzB,2EAA2E;IAC3E,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB;;;;;;;;OAQG;IACH,OAAO,EAAE,OAAO,CAAC;IACjB;;;;OAIG;IACH,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB;;;;OAIG;IACH,QAAQ,EAAE,SAAS,GAAG,OAAO,GAAG,SAAS,GAAG,IAAI,CAAC;IACjD;;;OAGG;IACH,YAAY,CAAC,EAAE,SAAS,CAAC;CAC1B;AAmaD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,wBAAsB,iBAAiB,CACrC,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC,WAAW,CAAC,CAgItB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,wBAAsB,uBAAuB,CAC3C,IAAI,EAAE,QAAQ,EACd,IAAI,CAAC,EAAE,wBAAwB,GAC9B,OAAO,CAAC;IACT,MAAM,EAAE,IAAI,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;IACpC,KAAK,EAAE,MAAM,CAAC;CACf,GAAG,IAAI,CAAC,CAwBR"}
@@ -32,6 +32,7 @@ import { resolveCredentials } from './credentials.js';
32
32
  import { getCredentialByLabel, pickCredentialForProvider } from './credentials-store.js';
33
33
  import { selectBestProvisioned } from './cross-provider-selector.js';
34
34
  import { IMPLICIT_FALLBACK_MODEL } from './fallback-model.js';
35
+ import { detectLocalInference } from './local-inference-probe.js';
35
36
  import { makeSealedCredential, tokenPreview } from './sealed-credential.js';
36
37
  import { getRegisteredSystemDefault } from './system-of-use-registry.js';
37
38
  import { buildAnthropicClient } from './transports/anthropic-client-factory.js';
@@ -55,6 +56,16 @@ export { IMPLICIT_FALLBACK_MODEL };
55
56
  * @task T9255
56
57
  */
57
58
  export const IMPLICIT_FALLBACK_PROVIDER = 'anthropic';
59
+ /**
60
+ * Placeholder bearer token used for a keyless local inference daemon (T12082).
61
+ *
62
+ * Not a secret and not validated by anything: local servers accept any bearer
63
+ * value. It exists because the transport contract requires a token field, and
64
+ * because every consumer in this layer gates on `credential != null` — without
65
+ * a placeholder, a perfectly usable daemon is indistinguishable from an
66
+ * unconfigured provider.
67
+ */
68
+ export const LOCAL_PLACEHOLDER_TOKEN = 'local';
58
69
  /**
59
70
  * Implicit fallback model for the `hygiene` role.
60
71
  *
@@ -300,6 +311,42 @@ async function selectProviderModel(llm, role, systemKey, profileOverride, projec
300
311
  source: 'implicit-fallback',
301
312
  };
302
313
  }
314
+ /**
315
+ * Re-route a resolution away from providers the caller has excluded (T12082).
316
+ *
317
+ * Called only when `excludeProviders` is non-empty, which happens only after
318
+ * that provider has already failed the current call. The replacement comes
319
+ * from the provisioning-aware selector rather than the config cascade, because
320
+ * every config tier would just name the same excluded pin again.
321
+ *
322
+ * When no substitute is provisioned, the original selection is returned
323
+ * unchanged: the caller is about to fail either way, and preserving the
324
+ * original keeps its error message pointed at the provider actually
325
+ * configured.
326
+ *
327
+ * @param selected - the resolution produced by the normal cascade.
328
+ * @param role - logical role being resolved.
329
+ * @param projectRoot - project root for provisioning lookups.
330
+ * @param exclude - providers that must not be returned.
331
+ * @returns the original selection, or a substitute that is not excluded.
332
+ *
333
+ * @task T12082
334
+ */
335
+ async function applyProviderExclusions(selected, role, projectRoot, exclude) {
336
+ if (exclude === undefined || exclude.length === 0)
337
+ return selected;
338
+ if (!exclude.includes(selected.provider))
339
+ return selected;
340
+ try {
341
+ const substitute = await selectBestProvisioned(role, { projectRoot, exclude });
342
+ if (substitute !== null)
343
+ return substitute;
344
+ }
345
+ catch {
346
+ // Non-fatal — fall through to the original selection.
347
+ }
348
+ return selected;
349
+ }
303
350
  /**
304
351
  * Try the credentials-store first (with `preferLabel` when pinned), then fall
305
352
  * back to the 6-tier `resolveCredentials()` chain. Returns `null` only when
@@ -336,6 +383,8 @@ async function resolveCredentialForRole(provider, credentialLabel, projectRoot)
336
383
  apiKey: stored.accessToken,
337
384
  source: 'cred-file',
338
385
  authType: wireAuthType,
386
+ // T12081: preserve the stored endpoint (Ollama/LM Studio/vLLM/…).
387
+ baseUrl: stored.baseUrl ?? null,
339
388
  },
340
389
  usedLabel: stored.label,
341
390
  };
@@ -361,6 +410,8 @@ async function resolveCredentialForRole(provider, credentialLabel, projectRoot)
361
410
  apiKey: picked.accessToken,
362
411
  source: 'cred-file',
363
412
  authType: wireAuthType,
413
+ // T12081: preserve the stored endpoint (Ollama/LM Studio/vLLM/…).
414
+ baseUrl: picked.baseUrl ?? null,
364
415
  },
365
416
  usedLabel: picked.label,
366
417
  };
@@ -374,6 +425,35 @@ async function resolveCredentialForRole(provider, credentialLabel, projectRoot)
374
425
  if (cred.apiKey) {
375
426
  return { credential: cred, usedLabel: undefined };
376
427
  }
428
+ // T12082: a keyless local daemon has no credential to find, and demanding
429
+ // one is what kept it unusable.
430
+ //
431
+ // Every caller of this resolver gates on `credential != null`, so the
432
+ // selector could admit a live Ollama, score it, and pick it — and then the
433
+ // call died one step later with "no usable credential. Run 'cleo llm login'
434
+ // … to authenticate", advice that is meaningless for a server that accepts
435
+ // any bearer token. The provider profile already documents the empty-string
436
+ // placeholder; this is where that placeholder has to be produced.
437
+ //
438
+ // Synthesised ONLY when the daemon actually answers, so this never invents a
439
+ // credential for a provider that is not there.
440
+ if (provider === 'ollama') {
441
+ const local = await detectLocalInference();
442
+ if (local !== null && local.name === 'ollama') {
443
+ return {
444
+ credential: {
445
+ provider,
446
+ apiKey: LOCAL_PLACEHOLDER_TOKEN,
447
+ source: 'local-daemon',
448
+ authType: 'api_key',
449
+ // ROOT url, not the `/v1` form: `deriveApiWire('ollama')` selects the
450
+ // NATIVE transport, which appends `/api/chat` itself.
451
+ baseUrl: local.baseUrl,
452
+ },
453
+ usedLabel: undefined,
454
+ };
455
+ }
456
+ }
377
457
  return { credential: null, usedLabel: undefined };
378
458
  }
379
459
  /**
@@ -434,7 +514,13 @@ export async function resolveLLMForRole(role, opts) {
434
514
  // `projectRoot` is threaded to tier 7 (cross-provider selector) for any
435
515
  // credential resolution that may need the project context (DHQ-081 · T11978).
436
516
  const llmBlock = readLlmBlock(config);
437
- const { provider, model, credentialLabel, source } = await selectProviderModel(llmBlock, role, opts?.systemKey, opts?.profileOverride, projectRoot);
517
+ const selected = await selectProviderModel(llmBlock, role, opts?.systemKey, opts?.profileOverride, projectRoot);
518
+ // T12082: honour caller-supplied exclusions. A provider is excluded only
519
+ // because it already failed this very call, so a config pin naming it is no
520
+ // longer the best answer — re-run the provisioning-aware selection without
521
+ // it. Without this, one broken provider takes down the role even when other
522
+ // credentials (and a live local daemon) are sitting right there.
523
+ const { provider, model, credentialLabel, source } = await applyProviderExclusions(selected, role, projectRoot, opts?.excludeProviders);
438
524
  // Step 3 — resolve credential.
439
525
  const { credential, usedLabel } = await resolveCredentialForRole(provider, credentialLabel, projectRoot);
440
526
  // Step 4 — construct SDK client if we have a credential.
@@ -483,6 +569,11 @@ export async function resolveLLMForRole(role, opts) {
483
569
  provider: credential.provider,
484
570
  source: credential.source,
485
571
  authType: wireAuthType,
572
+ // T12081: carry the credential's OWN endpoint. Without it a consumer
573
+ // building a transport cannot tell that this credential targets a local
574
+ // or proxied host, and falls back to the provider's public API — which
575
+ // rejected every Ollama / LM Studio / vLLM / OpenRouter credential 401.
576
+ baseUrl: credential.baseUrl ?? null,
486
577
  };
487
578
  sealedCredential = makeSealedCredential({
488
579
  provider: credential.provider,
@@ -1 +1 @@
1
- {"version":3,"file":"role-resolver.js","sourceRoot":"","sources":["../../src/llm/role-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;GA0BG;AAmBH,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAC3C,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAC9C,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAC;AACtD,OAAO,EAAyB,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC7E,OAAO,EAAE,oBAAoB,EAAE,yBAAyB,EAAE,MAAM,wBAAwB,CAAC;AACzF,OAAO,EAAE,qBAAqB,EAAE,MAAM,8BAA8B,CAAC;AACrE,OAAO,EAAE,uBAAuB,EAAE,MAAM,qBAAqB,CAAC;AAC9D,OAAO,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC5E,OAAO,EAAE,0BAA0B,EAAE,MAAM,6BAA6B,CAAC;AACzE,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAGhF;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,uBAAuB,EAAE,CAAC;AAEnC;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAmB,WAAW,CAAC;AAEtE;;;;;;;;;;;;;;GAcG;AACH,MAAM,CAAC,MAAM,sBAAsB,GAAG,mBAAmB,CAAC;AA+G1D;;;GAGG;AACH,SAAS,YAAY,CAAC,MAA8B;IAClD,OAAO,MAAM,EAAE,GAAG,CAAC;AACrB,CAAC;AAUD;;;;;;;;;GASG;AACH,SAAS,mBAAmB,CAC1B,GAA0B,EAC1B,IAAwB,EACxB,MAAwB;IAExB,IAAI,CAAC,IAAI;QAAE,OAAO,SAAS,CAAC;IAC5B,MAAM,OAAO,GAAiC,GAAG,EAAE,QAAQ,EAAE,CAAC,IAAI,CAAC,CAAC;IACpE,IAAI,CAAC,OAAO,EAAE,QAAQ,IAAI,CAAC,OAAO,CAAC,KAAK;QAAE,OAAO,SAAS,CAAC;IAC3D,OAAO;QACL,QAAQ,EAAE,OAAO,CAAC,QAA0B;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,eAAe,EAAE,OAAO,CAAC,eAAe;QACxC,MAAM;KACP,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,oBAAoB,CAC3B,GAA0B,EAC1B,SAA6B;IAE7B,IAAI,CAAC,SAAS;QAAE,OAAO,SAAS,CAAC;IACjC,MAAM,OAAO,GAA8B,GAAG,EAAE,OAAO,EAAE,CAAC,SAAS,CAAC,CAAC;IACrE,IAAI,CAAC,OAAO;QAAE,OAAO,SAAS,CAAC;IAE/B,qEAAqE;IACrE,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,EAAE,OAAO,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;IAC3E,IAAI,cAAc,EAAE,CAAC;QACnB,2DAA2D;QAC3D,OAAO;YACL,GAAG,cAAc;YACjB,eAAe,EAAE,OAAO,CAAC,eAAe,IAAI,cAAc,CAAC,eAAe;SAC3E,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,IAAI,OAAO,CAAC,QAAQ,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QACtC,OAAO;YACL,QAAQ,EAAE,OAAO,CAAC,QAA0B;YAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;YACpB,eAAe,EAAE,OAAO,CAAC,eAAe;YACxC,MAAM,EAAE,QAAQ;SACjB,CAAC;IACJ,CAAC;IAED,2DAA2D;IAC3D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;GAeG;AACH,SAAS,8BAA8B,CACrC,GAA0B,EAC1B,SAA6B;IAE7B,MAAM,QAAQ,GAAG,0BAA0B,CAAC,SAAS,CAAC,CAAC;IACvD,IAAI,CAAC,QAAQ;QAAE,OAAO,SAAS,CAAC;IAEhC,qEAAqE;IACrE,MAAM,OAAO,GAAG,mBAAmB,CAAC,GAAG,EAAE,QAAQ,CAAC,OAAO,EAAE,oBAAoB,CAAC,CAAC;IACjF,IAAI,OAAO,EAAE,CAAC;QACZ,OAAO;YACL,GAAG,OAAO;YACV,eAAe,EAAE,QAAQ,CAAC,eAAe,IAAI,OAAO,CAAC,eAAe;SACrE,CAAC;IACJ,CAAC;IAED,iDAAiD;IACjD,IAAI,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,KAAK,EAAE,CAAC;QACxC,OAAO;YACL,QAAQ,EAAE,QAAQ,CAAC,QAA0B;YAC7C,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,eAAe,EAAE,QAAQ,CAAC,eAAe;YACzC,MAAM,EAAE,oBAAoB;SAC7B,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,2DAA2D;IAC3D,OAAO,SAAS,CAAC;AACnB,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,KAAK,UAAU,mBAAmB,CAChC,GAA0B,EAC1B,IAAc,EACd,SAAkB,EAClB,eAAwB,EACxB,WAAoB;IAEpB,MAAM,SAAS,GAA8B,GAAG,EAAE,KAAK,EAAE,CAAC,IAAI,CAAC,CAAC;IAEhE,0EAA0E;IAC1E,yEAAyE;IACzE,8EAA8E;IAC9E,iDAAiD;IACjD,MAAM,aAAa,GAAG,mBAAmB,CAAC,GAAG,EAAE,eAAe,EAAE,SAAS,CAAC,CAAC;IAC3E,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,yDAAyD;IACzD,MAAM,WAAW,GAAG,mBAAmB,CAAC,GAAG,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IAC5E,IAAI,WAAW;QAAE,OAAO,WAAW,CAAC;IAEpC,mEAAmE;IACnE,IAAI,SAAS,EAAE,QAAQ,IAAI,SAAS,CAAC,KAAK,EAAE,CAAC;QAC3C,OAAO;YACL,QAAQ,EAAE,SAAS,CAAC,QAA0B;YAC9C,KAAK,EAAE,SAAS,CAAC,KAAK;YACtB,eAAe,EAAE,SAAS,CAAC,eAAe;YAC1C,MAAM,EAAE,MAAM;SACf,CAAC;IACJ,CAAC;IAED,6EAA6E;IAC7E,MAAM,aAAa,GAAG,oBAAoB,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IAC3D,IAAI,aAAa;QAAE,OAAO,aAAa,CAAC;IAExC,8BAA8B;IAC9B,MAAM,YAAY,GAAiC,GAAG,EAAE,OAAO,CAAC;IAChE,IAAI,YAAY,EAAE,QAAQ,IAAI,YAAY,CAAC,KAAK,EAAE,CAAC;QACjD,OAAO;YACL,QAAQ,EAAE,YAAY,CAAC,QAA0B;YACjD,KAAK,EAAE,YAAY,CAAC,KAAK;YACzB,eAAe,EAAE,SAAS;YAC1B,MAAM,EAAE,SAAS;SAClB,CAAC;IACJ,CAAC;IAED,4EAA4E;IAC5E,MAAM,cAAc,GAAG,mBAAmB,CAAC,GAAG,EAAE,GAAG,EAAE,cAAc,EAAE,iBAAiB,CAAC,CAAC;IACxF,IAAI,cAAc;QAAE,OAAO,cAAc,CAAC;IAE1C,2EAA2E;IAC3E,0EAA0E;IAC1E,wEAAwE;IACxE,MAAM,iBAAiB,GAAG,8BAA8B,CAAC,GAAG,EAAE,SAAS,CAAC,CAAC;IACzE,IAAI,iBAAiB;QAAE,OAAO,iBAAiB,CAAC;IAEhD,qEAAqE;IACrE,EAAE;IACF,0EAA0E;IAC1E,oEAAoE;IACpE,wEAAwE;IACxE,EAAE;IACF,0EAA0E;IAC1E,+EAA+E;IAC/E,EAAE;IACF,8EAA8E;IAC9E,wEAAwE;IACxE,yEAAyE;IACzE,uDAAuD;IACvD,IAAI,CAAC;QACH,MAAM,mBAAmB,GAAG,MAAM,qBAAqB,CAAC,IAAI,EAAE;YAC5D,WAAW,EAAE,WAAW,IAAI,EAAE;SAC/B,CAAC,CAAC;QACH,IAAI,mBAAmB,KAAK,IAAI,EAAE,CAAC;YACjC,OAAO,mBAAmB,CAAC;QAC7B,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,+DAA+D;IACjE,CAAC;IAED,4EAA4E;IAC5E,OAAO;QACL,QAAQ,EAAE,0BAA0B;QACpC,KAAK,EAAE,uBAAuB;QAC9B,eAAe,EAAE,SAAS;QAC1B,MAAM,EAAE,mBAAmB;KAC5B,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,KAAK,UAAU,wBAAwB,CACrC,QAAwB,EACxB,eAAmC,EACnC,WAAmB;IAEnB,4EAA4E;IAC5E,2EAA2E;IAC3E,uEAAuE;IACvE,wEAAwE;IACxE,6EAA6E;IAC7E,iEAAiE;IACjE,IAAI,CAAC;QACH,MAAM,IAAI,cAAc,CAAC,QAAQ,CAAC,CAAC,mBAAmB,EAAE,CAAC;IAC3D,CAAC;IAAC,MAAM,CAAC;QACP,sEAAsE;IACxE,CAAC;IAED,8EAA8E;IAC9E,IAAI,eAAe,EAAE,CAAC;QACpB,MAAM,MAAM,GAAG,MAAM,oBAAoB,CAAC,QAAQ,EAAE,eAAe,CAAC,CAAC;QACrE,uEAAuE;QACvE,wEAAwE;QACxE,sEAAsE;QACtE,kEAAkE;QAClE,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACvE,OAAO;gBACL,UAAU,EAAE;oBACV,QAAQ;oBACR,MAAM,EAAE,MAAM,CAAC,WAAW;oBAC1B,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,YAAY;iBACvB;gBACD,SAAS,EAAE,MAAM,CAAC,KAAK;aACxB,CAAC;QACJ,CAAC;QACD,uEAAuE;QACvE,mEAAmE;QACnE,oEAAoE;QACpE,wEAAwE;IAC1E,CAAC;SAAM,CAAC;QACN,2EAA2E;QAC3E,0EAA0E;QAC1E,yEAAyE;QACzE,uEAAuE;QACvE,MAAM,MAAM,GAAG,MAAM,yBAAyB,CAAC,QAAQ,EAAE;YACvD,QAAQ,EAAE,sBAAsB;SACjC,CAAC,CAAC;QACH,IAAI,MAAM,EAAE,WAAW,EAAE,CAAC;YACxB,MAAM,YAAY,GAAG,MAAM,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;YACvE,OAAO;gBACL,UAAU,EAAE;oBACV,QAAQ;oBACR,MAAM,EAAE,MAAM,CAAC,WAAW;oBAC1B,MAAM,EAAE,WAAW;oBACnB,QAAQ,EAAE,YAAY;iBACvB;gBACD,SAAS,EAAE,MAAM,CAAC,KAAK;aACxB,CAAC;QACJ,CAAC;IACH,CAAC;IAED,sEAAsE;IACtE,uEAAuE;IACvE,0EAA0E;IAC1E,8EAA8E;IAC9E,MAAM,IAAI,GAAG,kBAAkB,CAAC,QAAQ,EAAE,EAAE,WAAW,EAAE,CAAC,CAAC;IAC3D,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;QAChB,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;IACpD,CAAC;IACD,OAAO,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,SAAS,EAAE,CAAC;AACpD,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoCG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACrC,IAAc,EACd,IAA+B;IAE/B,MAAM,WAAW,GAAG,YAAY,CAAC,IAAI,EAAE,WAAW,CAAC,CAAC;IAEpD,qEAAqE;IACrE,2EAA2E;IAC3E,wEAAwE;IACxE,qEAAqE;IACrE,IAAI,MAA8B,CAAC;IACnC,IAAI,CAAC;QACH,MAAM,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,cAAc,CAAC,CAAC;QACpD,MAAM,GAAG,MAAM,UAAU,CAAC,WAAW,CAAC,CAAC;IACzC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,GAAG,SAAS,CAAC;IACrB,CAAC;IAED,+EAA+E;IAC/E,qEAAqE;IACrE,6EAA6E;IAC7E,gEAAgE;IAChE,wEAAwE;IACxE,8EAA8E;IAC9E,MAAM,QAAQ,GAAG,YAAY,CAAC,MAAM,CAAC,CAAC;IACtC,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,eAAe,EAAE,MAAM,EAAE,GAAG,MAAM,mBAAmB,CAC5E,QAAQ,EACR,IAAI,EACJ,IAAI,EAAE,SAAS,EACf,IAAI,EAAE,eAAe,EACrB,WAAW,CACZ,CAAC;IAEF,+BAA+B;IAC/B,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,wBAAwB,CAC9D,QAAQ,EACR,eAAe,EACf,WAAW,CACZ,CAAC;IAEF,yDAAyD;IACzD,EAAE;IACF,+DAA+D;IAC/D,yEAAyE;IACzE,8EAA8E;IAC9E,8EAA8E;IAC9E,gEAAgE;IAChE,8DAA8D;IAC9D,6CAA6C;IAC7C,IAAI,MAAM,GAAqB,IAAI,CAAC;IACpC,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;QACvB,IAAI,CAAC;YACH,IAAI,QAAQ,KAAK,WAAW,EAAE,CAAC;gBAC7B,MAAM,GAAG,oBAAoB,CAAC,UAAU,CAAC,CAAC;YAC5C,CAAC;YACD,mEAAmE;YACnE,6EAA6E;YAC7E,wEAAwE;QAC1E,CAAC;QAAC,MAAM,CAAC;YACP,kEAAkE;YAClE,0DAA0D;YAC1D,qDAAqD;YACrD,MAAM,GAAG,IAAI,CAAC;QAChB,CAAC;IACH,CAAC;IAED,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,gEAAgE;IAChE,MAAM,QAAQ,GAA2C,UAAU,EAAE,QAAQ,IAAI,IAAI,CAAC;IACtF,MAAM,IAAI,GAAG,aAAa,CAAC,QAAQ,EAAE,QAAQ,CAAC,CAAC;IAE/C,8EAA8E;IAC9E,sEAAsE;IACtE,0EAA0E;IAC1E,wEAAwE;IACxE,oEAAoE;IACpE,IAAI,kBAAkB,GAAkC,IAAI,CAAC;IAC7D,IAAI,gBAAgB,GAA4B,IAAI,CAAC;IACrD,IAAI,UAAU,EAAE,MAAM,EAAE,CAAC;QACvB,MAAM,KAAK,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,MAAM,YAAY,GAAwB,UAAU,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,SAAS,CAAC;QAChG,kBAAkB,GAAG;YACnB,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,MAAM,EAAE,UAAU,CAAC,MAAM;YACzB,QAAQ,EAAE,YAAY;SACvB,CAAC;QACF,gBAAgB,GAAG,oBAAoB,CAAC;YACtC,QAAQ,EAAE,UAAU,CAAC,QAAQ;YAC7B,OAAO,EAAE,SAAS,IAAI,SAAS;YAC/B,0EAA0E;YAC1E,uEAAuE;YACvE,mEAAmE;YACnE,YAAY,EAAE,YAAY,CAAC,KAAK,EAAE,YAAY,CAAC;YAC/C,wEAAwE;YACxE,yEAAyE;YACzE,wEAAwE;YACxE,YAAY,EAAE,GAAG,EAAE,CAAC,KAAK;SAC1B,CAAC,CAAC;IACL,CAAC;IAED,OAAO;QACL,QAAQ;QACR,KAAK;QACL,MAAM;QACN,UAAU,EAAE,kBAAkB;QAC9B,gBAAgB;QAChB,MAAM;QACN,eAAe,EAAE,SAAS;QAC1B,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,OAAO,EAAE,IAAI,CAAC,OAAO;QACrB,QAAQ;KACT,CAAC;AACJ,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AACH,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,IAAc,EACd,IAA+B;IAK/B,IAAI,GAAgB,CAAC;IACrB,IAAI,CAAC;QACH,GAAG,GAAG,MAAM,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;IAC5C,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IACD,IAAI,GAAG,CAAC,QAAQ,KAAK,WAAW;QAAE,OAAO,IAAI,CAAC;IAC9C,4EAA4E;IAC5E,wEAAwE;IACxE,yEAAyE;IACzE,2EAA2E;IAC3E,4EAA4E;IAC5E,qCAAqC;IACrC,IAAI,CAAC,GAAG,CAAC,gBAAgB,IAAI,CAAC,GAAG,CAAC,MAAM;QAAE,OAAO,IAAI,CAAC;IACtD,6EAA6E;IAC7E,2EAA2E;IAC3E,uEAAuE;IACvE,6EAA6E;IAC7E,yBAAyB;IACzB,OAAO;QACL,MAAM,EAAE,GAAG,CAAC,MAAmB;QAC/B,KAAK,EAAE,GAAG,CAAC,KAAK;KACjB,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"role-resolver.js","sourceRoot":"","sources":["../../src/llm/role-resolver.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"system-resolver.d.ts","sourceRoot":"","sources":["../../src/llm/system-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAC1B,QAAQ,EAER,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,oBAAoB,CAAC;AAI5B;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD;;;;;;OAMG;IACH,MAAM,EAAE,mBAAmB,CAAC;IAE5B;;;;;OAKG;IACH,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC/B;AA4ID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,mBAAmB,EAC3B,IAAI,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAuE/B"}
1
+ {"version":3,"file":"system-resolver.d.ts","sourceRoot":"","sources":["../../src/llm/system-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAEH,OAAO,KAAK,EACV,0BAA0B,EAC1B,QAAQ,EAER,mBAAmB,EACpB,MAAM,qBAAqB,CAAC;AAI7B,OAAO,EAEL,KAAK,WAAW,EAEjB,MAAM,oBAAoB,CAAC;AAI5B;;;;;;;;GAQG;AACH,MAAM,WAAW,oBAAqB,SAAQ,WAAW;IACvD;;;;;;OAMG;IACH,MAAM,EAAE,mBAAmB,CAAC;IAE5B;;;;;OAKG;IACH,YAAY,EAAE,QAAQ,GAAG,IAAI,CAAC;CAC/B;AA4ID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,wBAAsB,mBAAmB,CACvC,MAAM,EAAE,mBAAmB,EAC3B,IAAI,CAAC,EAAE,0BAA0B,GAChC,OAAO,CAAC,oBAAoB,CAAC,CAyE/B"}
@@ -235,6 +235,8 @@ export async function resolveLLMForSystem(system, opts) {
235
235
  // T11759: pin a named profile (e.g. a `.cantbook` stage's `profile:`) as
236
236
  // the highest-priority resolution tier. Absent/incomplete → falls through.
237
237
  ...(opts?.profile !== undefined ? { profileOverride: opts.profile } : {}),
238
+ // T12084: carry exclusions through to the provisioning-aware tier.
239
+ ...(opts?.excludeProviders !== undefined ? { excludeProviders: opts.excludeProviders } : {}),
238
240
  });
239
241
  }
240
242
  catch (err) {
@@ -1 +1 @@
1
- {"version":3,"file":"system-resolver.js","sourceRoot":"","sources":["../../src/llm/system-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EACL,0BAA0B,EAE1B,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC;AA8BhD,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,KAA0B;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,UAAU,CACjB,KAA0B,EAC1B,IAAiC;IAEjC,IAAI,IAAI,EAAE,YAAY;QAAE,OAAO,IAAI,CAAC,YAAY,CAAC;IACjD,IAAI,YAAY,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,4EAA4E;IAC5E,kEAAkE;IAClE,IAAI,IAAI,EAAE,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CACV,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,EACzC,qFAAqF,CACtF,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,KAAK,UAAU,qBAAqB,CAAC,QAAqB;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QAC5C,uEAAuE;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,gFAAgF;QAChF,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACtE,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;QAE9E,2EAA2E;QAC3E,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,CAAC,KAAK,CACV,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACzF,8EAA8E,CAC/E,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,KAAK,EAAE,EAAE,EAAE,CAAC;YACd,uEAAuE;YACvE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,iFAAiF;QACjF,2EAA2E;QAC3E,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,OAAO,EAAE,YAAY,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;YACrE,MAAM,CAAC,KAAK,CACV,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,YAAY,EAAE,EAC/E,iFAAiF,CAClF,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;QACtD,CAAC;QAED,qEAAqE;QACrE,6EAA6E;QAC7E,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EACzD,iFAAiF,CAClF,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAA2B,EAC3B,IAAiC;IAEjC,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE9C,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,kDAAkD;IAClD,MAAM,iBAAiB,GAAa,YAAY,IAAI,eAAe,CAAC;IAEpE,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,EAAE;IACF,6EAA6E;IAC7E,0DAA0D;IAC1D,+EAA+E;IAC/E,0EAA0E;IAC1E,MAAM,SAAS,GACb,IAAI,EAAE,SAAS,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEjE,IAAI,IAAiB,CAAC;IACtB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,EAAE;YAChD,WAAW,EAAE,IAAI,EAAE,WAAW;YAC9B,SAAS;YACT,yEAAyE;YACzE,2EAA2E;YAC3E,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC1E,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wEAAwE;QACxE,kCAAkC;QAClC,MAAM,CAAC,IAAI,CACT;YACE,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACrD,MAAM;YACN,IAAI,EAAE,iBAAiB;SACxB,EACD,2FAA2F,CAC5F,CAAC;QACF,IAAI,GAAG;YACL,QAAQ,EAAE,0BAA0B;YACpC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;YAChB,yEAAyE;YACzE,wCAAwC;YACxC,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,mBAAmB;YAC3B,mEAAmE;YACnE,yEAAyE;YACzE,0DAA0D;YAC1D,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,QAAQ,GAAG,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAErF,OAAO;QACL,GAAG,QAAQ;QACX,MAAM;QACN,YAAY;KACb,CAAC;AACJ,CAAC"}
1
+ {"version":3,"file":"system-resolver.js","sourceRoot":"","sources":["../../src/llm/system-resolver.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AAQH,OAAO,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AACtD,OAAO,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AACzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,4BAA4B,CAAC;AAClE,OAAO,EACL,0BAA0B,EAE1B,iBAAiB,GAClB,MAAM,oBAAoB,CAAC;AAE5B,MAAM,MAAM,GAAG,SAAS,CAAC,qBAAqB,CAAC,CAAC;AA8BhD,8EAA8E;AAC9E,mBAAmB;AACnB,8EAA8E;AAE9E;;;;;;;;;GASG;AACH,SAAS,YAAY,CAAC,KAA0B;IAC9C,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC;AAC9E,CAAC;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,SAAS,UAAU,CACjB,KAA0B,EAC1B,IAAiC;IAEjC,IAAI,IAAI,EAAE,YAAY;QAAE,OAAO,IAAI,CAAC,YAAY,CAAC;IACjD,IAAI,YAAY,CAAC,KAAK,CAAC;QAAE,OAAO,KAAK,CAAC,EAAE,CAAC;IACzC,MAAM,MAAM,GAAG,eAAe,CAAC,KAAK,CAAC,IAAI,IAAI,CAAC;IAC9C,IAAI,MAAM,KAAK,IAAI;QAAE,OAAO,MAAM,CAAC;IACnC,4EAA4E;IAC5E,kEAAkE;IAClE,IAAI,IAAI,EAAE,gBAAgB,KAAK,SAAS,EAAE,CAAC;QACzC,MAAM,QAAQ,GAAG,oBAAoB,CAAC,IAAI,CAAC,gBAAgB,CAAC,CAAC;QAC7D,MAAM,CAAC,KAAK,CACV,EAAE,MAAM,EAAE,KAAK,EAAE,YAAY,EAAE,QAAQ,EAAE,EACzC,qFAAqF,CACtF,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,KAAK,UAAU,qBAAqB,CAAC,QAAqB;IACxD,IAAI,QAAQ,CAAC,MAAM,KAAK,mBAAmB,EAAE,CAAC;QAC5C,uEAAuE;QACvE,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,gFAAgF;QAChF,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,uBAAuB,CAAC,CAAC;QACtE,MAAM,EAAE,qBAAqB,EAAE,GAAG,MAAM,MAAM,CAAC,6BAA6B,CAAC,CAAC;QAE9E,2EAA2E;QAC3E,MAAM,UAAU,GAAG,qBAAqB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,MAAM,KAAK,GAAG,MAAM,mBAAmB,CAAC,UAAU,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE,EAAE,IAAI,KAAK,CAAC,EAAE,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;YAC7C,MAAM,CAAC,KAAK,CACV,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,KAAK,CAAC,EAAE,EAAE,MAAM,EAAE,KAAK,CAAC,MAAM,EAAE,EACzF,8EAA8E,CAC/E,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,EAAE,EAAE,CAAC;QAC1C,CAAC;QACD,IAAI,KAAK,EAAE,EAAE,EAAE,CAAC;YACd,uEAAuE;YACvE,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,iFAAiF;QACjF,2EAA2E;QAC3E,MAAM,EAAE,kBAAkB,EAAE,GAAG,MAAM,MAAM,CAAC,8BAA8B,CAAC,CAAC;QAC5E,MAAM,OAAO,GAAG,MAAM,kBAAkB,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QAC5D,IAAI,OAAO,EAAE,YAAY,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,CAAC,KAAK,EAAE,CAAC;YACrE,MAAM,CAAC,KAAK,CACV,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,EAAE,EAAE,OAAO,CAAC,YAAY,EAAE,EAC/E,iFAAiF,CAClF,CAAC;YACF,OAAO,EAAE,GAAG,QAAQ,EAAE,KAAK,EAAE,OAAO,CAAC,YAAY,EAAE,CAAC;QACtD,CAAC;QAED,qEAAqE;QACrE,6EAA6E;QAC7E,OAAO,QAAQ,CAAC;IAClB,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,MAAM,CAAC,IAAI,CACT,EAAE,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,EACzD,iFAAiF,CAClF,CAAC;QACF,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAED,8EAA8E;AAC9E,aAAa;AACb,8EAA8E;AAE9E;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkDG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACvC,MAA2B,EAC3B,IAAiC;IAEjC,MAAM,YAAY,GAAG,UAAU,CAAC,MAAM,EAAE,IAAI,CAAC,CAAC;IAE9C,6EAA6E;IAC7E,2EAA2E;IAC3E,+EAA+E;IAC/E,4EAA4E;IAC5E,4EAA4E;IAC5E,4EAA4E;IAC5E,kDAAkD;IAClD,MAAM,iBAAiB,GAAa,YAAY,IAAI,eAAe,CAAC;IAEpE,8EAA8E;IAC9E,6EAA6E;IAC7E,6EAA6E;IAC7E,8EAA8E;IAC9E,EAAE;IACF,6EAA6E;IAC7E,0DAA0D;IAC1D,+EAA+E;IAC/E,0EAA0E;IAC1E,MAAM,SAAS,GACb,IAAI,EAAE,SAAS,IAAI,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAEjE,IAAI,IAAiB,CAAC;IACtB,IAAI,CAAC;QACH,IAAI,GAAG,MAAM,iBAAiB,CAAC,iBAAiB,EAAE;YAChD,WAAW,EAAE,IAAI,EAAE,WAAW;YAC9B,SAAS;YACT,yEAAyE;YACzE,2EAA2E;YAC3E,GAAG,CAAC,IAAI,EAAE,OAAO,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACzE,mEAAmE;YACnE,GAAG,CAAC,IAAI,EAAE,gBAAgB,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,gBAAgB,EAAE,IAAI,CAAC,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC7F,CAAC,CAAC;IACL,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,wEAAwE;QACxE,kCAAkC;QAClC,MAAM,CAAC,IAAI,CACT;YACE,GAAG,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;YACrD,MAAM;YACN,IAAI,EAAE,iBAAiB;SACxB,EACD,2FAA2F,CAC5F,CAAC;QACF,IAAI,GAAG;YACL,QAAQ,EAAE,0BAA0B;YACpC,KAAK,EAAE,SAAS;YAChB,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,IAAI;YAChB,yEAAyE;YACzE,wCAAwC;YACxC,gBAAgB,EAAE,IAAI;YACtB,MAAM,EAAE,mBAAmB;YAC3B,mEAAmE;YACnE,yEAAyE;YACzE,0DAA0D;YAC1D,OAAO,EAAE,oBAAoB;YAC7B,OAAO,EAAE,IAAI;YACb,QAAQ,EAAE,IAAI;SACf,CAAC;IACJ,CAAC;IAED,yEAAyE;IACzE,gEAAgE;IAChE,MAAM,QAAQ,GAAG,IAAI,EAAE,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,MAAM,qBAAqB,CAAC,IAAI,CAAC,CAAC;IAErF,OAAO;QACL,GAAG,QAAQ;QACX,MAAM;QACN,YAAY;KACb,CAAC;AACJ,CAAC"}
@@ -69,6 +69,96 @@ export declare function rebuildFts5Index(nativeDb: DatabaseSync): void;
69
69
  * @task T5130
70
70
  */
71
71
  export declare function searchBrain(projectRoot: string, query: string, options?: BrainSearchOptions): Promise<BrainMemorySearchResult>;
72
+ /**
73
+ * Escape special FTS5 characters in query string.
74
+ *
75
+ * Wraps each meaningful token in double quotes and joins with OR so that
76
+ * partial matches are returned even when some tokens are not indexable
77
+ * (e.g. task prefixes like "EPIC:", em-dashes "—", or short stop-words).
78
+ *
79
+ * Strategy:
80
+ * 1. Split on whitespace.
81
+ * 2. Keep only tokens that contain at least one word character (\w), which
82
+ * ensures punctuation-only tokens (em dashes, colons standalone, etc.)
83
+ * are dropped before they zero-out the entire result set.
84
+ * 3. Deduplicate case-insensitively.
85
+ * 4. Join with OR so the query broadens rather than requiring ALL tokens.
86
+ *
87
+ * Using AND (implicit FTS5 join) caused empty results whenever a task title
88
+ * contained non-word tokens such as em dashes ("—") or trailing colons
89
+ * ("EPIC:"), because FTS5's default tokenizer cannot index them and the
90
+ * AND semantics then guaranteed zero matches for the whole query. (T553 bug fix)
91
+ */
92
+ export declare function escapeFts5Query(query: string): string;
93
+ /**
94
+ * The two MATCH expressions used by the conjunctive-first retrieval strategy.
95
+ *
96
+ * @task T12073
97
+ */
98
+ export interface Fts5QueryPair {
99
+ /** All terms required — high precision, may return nothing. */
100
+ readonly and: string;
101
+ /** Any term matches — high recall, used only as a fallback. */
102
+ readonly or: string;
103
+ /** Number of usable terms extracted from the query. */
104
+ readonly termCount: number;
105
+ }
106
+ /**
107
+ * Build the AND and OR MATCH expressions for a natural-language query.
108
+ *
109
+ * ## Why both, and why prefixes (T12073)
110
+ *
111
+ * The previous builder emitted `"tok1" OR "tok2"` — quoted terms joined by OR.
112
+ * Measured against the live 6,985-observation corpus, that has two failure
113
+ * modes that together make recall useless for anything but an exact rare token:
114
+ *
115
+ * **Quoted terms are exact, so morphological variants are invisible.** A search
116
+ * for `orphan` matched 113 documents; `orphan*` matched 189. Seventy-six
117
+ * documents saying "orphaned" or "orphans" could not be found by searching for
118
+ * "orphan". SQLite FTS5 has no stemmer on the `unicode61` tokenizer, so a
119
+ * prefix wildcard is the available substitute — and it is a good one, because
120
+ * it costs nothing on a prefix-indexed b-tree.
121
+ *
122
+ * **Pure OR plus BM25 ranks by term rarity, not by term coverage.** A short
123
+ * document matching ONE query term outranks a long one matching ALL of them,
124
+ * because BM25 normalises for length. On this corpus that is catastrophic:
125
+ * 30% of observations are sub-60-character auto-capture stubs, so the
126
+ * shortest, emptiest records win. Searching `nexus_symbols_fts orphan` under
127
+ * the old builder returned *"Consolidated: change observations (5 entries)"*
128
+ * as the top hit — a record with no content at all — while the conjunctive
129
+ * form returns only documents about orphans in nexus.
130
+ *
131
+ * So: require all terms first, and fall back to ANY only when the conjunction
132
+ * finds nothing. That preserves the recall the OR form was introduced for
133
+ * (T553: non-word tokens like em dashes zeroing out an implicit-AND query)
134
+ * without letting it dominate the common case.
135
+ *
136
+ * @param query - the raw user query.
137
+ * @returns AND/OR MATCH expressions and the usable term count.
138
+ *
139
+ * @example
140
+ * ```ts
141
+ * const q = buildFts5Queries('nexus_symbols_fts orphan');
142
+ * // q.and === 'nexus_symbols_fts* AND orphan*'
143
+ * // q.or === 'nexus_symbols_fts* OR orphan*'
144
+ * ```
145
+ *
146
+ * @task T553
147
+ * @task T12073
148
+ */
149
+ export declare function buildFts5Queries(query: string): Fts5QueryPair;
150
+ /**
151
+ * Run an FTS5-backed query conjunctively, falling back to disjunctive.
152
+ *
153
+ * Single-term queries skip the fallback entirely (AND and OR are identical).
154
+ *
155
+ * @param run - executes one MATCH expression and returns its rows.
156
+ * @param queries - the pair from {@link buildFts5Queries}.
157
+ * @returns conjunctive rows when non-empty, else disjunctive rows.
158
+ *
159
+ * @task T12073
160
+ */
161
+ export declare function matchConjunctiveFirst<T>(run: (matchExpr: string) => T[], queries: Fts5QueryPair): T[];
72
162
  /**
73
163
  * Reset the cached FTS5 availability flag.
74
164
  * Used in tests to force re-detection.
@@ -89,6 +179,25 @@ export interface RrfHit {
89
179
  title: string;
90
180
  text: string;
91
181
  }
182
+ /**
183
+ * Round-robin interleave several independently-ranked lists.
184
+ *
185
+ * Takes rank 1 from every list, then rank 2 from every list, and so on, so a
186
+ * downstream consumer that scores by array position does not systematically
187
+ * favour whichever list happened to be concatenated first.
188
+ *
189
+ * @param lists - per-source lists, each already ordered best-first.
190
+ * @returns a single list preserving each source's internal order.
191
+ *
192
+ * @example
193
+ * ```ts
194
+ * interleaveRanked([['a1', 'a2'], ['b1'], ['c1', 'c2', 'c3']]);
195
+ * // ['a1', 'b1', 'c1', 'a2', 'c2', 'c3']
196
+ * ```
197
+ *
198
+ * @task T12073
199
+ */
200
+ export declare function interleaveRanked<T>(lists: ReadonlyArray<readonly T[]>): T[];
92
201
  /** Fused result produced by reciprocalRankFusion. */
93
202
  export interface RrfResult {
94
203
  id: string;
@@ -1 +1 @@
1
- {"version":3,"file":"brain-search.d.ts","sourceRoot":"","sources":["../../src/memory/brain-search.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"brain-search.d.ts","sourceRoot":"","sources":["../../src/memory/brain-search.ts"],"names":[],"mappings":"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"}