@cat-factory/agents 0.44.1 → 0.46.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.
package/dist/index.d.ts CHANGED
@@ -37,7 +37,7 @@ export { type RenderedFile, coerceBlueprintService, moduleSlug, canonicalBluepri
37
37
  export { runRepoOps } from './repo-ops/run.js';
38
38
  export { blueprintPostOp, specPostOp } from './repo-ops/builtin.js';
39
39
  export { coerceInitiativePlan, canonicalInitiativeJson, hashInitiative, initiativeContentView, renderInitiativeFiles, renderInitiativeTrackerMarkdown, parseInitiativeVersionFile, commitInitiativeTracker, } from './repo-ops/initiative.js';
40
- export { CompositeModelProvider, CliInlineLanguageModel, type InlineCliRequest, type InlineCliResult, type InlineCliRunner, InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, type ModelResolver, type ProviderRegistry, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
40
+ export { CompositeModelProvider, CliInlineLanguageModel, type InlineCliRequest, type InlineCliResult, type InlineCliRunner, InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, type ModelResolver, type ProviderRegistry, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
41
41
  export { FragmentLibraryService, type FragmentLibraryServiceDependencies, } from './fragmentLibrary/FragmentLibraryService.js';
42
42
  export { FragmentSourceService, type FragmentSourceServiceDependencies, type ResolveFragmentInstallationId, } from './fragmentLibrary/FragmentSourceService.js';
43
43
  export { DeterministicFragmentSelector } from './fragmentLibrary/DeterministicFragmentSelector.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -96,7 +96,7 @@ export { coerceInitiativePlan, canonicalInitiativeJson, hashInitiative, initiati
96
96
  // The generic AI provisioning facade: a mixable provider registry + the base,
97
97
  // runtime-neutral resolvers. Optional/heavier backends ship as their own packages
98
98
  // (e.g. @cat-factory/provider-bedrock) and are mixed into a CompositeModelProvider.
99
- export { CompositeModelProvider, CliInlineLanguageModel, InstrumentedModelProvider, catFactoryObservability, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
99
+ export { CompositeModelProvider, CliInlineLanguageModel, InstrumentedModelProvider, catFactoryObservability, VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
100
100
  export { FragmentLibraryService, } from './fragmentLibrary/FragmentLibraryService.js';
101
101
  export { FragmentSourceService, } from './fragmentLibrary/FragmentSourceService.js';
102
102
  export { DeterministicFragmentSelector } from './fragmentLibrary/DeterministicFragmentSelector.js';
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -339,7 +339,7 @@ function seedPlan(draft, inputs) {
339
339
  // Merge OVER any planner-authored spawn (so a planner `agentConfig` etc. survives) — the
340
340
  // decorated fields we own win.
341
341
  const spawn = {
342
- ...(item.spawn ?? {}),
342
+ ...item.spawn,
343
343
  ...(deco.taskType ? { taskType: deco.taskType } : {}),
344
344
  ...(Object.keys(taskTypeFields).length ? { taskTypeFields } : {}),
345
345
  ...(styleFragmentIds.length ? { fragmentIds: styleFragmentIds } : {}),
@@ -1 +1 @@
1
- {"version":3,"file":"preset.js","sourceRoot":"","sources":["../../../src/presets/docs-refresh/preset.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"preset.js","sourceRoot":"","sources":["../../../src/presets/docs-refresh/preset.ts"],"names":[],"mappings":"AAOA,OAAO,EACL,yBAAyB,EACzB,yBAAyB,EACzB,0BAA0B,EAC1B,2BAA2B,EAC3B,YAAY,EACZ,wBAAwB,EACxB,aAAa,GACd,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,mCAAmC,EAAE,cAAc,EAAE,MAAM,+BAA+B,CAAA;AACnG,OAAO,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAA;AACrD,OAAO,EAAE,gBAAgB,EAAE,MAAM,wBAAwB,CAAA;AAEzD,8EAA8E;AAC9E,4FAA4F;AAC5F,8FAA8F;AAC9F,+FAA+F;AAC/F,uFAAuF;AACvF,oFAAoF;AACpF,iEAAiE;AACjE,EAAE;AACF,8FAA8F;AAC9F,6FAA6F;AAC7F,8FAA8F;AAC9F,2FAA2F;AAC3F,8EAA8E;AAC9E,EAAE;AACF,kFAAkF;AAClF,4FAA4F;AAC5F,kGAAkG;AAClG,EAAE;AACF,2EAA2E;AAC3E,8EAA8E;AAE9E,uFAAuF;AACvF,MAAM,CAAC,MAAM,sBAAsB,GAAG,qBAAqB,CAAA;AAE3D,4FAA4F;AAC5F,kGAAkG;AAClG,sEAAsE;AACtE,MAAM,eAAe,GAAG,QAAQ,CAAA;AAChC,MAAM,iBAAiB,GAAG,UAAU,CAAA;AACpC,MAAM,iBAAiB,GAAG,UAAU,CAAA;AACpC,MAAM,uBAAuB,GAAG,gBAAgB,CAAA;AAEhD,iGAAiG;AACjG,MAAM,iBAAiB,GAAG,aAAa,CAAA;AAEvC,+FAA+F;AAC/F,MAAM,eAAe,GAAG,UAAU,CAAA;AAClC,MAAM,eAAe,GAAG,UAAU,CAAA;AAClC,MAAM,kBAAkB,GAAG,aAAa,CAAA;AACxC,MAAM,wBAAwB,GAAG,kBAAkB,CAAA;AACnD,MAAM,qBAAqB,GAAG,gBAAgB,CAAA;AAC9C,MAAM,kBAAkB,GAAG,aAAa,CAAA;AAExC,MAAM,iBAAiB,GAAG,MAAM,CAAA;AAChC,MAAM,oBAAoB,GAAG,eAAe,CAAA;AAC5C,MAAM,0BAA0B,GAAG,qBAAqB,CAAA;AAExD,8EAA8E;AAC9E,kEAAkE;AAClE,8EAA8E;AAE9E,mGAAmG;AACnG,MAAM,sBAAsB,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC,CAAA;AAE3F,MAAM,UAAU,GAA+C;IAC7D,EAAE,EAAE,sBAAsB;IAC1B,YAAY,EAAE;QACZ,KAAK,EAAE,uBAAuB;QAC9B,IAAI,EAAE,yBAAyB;QAC/B,KAAK,EAAE,SAAS;QAChB,WAAW,EACT,sKAAsK;KACzK;IACD,MAAM,EAAE;QACN;YACE,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,0BAA0B;YACjC,IAAI,EAAE,0DAA0D;YAChE,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,cAAc,EAAE;gBACjD,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,wCAAwC,EAAE;gBAC7E,EAAE,KAAK,EAAE,iBAAiB,EAAE,KAAK,EAAE,yBAAyB,EAAE;gBAC9D,EAAE,KAAK,EAAE,uBAAuB,EAAE,KAAK,EAAE,qCAAqC,EAAE;aACjF;YACD,aAAa,EAAE;gBACb,eAAe;gBACf,iBAAiB;gBACjB,iBAAiB;gBACjB,uBAAuB;aACxB;SACF;QACD;YACE,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,yBAAyB;YAChC,IAAI,EAAE,wFAAwF;YAC9F,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE;gBACP,EAAE,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,uBAAuB,EAAE;gBACjD,EAAE,KAAK,EAAE,aAAa,EAAE,KAAK,EAAE,6BAA6B,EAAE;aAC/D;YACD,OAAO,EAAE,MAAM;SAChB;QACD;YACE,GAAG,EAAE,eAAe;YACpB,KAAK,EAAE,WAAW;YAClB,IAAI,EAAE,6DAA6D;YACnE,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,iBAAiB;SAC3B;QACD;YACE,GAAG,EAAE,kBAAkB;YACvB,KAAK,EAAE,oBAAoB;YAC3B,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,oBAAoB;YAC7B,QAAQ,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,iBAAiB,EAAE;SAChE;QACD;YACE,GAAG,EAAE,wBAAwB;YAC7B,KAAK,EAAE,0BAA0B;YACjC,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,0BAA0B;YACnC,QAAQ,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,QAAQ,EAAE,uBAAuB,EAAE;SACtE;QACD;YACE,GAAG,EAAE,WAAW;YAChB,KAAK,EAAE,kBAAkB;YACzB,IAAI,EAAE,oFAAoF;YAC1F,IAAI,EAAE,UAAU;YAChB,WAAW,EAAE,kDAAkD;SAChE;QACD;YACE,GAAG,EAAE,kBAAkB;YACvB,KAAK,EAAE,mDAAmD;YAC1D,IAAI,EAAE,2HAA2H;YACjI,IAAI,EAAE,UAAU;SACjB;QACD;YACE,GAAG,EAAE,qBAAqB;YAC1B,KAAK,EAAE,wBAAwB;YAC/B,IAAI,EAAE,uEAAuE;YAC7E,IAAI,EAAE,gBAAgB;YACtB,OAAO,EAAE,sBAAsB;YAC/B,aAAa,EAAE,CAAC,GAAG,mCAAmC,CAAC;SACxD;KACF;IACD,kBAAkB,EAAE,2BAA2B;IAC/C,gGAAgG;IAChG,SAAS,EAAE,MAAM;IACjB,0FAA0F;IAC1F,kBAAkB,EAAE,KAAK;IACzB,kBAAkB,EAAE,CAAC,GAAG,mCAAmC,CAAC;IAC5D,8FAA8F;IAC9F,iGAAiG;IACjG,iGAAiG;IACjG,8FAA8F;IAC9F,mGAAmG;IACnG,aAAa,EAAE;QACb,MAAM,EAAE;YACN;gBACE,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,aAAa;gBACpB,IAAI,EAAE,qGAAqG;gBAC3G,QAAQ,EAAE,IAAI;aACf;YACD;gBACE,EAAE,EAAE,eAAe;gBACnB,KAAK,EAAE,gBAAgB;gBACvB,IAAI,EAAE,kEAAkE;aACzE;YACD;gBACE,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,8BAA8B;gBACrC,IAAI,EAAE,0FAA0F;aACjG;YACD;gBACE,EAAE,EAAE,iBAAiB;gBACrB,KAAK,EAAE,oBAAoB;gBAC3B,IAAI,EAAE,uFAAuF;aAC9F;YACD;gBACE,EAAE,EAAE,uBAAuB;gBAC3B,KAAK,EAAE,gBAAgB;gBACvB,IAAI,EAAE,2FAA2F;aAClG;SACF;QACD,qBAAqB,EAAE,KAAK;KAC7B;CACF,CAAA;AAED,8EAA8E;AAC9E,2FAA2F;AAC3F,8EAA8E;AAE9E;;;;;GAKG;AACH,MAAM,MAAM,GAAwD,KAAK,EAAE,IAAI,EAAE,EAAE;IACjF,MAAM,MAAM,GAAG,MAAM,gBAAgB,CAAC,IAAI,CAAC,CAAA;IAC3C,OAAO;QACL,aAAa,EAAE,MAAM,CAAC,aAAa;QACnC,CAAC,eAAe,CAAC,EAAE,MAAM,CAAC,QAAQ;QAClC,CAAC,kBAAkB,CAAC,EAAE,MAAM,CAAC,WAAW;QACxC,CAAC,wBAAwB,CAAC,EAAE,MAAM,CAAC,gBAAgB;KACpD,CAAA;AACH,CAAC,CAAA;AAED,8EAA8E;AAC9E,+FAA+F;AAC/F,8EAA8E;AAE9E,oFAAoF;AACpF,SAAS,QAAQ,CAAC,MAA8B,EAAE,GAAW,EAAE,QAAgB;IAC7E,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,CAAA;IACzB,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,QAAQ,CAAA;AAC5E,CAAC;AAED;;;;;GAKG;AACH,SAAS,QAAQ,CAAC,KAAa;IAC7B,OAAO,UAAU,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACvC,CAAC;AAED;;;;;;GAMG;AACH,SAAS,aAAa,CAAC,IAAY,EAAE,KAAkB;IACrD,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC;QACrB,KAAK,CAAC,GAAG,CAAC,IAAI,CAAC,CAAA;QACf,OAAO,IAAI,CAAA;IACb,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;IACjC,MAAM,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,CAAC,CAAA;IACnD,MAAM,GAAG,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;IAC7C,IAAI,CAAC,GAAG,CAAC,CAAA;IACT,IAAI,SAAS,GAAG,GAAG,IAAI,IAAI,CAAC,GAAG,GAAG,EAAE,CAAA;IACpC,OAAO,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC;QAAE,SAAS,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC,GAAG,GAAG,EAAE,CAAA;IAC/D,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAA;IACpB,OAAO,SAAS,CAAA;AAClB,CAAC;AAED;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,WAAoB;IACtE,IAAI,CAAC,WAAW;QAAE,OAAO,SAAS,CAAA;IAClC,MAAM,KAAK,GAAG,aAAa,EAAE,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,UAAU,CAAC,EAAE,UAAU,CAAA;IAC1E,IAAI,CAAC,KAAK;QAAE,OAAO,SAAS,CAAA;IAC5B,MAAM,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,CAAA;IAC3C,IAAI,OAAO,KAAK,CAAC,CAAC;QAAE,OAAO,SAAS,CAAA;IACpC,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,OAAO,CAAC,CAAA;AAC3C,CAAC;AAWD,MAAM,iBAAiB,GAAoC;IACzD,iGAAiG;IACjG,CAAC,iBAAiB,CAAC,EAAE;QACnB,UAAU,EAAE,0BAA0B;QACtC,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,WAAW;QACpB,SAAS,EAAE,WAAW;KACvB;IACD,6FAA6F;IAC7F,gGAAgG;IAChG,gGAAgG;IAChG,uGAAuG;IACvG,iGAAiG;IACjG,qEAAqE;IACrE,CAAC,eAAe,CAAC,EAAE;QACjB,UAAU,EAAE,0BAA0B;QACtC,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,WAAW;QACpB,SAAS,EAAE,MAAM;KAClB;IACD,mGAAmG;IACnG,kGAAkG;IAClG,gGAAgG;IAChG,CAAC,iBAAiB,CAAC,EAAE;QACnB,UAAU,EAAE,0BAA0B;QACtC,QAAQ,EAAE,UAAU;QACpB,OAAO,EAAE,OAAO;QAChB,SAAS,EAAE,cAAc;KAC1B;IACD,mGAAmG;IACnG,8FAA8F;IAC9F,qGAAqG;IACrG,CAAC,iBAAiB,CAAC,EAAE,EAAE,UAAU,EAAE,yBAAyB,EAAE,SAAS,EAAE,MAAM,EAAE;IACjF,kGAAkG;IAClG,qGAAqG;IACrG,8FAA8F;IAC9F,CAAC,uBAAuB,CAAC,EAAE;QACzB,UAAU,EAAE,yBAAyB;QACrC,QAAQ,EAAE,UAAU;QACpB,SAAS,EAAE,MAAM;KAClB;CACF,CAAA;AAED;;;;GAIG;AACH,SAAS,aAAa,CACpB,IAAqB,EACrB,IAAyB,EACzB,MAA8B;IAE9B,QAAQ,IAAI,CAAC,SAAS,EAAE,CAAC;QACvB,KAAK,WAAW;YACd,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,eAAe,EAAE,iBAAiB,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAA;QACzG,KAAK,cAAc;YACjB,OAAO,GAAG,YAAY,CAAC,QAAQ,CAAC,MAAM,EAAE,kBAAkB,EAAE,oBAAoB,CAAC,EAAE,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,KAAK,CAAA;QAC/G,KAAK,MAAM;YACT,OAAO,SAAS,CAAA;IACpB,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,QAAQ,CAAC,KAA0B,EAAE,MAA8B;IAC1E,MAAM,WAAW,GAAG,MAAM,CAAC,kBAAkB,CAAC,KAAK,IAAI,CAAA;IACvD,MAAM,gBAAgB,GAAG,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,qBAAqB,CAAC,CAAC;QACnE,CAAC,CAAE,MAAM,CAAC,qBAAqB,CAAc;QAC7C,CAAC,CAAC,EAAE,CAAA;IACN,oGAAoG;IACpG,MAAM,SAAS,GAAG,IAAI,GAAG,EAAU,CAAA;IAEnC,MAAM,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAuB,EAAE;QAC1D,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAA;QAEtB,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,CAAA;QACjD,MAAM,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,aAAa,CAAC,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,SAAS,CAAA;QAC1E,MAAM,cAAc,GAAG;YACrB,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAClD,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SACtC,CAAA;QACD,MAAM,KAAK,GAAG,eAAe,CAAC,IAAI,CAAC,UAAU,EAAE,WAAW,CAAC,CAAA;QAC3D,yFAAyF;QACzF,+BAA+B;QAC/B,MAAM,KAAK,GAAG;YACZ,GAAG,IAAI,CAAC,KAAK;YACb,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,IAAI,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrD,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,cAAc,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACjE,GAAG,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,gBAAgB,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YACrE,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAC5B,CAAA;QAED,OAAO;YACL,GAAG,IAAI;YACP,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;SAChD,CAAA;IACH,CAAC,CAAC,CAAA;IAEF,OAAO,EAAE,GAAG,KAAK,EAAE,KAAK,EAAE,CAAA;AAC5B,CAAC;AAED,8EAA8E;AAC9E,kGAAkG;AAClG,mGAAmG;AACnG,4DAA4D;AAC5D,8EAA8E;AAE9E,MAAM,gBAAgB,GAAG;IACvB,+FAA+F;IAC/F,+FAA+F;IAC/F,+FAA+F;IAC/F,gGAAgG;IAChG,6CAA6C;IAC7C,EAAE;IACF,4FAA4F;IAC5F,wFAAwF;IACxF,2FAA2F;IAC3F,6DAA6D;IAC7D,kGAAkG;IAClG,6FAA6F;CAC9F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ,MAAM,gBAAgB,GAAG;IACvB,mGAAmG;IACnG,8FAA8F;IAC9F,EAAE;IACF,mGAAmG;IACnG,mGAAmG;IACnG,oGAAoG;IACpG,EAAE;IACF,qCAAqC;IACrC,iGAAiG;IACjG,+FAA+F;IAC/F,gGAAgG;IAChG,0CAA0C;IAC1C,iGAAiG;IACjG,8CAA8C;IAC9C,4FAA4F;IAC5F,iCAAiC;IACjC,EAAE;IACF,oGAAoG;IACpG,+FAA+F;CAChG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ,8EAA8E;AAC9E,+FAA+F;AAC/F,8EAA8E;AAE9E,6EAA6E;AAC7E,MAAM,CAAC,MAAM,mBAAmB,GAAiC;IAC/D,UAAU,EAAE,UAAU;IACtB,MAAM;IACN,QAAQ;IACR,eAAe,EAAE;QACf,oBAAoB,EAAE,gBAAgB;QACtC,oBAAoB,EAAE,gBAAgB;KACvC;CACF,CAAA;AAED;;;;GAIG;AACH,MAAM,UAAU,yBAAyB;IACvC,wBAAwB,CAAC,mBAAmB,CAAC,CAAA;AAC/C,CAAC;AAED,mGAAmG;AACnG,mGAAmG;AACnG,+BAA+B;AAC/B,yBAAyB,EAAE,CAAA"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * The five migration phase ids, keyed by a semantic name so prose/prompts reference a phase by
3
+ * meaning rather than by a bare string. The string values are the ids matched VERBATIM against the
4
+ * planned phases at ingest.
5
+ */
6
+ export declare const MIGRATION_PHASE_IDS: {
7
+ /** Enumerate every directly + transitively affected touchpoint; commit the inventory. */
8
+ readonly blastZone: 'migration-blast-zone';
9
+ /** Pin observable behaviour over the blast zone; close with the confidence case. */
10
+ readonly coverage: 'migration-coverage';
11
+ /** Decide the backwards-compatibility degree and design the migration / cutover path. */
12
+ readonly transitionDesign: 'migration-transition-design';
13
+ /** Execute the swap per the approved design, behaviour suite green throughout. */
14
+ readonly delivery: 'migration-delivery';
15
+ /** Prove parity on the new target, flip defaults, remove the old path. */
16
+ readonly verifyDecommission: 'migration-verify-decommission';
17
+ };
18
+ /** One of the five canonical migration phase ids. */
19
+ export type MigrationPhaseId = (typeof MIGRATION_PHASE_IDS)[keyof typeof MIGRATION_PHASE_IDS];
20
+ /**
21
+ * The phase ids in methodology order — the order the plan (and the preset's `phaseTemplate`) must
22
+ * present them. Consumers that iterate phases (the template builder, the E2E) read this so the
23
+ * order lives in one place too.
24
+ */
25
+ export declare const MIGRATION_PHASE_ID_ORDER: readonly MigrationPhaseId[];
26
+ //# sourceMappingURL=phases.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phases.d.ts","sourceRoot":"","sources":["../../../src/presets/tech-migration/phases.ts"],"names":[],"mappings":"AAiBA;;;;GAIG;AACH,eAAO,MAAM,mBAAmB;IAC9B,yFAAyF;aACzF,SAAS,EAAE,sBAAsB;IACjC,oFAAoF;aACpF,QAAQ,EAAE,oBAAoB;IAC9B,yFAAyF;aACzF,gBAAgB,EAAE,6BAA6B;IAC/C,kFAAkF;aAClF,QAAQ,EAAE,oBAAoB;IAC9B,0EAA0E;aAC1E,kBAAkB,EAAE,+BAA+B;CAC3C,CAAA;AAEV,qDAAqD;AACrD,MAAM,MAAM,gBAAgB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,OAAO,mBAAmB,CAAC,CAAA;AAE7F;;;;GAIG;AACH,eAAO,MAAM,wBAAwB,EAAE,SAAS,gBAAgB,EAM/D,CAAA"}
@@ -0,0 +1,46 @@
1
+ // ---------------------------------------------------------------------------
2
+ // The canonical PHASE IDS of the `preset_tech_migration` initiative preset.
3
+ //
4
+ // A technological migration always runs the same five-phase methodology (blast zone →
5
+ // coverage → transition → delivery → decommission), regardless of the specific from/to
6
+ // technologies. Those phase ids are a CONTRACT shared by four consumers:
7
+ // - the preset's declarative `phaseTemplate` on the wire descriptor (T8),
8
+ // - the methodology prompt pack's planner steering (`prompt-additions.ts`, T5),
9
+ // - the plan post-processor `seedMigrationPlan` (T7), and
10
+ // - the migration E2E (T10).
11
+ // Defined ONCE here so no consumer retypes a phase id. This matters because the generic
12
+ // ingest normalizer matches a planned phase to a template phase by its `id` VERBATIM, so a
13
+ // single typo would silently break the shape enforcement (a "missing required phase" reject
14
+ // or a disallowed extra) rather than fail loudly. See
15
+ // `docs/initiatives/tech-migration-preset-and-mssql-postgres-pilot.md`.
16
+ // ---------------------------------------------------------------------------
17
+ /**
18
+ * The five migration phase ids, keyed by a semantic name so prose/prompts reference a phase by
19
+ * meaning rather than by a bare string. The string values are the ids matched VERBATIM against the
20
+ * planned phases at ingest.
21
+ */
22
+ export const MIGRATION_PHASE_IDS = {
23
+ /** Enumerate every directly + transitively affected touchpoint; commit the inventory. */
24
+ blastZone: 'migration-blast-zone',
25
+ /** Pin observable behaviour over the blast zone; close with the confidence case. */
26
+ coverage: 'migration-coverage',
27
+ /** Decide the backwards-compatibility degree and design the migration / cutover path. */
28
+ transitionDesign: 'migration-transition-design',
29
+ /** Execute the swap per the approved design, behaviour suite green throughout. */
30
+ delivery: 'migration-delivery',
31
+ /** Prove parity on the new target, flip defaults, remove the old path. */
32
+ verifyDecommission: 'migration-verify-decommission',
33
+ };
34
+ /**
35
+ * The phase ids in methodology order — the order the plan (and the preset's `phaseTemplate`) must
36
+ * present them. Consumers that iterate phases (the template builder, the E2E) read this so the
37
+ * order lives in one place too.
38
+ */
39
+ export const MIGRATION_PHASE_ID_ORDER = [
40
+ MIGRATION_PHASE_IDS.blastZone,
41
+ MIGRATION_PHASE_IDS.coverage,
42
+ MIGRATION_PHASE_IDS.transitionDesign,
43
+ MIGRATION_PHASE_IDS.delivery,
44
+ MIGRATION_PHASE_IDS.verifyDecommission,
45
+ ];
46
+ //# sourceMappingURL=phases.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"phases.js","sourceRoot":"","sources":["../../../src/presets/tech-migration/phases.ts"],"names":[],"mappings":"AAAA,8EAA8E;AAC9E,4EAA4E;AAC5E,EAAE;AACF,sFAAsF;AACtF,uFAAuF;AACvF,yEAAyE;AACzE,4EAA4E;AAC5E,kFAAkF;AAClF,4DAA4D;AAC5D,+BAA+B;AAC/B,wFAAwF;AACxF,2FAA2F;AAC3F,4FAA4F;AAC5F,sDAAsD;AACtD,wEAAwE;AACxE,8EAA8E;AAE9E;;;;GAIG;AACH,MAAM,CAAC,MAAM,mBAAmB,GAAG;IACjC,yFAAyF;IACzF,SAAS,EAAE,sBAAsB;IACjC,oFAAoF;IACpF,QAAQ,EAAE,oBAAoB;IAC9B,yFAAyF;IACzF,gBAAgB,EAAE,6BAA6B;IAC/C,kFAAkF;IAClF,QAAQ,EAAE,oBAAoB;IAC9B,0EAA0E;IAC1E,kBAAkB,EAAE,+BAA+B;CAC3C,CAAA;AAKV;;;;GAIG;AACH,MAAM,CAAC,MAAM,wBAAwB,GAAgC;IACnE,mBAAmB,CAAC,SAAS;IAC7B,mBAAmB,CAAC,QAAQ;IAC5B,mBAAmB,CAAC,gBAAgB;IACpC,mBAAmB,CAAC,QAAQ;IAC5B,mBAAmB,CAAC,kBAAkB;CACvC,CAAA"}
@@ -0,0 +1,31 @@
1
+ import type { AgentKind } from '@cat-factory/kernel';
2
+ /**
3
+ * Interviewer steering: the migration form already froze the enumerable facts (which migration,
4
+ * from/to tech, stored-proc policy, compat posture, coverage bar, docs dir), so the interview digs
5
+ * into the fuzzy, judgment-dependent facts a form cannot capture — the ones that actually change how
6
+ * the migration must be planned. Complements the generic T3 "build on the seeded form" line with the
7
+ * migration-specific probing agenda.
8
+ */
9
+ export declare const MIGRATION_INTERVIEWER_PROMPT_ADDITION: string;
10
+ /**
11
+ * Analyst steering: the analysis must produce the migration's BLAST ZONE (the touchpoint inventory
12
+ * the planner turns into the phase-1 report item and the provisional phase-2 coverage items), not a
13
+ * generic architecture overview — and it must chase the TRANSITIVE reach where migrations silently
14
+ * break, recording the existing test coverage per touchpoint (the phase-2 hardening target and the
15
+ * confidence case's grounding).
16
+ */
17
+ export declare const MIGRATION_ANALYST_PROMPT_ADDITION: string;
18
+ /**
19
+ * Planner steering: author each phase's items to the migration briefs, using the canonical phase
20
+ * ids VERBATIM, enforcing coverage-before-delivery and the single-writer artifact discipline. Pairs
21
+ * with the wire `phaseTemplate` (which dictates the phase SHAPE) — this is the per-phase ITEM
22
+ * methodology `seedMigrationPlan` (T7) then decorates and hardens.
23
+ */
24
+ export declare const MIGRATION_PLANNER_PROMPT_ADDITION: string;
25
+ /**
26
+ * The migration preset's `promptAdditions` map — the per-planning-kind steering the registration
27
+ * (T8) spreads onto its {@link InitiativePresetRegistration}. Keyed by the kernel agent-kind
28
+ * constants so a kind rename can't silently orphan an entry.
29
+ */
30
+ export declare const MIGRATION_PROMPT_ADDITIONS: Partial<Record<AgentKind, string>>;
31
+ //# sourceMappingURL=prompt-additions.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-additions.d.ts","sourceRoot":"","sources":["../../../src/presets/tech-migration/prompt-additions.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,qBAAqB,CAAA;AA+BpD;;;;;;GAMG;AACH,eAAO,MAAM,qCAAqC,QAqBtC,CAAA;AAEZ;;;;;;GAMG;AACH,eAAO,MAAM,iCAAiC,QAwBlC,CAAA;AAEZ;;;;;GAKG;AACH,eAAO,MAAM,iCAAiC,QA4BlC,CAAA;AAEZ;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,MAAM,CAAC,CAIzE,CAAA"}
@@ -0,0 +1,131 @@
1
+ import { INITIATIVE_ANALYST_AGENT_KIND, INITIATIVE_INTERVIEWER_AGENT_KIND, INITIATIVE_PLANNER_AGENT_KIND, } from '@cat-factory/kernel';
2
+ import { MIGRATION_PHASE_IDS } from './phases.js';
3
+ // ---------------------------------------------------------------------------
4
+ // The methodology PROMPT PACK for the `preset_tech_migration` initiative preset — the per-planning-
5
+ // kind steering text the preset registers as its `promptAdditions` (T8). This is the DEEP,
6
+ // code-side methodology the parent's off-the-wire rule keeps OUT of the descriptor: the wire
7
+ // `phaseTemplate` carries only short phase ids/titles/goals (rendered as the "required plan
8
+ // shape"), while these constants carry HOW each planning kind reasons about a migration.
9
+ //
10
+ // How each constant reaches its agent:
11
+ // - `initiative-analyst` / `initiative-planner` run through the engine, so `AgentContextBuilder`
12
+ // resolves `promptAdditions[kind]` onto `context.initiative.preset.promptAddition` and the
13
+ // server's `initiativeContextLines` renders it under `## Initiative preset: <label>` (the
14
+ // planner also gets the `phaseTemplate` fold). This seam already existed (T1 / parent S3).
15
+ // - `initiative-interviewer` is the INLINE `InitiativeInterviewService`, which folds
16
+ // `promptAdditions[INITIATIVE_INTERVIEWER_AGENT_KIND]` into its own prompt — a generic seam this
17
+ // slice completes, since the migration preset is the first FULL-interview preset to need it
18
+ // (docs-refresh is `interview: 'skip'`).
19
+ //
20
+ // Everything is DATA: the preset registration (T8) spreads `MIGRATION_PROMPT_ADDITIONS`, and the
21
+ // loop never branches on a preset id. The planner brief references the canonical phase ids from
22
+ // `phases.ts` so they are never retyped. See
23
+ // `docs/initiatives/tech-migration-preset-and-mssql-postgres-pilot.md`.
24
+ // ---------------------------------------------------------------------------
25
+ /**
26
+ * Interviewer steering: the migration form already froze the enumerable facts (which migration,
27
+ * from/to tech, stored-proc policy, compat posture, coverage bar, docs dir), so the interview digs
28
+ * into the fuzzy, judgment-dependent facts a form cannot capture — the ones that actually change how
29
+ * the migration must be planned. Complements the generic T3 "build on the seeded form" line with the
30
+ * migration-specific probing agenda.
31
+ */
32
+ export const MIGRATION_INTERVIEWER_PROMPT_ADDITION = [
33
+ 'This initiative is a TECHNOLOGICAL MIGRATION — swapping a load-bearing technology (a database ' +
34
+ 'engine, a framework major, a runtime, a core library) behind a behaviour-preservation safety ' +
35
+ 'net. The intake form has already captured the enumerable facts (which migration, the from/to ' +
36
+ 'technology, the stored-procedure policy, the compatibility posture, the coverage bar, the docs ' +
37
+ 'location). Treat every one of those seeded answers as SETTLED — never re-ask what the form covers.',
38
+ '',
39
+ 'Spend your questions on the fuzzy, judgment-dependent facts a form cannot capture, because they ' +
40
+ 'shape the plan:',
41
+ '- Downtime / cutover tolerance: is a maintenance window acceptable, or must the switch be online?',
42
+ '- Data-migration constraints: data volume, backfill and rehearsal needs, point-in-time ' +
43
+ 'correctness, and any records that cannot be recreated.',
44
+ '- Compatibility posture, when the form left it unset: how long must the old and new technologies ' +
45
+ 'run side by side (big-bang vs dual-run vs adapter layer), and what forces that choice?',
46
+ '- The observable behaviour that must NOT change, and where silent drift is most likely.',
47
+ '- Rollback expectations, and who owns the decision to abort a cutover mid-flight.',
48
+ '- Operational reach: scheduled jobs, ops tooling, monitoring and CI that touch the technology ' +
49
+ 'being swapped.',
50
+ '',
51
+ 'Keep each batch small and high-leverage. Converge as soon as the migration methodology (blast ' +
52
+ 'zone → coverage → transition → delivery → decommission) can be planned unambiguously.',
53
+ ].join('\n');
54
+ /**
55
+ * Analyst steering: the analysis must produce the migration's BLAST ZONE (the touchpoint inventory
56
+ * the planner turns into the phase-1 report item and the provisional phase-2 coverage items), not a
57
+ * generic architecture overview — and it must chase the TRANSITIVE reach where migrations silently
58
+ * break, recording the existing test coverage per touchpoint (the phase-2 hardening target and the
59
+ * confidence case's grounding).
60
+ */
61
+ export const MIGRATION_ANALYST_PROMPT_ADDITION = [
62
+ 'This initiative is a TECHNOLOGICAL MIGRATION. Your analysis must produce the migration BLAST ' +
63
+ 'ZONE — the touchpoint inventory the planner turns into the phase-1 report item and the ' +
64
+ 'provisional phase-2 coverage items — not a generic architecture overview.',
65
+ '',
66
+ 'Enumerate every touchpoint of the technology being swapped:',
67
+ '- DIRECT touchpoints: every site that uses the technology directly — queries, driver/ORM calls, ' +
68
+ 'schema objects, vendor-specific idioms, connection/pool/timeout config.',
69
+ '- TRANSITIVE touchpoints: chase the reach BEYOND the direct sites — callers of those callers, ' +
70
+ 'code that consumes the RESULT SHAPES or error contracts of the swapped calls, scheduled jobs, ' +
71
+ 'ops and migration tooling, monitoring, and CI provisioning. Transitive reach is where ' +
72
+ 'migrations silently break; do not stop at the obvious layer.',
73
+ '',
74
+ 'For EACH touchpoint record: what it is, whether it is direct or transitive, a risk assessment, ' +
75
+ 'and — critically — WHICH TESTS COVER IT TODAY (or "none"). That "covered by which tests today" ' +
76
+ 'column is exactly what phase 2 hardens and the confidence case audits, so ground it in real ' +
77
+ 'test files, not guesses.',
78
+ '',
79
+ 'Call out the behaviour-preservation traps specific to THIS swap — the edge cases that differ ' +
80
+ 'silently between the two technologies (NULL vs empty string, precision/rounding, collation and ' +
81
+ 'comparison semantics, pagination, identity/sequence exposure) — and any set-based operation ' +
82
+ 'that must NOT become an app-side per-row loop. Ground every touchpoint in real file/directory ' +
83
+ 'references, and produce this provisional inventory IN your analysis so the planner can author ' +
84
+ 'phase 1 and the provisional phase-2 items directly from it.',
85
+ ].join('\n');
86
+ /**
87
+ * Planner steering: author each phase's items to the migration briefs, using the canonical phase
88
+ * ids VERBATIM, enforcing coverage-before-delivery and the single-writer artifact discipline. Pairs
89
+ * with the wire `phaseTemplate` (which dictates the phase SHAPE) — this is the per-phase ITEM
90
+ * methodology `seedMigrationPlan` (T7) then decorates and hardens.
91
+ */
92
+ export const MIGRATION_PLANNER_PROMPT_ADDITION = [
93
+ 'This initiative is a TECHNOLOGICAL MIGRATION, planned around the five fixed phases in the ' +
94
+ "required plan shape above. Author each phase's items to the briefs below, using each phase " +
95
+ '`id` VERBATIM. Coverage comes BEFORE delivery: never schedule a delivery item before the ' +
96
+ 'behaviour it changes is characterised and green on the current technology.',
97
+ '',
98
+ `- \`${MIGRATION_PHASE_IDS.blastZone}\`: ONE report item (a SINGLE writer) that verifies and ` +
99
+ "deepens the analyst's provisional inventory against the real code and commits it as a " +
100
+ 'Markdown document. Do not split the inventory across parallel writers.',
101
+ `- \`${MIGRATION_PHASE_IDS.coverage}\`: one coverage item per area of the provisional inventory ` +
102
+ '(keep it to roughly eight; group finer-grained rows by area), each writing characterization ' +
103
+ 'tests at a seam ABOVE the layer being swapped so they survive the swap. CLOSE the phase with a ' +
104
+ 'single confidence-case item that depends on every other phase-2 item and is human-gated: it ' +
105
+ 'sweeps coverage and commits the evidence-backed proof (per-touchpoint named tests, gaps and ' +
106
+ 'waivers justified against the coverage bar, risk mitigations, safety nets) a human audits ' +
107
+ 'before delivery.',
108
+ `- \`${MIGRATION_PHASE_IDS.transitionDesign}\`: one or two human-gated design items that decide ` +
109
+ 'the backwards-compatibility posture and design the migration / cutover path — schema ' +
110
+ 'translation, transaction-boundary ownership, the error-contract mapping, the per-object ' +
111
+ 'replacement strategy, and the data-migration path plus rehearsal — committing the design ' +
112
+ 'document. Each set-based operation replaced with application code needs an explicit note that ' +
113
+ 'it stays set-based (never an app-side per-row loop).',
114
+ `- \`${MIGRATION_PHASE_IDS.delivery}\`: delivery items batched by design area, each depending on ` +
115
+ 'the enabling schema / infrastructure item, executed per the approved design with the behaviour ' +
116
+ 'suite green throughout.',
117
+ `- \`${MIGRATION_PHASE_IDS.verifyDecommission}\`: a parity-verification item (the behaviour suite ` +
118
+ 'green on the new target, made primary), the CI / default flip, and removal of the old path and ' +
119
+ 'its dependencies per the chosen compatibility posture.',
120
+ ].join('\n');
121
+ /**
122
+ * The migration preset's `promptAdditions` map — the per-planning-kind steering the registration
123
+ * (T8) spreads onto its {@link InitiativePresetRegistration}. Keyed by the kernel agent-kind
124
+ * constants so a kind rename can't silently orphan an entry.
125
+ */
126
+ export const MIGRATION_PROMPT_ADDITIONS = {
127
+ [INITIATIVE_INTERVIEWER_AGENT_KIND]: MIGRATION_INTERVIEWER_PROMPT_ADDITION,
128
+ [INITIATIVE_ANALYST_AGENT_KIND]: MIGRATION_ANALYST_PROMPT_ADDITION,
129
+ [INITIATIVE_PLANNER_AGENT_KIND]: MIGRATION_PLANNER_PROMPT_ADDITION,
130
+ };
131
+ //# sourceMappingURL=prompt-additions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-additions.js","sourceRoot":"","sources":["../../../src/presets/tech-migration/prompt-additions.ts"],"names":[],"mappings":"AACA,OAAO,EACL,6BAA6B,EAC7B,iCAAiC,EACjC,6BAA6B,GAC9B,MAAM,qBAAqB,CAAA;AAC5B,OAAO,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAEjD,8EAA8E;AAC9E,oGAAoG;AACpG,2FAA2F;AAC3F,6FAA6F;AAC7F,4FAA4F;AAC5F,yFAAyF;AACzF,EAAE;AACF,uCAAuC;AACvC,mGAAmG;AACnG,+FAA+F;AAC/F,8FAA8F;AAC9F,+FAA+F;AAC/F,uFAAuF;AACvF,qGAAqG;AACrG,gGAAgG;AAChG,6CAA6C;AAC7C,EAAE;AACF,iGAAiG;AACjG,gGAAgG;AAChG,6CAA6C;AAC7C,wEAAwE;AACxE,8EAA8E;AAE9E;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,qCAAqC,GAAG;IACnD,gGAAgG;QAC9F,+FAA+F;QAC/F,+FAA+F;QAC/F,iGAAiG;QACjG,oGAAoG;IACtG,EAAE;IACF,kGAAkG;QAChG,iBAAiB;IACnB,mGAAmG;IACnG,yFAAyF;QACvF,wDAAwD;IAC1D,mGAAmG;QACjG,wFAAwF;IAC1F,yFAAyF;IACzF,mFAAmF;IACnF,gGAAgG;QAC9F,gBAAgB;IAClB,EAAE;IACF,gGAAgG;QAC9F,uFAAuF;CAC1F,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,+FAA+F;QAC7F,yFAAyF;QACzF,2EAA2E;IAC7E,EAAE;IACF,6DAA6D;IAC7D,kGAAkG;QAChG,yEAAyE;IAC3E,gGAAgG;QAC9F,gGAAgG;QAChG,wFAAwF;QACxF,8DAA8D;IAChE,EAAE;IACF,iGAAiG;QAC/F,iGAAiG;QACjG,8FAA8F;QAC9F,0BAA0B;IAC5B,EAAE;IACF,+FAA+F;QAC7F,iGAAiG;QACjG,8FAA8F;QAC9F,gGAAgG;QAChG,gGAAgG;QAChG,6DAA6D;CAChE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ;;;;;GAKG;AACH,MAAM,CAAC,MAAM,iCAAiC,GAAG;IAC/C,4FAA4F;QAC1F,6FAA6F;QAC7F,2FAA2F;QAC3F,4EAA4E;IAC9E,EAAE;IACF,OAAO,mBAAmB,CAAC,SAAS,0DAA0D;QAC5F,wFAAwF;QACxF,wEAAwE;IAC1E,OAAO,mBAAmB,CAAC,QAAQ,8DAA8D;QAC/F,8FAA8F;QAC9F,iGAAiG;QACjG,8FAA8F;QAC9F,8FAA8F;QAC9F,4FAA4F;QAC5F,kBAAkB;IACpB,OAAO,mBAAmB,CAAC,gBAAgB,sDAAsD;QAC/F,uFAAuF;QACvF,0FAA0F;QAC1F,2FAA2F;QAC3F,gGAAgG;QAChG,sDAAsD;IACxD,OAAO,mBAAmB,CAAC,QAAQ,+DAA+D;QAChG,iGAAiG;QACjG,yBAAyB;IAC3B,OAAO,mBAAmB,CAAC,kBAAkB,sDAAsD;QACjG,iGAAiG;QACjG,wDAAwD;CAC3D,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;AAEZ;;;;GAIG;AACH,MAAM,CAAC,MAAM,0BAA0B,GAAuC;IAC5E,CAAC,iCAAiC,CAAC,EAAE,qCAAqC;IAC1E,CAAC,6BAA6B,CAAC,EAAE,iCAAiC;IAClE,CAAC,6BAA6B,CAAC,EAAE,iCAAiC;CACnE,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export { CompositeModelProvider, type ModelResolver, type ProviderRegistry } from './registry.js';
2
2
  export { CliInlineLanguageModel, type InlineCliRequest, type InlineCliResult, type InlineCliRunner, } from './cli-inline.js';
3
3
  export { InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, } from './instrumented.js';
4
+ export { VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, } from './limited.js';
4
5
  export { anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, } from './resolvers.js';
5
6
  export { DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, } from './endpoints.js';
6
7
  export { type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACjG,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,GAC/B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAAE,KAAK,aAAa,EAAE,KAAK,gBAAgB,EAAE,MAAM,eAAe,CAAA;AACjG,OAAO,EACL,sBAAsB,EACtB,KAAK,gBAAgB,EACrB,KAAK,eAAe,EACpB,KAAK,eAAe,GACrB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,EACvB,KAAK,0BAA0B,GAChC,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,GAC/B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,KAAK,WAAW,EAChB,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
@@ -1,6 +1,7 @@
1
1
  export { CompositeModelProvider } from './registry.js';
2
2
  export { CliInlineLanguageModel, } from './cli-inline.js';
3
3
  export { InstrumentedModelProvider, catFactoryObservability, } from './instrumented.js';
4
+ export { VendorConcurrencyLimiter, limitModelProvider, vendorConcurrencyLimiterFromEnv, } from './limited.js';
4
5
  export { anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, } from './resolvers.js';
5
6
  export { DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, isProxyableProvider, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, resolveOpenAiCompatibleBaseUrl, } from './endpoints.js';
6
7
  export { cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './cache.js';
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA6C,MAAM,eAAe,CAAA;AACjG,OAAO,EACL,sBAAsB,GAIvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GAExB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,GAC/B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAEL,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/providers/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,sBAAsB,EAA6C,MAAM,eAAe,CAAA;AACjG,OAAO,EACL,sBAAsB,GAIvB,MAAM,iBAAiB,CAAA;AACxB,OAAO,EACL,yBAAyB,EACzB,uBAAuB,GAExB,MAAM,mBAAmB,CAAA;AAC1B,OAAO,EACL,wBAAwB,EACxB,kBAAkB,EAClB,+BAA+B,GAChC,MAAM,cAAc,CAAA;AACrB,OAAO,EACL,iBAAiB,EACjB,oBAAoB,EACpB,sBAAsB,EACtB,wBAAwB,EACxB,cAAc,GACf,MAAM,gBAAgB,CAAA;AACvB,OAAO,EACL,iBAAiB,EACjB,mCAAmC,EACnC,mBAAmB,EACnB,iBAAiB,EACjB,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,8BAA8B,GAC/B,MAAM,gBAAgB,CAAA;AACvB,OAAO,EAEL,qBAAqB,EACrB,0BAA0B,EAC1B,iBAAiB,EACjB,mBAAmB,GACpB,MAAM,YAAY,CAAA"}
@@ -0,0 +1,48 @@
1
+ import type { LanguageModel } from 'ai';
2
+ import type { SubscriptionVendor } from '@cat-factory/contracts';
3
+ import type { ModelProvider, ModelRef } from '@cat-factory/kernel';
4
+ import { type PermitRelease } from './semaphore.js';
5
+ /** Per-vendor max in-flight inline calls. A vendor absent (or ≤ 0) is uncapped. */
6
+ export type VendorConcurrencyLimits = Partial<Record<SubscriptionVendor, number>>;
7
+ /** Build a {@link VendorConcurrencyLimiter} from the environment. Build it ONCE per facade. */
8
+ export declare function vendorConcurrencyLimiterFromEnv(get: (key: string) => string | undefined): VendorConcurrencyLimiter;
9
+ /**
10
+ * Holds one {@link Semaphore} per capped vendor. Build it ONCE per process (Node) / per
11
+ * isolate (Worker) and share it across every `forScope` result so all inline calls to a
12
+ * vendor contend for the same permits.
13
+ */
14
+ export declare class VendorConcurrencyLimiter {
15
+ private readonly semaphores;
16
+ constructor(limits: VendorConcurrencyLimits);
17
+ /** The configured cap for a vendor, or undefined when it is uncapped. */
18
+ limitFor(vendor: SubscriptionVendor): number | undefined;
19
+ /** No vendor is capped — the limiter is a pure pass-through. */
20
+ get isEmpty(): boolean;
21
+ /**
22
+ * Acquire a permit for `vendor`, resolving with its release; an uncapped vendor resolves with
23
+ * a no-op release immediately. Pass `signal` so a queued acquire for a cancelled call bails.
24
+ */
25
+ acquire(vendor: SubscriptionVendor, signal?: AbortSignal): Promise<PermitRelease>;
26
+ /** Run `fn` under the vendor's permit, or immediately if the vendor is uncapped. */
27
+ run<T>(vendor: SubscriptionVendor, fn: () => PromiseLike<T>, signal?: AbortSignal): Promise<T>;
28
+ }
29
+ /**
30
+ * A {@link ModelProvider} decorator that gates each resolved subscription-vendor model behind
31
+ * the shared {@link VendorConcurrencyLimiter}. Mirrors {@link InstrumentedModelProvider}'s
32
+ * shape (wrap the resolved model with an AI SDK middleware); apply it as the OUTERMOST wrap so
33
+ * the queue wait is excluded from the instrumentation's generation timing. Both the buffered
34
+ * (`wrapGenerate`) and streaming (`wrapStream`) paths are gated: a permit is held for the whole
35
+ * generation, and for a stream it is held until the stream ends / errors / is cancelled — so a
36
+ * streamed call counts against the cap exactly like a buffered one. A queued call whose request
37
+ * is aborted releases its slot instead of head-of-line blocking behind it.
38
+ */
39
+ export declare class LimitedModelProvider implements ModelProvider {
40
+ private readonly inner;
41
+ private readonly limiter;
42
+ constructor(inner: ModelProvider, limiter: VendorConcurrencyLimiter);
43
+ resolve(ref: ModelRef): LanguageModel;
44
+ private middlewareFor;
45
+ }
46
+ /** Wrap `inner` with a per-vendor concurrency cap. A pass-through limiter returns `inner`. */
47
+ export declare function limitModelProvider(inner: ModelProvider, limiter: VendorConcurrencyLimiter): ModelProvider;
48
+ //# sourceMappingURL=limited.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limited.d.ts","sourceRoot":"","sources":["../../src/providers/limited.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAA2B,MAAM,IAAI,CAAA;AAChE,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,wBAAwB,CAAA;AAChE,OAAO,KAAK,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,qBAAqB,CAAA;AAElE,OAAO,EAAE,KAAK,aAAa,EAAa,MAAM,gBAAgB,CAAA;AAmB9D,mFAAmF;AACnF,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,MAAM,CAAC,kBAAkB,EAAE,MAAM,CAAC,CAAC,CAAA;AA0CjF,+FAA+F;AAC/F,wBAAgB,+BAA+B,CAC7C,GAAG,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,MAAM,GAAG,SAAS,GACvC,wBAAwB,CAE1B;AAKD;;;;GAIG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA2C;IAEtE,YAAY,MAAM,EAAE,uBAAuB,EAI1C;IAED,yEAAyE;IACzE,QAAQ,CAAC,MAAM,EAAE,kBAAkB,GAAG,MAAM,GAAG,SAAS,CAEvD;IAED,gEAAgE;IAChE,IAAI,OAAO,IAAI,OAAO,CAErB;IAED;;;OAGG;IACH,OAAO,CAAC,MAAM,EAAE,kBAAkB,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAGhF;IAED,oFAAoF;IAC9E,GAAG,CAAC,CAAC,EACT,MAAM,EAAE,kBAAkB,EAC1B,EAAE,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EACxB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,CAAC,CAAC,CAGZ;CACF;AAED;;;;;;;;;GASG;AACH,qBAAa,oBAAqB,YAAW,aAAa;IAEtD,OAAO,CAAC,QAAQ,CAAC,KAAK;IACtB,OAAO,CAAC,QAAQ,CAAC,OAAO;IAF1B,YACmB,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,wBAAwB,EAChD;IAEJ,OAAO,CAAC,GAAG,EAAE,QAAQ,GAAG,aAAa,CAYpC;IAED,OAAO,CAAC,aAAa;CAmBtB;AA2BD,8FAA8F;AAC9F,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,aAAa,EACpB,OAAO,EAAE,wBAAwB,GAChC,aAAa,CAEf"}
@@ -0,0 +1,158 @@
1
+ import { wrapLanguageModel } from 'ai';
2
+ import { ALL_SUBSCRIPTION_VENDORS, subscriptionVendorForRef } from '@cat-factory/kernel';
3
+ import { Semaphore } from './semaphore.js';
4
+ /** Default cap applied per subscription vendor when a facade doesn't override it. */
5
+ const DEFAULT_SUBSCRIPTION_INLINE_CONCURRENCY = 3;
6
+ /** Env var for the default cap; `${VAR}_<VENDOR>` (e.g. `_CLAUDE`) overrides one vendor. */
7
+ const SUBSCRIPTION_INLINE_CONCURRENCY_ENV = 'LLM_SUBSCRIPTION_MAX_CONCURRENCY';
8
+ /**
9
+ * Parse an env value into a cap. A numeric value clamps to `>= 0`, so any non-positive number
10
+ * (`0`, `-1`, …) means "uncapped" — an operator who writes `-1` for "no limit" gets exactly
11
+ * that rather than a silent fallback to the default cap. A blank or non-numeric value returns
12
+ * `undefined` so the caller falls back to the layer below it (per-vendor → global → default).
13
+ */
14
+ function parseLimit(raw) {
15
+ if (raw === undefined || raw.trim() === '')
16
+ return undefined;
17
+ const n = Number(raw);
18
+ return Number.isFinite(n) ? Math.max(0, Math.floor(n)) : undefined;
19
+ }
20
+ /**
21
+ * Read the per-vendor caps from the environment (shared by every facade so the two runtimes
22
+ * parse identically). `LLM_SUBSCRIPTION_MAX_CONCURRENCY` sets the default cap for all five
23
+ * subscription vendors (falls back to {@link DEFAULT_SUBSCRIPTION_INLINE_CONCURRENCY}); a
24
+ * `LLM_SUBSCRIPTION_MAX_CONCURRENCY_<VENDOR>` (e.g. `_KIMI`) overrides that ONE vendor and always
25
+ * wins (specific beats general). Any value `<= 0` is uncapped, so setting the default to `0`
26
+ * uncaps every vendor that has no explicit per-vendor override; to disable limiting entirely,
27
+ * leave the per-vendor overrides unset (or `0`) as well.
28
+ */
29
+ function vendorConcurrencyLimitsFromEnv(get) {
30
+ const base = parseLimit(get(SUBSCRIPTION_INLINE_CONCURRENCY_ENV)) ?? DEFAULT_SUBSCRIPTION_INLINE_CONCURRENCY;
31
+ const limits = {};
32
+ for (const vendor of ALL_SUBSCRIPTION_VENDORS) {
33
+ limits[vendor] =
34
+ parseLimit(get(`${SUBSCRIPTION_INLINE_CONCURRENCY_ENV}_${vendor.toUpperCase()}`)) ?? base;
35
+ }
36
+ return limits;
37
+ }
38
+ /** Build a {@link VendorConcurrencyLimiter} from the environment. Build it ONCE per facade. */
39
+ export function vendorConcurrencyLimiterFromEnv(get) {
40
+ return new VendorConcurrencyLimiter(vendorConcurrencyLimitsFromEnv(get));
41
+ }
42
+ /** A release that returns nothing to reclaim — the no-op for an uncapped vendor. */
43
+ const NOOP_RELEASE = () => { };
44
+ /**
45
+ * Holds one {@link Semaphore} per capped vendor. Build it ONCE per process (Node) / per
46
+ * isolate (Worker) and share it across every `forScope` result so all inline calls to a
47
+ * vendor contend for the same permits.
48
+ */
49
+ export class VendorConcurrencyLimiter {
50
+ semaphores = new Map();
51
+ constructor(limits) {
52
+ for (const [vendor, limit] of Object.entries(limits)) {
53
+ if (limit && limit > 0)
54
+ this.semaphores.set(vendor, new Semaphore(limit));
55
+ }
56
+ }
57
+ /** The configured cap for a vendor, or undefined when it is uncapped. */
58
+ limitFor(vendor) {
59
+ return this.semaphores.has(vendor) ? this.semaphores.get(vendor).permits : undefined;
60
+ }
61
+ /** No vendor is capped — the limiter is a pure pass-through. */
62
+ get isEmpty() {
63
+ return this.semaphores.size === 0;
64
+ }
65
+ /**
66
+ * Acquire a permit for `vendor`, resolving with its release; an uncapped vendor resolves with
67
+ * a no-op release immediately. Pass `signal` so a queued acquire for a cancelled call bails.
68
+ */
69
+ acquire(vendor, signal) {
70
+ const sem = this.semaphores.get(vendor);
71
+ return sem ? sem.acquire(signal) : Promise.resolve(NOOP_RELEASE);
72
+ }
73
+ /** Run `fn` under the vendor's permit, or immediately if the vendor is uncapped. */
74
+ async run(vendor, fn, signal) {
75
+ const sem = this.semaphores.get(vendor);
76
+ return sem ? sem.run(fn, signal) : fn();
77
+ }
78
+ }
79
+ /**
80
+ * A {@link ModelProvider} decorator that gates each resolved subscription-vendor model behind
81
+ * the shared {@link VendorConcurrencyLimiter}. Mirrors {@link InstrumentedModelProvider}'s
82
+ * shape (wrap the resolved model with an AI SDK middleware); apply it as the OUTERMOST wrap so
83
+ * the queue wait is excluded from the instrumentation's generation timing. Both the buffered
84
+ * (`wrapGenerate`) and streaming (`wrapStream`) paths are gated: a permit is held for the whole
85
+ * generation, and for a stream it is held until the stream ends / errors / is cancelled — so a
86
+ * streamed call counts against the cap exactly like a buffered one. A queued call whose request
87
+ * is aborted releases its slot instead of head-of-line blocking behind it.
88
+ */
89
+ export class LimitedModelProvider {
90
+ inner;
91
+ limiter;
92
+ constructor(inner, limiter) {
93
+ this.inner = inner;
94
+ this.limiter = limiter;
95
+ }
96
+ resolve(ref) {
97
+ const model = this.inner.resolve(ref);
98
+ const vendor = subscriptionVendorForRef(ref);
99
+ // Only wrap when this ref actually targets a capped subscription vendor; a string ref
100
+ // (unusual for inline) and any uncapped vendor pass straight through untouched.
101
+ if (typeof model === 'string' || !vendor || this.limiter.limitFor(vendor) === undefined) {
102
+ return model;
103
+ }
104
+ return wrapLanguageModel({
105
+ model: model,
106
+ middleware: this.middlewareFor(vendor),
107
+ });
108
+ }
109
+ middlewareFor(vendor) {
110
+ return {
111
+ specificationVersion: 'v3',
112
+ wrapGenerate: ({ doGenerate, params }) => this.limiter.run(vendor, doGenerate, params.abortSignal),
113
+ wrapStream: async ({ doStream, params }) => {
114
+ // Hold the permit across the whole stream, not just the doStream() call: acquire before
115
+ // starting and release when the stream terminates (drained / errored / cancelled).
116
+ const release = await this.limiter.acquire(vendor, params.abortSignal);
117
+ try {
118
+ const result = await doStream();
119
+ return { ...result, stream: releaseWhenDone(result.stream, release) };
120
+ }
121
+ catch (err) {
122
+ release();
123
+ throw err;
124
+ }
125
+ },
126
+ };
127
+ }
128
+ }
129
+ /** Pipe `stream` through so `release` fires exactly once when it ends, errors, or is cancelled. */
130
+ function releaseWhenDone(stream, release) {
131
+ const reader = stream.getReader();
132
+ return new ReadableStream({
133
+ async pull(controller) {
134
+ try {
135
+ const { done, value } = await reader.read();
136
+ if (done) {
137
+ release();
138
+ controller.close();
139
+ return;
140
+ }
141
+ controller.enqueue(value);
142
+ }
143
+ catch (err) {
144
+ release();
145
+ controller.error(err);
146
+ }
147
+ },
148
+ cancel(reason) {
149
+ release();
150
+ return reader.cancel(reason);
151
+ },
152
+ });
153
+ }
154
+ /** Wrap `inner` with a per-vendor concurrency cap. A pass-through limiter returns `inner`. */
155
+ export function limitModelProvider(inner, limiter) {
156
+ return limiter.isEmpty ? inner : new LimitedModelProvider(inner, limiter);
157
+ }
158
+ //# sourceMappingURL=limited.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"limited.js","sourceRoot":"","sources":["../../src/providers/limited.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,25 @@
1
+ /** Releases a held permit back to the semaphore. Idempotent — calling it twice is a no-op. */
2
+ export type PermitRelease = () => void;
3
+ export declare class Semaphore {
4
+ /** The total permit count the semaphore was built with (its max concurrency). */
5
+ readonly permits: number;
6
+ private available;
7
+ private readonly waiters;
8
+ constructor(permits: number);
9
+ /**
10
+ * Acquire a permit, resolving with the {@link PermitRelease} that returns it. If `signal` is
11
+ * already aborted, or aborts while this call is still queued, the returned promise rejects with
12
+ * the signal's reason and no permit is taken. Once a permit is granted the signal no longer
13
+ * cancels it (the caller owns the permit and must `release()` it).
14
+ */
15
+ acquire(signal?: AbortSignal): Promise<PermitRelease>;
16
+ /** Build a single-use release for one granted permit. */
17
+ private makeRelease;
18
+ private release;
19
+ /**
20
+ * Acquire a permit, run `fn`, and release the permit even if `fn` throws. Pass `signal` to
21
+ * cancel the wait while still queued (the acquire rejects and `fn` never runs).
22
+ */
23
+ run<T>(fn: () => PromiseLike<T>, signal?: AbortSignal): Promise<T>;
24
+ }
25
+ //# sourceMappingURL=semaphore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semaphore.d.ts","sourceRoot":"","sources":["../../src/providers/semaphore.ts"],"names":[],"mappings":"AAaA,8FAA8F;AAC9F,MAAM,MAAM,aAAa,GAAG,MAAM,IAAI,CAAA;AAEtC,qBAAa,SAAS;IACpB,iFAAiF;IACjF,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAA;IACxB,OAAO,CAAC,SAAS,CAAQ;IACzB,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAwB;IAEhD,YAAY,OAAO,EAAE,MAAM,EAM1B;IAED;;;;;OAKG;IACH,OAAO,CAAC,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,aAAa,CAAC,CAuBpD;IAED,yDAAyD;IACzD,OAAO,CAAC,WAAW;IASnB,OAAO,CAAC,OAAO;IAUf;;;OAGG;IACG,GAAG,CAAC,CAAC,EAAE,EAAE,EAAE,MAAM,WAAW,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,CAAC,CAAC,CAOvE;CACF"}
@@ -0,0 +1,94 @@
1
+ // A minimal async counting semaphore: bound how many async operations run at once.
2
+ // Hand-rolled on purpose — the repo prefers a tiny in-tree limiter (the GitHub-read
3
+ // `mapLimit`, the `withDirLock` mutex) over pulling `p-limit`/`Bottleneck`, which would
4
+ // add a dependency behind the `minimumReleaseAge` install gate plus a `knip` ignore.
5
+ //
6
+ // Fairness is FIFO: waiters are released in the order they blocked, and a released permit
7
+ // is handed straight to the next waiter (never returned to the pool and re-raced), so a
8
+ // steady stream of arrivals can't starve an earlier waiter.
9
+ //
10
+ // A queued waiter can be cancelled with an `AbortSignal` — it leaves the queue and rejects
11
+ // without ever taking a permit, so an aborted caller (e.g. a cancelled run) never head-of-line
12
+ // blocks the others behind a slot it will not use.
13
+ export class Semaphore {
14
+ /** The total permit count the semaphore was built with (its max concurrency). */
15
+ permits;
16
+ available;
17
+ waiters = [];
18
+ constructor(permits) {
19
+ if (!Number.isInteger(permits) || permits < 1) {
20
+ throw new Error(`Semaphore needs a positive integer permit count, got ${permits}`);
21
+ }
22
+ this.permits = permits;
23
+ this.available = permits;
24
+ }
25
+ /**
26
+ * Acquire a permit, resolving with the {@link PermitRelease} that returns it. If `signal` is
27
+ * already aborted, or aborts while this call is still queued, the returned promise rejects with
28
+ * the signal's reason and no permit is taken. Once a permit is granted the signal no longer
29
+ * cancels it (the caller owns the permit and must `release()` it).
30
+ */
31
+ acquire(signal) {
32
+ if (signal?.aborted)
33
+ return Promise.reject(abortReason(signal));
34
+ if (this.available > 0) {
35
+ this.available -= 1;
36
+ return Promise.resolve(this.makeRelease());
37
+ }
38
+ return new Promise((resolve, reject) => {
39
+ const grant = () => {
40
+ cleanup();
41
+ resolve(this.makeRelease());
42
+ };
43
+ const onAbort = () => {
44
+ const i = this.waiters.indexOf(grant);
45
+ // Already granted (shifted out of the queue) — the permit is ours; let it stand.
46
+ if (i < 0)
47
+ return;
48
+ this.waiters.splice(i, 1);
49
+ cleanup();
50
+ reject(abortReason(signal));
51
+ };
52
+ const cleanup = () => signal?.removeEventListener('abort', onAbort);
53
+ this.waiters.push(grant);
54
+ signal?.addEventListener('abort', onAbort, { once: true });
55
+ });
56
+ }
57
+ /** Build a single-use release for one granted permit. */
58
+ makeRelease() {
59
+ let released = false;
60
+ return () => {
61
+ if (released)
62
+ return;
63
+ released = true;
64
+ this.release();
65
+ };
66
+ }
67
+ release() {
68
+ const next = this.waiters.shift();
69
+ if (next) {
70
+ // Transfer the permit directly to the waiter (available stays put).
71
+ next();
72
+ }
73
+ else {
74
+ this.available += 1;
75
+ }
76
+ }
77
+ /**
78
+ * Acquire a permit, run `fn`, and release the permit even if `fn` throws. Pass `signal` to
79
+ * cancel the wait while still queued (the acquire rejects and `fn` never runs).
80
+ */
81
+ async run(fn, signal) {
82
+ const release = await this.acquire(signal);
83
+ try {
84
+ return await fn();
85
+ }
86
+ finally {
87
+ release();
88
+ }
89
+ }
90
+ }
91
+ function abortReason(signal) {
92
+ return signal.reason ?? new DOMException('Aborted', 'AbortError');
93
+ }
94
+ //# sourceMappingURL=semaphore.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"semaphore.js","sourceRoot":"","sources":["../../src/providers/semaphore.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@cat-factory/agents",
3
- "version": "0.44.1",
3
+ "version": "0.46.0",
4
4
  "description": "Agent catalog, routing, prompts and fragment library for the Agent Architecture Board.",
5
5
  "repository": {
6
6
  "type": "git",