@vibesdotdev/runnable 0.0.0-stage → 1.0.0-rc.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +18 -0
- package/README.md +4 -2
- package/dist/artifact-data.d.ts +8 -0
- package/dist/artifact-data.d.ts.map +1 -0
- package/dist/artifact-data.js +12 -0
- package/dist/artifact-data.js.map +1 -0
- package/dist/change-source.d.ts +54 -0
- package/dist/change-source.d.ts.map +1 -0
- package/dist/change-source.js +37 -0
- package/dist/change-source.js.map +1 -0
- package/dist/client/client.d.ts +1002 -0
- package/dist/client/client.d.ts.map +1 -0
- package/dist/client/client.js +148 -0
- package/dist/client/client.js.map +1 -0
- package/dist/client/execution/failure.d.ts +3 -0
- package/dist/client/execution/failure.d.ts.map +1 -0
- package/dist/client/execution/failure.js +20 -0
- package/dist/client/execution/failure.js.map +1 -0
- package/dist/client/execution/finalize.d.ts +81 -0
- package/dist/client/execution/finalize.d.ts.map +1 -0
- package/dist/client/execution/finalize.js +71 -0
- package/dist/client/execution/finalize.js.map +1 -0
- package/dist/client/execution/memo.d.ts +25 -0
- package/dist/client/execution/memo.d.ts.map +1 -0
- package/dist/client/execution/memo.js +56 -0
- package/dist/client/execution/memo.js.map +1 -0
- package/dist/client/execution/native-admission.d.ts +7 -0
- package/dist/client/execution/native-admission.d.ts.map +1 -0
- package/dist/client/execution/native-admission.js +22 -0
- package/dist/client/execution/native-admission.js.map +1 -0
- package/dist/client/execution/prepare-input.d.ts +19 -0
- package/dist/client/execution/prepare-input.d.ts.map +1 -0
- package/dist/client/execution/prepare-input.js +27 -0
- package/dist/client/execution/prepare-input.js.map +1 -0
- package/dist/client/execution/prepare-record.d.ts +271 -0
- package/dist/client/execution/prepare-record.d.ts.map +1 -0
- package/dist/client/execution/prepare-record.js +115 -0
- package/dist/client/execution/prepare-record.js.map +1 -0
- package/dist/client/execution/produce.d.ts +44 -0
- package/dist/client/execution/produce.d.ts.map +1 -0
- package/dist/client/execution/produce.js +78 -0
- package/dist/client/execution/produce.js.map +1 -0
- package/dist/client/execution/recorded.d.ts +28 -0
- package/dist/client/execution/recorded.d.ts.map +1 -0
- package/dist/client/execution/recorded.js +74 -0
- package/dist/client/execution/recorded.js.map +1 -0
- package/dist/client/execution/selection.d.ts +19 -0
- package/dist/client/execution/selection.d.ts.map +1 -0
- package/dist/client/execution/selection.js +38 -0
- package/dist/client/execution/selection.js.map +1 -0
- package/dist/client/native/completion.d.ts +19 -0
- package/dist/client/native/completion.d.ts.map +1 -0
- package/dist/client/native/completion.js +158 -0
- package/dist/client/native/completion.js.map +1 -0
- package/dist/client/native/controls.d.ts +18 -0
- package/dist/client/native/controls.d.ts.map +1 -0
- package/dist/client/native/controls.js +69 -0
- package/dist/client/native/controls.js.map +1 -0
- package/dist/client/native/owner.d.ts +36 -0
- package/dist/client/native/owner.d.ts.map +1 -0
- package/dist/client/native/owner.js +111 -0
- package/dist/client/native/owner.js.map +1 -0
- package/dist/client/native/supervision.d.ts +12 -0
- package/dist/client/native/supervision.d.ts.map +1 -0
- package/dist/client/native/supervision.js +56 -0
- package/dist/client/native/supervision.js.map +1 -0
- package/dist/client/records/authority.d.ts +20 -0
- package/dist/client/records/authority.d.ts.map +1 -0
- package/dist/client/records/authority.js +186 -0
- package/dist/client/records/authority.js.map +1 -0
- package/dist/client/records/identity.d.ts +4 -0
- package/dist/client/records/identity.d.ts.map +1 -0
- package/dist/client/records/identity.js +7 -0
- package/dist/client/records/identity.js.map +1 -0
- package/dist/client/records/input-admission.d.ts +5 -0
- package/dist/client/records/input-admission.d.ts.map +1 -0
- package/dist/client/records/input-admission.js +26 -0
- package/dist/client/records/input-admission.js.map +1 -0
- package/dist/client/records/owner.d.ts +254 -0
- package/dist/client/records/owner.d.ts.map +1 -0
- package/dist/client/records/owner.js +127 -0
- package/dist/client/records/owner.js.map +1 -0
- package/dist/client/records/query.d.ts +11 -0
- package/dist/client/records/query.d.ts.map +1 -0
- package/dist/client/records/query.js +60 -0
- package/dist/client/records/query.js.map +1 -0
- package/dist/client/records/recording.d.ts +9 -0
- package/dist/client/records/recording.d.ts.map +1 -0
- package/dist/client/records/recording.js +160 -0
- package/dist/client/records/recording.js.map +1 -0
- package/dist/client/resolve.d.ts +10 -0
- package/dist/client/resolve.d.ts.map +1 -0
- package/dist/client/resolve.js +33 -0
- package/dist/client/resolve.js.map +1 -0
- package/dist/client/tracking/artifact-data.d.ts +8 -0
- package/dist/client/tracking/artifact-data.d.ts.map +1 -0
- package/dist/client/tracking/artifact-data.js +12 -0
- package/dist/client/tracking/artifact-data.js.map +1 -0
- package/dist/client/tracking/client.d.ts +20 -0
- package/dist/client/tracking/client.d.ts.map +1 -0
- package/dist/client/tracking/client.js +187 -0
- package/dist/client/tracking/client.js.map +1 -0
- package/dist/client/tracking/panel-bindings.d.ts +8 -0
- package/dist/client/tracking/panel-bindings.d.ts.map +1 -0
- package/dist/client/tracking/panel-bindings.js +81 -0
- package/dist/client/tracking/panel-bindings.js.map +1 -0
- package/dist/client/tracking/panels.d.ts +62 -0
- package/dist/client/tracking/panels.d.ts.map +1 -0
- package/dist/client/tracking/panels.js +56 -0
- package/dist/client/tracking/panels.js.map +1 -0
- package/dist/client/tracking/projection.d.ts +17 -0
- package/dist/client/tracking/projection.d.ts.map +1 -0
- package/dist/client/tracking/projection.js +100 -0
- package/dist/client/tracking/projection.js.map +1 -0
- package/dist/client/tracking/watch.d.ts +10 -0
- package/dist/client/tracking/watch.d.ts.map +1 -0
- package/dist/client/tracking/watch.js +128 -0
- package/dist/client/tracking/watch.js.map +1 -0
- package/dist/client/transport.d.ts +14 -0
- package/dist/client/transport.d.ts.map +1 -0
- package/dist/client/transport.js +52 -0
- package/dist/client/transport.js.map +1 -0
- package/dist/client.d.ts +460 -0
- package/dist/client.d.ts.map +1 -0
- package/dist/client.js +1181 -0
- package/dist/client.js.map +1 -0
- package/dist/context.d.ts +14 -0
- package/dist/context.d.ts.map +1 -0
- package/dist/context.js +98 -0
- package/dist/context.js.map +1 -0
- package/dist/docs/runnable.context.docs.descriptor.d.ts +4 -0
- package/dist/docs/runnable.context.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/runnable.context.docs.descriptor.js +419 -0
- package/dist/docs/runnable.context.docs.descriptor.js.map +1 -0
- package/dist/docs/runnable.graphs.docs.descriptor.d.ts +4 -0
- package/dist/docs/runnable.graphs.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/runnable.graphs.docs.descriptor.js +51 -0
- package/dist/docs/runnable.graphs.docs.descriptor.js.map +1 -0
- package/dist/docs/runnable.nodes.docs.descriptor.d.ts +4 -0
- package/dist/docs/runnable.nodes.docs.descriptor.d.ts.map +1 -0
- package/dist/docs/runnable.nodes.docs.descriptor.js +327 -0
- package/dist/docs/runnable.nodes.docs.descriptor.js.map +1 -0
- package/dist/event-broker.d.ts +54 -0
- package/dist/event-broker.d.ts.map +1 -0
- package/dist/event-broker.js +157 -0
- package/dist/event-broker.js.map +1 -0
- package/dist/events.d.ts +16 -0
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +144 -0
- package/dist/events.js.map +1 -0
- package/dist/execution.contract.d.ts +10 -0
- package/dist/execution.contract.d.ts.map +1 -0
- package/dist/execution.contract.js +30 -0
- package/dist/execution.contract.js.map +1 -0
- package/dist/execution.d.ts +24 -0
- package/dist/execution.d.ts.map +1 -0
- package/dist/execution.js +172 -0
- package/dist/execution.js.map +1 -0
- package/dist/execution.telemetry.descriptor.d.ts +4 -0
- package/dist/execution.telemetry.descriptor.d.ts.map +1 -0
- package/dist/execution.telemetry.descriptor.js +6 -0
- package/dist/execution.telemetry.descriptor.js.map +1 -0
- package/dist/host.d.ts +95 -0
- package/dist/host.d.ts.map +1 -0
- package/dist/host.js +12 -0
- package/dist/host.js.map +1 -0
- package/dist/identity.d.ts +3 -0
- package/dist/identity.d.ts.map +1 -0
- package/dist/identity.js +6 -0
- package/dist/identity.js.map +1 -0
- package/dist/index.d.ts +32 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +24 -0
- package/dist/index.js.map +1 -0
- package/dist/input-admission.d.ts +5 -0
- package/dist/input-admission.d.ts.map +1 -0
- package/dist/input-admission.js +43 -0
- package/dist/input-admission.js.map +1 -0
- package/dist/invocation.d.ts +17 -0
- package/dist/invocation.d.ts.map +1 -0
- package/dist/invocation.js +32 -0
- package/dist/invocation.js.map +1 -0
- package/dist/issues.d.ts +4 -0
- package/dist/issues.d.ts.map +1 -0
- package/dist/issues.js +5 -0
- package/dist/issues.js.map +1 -0
- package/dist/json-field.d.ts +4 -0
- package/dist/json-field.d.ts.map +1 -0
- package/dist/json-field.js +16 -0
- package/dist/json-field.js.map +1 -0
- package/dist/kinds/config.d.ts +3 -0
- package/dist/kinds/config.d.ts.map +1 -0
- package/dist/kinds/config.js +14 -0
- package/dist/kinds/config.js.map +1 -0
- package/dist/kinds/ingest-mapping.d.ts +3 -0
- package/dist/kinds/ingest-mapping.d.ts.map +1 -0
- package/dist/kinds/ingest-mapping.js +30 -0
- package/dist/kinds/ingest-mapping.js.map +1 -0
- package/dist/kinds/result.d.ts +3 -0
- package/dist/kinds/result.d.ts.map +1 -0
- package/dist/kinds/result.js +14 -0
- package/dist/kinds/result.js.map +1 -0
- package/dist/kinds/runnable.d.ts +3 -0
- package/dist/kinds/runnable.d.ts.map +1 -0
- package/dist/kinds/runnable.js +19 -0
- package/dist/kinds/runnable.js.map +1 -0
- package/dist/kinds/telemetry.d.ts +3 -0
- package/dist/kinds/telemetry.d.ts.map +1 -0
- package/dist/kinds/telemetry.js +14 -0
- package/dist/kinds/telemetry.js.map +1 -0
- package/dist/kinds/type.d.ts +3 -0
- package/dist/kinds/type.d.ts.map +1 -0
- package/dist/kinds/type.js +14 -0
- package/dist/kinds/type.js.map +1 -0
- package/dist/kinds/visualization.d.ts +3 -0
- package/dist/kinds/visualization.d.ts.map +1 -0
- package/dist/kinds/visualization.js +14 -0
- package/dist/kinds/visualization.js.map +1 -0
- package/dist/metrics/runnable.metrics.descriptor.d.ts +16 -0
- package/dist/metrics/runnable.metrics.descriptor.d.ts.map +1 -0
- package/dist/metrics/runnable.metrics.descriptor.js +16 -0
- package/dist/metrics/runnable.metrics.descriptor.js.map +1 -0
- package/dist/metrics/runnable.metrics.impl.d.ts +13 -0
- package/dist/metrics/runnable.metrics.impl.d.ts.map +1 -0
- package/dist/metrics/runnable.metrics.impl.js +60 -0
- package/dist/metrics/runnable.metrics.impl.js.map +1 -0
- package/dist/panels.d.ts +31 -0
- package/dist/panels.d.ts.map +1 -0
- package/dist/panels.js +58 -0
- package/dist/panels.js.map +1 -0
- package/dist/plugin.d.ts +3 -0
- package/dist/plugin.d.ts.map +1 -0
- package/dist/plugin.js +71 -0
- package/dist/plugin.js.map +1 -0
- package/dist/projection.d.ts +26 -0
- package/dist/projection.d.ts.map +1 -0
- package/dist/projection.js +100 -0
- package/dist/projection.js.map +1 -0
- package/dist/recording.d.ts +9 -0
- package/dist/recording.d.ts.map +1 -0
- package/dist/recording.js +121 -0
- package/dist/recording.js.map +1 -0
- package/dist/records/authority.d.ts +20 -0
- package/dist/records/authority.d.ts.map +1 -0
- package/dist/records/authority.js +142 -0
- package/dist/records/authority.js.map +1 -0
- package/dist/records/query.d.ts +11 -0
- package/dist/records/query.d.ts.map +1 -0
- package/dist/records/query.js +60 -0
- package/dist/records/query.js.map +1 -0
- package/dist/runnable.cloud.plugin.d.ts +3 -0
- package/dist/runnable.cloud.plugin.d.ts.map +1 -0
- package/dist/runnable.cloud.plugin.js +3 -0
- package/dist/runnable.cloud.plugin.js.map +1 -0
- package/dist/runnable.consumer.plugin.d.ts +15 -0
- package/dist/runnable.consumer.plugin.d.ts.map +1 -0
- package/dist/runnable.consumer.plugin.js +15 -0
- package/dist/runnable.consumer.plugin.js.map +1 -0
- package/dist/runnable.plugin.d.ts +3 -0
- package/dist/runnable.plugin.d.ts.map +1 -0
- package/dist/runnable.plugin.js +3 -0
- package/dist/runnable.plugin.js.map +1 -0
- package/dist/runner.d.ts +13 -0
- package/dist/runner.d.ts.map +1 -0
- package/dist/runner.js +151 -0
- package/dist/runner.js.map +1 -0
- package/dist/runtime/change-source.d.ts +39 -0
- package/dist/runtime/change-source.d.ts.map +1 -0
- package/dist/runtime/change-source.js +36 -0
- package/dist/runtime/change-source.js.map +1 -0
- package/dist/runtime/event-broker.d.ts +41 -0
- package/dist/runtime/event-broker.d.ts.map +1 -0
- package/dist/runtime/event-broker.js +157 -0
- package/dist/runtime/event-broker.js.map +1 -0
- package/dist/runtime/events.d.ts +16 -0
- package/dist/runtime/events.d.ts.map +1 -0
- package/dist/runtime/events.js +144 -0
- package/dist/runtime/events.js.map +1 -0
- package/dist/runtime/execution/contract.d.ts +10 -0
- package/dist/runtime/execution/contract.d.ts.map +1 -0
- package/dist/runtime/execution/contract.js +30 -0
- package/dist/runtime/execution/contract.js.map +1 -0
- package/dist/runtime/execution/exit.d.ts +5 -0
- package/dist/runtime/execution/exit.d.ts.map +1 -0
- package/dist/runtime/execution/exit.js +39 -0
- package/dist/runtime/execution/exit.js.map +1 -0
- package/dist/runtime/execution/index.d.ts +23 -0
- package/dist/runtime/execution/index.d.ts.map +1 -0
- package/dist/runtime/execution/index.js +136 -0
- package/dist/runtime/execution/index.js.map +1 -0
- package/dist/runtime/host.d.ts +60 -0
- package/dist/runtime/host.d.ts.map +1 -0
- package/dist/runtime/host.js +13 -0
- package/dist/runtime/host.js.map +1 -0
- package/dist/runtime/invocation.d.ts +10 -0
- package/dist/runtime/invocation.d.ts.map +1 -0
- package/dist/runtime/invocation.js +27 -0
- package/dist/runtime/invocation.js.map +1 -0
- package/dist/runtime/plugins/plugin.d.ts +3 -0
- package/dist/runtime/plugins/plugin.d.ts.map +1 -0
- package/dist/runtime/plugins/plugin.js +69 -0
- package/dist/runtime/plugins/plugin.js.map +1 -0
- package/dist/runtime/plugins/runnable.cloud.plugin.d.ts +3 -0
- package/dist/runtime/plugins/runnable.cloud.plugin.d.ts.map +1 -0
- package/dist/runtime/plugins/runnable.cloud.plugin.js +3 -0
- package/dist/runtime/plugins/runnable.cloud.plugin.js.map +1 -0
- package/dist/runtime/plugins/runnable.consumer.plugin.d.ts +15 -0
- package/dist/runtime/plugins/runnable.consumer.plugin.d.ts.map +1 -0
- package/dist/runtime/plugins/runnable.consumer.plugin.js +15 -0
- package/dist/runtime/plugins/runnable.consumer.plugin.js.map +1 -0
- package/dist/runtime/plugins/runnable.metrics.plugin.d.ts +4 -0
- package/dist/runtime/plugins/runnable.metrics.plugin.d.ts.map +1 -0
- package/dist/runtime/plugins/runnable.metrics.plugin.js +13 -0
- package/dist/runtime/plugins/runnable.metrics.plugin.js.map +1 -0
- package/dist/runtime/plugins/runnable.plugin.d.ts +3 -0
- package/dist/runtime/plugins/runnable.plugin.d.ts.map +1 -0
- package/dist/runtime/plugins/runnable.plugin.js +3 -0
- package/dist/runtime/plugins/runnable.plugin.js.map +1 -0
- package/dist/runtime/runner.d.ts +13 -0
- package/dist/runtime/runner.d.ts.map +1 -0
- package/dist/runtime/runner.js +154 -0
- package/dist/runtime/runner.js.map +1 -0
- package/dist/runtime/state/index.d.ts +4 -0
- package/dist/runtime/state/index.d.ts.map +1 -0
- package/dist/runtime/state/index.js +4 -0
- package/dist/runtime/state/index.js.map +1 -0
- package/dist/runtime/state/manager.d.ts +20 -0
- package/dist/runtime/state/manager.d.ts.map +1 -0
- package/dist/runtime/state/manager.js +135 -0
- package/dist/runtime/state/manager.js.map +1 -0
- package/dist/runtime/state/snapshot.d.ts +10 -0
- package/dist/runtime/state/snapshot.d.ts.map +1 -0
- package/dist/runtime/state/snapshot.js +59 -0
- package/dist/runtime/state/snapshot.js.map +1 -0
- package/dist/runtime/state/time-series.d.ts +36 -0
- package/dist/runtime/state/time-series.d.ts.map +1 -0
- package/dist/runtime/state/time-series.js +151 -0
- package/dist/runtime/state/time-series.js.map +1 -0
- package/dist/schemas/context.d.ts +64 -0
- package/dist/schemas/context.d.ts.map +1 -0
- package/dist/schemas/context.js +37 -0
- package/dist/schemas/context.js.map +1 -0
- package/dist/schemas/contracts/events.d.ts +33 -0
- package/dist/schemas/contracts/events.d.ts.map +1 -0
- package/dist/schemas/contracts/events.js +5 -0
- package/dist/schemas/contracts/events.js.map +1 -0
- package/dist/schemas/contracts/execution.d.ts +211 -0
- package/dist/schemas/contracts/execution.d.ts.map +1 -0
- package/dist/schemas/contracts/execution.js +40 -0
- package/dist/schemas/contracts/execution.js.map +1 -0
- package/dist/schemas/contracts/host.d.ts +37 -0
- package/dist/schemas/contracts/host.d.ts.map +1 -0
- package/dist/schemas/contracts/host.js +2 -0
- package/dist/schemas/contracts/host.js.map +1 -0
- package/dist/schemas/contracts/index.d.ts +77 -0
- package/dist/schemas/contracts/index.d.ts.map +1 -0
- package/dist/schemas/contracts/index.js +28 -0
- package/dist/schemas/contracts/index.js.map +1 -0
- package/dist/schemas/contracts/invocation.d.ts +9 -0
- package/dist/schemas/contracts/invocation.d.ts.map +1 -0
- package/dist/schemas/contracts/invocation.js +8 -0
- package/dist/schemas/contracts/invocation.js.map +1 -0
- package/dist/schemas/contracts/runner.d.ts +61 -0
- package/dist/schemas/contracts/runner.d.ts.map +1 -0
- package/dist/schemas/contracts/runner.js +3 -0
- package/dist/schemas/contracts/runner.js.map +1 -0
- package/dist/schemas/contracts/state.d.ts +147 -0
- package/dist/schemas/contracts/state.d.ts.map +1 -0
- package/dist/schemas/contracts/state.js +16 -0
- package/dist/schemas/contracts/state.js.map +1 -0
- package/dist/schemas/contracts/storage.d.ts +229 -0
- package/dist/schemas/contracts/storage.d.ts.map +1 -0
- package/dist/schemas/contracts/storage.js +39 -0
- package/dist/schemas/contracts/storage.js.map +1 -0
- package/dist/schemas/contracts/test-scenario.d.ts +60 -0
- package/dist/schemas/contracts/test-scenario.d.ts.map +1 -0
- package/dist/schemas/contracts/test-scenario.js +2 -0
- package/dist/schemas/contracts/test-scenario.js.map +1 -0
- package/dist/schemas/contracts/watch.d.ts +49 -0
- package/dist/schemas/contracts/watch.d.ts.map +1 -0
- package/dist/schemas/contracts/watch.js +2 -0
- package/dist/schemas/contracts/watch.js.map +1 -0
- package/dist/schemas/contracts.d.ts +192 -0
- package/dist/schemas/contracts.d.ts.map +1 -0
- package/dist/schemas/contracts.js +38 -0
- package/dist/schemas/contracts.js.map +1 -0
- package/dist/schemas/description.d.ts +68 -0
- package/dist/schemas/description.d.ts.map +1 -0
- package/dist/schemas/description.js +12 -0
- package/dist/schemas/description.js.map +1 -0
- package/dist/schemas/descriptors.d.ts +429 -0
- package/dist/schemas/descriptors.d.ts.map +1 -0
- package/dist/schemas/descriptors.js +125 -0
- package/dist/schemas/descriptors.js.map +1 -0
- package/dist/schemas/events.d.ts +359 -0
- package/dist/schemas/events.d.ts.map +1 -0
- package/dist/schemas/events.js +109 -0
- package/dist/schemas/events.js.map +1 -0
- package/dist/schemas/index.d.ts +12 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +12 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/schemas/issues.d.ts +142 -0
- package/dist/schemas/issues.d.ts.map +1 -0
- package/dist/schemas/issues.js +44 -0
- package/dist/schemas/issues.js.map +1 -0
- package/dist/schemas/outcome.d.ts +111 -0
- package/dist/schemas/outcome.d.ts.map +1 -0
- package/dist/schemas/outcome.js +32 -0
- package/dist/schemas/outcome.js.map +1 -0
- package/dist/schemas/panels.d.ts +164 -0
- package/dist/schemas/panels.d.ts.map +1 -0
- package/dist/schemas/panels.js +25 -0
- package/dist/schemas/panels.js.map +1 -0
- package/dist/schemas/projection.d.ts +301 -0
- package/dist/schemas/projection.d.ts.map +1 -0
- package/dist/schemas/projection.js +64 -0
- package/dist/schemas/projection.js.map +1 -0
- package/dist/schemas/runs.d.ts +2427 -0
- package/dist/schemas/runs.d.ts.map +1 -0
- package/dist/schemas/runs.js +163 -0
- package/dist/schemas/runs.js.map +1 -0
- package/dist/schemas/writes.d.ts +103 -0
- package/dist/schemas/writes.d.ts.map +1 -0
- package/dist/schemas/writes.js +28 -0
- package/dist/schemas/writes.js.map +1 -0
- package/dist/state.d.ts +175 -0
- package/dist/state.d.ts.map +1 -0
- package/dist/state.js +356 -0
- package/dist/state.js.map +1 -0
- package/dist/storage/context-sql.d.ts +9 -0
- package/dist/storage/context-sql.d.ts.map +1 -0
- package/dist/storage/context-sql.js +77 -0
- package/dist/storage/context-sql.js.map +1 -0
- package/dist/storage/local/catalog.d.ts +62 -0
- package/dist/storage/local/catalog.d.ts.map +1 -0
- package/dist/storage/local/catalog.js +88 -0
- package/dist/storage/local/catalog.js.map +1 -0
- package/dist/storage/local/descriptors.d.ts +8 -0
- package/dist/storage/local/descriptors.d.ts.map +1 -0
- package/dist/storage/local/descriptors.js +32 -0
- package/dist/storage/local/descriptors.js.map +1 -0
- package/dist/storage/local/host.d.ts +5 -0
- package/dist/storage/local/host.d.ts.map +1 -0
- package/dist/storage/local/host.js +100 -0
- package/dist/storage/local/host.js.map +1 -0
- package/dist/storage/local/index.d.ts +4 -0
- package/dist/storage/local/index.d.ts.map +1 -0
- package/dist/storage/local/index.js +22 -0
- package/dist/storage/local/index.js.map +1 -0
- package/dist/storage/local/refusal.d.ts +2 -0
- package/dist/storage/local/refusal.d.ts.map +1 -0
- package/dist/storage/local/refusal.js +7 -0
- package/dist/storage/local/refusal.js.map +1 -0
- package/dist/storage/local/state-host.d.ts +5 -0
- package/dist/storage/local/state-host.d.ts.map +1 -0
- package/dist/storage/local/state-host.js +149 -0
- package/dist/storage/local/state-host.js.map +1 -0
- package/dist/storage/local/telemetry.d.ts +19 -0
- package/dist/storage/local/telemetry.d.ts.map +1 -0
- package/dist/storage/local/telemetry.js +52 -0
- package/dist/storage/local/telemetry.js.map +1 -0
- package/dist/storage/local.d.ts +3 -0
- package/dist/storage/local.d.ts.map +1 -0
- package/dist/storage/local.js +408 -0
- package/dist/storage/local.js.map +1 -0
- package/dist/storage/plugin.d.ts +7 -0
- package/dist/storage/plugin.d.ts.map +1 -0
- package/dist/storage/plugin.js +116 -0
- package/dist/storage/plugin.js.map +1 -0
- package/dist/storage/records.d.ts +8 -0
- package/dist/storage/records.d.ts.map +1 -0
- package/dist/storage/records.js +68 -0
- package/dist/storage/records.js.map +1 -0
- package/dist/svelte/components/ArtifactList.svelte +198 -0
- package/dist/svelte/components/ArtifactList.svelte.d.ts +10 -0
- package/dist/svelte/components/ArtifactList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/ArtifactPreview.svelte +19 -0
- package/dist/svelte/components/ArtifactPreview.svelte.d.ts +8 -0
- package/dist/svelte/components/ArtifactPreview.svelte.d.ts.map +1 -0
- package/dist/svelte/components/FleetRuns.svelte +50 -0
- package/dist/svelte/components/FleetRuns.svelte.d.ts +8 -0
- package/dist/svelte/components/FleetRuns.svelte.d.ts.map +1 -0
- package/dist/svelte/components/LogViewer.svelte +98 -0
- package/dist/svelte/components/LogViewer.svelte.d.ts +13 -0
- package/dist/svelte/components/LogViewer.svelte.d.ts.map +1 -0
- package/dist/svelte/components/MetricCard.svelte +176 -0
- package/dist/svelte/components/MetricCard.svelte.d.ts +5 -0
- package/dist/svelte/components/MetricCard.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunActivity.svelte +32 -0
- package/dist/svelte/components/RunActivity.svelte.d.ts +13 -0
- package/dist/svelte/components/RunActivity.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunBrowser.svelte +86 -0
- package/dist/svelte/components/RunBrowser.svelte.d.ts +13 -0
- package/dist/svelte/components/RunBrowser.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunComparison.svelte +76 -0
- package/dist/svelte/components/RunComparison.svelte.d.ts +12 -0
- package/dist/svelte/components/RunComparison.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunContext.svelte +29 -0
- package/dist/svelte/components/RunContext.svelte.d.ts +10 -0
- package/dist/svelte/components/RunContext.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunEvidence.svelte +30 -0
- package/dist/svelte/components/RunEvidence.svelte.d.ts +8 -0
- package/dist/svelte/components/RunEvidence.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunIssues.svelte +114 -0
- package/dist/svelte/components/RunIssues.svelte.d.ts +12 -0
- package/dist/svelte/components/RunIssues.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunObservation.svelte +32 -0
- package/dist/svelte/components/RunObservation.svelte.d.ts +12 -0
- package/dist/svelte/components/RunObservation.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunOutcomeBadge.svelte +11 -0
- package/dist/svelte/components/RunOutcomeBadge.svelte.d.ts +8 -0
- package/dist/svelte/components/RunOutcomeBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunPanels.svelte +64 -0
- package/dist/svelte/components/RunPanels.svelte.d.ts +15 -0
- package/dist/svelte/components/RunPanels.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunStatusBadge.svelte +38 -0
- package/dist/svelte/components/RunStatusBadge.svelte.d.ts +9 -0
- package/dist/svelte/components/RunStatusBadge.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunSummary.svelte +42 -0
- package/dist/svelte/components/RunSummary.svelte.d.ts +11 -0
- package/dist/svelte/components/RunSummary.svelte.d.ts.map +1 -0
- package/dist/svelte/components/RunsView.svelte +162 -0
- package/dist/svelte/components/RunsView.svelte.d.ts +17 -0
- package/dist/svelte/components/RunsView.svelte.d.ts.map +1 -0
- package/dist/svelte/components/TypePicker.svelte +337 -0
- package/dist/svelte/components/TypePicker.svelte.d.ts +12 -0
- package/dist/svelte/components/TypePicker.svelte.d.ts.map +1 -0
- package/dist/svelte/components/records/RunDetail.svelte +214 -0
- package/dist/svelte/components/records/RunDetail.svelte.d.ts +20 -0
- package/dist/svelte/components/records/RunDetail.svelte.d.ts.map +1 -0
- package/dist/svelte/components/records/RunList.svelte +190 -0
- package/dist/svelte/components/records/RunList.svelte.d.ts +14 -0
- package/dist/svelte/components/records/RunList.svelte.d.ts.map +1 -0
- package/dist/svelte/components/records/RunTree.svelte +186 -0
- package/dist/svelte/components/records/RunTree.svelte.d.ts +5 -0
- package/dist/svelte/components/records/RunTree.svelte.d.ts.map +1 -0
- package/dist/svelte/components/records/tree-navigation.d.ts +3 -0
- package/dist/svelte/components/records/tree-navigation.d.ts.map +1 -0
- package/dist/svelte/components/records/tree-navigation.js +29 -0
- package/dist/svelte/components/records/tree-projection.d.ts +16 -0
- package/dist/svelte/components/records/tree-projection.d.ts.map +1 -0
- package/dist/svelte/components/records/tree-projection.js +134 -0
- package/dist/svelte/index.d.ts +27 -0
- package/dist/svelte/index.d.ts.map +1 -0
- package/dist/svelte/index.js +22 -0
- package/dist/svelte/lib/artifact-blob.d.ts +2 -0
- package/dist/svelte/lib/artifact-blob.d.ts.map +1 -0
- package/dist/svelte/lib/artifact-blob.js +1 -0
- package/dist/svelte/lib/run-investigation.d.ts +17 -0
- package/dist/svelte/lib/run-investigation.d.ts.map +1 -0
- package/dist/svelte/lib/run-investigation.js +44 -0
- package/dist/svelte/lib/run-issues.d.ts +34 -0
- package/dist/svelte/lib/run-issues.d.ts.map +1 -0
- package/dist/svelte/lib/run-issues.js +59 -0
- package/dist/svelte/lib/run-presentation.d.ts +16 -0
- package/dist/svelte/lib/run-presentation.d.ts.map +1 -0
- package/dist/svelte/lib/run-presentation.js +69 -0
- package/dist/svelte/lib/run-tree.d.ts +22 -0
- package/dist/svelte/lib/run-tree.d.ts.map +1 -0
- package/dist/svelte/lib/run-tree.js +93 -0
- package/dist/svelte/lib/status.d.ts +19 -0
- package/dist/svelte/lib/status.d.ts.map +1 -0
- package/dist/svelte/lib/status.js +122 -0
- package/dist/svelte/query-form.d.ts +50 -0
- package/dist/svelte/query-form.d.ts.map +1 -0
- package/dist/svelte/query-form.js +19 -0
- package/dist/svelte/runs/data.svelte.d.ts +678 -0
- package/dist/svelte/runs/data.svelte.d.ts.map +1 -0
- package/dist/svelte/runs/data.svelte.js +28 -0
- package/dist/svelte/runs/opening.d.ts +8 -0
- package/dist/svelte/runs/opening.d.ts.map +1 -0
- package/dist/svelte/runs/opening.js +110 -0
- package/dist/svelte/runs/query.d.ts +3 -0
- package/dist/svelte/runs/query.d.ts.map +1 -0
- package/dist/svelte/runs/query.js +16 -0
- package/dist/svelte/runs/selection.d.ts +3 -0
- package/dist/svelte/runs/selection.d.ts.map +1 -0
- package/dist/svelte/runs/selection.js +42 -0
- package/dist/svelte/runs/shutdown.d.ts +9 -0
- package/dist/svelte/runs/shutdown.d.ts.map +1 -0
- package/dist/svelte/runs/shutdown.js +104 -0
- package/dist/svelte/runs.store.svelte.d.ts +427 -0
- package/dist/svelte/runs.store.svelte.d.ts.map +1 -0
- package/dist/svelte/runs.store.svelte.js +90 -0
- package/dist/svelte/styles.css +16 -0
- package/dist/svelte/types.d.ts +29 -0
- package/dist/svelte/types.d.ts.map +1 -0
- package/dist/svelte/types.js +1 -0
- package/dist/svelte/viz/DescriptorPanel.svelte +104 -0
- package/dist/svelte/viz/DescriptorPanel.svelte.d.ts +18 -0
- package/dist/svelte/viz/DescriptorPanel.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/Crystal3D.svelte +137 -0
- package/dist/svelte/viz/crystal/Crystal3D.svelte.d.ts +12 -0
- package/dist/svelte/viz/crystal/Crystal3D.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/Crystal3DControls.svelte +253 -0
- package/dist/svelte/viz/crystal/Crystal3DControls.svelte.d.ts +18 -0
- package/dist/svelte/viz/crystal/Crystal3DControls.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/Crystal3DRenderer.svelte +941 -0
- package/dist/svelte/viz/crystal/Crystal3DRenderer.svelte.d.ts +16 -0
- package/dist/svelte/viz/crystal/Crystal3DRenderer.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/Crystal3DStats.svelte +110 -0
- package/dist/svelte/viz/crystal/Crystal3DStats.svelte.d.ts +12 -0
- package/dist/svelte/viz/crystal/Crystal3DStats.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/LatticePanel.svelte +230 -0
- package/dist/svelte/viz/crystal/LatticePanel.svelte.d.ts +13 -0
- package/dist/svelte/viz/crystal/LatticePanel.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/index.d.ts +8 -0
- package/dist/svelte/viz/crystal/index.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/index.js +6 -0
- package/dist/svelte/viz/crystal/types.d.ts +59 -0
- package/dist/svelte/viz/crystal/types.d.ts.map +1 -0
- package/dist/svelte/viz/crystal/types.js +27 -0
- package/dist/svelte/viz/index.d.ts +18 -0
- package/dist/svelte/viz/index.d.ts.map +1 -0
- package/dist/svelte/viz/index.js +16 -0
- package/dist/svelte/viz/mfd/MFDArcGauge.svelte +59 -0
- package/dist/svelte/viz/mfd/MFDArcGauge.svelte.d.ts +21 -0
- package/dist/svelte/viz/mfd/MFDArcGauge.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/MFDBarMeter.svelte +58 -0
- package/dist/svelte/viz/mfd/MFDBarMeter.svelte.d.ts +21 -0
- package/dist/svelte/viz/mfd/MFDBarMeter.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/MFDHexMatrix.svelte +58 -0
- package/dist/svelte/viz/mfd/MFDHexMatrix.svelte.d.ts +21 -0
- package/dist/svelte/viz/mfd/MFDHexMatrix.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/MFDPanel.svelte +372 -0
- package/dist/svelte/viz/mfd/MFDPanel.svelte.d.ts +19 -0
- package/dist/svelte/viz/mfd/MFDPanel.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/MFDScope.svelte +59 -0
- package/dist/svelte/viz/mfd/MFDScope.svelte.d.ts +21 -0
- package/dist/svelte/viz/mfd/MFDScope.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/MFDStatusGrid.svelte +65 -0
- package/dist/svelte/viz/mfd/MFDStatusGrid.svelte.d.ts +25 -0
- package/dist/svelte/viz/mfd/MFDStatusGrid.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/grid.d.ts +37 -0
- package/dist/svelte/viz/mfd/grid.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/grid.js +51 -0
- package/dist/svelte/viz/mfd/palette.d.ts +22 -0
- package/dist/svelte/viz/mfd/palette.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/palette.js +105 -0
- package/dist/svelte/viz/mfd/pipeline/store.svelte.d.ts +42 -0
- package/dist/svelte/viz/mfd/pipeline/store.svelte.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/pipeline/store.svelte.js +115 -0
- package/dist/svelte/viz/mfd/renderer/context.d.ts +47 -0
- package/dist/svelte/viz/mfd/renderer/context.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/renderer/context.js +272 -0
- package/dist/svelte/viz/mfd/renderer/pipeline.d.ts +32 -0
- package/dist/svelte/viz/mfd/renderer/pipeline.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/renderer/pipeline.js +188 -0
- package/dist/svelte/viz/mfd/renderer/shaders.d.ts +35 -0
- package/dist/svelte/viz/mfd/renderer/shaders.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/renderer/shaders.js +837 -0
- package/dist/svelte/viz/mfd/types.d.ts +88 -0
- package/dist/svelte/viz/mfd/types.d.ts.map +1 -0
- package/dist/svelte/viz/mfd/types.js +31 -0
- package/dist/svelte/viz/registry.d.ts +36 -0
- package/dist/svelte/viz/registry.d.ts.map +1 -0
- package/dist/svelte/viz/registry.js +74 -0
- package/dist/test-scenario/test-scenario-emitter.d.ts +35 -0
- package/dist/test-scenario/test-scenario-emitter.d.ts.map +1 -0
- package/dist/test-scenario/test-scenario-emitter.js +64 -0
- package/dist/test-scenario/test-scenario-emitter.js.map +1 -0
- package/dist/test-scenario/test-scenario.plugin.d.ts +11 -0
- package/dist/test-scenario/test-scenario.plugin.d.ts.map +1 -0
- package/dist/test-scenario/test-scenario.plugin.js +19 -0
- package/dist/test-scenario/test-scenario.plugin.js.map +1 -0
- package/dist/test-scenario/test-scenario.type.descriptor.d.ts +12 -0
- package/dist/test-scenario/test-scenario.type.descriptor.d.ts.map +1 -0
- package/dist/test-scenario/test-scenario.type.descriptor.js +21 -0
- package/dist/test-scenario/test-scenario.type.descriptor.js.map +1 -0
- package/dist/watch.d.ts +13 -0
- package/dist/watch.d.ts.map +1 -0
- package/dist/watch.js +127 -0
- package/dist/watch.js.map +1 -0
- package/package.json +355 -4
|
@@ -0,0 +1,100 @@
|
|
|
1
|
+
import { RawArtifactRowsSchema, RawLogRowsSchema, RawMetricRowsSchema, RawRunSchema } from "../../schemas/projection.js";
|
|
2
|
+
import * as z from "zod/v4";
|
|
3
|
+
import { CapabilityError, settle } from "@vibesdotdev/kernel";
|
|
4
|
+
import { serviceOrigin } from "@vibesdotdev/infra-contracts/service";
|
|
5
|
+
export * from "../../schemas/projection.js";
|
|
6
|
+
async function deriveBaseUrl(runtime) {
|
|
7
|
+
return serviceOrigin(runtime, 'runnable');
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* The refusal for any malformed response. It carries no cause: the JSON parse
|
|
11
|
+
* or body-read failure's message can quote the payload itself, so the refusal
|
|
12
|
+
* stays value-free by construction — only the endpoint is named.
|
|
13
|
+
*/
|
|
14
|
+
function invalidResponse(endpoint) {
|
|
15
|
+
return new CapabilityError('Runnable host returned an invalid response.', 'UNAVAILABLE', {
|
|
16
|
+
reason: 'runnable-projection-response-invalid',
|
|
17
|
+
retryable: false,
|
|
18
|
+
details: { endpoint }
|
|
19
|
+
});
|
|
20
|
+
}
|
|
21
|
+
async function readPayload(response, schema, endpoint) {
|
|
22
|
+
const read = await settle(() => response.json());
|
|
23
|
+
if (!read.ok)
|
|
24
|
+
throw invalidResponse(endpoint);
|
|
25
|
+
const parsed = schema.safeParse(read.value);
|
|
26
|
+
if (!parsed.success)
|
|
27
|
+
throw invalidResponse(endpoint);
|
|
28
|
+
return parsed.data;
|
|
29
|
+
}
|
|
30
|
+
function requestFailure(endpoint, response) {
|
|
31
|
+
return new CapabilityError('Runnable host request failed.', 'UNAVAILABLE', {
|
|
32
|
+
reason: 'runnable-projection-request-failed',
|
|
33
|
+
retryable: response.status >= 500,
|
|
34
|
+
details: { endpoint, status: response.status }
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
export class BaseRunProjectionClient {
|
|
38
|
+
runtime;
|
|
39
|
+
baseUrl = null;
|
|
40
|
+
constructor(runtime) {
|
|
41
|
+
this.runtime = runtime;
|
|
42
|
+
}
|
|
43
|
+
/** Pin the runnable-web origin for in-process consumers (e.g. SSR routes). */
|
|
44
|
+
setBaseUrl(url) {
|
|
45
|
+
this.baseUrl = url.replace(/\/+$/, '');
|
|
46
|
+
}
|
|
47
|
+
/** The pinned origin, else the selected runnable service target. */
|
|
48
|
+
async resolveBaseUrl() {
|
|
49
|
+
if (!this.baseUrl)
|
|
50
|
+
this.baseUrl = (await deriveBaseUrl(this.runtime)).replace(/\/+$/, '');
|
|
51
|
+
return this.baseUrl;
|
|
52
|
+
}
|
|
53
|
+
async fetchSnapshot(runId, options = {}) {
|
|
54
|
+
const reads = await this.fetchReads(runId, options);
|
|
55
|
+
if (!reads)
|
|
56
|
+
return null;
|
|
57
|
+
return this.project(reads);
|
|
58
|
+
}
|
|
59
|
+
async fetchReads(runId, options = {}) {
|
|
60
|
+
const fetcher = options.fetch ?? fetch;
|
|
61
|
+
const base = await this.resolveBaseUrl();
|
|
62
|
+
const id = encodeURIComponent(runId);
|
|
63
|
+
const runEndpoint = '/api/runs/' + id;
|
|
64
|
+
const runResponse = await fetcher(base + runEndpoint);
|
|
65
|
+
if (!runResponse.ok) {
|
|
66
|
+
if (runResponse.status === 404) {
|
|
67
|
+
await runResponse.body?.cancel();
|
|
68
|
+
return null;
|
|
69
|
+
}
|
|
70
|
+
await runResponse.body?.cancel();
|
|
71
|
+
throw requestFailure(runEndpoint, runResponse);
|
|
72
|
+
}
|
|
73
|
+
const run = await readPayload(runResponse, RawRunSchema, runEndpoint);
|
|
74
|
+
const metricEndpoint = runEndpoint + '/metrics' +
|
|
75
|
+
(options.metricKey ? '?key=' + encodeURIComponent(options.metricKey) : '');
|
|
76
|
+
const logsEndpoint = runEndpoint + '/logs';
|
|
77
|
+
const artifactEndpoint = runEndpoint + '/artifacts' +
|
|
78
|
+
(options.artifactKind ? '?kind=' + encodeURIComponent(options.artifactKind) : '');
|
|
79
|
+
const [metricResponse, logsResponse, artifactResponse] = await Promise.all([
|
|
80
|
+
fetcher(base + metricEndpoint),
|
|
81
|
+
fetcher(base + logsEndpoint),
|
|
82
|
+
fetcher(base + artifactEndpoint)
|
|
83
|
+
]);
|
|
84
|
+
const responses = [metricResponse, logsResponse, artifactResponse];
|
|
85
|
+
const endpoints = [metricEndpoint, logsEndpoint, artifactEndpoint];
|
|
86
|
+
const failedIndex = responses.findIndex((response) => !response.ok);
|
|
87
|
+
if (failedIndex >= 0) {
|
|
88
|
+
await Promise.allSettled(responses.map((response) => response.body?.cancel()));
|
|
89
|
+
throw requestFailure(endpoints[failedIndex], responses[failedIndex]);
|
|
90
|
+
}
|
|
91
|
+
const [metrics, logs, artifacts] = await Promise.all([
|
|
92
|
+
readPayload(metricResponse, RawMetricRowsSchema, metricEndpoint),
|
|
93
|
+
readPayload(logsResponse, RawLogRowsSchema, logsEndpoint),
|
|
94
|
+
readPayload(artifactResponse, RawArtifactRowsSchema, artifactEndpoint)
|
|
95
|
+
]);
|
|
96
|
+
return { run, metrics, logs, artifacts };
|
|
97
|
+
}
|
|
98
|
+
}
|
|
99
|
+
export {} from "../../schemas/projection.js";
|
|
100
|
+
//# sourceMappingURL=projection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projection.js","sourceRoot":"","sources":["../../../src/client/tracking/projection.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import type { JsonValue } from '@vibesdotdev/kernel/schemas/json';
|
|
2
|
+
import type { RunnableWatchPort } from "../../schemas/contracts/watch.ts";
|
|
3
|
+
import { type RuntimeRef } from "@vibesdotdev/kernel";
|
|
4
|
+
/** Subscribe before reading. Invalidations during a read stay one pending refresh, and a full replacement never overwrites a newer delivery. */
|
|
5
|
+
export declare function watchRunnableSnapshots<Snapshot extends JsonValue>(runtime: RuntimeRef, port: RunnableWatchPort<Snapshot>, listener: (snapshot: {
|
|
6
|
+
runs: Snapshot[];
|
|
7
|
+
revision: number;
|
|
8
|
+
}) => void | Promise<void>, signal: AbortSignal): Promise<() => Promise<void>>;
|
|
9
|
+
export { type RunnableWatchPort } from '../../schemas/contracts/watch.ts';
|
|
10
|
+
//# sourceMappingURL=watch.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.d.ts","sourceRoot":"","sources":["../../../src/client/tracking/watch.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kCAAkC,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,kCAAkC,CAAC;AAC1E,OAAO,EAAgD,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAGpG,gJAAgJ;AAChJ,wBAAsB,sBAAsB,CAAC,QAAQ,SAAS,SAAS,EACtE,OAAO,EAAE,UAAU,EACnB,IAAI,EAAE,iBAAiB,CAAC,QAAQ,CAAC,EACjC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAA;CAAE,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,EACpF,MAAM,EAAE,WAAW,GACjB,OAAO,CAAC,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,CA4G9B;AAED,OAAO,EAAE,KAAK,iBAAiB,EAAE,MAAM,kCAAkC,CAAC"}
|
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
import { CapabilityError, CaughtFailureSchema, settle } from "@vibesdotdev/kernel";
|
|
2
|
+
import { canonical } from "../records/identity.js";
|
|
3
|
+
/** Subscribe before reading. Invalidations during a read stay one pending refresh, and a full replacement never overwrites a newer delivery. */
|
|
4
|
+
export async function watchRunnableSnapshots(runtime, port, listener, signal) {
|
|
5
|
+
signal.throwIfAborted();
|
|
6
|
+
const invocation = runtime.captureInvocation();
|
|
7
|
+
const completion = Promise.withResolvers();
|
|
8
|
+
const subscriptionReady = Promise.withResolvers();
|
|
9
|
+
// Admission happens before a potentially late asynchronous subscription. Disposal
|
|
10
|
+
// must retain that resource until it arrives and its unsubscribe has settled.
|
|
11
|
+
void runtime.lifecycle.own(() => completion.promise);
|
|
12
|
+
let unsubscribe;
|
|
13
|
+
let pending = Promise.resolve();
|
|
14
|
+
let closed = false;
|
|
15
|
+
let opening = true;
|
|
16
|
+
let scheduled = false;
|
|
17
|
+
let dirty = false;
|
|
18
|
+
let revision = 0;
|
|
19
|
+
let previous;
|
|
20
|
+
let closing;
|
|
21
|
+
const failed = async (cause) => {
|
|
22
|
+
const failure = CaughtFailureSchema.parse(cause);
|
|
23
|
+
const delivered = await settle(() => port.failed(failure));
|
|
24
|
+
if (!delivered.ok)
|
|
25
|
+
runtime.diagnostics.error('Watch failure delivery failed', {
|
|
26
|
+
scope: 'runnable:watch', plugin: 'runnable', error: new AggregateError([cause, delivered.cause], 'Watch and failure delivery failed.', { cause })
|
|
27
|
+
});
|
|
28
|
+
};
|
|
29
|
+
const close = () => {
|
|
30
|
+
if (closing)
|
|
31
|
+
return closing;
|
|
32
|
+
closed = true;
|
|
33
|
+
signal.removeEventListener('abort', onAbort);
|
|
34
|
+
closing = (async () => {
|
|
35
|
+
const cleanup = await settle(async () => {
|
|
36
|
+
await subscriptionReady.promise;
|
|
37
|
+
await unsubscribe?.();
|
|
38
|
+
});
|
|
39
|
+
// A callback may itself unsubscribe. It must not await its own delivery;
|
|
40
|
+
// lifecycle ownership separately joins all deliveries and retains cleanup refusal.
|
|
41
|
+
void pending.then(() => {
|
|
42
|
+
if (cleanup.ok)
|
|
43
|
+
completion.resolve();
|
|
44
|
+
else
|
|
45
|
+
completion.reject(cleanup.cause);
|
|
46
|
+
}, completion.reject);
|
|
47
|
+
if (!cleanup.ok)
|
|
48
|
+
throw cleanup.cause;
|
|
49
|
+
})();
|
|
50
|
+
return closing;
|
|
51
|
+
};
|
|
52
|
+
const onAbort = () => {
|
|
53
|
+
void settle(close).then(async (result) => {
|
|
54
|
+
if (!result.ok)
|
|
55
|
+
await failed(result.cause);
|
|
56
|
+
});
|
|
57
|
+
};
|
|
58
|
+
signal.addEventListener('abort', onAbort, { once: true });
|
|
59
|
+
const enqueue = (initial) => {
|
|
60
|
+
// A burst while this read is scheduled must not append another read.
|
|
61
|
+
// The settled read chains one refresh when any of those invalidations arrived.
|
|
62
|
+
if (scheduled) {
|
|
63
|
+
dirty = true;
|
|
64
|
+
return pending;
|
|
65
|
+
}
|
|
66
|
+
scheduled = true;
|
|
67
|
+
const task = pending.then(() => invocation.run(async () => {
|
|
68
|
+
if (closed)
|
|
69
|
+
return;
|
|
70
|
+
dirty = false;
|
|
71
|
+
const runs = await port.read();
|
|
72
|
+
if (closed)
|
|
73
|
+
return;
|
|
74
|
+
const identity = canonical(runs);
|
|
75
|
+
if (previous === identity)
|
|
76
|
+
return;
|
|
77
|
+
await listener({ runs, revision: ++revision });
|
|
78
|
+
previous = identity;
|
|
79
|
+
}));
|
|
80
|
+
// Catch on this chain. A floating `finally` would reject again after a refused delivery.
|
|
81
|
+
pending = task.then(() => {
|
|
82
|
+
scheduled = false;
|
|
83
|
+
if (!initial && dirty && !closed)
|
|
84
|
+
void enqueue(false);
|
|
85
|
+
}, async (cause) => {
|
|
86
|
+
scheduled = false;
|
|
87
|
+
if (!initial)
|
|
88
|
+
await failed(cause);
|
|
89
|
+
if (!initial && dirty && !closed)
|
|
90
|
+
void enqueue(false);
|
|
91
|
+
});
|
|
92
|
+
return task;
|
|
93
|
+
};
|
|
94
|
+
try {
|
|
95
|
+
try {
|
|
96
|
+
signal.throwIfAborted();
|
|
97
|
+
unsubscribe = await port.subscribe(() => {
|
|
98
|
+
if (closed)
|
|
99
|
+
return;
|
|
100
|
+
if (opening || scheduled) {
|
|
101
|
+
dirty = true;
|
|
102
|
+
return;
|
|
103
|
+
}
|
|
104
|
+
void enqueue(false);
|
|
105
|
+
});
|
|
106
|
+
}
|
|
107
|
+
finally {
|
|
108
|
+
subscriptionReady.resolve();
|
|
109
|
+
}
|
|
110
|
+
if (closed || signal.aborted) {
|
|
111
|
+
await close();
|
|
112
|
+
throw new CapabilityError('Runnable watch was cancelled while opening.', 'CANCELLED', { reason: 'runnable-watch-cancelled' });
|
|
113
|
+
}
|
|
114
|
+
await enqueue(true);
|
|
115
|
+
opening = false;
|
|
116
|
+
if (dirty && !closed)
|
|
117
|
+
void enqueue(false);
|
|
118
|
+
return close;
|
|
119
|
+
}
|
|
120
|
+
catch (cause) {
|
|
121
|
+
const cleanup = await settle(close);
|
|
122
|
+
if (!cleanup.ok)
|
|
123
|
+
throw new AggregateError([cause, cleanup.cause], 'Runnable watch admission and cleanup failed.', { cause });
|
|
124
|
+
throw cause;
|
|
125
|
+
}
|
|
126
|
+
}
|
|
127
|
+
export {} from "../../schemas/contracts/watch.js";
|
|
128
|
+
//# sourceMappingURL=watch.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"watch.js","sourceRoot":"","sources":["../../../src/client/tracking/watch.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import { type RuntimeRef } from "@vibesdotdev/kernel";
|
|
2
|
+
import type { RunHandle, RunnableClientCreateRunOptions } from "../schemas/contracts/index.ts";
|
|
3
|
+
export declare class RunnableTransport {
|
|
4
|
+
readonly runtime: RuntimeRef;
|
|
5
|
+
private readonly ensureLoaded;
|
|
6
|
+
private resolvedUrl;
|
|
7
|
+
private request;
|
|
8
|
+
private directRun;
|
|
9
|
+
constructor(runtime: RuntimeRef, ensureLoaded: () => Promise<void>);
|
|
10
|
+
load(): Promise<void>;
|
|
11
|
+
get eventsUrl(): string;
|
|
12
|
+
createRun(options: RunnableClientCreateRunOptions): Promise<RunHandle>;
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=transport.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.d.ts","sourceRoot":"","sources":["../../src/client/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAmB,KAAK,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEvE,OAAO,KAAK,EAAE,SAAS,EAAsC,8BAA8B,EAAE,MAAM,+BAA+B,CAAC;AAKnI,qBAAa,iBAAiB;IAKjB,QAAQ,CAAC,OAAO,EAAE,UAAU;IAAE,OAAO,CAAC,QAAQ,CAAC,YAAY;IAJvE,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,OAAO,CAA8B;IAC7C,OAAO,CAAC,SAAS,CAAmE;gBAE/D,OAAO,EAAE,UAAU,EAAmB,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC;IAEtF,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC;IAqB3B,IAAI,SAAS,IAAI,MAAM,CAQtB;IAEK,SAAS,CAAC,OAAO,EAAE,8BAA8B,GAAG,OAAO,CAAC,SAAS,CAAC;CAK5E"}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
import { CapabilityError } from "@vibesdotdev/kernel";
|
|
2
|
+
import { createRunner } from "../runtime/runner.js";
|
|
3
|
+
import { RUNNABLE_HOST_CONTEXT_ID } from "../runtime/host.js";
|
|
4
|
+
const EVENTS_PATH = '/api/events';
|
|
5
|
+
export class RunnableTransport {
|
|
6
|
+
runtime;
|
|
7
|
+
ensureLoaded;
|
|
8
|
+
resolvedUrl = null;
|
|
9
|
+
request;
|
|
10
|
+
directRun;
|
|
11
|
+
constructor(runtime, ensureLoaded) {
|
|
12
|
+
this.runtime = runtime;
|
|
13
|
+
this.ensureLoaded = ensureLoaded;
|
|
14
|
+
}
|
|
15
|
+
async load() {
|
|
16
|
+
const host = await this.runtime.context(RUNNABLE_HOST_CONTEXT_ID);
|
|
17
|
+
if (host.transport === 'in-process') {
|
|
18
|
+
this.directRun = options => host.createRun(options);
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
this.request = host.request;
|
|
22
|
+
let url;
|
|
23
|
+
try {
|
|
24
|
+
url = new URL(host.eventsUrl);
|
|
25
|
+
}
|
|
26
|
+
catch (error) {
|
|
27
|
+
throw new CapabilityError('Runnable host supplied invalid eventsUrl.', 'INVALID_INPUT', { reason: 'runnable-events-url-invalid', cause: error });
|
|
28
|
+
}
|
|
29
|
+
if (url.protocol !== 'http:' && url.protocol !== 'https:') {
|
|
30
|
+
throw new CapabilityError('Runnable eventsUrl must use http or https.', 'INVALID_INPUT', { reason: 'runnable-events-url-protocol-invalid', details: { protocol: url.protocol } });
|
|
31
|
+
}
|
|
32
|
+
this.resolvedUrl = url.pathname !== '/'
|
|
33
|
+
? url.toString()
|
|
34
|
+
: new URL(EVENTS_PATH, url).toString();
|
|
35
|
+
}
|
|
36
|
+
get eventsUrl() {
|
|
37
|
+
if (this.directRun) {
|
|
38
|
+
throw new CapabilityError('The selected in-process host has no HTTP event endpoint.', 'UNAVAILABLE', { reason: 'runnable-events-url-unavailable' });
|
|
39
|
+
}
|
|
40
|
+
if (!this.resolvedUrl) {
|
|
41
|
+
throw new CapabilityError('Runnable client is not loaded.', 'INTERNAL', { reason: 'runnable-client-not-loaded' });
|
|
42
|
+
}
|
|
43
|
+
return this.resolvedUrl;
|
|
44
|
+
}
|
|
45
|
+
async createRun(options) {
|
|
46
|
+
await this.ensureLoaded();
|
|
47
|
+
if (this.directRun)
|
|
48
|
+
return this.directRun(options);
|
|
49
|
+
return createRunner({ ...options, url: this.eventsUrl, lifecycle: this.runtime.lifecycle, request: this.request });
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
//# sourceMappingURL=transport.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"transport.js","sourceRoot":"","sources":["../../src/client/transport.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAmB,MAAM,qBAAqB,CAAC;AACvE,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAE,wBAAwB,EAA4B,MAAM,oBAAoB,CAAC;AAExF,MAAM,WAAW,GAAG,aAAa,CAAC;AAElC,MAAM,OAAO,iBAAiB;IAKR;IAAsC;IAJnD,WAAW,GAAkB,IAAI,CAAC;IAClC,OAAO,CAA8B;IACrC,SAAS,CAAmE;IAEpF,YAAqB,OAAmB,EAAmB,YAAiC;QAAvE,YAAO,GAAP,OAAO,CAAY;QAAmB,iBAAY,GAAZ,YAAY,CAAqB;IAAG,CAAC;IAEhG,KAAK,CAAC,IAAI;QACT,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,OAAO,CAAsB,wBAAwB,CAAC,CAAC;QACvF,IAAI,IAAI,CAAC,SAAS,KAAK,YAAY,EAAE,CAAC;YACrC,IAAI,CAAC,SAAS,GAAG,OAAO,CAAC,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACpD,OAAO;QACR,CAAC;QACD,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC;QAC5B,IAAI,GAAQ,CAAC;QACb,IAAI,CAAC;YACJ,GAAG,GAAG,IAAI,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAC/B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAChB,MAAM,IAAI,eAAe,CAAC,2CAA2C,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,6BAA6B,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC;QAClJ,CAAC;QACD,IAAI,GAAG,CAAC,QAAQ,KAAK,OAAO,IAAI,GAAG,CAAC,QAAQ,KAAK,QAAQ,EAAE,CAAC;YAC3D,MAAM,IAAI,eAAe,CAAC,4CAA4C,EAAE,eAAe,EAAE,EAAE,MAAM,EAAE,sCAAsC,EAAE,OAAO,EAAE,EAAE,QAAQ,EAAE,GAAG,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAC;QACnL,CAAC;QACD,IAAI,CAAC,WAAW,GAAG,GAAG,CAAC,QAAQ,KAAK,GAAG;YACtC,CAAC,CAAC,GAAG,CAAC,QAAQ,EAAE;YAChB,CAAC,CAAC,IAAI,GAAG,CAAC,WAAW,EAAE,GAAG,CAAC,CAAC,QAAQ,EAAE,CAAC;IACzC,CAAC;IAED,IAAI,SAAS;QACZ,IAAI,IAAI,CAAC,SAAS,EAAE,CAAC;YACpB,MAAM,IAAI,eAAe,CAAC,0DAA0D,EAAE,aAAa,EAAE,EAAE,MAAM,EAAE,iCAAiC,EAAE,CAAC,CAAC;QACrJ,CAAC;QACD,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC;YACvB,MAAM,IAAI,eAAe,CAAC,gCAAgC,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,4BAA4B,EAAE,CAAC,CAAC;QACnH,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IACzB,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,OAAuC;QACtD,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QAC1B,IAAI,IAAI,CAAC,SAAS;YAAE,OAAO,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QACnD,OAAO,YAAY,CAAC,EAAE,GAAG,OAAO,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,EAAE,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,OAAO,EAAE,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC;IACpH,CAAC;CACD"}
|