@yansirplus/cli 0.5.17 → 0.5.18

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 (52) hide show
  1. package/README.md +12 -6
  2. package/agent-catalog/agentOS/SKILL.md +22 -0
  3. package/agent-catalog/agentOS/references/agent/decision-graph.json +530 -0
  4. package/agent-catalog/agentOS/references/agent/errors.json +497 -0
  5. package/agent-catalog/agentOS/references/agent/invariant-matrix.json +337 -0
  6. package/agent-catalog/agentOS/references/agent/primitives.json +989 -0
  7. package/agent-catalog/agentOS/references/agent/recipes.json +109 -0
  8. package/agent-catalog/agentOS/references/agent/start-here.md +25 -0
  9. package/agent-catalog/agentOS/references/package-map.md +72 -0
  10. package/agent-catalog/agentOS/references/provenance.json +251 -0
  11. package/agent-catalog/agentOS/references/public-api/cli.md +20 -0
  12. package/agent-catalog/agentOS/references/public-api/client.md +88 -0
  13. package/agent-catalog/agentOS/references/public-api/core.md +1817 -0
  14. package/agent-catalog/agentOS/references/public-api/runtime.md +794 -0
  15. package/dist/build/agent-authoring/config.d.ts +20 -5
  16. package/dist/build/agent-authoring/config.js +132 -32
  17. package/dist/build/agent-authoring/manifest-compiler.d.ts +131 -2
  18. package/dist/build/agent-authoring/manifest-compiler.js +630 -8
  19. package/dist/build/agent-authoring/shared.d.ts +2 -0
  20. package/dist/build/agent-authoring/shared.js +2 -0
  21. package/dist/build/agent-authoring/static-target.d.ts +6 -3
  22. package/dist/build/agent-authoring/static-target.js +1807 -286
  23. package/dist/build/agent-authoring.d.ts +3 -3
  24. package/dist/build/agent-authoring.js +1 -1
  25. package/dist/build/build-cli.d.ts +1 -1
  26. package/dist/build/build-cli.js +1614 -26
  27. package/dist/check/algorithmic/client-boundary-checks.mjs +3 -34
  28. package/dist/check/algorithmic/convergence-smoke-checks.mjs +652 -6
  29. package/dist/check/algorithmic/distribution-checks.mjs +8 -7
  30. package/dist/check/algorithmic/package-boundary-checks.mjs +3 -2
  31. package/dist/check/algorithmic/repo-surface-checks.mjs +55 -1
  32. package/dist/check/algorithmic/static-target-checks.mjs +83 -5
  33. package/dist/check/algorithmic-checks.mjs +10 -17
  34. package/dist/check/default-gate.mjs +3 -3
  35. package/dist/check/effect-scan-gate.mjs +121 -0
  36. package/dist/check/package-graph.mjs +2 -32
  37. package/dist/consumer-overlay.mjs +802 -0
  38. package/dist/lib/public-api-model.mjs +19 -0
  39. package/dist/lib/repo-source-files.mjs +26 -0
  40. package/dist/lib/ts-module-loader.mjs +44 -0
  41. package/dist/lib/workspace-manifest.mjs +77 -0
  42. package/dist/main.mjs +151 -21
  43. package/package.json +8 -4
  44. package/dist/check/check-coverage.mjs +0 -231
  45. package/dist/generate/generate-agent-docs.mjs +0 -435
  46. package/dist/generate/generate-carrier-reference.mjs +0 -514
  47. package/dist/generate/generate-docs.mjs +0 -345
  48. package/dist/generate/generate-effect-skill-manifests.mjs +0 -193
  49. package/dist/generate/project-docs-site.mjs +0 -190
  50. package/dist/lib/boundary-rules.mjs +0 -63
  51. package/dist/lib/capability-routes.mjs +0 -354
  52. package/dist/lib/projection-sink.mjs +0 -113
package/README.md CHANGED
@@ -11,6 +11,12 @@ authored agent builds, structural checks, and distribution gates.
11
11
 
12
12
  0.5.x active development. CLI commands are the supported developer surface; generated projections remain owned by their source facts.
