@cat-factory/agents 0.11.3 → 0.11.5

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
@@ -22,6 +22,7 @@ export { PLATFORM_DELIVERY_CONTRACT } from './agents/prompts/delivery-contract.j
22
22
  export { FINAL_ANSWER_IN_REPLY, STANDARDS_FOOTER } from './agents/prompts/shared.js';
23
23
  export { type RenderedFile, coerceBlueprintService, moduleSlug, canonicalBlueprintJson, hashBlueprint, renderBlueprintFiles, renderBlueprintVersionFile, nextBlueprintVersion, coerceSpecDoc, dedupeSpecIds, renderSpecFiles, renderSpecFeatureFiles, } from './repo-ops/render.js';
24
24
  export { runRepoOps } from './repo-ops/run.js';
25
+ export { blueprintPostOp } from './repo-ops/builtin.js';
25
26
  export { CompositeModelProvider, InstrumentedModelProvider, catFactoryObservability, type InlineObservabilityContext, type ModelResolver, type ProviderRegistry, anthropicResolver, baseProviderRegistry, cloudflareRestResolver, openAiCompatibleResolver, openAiResolver, DEEPSEEK_BASE_URL, DEFAULT_OPENAI_COMPATIBLE_BASE_URLS, MOONSHOT_BASE_URL, OPENAI_BASE_URL, OPENROUTER_BASE_URL, QWEN_BASE_URL, type CachePolicy, cachedTokensFromUsage, inlineCacheProviderOptions, promptCacheParams, providerCachePolicy, } from './providers/index.js';
26
27
  export { FragmentLibraryService, type FragmentLibraryServiceDependencies, } from './fragmentLibrary/FragmentLibraryService.js';
27
28
  export { FragmentSourceService, type FragmentSourceServiceDependencies, type ResolveFragmentInstallationId, } from './fragmentLibrary/FragmentSourceService.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
