@fundamental-engine/core 0.9.3 → 0.9.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/config/forces.config.d.ts +1 -1
- package/dist/config/forces.config.d.ts.map +1 -1
- package/dist/config/themes.d.ts +1 -1
- package/dist/conformance/run.d.ts +1 -1
- package/dist/conformance/run.d.ts.map +1 -1
- package/dist/conformance/run.js +6 -6
- package/dist/conformance/run.js.map +1 -1
- package/dist/conformance/types.d.ts +1 -1
- package/dist/conformance/types.d.ts.map +1 -1
- package/dist/contracts/guards.d.ts +1 -1
- package/dist/contracts/guards.d.ts.map +1 -1
- package/dist/contracts/passport.d.ts +1 -1
- package/dist/contracts/passport.d.ts.map +1 -1
- package/dist/diagnostics/energy.d.ts +1 -1
- package/dist/diagnostics/energy.d.ts.map +1 -1
- package/dist/diagnostics/fields.d.ts +1 -1
- package/dist/diagnostics/fields.d.ts.map +1 -1
- package/dist/diagnostics/modes.d.ts +1 -1
- package/dist/diagnostics/modes.d.ts.map +1 -1
- package/dist/diagnostics/modes.js +1 -1
- package/dist/diagnostics/modes.js.map +1 -1
- package/dist/diagnostics/potential.d.ts +1 -1
- package/dist/diagnostics/potential.d.ts.map +1 -1
- package/dist/diagnostics/probes.d.ts +1 -1
- package/dist/diagnostics/probes.d.ts.map +1 -1
- package/dist/diagnostics/probes.js +1 -1
- package/dist/diagnostics/probes.js.map +1 -1
- package/dist/diagnostics/render.d.ts +1 -1
- package/dist/diagnostics/render.d.ts.map +1 -1
- package/dist/engine/accretion.d.ts.map +1 -0
- package/dist/engine/accretion.js.map +1 -0
- package/dist/engine/agents.d.ts.map +1 -0
- package/dist/engine/agents.js.map +1 -0
- package/dist/engine/attention.d.ts.map +1 -0
- package/dist/engine/attention.js.map +1 -0
- package/dist/engine/causality.d.ts.map +1 -0
- package/dist/engine/causality.js.map +1 -0
- package/dist/engine/conditions.d.ts.map +1 -0
- package/dist/engine/conditions.js.map +1 -0
- package/dist/{core → engine}/currents.d.ts +1 -1
- package/dist/engine/currents.d.ts.map +1 -0
- package/dist/engine/currents.js.map +1 -0
- package/dist/engine/dock.d.ts.map +1 -0
- package/dist/engine/dock.js.map +1 -0
- package/dist/{core → engine}/events.d.ts +4 -1
- package/dist/engine/events.d.ts.map +1 -0
- package/dist/{core → engine}/events.js +7 -0
- package/dist/engine/events.js.map +1 -0
- package/dist/engine/feedback-sink.d.ts.map +1 -0
- package/dist/engine/feedback-sink.js.map +1 -0
- package/dist/engine/feedback.d.ts.map +1 -0
- package/dist/engine/feedback.js.map +1 -0
- package/dist/engine/field-snapshot.d.ts.map +1 -0
- package/dist/engine/field-snapshot.js.map +1 -0
- package/dist/engine/field-store.d.ts.map +1 -0
- package/dist/engine/field-store.js.map +1 -0
- package/dist/engine/field.d.ts.map +1 -0
- package/dist/{core → engine}/field.js +147 -1
- package/dist/engine/field.js.map +1 -0
- package/dist/engine/fieldline-seeds.d.ts.map +1 -0
- package/dist/engine/fieldline-seeds.js.map +1 -0
- package/dist/engine/fieldlines.d.ts.map +1 -0
- package/dist/{core → engine}/fieldlines.js +1 -1
- package/dist/engine/fieldlines.js.map +1 -0
- package/dist/engine/flow.d.ts.map +1 -0
- package/dist/engine/flow.js.map +1 -0
- package/dist/engine/formations.d.ts.map +1 -0
- package/dist/engine/formations.js.map +1 -0
- package/dist/engine/frame-harness.d.ts.map +1 -0
- package/dist/engine/frame-harness.js.map +1 -0
- package/dist/engine/governance.d.ts.map +1 -0
- package/dist/engine/governance.js.map +1 -0
- package/dist/engine/heatmap.d.ts.map +1 -0
- package/dist/{core → engine}/heatmap.js +1 -1
- package/dist/engine/heatmap.js.map +1 -0
- package/dist/engine/host-headless.d.ts.map +1 -0
- package/dist/engine/host-headless.js.map +1 -0
- package/dist/engine/host.d.ts.map +1 -0
- package/dist/engine/host.js.map +1 -0
- package/dist/engine/integrator.d.ts.map +1 -0
- package/dist/{core → engine}/integrator.js +5 -3
- package/dist/engine/integrator.js.map +1 -0
- package/dist/engine/lane-registry.d.ts.map +1 -0
- package/dist/engine/lane-registry.js.map +1 -0
- package/dist/engine/projection-agent-json.d.ts.map +1 -0
- package/dist/engine/projection-agent-json.js.map +1 -0
- package/dist/engine/query-lens.d.ts.map +1 -0
- package/dist/engine/query-lens.js.map +1 -0
- package/dist/engine/reactions.d.ts.map +1 -0
- package/dist/engine/reactions.js.map +1 -0
- package/dist/engine/registry.d.ts.map +1 -0
- package/dist/engine/registry.js.map +1 -0
- package/dist/engine/render-backend.d.ts.map +1 -0
- package/dist/engine/render-backend.js.map +1 -0
- package/dist/{core → engine}/render-modes.d.ts +1 -1
- package/dist/engine/render-modes.d.ts.map +1 -0
- package/dist/engine/render-modes.js.map +1 -0
- package/dist/engine/reservoir.d.ts.map +1 -0
- package/dist/engine/reservoir.js.map +1 -0
- package/dist/engine/scalar-grid.d.ts.map +1 -0
- package/dist/engine/scalar-grid.js.map +1 -0
- package/dist/engine/scanner.d.ts.map +1 -0
- package/dist/engine/scanner.js.map +1 -0
- package/dist/engine/shadow.d.ts.map +1 -0
- package/dist/engine/shadow.js.map +1 -0
- package/dist/engine/spatial-hash.d.ts.map +1 -0
- package/dist/engine/spatial-hash.js.map +1 -0
- package/dist/engine/streamlines.d.ts.map +1 -0
- package/dist/engine/streamlines.js.map +1 -0
- package/dist/engine/surface.d.ts.map +1 -0
- package/dist/engine/surface.js.map +1 -0
- package/dist/engine/temporal.d.ts.map +1 -0
- package/dist/engine/temporal.js.map +1 -0
- package/dist/engine/thermo.d.ts.map +1 -0
- package/dist/engine/thermo.js.map +1 -0
- package/dist/{core → engine}/types.d.ts +106 -4
- package/dist/engine/types.d.ts.map +1 -0
- package/dist/engine/types.js.map +1 -0
- package/dist/engine/weights.d.ts.map +1 -0
- package/dist/engine/weights.js.map +1 -0
- package/dist/forces/extended.d.ts +2 -2
- package/dist/forces/extended.d.ts.map +1 -1
- package/dist/forces/extended.js +1 -1
- package/dist/forces/index.d.ts +2 -2
- package/dist/forces/index.d.ts.map +1 -1
- package/dist/forces/natural.d.ts +2 -2
- package/dist/forces/natural.d.ts.map +1 -1
- package/dist/forces/natural.js +1 -1
- package/dist/index.d.ts +39 -39
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +39 -39
- package/dist/index.js.map +1 -1
- package/dist/inspect/report.js +2 -2
- package/dist/inspect/report.js.map +1 -1
- package/dist/{core → math}/geometry.d.ts +1 -1
- package/dist/math/geometry.d.ts.map +1 -0
- package/dist/{core → math}/geometry.js.map +1 -1
- package/dist/{core → math}/math.d.ts.map +1 -1
- package/dist/{core → math}/math.js.map +1 -1
- package/dist/recipes/catalog.d.ts +20 -11
- package/dist/recipes/catalog.d.ts.map +1 -1
- package/dist/recipes/catalog.js +17 -9
- package/dist/recipes/catalog.js.map +1 -1
- package/dist/recipes/compile.d.ts +33 -19
- package/dist/recipes/compile.d.ts.map +1 -1
- package/dist/recipes/compile.js +17 -11
- package/dist/recipes/compile.js.map +1 -1
- package/dist/recipes/focus.d.ts +18 -0
- package/dist/recipes/focus.d.ts.map +1 -0
- package/dist/recipes/focus.js +34 -0
- package/dist/recipes/focus.js.map +1 -0
- package/dist/recipes/index.d.ts +3 -0
- package/dist/recipes/index.d.ts.map +1 -1
- package/dist/recipes/index.js +6 -3
- package/dist/recipes/index.js.map +1 -1
- package/dist/recipes/schema.d.ts +36 -21
- package/dist/recipes/schema.d.ts.map +1 -1
- package/dist/recipes/schema.js +12 -7
- package/dist/recipes/schema.js.map +1 -1
- package/dist/recipes/wayfinding.d.ts +5 -3
- package/dist/recipes/wayfinding.d.ts.map +1 -1
- package/dist/recipes/wayfinding.js +6 -2
- package/dist/recipes/wayfinding.js.map +1 -1
- package/dist/record/record.d.ts +1 -1
- package/dist/record/record.d.ts.map +1 -1
- package/dist/record/record.js +3 -3
- package/dist/record/record.js.map +1 -1
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/dist/visual/channels.js +1 -1
- package/dist/visual/mapping.js +1 -1
- package/dist/world/ablation/ablation.d.ts +39 -0
- package/dist/world/ablation/ablation.d.ts.map +1 -0
- package/dist/world/ablation/ablation.js +449 -0
- package/dist/world/ablation/ablation.js.map +1 -0
- package/dist/world/adapters/field-runtime.d.ts +56 -0
- package/dist/world/adapters/field-runtime.d.ts.map +1 -0
- package/dist/world/adapters/field-runtime.js +250 -0
- package/dist/world/adapters/field-runtime.js.map +1 -0
- package/dist/world/adapters/fsm-runtime.d.ts +18 -0
- package/dist/world/adapters/fsm-runtime.d.ts.map +1 -0
- package/dist/world/adapters/fsm-runtime.js +153 -0
- package/dist/world/adapters/fsm-runtime.js.map +1 -0
- package/dist/world/adapters/governor-runtime.d.ts +23 -0
- package/dist/world/adapters/governor-runtime.d.ts.map +1 -0
- package/dist/world/adapters/governor-runtime.js +185 -0
- package/dist/world/adapters/governor-runtime.js.map +1 -0
- package/dist/world/adapters/planner-runtime.d.ts +20 -0
- package/dist/world/adapters/planner-runtime.d.ts.map +1 -0
- package/dist/world/adapters/planner-runtime.js +144 -0
- package/dist/world/adapters/planner-runtime.js.map +1 -0
- package/dist/world/conformance/corpus.d.ts +89 -0
- package/dist/world/conformance/corpus.d.ts.map +1 -0
- package/dist/world/conformance/corpus.js +195 -0
- package/dist/world/conformance/corpus.js.map +1 -0
- package/dist/world/conformance/discoveries.d.ts +50 -0
- package/dist/world/conformance/discoveries.d.ts.map +1 -0
- package/dist/world/conformance/discoveries.js +71 -0
- package/dist/world/conformance/discoveries.js.map +1 -0
- package/dist/world/conformance/evidence.d.ts +37 -0
- package/dist/world/conformance/evidence.d.ts.map +1 -0
- package/dist/world/conformance/evidence.js +53 -0
- package/dist/world/conformance/evidence.js.map +1 -0
- package/dist/world/conformance/negative-results.d.ts +57 -0
- package/dist/world/conformance/negative-results.d.ts.map +1 -0
- package/dist/world/conformance/negative-results.js +73 -0
- package/dist/world/conformance/negative-results.js.map +1 -0
- package/dist/world/conformance/predictions.d.ts +66 -0
- package/dist/world/conformance/predictions.d.ts.map +1 -0
- package/dist/world/conformance/predictions.js +141 -0
- package/dist/world/conformance/predictions.js.map +1 -0
- package/dist/world/cross-substrate.d.ts +19 -0
- package/dist/world/cross-substrate.d.ts.map +1 -0
- package/dist/world/cross-substrate.js +123 -0
- package/dist/world/cross-substrate.js.map +1 -0
- package/dist/world/dynamics.d.ts +166 -0
- package/dist/world/dynamics.d.ts.map +1 -0
- package/dist/world/dynamics.js +30 -0
- package/dist/world/dynamics.js.map +1 -0
- package/dist/world/envelope.d.ts +44 -0
- package/dist/world/envelope.d.ts.map +1 -0
- package/dist/world/envelope.js +77 -0
- package/dist/world/envelope.js.map +1 -0
- package/dist/world/episodes/episodes.d.ts +64 -0
- package/dist/world/episodes/episodes.d.ts.map +1 -0
- package/dist/world/episodes/episodes.js +104 -0
- package/dist/world/episodes/episodes.js.map +1 -0
- package/dist/world/equivalence.d.ts +70 -0
- package/dist/world/equivalence.d.ts.map +1 -0
- package/dist/world/equivalence.js +205 -0
- package/dist/world/equivalence.js.map +1 -0
- package/dist/world/experiments/declarative-dynamics.d.ts +87 -0
- package/dist/world/experiments/declarative-dynamics.d.ts.map +1 -0
- package/dist/world/experiments/declarative-dynamics.js +153 -0
- package/dist/world/experiments/declarative-dynamics.js.map +1 -0
- package/dist/world/governor-equivalence.d.ts +51 -0
- package/dist/world/governor-equivalence.d.ts.map +1 -0
- package/dist/world/governor-equivalence.js +126 -0
- package/dist/world/governor-equivalence.js.map +1 -0
- package/dist/world/kernel.d.ts +49 -0
- package/dist/world/kernel.d.ts.map +1 -0
- package/dist/world/kernel.js +64 -0
- package/dist/world/kernel.js.map +1 -0
- package/dist/world/observatory/capture.d.ts +10 -0
- package/dist/world/observatory/capture.d.ts.map +1 -0
- package/dist/world/observatory/capture.js +371 -0
- package/dist/world/observatory/capture.js.map +1 -0
- package/dist/world/observatory/evidence-log.d.ts +131 -0
- package/dist/world/observatory/evidence-log.d.ts.map +1 -0
- package/dist/world/observatory/evidence-log.js +43 -0
- package/dist/world/observatory/evidence-log.js.map +1 -0
- package/dist/world/opportunity/opportunity.d.ts +85 -0
- package/dist/world/opportunity/opportunity.d.ts.map +1 -0
- package/dist/world/opportunity/opportunity.js +67 -0
- package/dist/world/opportunity/opportunity.js.map +1 -0
- package/dist/world/projection/evidence-profile.d.ts +51 -0
- package/dist/world/projection/evidence-profile.d.ts.map +1 -0
- package/dist/world/projection/evidence-profile.js +93 -0
- package/dist/world/projection/evidence-profile.js.map +1 -0
- package/dist/world/projection/projection.d.ts +162 -0
- package/dist/world/projection/projection.d.ts.map +1 -0
- package/dist/world/projection/projection.js +145 -0
- package/dist/world/projection/projection.js.map +1 -0
- package/dist/world/properties/properties.d.ts +87 -0
- package/dist/world/properties/properties.d.ts.map +1 -0
- package/dist/world/properties/properties.js +172 -0
- package/dist/world/properties/properties.js.map +1 -0
- package/dist/world/substrates/fsm.d.ts +59 -0
- package/dist/world/substrates/fsm.d.ts.map +1 -0
- package/dist/world/substrates/fsm.js +57 -0
- package/dist/world/substrates/fsm.js.map +1 -0
- package/dist/world/substrates/governor.d.ts +53 -0
- package/dist/world/substrates/governor.d.ts.map +1 -0
- package/dist/world/substrates/governor.js +73 -0
- package/dist/world/substrates/governor.js.map +1 -0
- package/dist/world/substrates/planner.d.ts +82 -0
- package/dist/world/substrates/planner.d.ts.map +1 -0
- package/dist/world/substrates/planner.js +114 -0
- package/dist/world/substrates/planner.js.map +1 -0
- package/dist/world/world.d.ts +73 -0
- package/dist/world/world.d.ts.map +1 -0
- package/dist/world/world.js +2 -0
- package/dist/world/world.js.map +1 -0
- package/package.json +1 -1
- package/dist/core/accretion.d.ts.map +0 -1
- package/dist/core/accretion.js.map +0 -1
- package/dist/core/agents.d.ts.map +0 -1
- package/dist/core/agents.js.map +0 -1
- package/dist/core/attention.d.ts.map +0 -1
- package/dist/core/attention.js.map +0 -1
- package/dist/core/causality.d.ts.map +0 -1
- package/dist/core/causality.js.map +0 -1
- package/dist/core/conditions.d.ts.map +0 -1
- package/dist/core/conditions.js.map +0 -1
- package/dist/core/currents.d.ts.map +0 -1
- package/dist/core/currents.js.map +0 -1
- package/dist/core/dock.d.ts.map +0 -1
- package/dist/core/dock.js.map +0 -1
- package/dist/core/events.d.ts.map +0 -1
- package/dist/core/events.js.map +0 -1
- package/dist/core/feedback-sink.d.ts.map +0 -1
- package/dist/core/feedback-sink.js.map +0 -1
- package/dist/core/feedback.d.ts.map +0 -1
- package/dist/core/feedback.js.map +0 -1
- package/dist/core/field-snapshot.d.ts.map +0 -1
- package/dist/core/field-snapshot.js.map +0 -1
- package/dist/core/field-store.d.ts.map +0 -1
- package/dist/core/field-store.js.map +0 -1
- package/dist/core/field.d.ts.map +0 -1
- package/dist/core/field.js.map +0 -1
- package/dist/core/fieldline-seeds.d.ts.map +0 -1
- package/dist/core/fieldline-seeds.js.map +0 -1
- package/dist/core/fieldlines.d.ts.map +0 -1
- package/dist/core/fieldlines.js.map +0 -1
- package/dist/core/flow.d.ts.map +0 -1
- package/dist/core/flow.js.map +0 -1
- package/dist/core/formations.d.ts.map +0 -1
- package/dist/core/formations.js.map +0 -1
- package/dist/core/frame-harness.d.ts.map +0 -1
- package/dist/core/frame-harness.js.map +0 -1
- package/dist/core/geometry.d.ts.map +0 -1
- package/dist/core/governance.d.ts.map +0 -1
- package/dist/core/governance.js.map +0 -1
- package/dist/core/heatmap.d.ts.map +0 -1
- package/dist/core/heatmap.js.map +0 -1
- package/dist/core/host-headless.d.ts.map +0 -1
- package/dist/core/host-headless.js.map +0 -1
- package/dist/core/host.d.ts.map +0 -1
- package/dist/core/host.js.map +0 -1
- package/dist/core/integrator.d.ts.map +0 -1
- package/dist/core/integrator.js.map +0 -1
- package/dist/core/lane-registry.d.ts.map +0 -1
- package/dist/core/lane-registry.js.map +0 -1
- package/dist/core/projection-agent-json.d.ts.map +0 -1
- package/dist/core/projection-agent-json.js.map +0 -1
- package/dist/core/query-lens.d.ts.map +0 -1
- package/dist/core/query-lens.js.map +0 -1
- package/dist/core/reactions.d.ts.map +0 -1
- package/dist/core/reactions.js.map +0 -1
- package/dist/core/registry.d.ts.map +0 -1
- package/dist/core/registry.js.map +0 -1
- package/dist/core/render-backend.d.ts.map +0 -1
- package/dist/core/render-backend.js.map +0 -1
- package/dist/core/render-modes.d.ts.map +0 -1
- package/dist/core/render-modes.js.map +0 -1
- package/dist/core/reservoir.d.ts.map +0 -1
- package/dist/core/reservoir.js.map +0 -1
- package/dist/core/scalar-grid.d.ts.map +0 -1
- package/dist/core/scalar-grid.js.map +0 -1
- package/dist/core/scanner.d.ts.map +0 -1
- package/dist/core/scanner.js.map +0 -1
- package/dist/core/shadow.d.ts.map +0 -1
- package/dist/core/shadow.js.map +0 -1
- package/dist/core/spatial-hash.d.ts.map +0 -1
- package/dist/core/spatial-hash.js.map +0 -1
- package/dist/core/streamlines.d.ts.map +0 -1
- package/dist/core/streamlines.js.map +0 -1
- package/dist/core/surface.d.ts.map +0 -1
- package/dist/core/surface.js.map +0 -1
- package/dist/core/temporal.d.ts.map +0 -1
- package/dist/core/temporal.js.map +0 -1
- package/dist/core/thermo.d.ts.map +0 -1
- package/dist/core/thermo.js.map +0 -1
- package/dist/core/types.d.ts.map +0 -1
- package/dist/core/types.js.map +0 -1
- package/dist/core/weights.d.ts.map +0 -1
- package/dist/core/weights.js.map +0 -1
- /package/dist/{core → engine}/accretion.d.ts +0 -0
- /package/dist/{core → engine}/accretion.js +0 -0
- /package/dist/{core → engine}/agents.d.ts +0 -0
- /package/dist/{core → engine}/agents.js +0 -0
- /package/dist/{core → engine}/attention.d.ts +0 -0
- /package/dist/{core → engine}/attention.js +0 -0
- /package/dist/{core → engine}/causality.d.ts +0 -0
- /package/dist/{core → engine}/causality.js +0 -0
- /package/dist/{core → engine}/conditions.d.ts +0 -0
- /package/dist/{core → engine}/conditions.js +0 -0
- /package/dist/{core → engine}/currents.js +0 -0
- /package/dist/{core → engine}/dock.d.ts +0 -0
- /package/dist/{core → engine}/dock.js +0 -0
- /package/dist/{core → engine}/feedback-sink.d.ts +0 -0
- /package/dist/{core → engine}/feedback-sink.js +0 -0
- /package/dist/{core → engine}/feedback.d.ts +0 -0
- /package/dist/{core → engine}/feedback.js +0 -0
- /package/dist/{core → engine}/field-snapshot.d.ts +0 -0
- /package/dist/{core → engine}/field-snapshot.js +0 -0
- /package/dist/{core → engine}/field-store.d.ts +0 -0
- /package/dist/{core → engine}/field-store.js +0 -0
- /package/dist/{core → engine}/field.d.ts +0 -0
- /package/dist/{core → engine}/fieldline-seeds.d.ts +0 -0
- /package/dist/{core → engine}/fieldline-seeds.js +0 -0
- /package/dist/{core → engine}/fieldlines.d.ts +0 -0
- /package/dist/{core → engine}/flow.d.ts +0 -0
- /package/dist/{core → engine}/flow.js +0 -0
- /package/dist/{core → engine}/formations.d.ts +0 -0
- /package/dist/{core → engine}/formations.js +0 -0
- /package/dist/{core → engine}/frame-harness.d.ts +0 -0
- /package/dist/{core → engine}/frame-harness.js +0 -0
- /package/dist/{core → engine}/governance.d.ts +0 -0
- /package/dist/{core → engine}/governance.js +0 -0
- /package/dist/{core → engine}/heatmap.d.ts +0 -0
- /package/dist/{core → engine}/host-headless.d.ts +0 -0
- /package/dist/{core → engine}/host-headless.js +0 -0
- /package/dist/{core → engine}/host.d.ts +0 -0
- /package/dist/{core → engine}/host.js +0 -0
- /package/dist/{core → engine}/integrator.d.ts +0 -0
- /package/dist/{core → engine}/lane-registry.d.ts +0 -0
- /package/dist/{core → engine}/lane-registry.js +0 -0
- /package/dist/{core → engine}/projection-agent-json.d.ts +0 -0
- /package/dist/{core → engine}/projection-agent-json.js +0 -0
- /package/dist/{core → engine}/query-lens.d.ts +0 -0
- /package/dist/{core → engine}/query-lens.js +0 -0
- /package/dist/{core → engine}/reactions.d.ts +0 -0
- /package/dist/{core → engine}/reactions.js +0 -0
- /package/dist/{core → engine}/registry.d.ts +0 -0
- /package/dist/{core → engine}/registry.js +0 -0
- /package/dist/{core → engine}/render-backend.d.ts +0 -0
- /package/dist/{core → engine}/render-backend.js +0 -0
- /package/dist/{core → engine}/render-modes.js +0 -0
- /package/dist/{core → engine}/reservoir.d.ts +0 -0
- /package/dist/{core → engine}/reservoir.js +0 -0
- /package/dist/{core → engine}/scalar-grid.d.ts +0 -0
- /package/dist/{core → engine}/scalar-grid.js +0 -0
- /package/dist/{core → engine}/scanner.d.ts +0 -0
- /package/dist/{core → engine}/scanner.js +0 -0
- /package/dist/{core → engine}/shadow.d.ts +0 -0
- /package/dist/{core → engine}/shadow.js +0 -0
- /package/dist/{core → engine}/spatial-hash.d.ts +0 -0
- /package/dist/{core → engine}/spatial-hash.js +0 -0
- /package/dist/{core → engine}/streamlines.d.ts +0 -0
- /package/dist/{core → engine}/streamlines.js +0 -0
- /package/dist/{core → engine}/surface.d.ts +0 -0
- /package/dist/{core → engine}/surface.js +0 -0
- /package/dist/{core → engine}/temporal.d.ts +0 -0
- /package/dist/{core → engine}/temporal.js +0 -0
- /package/dist/{core → engine}/thermo.d.ts +0 -0
- /package/dist/{core → engine}/thermo.js +0 -0
- /package/dist/{core → engine}/types.js +0 -0
- /package/dist/{core → engine}/weights.d.ts +0 -0
- /package/dist/{core → engine}/weights.js +0 -0
- /package/dist/{core → math}/geometry.js +0 -0
- /package/dist/{core → math}/math.d.ts +0 -0
- /package/dist/{core → math}/math.js +0 -0
|
@@ -0,0 +1,371 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Instrumentation adapter (EXPERIMENTAL, internal) — Phase O1/O2.
|
|
3
|
+
*
|
|
4
|
+
* Drives real substrates through their real `DynamicsContract` adapters and RECORDS what the runtime
|
|
5
|
+
* emitted. It contains no findings of its own: every derivation in the resulting bundle is the return
|
|
6
|
+
* value of a runtime function (`runConformance`, `evaluateOpportunity`, `project`, `detectEpisodes`,
|
|
7
|
+
* `runAblations`, the registries), and every registry section is passed through verbatim.
|
|
8
|
+
*
|
|
9
|
+
* The rule this file must never break: **if the runtime did not produce it, the bundle does not carry
|
|
10
|
+
* it.** A substrate with no captured run appears in `pendingSubstrates`, never as an empty run that
|
|
11
|
+
* looks like a result.
|
|
12
|
+
*/
|
|
13
|
+
import { hostWorld } from "../kernel.js";
|
|
14
|
+
import { createWorldEnvelope } from "../envelope.js";
|
|
15
|
+
import { runConformance, corpus, corpusLedger } from "../conformance/corpus.js";
|
|
16
|
+
import { discoveries } from "../conformance/discoveries.js";
|
|
17
|
+
import { predictions, predictionAccuracy } from "../conformance/predictions.js";
|
|
18
|
+
import { negativeResults, negativeLedger } from "../conformance/negative-results.js";
|
|
19
|
+
import { projectionClaims, projectionEvidenceProfile } from "../projection/evidence-profile.js";
|
|
20
|
+
import { evaluateOpportunity } from "../opportunity/opportunity.js";
|
|
21
|
+
import { detectEpisodes } from "../episodes/episodes.js";
|
|
22
|
+
import { runAblations } from "../ablation/ablation.js";
|
|
23
|
+
import { project, toOpportunityProjection } from "../projection/projection.js";
|
|
24
|
+
import { governorDynamics } from "../adapters/governor-runtime.js";
|
|
25
|
+
import { fsmDynamics } from "../adapters/fsm-runtime.js";
|
|
26
|
+
import { plannerDynamics } from "../adapters/planner-runtime.js";
|
|
27
|
+
import { fieldRuntimeDynamics, worldFromCompiledPattern } from "../adapters/field-runtime.js";
|
|
28
|
+
import { structuralCoverage } from "../equivalence.js";
|
|
29
|
+
import { BUNDLE_SCHEMA, evidenceNodesFrom, } from "./evidence-log.js";
|
|
30
|
+
function world(id) {
|
|
31
|
+
return { envelope: createWorldEnvelope(id), entities: [], relations: [], invariants: [], projections: [] };
|
|
32
|
+
}
|
|
33
|
+
// ───────────────────────────────────────────────────────────────────── fixtures (inputs, not results)
|
|
34
|
+
const DOOR = {
|
|
35
|
+
id: 'door',
|
|
36
|
+
initial: 'closed',
|
|
37
|
+
states: ['closed', 'open', 'locked', 'destroyed'],
|
|
38
|
+
accepting: ['destroyed'],
|
|
39
|
+
transitions: [
|
|
40
|
+
{ from: 'closed', on: 'open', to: 'open' },
|
|
41
|
+
{ from: 'open', on: 'close', to: 'closed' },
|
|
42
|
+
{ from: 'closed', on: 'lock', to: 'locked', guard: { key: 'hasKey', equals: true } },
|
|
43
|
+
{ from: 'open', on: 'smash', to: 'destroyed', assign: { intact: false } },
|
|
44
|
+
],
|
|
45
|
+
context: { hasKey: false, intact: true },
|
|
46
|
+
};
|
|
47
|
+
const GRAPH = {
|
|
48
|
+
id: 'grid',
|
|
49
|
+
nodes: [{ id: 'a', x: 0, y: 0 }, { id: 'b', x: 1, y: 0 }, { id: 'c', x: 2, y: 0 }, { id: 'd', x: 1, y: 1 }, { id: 'z', x: 3, y: 0 }],
|
|
50
|
+
edges: [
|
|
51
|
+
{ from: 'a', to: 'b', cost: 1 }, { from: 'a', to: 'd', cost: 4 },
|
|
52
|
+
{ from: 'b', to: 'c', cost: 1 }, { from: 'd', to: 'z', cost: 1 }, { from: 'c', to: 'z', cost: 1 },
|
|
53
|
+
],
|
|
54
|
+
start: 'a',
|
|
55
|
+
goal: 'z',
|
|
56
|
+
heuristic: { kind: 'euclidean' },
|
|
57
|
+
};
|
|
58
|
+
function compiledPattern() {
|
|
59
|
+
return {
|
|
60
|
+
id: 'observatory', recipe: { id: 'observatory' },
|
|
61
|
+
bodies: [{ attributes: { 'data-body': 'attract' }, tokens: ['attract'] }],
|
|
62
|
+
relationships: [], feedback: [], diagnostics: [], metrics: [], conditions: [],
|
|
63
|
+
render: { underlay: null, overlay: [], heatmap: false, unapplied: [] },
|
|
64
|
+
reducedMotion: { reducedMotion: 'none', meaningWithoutMotion: '', staticOutputs: [] },
|
|
65
|
+
};
|
|
66
|
+
}
|
|
67
|
+
// ─────────────────────────────────────────────────────────────────────────────────── run recording
|
|
68
|
+
/**
|
|
69
|
+
* Record one substrate's execution. The transitions come from `hostWorld`, the conformance verdict
|
|
70
|
+
* from `runConformance` — this function decides nothing about either.
|
|
71
|
+
*/
|
|
72
|
+
function recordRun(substrate, makeWorld, makeContract, inputs, extraFacts = []) {
|
|
73
|
+
const w = makeWorld();
|
|
74
|
+
const contract = makeContract(w);
|
|
75
|
+
const host = hostWorld(w, contract);
|
|
76
|
+
const transitions = [];
|
|
77
|
+
const evidence = [];
|
|
78
|
+
for (const [i, input] of inputs.entries()) {
|
|
79
|
+
const prefix = `${substrate}:${i}`;
|
|
80
|
+
const r = host.advance(input);
|
|
81
|
+
const nodes = evidenceNodesFrom(r.evidence, i, prefix, `${substrate}.advance`);
|
|
82
|
+
evidence.push(...nodes);
|
|
83
|
+
const snap = contract.capabilities.snapshot ? host.readState() : undefined;
|
|
84
|
+
const reading = snap && 'ok' in snap && snap.ok ? snap.value.reading.metrics : undefined;
|
|
85
|
+
transitions.push({
|
|
86
|
+
step: i,
|
|
87
|
+
input,
|
|
88
|
+
output: r.ok ? r.value : undefined,
|
|
89
|
+
lifecycle: host.lastLifecycle,
|
|
90
|
+
failure: r.ok ? undefined : { code: r.error.code, message: r.error.message },
|
|
91
|
+
reading,
|
|
92
|
+
evidenceIds: nodes.map((n) => n.id),
|
|
93
|
+
});
|
|
94
|
+
if (host.lastLifecycle === 'terminal')
|
|
95
|
+
break;
|
|
96
|
+
}
|
|
97
|
+
// state visibility, sourced from the contract's own declarations — never assumed
|
|
98
|
+
const last = transitions[transitions.length - 1];
|
|
99
|
+
const stateFacts = [
|
|
100
|
+
...Object.entries(last?.reading ?? {}).map(([key, value]) => ({
|
|
101
|
+
key,
|
|
102
|
+
visibility: 'observed',
|
|
103
|
+
value,
|
|
104
|
+
basis: 'contract.snapshot() reading',
|
|
105
|
+
})),
|
|
106
|
+
...extraFacts,
|
|
107
|
+
];
|
|
108
|
+
if (contract.capabilities.restore) {
|
|
109
|
+
stateFacts.push({ key: '<full state>', visibility: 'reconstructed', basis: 'capabilities.restore = true; snapshot is restorable' });
|
|
110
|
+
}
|
|
111
|
+
const law = contract.capabilities.declareTransitionLaw && contract.describeTransitionLaw
|
|
112
|
+
? contract.describeTransitionLaw()
|
|
113
|
+
: undefined;
|
|
114
|
+
const conformance = runConformance(makeWorld, makeContract, inputs);
|
|
115
|
+
host.dispose();
|
|
116
|
+
return {
|
|
117
|
+
run: {
|
|
118
|
+
substrate,
|
|
119
|
+
contractId: contract.identity.id,
|
|
120
|
+
executionKind: contract.executionKind,
|
|
121
|
+
capabilities: contract.capabilities,
|
|
122
|
+
determinism: contract.determinism,
|
|
123
|
+
transitions,
|
|
124
|
+
stateFacts,
|
|
125
|
+
conformance,
|
|
126
|
+
transitionLaw: law && law.ok ? law.value : undefined,
|
|
127
|
+
terminated: host.lastLifecycle === 'terminal',
|
|
128
|
+
},
|
|
129
|
+
evidence,
|
|
130
|
+
};
|
|
131
|
+
}
|
|
132
|
+
// ────────────────────────────────────────────────────────────────────────── projection recording
|
|
133
|
+
const PROJECTION_OPERATIONS = [
|
|
134
|
+
{ id: 'publish', reversible: false, recoveryPaths: ['unpublish'] },
|
|
135
|
+
{ id: 'unpublish', reversible: true, recoveryPaths: [] },
|
|
136
|
+
{ id: 'delete', reversible: false, recoveryPaths: [] },
|
|
137
|
+
{ id: 'audit', reversible: true, recoveryPaths: [] },
|
|
138
|
+
];
|
|
139
|
+
const PROJECTION_AUTHORITY = [
|
|
140
|
+
{ operation: 'publish', scope: 'editor', authoritySource: 'editorial-policy-v2' },
|
|
141
|
+
{ operation: 'audit', scope: 'auditor', authoritySource: 'compliance-charter' },
|
|
142
|
+
];
|
|
143
|
+
function projectionSource() {
|
|
144
|
+
const envelope = createWorldEnvelope('projection-world');
|
|
145
|
+
return {
|
|
146
|
+
envelope,
|
|
147
|
+
operations: PROJECTION_OPERATIONS,
|
|
148
|
+
snapshot: { envelope, step: 7, entities: [], metrics: { drafts: 3, published: 2, internalRiskScore: 91, moderationQueue: 5 } },
|
|
149
|
+
capabilities: ['publish', 'unpublish', 'audit'],
|
|
150
|
+
authority: PROJECTION_AUTHORITY,
|
|
151
|
+
evidenceIds: ['ev-publish-log', 'ev-risk-model', 'ev-moderation-trace'],
|
|
152
|
+
};
|
|
153
|
+
}
|
|
154
|
+
function projectionDefinitions() {
|
|
155
|
+
const envelope = projectionSource().envelope;
|
|
156
|
+
const base = {
|
|
157
|
+
sourceEnvelope: envelope,
|
|
158
|
+
invariants: [{ id: 'drafts-bounded', statement: 'drafts <= 10', reads: ['drafts'] }],
|
|
159
|
+
provenance: [{ id: 't1', kind: 'redact', detail: 'risk score redacted' }],
|
|
160
|
+
};
|
|
161
|
+
return [
|
|
162
|
+
{
|
|
163
|
+
...base,
|
|
164
|
+
identity: { id: 'editor', version: '1' },
|
|
165
|
+
scope: { consumer: 'editor', kind: 'participant' },
|
|
166
|
+
observation: { observable: ['drafts', 'published'], hidden: ['internalRiskScore'] },
|
|
167
|
+
operations: { exposed: ['publish'], hidden: ['audit'], signaled: ['publish'] },
|
|
168
|
+
evidence: { accessible: ['ev-publish-log'], withheld: ['ev-risk-model'] },
|
|
169
|
+
authority: { presented: ['publish'] },
|
|
170
|
+
},
|
|
171
|
+
{
|
|
172
|
+
...base,
|
|
173
|
+
identity: { id: 'auditor', version: '1' },
|
|
174
|
+
scope: { consumer: 'auditor', kind: 'agent' },
|
|
175
|
+
observation: { observable: ['drafts', 'internalRiskScore'], hidden: [] },
|
|
176
|
+
operations: { exposed: ['audit'], hidden: ['publish'], signaled: ['audit'] },
|
|
177
|
+
evidence: { accessible: ['ev-risk-model', 'ev-moderation-trace'], withheld: [] },
|
|
178
|
+
authority: { presented: ['audit'] },
|
|
179
|
+
},
|
|
180
|
+
{
|
|
181
|
+
...base,
|
|
182
|
+
identity: { id: 'overreaching', version: '1' },
|
|
183
|
+
scope: { consumer: 'untrusted', kind: 'external-system' },
|
|
184
|
+
observation: { observable: ['drafts'], hidden: ['internalRiskScore'] },
|
|
185
|
+
operations: { exposed: ['publish', 'delete'], hidden: [], signaled: ['delete'] },
|
|
186
|
+
evidence: { accessible: ['ev-publish-log'], withheld: [] },
|
|
187
|
+
authority: { presented: ['publish', 'delete'] },
|
|
188
|
+
},
|
|
189
|
+
];
|
|
190
|
+
}
|
|
191
|
+
function recordProjections() {
|
|
192
|
+
const source = projectionSource();
|
|
193
|
+
const evidence = [];
|
|
194
|
+
const projections = projectionDefinitions().map((definition) => {
|
|
195
|
+
const result = project(definition, source);
|
|
196
|
+
const surfaceId = `projection:${definition.identity.id}`;
|
|
197
|
+
evidence.push({
|
|
198
|
+
id: surfaceId,
|
|
199
|
+
kind: 'runtime-derivation',
|
|
200
|
+
origin: 'project()',
|
|
201
|
+
label: `surface ${definition.identity.id}`,
|
|
202
|
+
payload: result.surface,
|
|
203
|
+
derivedFrom: [],
|
|
204
|
+
});
|
|
205
|
+
result.anomalies.forEach((a, i) => {
|
|
206
|
+
evidence.push({
|
|
207
|
+
id: `${surfaceId}:anomaly:${i}`,
|
|
208
|
+
kind: 'runtime-derivation',
|
|
209
|
+
origin: 'project()',
|
|
210
|
+
label: `${a.code}: ${a.subject}`,
|
|
211
|
+
payload: a,
|
|
212
|
+
derivedFrom: [surfaceId],
|
|
213
|
+
});
|
|
214
|
+
});
|
|
215
|
+
const omegaProjection = toOpportunityProjection(result.surface);
|
|
216
|
+
const opportunities = PROJECTION_OPERATIONS.map((op) => {
|
|
217
|
+
const r = evaluateOpportunity({
|
|
218
|
+
world: { envelope: source.envelope, operations: PROJECTION_OPERATIONS },
|
|
219
|
+
participant: definition.scope.consumer,
|
|
220
|
+
state: { enabled: ['publish', 'audit', 'unpublish'], reachableOutcomes: ['publish', 'audit', 'unpublish'] },
|
|
221
|
+
projection: omegaProjection,
|
|
222
|
+
history: [],
|
|
223
|
+
capabilities: source.capabilities,
|
|
224
|
+
authority: source.authority,
|
|
225
|
+
}, op.id);
|
|
226
|
+
evidence.push({
|
|
227
|
+
id: `${surfaceId}:omega:${op.id}`,
|
|
228
|
+
kind: 'runtime-derivation',
|
|
229
|
+
origin: 'evaluateOpportunity()',
|
|
230
|
+
label: `Ω_sys ${definition.identity.id}/${op.id} → ${r.available ? 'available' : 'unavailable'}`,
|
|
231
|
+
payload: r,
|
|
232
|
+
derivedFrom: [surfaceId],
|
|
233
|
+
});
|
|
234
|
+
return r;
|
|
235
|
+
});
|
|
236
|
+
return {
|
|
237
|
+
definitionId: definition.identity.id,
|
|
238
|
+
scope: `${definition.scope.consumer} (${definition.scope.kind})`,
|
|
239
|
+
result,
|
|
240
|
+
opportunities,
|
|
241
|
+
evidenceIds: [surfaceId],
|
|
242
|
+
};
|
|
243
|
+
});
|
|
244
|
+
return { projections, evidence };
|
|
245
|
+
}
|
|
246
|
+
// ───────────────────────────────────────────────────────────────────────────── episode recording
|
|
247
|
+
const EPISODE_TRACE = [
|
|
248
|
+
{ step: 1, from: 'A', to: 'B', operation: 'request', influence: 0.8 },
|
|
249
|
+
{ step: 2, from: 'B', to: 'A', operation: 'respond', influence: 0.7 },
|
|
250
|
+
{ step: 3, from: 'A', to: 'B', operation: 'confirm', influence: 0.6 },
|
|
251
|
+
{ step: 9, from: 'C', to: 'D', operation: 'notify', influence: 0.5 },
|
|
252
|
+
{ step: 11, from: 'C', to: 'E', operation: 'notify', influence: 0.5 },
|
|
253
|
+
{ step: 20, from: 'B', to: 'A', operation: 'followup', influence: 0.2 },
|
|
254
|
+
];
|
|
255
|
+
/** Several parameterizations, ALL retained — the mission requires alternates never overwrite. */
|
|
256
|
+
function recordDetections() {
|
|
257
|
+
const participants = ['A', 'B', 'C', 'D', 'E'];
|
|
258
|
+
const variants = [
|
|
259
|
+
{
|
|
260
|
+
label: 'baseline (window 5, influence ≥ 0.3)',
|
|
261
|
+
contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 5, minimumInfluence: 0.3 },
|
|
262
|
+
},
|
|
263
|
+
{
|
|
264
|
+
label: 'wide window (25)',
|
|
265
|
+
contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 25, minimumInfluence: 0.3 },
|
|
266
|
+
},
|
|
267
|
+
{
|
|
268
|
+
label: 'strict influence (≥ 0.65)',
|
|
269
|
+
contract: { boundary: { participants, start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.65 }, recurrenceWindow: 5, minimumInfluence: 0.65 },
|
|
270
|
+
},
|
|
271
|
+
{
|
|
272
|
+
label: 'narrow boundary (A,B only)',
|
|
273
|
+
contract: { boundary: { participants: ['A', 'B'], start: 0, end: 30 }, timescale: 1, coupling: { kind: 'direct-influence', minInfluence: 0.3 }, recurrenceWindow: 5, minimumInfluence: 0.3 },
|
|
274
|
+
},
|
|
275
|
+
];
|
|
276
|
+
const evidence = [];
|
|
277
|
+
const detections = variants.map(({ label, contract }, i) => {
|
|
278
|
+
const result = detectEpisodes(EPISODE_TRACE, contract, participants);
|
|
279
|
+
const id = `detection:${i}`;
|
|
280
|
+
evidence.push({
|
|
281
|
+
id,
|
|
282
|
+
kind: 'runtime-derivation',
|
|
283
|
+
origin: 'detectEpisodes()',
|
|
284
|
+
label: `${label} → ${result.episodes.length} candidate episode(s)`,
|
|
285
|
+
payload: result,
|
|
286
|
+
derivedFrom: [],
|
|
287
|
+
});
|
|
288
|
+
return { label, contract, result, evidenceId: id };
|
|
289
|
+
});
|
|
290
|
+
return { detections, evidence };
|
|
291
|
+
}
|
|
292
|
+
// ─────────────────────────────────────────────────────────────────────────────── bundle assembly
|
|
293
|
+
/**
|
|
294
|
+
* Assemble the whole bundle. Registry sections are passed through VERBATIM — a test asserts they
|
|
295
|
+
* deep-equal the live registries, so the Observatory cannot show a discovery the runtime does not hold.
|
|
296
|
+
*/
|
|
297
|
+
export function captureBundle(revision) {
|
|
298
|
+
const evidence = [];
|
|
299
|
+
const runs = [];
|
|
300
|
+
const fsm = recordRun('FiniteStateMachine', () => world('fsm-world'), (w) => fsmDynamics(w, DOOR), [{ event: 'open' }, { event: 'close' }, { event: 'open' }, { event: 'smash' }, { event: 'open' }]);
|
|
301
|
+
runs.push(fsm.run);
|
|
302
|
+
evidence.push(...fsm.evidence);
|
|
303
|
+
const planner = recordRun('SearchPlanner', () => world('planner-world'), (w) => plannerDynamics(w, GRAPH), Array.from({ length: 12 }, () => ({ expand: 1 })));
|
|
304
|
+
runs.push(planner.run);
|
|
305
|
+
evidence.push(...planner.evidence);
|
|
306
|
+
const governor = recordRun('QualityGovernor', () => world('governor-world'), (w) => governorDynamics(w), [30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 10, 10, 10].map((durationMs) => ({ durationMs })));
|
|
307
|
+
runs.push(governor.run);
|
|
308
|
+
evidence.push(...governor.evidence);
|
|
309
|
+
// the field is lossy: its coverage classification is the runtime's own, not a judgement made here
|
|
310
|
+
const fieldFacts = structuralCoverage()
|
|
311
|
+
.filter((c) => c.classification !== 'represented')
|
|
312
|
+
.map((c) => ({
|
|
313
|
+
key: c.construct,
|
|
314
|
+
visibility: c.classification === 'lossy' || c.classification === 'unavailable' ? 'unavailable' : 'observed',
|
|
315
|
+
basis: `structuralCoverage(): ${c.classification}`,
|
|
316
|
+
}));
|
|
317
|
+
const field = recordRun('FieldRuntime', () => worldFromCompiledPattern(compiledPattern()).world, (w) => fieldRuntimeDynamics(w), Array.from({ length: 6 }, () => ({ steps: 1 })), fieldFacts);
|
|
318
|
+
runs.push(field.run);
|
|
319
|
+
evidence.push(...field.evidence);
|
|
320
|
+
const { projections, evidence: projectionEvidence } = recordProjections();
|
|
321
|
+
evidence.push(...projectionEvidence);
|
|
322
|
+
const { detections, evidence: detectionEvidence } = recordDetections();
|
|
323
|
+
evidence.push(...detectionEvidence);
|
|
324
|
+
const ablations = runAblations();
|
|
325
|
+
ablations.forEach((a, i) => {
|
|
326
|
+
evidence.push({
|
|
327
|
+
id: `ablation:${i}`,
|
|
328
|
+
kind: 'runtime-derivation',
|
|
329
|
+
origin: 'runAblations()',
|
|
330
|
+
label: `${a.element} / ${a.form} → ${a.classification}`,
|
|
331
|
+
payload: a,
|
|
332
|
+
derivedFrom: [],
|
|
333
|
+
});
|
|
334
|
+
});
|
|
335
|
+
// registry entries become evidence nodes so the Observatory can cite them like anything else
|
|
336
|
+
discoveries().forEach((d) => {
|
|
337
|
+
evidence.push({ id: d.id, kind: 'discovery', origin: 'discoveries()', label: `${d.id} ${d.concept}`, payload: d, derivedFrom: [] });
|
|
338
|
+
});
|
|
339
|
+
predictions().forEach((p) => {
|
|
340
|
+
evidence.push({ id: p.id, kind: 'prediction', origin: 'predictions()', label: `${p.id} ${p.grade}`, payload: p, derivedFrom: [] });
|
|
341
|
+
});
|
|
342
|
+
negativeResults().forEach((n) => {
|
|
343
|
+
evidence.push({ id: n.id, kind: 'negative-result', origin: 'negativeResults()', label: `${n.id} ${n.status}`, payload: n, derivedFrom: [] });
|
|
344
|
+
});
|
|
345
|
+
corpus().forEach((e) => {
|
|
346
|
+
evidence.push({ id: `corpus:${e.substrate}`, kind: 'registry-entry', origin: 'corpus()', label: `${e.substrate} (${e.status})`, payload: e, derivedFrom: [] });
|
|
347
|
+
});
|
|
348
|
+
const captured = new Set(runs.map((r) => r.substrate));
|
|
349
|
+
const pendingSubstrates = corpus().filter((e) => !captured.has(e.substrate)).map((e) => e.substrate);
|
|
350
|
+
return {
|
|
351
|
+
revision: { ...revision, bundleSchema: BUNDLE_SCHEMA },
|
|
352
|
+
registries: {
|
|
353
|
+
corpus: corpus(),
|
|
354
|
+
corpusLedger: corpusLedger(),
|
|
355
|
+
discoveries: discoveries(),
|
|
356
|
+
predictions: predictions(),
|
|
357
|
+
predictionAccuracy: predictionAccuracy(),
|
|
358
|
+
negativeResults: negativeResults(),
|
|
359
|
+
negativeLedger: negativeLedger(),
|
|
360
|
+
projectionClaims: projectionClaims(),
|
|
361
|
+
projectionProfile: projectionEvidenceProfile(),
|
|
362
|
+
},
|
|
363
|
+
runs,
|
|
364
|
+
projections,
|
|
365
|
+
detections,
|
|
366
|
+
ablations,
|
|
367
|
+
evidence,
|
|
368
|
+
pendingSubstrates,
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
//# sourceMappingURL=capture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"capture.js","sourceRoot":"","sources":["../../../src/world/observatory/capture.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,131 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Normalized evidence log (EXPERIMENTAL, internal) — Phase O2.
|
|
3
|
+
*
|
|
4
|
+
* The Observatory is an inspection instrument, not a source of findings. This file defines the
|
|
5
|
+
* artifact that separates the two: the runtime EMITS an evidence log; the Observatory RENDERS it and
|
|
6
|
+
* derives nothing. Core exports nothing publicly and imports no DOM, so this boundary is enforced by
|
|
7
|
+
* the package layout rather than by convention.
|
|
8
|
+
*
|
|
9
|
+
* living system → instrumentation adapter → normalized evidence log → observatory
|
|
10
|
+
*
|
|
11
|
+
* Every visible statement in the Observatory must reduce to a node in this log, and every node names
|
|
12
|
+
* the runtime function that produced it (`origin`). A node with no origin cannot be displayed as a
|
|
13
|
+
* finding, because nothing in the runtime claimed it.
|
|
14
|
+
*
|
|
15
|
+
* Deliberately reuses existing runtime types (`OpportunityResult`, `DetectionResult`, `AblationRecord`,
|
|
16
|
+
* `ProjectionResult`, `DynamicsEvidence`, …) rather than restating them. New types appear ONLY where
|
|
17
|
+
* several sources had to be represented uniformly — the evidence node and the recorded transition.
|
|
18
|
+
*/
|
|
19
|
+
import type { DynamicsCapabilities, DynamicsEvidence, DynamicsExecutionKind, DeterminismDeclaration, TransitionLifecycle } from '../dynamics.ts';
|
|
20
|
+
import type { OpportunityResult } from '../opportunity/opportunity.ts';
|
|
21
|
+
import type { DetectionContract, DetectionResult } from '../episodes/episodes.ts';
|
|
22
|
+
import type { AblationRecord } from '../ablation/ablation.ts';
|
|
23
|
+
import type { ProjectionResult } from '../projection/projection.ts';
|
|
24
|
+
import type { ConformanceReport, CorpusEntry, CorpusLedger } from '../conformance/corpus.ts';
|
|
25
|
+
import type { Discovery } from '../conformance/discoveries.ts';
|
|
26
|
+
import type { Prediction, PredictionAccuracy } from '../conformance/predictions.ts';
|
|
27
|
+
import type { NegativeResult, NegativeLedger } from '../conformance/negative-results.ts';
|
|
28
|
+
import type { ProjectionClaim, EvidenceProfile } from '../projection/evidence-profile.ts';
|
|
29
|
+
/** What a piece of evidence IS. The Observatory groups and filters by this, never by substrate. */
|
|
30
|
+
export type EvidenceNodeKind = 'raw-event' | 'adapter-output' | 'runtime-derivation' | 'registry-entry' | 'prediction' | 'discovery' | 'negative-result';
|
|
31
|
+
/**
|
|
32
|
+
* One node in the evidence DAG. `derivedFrom` makes every edge citable: an Observatory pane showing a
|
|
33
|
+
* conclusion can walk back to the inputs the runtime actually used.
|
|
34
|
+
*/
|
|
35
|
+
export interface EvidenceNode {
|
|
36
|
+
readonly id: string;
|
|
37
|
+
readonly kind: EvidenceNodeKind;
|
|
38
|
+
/** The runtime function that produced this. Provenance — never a UI label. */
|
|
39
|
+
readonly origin: string;
|
|
40
|
+
readonly label: string;
|
|
41
|
+
readonly step?: number;
|
|
42
|
+
readonly payload: unknown;
|
|
43
|
+
readonly derivedFrom: readonly string[];
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* How a piece of world state became visible. `inferred` exists in the vocabulary so the Observatory can
|
|
47
|
+
* show that the count is ZERO — the runtime never infers state, and an absent category is invisible.
|
|
48
|
+
*/
|
|
49
|
+
export type StateVisibility = 'declared' | 'observed' | 'reconstructed' | 'inferred' | 'unavailable';
|
|
50
|
+
export interface StateFact {
|
|
51
|
+
readonly key: string;
|
|
52
|
+
readonly visibility: StateVisibility;
|
|
53
|
+
readonly value?: number;
|
|
54
|
+
/** Why it carries this visibility, sourced from the runtime (e.g. a coverage classification). */
|
|
55
|
+
readonly basis: string;
|
|
56
|
+
readonly evidenceId?: string;
|
|
57
|
+
}
|
|
58
|
+
export interface RecordedTransition {
|
|
59
|
+
readonly step: number;
|
|
60
|
+
readonly input: unknown;
|
|
61
|
+
readonly output?: unknown;
|
|
62
|
+
readonly lifecycle: TransitionLifecycle;
|
|
63
|
+
readonly failure?: {
|
|
64
|
+
readonly code: string;
|
|
65
|
+
readonly message: string;
|
|
66
|
+
};
|
|
67
|
+
/** Snapshot reading AFTER this transition, when the substrate advertises snapshot. */
|
|
68
|
+
readonly reading?: Readonly<Record<string, number>>;
|
|
69
|
+
readonly evidenceIds: readonly string[];
|
|
70
|
+
}
|
|
71
|
+
export interface RecordedRun {
|
|
72
|
+
readonly substrate: string;
|
|
73
|
+
readonly contractId: string;
|
|
74
|
+
readonly executionKind: DynamicsExecutionKind;
|
|
75
|
+
readonly capabilities: DynamicsCapabilities;
|
|
76
|
+
readonly determinism: DeterminismDeclaration;
|
|
77
|
+
readonly transitions: readonly RecordedTransition[];
|
|
78
|
+
readonly stateFacts: readonly StateFact[];
|
|
79
|
+
readonly conformance: ConformanceReport;
|
|
80
|
+
/** Present only when the substrate can declare its law; absent is meaningful, not missing. */
|
|
81
|
+
readonly transitionLaw?: unknown;
|
|
82
|
+
readonly terminated: boolean;
|
|
83
|
+
}
|
|
84
|
+
/** One projection applied to one snapshot, with the Ω_sys it produced. Both from runtime calls. */
|
|
85
|
+
export interface RecordedProjection {
|
|
86
|
+
readonly definitionId: string;
|
|
87
|
+
readonly scope: string;
|
|
88
|
+
readonly result: ProjectionResult;
|
|
89
|
+
readonly opportunities: readonly OpportunityResult[];
|
|
90
|
+
readonly evidenceIds: readonly string[];
|
|
91
|
+
}
|
|
92
|
+
/** Episode detection at ONE parameterization. Multiple are kept; none overwrites another. */
|
|
93
|
+
export interface RecordedDetection {
|
|
94
|
+
readonly label: string;
|
|
95
|
+
readonly contract: DetectionContract;
|
|
96
|
+
readonly result: DetectionResult;
|
|
97
|
+
readonly evidenceId: string;
|
|
98
|
+
}
|
|
99
|
+
export interface ObservatoryRegistries {
|
|
100
|
+
readonly corpus: readonly CorpusEntry[];
|
|
101
|
+
readonly corpusLedger: CorpusLedger;
|
|
102
|
+
readonly discoveries: readonly Discovery[];
|
|
103
|
+
readonly predictions: readonly Prediction[];
|
|
104
|
+
readonly predictionAccuracy: PredictionAccuracy;
|
|
105
|
+
readonly negativeResults: readonly NegativeResult[];
|
|
106
|
+
readonly negativeLedger: NegativeLedger;
|
|
107
|
+
readonly projectionClaims: readonly ProjectionClaim[];
|
|
108
|
+
readonly projectionProfile: EvidenceProfile;
|
|
109
|
+
}
|
|
110
|
+
export interface BundleRevision {
|
|
111
|
+
/** Commit the bundle was captured at. Supplied by the emitter; the runtime does not read git. */
|
|
112
|
+
readonly commit: string;
|
|
113
|
+
readonly coreVersion: string;
|
|
114
|
+
readonly bundleSchema: string;
|
|
115
|
+
}
|
|
116
|
+
export interface ObservatoryBundle {
|
|
117
|
+
readonly revision: BundleRevision;
|
|
118
|
+
readonly registries: ObservatoryRegistries;
|
|
119
|
+
readonly runs: readonly RecordedRun[];
|
|
120
|
+
readonly projections: readonly RecordedProjection[];
|
|
121
|
+
readonly detections: readonly RecordedDetection[];
|
|
122
|
+
readonly ablations: readonly AblationRecord[];
|
|
123
|
+
/** Flat evidence DAG. Every id referenced anywhere in the bundle resolves here. */
|
|
124
|
+
readonly evidence: readonly EvidenceNode[];
|
|
125
|
+
/** Substrates in the corpus with no captured run — shown as pending, never fabricated. */
|
|
126
|
+
readonly pendingSubstrates: readonly string[];
|
|
127
|
+
}
|
|
128
|
+
export declare const BUNDLE_SCHEMA = "observatory-bundle/1";
|
|
129
|
+
/** Flattens a contract's evidence channel into log nodes. Pure re-expression; nothing is computed. */
|
|
130
|
+
export declare function evidenceNodesFrom(evidence: DynamicsEvidence, step: number, prefix: string, origin: string): EvidenceNode[];
|
|
131
|
+
//# sourceMappingURL=evidence-log.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence-log.d.ts","sourceRoot":"","sources":["../../../src/world/observatory/evidence-log.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
export const BUNDLE_SCHEMA = 'observatory-bundle/1';
|
|
2
|
+
/** Flattens a contract's evidence channel into log nodes. Pure re-expression; nothing is computed. */
|
|
3
|
+
export function evidenceNodesFrom(evidence, step, prefix, origin) {
|
|
4
|
+
const nodes = [];
|
|
5
|
+
evidence.declaredInputs.forEach((r, i) => {
|
|
6
|
+
nodes.push({ id: `${prefix}:in:${i}`, kind: 'raw-event', origin, label: `input ${r.kind}`, step, payload: r, derivedFrom: [] });
|
|
7
|
+
});
|
|
8
|
+
evidence.substrateResponses.forEach((r, i) => {
|
|
9
|
+
nodes.push({
|
|
10
|
+
id: `${prefix}:out:${i}`,
|
|
11
|
+
kind: 'adapter-output',
|
|
12
|
+
origin,
|
|
13
|
+
label: `response ${r.kind}`,
|
|
14
|
+
step,
|
|
15
|
+
payload: r,
|
|
16
|
+
derivedFrom: evidence.declaredInputs.map((_, j) => `${prefix}:in:${j}`),
|
|
17
|
+
});
|
|
18
|
+
});
|
|
19
|
+
evidence.executionTrace.forEach((t, i) => {
|
|
20
|
+
nodes.push({
|
|
21
|
+
id: `${prefix}:trace:${i}`,
|
|
22
|
+
kind: 'runtime-derivation',
|
|
23
|
+
origin,
|
|
24
|
+
label: t.summary,
|
|
25
|
+
step,
|
|
26
|
+
payload: t,
|
|
27
|
+
derivedFrom: evidence.substrateResponses.map((_, j) => `${prefix}:out:${j}`),
|
|
28
|
+
});
|
|
29
|
+
});
|
|
30
|
+
evidence.unresolvedInterpretations.forEach((o, i) => {
|
|
31
|
+
nodes.push({
|
|
32
|
+
id: `${prefix}:obligation:${i}`,
|
|
33
|
+
kind: 'runtime-derivation',
|
|
34
|
+
origin,
|
|
35
|
+
label: `unresolved: ${o.claim}`,
|
|
36
|
+
step,
|
|
37
|
+
payload: o,
|
|
38
|
+
derivedFrom: [],
|
|
39
|
+
});
|
|
40
|
+
});
|
|
41
|
+
return nodes;
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=evidence-log.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"evidence-log.js","sourceRoot":"","sources":["../../../src/world/observatory/evidence-log.ts"],"names":[],"mappings":"AA+IA,MAAM,CAAC,MAAM,aAAa,GAAG,sBAAsB,CAAC;AAEpD,sGAAsG;AACtG,MAAM,UAAU,iBAAiB,CAC/B,QAA0B,EAC1B,IAAY,EACZ,MAAc,EACd,MAAc;IAEd,MAAM,KAAK,GAAmB,EAAE,CAAC;IACjC,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,EAAE,GAAG,MAAM,OAAO,CAAC,EAAE,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,EAAE,WAAW,EAAE,EAAE,EAAE,CAAC,CAAC;IAClI,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,kBAAkB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAC3C,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,QAAQ,CAAC,EAAE;YACxB,IAAI,EAAE,gBAAgB;YACtB,MAAM;YACN,KAAK,EAAE,YAAY,CAAC,CAAC,IAAI,EAAE;YAC3B,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,OAAO,CAAC,EAAE,CAAC;SACxE,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QACvC,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,UAAU,CAAC,EAAE;YAC1B,IAAI,EAAE,oBAAoB;YAC1B,MAAM;YACN,KAAK,EAAE,CAAC,CAAC,OAAO;YAChB,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,QAAQ,CAAC,kBAAkB,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,GAAG,MAAM,QAAQ,CAAC,EAAE,CAAC;SAC7E,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,QAAQ,CAAC,yBAAyB,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE;QAClD,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,GAAG,MAAM,eAAe,CAAC,EAAE;YAC/B,IAAI,EAAE,oBAAoB;YAC1B,MAAM;YACN,KAAK,EAAE,eAAe,CAAC,CAAC,KAAK,EAAE;YAC/B,IAAI;YACJ,OAAO,EAAE,CAAC;YACV,WAAW,EAAE,EAAE;SAChB,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,OAAO,KAAK,CAAC;AACf,CAAC"}
|