13
13
 
14
+ ## Audience
15
+
16
+ | Entrypoint | Audience | Capability |
17
+ | --------------- | ---------------- | ----------------------------- |
18
+ | `@yansirplus/cli` | `default-direct` | developer CLI command package |
19
+
14
20
  ## Invariant
15
21
 
16
22
  The CLI consumes source facts and executes gates. It does not own package
@@ -20,15 +26,15 @@ runtime behavior.
20
26
  ## Minimal Usage
21
27
 
22
28
  ```sh
23
- bun run agentos -- check all
24
- bun run agentos -- check guard public-api
25
- bun run agentos -- build --cwd /path/to/app
26
- bun run agentos -- generate docs
29
+ pnpm run agentos check all
30
+ pnpm run agentos check guard public-api
31
+ pnpm run agentos build --cwd /path/to/app
32
+ pnpm run agentos generate docs
27
33
  ```
28
34
 
29
35
  ## Verification
30
36
 
31
37
  ```sh
32
- bun run agentos -- --help
33
- bun run agentos -- check guard ag-ui-sse-axis
38
+ pnpm run agentos --help
39
+ pnpm run agentos check guard ag-ui-sse-axis
34
40
  ```
@@ -0,0 +1,22 @@
1
+ ---
2
+ name: agentOS
3
+ description: Generated installed catalog for agentOS 0.5.18 public packages, API intent, agent navigation, invariants, errors, and provenance.
4
+ ---
5
+
6
+ # agentOS
7
+
8
+ This catalog is generated for `@yansirplus/cli` 0.5.18. Treat files under `references/` as installed-version facts; do not infer future API from chat context, archived CST events, or source checkouts.
9
+
10
+ ## Routes
11
+
12
+ - Package ownership and entrypoints: `references/package-map.md`
13
+ - Exact public API intent: `references/public-api/*.md`
14
+ - Agent route from intent to primitive: `references/agent/start-here.md`
15
+ - Machine-readable recipes, primitives, decision graph, errors, and invariants: `references/agent/*.json`
16
+ - Source and output hashes: `references/provenance.json`
17
+
18
+ ## Boundaries
19
+
20
+ - `SKILL.md` is only a router; large facts live in `references/`.
21
+ - `catalog.source.json` is not a valid source of truth.
22
+ - Channel, schedule, lifecycle, package, API, error, and invariant facts come from the referenced generated projections and source manifests listed in provenance.
@@ -0,0 +1,530 @@
1
+ {
2
+ "generatedBy": "packages/cli/src/generate/generate-agent-docs.mjs",
3
+ "source": [
4
+ "docs/agent/capability-rules.source.json",
5
+ "docs/agent/recipes.source.json",
6
+ "exported TSDoc @agentosPrimitive tags",
7
+ "BoundaryContract/event namespace declarations",
8
+ "docs/agent/boundary-rules.source.json"
9
+ ],
10
+ "routes": [
11
+ {
12
+ "primitive": "primitive.ag-ui.projectLedgerSseToAgUiSse",
13
+ "intents": [
14
+ "stream an agent run to a browser UI",
15
+ "convert runtime ledger SSE into AG-UI frames"
16
+ ],
17
+ "coordinationPackage": "@agent-os/runtime",
18
+ "coordinationCapabilityKind": "projection",
19
+ "sourceFactPrefixes": ["agent.", "chat.", "llm.", "tool."],
20
+ "sourceFactOwners": [
21
+ {
22
+ "prefix": "agent.",
23
+ "owner": "@agent-os/runtime-protocol",
24
+ "declarations": [
25
+ {
26
+ "prefix": "agent.",
27
+ "owner": "@agent-os/runtime-protocol",
28
+ "filePath": "packages/core/src/errors.ts"
29
+ }
30
+ ]
31
+ },
32
+ {
33
+ "prefix": "chat.",
34
+ "owner": "@agent-os/runtime-protocol",
35
+ "declarations": [
36
+ {
37
+ "prefix": "chat.",
38
+ "owner": "@agent-os/runtime-protocol",
39
+ "filePath": "packages/core/src/errors.ts"
40
+ }
41
+ ]
42
+ },
43
+ {
44
+ "prefix": "llm.",
45
+ "owner": "@agent-os/runtime-protocol",
46
+ "declarations": [
47
+ {
48
+ "prefix": "llm.",
49
+ "owner": "@agent-os/runtime-protocol",
50
+ "filePath": "packages/core/src/errors.ts"
51
+ }
52
+ ]
53
+ },
54
+ {
55
+ "prefix": "tool.",
56
+ "owner": "@agent-os/runtime-protocol",
57
+ "declarations": [
58
+ {
59
+ "prefix": "tool.",
60
+ "owner": "@agent-os/runtime-protocol",
61
+ "filePath": "packages/core/src/errors.ts"
62
+ }
63
+ ]
64
+ }
65
+ ],
66
+ "allowedPrimitives": [
67
+ "primitive.ag-ui.projectLedgerEventToAgUiEnvelope",
68
+ "primitive.ag-ui.projectLedgerSseToAgUiSse",
69
+ "primitive.cloudflare-do.createCloudflareLedgerAgUiHistorySseResponse",
70
+ "primitive.cloudflare-do.createCloudflareLedgerAgUiSseResponse",
71
+ "primitive.runtime.SubmitResult",
72
+ "primitive.runtime.SubmitSpec",
73
+ "primitive.runtime.projectRunStatus",
74
+ "primitive.runtime.projectRunTrace"
75
+ ],
76
+ "allowedPrimitivePackages": ["@agent-os/core", "@agent-os/runtime"],
77
+ "forbiddenWrites": [
78
+ {
79
+ "actor": "product",
80
+ "action": "read_raw_ledger_payload",
81
+ "target": {
82
+ "kind": "eventPrefix",
83
+ "value": "agent."
84
+ },
85
+ "invariant": "invariant.boundary.owner-owned-safe-projection"
86
+ },
87
+ {
88
+ "actor": "ui",
89
+ "action": "treat_stream_as_durable_truth",
90
+ "target": {
91
+ "kind": "surface",
92
+ "value": "ag-ui-sse"
93
+ },
94
+ "invariant": "invariant.d10.truth-identity"
95
+ }
96
+ ],
97
+ "gates": ["ag-ui-sse-axis", "ag-ui-egress-allowlist"],
98
+ "invariants": [
99
+ "invariant.ag-ui.sse-axis",
100
+ "invariant.boundary.owner-owned-safe-projection",
101
+ "invariant.d10.truth-identity"
102
+ ],
103
+ "docs": [
104
+ "docs/concepts/ag-ui-wire-adapter.md",
105
+ "docs/concepts/durable-truth.md",
106
+ "docs/packages/runtime.md",
107
+ "docs/tutorials/streaming-chatbot.md"
108
+ ],
109
+ "testEvidence": [
110
+ {
111
+ "primitive": "primitive.ag-ui.projectLedgerEventToAgUiEnvelope",
112
+ "tests": ["packages/runtime/test/cloudflare/workspace-host-helpers.test.ts"]
113
+ },
114
+ {
115
+ "primitive": "primitive.ag-ui.projectLedgerSseToAgUiSse",
116
+ "tests": ["packages/runtime/test/cloudflare/workspace-host-helpers.test.ts"]
117
+ },
118
+ {
119
+ "primitive": "primitive.cloudflare-do.createCloudflareLedgerAgUiHistorySseResponse",
120
+ "tests": ["packages/runtime/test/cloudflare/workspace-host-helpers.test.ts"]
121
+ },
122
+ {
123
+ "primitive": "primitive.cloudflare-do.createCloudflareLedgerAgUiSseResponse",
124
+ "tests": ["packages/runtime/test/cloudflare/workspace-host-helpers.test.ts"]
125
+ },
126
+ {
127
+ "primitive": "primitive.runtime.SubmitResult",
128
+ "tests": [
129
+ "packages/core/test/runtime-protocol/runtime-events.test.ts",
130
+ "packages/runtime/test/submit-agent-runtime-events.test.ts"
131
+ ]
132
+ },
133
+ {
134
+ "primitive": "primitive.runtime.SubmitSpec",
135
+ "tests": [
136
+ "packages/runtime/test/submit-agent-runtime-events.test.ts",
137
+ "packages/runtime/test/submit-agent-timeout.test.ts"
138
+ ]
139
+ },
140
+ {
141
+ "primitive": "primitive.runtime.projectRunStatus",
142
+ "tests": ["packages/runtime/test/run-projector.test.ts"]
143
+ },
144
+ {
145
+ "primitive": "primitive.runtime.projectRunTrace",
146
+ "tests": ["packages/runtime/test/run-projector.test.ts"]
147
+ }
148
+ ]
149
+ },
150
+ {
151
+ "primitive": "primitive.agent-authoring.linkWorkspaceStaticTarget",
152
+ "intents": [
153
+ "compile an authored workspace agent into a static target",
154
+ "generate a typed client from agentos.config.jsonc"
155
+ ],
156
+ "coordinationPackage": "@agent-os/cli",
157
+ "coordinationCapabilityKind": "composer",
158
+ "sourceFactPrefixes": ["agent.", "llm.", "tool.", "workspace_op."],
159
+ "sourceFactOwners": [
160
+ {
161
+ "prefix": "agent.",
162
+ "owner": "@agent-os/runtime-protocol",
163
+ "declarations": [
164
+ {
165
+ "prefix": "agent.",
166
+ "owner": "@agent-os/runtime-protocol",
167
+ "filePath": "packages/core/src/errors.ts"
168
+ }
169
+ ]
170
+ },
171
+ {
172
+ "prefix": "llm.",
173
+ "owner": "@agent-os/runtime-protocol",
174
+ "declarations": [
175
+ {
176
+ "prefix": "llm.",
177
+ "owner": "@agent-os/runtime-protocol",
178
+ "filePath": "packages/core/src/errors.ts"
179
+ }
180
+ ]
181
+ },
182
+ {
183
+ "prefix": "tool.",
184
+ "owner": "@agent-os/runtime-protocol",
185
+ "declarations": [
186
+ {
187
+ "prefix": "tool.",
188
+ "owner": "@agent-os/runtime-protocol",
189
+ "filePath": "packages/core/src/errors.ts"
190
+ }
191
+ ]
192
+ },
193
+ {
194
+ "prefix": "workspace_op.",
195
+ "owner": "@agent-os/workspace-op",
196
+ "declarations": [
197
+ {
198
+ "prefix": "workspace_op.",
199
+ "owner": "@agent-os/workspace-op",
200
+ "filePath": "packages/runtime/src/workspace-op-carrier/definition.ts"
201
+ }
202
+ ]
203
+ }
204
+ ],
205
+ "allowedPrimitives": [
206
+ "primitive.agent-authoring.compileAgentTree",
207
+ "primitive.agent-authoring.linkWorkspaceStaticTarget"
208
+ ],
209
+ "allowedPrimitivePackages": ["@agent-os/cli"],
210
+ "forbiddenWrites": [
211
+ {
212
+ "actor": "generated_target",
213
+ "action": "choose_implementation_from_manifest_json",
214
+ "target": {
215
+ "kind": "surface",
216
+ "value": "manifest.json"
217
+ },
218
+ "invariant": "invariant.algebra.single-code-source"
219
+ },
220
+ {
221
+ "actor": "product",
222
+ "action": "hand_write_generated_target_wiring",
223
+ "target": {
224
+ "kind": "surface",
225
+ "value": ".agentos/generated"
226
+ },
227
+ "invariant": "invariant.docs.agent-projection"
228
+ }
229
+ ],
230
+ "gates": ["convergence-boundary", "public-api", "spike-hygiene"],
231
+ "invariants": ["invariant.algebra.single-code-source", "invariant.docs.agent-projection"],
232
+ "docs": ["docs/guides/build-natural-language-workspace-agent.md", "docs/verification.md"],
233
+ "testEvidence": [
234
+ {
235
+ "primitive": "primitive.agent-authoring.compileAgentTree",
236
+ "tests": ["packages/cli/test/build-command.test.mjs"]
237
+ },
238
+ {
239
+ "primitive": "primitive.agent-authoring.linkWorkspaceStaticTarget",
240
+ "tests": ["packages/cli/test/build-command.test.mjs"]
241
+ }
242
+ ]
243
+ },
244
+ {
245
+ "primitive": "primitive.cloudflare-do.createCloudflareWorkspaceJobResponse",
246
+ "intents": [
247
+ "respond to a workspace job request from the workspace-job projection",
248
+ "materialize Cloudflare HTTP responses without reading raw workspace-job ledger payload"
249
+ ],
250
+ "coordinationPackage": "@agent-os/runtime",
251
+ "coordinationCapabilityKind": "facade",
252
+ "sourceFactPrefixes": ["workspace_job."],
253
+ "sourceFactOwners": [
254
+ {
255
+ "prefix": "workspace_job.",
256
+ "owner": "@agent-os/workspace-job",
257
+ "declarations": [
258
+ {
259
+ "prefix": "workspace_job.",
260
+ "owner": "@agent-os/workspace-job",
261
+ "filePath": "packages/runtime/src/workspace-job-carrier/definition.ts"
262
+ }
263
+ ]
264
+ }
265
+ ],
266
+ "allowedPrimitives": [
267
+ "primitive.cloudflare-do.createCloudflareWorkspaceJobResponse",
268
+ "primitive.runtime.projectWorkspaceJobObservability",
269
+ "primitive.runtime.runWorkspaceJobEffect"
270
+ ],
271
+ "allowedPrimitivePackages": ["@agent-os/runtime"],
272
+ "forbiddenWrites": [
273
+ {
274
+ "actor": "product",
275
+ "action": "write_terminal_fact",
276
+ "target": {
277
+ "kind": "eventPrefix",
278
+ "value": "workspace_job."
279
+ },
280
+ "invariant": "invariant.d10.namespace-integrity"
281
+ },
282
+ {
283
+ "actor": "public_submit",
284
+ "action": "carry_resolved_provider_material",
285
+ "target": {
286
+ "kind": "material",
287
+ "value": "resolved provider material"
288
+ },
289
+ "invariant": "invariant.d10.truth-identity"
290
+ }
291
+ ],
292
+ "gates": ["workspace-job", "observability", "public-api"],
293
+ "invariants": [
294
+ "invariant.d10.namespace-integrity",
295
+ "invariant.d10.truth-identity",
296
+ "invariant.workspace-job.failure-observability-join",
297
+ "invariant.workspace-job.verified-terminal"
298
+ ],
299
+ "docs": [
300
+ "docs/boundary-contract.md",
301
+ "docs/concepts/durable-truth.md",
302
+ "docs/packages/runtime.md"
303
+ ],
304
+ "testEvidence": [
305
+ {
306
+ "primitive": "primitive.cloudflare-do.createCloudflareWorkspaceJobResponse",
307
+ "tests": ["packages/runtime/test/cloudflare/workspace-host-helpers.test.ts"]
308
+ },
309
+ {
310
+ "primitive": "primitive.runtime.projectWorkspaceJobObservability",
311
+ "tests": ["packages/runtime/test/workspace-job.test.ts"]
312
+ },
313
+ {
314
+ "primitive": "primitive.runtime.runWorkspaceJobEffect",
315
+ "tests": ["packages/runtime/test/workspace-job.test.ts"]
316
+ }
317
+ ]
318
+ },
319
+ {
320
+ "primitive": "primitive.kernel.defineProductTool",
321
+ "intents": [
322
+ "add a product tool with schema, admission, and execution domain",
323
+ "route effectful tool execution through declared tool authority"
324
+ ],
325
+ "coordinationPackage": "@agent-os/core",
326
+ "coordinationCapabilityKind": "kernel",
327
+ "sourceFactPrefixes": ["tool."],
328
+ "sourceFactOwners": [
329
+ {
330
+ "prefix": "tool.",
331
+ "owner": "@agent-os/runtime-protocol",
332
+ "declarations": [
333
+ {
334
+ "prefix": "tool.",
335
+ "owner": "@agent-os/runtime-protocol",
336
+ "filePath": "packages/core/src/errors.ts"
337
+ }
338
+ ]
339
+ }
340
+ ],
341
+ "allowedPrimitives": [
342
+ "primitive.kernel.AgentSchema",
343
+ "primitive.kernel.ExecutionDomain",
344
+ "primitive.kernel.Tool",
345
+ "primitive.kernel.ToolContract",
346
+ "primitive.kernel.defineProductTool"
347
+ ],
348
+ "allowedPrimitivePackages": ["@agent-os/core"],
349
+ "forbiddenWrites": [
350
+ {
351
+ "actor": "product",
352
+ "action": "execute_without_declared_tool_contract",
353
+ "target": {
354
+ "kind": "eventPrefix",
355
+ "value": "tool."
356
+ },
357
+ "invariant": "invariant.algebra.type-or-boot-proof"
358
+ },
359
+ {
360
+ "actor": "tool_handler",
361
+ "action": "store_provider_material_in_tool_payload",
362
+ "target": {
363
+ "kind": "material",
364
+ "value": "provider credentials"
365
+ },
366
+ "invariant": "invariant.boundary.runtime-validation-external-only"
367
+ }
368
+ ],
369
+ "gates": ["tool-execution-access-requirements", "tool-mutation-boundary"],
370
+ "invariants": [
371
+ "invariant.algebra.single-code-source",
372
+ "invariant.algebra.type-or-boot-proof",
373
+ "invariant.boundary.runtime-validation-external-only",
374
+ "invariant.d10.truth-identity"
375
+ ],
376
+ "docs": [
377
+ "docs/concepts/agent-schema.md",
378
+ "docs/concepts/durable-truth.md",
379
+ "docs/concepts/tool-execution-domain.md",
380
+ "docs/README.md",
381
+ "docs/verification.md"
382
+ ],
383
+ "testEvidence": [
384
+ {
385
+ "primitive": "primitive.kernel.AgentSchema",
386
+ "tests": ["packages/core/test/kernel/agent-schema.test.ts"]
387
+ },
388
+ {
389
+ "primitive": "primitive.kernel.ExecutionDomain",
390
+ "tests": ["packages/core/test/kernel/tools.test.ts"]
391
+ },
392
+ {
393
+ "primitive": "primitive.kernel.Tool",
394
+ "tests": ["packages/core/test/kernel/tools.test.ts"]
395
+ },
396
+ {
397
+ "primitive": "primitive.kernel.ToolContract",
398
+ "tests": ["packages/core/test/kernel/tools.test.ts"]
399
+ },
400
+ {
401
+ "primitive": "primitive.kernel.defineProductTool",
402
+ "tests": ["packages/core/test/kernel/tools.test.ts"]
403
+ }
404
+ ]
405
+ },
406
+ {
407
+ "primitive": "primitive.runtime.defineProjection",
408
+ "intents": [
409
+ "build a materialized projection reader",
410
+ "derive observable state from ledger facts without making projection state truth"
411
+ ],
412
+ "coordinationPackage": "@agent-os/runtime",
413
+ "coordinationCapabilityKind": "projection",
414
+ "sourceFactPrefixes": ["agent."],
415
+ "sourceFactOwners": [
416
+ {
417
+ "prefix": "agent.",
418
+ "owner": "@agent-os/runtime-protocol",
419
+ "declarations": [
420
+ {
421
+ "prefix": "agent.",
422
+ "owner": "@agent-os/runtime-protocol",
423
+ "filePath": "packages/core/src/errors.ts"
424
+ }
425
+ ]
426
+ }
427
+ ],
428
+ "allowedPrimitives": [
429
+ "primitive.runtime.MaterializedProjectionDefinition",
430
+ "primitive.runtime.ProjectionReduceResult",
431
+ "primitive.runtime.defineProjection",
432
+ "primitive.runtime.waitForProjection"
433
+ ],
434
+ "allowedPrimitivePackages": ["@agent-os/runtime"],
435
+ "forbiddenWrites": [
436
+ {
437
+ "actor": "projection",
438
+ "action": "become_source_of_truth",
439
+ "target": {
440
+ "kind": "surface",
441
+ "value": "materialized projection state"
442
+ },
443
+ "invariant": "invariant.d10.truth-identity"
444
+ },
445
+ {
446
+ "actor": "consumer",
447
+ "action": "write_derived_state_back_to_ledger_fact",
448
+ "target": {
449
+ "kind": "eventPrefix",
450
+ "value": "agent."
451
+ },
452
+ "invariant": "invariant.ledger.single-commit-source"
453
+ }
454
+ ],
455
+ "gates": ["check"],
456
+ "invariants": ["invariant.d10.truth-identity", "invariant.ledger.single-commit-source"],
457
+ "docs": ["docs/concepts/durable-truth.md", "docs/concepts/materialized-projections.md"],
458
+ "testEvidence": [
459
+ {
460
+ "primitive": "primitive.runtime.MaterializedProjectionDefinition",
461
+ "tests": ["packages/runtime/test/projection.test.ts"]
462
+ },
463
+ {
464
+ "primitive": "primitive.runtime.ProjectionReduceResult",
465
+ "tests": ["packages/runtime/test/projection.test.ts"]
466
+ },
467
+ {
468
+ "primitive": "primitive.runtime.defineProjection",
469
+ "tests": ["packages/runtime/test/projection.test.ts"]
470
+ },
471
+ {
472
+ "primitive": "primitive.runtime.waitForProjection",
473
+ "tests": ["packages/runtime/test/projection.test.ts"]
474
+ }
475
+ ]
476
+ }
477
+ ],
478
+ "coverage": {
479
+ "recipes": [
480
+ {
481
+ "id": "recipe.natural-language-workspace-agent",
482
+ "routePrimitives": ["primitive.agent-authoring.linkWorkspaceStaticTarget"]
483
+ },
484
+ {
485
+ "id": "recipe.hello-ledger-event",
486
+ "routePrimitives": [],
487
+ "noRouteReason": "tutorial-only ledger identity exercise; product workflows should route through a higher-level primitive"
488
+ },
489
+ {
490
+ "id": "recipe.projection-reader",
491
+ "routePrimitives": ["primitive.runtime.defineProjection"]
492
+ },
493
+ {
494
+ "id": "recipe.streaming-chatbot",
495
+ "routePrimitives": ["primitive.ag-ui.projectLedgerSseToAgUiSse"]
496
+ },
497
+ {
498
+ "id": "recipe.tool-schema-authority",
499
+ "routePrimitives": ["primitive.kernel.defineProductTool"]
500
+ }
501
+ ],
502
+ "primitives": [
503
+ {
504
+ "id": "primitive.agent-authoring.compileAgentTree",
505
+ "capabilityKind": "composer",
506
+ "routePrimitives": ["primitive.agent-authoring.linkWorkspaceStaticTarget"]
507
+ },
508
+ {
509
+ "id": "primitive.agent-authoring.linkWorkspaceStaticTarget",
510
+ "capabilityKind": "composer",
511
+ "routePrimitives": ["primitive.agent-authoring.linkWorkspaceStaticTarget"]
512
+ },
513
+ {
514
+ "id": "primitive.cloudflare-do.createCloudflareLedgerAgUiHistorySseResponse",
515
+ "capabilityKind": "facade",
516
+ "routePrimitives": ["primitive.ag-ui.projectLedgerSseToAgUiSse"]
517
+ },
518
+ {
519
+ "id": "primitive.cloudflare-do.createCloudflareLedgerAgUiSseResponse",
520
+ "capabilityKind": "facade",
521
+ "routePrimitives": ["primitive.ag-ui.projectLedgerSseToAgUiSse"]
522
+ },
523
+ {
524
+ "id": "primitive.cloudflare-do.createCloudflareWorkspaceJobResponse",
525
+ "capabilityKind": "facade",
526
+ "routePrimitives": ["primitive.cloudflare-do.createCloudflareWorkspaceJobResponse"]
527
+ }
528
+ ]
529
+ }
530
+ }