@@ -39,6 +39,10 @@ export { coerceBlueprintService, moduleSlug, canonicalBlueprintJson, hashBluepri
39
39
  // RepoFiles port). Here, not in @cat-factory/server, so the orchestration engine can
40
40
  // run the ops without importing the HTTP layer.
41
41
  export { runRepoOps } from './repo-ops/run.js';
42
+ // Built-in post-ops for migrated built-in kinds (blueprints/…): the deterministic render
43
+ // + commit lifted out of the executor-harness, keyed by the engine's built-in op map (NOT
44
+ // the registry, so they never leak into the custom-kind palette).
45
+ export { blueprintPostOp } from './repo-ops/builtin.js';
42
46
  // The generic AI provisioning facade: a mixable provider registry + the base,
43
47
  // runtime-neutral resolvers. Optional/heavier backends ship as their own packages
44
48
  // (e.g. @cat-factory/provider-bedrock) and are mixed into a CompositeModelProvider.
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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"}
@@ -0,0 +1,16 @@
1
+ import type { RepoOp } from '@cat-factory/kernel';
2
+ /**
3
+ * POST-OP for the migrated `blueprints` kind: render the agent's service → modules tree
4
+ * into the in-repo `blueprints/` artifact files and commit them onto the run's branch —
5
+ * the deterministic work the harness's `handleBlueprint` used to do, now plain backend TS
6
+ * over the checkout-free {@link RepoFiles}.
7
+ *
8
+ * IDEMPOTENT: the content hash lives in the committed `version.json`. An unchanged tree
9
+ * (a re-run, or a durable-driver REPLAY that re-enters after the commit landed but before
10
+ * the run persisted) hashes identically ⇒ no commit, exactly as the harness's `commitAll`
11
+ * found nothing staged. On a real change it bumps the version, writes the files, and
12
+ * PRUNES any file the new render didn't emit (a removed module's deep-dive) — the
13
+ * checkout-free analogue of the harness wiping `blueprints/` before writing.
14
+ */
15
+ export declare const blueprintPostOp: RepoOp;
16
+ //# sourceMappingURL=builtin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin.d.ts","sourceRoot":"","sources":["../../src/repo-ops/builtin.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAa,MAAM,EAAE,MAAM,qBAAqB,CAAA;AA2D5D;;;;;;;;;;;;GAYG;AACH,eAAO,MAAM,eAAe,EAAE,MAyB7B,CAAA"}
@@ -0,0 +1,92 @@
1
+ import { BLUEPRINT_DIR, BLUEPRINT_VERSION_PATH, } from '@cat-factory/contracts';
2
+ import { coerceBlueprintService, hashBlueprint, nextBlueprintVersion, renderBlueprintFiles, renderBlueprintVersionFile, } from './render.js';
3
+ // ---------------------------------------------------------------------------
4
+ // BUILT-IN post-ops: the deterministic render + commit of the in-repo `blueprints/`
5
+ // (and, later, `spec/`) artifacts a migrated built-in agent produces.
6
+ //
7
+ // These mirror the registry-driven post-ops a CUSTOM kind ships (example-custom-agent's
8
+ // `renderReportPostOp`), but they are NOT registry entries: registering the built-in
9
+ // kinds would leak them into `customAgentKinds` / the SPA palette. The engine keys them
10
+ // off the agent kind in its own built-in map (see ExecutionService) and runs them over
11
+ // the same checkout-free {@link RepoFiles} port. The container's generic `agent` explore
12
+ // step returns the model's JSON (surfaced as `result.blueprintService`); the mechanical
13
+ // render that used to live in the executor-harness `blueprint.ts` runs here as plain
14
+ // backend TypeScript — no per-kind container code, no image rebuild.
15
+ // ---------------------------------------------------------------------------
16
+ /** Parse an existing `version.json` (tolerant — a malformed/absent manifest ⇒ null). */
17
+ function parseBlueprintVersion(content) {
18
+ if (!content)
19
+ return null;
20
+ try {
21
+ const parsed = JSON.parse(content);
22
+ if (typeof parsed.version !== 'number' || typeof parsed.hash !== 'string')
23
+ return null;
24
+ return {
25
+ version: parsed.version,
26
+ generatedAt: typeof parsed.generatedAt === 'string' ? parsed.generatedAt : '',
27
+ hash: parsed.hash,
28
+ modules: typeof parsed.modules === 'number' ? parsed.modules : 0,
29
+ };
30
+ }
31
+ catch {
32
+ return null;
33
+ }
34
+ }
35
+ /**
36
+ * List every file currently under `blueprints/`, repo-relative. The folder is two levels
37
+ * deep at most (`blueprints/*` plus `blueprints/modules/<slug>.md`), so one recursion into
38
+ * any subdirectory is enough; descended via {@link RepoFiles.listDirectory}.
39
+ */
40
+ async function listBlueprintFiles(repo, branch) {
41
+ const out = [];
42
+ for (const entry of await repo.listDirectory(BLUEPRINT_DIR, branch)) {
43
+ if (entry.type === 'dir') {
44
+ for (const sub of await repo.listDirectory(entry.path, branch)) {
45
+ if (sub.type !== 'dir')
46
+ out.push(sub.path);
47
+ }
48
+ }
49
+ else {
50
+ out.push(entry.path);
51
+ }
52
+ }
53
+ return out;
54
+ }
55
+ /**
56
+ * POST-OP for the migrated `blueprints` kind: render the agent's service → modules tree
57
+ * into the in-repo `blueprints/` artifact files and commit them onto the run's branch —
58
+ * the deterministic work the harness's `handleBlueprint` used to do, now plain backend TS
59
+ * over the checkout-free {@link RepoFiles}.
60
+ *
61
+ * IDEMPOTENT: the content hash lives in the committed `version.json`. An unchanged tree
62
+ * (a re-run, or a durable-driver REPLAY that re-enters after the commit landed but before
63
+ * the run persisted) hashes identically ⇒ no commit, exactly as the harness's `commitAll`
64
+ * found nothing staged. On a real change it bumps the version, writes the files, and
65
+ * PRUNES any file the new render didn't emit (a removed module's deep-dive) — the
66
+ * checkout-free analogue of the harness wiping `blueprints/` before writing.
67
+ */
68
+ export const blueprintPostOp = async (ctx) => {
69
+ // The engine coerced the agent's structured output into `blueprintService` (or the
70
+ // FakeAgentExecutor returned a tree directly). Re-coerce to a typed tree — idempotent on
71
+ // an already-coerced tree — so a nameless/garbage payload commits nothing.
72
+ const service = coerceBlueprintService(ctx.result?.blueprintService, '');
73
+ if (!service)
74
+ return;
75
+ const previous = parseBlueprintVersion((await ctx.repo.getFile(BLUEPRINT_VERSION_PATH, ctx.branch))?.content);
76
+ if (previous && previous.hash === (await hashBlueprint(service)))
77
+ return;
78
+ const version = await nextBlueprintVersion(service, previous, new Date());
79
+ const rendered = [
80
+ ...renderBlueprintFiles(service),
81
+ await renderBlueprintVersionFile(service, version),
82
+ ];
83
+ const desired = new Set(rendered.map((f) => f.path));
84
+ const deletions = (await listBlueprintFiles(ctx.repo, ctx.branch)).filter((p) => !desired.has(p));
85
+ await ctx.repo.commitFiles({
86
+ branch: ctx.branch,
87
+ message: 'Update service blueprint',
88
+ files: rendered,
89
+ ...(deletions.length > 0 ? { deletions } : {}),
90
+ });
91
+ };
92
+ //# sourceMappingURL=builtin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"builtin.js","sourceRoot":"","sources":["../../src/repo-ops/builtin.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.11.3",
3
+ "version": "0.11.5",
4
4
  "description": "Agent catalog, routing, prompts and fragment library for the Agent Architecture Board.",
5
5
  "repository": {
6
6
  "type": "git",
@@ -29,9 +29,9 @@
29
29
  "@ai-sdk/openai-compatible": "^2.0.51",
30
30
  "ai": "^6.0.209",
31
31
  "handlebars": "^4.7.9",
32
- "@cat-factory/contracts": "0.13.0",
33
- "@cat-factory/kernel": "0.13.1",
34
- "@cat-factory/prompt-fragments": "0.7.8"
32
+ "@cat-factory/contracts": "0.14.0",
33
+ "@cat-factory/kernel": "0.13.3",
34
+ "@cat-factory/prompt-fragments": "0.7.10"
35
35
  },
36
36
  "devDependencies": {
37
37
  "typescript": "7.0.1-rc",