agent-nuvira 3.3.3 → 3.3.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/README.md +13 -5
- package/dist/agent-sdk/src/agent.d.ts +2 -0
- package/dist/agent-sdk/src/agent.d.ts.map +1 -1
- package/dist/agent-sdk/src/define.d.ts +64 -0
- package/dist/agent-sdk/src/define.d.ts.map +1 -0
- package/dist/agent-sdk/src/define.js +76 -0
- package/dist/agent-sdk/src/define.js.map +1 -0
- package/dist/agent-sdk/src/index.d.ts +9 -0
- package/dist/agent-sdk/src/index.d.ts.map +1 -1
- package/dist/agent-sdk/src/index.js +9 -0
- package/dist/agent-sdk/src/index.js.map +1 -1
- package/dist/agent-sdk/src/scaffold.d.ts +11 -0
- package/dist/agent-sdk/src/scaffold.d.ts.map +1 -1
- package/dist/agent-sdk/src/scaffold.js +16 -6
- package/dist/agent-sdk/src/scaffold.js.map +1 -1
- package/dist/agents/long-form-plan.d.ts.map +1 -1
- package/dist/agents/long-form-plan.js +2 -1
- package/dist/agents/long-form-plan.js.map +1 -1
- package/dist/agents/orchestrator.d.ts.map +1 -1
- package/dist/agents/orchestrator.js +5 -4
- package/dist/agents/orchestrator.js.map +1 -1
- package/dist/cli/agent.d.ts +2 -2
- package/dist/cli/agent.js +10 -10
- package/dist/cli/chat.d.ts +94 -0
- package/dist/cli/chat.d.ts.map +1 -1
- package/dist/cli/chat.js +354 -20
- package/dist/cli/chat.js.map +1 -1
- package/dist/cli/cli-program.d.ts.map +1 -1
- package/dist/cli/cli-program.js +5 -0
- package/dist/cli/cli-program.js.map +1 -1
- package/dist/cli/config.d.ts.map +1 -1
- package/dist/cli/config.js +9 -1
- package/dist/cli/config.js.map +1 -1
- package/dist/cli/doctor.d.ts.map +1 -1
- package/dist/cli/doctor.js +3 -2
- package/dist/cli/doctor.js.map +1 -1
- package/dist/cli/edit.js +2 -2
- package/dist/cli/eval.d.ts +17 -0
- package/dist/cli/eval.d.ts.map +1 -1
- package/dist/cli/eval.js +105 -2
- package/dist/cli/eval.js.map +1 -1
- package/dist/cli/execute.d.ts +16 -1
- package/dist/cli/execute.d.ts.map +1 -1
- package/dist/cli/execute.js +192 -22
- package/dist/cli/execute.js.map +1 -1
- package/dist/cli/loop-executor.d.ts +55 -0
- package/dist/cli/loop-executor.d.ts.map +1 -1
- package/dist/cli/loop-executor.js +212 -13
- package/dist/cli/loop-executor.js.map +1 -1
- package/dist/cli/model.d.ts.map +1 -1
- package/dist/cli/model.js +9 -8
- package/dist/cli/model.js.map +1 -1
- package/dist/cli/models.d.ts +1 -1
- package/dist/cli/models.js +4 -4
- package/dist/cli/parity.d.ts +85 -0
- package/dist/cli/parity.d.ts.map +1 -0
- package/dist/cli/parity.js +506 -0
- package/dist/cli/parity.js.map +1 -0
- package/dist/cli/plan.d.ts.map +1 -1
- package/dist/cli/plan.js +2 -1
- package/dist/cli/plan.js.map +1 -1
- package/dist/cli/retrieval.d.ts.map +1 -1
- package/dist/cli/retrieval.js +5 -4
- package/dist/cli/retrieval.js.map +1 -1
- package/dist/cli/sdk.js +4 -4
- package/dist/cli/sdk.js.map +1 -1
- package/dist/cli/trace.d.ts.map +1 -1
- package/dist/cli/trace.js +2 -1
- package/dist/cli/trace.js.map +1 -1
- package/dist/cli/workflow.js +2 -2
- package/dist/cli/workflow.js.map +1 -1
- package/dist/config/process-env.d.ts +136 -0
- package/dist/config/process-env.d.ts.map +1 -0
- package/dist/config/process-env.js +217 -0
- package/dist/config/process-env.js.map +1 -0
- package/dist/config/types.d.ts +44 -0
- package/dist/config/types.d.ts.map +1 -1
- package/dist/findings/verdicts.d.ts +241 -0
- package/dist/findings/verdicts.d.ts.map +1 -0
- package/dist/findings/verdicts.js +284 -0
- package/dist/findings/verdicts.js.map +1 -0
- package/dist/gateway/adapters.d.ts +65 -0
- package/dist/gateway/adapters.d.ts.map +1 -1
- package/dist/gateway/adapters.js +216 -10
- package/dist/gateway/adapters.js.map +1 -1
- package/dist/gateway/channel-directory.d.ts +31 -0
- package/dist/gateway/channel-directory.d.ts.map +1 -1
- package/dist/gateway/channel-directory.js +40 -0
- package/dist/gateway/channel-directory.js.map +1 -1
- package/dist/gateway/gateway-log.d.ts +1 -1
- package/dist/gateway/gateway-log.d.ts.map +1 -1
- package/dist/gateway/gateway-log.js.map +1 -1
- package/dist/gateway/hooks.d.ts +87 -19
- package/dist/gateway/hooks.d.ts.map +1 -1
- package/dist/gateway/hooks.js +62 -23
- package/dist/gateway/hooks.js.map +1 -1
- package/dist/gateway/inbound-media.d.ts +147 -0
- package/dist/gateway/inbound-media.d.ts.map +1 -0
- package/dist/gateway/inbound-media.js +317 -0
- package/dist/gateway/inbound-media.js.map +1 -0
- package/dist/gateway/inbox.d.ts +8 -1
- package/dist/gateway/inbox.d.ts.map +1 -1
- package/dist/gateway/inbox.js.map +1 -1
- package/dist/gateway/platform-config.d.ts +14 -0
- package/dist/gateway/platform-config.d.ts.map +1 -1
- package/dist/gateway/platform-config.js +26 -8
- package/dist/gateway/platform-config.js.map +1 -1
- package/dist/gateway/realtime.d.ts +114 -0
- package/dist/gateway/realtime.d.ts.map +1 -0
- package/dist/gateway/realtime.js +402 -0
- package/dist/gateway/realtime.js.map +1 -0
- package/dist/gateway/registry.d.ts +31 -0
- package/dist/gateway/registry.d.ts.map +1 -1
- package/dist/gateway/registry.js +224 -4
- package/dist/gateway/registry.js.map +1 -1
- package/dist/gateway/whatsapp/baileys-bridge.d.ts +11 -1
- package/dist/gateway/whatsapp/baileys-bridge.d.ts.map +1 -1
- package/dist/gateway/whatsapp/baileys-bridge.js +123 -4
- package/dist/gateway/whatsapp/baileys-bridge.js.map +1 -1
- package/dist/gateway/whatsapp/bridge.d.ts +6 -2
- package/dist/gateway/whatsapp/bridge.d.ts.map +1 -1
- package/dist/gateway/whatsapp/bridge.js.map +1 -1
- package/dist/index.js +8 -0
- package/dist/index.js.map +1 -1
- package/dist/inference/factory.d.ts +14 -0
- package/dist/inference/factory.d.ts.map +1 -1
- package/dist/inference/factory.js +17 -0
- package/dist/inference/factory.js.map +1 -1
- package/dist/inference/groq-adapter.d.ts +2 -0
- package/dist/inference/groq-adapter.d.ts.map +1 -1
- package/dist/inference/groq-adapter.js +16 -6
- package/dist/inference/groq-adapter.js.map +1 -1
- package/dist/inference/tools.d.ts.map +1 -1
- package/dist/inference/tools.js +29 -0
- package/dist/inference/tools.js.map +1 -1
- package/dist/learning/benchmark.d.ts.map +1 -1
- package/dist/learning/benchmark.js +3 -2
- package/dist/learning/benchmark.js.map +1 -1
- package/dist/learning/continuation.d.ts.map +1 -1
- package/dist/learning/continuation.js +2 -1
- package/dist/learning/continuation.js.map +1 -1
- package/dist/learning/cost-tracker.d.ts.map +1 -1
- package/dist/learning/cost-tracker.js +2 -1
- package/dist/learning/cost-tracker.js.map +1 -1
- package/dist/learning/deferred-task.d.ts.map +1 -1
- package/dist/learning/deferred-task.js +13 -4
- package/dist/learning/deferred-task.js.map +1 -1
- package/dist/learning/eval-framework.d.ts.map +1 -1
- package/dist/learning/eval-framework.js +2 -1
- package/dist/learning/eval-framework.js.map +1 -1
- package/dist/learning/long-form.d.ts.map +1 -1
- package/dist/learning/long-form.js +2 -1
- package/dist/learning/long-form.js.map +1 -1
- package/dist/learning/model-reachability.d.ts +95 -0
- package/dist/learning/model-reachability.d.ts.map +1 -0
- package/dist/learning/model-reachability.js +111 -0
- package/dist/learning/model-reachability.js.map +1 -0
- package/dist/learning/model-registry.d.ts +22 -0
- package/dist/learning/model-registry.d.ts.map +1 -1
- package/dist/learning/model-registry.js +26 -1
- package/dist/learning/model-registry.js.map +1 -1
- package/dist/learning/model-verify-job.d.ts +131 -0
- package/dist/learning/model-verify-job.d.ts.map +1 -0
- package/dist/learning/model-verify-job.js +221 -0
- package/dist/learning/model-verify-job.js.map +1 -0
- package/dist/learning/reasoning-cache.d.ts.map +1 -1
- package/dist/learning/reasoning-cache.js +2 -1
- package/dist/learning/reasoning-cache.js.map +1 -1
- package/dist/learning/reasoning-trace.d.ts +37 -1
- package/dist/learning/reasoning-trace.d.ts.map +1 -1
- package/dist/learning/reasoning-trace.js +66 -0
- package/dist/learning/reasoning-trace.js.map +1 -1
- package/dist/learning/resilient-call.d.ts.map +1 -1
- package/dist/learning/resilient-call.js +2 -1
- package/dist/learning/resilient-call.js.map +1 -1
- package/dist/learning/retrieval.d.ts.map +1 -1
- package/dist/learning/retrieval.js +2 -1
- package/dist/learning/retrieval.js.map +1 -1
- package/dist/learning/seeded-benchmark.d.ts +160 -0
- package/dist/learning/seeded-benchmark.d.ts.map +1 -0
- package/dist/learning/seeded-benchmark.js +321 -0
- package/dist/learning/seeded-benchmark.js.map +1 -0
- package/dist/learning/seeded-bugs.d.ts +142 -0
- package/dist/learning/seeded-bugs.d.ts.map +1 -0
- package/dist/learning/seeded-bugs.js +535 -0
- package/dist/learning/seeded-bugs.js.map +1 -0
- package/dist/learning/step-checkpoint.d.ts +127 -0
- package/dist/learning/step-checkpoint.d.ts.map +1 -0
- package/dist/learning/step-checkpoint.js +244 -0
- package/dist/learning/step-checkpoint.js.map +1 -0
- package/dist/nlu/intent-confirm.d.ts +23 -1
- package/dist/nlu/intent-confirm.d.ts.map +1 -1
- package/dist/nlu/intent-confirm.js +85 -2
- package/dist/nlu/intent-confirm.js.map +1 -1
- package/dist/nlu/learnings.d.ts +7 -0
- package/dist/nlu/learnings.d.ts.map +1 -1
- package/dist/nlu/learnings.js +7 -0
- package/dist/nlu/learnings.js.map +1 -1
- package/dist/observability/debug-log.d.ts +250 -0
- package/dist/observability/debug-log.d.ts.map +1 -0
- package/dist/observability/debug-log.js +500 -0
- package/dist/observability/debug-log.js.map +1 -0
- package/dist/observability/event-bus.d.ts.map +1 -1
- package/dist/observability/event-bus.js +4 -1
- package/dist/observability/event-bus.js.map +1 -1
- package/dist/observability/otel.d.ts +278 -0
- package/dist/observability/otel.d.ts.map +1 -0
- package/dist/observability/otel.js +590 -0
- package/dist/observability/otel.js.map +1 -0
- package/dist/parity/drivers.d.ts +99 -0
- package/dist/parity/drivers.d.ts.map +1 -0
- package/dist/parity/drivers.js +1362 -0
- package/dist/parity/drivers.js.map +1 -0
- package/dist/parity/graph.d.ts +73 -0
- package/dist/parity/graph.d.ts.map +1 -0
- package/dist/parity/graph.js +162 -0
- package/dist/parity/graph.js.map +1 -0
- package/dist/parity/matrix.d.ts +105 -0
- package/dist/parity/matrix.d.ts.map +1 -0
- package/dist/parity/matrix.js +352 -0
- package/dist/parity/matrix.js.map +1 -0
- package/dist/parity/observation.d.ts +444 -0
- package/dist/parity/observation.d.ts.map +1 -0
- package/dist/parity/observation.js +333 -0
- package/dist/parity/observation.js.map +1 -0
- package/dist/parity/scenarios.d.ts +229 -0
- package/dist/parity/scenarios.d.ts.map +1 -0
- package/dist/parity/scenarios.js +175 -0
- package/dist/parity/scenarios.js.map +1 -0
- package/dist/parity/surfaces.d.ts +122 -0
- package/dist/parity/surfaces.d.ts.map +1 -0
- package/dist/parity/surfaces.js +190 -0
- package/dist/parity/surfaces.js.map +1 -0
- package/dist/runtime/fault-injection.d.ts +173 -0
- package/dist/runtime/fault-injection.d.ts.map +1 -0
- package/dist/runtime/fault-injection.js +281 -0
- package/dist/runtime/fault-injection.js.map +1 -0
- package/dist/tools/child-agent-entry.d.ts +23 -0
- package/dist/tools/child-agent-entry.d.ts.map +1 -0
- package/dist/tools/child-agent-entry.js +129 -0
- package/dist/tools/child-agent-entry.js.map +1 -0
- package/dist/tools/child-agent-runtime.d.ts +124 -0
- package/dist/tools/child-agent-runtime.d.ts.map +1 -0
- package/dist/tools/child-agent-runtime.js +704 -0
- package/dist/tools/child-agent-runtime.js.map +1 -0
- package/dist/tools/coding-tools.d.ts.map +1 -1
- package/dist/tools/coding-tools.js +82 -10
- package/dist/tools/coding-tools.js.map +1 -1
- package/dist/tools/delegation-system.d.ts +31 -0
- package/dist/tools/delegation-system.d.ts.map +1 -1
- package/dist/tools/delegation-system.js +70 -9
- package/dist/tools/delegation-system.js.map +1 -1
- package/dist/tools/extract/docx.d.ts +27 -0
- package/dist/tools/extract/docx.d.ts.map +1 -0
- package/dist/tools/extract/docx.js +48 -0
- package/dist/tools/extract/docx.js.map +1 -0
- package/dist/tools/extract/html-text.d.ts +27 -0
- package/dist/tools/extract/html-text.d.ts.map +1 -0
- package/dist/tools/extract/html-text.js +86 -0
- package/dist/tools/extract/html-text.js.map +1 -0
- package/dist/tools/extract/pdf-ocr.d.ts +58 -0
- package/dist/tools/extract/pdf-ocr.d.ts.map +1 -0
- package/dist/tools/extract/pdf-ocr.js +116 -0
- package/dist/tools/extract/pdf-ocr.js.map +1 -0
- package/dist/tools/extract/pdf.d.ts +65 -0
- package/dist/tools/extract/pdf.d.ts.map +1 -0
- package/dist/tools/extract/pdf.js +197 -0
- package/dist/tools/extract/pdf.js.map +1 -0
- package/dist/tools/extract/pptx.d.ts +32 -0
- package/dist/tools/extract/pptx.d.ts.map +1 -0
- package/dist/tools/extract/pptx.js +77 -0
- package/dist/tools/extract/pptx.js.map +1 -0
- package/dist/tools/extract/xlsx.d.ts +47 -0
- package/dist/tools/extract/xlsx.d.ts.map +1 -0
- package/dist/tools/extract/xlsx.js +111 -0
- package/dist/tools/extract/xlsx.js.map +1 -0
- package/dist/tools/finding-tool.d.ts +76 -0
- package/dist/tools/finding-tool.d.ts.map +1 -0
- package/dist/tools/finding-tool.js +125 -0
- package/dist/tools/finding-tool.js.map +1 -0
- package/dist/tools/messaging-tools.d.ts +41 -11
- package/dist/tools/messaging-tools.d.ts.map +1 -1
- package/dist/tools/messaging-tools.js +104 -55
- package/dist/tools/messaging-tools.js.map +1 -1
- package/dist/tools/neutts-synth.d.ts +27 -3
- package/dist/tools/neutts-synth.d.ts.map +1 -1
- package/dist/tools/neutts-synth.js +57 -13
- package/dist/tools/neutts-synth.js.map +1 -1
- package/dist/tools/pipeline-tool.d.ts +43 -1
- package/dist/tools/pipeline-tool.d.ts.map +1 -1
- package/dist/tools/pipeline-tool.js +13 -2
- package/dist/tools/pipeline-tool.js.map +1 -1
- package/dist/tools/read-extract.d.ts +116 -45
- package/dist/tools/read-extract.d.ts.map +1 -1
- package/dist/tools/read-extract.js +494 -158
- package/dist/tools/read-extract.js.map +1 -1
- package/dist/tools/registry.d.ts +2 -2
- package/dist/tools/registry.d.ts.map +1 -1
- package/dist/tools/registry.js +152 -23
- package/dist/tools/registry.js.map +1 -1
- package/dist/tools/subagent-refusal.d.ts +15 -0
- package/dist/tools/subagent-refusal.d.ts.map +1 -0
- package/dist/tools/subagent-refusal.js +18 -0
- package/dist/tools/subagent-refusal.js.map +1 -0
- package/dist/tools/subagent-spawner.d.ts +122 -0
- package/dist/tools/subagent-spawner.d.ts.map +1 -1
- package/dist/tools/subagent-spawner.js +249 -28
- package/dist/tools/subagent-spawner.js.map +1 -1
- package/dist/tools/tool-hooks.d.ts +177 -0
- package/dist/tools/tool-hooks.d.ts.map +1 -0
- package/dist/tools/tool-hooks.js +427 -0
- package/dist/tools/tool-hooks.js.map +1 -0
- package/dist/tools/tool-loop.d.ts +82 -0
- package/dist/tools/tool-loop.d.ts.map +1 -1
- package/dist/tools/tool-loop.js +167 -9
- package/dist/tools/tool-loop.js.map +1 -1
- package/dist/tools/tool-refusal.d.ts +68 -0
- package/dist/tools/tool-refusal.d.ts.map +1 -0
- package/dist/tools/tool-refusal.js +78 -0
- package/dist/tools/tool-refusal.js.map +1 -0
- package/dist/tools/toolsets.d.ts +8 -0
- package/dist/tools/toolsets.d.ts.map +1 -1
- package/dist/tools/toolsets.js +12 -2
- package/dist/tools/toolsets.js.map +1 -1
- package/dist/tools/vision-tools.d.ts +88 -83
- package/dist/tools/vision-tools.d.ts.map +1 -1
- package/dist/tools/vision-tools.js +134 -103
- package/dist/tools/vision-tools.js.map +1 -1
- package/dist/tools/worktree.d.ts +210 -0
- package/dist/tools/worktree.d.ts.map +1 -0
- package/dist/tools/worktree.js +374 -0
- package/dist/tools/worktree.js.map +1 -0
- package/dist/utils/format.d.ts +3 -0
- package/dist/utils/format.d.ts.map +1 -0
- package/dist/utils/format.js +32 -0
- package/dist/utils/format.js.map +1 -0
- package/dist/web-dashboard/attachment-extract.d.ts +64 -0
- package/dist/web-dashboard/attachment-extract.d.ts.map +1 -0
- package/dist/web-dashboard/attachment-extract.js +154 -0
- package/dist/web-dashboard/attachment-extract.js.map +1 -0
- package/dist/web-dashboard/chat-console.d.ts +108 -1
- package/dist/web-dashboard/chat-console.d.ts.map +1 -1
- package/dist/web-dashboard/chat-console.js +36 -0
- package/dist/web-dashboard/chat-console.js.map +1 -1
- package/dist/web-dashboard/hub-data.d.ts +37 -0
- package/dist/web-dashboard/hub-data.d.ts.map +1 -1
- package/dist/web-dashboard/hub-data.js +61 -1
- package/dist/web-dashboard/hub-data.js.map +1 -1
- package/dist/web-dashboard/process-env-inventory.d.ts +57 -0
- package/dist/web-dashboard/process-env-inventory.d.ts.map +1 -0
- package/dist/web-dashboard/process-env-inventory.js +96 -0
- package/dist/web-dashboard/process-env-inventory.js.map +1 -0
- package/dist/web-dashboard/server.d.ts +14 -0
- package/dist/web-dashboard/server.d.ts.map +1 -1
- package/dist/web-dashboard/server.js +493 -30
- package/dist/web-dashboard/server.js.map +1 -1
- package/dist/web-dashboard/src/types.d.ts +261 -48
- package/dist/web-dashboard/src/types.d.ts.map +1 -1
- package/package.json +18 -3
- package/src/web-dashboard/public/assets/{index-Cyd6tIew.css → index-CIJ6FHHZ.css} +1 -1
- package/src/web-dashboard/public/assets/index-CsySzR41.js +207 -0
- package/src/web-dashboard/public/assets/index-CsySzR41.js.map +1 -0
- package/src/web-dashboard/public/index.html +2 -2
- package/dist/tools/child-agent-worker.js +0 -212
- package/src/web-dashboard/public/assets/index-CxDj7p6i.js +0 -207
- package/src/web-dashboard/public/assets/index-CxDj7p6i.js.map +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"drivers.js","sourceRoot":"","sources":["../../src/parity/drivers.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WS0 (#22) — reading the real import graph so the registry cannot drift.
|
|
3
|
+
*
|
|
4
|
+
* A declared registry that nobody checks is documentation, and documentation
|
|
5
|
+
* drifts silently — this repo has already been bitten by exactly that (the
|
|
6
|
+
* dashboard bundle was hand-maintained generated output, and nothing noticed
|
|
7
|
+
* until a whole tab was missing from it). So the surface registry is checked
|
|
8
|
+
* against the modules themselves: a surface must actually reach a declared turn
|
|
9
|
+
* entry, and the list of surfaces that construct their own provider must EQUAL
|
|
10
|
+
* the frozen debt list, so the debt can only shrink.
|
|
11
|
+
*
|
|
12
|
+
* Dependency-free on purpose (regex + `fs`), for the same reason
|
|
13
|
+
* `scripts/check-dashboard-bundle.mjs` is: this runs in the root suite on every
|
|
14
|
+
* machine, and a parser here would be a new thing to keep working. A specifier
|
|
15
|
+
* it fails to see makes the check NARROWER, never wrong — and the registry
|
|
16
|
+
* assertions in `tests/parity/cross-surface.test.ts` fail loudly if the graph
|
|
17
|
+
* comes back empty, so a silent zero-match cannot masquerade as compliance.
|
|
18
|
+
*/
|
|
19
|
+
import { type SurfaceDescriptor, type TurnEntryId } from './surfaces.js';
|
|
20
|
+
/** The provider factory a surface must not construct for itself. */
|
|
21
|
+
export declare const PROVIDER_FACTORY_MODULE = "src/inference/factory.ts";
|
|
22
|
+
/**
|
|
23
|
+
* Relative import specifiers in a module — static `from '...'`, dynamic
|
|
24
|
+
* `import('...')` (the dashboard reaches the chat engine this way), and
|
|
25
|
+
* `require('...')` so a CJS shim cannot hide one.
|
|
26
|
+
*/
|
|
27
|
+
export declare function extractSpecifiers(code: string): string[];
|
|
28
|
+
/**
|
|
29
|
+
* Resolve a relative specifier from `fromFile` to a repo-relative source path,
|
|
30
|
+
* or null when it leaves the repo, points at a package, or does not exist.
|
|
31
|
+
*
|
|
32
|
+
* The `.js`-means-`.ts` rule is the repo's ESM convention (see
|
|
33
|
+
* `scripts/fix-esm-extensions.mjs`): sources are written with the emitted
|
|
34
|
+
* extension.
|
|
35
|
+
*/
|
|
36
|
+
export declare function resolveSpecifier(root: string, fromFile: string, spec: string): string | null;
|
|
37
|
+
/** The repo-relative modules `modulePath` imports directly (relative imports only). */
|
|
38
|
+
export declare function directImports(root: string, modulePath: string): string[];
|
|
39
|
+
/** What a surface's own modules actually do, read off the imports. */
|
|
40
|
+
export interface SurfaceReach {
|
|
41
|
+
surface: SurfaceDescriptor['id'];
|
|
42
|
+
/** Shared turn entries the surface's own modules reach, directly or by identity. */
|
|
43
|
+
entries: TurnEntryId[];
|
|
44
|
+
/** Surface modules that build their own provider. */
|
|
45
|
+
providerFactory: string[];
|
|
46
|
+
/** Surface modules that drive the pipeline engine without the wrapper. */
|
|
47
|
+
pipelineWrapperBypass: string[];
|
|
48
|
+
/**
|
|
49
|
+
* True when the process-local rules were skipped because the surface IS its
|
|
50
|
+
* own process. Recorded rather than silently empty: an exemption that is not
|
|
51
|
+
* visible in the result is indistinguishable from a check that found nothing.
|
|
52
|
+
*/
|
|
53
|
+
exemptFromProcessRules: boolean;
|
|
54
|
+
}
|
|
55
|
+
/**
|
|
56
|
+
* Classify one surface from the real import graph.
|
|
57
|
+
*
|
|
58
|
+
* The rules are direct-import rules, deliberately: a surface reaching the
|
|
59
|
+
* provider factory *through* a shared entry is the intended path, so only the
|
|
60
|
+
* surface's own modules are inspected.
|
|
61
|
+
*/
|
|
62
|
+
export declare function classifySurface(root: string, surface: SurfaceDescriptor): SurfaceReach;
|
|
63
|
+
/** Classify every declared surface. */
|
|
64
|
+
export declare function classifyAllSurfaces(root: string): SurfaceReach[];
|
|
65
|
+
/**
|
|
66
|
+
* The surface-level debt actually present in the tree, in the same shape as
|
|
67
|
+
* `SURFACE_DEBT`. The architecture test asserts these are EQUAL, so a new
|
|
68
|
+
* bypass fails and a fixed-but-not-unlisted one fails too.
|
|
69
|
+
*/
|
|
70
|
+
export declare function observedSurfaceDebt(root: string): Record<string, string[]>;
|
|
71
|
+
/** The frozen debt, normalised the same way, for an equality assertion. */
|
|
72
|
+
export declare function declaredSurfaceDebt(): Record<string, string[]>;
|
|
73
|
+
//# sourceMappingURL=graph.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph.d.ts","sourceRoot":"","sources":["../../src/parity/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAKH,OAAO,EAIL,KAAK,iBAAiB,EACtB,KAAK,WAAW,EACjB,MAAM,eAAe,CAAC;AAKvB,oEAAoE;AACpE,eAAO,MAAM,uBAAuB,6BAA6B,CAAC;AAKlE;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,CAWxD;AAED;;;;;;;GAOG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAkB5F;AAED,uFAAuF;AACvF,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,GAAG,MAAM,EAAE,CAaxE;AAED,sEAAsE;AACtE,MAAM,WAAW,YAAY;IAC3B,OAAO,EAAE,iBAAiB,CAAC,IAAI,CAAC,CAAC;IACjC,oFAAoF;IACpF,OAAO,EAAE,WAAW,EAAE,CAAC;IACvB,qDAAqD;IACrD,eAAe,EAAE,MAAM,EAAE,CAAC;IAC1B,0EAA0E;IAC1E,qBAAqB,EAAE,MAAM,EAAE,CAAC;IAChC;;;;OAIG;IACH,sBAAsB,EAAE,OAAO,CAAC;CACjC;AAED;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,iBAAiB,GAAG,YAAY,CA2CtF;AAED,uCAAuC;AACvC,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,YAAY,EAAE,CAEhE;AAED;;;;GAIG;AACH,wBAAgB,mBAAmB,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAQ1E;AAED,2EAA2E;AAC3E,wBAAgB,mBAAmB,IAAI,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAI9D"}
|
|
@@ -0,0 +1,162 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WS0 (#22) — reading the real import graph so the registry cannot drift.
|
|
3
|
+
*
|
|
4
|
+
* A declared registry that nobody checks is documentation, and documentation
|
|
5
|
+
* drifts silently — this repo has already been bitten by exactly that (the
|
|
6
|
+
* dashboard bundle was hand-maintained generated output, and nothing noticed
|
|
7
|
+
* until a whole tab was missing from it). So the surface registry is checked
|
|
8
|
+
* against the modules themselves: a surface must actually reach a declared turn
|
|
9
|
+
* entry, and the list of surfaces that construct their own provider must EQUAL
|
|
10
|
+
* the frozen debt list, so the debt can only shrink.
|
|
11
|
+
*
|
|
12
|
+
* Dependency-free on purpose (regex + `fs`), for the same reason
|
|
13
|
+
* `scripts/check-dashboard-bundle.mjs` is: this runs in the root suite on every
|
|
14
|
+
* machine, and a parser here would be a new thing to keep working. A specifier
|
|
15
|
+
* it fails to see makes the check NARROWER, never wrong — and the registry
|
|
16
|
+
* assertions in `tests/parity/cross-surface.test.ts` fail loudly if the graph
|
|
17
|
+
* comes back empty, so a silent zero-match cannot masquerade as compliance.
|
|
18
|
+
*/
|
|
19
|
+
import { existsSync, readFileSync, statSync } from 'node:fs';
|
|
20
|
+
import { dirname, join, relative, resolve, sep } from 'node:path';
|
|
21
|
+
import { SURFACES, SURFACE_DEBT, TURN_ENTRIES, } from './surfaces.js';
|
|
22
|
+
/** Source extensions a relative specifier may resolve to. */
|
|
23
|
+
const SOURCE_EXTS = ['.ts', '.tsx', '.js', '.jsx', '.mjs', '.cjs', '.json'];
|
|
24
|
+
/** The provider factory a surface must not construct for itself. */
|
|
25
|
+
export const PROVIDER_FACTORY_MODULE = 'src/inference/factory.ts';
|
|
26
|
+
const ORCHESTRATOR_MODULE = TURN_ENTRIES.orchestrator.module;
|
|
27
|
+
const PIPELINE_TOOL_MODULE = TURN_ENTRIES['pipeline-tool'].module;
|
|
28
|
+
/**
|
|
29
|
+
* Relative import specifiers in a module — static `from '....js'`, dynamic
|
|
30
|
+
* `import('....js')` (the dashboard reaches the chat engine this way), and
|
|
31
|
+
* `require('...')` so a CJS shim cannot hide one.
|
|
32
|
+
*/
|
|
33
|
+
export function extractSpecifiers(code) {
|
|
34
|
+
const found = new Set();
|
|
35
|
+
const patterns = [
|
|
36
|
+
/\bfrom\s*['"]([^'"]+)['"]/g,
|
|
37
|
+
/\bimport\s*\(\s*['"]([^'"]+)['"]/g,
|
|
38
|
+
/\brequire\s*\(\s*['"]([^'"]+)['"]/g,
|
|
39
|
+
];
|
|
40
|
+
for (const pattern of patterns) {
|
|
41
|
+
for (const match of code.matchAll(pattern))
|
|
42
|
+
found.add(match[1]);
|
|
43
|
+
}
|
|
44
|
+
return [...found];
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Resolve a relative specifier from `fromFile` to a repo-relative source path,
|
|
48
|
+
* or null when it leaves the repo, points at a package, or does not exist.
|
|
49
|
+
*
|
|
50
|
+
* The `.js`-means-`.ts` rule is the repo's ESM convention (see
|
|
51
|
+
* `scripts/fix-esm-extensions.mjs`): sources are written with the emitted
|
|
52
|
+
* extension.
|
|
53
|
+
*/
|
|
54
|
+
export function resolveSpecifier(root, fromFile, spec) {
|
|
55
|
+
if (!spec.startsWith('.'))
|
|
56
|
+
return null;
|
|
57
|
+
const base = resolve(dirname(join(root, fromFile)), spec);
|
|
58
|
+
const candidates = [
|
|
59
|
+
base,
|
|
60
|
+
base.replace(/\.js$/, '.ts'),
|
|
61
|
+
base.replace(/\.js$/, '.tsx'),
|
|
62
|
+
...SOURCE_EXTS.map((ext) => base + ext),
|
|
63
|
+
...SOURCE_EXTS.map((ext) => join(base, `index${ext}`)),
|
|
64
|
+
];
|
|
65
|
+
for (const candidate of candidates) {
|
|
66
|
+
if (!existsSync(candidate))
|
|
67
|
+
continue;
|
|
68
|
+
if (!statSync(candidate).isFile())
|
|
69
|
+
continue;
|
|
70
|
+
const relPath = relative(root, candidate).split(sep).join('/');
|
|
71
|
+
if (relPath.startsWith('..'))
|
|
72
|
+
continue;
|
|
73
|
+
return relPath;
|
|
74
|
+
}
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
/** The repo-relative modules `modulePath` imports directly (relative imports only). */
|
|
78
|
+
export function directImports(root, modulePath) {
|
|
79
|
+
let code;
|
|
80
|
+
try {
|
|
81
|
+
code = readFileSync(join(root, modulePath), 'utf-8');
|
|
82
|
+
}
|
|
83
|
+
catch {
|
|
84
|
+
return [];
|
|
85
|
+
}
|
|
86
|
+
const out = new Set();
|
|
87
|
+
for (const spec of extractSpecifiers(code)) {
|
|
88
|
+
const target = resolveSpecifier(root, modulePath, spec);
|
|
89
|
+
if (target)
|
|
90
|
+
out.add(target);
|
|
91
|
+
}
|
|
92
|
+
return [...out].sort();
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Classify one surface from the real import graph.
|
|
96
|
+
*
|
|
97
|
+
* The rules are direct-import rules, deliberately: a surface reaching the
|
|
98
|
+
* provider factory *through* a shared entry is the intended path, so only the
|
|
99
|
+
* surface's own modules are inspected.
|
|
100
|
+
*/
|
|
101
|
+
export function classifySurface(root, surface) {
|
|
102
|
+
const importsByModule = new Map();
|
|
103
|
+
for (const module of surface.modules)
|
|
104
|
+
importsByModule.set(module, directImports(root, module));
|
|
105
|
+
const reachesPipelineWrapper = [...importsByModule.values()].some((imports) => imports.includes(PIPELINE_TOOL_MODULE));
|
|
106
|
+
const entries = new Set();
|
|
107
|
+
for (const [module, imports] of importsByModule) {
|
|
108
|
+
for (const entry of Object.values(TURN_ENTRIES)) {
|
|
109
|
+
// Identity counts: a surface whose own module IS the entry (cli/chat.ts,
|
|
110
|
+
// tools/child-agent-runtime.ts) runs turns through it by definition.
|
|
111
|
+
if (module === entry.module || imports.includes(entry.module))
|
|
112
|
+
entries.add(entry.id);
|
|
113
|
+
}
|
|
114
|
+
}
|
|
115
|
+
// A surface that runs in its own process owns its provider AND its loop: that
|
|
116
|
+
// is the isolation, not a silo, so the in-process rules do not apply. Its
|
|
117
|
+
// behaviour is still compared — through the normalised observation, which is
|
|
118
|
+
// where the child's provider/model/transport attribution is asserted.
|
|
119
|
+
const exempt = surface.separateProcess === true;
|
|
120
|
+
const providerFactory = exempt
|
|
121
|
+
? []
|
|
122
|
+
: surface.modules
|
|
123
|
+
.filter((module) => (importsByModule.get(module) ?? []).includes(PROVIDER_FACTORY_MODULE))
|
|
124
|
+
.sort();
|
|
125
|
+
const pipelineWrapperBypass = exempt || reachesPipelineWrapper
|
|
126
|
+
? []
|
|
127
|
+
: surface.modules
|
|
128
|
+
.filter((module) => (importsByModule.get(module) ?? []).includes(ORCHESTRATOR_MODULE))
|
|
129
|
+
.sort();
|
|
130
|
+
return {
|
|
131
|
+
surface: surface.id,
|
|
132
|
+
entries: [...entries].sort(),
|
|
133
|
+
providerFactory,
|
|
134
|
+
pipelineWrapperBypass,
|
|
135
|
+
exemptFromProcessRules: exempt,
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
/** Classify every declared surface. */
|
|
139
|
+
export function classifyAllSurfaces(root) {
|
|
140
|
+
return SURFACES.map((surface) => classifySurface(root, surface));
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* The surface-level debt actually present in the tree, in the same shape as
|
|
144
|
+
* `SURFACE_DEBT`. The architecture test asserts these are EQUAL, so a new
|
|
145
|
+
* bypass fails and a fixed-but-not-unlisted one fails too.
|
|
146
|
+
*/
|
|
147
|
+
export function observedSurfaceDebt(root) {
|
|
148
|
+
const reached = classifyAllSurfaces(root);
|
|
149
|
+
const collect = (pick) => [...new Set(reached.flatMap(pick))].sort();
|
|
150
|
+
return {
|
|
151
|
+
'provider-factory': collect((r) => r.providerFactory),
|
|
152
|
+
'pipeline-wrapper-bypass': collect((r) => r.pipelineWrapperBypass),
|
|
153
|
+
};
|
|
154
|
+
}
|
|
155
|
+
/** The frozen debt, normalised the same way, for an equality assertion. */
|
|
156
|
+
export function declaredSurfaceDebt() {
|
|
157
|
+
const out = {};
|
|
158
|
+
for (const [kind, modules] of Object.entries(SURFACE_DEBT))
|
|
159
|
+
out[kind] = [...modules].sort();
|
|
160
|
+
return out;
|
|
161
|
+
}
|
|
162
|
+
//# sourceMappingURL=graph.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"graph.js","sourceRoot":"","sources":["../../src/parity/graph.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AAEH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,QAAQ,EAAE,MAAM,SAAS,CAAC;AAC7D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,EAAE,MAAM,WAAW,CAAC;AAElE,OAAO,EACL,QAAQ,EACR,YAAY,EACZ,YAAY,GAGb,MAAM,eAAe,CAAC;AAEvB,6DAA6D;AAC7D,MAAM,WAAW,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,CAAC;AAE5E,oEAAoE;AACpE,MAAM,CAAC,MAAM,uBAAuB,GAAG,0BAA0B,CAAC;AAElE,MAAM,mBAAmB,GAAG,YAAY,CAAC,YAAY,CAAC,MAAM,CAAC;AAC7D,MAAM,oBAAoB,GAAG,YAAY,CAAC,eAAe,CAAC,CAAC,MAAM,CAAC;AAElE;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAY;IAC5C,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;IAChC,MAAM,QAAQ,GAAG;QACf,4BAA4B;QAC5B,mCAAmC;QACnC,oCAAoC;KACrC,CAAC;IACF,KAAK,MAAM,OAAO,IAAI,QAAQ,EAAE,CAAC;QAC/B,KAAK,MAAM,KAAK,IAAI,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC;YAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;AACpB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,gBAAgB,CAAC,IAAY,EAAE,QAAgB,EAAE,IAAY;IAC3E,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,OAAO,IAAI,CAAC;IACvC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC;IAC1D,MAAM,UAAU,GAAG;QACjB,IAAI;QACJ,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,KAAK,CAAC;QAC5B,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,CAAC;QAC7B,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,GAAG,GAAG,CAAC;QACvC,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,GAAG,EAAE,CAAC,CAAC;KACvD,CAAC;IACF,KAAK,MAAM,SAAS,IAAI,UAAU,EAAE,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC;YAAE,SAAS;QACrC,IAAI,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAC,MAAM,EAAE;YAAE,SAAS;QAC5C,MAAM,OAAO,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QAC/D,IAAI,OAAO,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QACvC,OAAO,OAAO,CAAC;IACjB,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAED,uFAAuF;AACvF,MAAM,UAAU,aAAa,CAAC,IAAY,EAAE,UAAkB;IAC5D,IAAI,IAAY,CAAC;IACjB,IAAI,CAAC;QACH,IAAI,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,EAAE,UAAU,CAAC,EAAE,OAAO,CAAC,CAAC;IACvD,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,GAAG,EAAU,CAAC;IAC9B,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,IAAI,CAAC,EAAE,CAAC;QAC3C,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,EAAE,UAAU,EAAE,IAAI,CAAC,CAAC;QACxD,IAAI,MAAM;YAAE,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;IAC9B,CAAC;IACD,OAAO,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC;AACzB,CAAC;AAmBD;;;;;;GAMG;AACH,MAAM,UAAU,eAAe,CAAC,IAAY,EAAE,OAA0B;IACtE,MAAM,eAAe,GAAG,IAAI,GAAG,EAAoB,CAAC;IACpD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,OAAO;QAAE,eAAe,CAAC,GAAG,CAAC,MAAM,EAAE,aAAa,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC,CAAC;IAE/F,MAAM,sBAAsB,GAAG,CAAC,GAAG,eAAe,CAAC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,EAAE,CAC5E,OAAO,CAAC,QAAQ,CAAC,oBAAoB,CAAC,CACvC,CAAC;IAEF,MAAM,OAAO,GAAG,IAAI,GAAG,EAAe,CAAC;IACvC,KAAK,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,IAAI,eAAe,EAAE,CAAC;QAChD,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,CAAC;YAChD,yEAAyE;YACzE,qEAAqE;YACrE,IAAI,MAAM,KAAK,KAAK,CAAC,MAAM,IAAI,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC;gBAAE,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACvF,CAAC;IACH,CAAC;IAED,8EAA8E;IAC9E,0EAA0E;IAC1E,6EAA6E;IAC7E,sEAAsE;IACtE,MAAM,MAAM,GAAG,OAAO,CAAC,eAAe,KAAK,IAAI,CAAC;IAEhD,MAAM,eAAe,GAAG,MAAM;QAC5B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO,CAAC,OAAO;aACZ,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,uBAAuB,CAAC,CAAC;aACzF,IAAI,EAAE,CAAC;IAEd,MAAM,qBAAqB,GACzB,MAAM,IAAI,sBAAsB;QAC9B,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,OAAO,CAAC,OAAO;aACZ,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,eAAe,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,mBAAmB,CAAC,CAAC;aACrF,IAAI,EAAE,CAAC;IAEhB,OAAO;QACL,OAAO,EAAE,OAAO,CAAC,EAAE;QACnB,OAAO,EAAE,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE;QAC5B,eAAe;QACf,qBAAqB;QACrB,sBAAsB,EAAE,MAAM;KAC/B,CAAC;AACJ,CAAC;AAED,uCAAuC;AACvC,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,OAAO,QAAQ,CAAC,GAAG,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,eAAe,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC,CAAC;AACnE,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,mBAAmB,CAAC,IAAY;IAC9C,MAAM,OAAO,GAAG,mBAAmB,CAAC,IAAI,CAAC,CAAC;IAC1C,MAAM,OAAO,GAAG,CAAC,IAAuC,EAAY,EAAE,CACpE,CAAC,GAAG,IAAI,GAAG,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IAC7C,OAAO;QACL,kBAAkB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,eAAe,CAAC;QACrD,yBAAyB,EAAE,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,qBAAqB,CAAC;KACnE,CAAC;AACJ,CAAC;AAED,2EAA2E;AAC3E,MAAM,UAAU,mBAAmB;IACjC,MAAM,GAAG,GAA6B,EAAE,CAAC;IACzC,KAAK,MAAM,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC;QAAE,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,EAAE,CAAC;IAC5F,OAAO,GAAG,CAAC;AACb,CAAC"}
|
|
@@ -0,0 +1,105 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* WS0 (#22) — the capability matrix.
|
|
3
|
+
*
|
|
4
|
+
* The user-facing requirement this encodes: **the experience and the execution
|
|
5
|
+
* must be the same on chat, execute, dashboard chat, the gateway and subagents.**
|
|
6
|
+
* A requirement like that is only real if a capability cannot be added to one
|
|
7
|
+
* surface without someone answering for the other four — otherwise it is a
|
|
8
|
+
* promise in a document, and this repo has already been burned by exactly that
|
|
9
|
+
* shape of promise (the dashboard bundle was hand-maintained generated output;
|
|
10
|
+
* the Subagents tab shipped while the served bundle did not contain it).
|
|
11
|
+
*
|
|
12
|
+
* TWO ORTHOGONAL QUESTIONS, kept apart on purpose:
|
|
13
|
+
*
|
|
14
|
+
* - `status` — what we BELIEVE. Declared here by a human, per surface.
|
|
15
|
+
* - `verified` — what the parity tests PROVE today, per capability × surface.
|
|
16
|
+
*
|
|
17
|
+
* A capability believed to work everywhere but proven on two surfaces is a fair
|
|
18
|
+
* thing to have mid-workstream — and a dishonest thing to call "at par". So
|
|
19
|
+
* `unverifiedClaims(verified)` names every such cell, and the matrix test
|
|
20
|
+
* asserts it equals a frozen list that can only shrink. Same ratchet as
|
|
21
|
+
* `SURFACE_DEBT`: growth fails (a new unprovable claim appeared), and a stale
|
|
22
|
+
* entry fails (one was proven and the list still claims it needs proof).
|
|
23
|
+
*
|
|
24
|
+
* The keys are per capability × surface, never per surface alone: a driver that
|
|
25
|
+
* proves a turn ran does not thereby prove its tool-call lifecycle was reported,
|
|
26
|
+
* and treating those as one thing is how a matrix starts flattering itself.
|
|
27
|
+
*
|
|
28
|
+
* Scope note: fault injection (WS6) and the seeded-bug benchmark (WS7) are test
|
|
29
|
+
* infrastructure, not capabilities a surface can have, so they are deliberately
|
|
30
|
+
* absent rather than marked "not applicable" five times.
|
|
31
|
+
*/
|
|
32
|
+
import { type SurfaceId } from './surfaces.js';
|
|
33
|
+
/** A capability a person could observe on a surface. */
|
|
34
|
+
export type CapabilityId = 'turn-parity' | 'run-attribution' | 'tool-call-lifecycle' | 'findings-verdicts' | 'debug-log' | 'otel-export' | 'tool-hooks' | 'isolation-worktree' | 'partial-resume';
|
|
35
|
+
/**
|
|
36
|
+
* What we believe about one capability on one surface.
|
|
37
|
+
*
|
|
38
|
+
* - `supported` — believed to work here.
|
|
39
|
+
* - `planned` — not built anywhere yet; the owning workstream adds it.
|
|
40
|
+
* - `scoped` — deliberately different here, and the note says why. A scoped
|
|
41
|
+
* cell is a decision, which is why it must be explained.
|
|
42
|
+
*/
|
|
43
|
+
export type CellStatus = 'supported' | 'planned' | 'scoped';
|
|
44
|
+
export interface MatrixCell {
|
|
45
|
+
status: CellStatus;
|
|
46
|
+
/** Required for `scoped`, and for every cell on the unverified debt list. */
|
|
47
|
+
note?: string;
|
|
48
|
+
}
|
|
49
|
+
export interface Capability {
|
|
50
|
+
id: CapabilityId;
|
|
51
|
+
label: string;
|
|
52
|
+
/** The tracker workstream that owns it, so the matrix and the issue list agree. */
|
|
53
|
+
workstream: Workstream;
|
|
54
|
+
/** One cell per surface. Typed so a missing surface is a compile error. */
|
|
55
|
+
cells: Record<SurfaceId, MatrixCell>;
|
|
56
|
+
}
|
|
57
|
+
export type Workstream = 'existing' | 'WS0' | 'WS1' | 'WS2' | 'WS3' | 'WS4' | 'WS5' | 'WS6' | 'WS7';
|
|
58
|
+
/** The tracker issues, so a reader can go from a cell to the work that owns it. */
|
|
59
|
+
export declare const WORKSTREAM_ISSUES: Record<Workstream, number | null>;
|
|
60
|
+
export declare const CAPABILITIES: readonly Capability[];
|
|
61
|
+
/**
|
|
62
|
+
* Cells that believe they are `supported` but that the parity tests do not
|
|
63
|
+
* prove, as `capability@surface` keys. Frozen: a new key fails the matrix test,
|
|
64
|
+
* and a key whose cell became verified also fails until it is deleted — so the
|
|
65
|
+
* list can only shrink, and every line is a debt the harness has to pay off.
|
|
66
|
+
*
|
|
67
|
+
* EMPTY — and that is the ratchet working, not the rule being relaxed. Every
|
|
68
|
+
* surface is driven, and every `supported` claim on every surface is backed by a
|
|
69
|
+
* case in `tests/parity/`. The last three left in one step by REPORTING facts at
|
|
70
|
+
* the surface boundary rather than building capabilities: the gateway wired the
|
|
71
|
+
* engine`s onToolCall, the command reported each call`s outcome instead of a name
|
|
72
|
+
* list beside an error set, and the subagent was driven on the same provider id
|
|
73
|
+
* and transport as the in-process surfaces so its turn could be compared rather
|
|
74
|
+
* than merely refused.
|
|
75
|
+
*
|
|
76
|
+
* The constant stays declared with an empty array on purpose: deleting it would
|
|
77
|
+
* stop the rule being measured, and the next unprovable `supported` claim would
|
|
78
|
+
* then be invisible instead of a one-line diff here. The REASON for any future
|
|
79
|
+
* entry lives on the cell's `note`, which the matrix test requires to be
|
|
80
|
+
* non-empty for every entry on the list — one place per fact, so the two cannot
|
|
81
|
+
* drift apart.
|
|
82
|
+
*/
|
|
83
|
+
export declare const UNVERIFIED_SUPPORTED: readonly string[];
|
|
84
|
+
/** The stable key for one cell, so nothing else invents its own format. */
|
|
85
|
+
export declare function cellKey(capability: CapabilityId, surface: SurfaceId): string;
|
|
86
|
+
/** Every capability × surface cell, flattened, for reporting and assertions. */
|
|
87
|
+
export declare function matrixCells(): Array<{
|
|
88
|
+
capability: CapabilityId;
|
|
89
|
+
surface: SurfaceId;
|
|
90
|
+
cell: MatrixCell;
|
|
91
|
+
}>;
|
|
92
|
+
/**
|
|
93
|
+
* Cells that include `supported` but that the harness does not PROVE, as cell
|
|
94
|
+
* keys. `verified` is the set the parity tests actually assert today.
|
|
95
|
+
*/
|
|
96
|
+
export declare function unverifiedClaims(verified: ReadonlySet<string>): string[];
|
|
97
|
+
/** The frozen list, normalised the same way, for an equality assertion. */
|
|
98
|
+
export declare function declaredUnverifiedClaims(): string[];
|
|
99
|
+
/** Surfaces where a capability is deliberately different, and why. */
|
|
100
|
+
export declare function scopedExceptions(): Array<{
|
|
101
|
+
capability: CapabilityId;
|
|
102
|
+
surface: SurfaceId;
|
|
103
|
+
note: string;
|
|
104
|
+
}>;
|
|
105
|
+
//# sourceMappingURL=matrix.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"matrix.d.ts","sourceRoot":"","sources":["../../src/parity/matrix.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA8BG;AAEH,OAAO,EAAY,KAAK,SAAS,EAAE,MAAM,eAAe,CAAC;AAEzD,wDAAwD;AACxD,MAAM,MAAM,YAAY,GACpB,aAAa,GACb,iBAAiB,GACjB,qBAAqB,GACrB,mBAAmB,GACnB,WAAW,GACX,aAAa,GACb,YAAY,GACZ,oBAAoB,GACpB,gBAAgB,CAAC;AAErB;;;;;;;GAOG;AACH,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,SAAS,GAAG,QAAQ,CAAC;AAE5D,MAAM,WAAW,UAAU;IACzB,MAAM,EAAE,UAAU,CAAC;IACnB,6EAA6E;IAC7E,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED,MAAM,WAAW,UAAU;IACzB,EAAE,EAAE,YAAY,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,mFAAmF;IACnF,UAAU,EAAE,UAAU,CAAC;IACvB,2EAA2E;IAC3E,KAAK,EAAE,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,CAAC;CACtC;AAED,MAAM,MAAM,UAAU,GAAG,UAAU,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,GAAG,KAAK,CAAC;AAEpG,mFAAmF;AACnF,eAAO,MAAM,iBAAiB,EAAE,MAAM,CAAC,UAAU,EAAE,MAAM,GAAG,IAAI,CAU/D,CAAC;AAmBF,eAAO,MAAM,YAAY,EAAE,SAAS,UAAU,EAkO7C,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,eAAO,MAAM,oBAAoB,EAAE,SAAS,MAAM,EAAO,CAAC;AAE1D,2EAA2E;AAC3E,wBAAgB,OAAO,CAAC,UAAU,EAAE,YAAY,EAAE,OAAO,EAAE,SAAS,GAAG,MAAM,CAE5E;AAED,gFAAgF;AAChF,wBAAgB,WAAW,IAAI,KAAK,CAAC;IAAE,UAAU,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,UAAU,CAAA;CAAE,CAAC,CAQvG;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,WAAW,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAQxE;AAED,2EAA2E;AAC3E,wBAAgB,wBAAwB,IAAI,MAAM,EAAE,CAEnD;AAED,sEAAsE;AACtE,wBAAgB,gBAAgB,IAAI,KAAK,CAAC;IAAE,UAAU,EAAE,YAAY,CAAC;IAAC,OAAO,EAAE,SAAS,CAAC;IAAC,IAAI,EAAE,MAAM,CAAA;CAAE,CAAC,CAQxG"}
|