spawnfile 0.1.33 → 0.1.35
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -1
- package/dist/audit/readAudit.d.ts +3 -3
- package/dist/auth/profileStore.d.ts +3 -1
- package/dist/auth/profileStore.js +31 -30
- package/dist/auth/trainingAuth.d.ts +2 -5
- package/dist/auth/types.d.ts +16 -0
- package/dist/cli/authCommands.d.ts +1 -1
- package/dist/cli/authCommands.js +21 -1
- package/dist/cli/devCommands.d.ts +1 -1
- package/dist/cli/devCommands.js +0 -66
- package/dist/cli/runCli.d.ts +3 -4
- package/dist/cli/runCli.js +4 -3
- package/dist/cli/trainCommand.js +9 -15
- package/dist/cli/trainingBooted.d.ts +9 -0
- package/dist/cli/trainingBooted.js +45 -0
- package/dist/cli/trainingExecution.d.ts +4 -7
- package/dist/cli/trainingExecution.js +4 -32
- package/dist/compiler/containerArtifacts.js +0 -5
- package/dist/compiler/containerBackedMountRender.js +5 -1
- package/dist/compiler/containerDaimonBrokerRender.d.ts +5 -50
- package/dist/compiler/containerDaimonBrokerRender.js +19 -90
- package/dist/compiler/containerDaimonGatewayRender.d.ts +50 -0
- package/dist/compiler/containerDaimonGatewayRender.js +161 -0
- package/dist/compiler/containerDaimonGrokWorkerProvisioning.d.ts +2 -10
- package/dist/compiler/containerDaimonGrokWorkerProvisioning.js +13 -25
- package/dist/compiler/containerDaimonGrokWorkerRender.d.ts +11 -49
- package/dist/compiler/containerDaimonGrokWorkerRender.js +15 -39
- package/dist/compiler/containerDaimonStartupSupervision.d.ts +8 -0
- package/dist/compiler/containerDaimonStartupSupervision.js +39 -0
- package/dist/compiler/containerDaimonUidEntrypointRender.d.ts +1 -2
- package/dist/compiler/containerDaimonUidEntrypointRender.js +29 -47
- package/dist/compiler/containerRuntimeReadinessRender.js +1 -1
- package/dist/compiler/memoryArtifacts.js +0 -1
- package/dist/compiler/moltnetArtifacts.js +1 -17
- package/dist/compiler/moltnetClientConfig.js +1 -1
- package/dist/compiler/moltnetRuntimeConfig.js +0 -10
- package/dist/compiler/runProject.d.ts +3 -0
- package/dist/compiler/runProject.js +12 -5
- package/dist/compiler/runProjectAuth.js +6 -18
- package/dist/compiler/training/contract.d.ts +0 -2
- package/dist/compiler/training/contract.js +0 -2
- package/dist/compiler/training/execution.d.ts +1 -128
- package/dist/compiler/training/execution.js +7 -68
- package/dist/compiler/training/index.d.ts +0 -8
- package/dist/compiler/training/index.js +0 -7
- package/dist/compiler/training/output.d.ts +1 -0
- package/dist/compiler/training/output.js +1 -1
- package/dist/compiler/training/rewind/contract.d.ts +6 -6
- package/dist/compiler/training/trial/boot.d.ts +72 -0
- package/dist/compiler/training/trial/boot.js +225 -0
- package/dist/compiler/training/trial/docker.d.ts +10 -0
- package/dist/compiler/training/trial/docker.js +22 -0
- package/dist/compiler/training/trial/gateway.d.ts +47 -0
- package/dist/compiler/training/trial/gateway.js +113 -0
- package/dist/compiler/training/trial/homeLogin.d.ts +31 -0
- package/dist/compiler/training/trial/homeLogin.js +69 -0
- package/dist/compiler/training/trial/index.d.ts +8 -0
- package/dist/compiler/training/trial/index.js +8 -0
- package/dist/compiler/training/trial/judge.d.ts +15 -0
- package/dist/compiler/training/trial/judge.js +42 -0
- package/dist/compiler/training/trial/launcher.d.ts +47 -0
- package/dist/compiler/training/trial/launcher.js +193 -0
- package/dist/compiler/training/trial/login.d.ts +35 -0
- package/dist/compiler/training/trial/login.js +85 -0
- package/dist/compiler/training/trial/project.d.ts +11 -0
- package/dist/compiler/training/trial/project.js +31 -0
- package/dist/compiler/training/trial/realmTurns.d.ts +20 -0
- package/dist/compiler/training/trial/realmTurns.js +69 -0
- package/dist/compiler/upReceipt.d.ts +2 -17
- package/dist/compiler/upReceipt.js +2 -17
- package/dist/deployment/artifactsExportPlan.js +2 -18
- package/dist/deployment/privateArtifactsExport.js +1 -1
- package/dist/dev/docker.d.ts +0 -5
- package/dist/dev/docker.js +0 -46
- package/dist/dev/index.d.ts +0 -1
- package/dist/dev/index.js +0 -1
- package/dist/dev/project.d.ts +0 -16
- package/dist/dev/project.js +1 -128
- package/dist/distribution/distributionReportSchema.js +1 -1
- package/dist/distribution/imageRuntimeAuth.js +3 -2
- package/dist/manifest/renderSpawnfile.js +2 -1
- package/dist/release/drainControl.d.ts +5 -19
- package/dist/release/drainControl.js +12 -67
- package/dist/report/types.d.ts +3 -6
- package/dist/runtime/common.d.ts +1 -1
- package/dist/runtime/common.js +1 -1
- package/dist/runtime/container.d.ts +2 -2
- package/dist/runtime/container.js +1 -39
- package/dist/runtime/daimon/config.js +8 -14
- package/dist/runtime/daimon/contractManifest.js +0 -1
- package/dist/runtime/daimon/contractManifestSchema.js +0 -1
- package/dist/runtime/daimon/control.d.ts +31 -0
- package/dist/runtime/daimon/control.js +83 -0
- package/dist/runtime/daimon/engineDescriptorSchema.js +0 -1
- package/dist/runtime/daimon/engineDescriptors.generated.d.ts +1 -1
- package/dist/runtime/daimon/engineDescriptors.generated.js +1 -2
- package/dist/runtime/daimon/engines.js +0 -1
- package/dist/runtime/daimon/gateway.d.ts +62 -0
- package/dist/runtime/daimon/gateway.js +77 -0
- package/dist/runtime/daimon/grokWorkerContract.d.ts +0 -5
- package/dist/runtime/daimon/grokWorkerContract.js +1 -13
- package/dist/runtime/daimon/index.d.ts +2 -0
- package/dist/runtime/daimon/index.js +2 -1
- package/dist/runtime/daimon/memory.js +1 -1
- package/dist/runtime/daimon/packageName.js +0 -1
- package/dist/runtime/daimon/runAuth.js +15 -4
- package/dist/runtime/daimon/runtimeIdentity.d.ts +2 -0
- package/dist/runtime/daimon/runtimeIdentity.js +2 -0
- package/dist/runtime/daimon/subscriptionRealms.d.ts +27 -3
- package/dist/runtime/daimon/subscriptionRealms.js +35 -13
- package/dist/runtime/daimon/testHelpers.d.ts +2 -0
- package/dist/runtime/{pi → daimon}/testHelpers.js +3 -3
- package/dist/runtime/daimon/training/booted/adapter.d.ts +50 -0
- package/dist/runtime/daimon/training/booted/adapter.js +60 -0
- package/dist/runtime/daimon/training/booted/adapter.js.map +1 -0
- package/dist/runtime/daimon/training/booted/index.d.ts +4 -0
- package/dist/runtime/daimon/training/booted/index.js +3 -0
- package/dist/runtime/daimon/training/booted/index.js.map +1 -0
- package/dist/runtime/daimon/training/booted/judge.d.ts +39 -0
- package/dist/runtime/daimon/training/booted/judge.js +122 -0
- package/dist/runtime/daimon/training/booted/judge.js.map +1 -0
- package/dist/runtime/daimon/training/index.d.ts +5 -0
- package/dist/runtime/daimon/training/index.js +8 -4
- package/dist/runtime/daimon/training/index.js.map +1 -1
- package/dist/runtime/daimon/wakeMoments.js +0 -1
- package/dist/runtime/install.js +0 -21
- package/dist/runtime/registry.js +0 -2
- package/dist/runtime/trainingGraderProviders.js +10 -4
- package/dist/runtime/trainingProviders.d.ts +5 -3
- package/dist/runtime/trainingProviders.js +21 -24
- package/dist/runtime/trainingSubjects.d.ts +0 -121
- package/dist/runtime/trainingSubjects.js +2 -13
- package/dist/runtime/types.d.ts +1 -8
- package/dist/runtime/usageRequestLedger.d.ts +2 -0
- package/dist/runtime/usageRequestLedger.js +3 -1
- package/dist/shared/errors.js +0 -1
- package/dist/shared/trainingLegacy/trainingLegacyHashDomains.d.ts +1 -0
- package/dist/shared/trainingLegacy/trainingLegacyHashDomains.js +1 -0
- package/dist/shared/trainingLegacy/trainingLegacyHashDomains.js.map +1 -1
- package/dist/status/lifecycleProbes.js +3 -6
- package/dist/status/moltnetWiringProbes.js +1 -17
- package/dist/training/subjects/index.d.ts +0 -1
- package/dist/training/subjects/index.js +0 -1
- package/dist/training/subjects/index.js.map +1 -1
- package/examples/README.md +0 -1
- package/examples/daimon-org/agents/mapper/Spawnfile +4 -1
- package/examples/daimon-org/teams/review/agents/reviewer/Spawnfile +4 -1
- package/examples/jungian-daimon-org/teams/luna/agents/animus/Spawnfile +5 -8
- package/examples/jungian-daimon-org/teams/luna/agents/representative/Spawnfile +1 -1
- package/examples/jungian-daimon-org/teams/luna/agents/shadow/Spawnfile +5 -8
- package/examples/jungian-daimon-org/teams/selene/agents/animus/Spawnfile +5 -8
- package/examples/jungian-daimon-org/teams/selene/agents/representative/Spawnfile +5 -8
- package/examples/jungian-daimon-org/teams/selene/agents/shadow/Spawnfile +1 -1
- package/examples/mixed-runtime-org/agents/localist/Spawnfile +7 -7
- package/package.json +4 -13
- package/runtimes.yaml +5 -15
- package/dist/compiler/containerDaimonGrokTaskClock.d.ts +0 -5
- package/dist/compiler/containerDaimonGrokTaskClock.js +0 -29
- package/dist/compiler/daimonTelemetryArtifacts.d.ts +0 -22
- package/dist/compiler/daimonTelemetryArtifacts.js +0 -56
- package/dist/compiler/training/broker/clockProbe.d.ts +0 -6
- package/dist/compiler/training/broker/clockProbe.js +0 -27
- package/dist/compiler/training/broker/declaration.d.ts +0 -54
- package/dist/compiler/training/broker/declaration.js +0 -70
- package/dist/compiler/training/broker/entrypoint.d.ts +0 -39
- package/dist/compiler/training/broker/entrypoint.js +0 -124
- package/dist/compiler/training/broker/evaluatorSecrets.d.ts +0 -2
- package/dist/compiler/training/broker/evaluatorSecrets.js +0 -62
- package/dist/compiler/training/broker/index.d.ts +0 -12
- package/dist/compiler/training/broker/index.js +0 -12
- package/dist/compiler/training/broker/main.d.ts +0 -2
- package/dist/compiler/training/broker/main.js +0 -14
- package/dist/compiler/training/broker/paths.d.ts +0 -236
- package/dist/compiler/training/broker/paths.js +0 -249
- package/dist/compiler/training/broker/processes.d.ts +0 -51
- package/dist/compiler/training/broker/processes.js +0 -102
- package/dist/compiler/training/broker/projection.d.ts +0 -61
- package/dist/compiler/training/broker/projection.js +0 -109
- package/dist/compiler/training/broker/provisioning.d.ts +0 -78
- package/dist/compiler/training/broker/provisioning.js +0 -231
- package/dist/compiler/training/broker/receipt.d.ts +0 -77
- package/dist/compiler/training/broker/receipt.js +0 -110
- package/dist/compiler/training/broker/recycleClient.d.ts +0 -33
- package/dist/compiler/training/broker/recycleClient.js +0 -112
- package/dist/compiler/training/broker/registration.d.ts +0 -46
- package/dist/compiler/training/broker/registration.js +0 -113
- package/dist/compiler/training/broker/reset.d.ts +0 -9
- package/dist/compiler/training/broker/reset.js +0 -71
- package/dist/compiler/training/broker/rootScript.d.ts +0 -32
- package/dist/compiler/training/broker/rootScript.js +0 -33
- package/dist/compiler/training/broker/runtime.d.ts +0 -22
- package/dist/compiler/training/broker/runtime.js +0 -128
- package/dist/compiler/training/broker/seccompRoutes.d.ts +0 -31
- package/dist/compiler/training/broker/seccompRoutes.js +0 -36
- package/dist/compiler/training/broker/supervisor.d.ts +0 -108
- package/dist/compiler/training/broker/supervisor.js +0 -172
- package/dist/compiler/training/broker/taskClock.d.ts +0 -5
- package/dist/compiler/training/broker/taskClock.js +0 -41
- package/dist/compiler/training/container/contract.d.ts +0 -54
- package/dist/compiler/training/container/contract.js +0 -52
- package/dist/compiler/training/container/evaluators.d.ts +0 -48
- package/dist/compiler/training/container/evaluators.js +0 -50
- package/dist/compiler/training/container/grokWriteback.d.ts +0 -8
- package/dist/compiler/training/container/grokWriteback.js +0 -26
- package/dist/compiler/training/container/index.d.ts +0 -5
- package/dist/compiler/training/container/index.js +0 -3
- package/dist/compiler/training/container/launch.d.ts +0 -21
- package/dist/compiler/training/container/launch.js +0 -280
- package/dist/compiler/training/container/nativeSlots.d.ts +0 -14
- package/dist/compiler/training/container/nativeSlots.js +0 -13
- package/dist/compiler/training/container/outputCopy.d.ts +0 -2
- package/dist/compiler/training/container/outputCopy.js +0 -72
- package/dist/compiler/training/container/outputVolume.d.ts +0 -28
- package/dist/compiler/training/container/outputVolume.js +0 -185
- package/dist/compiler/training/container/prepare.d.ts +0 -10
- package/dist/compiler/training/container/prepare.js +0 -125
- package/dist/compiler/training/container/process.d.ts +0 -14
- package/dist/compiler/training/container/process.js +0 -70
- package/dist/compiler/training/container/security.d.ts +0 -38
- package/dist/compiler/training/container/security.js +0 -68
- package/dist/compiler/training/container/subjectIsolation.d.ts +0 -5
- package/dist/compiler/training/container/subjectIsolation.js +0 -16
- package/dist/compiler/training/preparation/assets/Dockerfile +0 -100
- package/dist/compiler/training/preparation/assets/package-lock.json +0 -5483
- package/dist/compiler/training/preparation/broker.d.ts +0 -30
- package/dist/compiler/training/preparation/broker.js +0 -68
- package/dist/compiler/training/preparation/contextModes.d.ts +0 -12
- package/dist/compiler/training/preparation/contextModes.js +0 -38
- package/dist/compiler/training/preparation/contract.d.ts +0 -203
- package/dist/compiler/training/preparation/contract.js +0 -114
- package/dist/compiler/training/preparation/copyAssets.d.ts +0 -1
- package/dist/compiler/training/preparation/copyAssets.js +0 -8
- package/dist/compiler/training/preparation/daimonParent.d.ts +0 -42
- package/dist/compiler/training/preparation/daimonParent.js +0 -114
- package/dist/compiler/training/preparation/files.d.ts +0 -29
- package/dist/compiler/training/preparation/files.js +0 -146
- package/dist/compiler/training/preparation/image.d.ts +0 -28
- package/dist/compiler/training/preparation/image.js +0 -105
- package/dist/compiler/training/preparation/index.d.ts +0 -3
- package/dist/compiler/training/preparation/index.js +0 -2
- package/dist/compiler/training/preparation/inputs.d.ts +0 -24
- package/dist/compiler/training/preparation/inputs.js +0 -101
- package/dist/compiler/training/preparation/prepare.d.ts +0 -38
- package/dist/compiler/training/preparation/prepare.js +0 -224
- package/dist/compiler/training/preparation/scratch.d.ts +0 -8
- package/dist/compiler/training/preparation/scratch.js +0 -114
- package/dist/compiler/training/repair/compatibility.d.ts +0 -11
- package/dist/compiler/training/repair/compatibility.js +0 -45
- package/dist/compiler/training/repair/contract.d.ts +0 -832
- package/dist/compiler/training/repair/contract.js +0 -34
- package/dist/compiler/training/repair/index.d.ts +0 -3
- package/dist/compiler/training/repair/index.js +0 -3
- package/dist/compiler/training/repair/prepare.d.ts +0 -378
- package/dist/compiler/training/repair/prepare.js +0 -84
- package/dist/compiler/training/repair/witness.d.ts +0 -348
- package/dist/compiler/training/repair/witness.js +0 -62
- package/dist/compiler/training/subjectDeclaration.d.ts +0 -26
- package/dist/compiler/training/subjectDeclaration.js +0 -54
- package/dist/compiler/training/subjectLease.d.ts +0 -115
- package/dist/compiler/training/subjectLease.js +0 -179
- package/dist/dev/activity.d.ts +0 -14
- package/dist/dev/activity.js +0 -48
- package/dist/runtime/codex-exec/training/adapter.d.ts +0 -13
- package/dist/runtime/codex-exec/training/adapter.js +0 -101
- package/dist/runtime/codex-exec/training/adapter.js.map +0 -1
- package/dist/runtime/codex-exec/training/environment.d.ts +0 -3
- package/dist/runtime/codex-exec/training/environment.js +0 -26
- package/dist/runtime/codex-exec/training/environment.js.map +0 -1
- package/dist/runtime/codex-exec/training/index.d.ts +0 -2
- package/dist/runtime/codex-exec/training/index.js +0 -3
- package/dist/runtime/codex-exec/training/index.js.map +0 -1
- package/dist/runtime/codex-exec/training/protocol.d.ts +0 -15
- package/dist/runtime/codex-exec/training/protocol.js +0 -102
- package/dist/runtime/codex-exec/training/protocol.js.map +0 -1
- package/dist/runtime/codex-exec/training/providers/codex-subscription/index.d.ts +0 -1
- package/dist/runtime/codex-exec/training/providers/codex-subscription/index.js +0 -2
- package/dist/runtime/codex-exec/training/providers/codex-subscription/index.js.map +0 -1
- package/dist/runtime/codex-exec/training/providers/codex-subscription/protocol.d.ts +0 -17
- package/dist/runtime/codex-exec/training/providers/codex-subscription/protocol.js +0 -80
- package/dist/runtime/codex-exec/training/providers/codex-subscription/protocol.js.map +0 -1
- package/dist/runtime/codex-exec/training/providers/codex-subscription/provider.d.ts +0 -12
- package/dist/runtime/codex-exec/training/providers/codex-subscription/provider.js +0 -125
- package/dist/runtime/codex-exec/training/providers/codex-subscription/provider.js.map +0 -1
- package/dist/runtime/codex-exec/training/providers/codex-subscription/strict-schema.d.ts +0 -6
- package/dist/runtime/codex-exec/training/providers/codex-subscription/strict-schema.js +0 -219
- package/dist/runtime/codex-exec/training/providers/codex-subscription/strict-schema.js.map +0 -1
- package/dist/runtime/daimon/contractManifest.js.map +0 -1
- package/dist/runtime/daimon/contractManifestSchema.js.map +0 -1
- package/dist/runtime/daimon/engineDescriptorSchema.js.map +0 -1
- package/dist/runtime/daimon/engineDescriptors.generated.js.map +0 -1
- package/dist/runtime/daimon/engines.js.map +0 -1
- package/dist/runtime/daimon/index.js.map +0 -1
- package/dist/runtime/daimon/packageName.js.map +0 -1
- package/dist/runtime/daimon/training/legacy/adapter.d.ts +0 -11
- package/dist/runtime/daimon/training/legacy/adapter.js +0 -175
- package/dist/runtime/daimon/training/legacy/adapter.js.map +0 -1
- package/dist/runtime/daimon/training/legacy/index.d.ts +0 -2
- package/dist/runtime/daimon/training/legacy/index.js +0 -3
- package/dist/runtime/daimon/training/legacy/index.js.map +0 -1
- package/dist/runtime/daimon/training/legacy/public.d.ts +0 -49
- package/dist/runtime/daimon/training/legacy/public.js +0 -16
- package/dist/runtime/daimon/training/legacy/public.js.map +0 -1
- package/dist/runtime/daimon/training/native/adapter.d.ts +0 -18
- package/dist/runtime/daimon/training/native/adapter.js +0 -252
- package/dist/runtime/daimon/training/native/adapter.js.map +0 -1
- package/dist/runtime/daimon/training/native/admission.d.ts +0 -7
- package/dist/runtime/daimon/training/native/admission.js +0 -52
- package/dist/runtime/daimon/training/native/admission.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/arguments.d.ts +0 -16
- package/dist/runtime/daimon/training/native/child/arguments.js +0 -70
- package/dist/runtime/daimon/training/native/child/arguments.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/deferred-trial.d.ts +0 -24
- package/dist/runtime/daimon/training/native/child/deferred-trial.js +0 -63
- package/dist/runtime/daimon/training/native/child/deferred-trial.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/diagnostics.d.ts +0 -58
- package/dist/runtime/daimon/training/native/child/diagnostics.js +0 -215
- package/dist/runtime/daimon/training/native/child/diagnostics.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/fixture.d.ts +0 -16
- package/dist/runtime/daimon/training/native/child/fixture.js +0 -159
- package/dist/runtime/daimon/training/native/child/fixture.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/grok.d.ts +0 -14
- package/dist/runtime/daimon/training/native/child/grok.js +0 -47
- package/dist/runtime/daimon/training/native/child/grok.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/index.d.ts +0 -7
- package/dist/runtime/daimon/training/native/child/index.js +0 -5
- package/dist/runtime/daimon/training/native/child/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/lifecycle.d.ts +0 -40
- package/dist/runtime/daimon/training/native/child/lifecycle.js +0 -400
- package/dist/runtime/daimon/training/native/child/lifecycle.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/probe.d.ts +0 -2
- package/dist/runtime/daimon/training/native/child/probe.js +0 -11
- package/dist/runtime/daimon/training/native/child/probe.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/sandbox.d.ts +0 -4
- package/dist/runtime/daimon/training/native/child/sandbox.js +0 -76
- package/dist/runtime/daimon/training/native/child/sandbox.js.map +0 -1
- package/dist/runtime/daimon/training/native/child/types.d.ts +0 -15
- package/dist/runtime/daimon/training/native/child/types.js +0 -2
- package/dist/runtime/daimon/training/native/child/types.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/docker.d.ts +0 -29
- package/dist/runtime/daimon/training/native/container/docker.js +0 -105
- package/dist/runtime/daimon/training/native/container/docker.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/grok-slot.d.ts +0 -22
- package/dist/runtime/daimon/training/native/container/grok-slot.js +0 -38
- package/dist/runtime/daimon/training/native/container/grok-slot.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/index.d.ts +0 -6
- package/dist/runtime/daimon/training/native/container/index.js +0 -6
- package/dist/runtime/daimon/training/native/container/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/lifecycle.d.ts +0 -8
- package/dist/runtime/daimon/training/native/container/lifecycle.js +0 -111
- package/dist/runtime/daimon/training/native/container/lifecycle.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/manifest.d.ts +0 -17
- package/dist/runtime/daimon/training/native/container/manifest.js +0 -164
- package/dist/runtime/daimon/training/native/container/manifest.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/native-preflight.d.ts +0 -8
- package/dist/runtime/daimon/training/native/container/native-preflight.js +0 -40
- package/dist/runtime/daimon/training/native/container/native-preflight.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/preflight.d.ts +0 -15
- package/dist/runtime/daimon/training/native/container/preflight.js +0 -79
- package/dist/runtime/daimon/training/native/container/preflight.js.map +0 -1
- package/dist/runtime/daimon/training/native/container/slot.d.ts +0 -4
- package/dist/runtime/daimon/training/native/container/slot.js +0 -58
- package/dist/runtime/daimon/training/native/container/slot.js.map +0 -1
- package/dist/runtime/daimon/training/native/external.d.ts +0 -37
- package/dist/runtime/daimon/training/native/external.js +0 -75
- package/dist/runtime/daimon/training/native/external.js.map +0 -1
- package/dist/runtime/daimon/training/native/grants/authority.d.ts +0 -36
- package/dist/runtime/daimon/training/native/grants/authority.js +0 -49
- package/dist/runtime/daimon/training/native/grants/authority.js.map +0 -1
- package/dist/runtime/daimon/training/native/grants/index.d.ts +0 -2
- package/dist/runtime/daimon/training/native/grants/index.js +0 -3
- package/dist/runtime/daimon/training/native/grants/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/grants/pins.d.ts +0 -30
- package/dist/runtime/daimon/training/native/grants/pins.js +0 -20
- package/dist/runtime/daimon/training/native/grants/pins.js.map +0 -1
- package/dist/runtime/daimon/training/native/grants/test-socket.d.ts +0 -6
- package/dist/runtime/daimon/training/native/grants/test-socket.js +0 -35
- package/dist/runtime/daimon/training/native/grants/test-socket.js.map +0 -1
- package/dist/runtime/daimon/training/native/grok-fixtures.d.ts +0 -34
- package/dist/runtime/daimon/training/native/grok-fixtures.js +0 -179
- package/dist/runtime/daimon/training/native/grok-fixtures.js.map +0 -1
- package/dist/runtime/daimon/training/native/index.d.ts +0 -38
- package/dist/runtime/daimon/training/native/index.js +0 -27
- package/dist/runtime/daimon/training/native/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/live-checkout.d.ts +0 -2
- package/dist/runtime/daimon/training/native/live-checkout.js +0 -15
- package/dist/runtime/daimon/training/native/live-checkout.js.map +0 -1
- package/dist/runtime/daimon/training/native/observations.d.ts +0 -51
- package/dist/runtime/daimon/training/native/observations.js +0 -217
- package/dist/runtime/daimon/training/native/observations.js.map +0 -1
- package/dist/runtime/daimon/training/native/outcome.d.ts +0 -13
- package/dist/runtime/daimon/training/native/outcome.js +0 -37
- package/dist/runtime/daimon/training/native/outcome.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/engine-config.d.ts +0 -21
- package/dist/runtime/daimon/training/native/preparation/engine-config.js +0 -30
- package/dist/runtime/daimon/training/native/preparation/engine-config.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/fixtures.d.ts +0 -17
- package/dist/runtime/daimon/training/native/preparation/fixtures.js +0 -52
- package/dist/runtime/daimon/training/native/preparation/fixtures.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/index.d.ts +0 -7
- package/dist/runtime/daimon/training/native/preparation/index.js +0 -5
- package/dist/runtime/daimon/training/native/preparation/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/layout.d.ts +0 -66
- package/dist/runtime/daimon/training/native/preparation/layout.js +0 -87
- package/dist/runtime/daimon/training/native/preparation/layout.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/subject.d.ts +0 -14
- package/dist/runtime/daimon/training/native/preparation/subject.js +0 -67
- package/dist/runtime/daimon/training/native/preparation/subject.js.map +0 -1
- package/dist/runtime/daimon/training/native/preparation/types.d.ts +0 -69
- package/dist/runtime/daimon/training/native/preparation/types.js +0 -2
- package/dist/runtime/daimon/training/native/preparation/types.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/artifacts.d.ts +0 -25
- package/dist/runtime/daimon/training/native/receipt/artifacts.js +0 -32
- package/dist/runtime/daimon/training/native/receipt/artifacts.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/grok-clocked-pins.d.ts +0 -129
- package/dist/runtime/daimon/training/native/receipt/grok-clocked-pins.js +0 -45
- package/dist/runtime/daimon/training/native/receipt/grok-clocked-pins.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/grok.d.ts +0 -246
- package/dist/runtime/daimon/training/native/receipt/grok.js +0 -195
- package/dist/runtime/daimon/training/native/receipt/grok.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/index.d.ts +0 -11
- package/dist/runtime/daimon/training/native/receipt/index.js +0 -8
- package/dist/runtime/daimon/training/native/receipt/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/paths.d.ts +0 -3
- package/dist/runtime/daimon/training/native/receipt/paths.js +0 -18
- package/dist/runtime/daimon/training/native/receipt/paths.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/sandbox.d.ts +0 -42
- package/dist/runtime/daimon/training/native/receipt/sandbox.js +0 -35
- package/dist/runtime/daimon/training/native/receipt/sandbox.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/schema.d.ts +0 -490
- package/dist/runtime/daimon/training/native/receipt/schema.js +0 -138
- package/dist/runtime/daimon/training/native/receipt/schema.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/subscription.d.ts +0 -13
- package/dist/runtime/daimon/training/native/receipt/subscription.js +0 -13
- package/dist/runtime/daimon/training/native/receipt/subscription.js.map +0 -1
- package/dist/runtime/daimon/training/native/receipt/task-clock.d.ts +0 -19
- package/dist/runtime/daimon/training/native/receipt/task-clock.js +0 -49
- package/dist/runtime/daimon/training/native/receipt/task-clock.js.map +0 -1
- package/dist/runtime/daimon/training/native/sealed-usage.d.ts +0 -218
- package/dist/runtime/daimon/training/native/sealed-usage.js +0 -261
- package/dist/runtime/daimon/training/native/sealed-usage.js.map +0 -1
- package/dist/runtime/daimon/training/native/test-fixtures.d.ts +0 -27
- package/dist/runtime/daimon/training/native/test-fixtures.js +0 -162
- package/dist/runtime/daimon/training/native/test-fixtures.js.map +0 -1
- package/dist/runtime/daimon/training/native/transcript.d.ts +0 -96
- package/dist/runtime/daimon/training/native/transcript.js +0 -239
- package/dist/runtime/daimon/training/native/transcript.js.map +0 -1
- package/dist/runtime/daimon/training/native/transport/delivery.d.ts +0 -27
- package/dist/runtime/daimon/training/native/transport/delivery.js +0 -98
- package/dist/runtime/daimon/training/native/transport/delivery.js.map +0 -1
- package/dist/runtime/daimon/training/native/transport/http.d.ts +0 -3
- package/dist/runtime/daimon/training/native/transport/http.js +0 -81
- package/dist/runtime/daimon/training/native/transport/http.js.map +0 -1
- package/dist/runtime/daimon/training/native/transport/index.d.ts +0 -4
- package/dist/runtime/daimon/training/native/transport/index.js +0 -3
- package/dist/runtime/daimon/training/native/transport/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/transport/types.d.ts +0 -15
- package/dist/runtime/daimon/training/native/transport/types.js +0 -2
- package/dist/runtime/daimon/training/native/transport/types.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/cli.d.ts +0 -1
- package/dist/runtime/daimon/training/native/worker/cli.js +0 -17
- package/dist/runtime/daimon/training/native/worker/cli.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/control.d.ts +0 -20
- package/dist/runtime/daimon/training/native/worker/control.js +0 -266
- package/dist/runtime/daimon/training/native/worker/control.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/deliveries.d.ts +0 -38
- package/dist/runtime/daimon/training/native/worker/deliveries.js +0 -91
- package/dist/runtime/daimon/training/native/worker/deliveries.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/evidence/collect.d.ts +0 -54
- package/dist/runtime/daimon/training/native/worker/evidence/collect.js +0 -278
- package/dist/runtime/daimon/training/native/worker/evidence/collect.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/evidence/execution.d.ts +0 -102
- package/dist/runtime/daimon/training/native/worker/evidence/execution.js +0 -191
- package/dist/runtime/daimon/training/native/worker/evidence/execution.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/evidence/index.d.ts +0 -3
- package/dist/runtime/daimon/training/native/worker/evidence/index.js +0 -4
- package/dist/runtime/daimon/training/native/worker/evidence/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/evidence/io.d.ts +0 -20
- package/dist/runtime/daimon/training/native/worker/evidence/io.js +0 -130
- package/dist/runtime/daimon/training/native/worker/evidence/io.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/evidence/seal.d.ts +0 -3
- package/dist/runtime/daimon/training/native/worker/evidence/seal.js +0 -67
- package/dist/runtime/daimon/training/native/worker/evidence/seal.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/index.d.ts +0 -11
- package/dist/runtime/daimon/training/native/worker/index.js +0 -8
- package/dist/runtime/daimon/training/native/worker/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/profile.d.ts +0 -23
- package/dist/runtime/daimon/training/native/worker/profile.js +0 -149
- package/dist/runtime/daimon/training/native/worker/profile.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/public.d.ts +0 -53
- package/dist/runtime/daimon/training/native/worker/public.js +0 -22
- package/dist/runtime/daimon/training/native/worker/public.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/sandbox.d.ts +0 -4
- package/dist/runtime/daimon/training/native/worker/sandbox.js +0 -54
- package/dist/runtime/daimon/training/native/worker/sandbox.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/server.d.ts +0 -4
- package/dist/runtime/daimon/training/native/worker/server.js +0 -102
- package/dist/runtime/daimon/training/native/worker/server.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/types.d.ts +0 -318
- package/dist/runtime/daimon/training/native/worker/types.js +0 -2
- package/dist/runtime/daimon/training/native/worker/types.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/wake-delivery/index.d.ts +0 -4
- package/dist/runtime/daimon/training/native/worker/wake-delivery/index.js +0 -4
- package/dist/runtime/daimon/training/native/worker/wake-delivery/index.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/wake-delivery/source.d.ts +0 -3
- package/dist/runtime/daimon/training/native/worker/wake-delivery/source.js +0 -16
- package/dist/runtime/daimon/training/native/worker/wake-delivery/source.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/wake-delivery/terminal.d.ts +0 -4
- package/dist/runtime/daimon/training/native/worker/wake-delivery/terminal.js +0 -52
- package/dist/runtime/daimon/training/native/worker/wake-delivery/terminal.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/wake-delivery/transport.d.ts +0 -21
- package/dist/runtime/daimon/training/native/worker/wake-delivery/transport.js +0 -198
- package/dist/runtime/daimon/training/native/worker/wake-delivery/transport.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/wake-delivery/types.d.ts +0 -91
- package/dist/runtime/daimon/training/native/worker/wake-delivery/types.js +0 -2
- package/dist/runtime/daimon/training/native/worker/wake-delivery/types.js.map +0 -1
- package/dist/runtime/daimon/training/native/worker/worker.d.ts +0 -1
- package/dist/runtime/daimon/training/native/worker/worker.js +0 -105
- package/dist/runtime/daimon/training/native/worker/worker.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/broker.d.ts +0 -20
- package/dist/runtime/daimon/training/providers/grok-broker/broker.js +0 -55
- package/dist/runtime/daimon/training/providers/grok-broker/broker.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/grant-fixtures.d.ts +0 -15
- package/dist/runtime/daimon/training/providers/grok-broker/grant-fixtures.js +0 -29
- package/dist/runtime/daimon/training/providers/grok-broker/grant-fixtures.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/grant-home.d.ts +0 -16
- package/dist/runtime/daimon/training/providers/grok-broker/grant-home.js +0 -60
- package/dist/runtime/daimon/training/providers/grok-broker/grant-home.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/grant-pool.d.ts +0 -81
- package/dist/runtime/daimon/training/providers/grok-broker/grant-pool.js +0 -221
- package/dist/runtime/daimon/training/providers/grok-broker/grant-pool.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/grant-releases.d.ts +0 -31
- package/dist/runtime/daimon/training/providers/grok-broker/grant-releases.js +0 -78
- package/dist/runtime/daimon/training/providers/grok-broker/grant-releases.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/grants.d.ts +0 -63
- package/dist/runtime/daimon/training/providers/grok-broker/grants.js +0 -20
- package/dist/runtime/daimon/training/providers/grok-broker/grants.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-broker/index.d.ts +0 -3
- package/dist/runtime/daimon/training/providers/grok-broker/index.js +0 -4
- package/dist/runtime/daimon/training/providers/grok-broker/index.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-subscription/cli.d.ts +0 -21
- package/dist/runtime/daimon/training/providers/grok-subscription/cli.js +0 -81
- package/dist/runtime/daimon/training/providers/grok-subscription/cli.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-subscription/index.d.ts +0 -4
- package/dist/runtime/daimon/training/providers/grok-subscription/index.js +0 -5
- package/dist/runtime/daimon/training/providers/grok-subscription/index.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-subscription/protocol.d.ts +0 -26
- package/dist/runtime/daimon/training/providers/grok-subscription/protocol.js +0 -102
- package/dist/runtime/daimon/training/providers/grok-subscription/protocol.js.map +0 -1
- package/dist/runtime/daimon/training/providers/grok-subscription/provider.d.ts +0 -9
- package/dist/runtime/daimon/training/providers/grok-subscription/provider.js +0 -38
- package/dist/runtime/daimon/training/providers/grok-subscription/provider.js.map +0 -1
- package/dist/runtime/daimon/training/public.d.ts +0 -6
- package/dist/runtime/daimon/training/public.js +0 -5
- package/dist/runtime/daimon/training/public.js.map +0 -1
- package/dist/runtime/daimon/training/services/account-lease.d.ts +0 -7
- package/dist/runtime/daimon/training/services/account-lease.js +0 -76
- package/dist/runtime/daimon/training/services/account-lease.js.map +0 -1
- package/dist/runtime/daimon/training/services/freshness.d.ts +0 -15
- package/dist/runtime/daimon/training/services/freshness.js +0 -19
- package/dist/runtime/daimon/training/services/freshness.js.map +0 -1
- package/dist/runtime/daimon/training/services/index.d.ts +0 -4
- package/dist/runtime/daimon/training/services/index.js +0 -4
- package/dist/runtime/daimon/training/services/index.js.map +0 -1
- package/dist/runtime/daimon/training/services/slot-freshness.d.ts +0 -34
- package/dist/runtime/daimon/training/services/slot-freshness.js +0 -178
- package/dist/runtime/daimon/training/services/slot-freshness.js.map +0 -1
- package/dist/runtime/daimon/wakeMoments.js.map +0 -1
- package/dist/runtime/pi/adapter.d.ts +0 -3
- package/dist/runtime/pi/adapter.js +0 -230
- package/dist/runtime/pi/appActivitySource.d.ts +0 -1
- package/dist/runtime/pi/appActivitySource.js +0 -199
- package/dist/runtime/pi/appAgentConfig.d.ts +0 -11
- package/dist/runtime/pi/appAgentConfig.js +0 -264
- package/dist/runtime/pi/appCliEnginesSource.d.ts +0 -1
- package/dist/runtime/pi/appCliEnginesSource.js +0 -183
- package/dist/runtime/pi/appCliSource.d.ts +0 -1
- package/dist/runtime/pi/appCliSource.js +0 -353
- package/dist/runtime/pi/appControlSource.d.ts +0 -1
- package/dist/runtime/pi/appControlSource.js +0 -390
- package/dist/runtime/pi/appControlWakeIdentitySource.d.ts +0 -1
- package/dist/runtime/pi/appControlWakeIdentitySource.js +0 -19
- package/dist/runtime/pi/appCoreSource.d.ts +0 -4
- package/dist/runtime/pi/appCoreSource.js +0 -244
- package/dist/runtime/pi/appPreludeSource.d.ts +0 -1
- package/dist/runtime/pi/appPreludeSource.js +0 -192
- package/dist/runtime/pi/appScheduleSource.d.ts +0 -1
- package/dist/runtime/pi/appScheduleSource.js +0 -84
- package/dist/runtime/pi/appScriptedEngine.d.ts +0 -31
- package/dist/runtime/pi/appScriptedEngine.js +0 -42
- package/dist/runtime/pi/appSource.d.ts +0 -4
- package/dist/runtime/pi/appSource.js +0 -12
- package/dist/runtime/pi/appTemplate.d.ts +0 -14
- package/dist/runtime/pi/appTemplate.js +0 -28
- package/dist/runtime/pi/appTemplateTypes.d.ts +0 -64
- package/dist/runtime/pi/appTemplateTypes.js +0 -18
- package/dist/runtime/pi/appWakeContextSource.d.ts +0 -1
- package/dist/runtime/pi/appWakeContextSource.js +0 -398
- package/dist/runtime/pi/containerTargets.d.ts +0 -4
- package/dist/runtime/pi/containerTargets.js +0 -63
- package/dist/runtime/pi/runAuth.d.ts +0 -2
- package/dist/runtime/pi/runAuth.js +0 -185
- package/dist/runtime/pi/testHelpers.d.ts +0 -2
- package/dist/shared/errors.js.map +0 -1
- package/dist/training/subjects/environment.d.ts +0 -2
- package/dist/training/subjects/environment.js +0 -14
- package/dist/training/subjects/environment.js.map +0 -1
|
@@ -1,138 +0,0 @@
|
|
|
1
|
-
import { DAIMON_BROKER_ENGINE_ID, DAIMON_PORTABLE_ENGINE_ID, DAIMON_GROK_BROKER_MODELS, DAIMON_GROK_BROKER_REASONING_EFFORTS, daimonTrainingDeclaration } from '../../../index.js';
|
|
2
|
-
import { compatibleWireLiteral } from '../../../../../training/index.js';
|
|
3
|
-
import { isAbsolute, posix } from 'node:path';
|
|
4
|
-
import { z } from 'zod';
|
|
5
|
-
import { nativeTaskClockSchema } from './task-clock.js';
|
|
6
|
-
const absolute = z.string().min(1).refine(value => isAbsolute(value) && !value.includes(','), 'Expected absolute bind-safe path');
|
|
7
|
-
const nativePath = absolute.refine(value => posix.isAbsolute(value) && posix.normalize(value) === value, 'Expected canonical Linux path');
|
|
8
|
-
const digest = z.string().regex(/^[a-f0-9]{64}$/u);
|
|
9
|
-
const identity = z.string().min(1).max(128).regex(/^[A-Za-z0-9][A-Za-z0-9._:-]*$/u);
|
|
10
|
-
const relative = z.string().min(1).refine(value => !posix.isAbsolute(value) && posix.normalize(value) === value &&
|
|
11
|
-
value !== '..' && !value.startsWith('..') && !value.includes('\\'), 'Expected contained relative path');
|
|
12
|
-
const reason = z.string().trim().min(1).max(2048);
|
|
13
|
-
const positive = z.number().int().positive().max(Number.MAX_SAFE_INTEGER);
|
|
14
|
-
/** Engines a launch receipt can select. v1 receipts are always Codex. */
|
|
15
|
-
export const nativeEngines = z.enum(daimonTrainingDeclaration.engines);
|
|
16
|
-
/** Daimon's closed Grok broker lists; the launch records the declaration, never a default. */
|
|
17
|
-
export const grokModels = DAIMON_GROK_BROKER_MODELS;
|
|
18
|
-
export const grokReasoningEfforts = DAIMON_GROK_BROKER_REASONING_EFFORTS;
|
|
19
|
-
/** Evaluator roots every Grok slot must deny to its worker uid (R4). */
|
|
20
|
-
export const grokEvaluatorRoles = ['run-root', 'context', 'sealed-inputs', 'judge-home', 'slot-ledger'];
|
|
21
|
-
const common = {
|
|
22
|
-
delivery: z.enum(['direct', 'transport']).optional(),
|
|
23
|
-
taskClock: nativeTaskClockSchema.optional(),
|
|
24
|
-
image: z.string().regex(/^(?:sha256:[a-f0-9]{64}|[^\s]+@sha256:[a-f0-9]{64})$/u),
|
|
25
|
-
config: absolute,
|
|
26
|
-
configSha256: digest,
|
|
27
|
-
sourceConfigSha256: digest,
|
|
28
|
-
tokenFile: absolute,
|
|
29
|
-
controlRoot: absolute,
|
|
30
|
-
workerRoot: absolute,
|
|
31
|
-
envFile: absolute,
|
|
32
|
-
host: z.strictObject({ bindHost: z.literal('127.0.0.1'), port: z.number().int().min(1024).max(65535) }),
|
|
33
|
-
instructions: z.strictObject({ relativePath: relative, sha256: digest,
|
|
34
|
-
rendering: z.strictObject({ kind: z.literal('trim-surround'), prefix: z.string().max(262144), suffix: z.string().max(262144), nativeSha256: digest }) }),
|
|
35
|
-
workspace: z.strictObject({ source: absolute, target: nativePath }),
|
|
36
|
-
projections: z.array(z.strictObject({ role: z.enum(['home', 'memory', 'transport', 'state', 'subscription']), source: absolute, target: nativePath })).min(1).max(24),
|
|
37
|
-
bootstrap: z.strictObject({ root: absolute, entrypoint: relative }).optional(),
|
|
38
|
-
limits: z.strictObject({ maxTokens: z.number().int().positive(), wakeTokenCeiling: z.number().int().positive() }),
|
|
39
|
-
overrides: z.strictObject({
|
|
40
|
-
schedule: z.strictObject({ before: z.record(z.string(), z.unknown()), after: z.strictObject({ kind: z.literal('disabled') }), reason }),
|
|
41
|
-
selection: z.strictObject({ before: z.array(identity).min(1).max(64), after: z.array(identity).length(1), reason }),
|
|
42
|
-
}),
|
|
43
|
-
};
|
|
44
|
-
const credential = z.strictObject({ source: absolute, target: nativePath });
|
|
45
|
-
const codexAgent = z.strictObject({ id: identity, engine: z.literal(DAIMON_PORTABLE_ENGINE_ID), model: z.string().trim().min(1).max(256) });
|
|
46
|
-
const grokAgent = z.strictObject({ id: identity, engine: z.literal(DAIMON_BROKER_ENGINE_ID), model: z.enum(grokModels), reasoningEffort: z.enum(grokReasoningEfforts) });
|
|
47
|
-
/**
|
|
48
|
-
* The inputs Daimon's `resolveOrganizationGrokBrokerProjection` needs, plus the
|
|
49
|
-
* digest the slot supervisor bound and the supervisor's receipt location.
|
|
50
|
-
*
|
|
51
|
-
* `denyPaths` and `profileSha256` are the provisioner's own values, carried
|
|
52
|
-
* verbatim: the projection digest binds the sandbox profile bytes the root
|
|
53
|
-
* supervisor actually wrote, so a party that recomputed the deny list from
|
|
54
|
-
* anything else (for instance from `evaluatorPaths`, which is a subset used for
|
|
55
|
-
* the canary requirement) would fork the digest and fail closed here. Every
|
|
56
|
-
* party that recomputes this projection passes these same values.
|
|
57
|
-
*/
|
|
58
|
-
export const grokBrokerLaunchSchema = z.strictObject({
|
|
59
|
-
projectionVersion: z.literal('noopolis.daimon.grok-broker-projection.v3'),
|
|
60
|
-
workerConfigVariant: z.enum(['unclocked', 'clocked']),
|
|
61
|
-
projectionSha256: digest,
|
|
62
|
-
slot: z.number().int().min(0).max(Number.MAX_SAFE_INTEGER),
|
|
63
|
-
workerUid: z.number().int().min(2200).max(4_294_967_294),
|
|
64
|
-
workerHomePath: nativePath,
|
|
65
|
-
architecture: z.enum(['arm64', 'x64']),
|
|
66
|
-
usageLedgerPath: nativePath,
|
|
67
|
-
seccompProfileSha256: digest,
|
|
68
|
-
profileSha256: digest,
|
|
69
|
-
denyPaths: z.array(nativePath).min(1).max(64),
|
|
70
|
-
limits: z.strictObject({ maxRequests: positive, maxTokens: positive, timeoutMs: positive }),
|
|
71
|
-
evaluatorPaths: z.array(z.strictObject({ role: z.enum(grokEvaluatorRoles), path: nativePath })).min(grokEvaluatorRoles.length).max(64),
|
|
72
|
-
/** Root slot supervisor output (`noopolis.daimon.grok-slot-preflight.v2`), written after provisioning or recycle. */
|
|
73
|
-
slotPreflightReceipt: nativePath,
|
|
74
|
-
/** The 32-byte hex nonce Training sent with this trial's recycle request; the receipt must echo it. */
|
|
75
|
-
expectedNonce: digest,
|
|
76
|
-
/** One above the last generation Training accepted for this slot (1 for an unseen slot). */
|
|
77
|
-
minGeneration: z.number().int().min(1).max(Number.MAX_SAFE_INTEGER),
|
|
78
|
-
});
|
|
79
|
-
const launchV1 = z.strictObject({ schema: compatibleWireLiteral('spawnfile.training.daimon-native.launch.v1'), ...common, agent: codexAgent, credentials: z.array(credential).max(1) });
|
|
80
|
-
const codexLaunchV2 = z.strictObject({ schema: compatibleWireLiteral('spawnfile.training.daimon-native.launch.v2'), ...common, agent: codexAgent, credentials: z.array(credential).max(1) });
|
|
81
|
-
const grokLaunchV2 = z.strictObject({ schema: compatibleWireLiteral('spawnfile.training.daimon-native.launch.v2'), ...common, agent: grokAgent,
|
|
82
|
-
credentials: z.array(credential).max(0), broker: grokBrokerLaunchSchema });
|
|
83
|
-
export const nativeLaunchSchema = z.union([launchV1, codexLaunchV2, grokLaunchV2]);
|
|
84
|
-
export const containerPaths = { config: '/run/spawnfile-training/config.json', control: '/run/spawnfile-training/control',
|
|
85
|
-
token: '/run/spawnfile-training/token', receipt: '/run/spawnfile-training/launch.json', worker: '/opt/training/native',
|
|
86
|
-
bootstrap: '/opt/training/bootstrap' };
|
|
87
|
-
export function isGrokLaunch(launch) {
|
|
88
|
-
return launch.agent.engine === DAIMON_BROKER_ENGINE_ID;
|
|
89
|
-
}
|
|
90
|
-
const nested = (parent, child) => child === parent || child.startsWith(parent === '/' ? '/' : `${parent}/`);
|
|
91
|
-
export function parseNativeLaunch(value) {
|
|
92
|
-
const launch = nativeLaunchSchema.parse(value);
|
|
93
|
-
if (launch.overrides.selection.after[0] !== launch.agent.id || !launch.overrides.selection.before.includes(launch.agent.id)) {
|
|
94
|
-
throw new Error('Native selection override must retain exactly the selected declared agent');
|
|
95
|
-
}
|
|
96
|
-
if (launch.projections.filter(row => row.role === 'home').length !== 1)
|
|
97
|
-
throw new Error('Exactly one fresh native home projection is required');
|
|
98
|
-
if (launch.limits.wakeTokenCeiling > launch.limits.maxTokens)
|
|
99
|
-
throw new Error('Native wake token ceiling exceeds its admitted token budget');
|
|
100
|
-
if (isGrokLaunch(launch))
|
|
101
|
-
assertGrokBroker(launch);
|
|
102
|
-
return launch;
|
|
103
|
-
}
|
|
104
|
-
function assertGrokBroker(launch) {
|
|
105
|
-
const { broker } = launch;
|
|
106
|
-
if (launch.taskClock && broker.workerConfigVariant !== 'clocked')
|
|
107
|
-
throw new Error('Grok taskClock requires workerConfigVariant: clocked');
|
|
108
|
-
// A Grok slot has exactly two writable subject roots, and the projection digest binds both:
|
|
109
|
-
// `workspacePath` and `runtimeHomePath`. Any further projection would be a writable root no
|
|
110
|
-
// digest covers, so the union is closed here rather than filtered later.
|
|
111
|
-
if (launch.projections.length !== 1)
|
|
112
|
-
throw new Error('A Grok launch projects exactly the slot workspace and its runtime home');
|
|
113
|
-
const paths = broker.evaluatorPaths.map(row => row.path);
|
|
114
|
-
if (new Set(paths).size !== paths.length)
|
|
115
|
-
throw new Error('Grok evaluator paths must be unique');
|
|
116
|
-
if (new Set(broker.denyPaths).size !== broker.denyPaths.length)
|
|
117
|
-
throw new Error('Grok deny paths must be unique');
|
|
118
|
-
// The deny list is the provisioner's verbatim set the digest binds; the evaluator roots are the
|
|
119
|
-
// subset the slot receipt must show as denied canaries. A root outside the deny list would be
|
|
120
|
-
// certified as denied while the sandbox never masked it.
|
|
121
|
-
const denied = new Set(broker.denyPaths);
|
|
122
|
-
const uncovered = paths.filter(path => !denied.has(path));
|
|
123
|
-
if (uncovered.length)
|
|
124
|
-
throw new Error(`Grok evaluator roots missing from the deny list: ${uncovered.join(', ')}`);
|
|
125
|
-
const missing = grokEvaluatorRoles.filter(role => !broker.evaluatorPaths.some(row => row.role === role));
|
|
126
|
-
if (missing.length)
|
|
127
|
-
throw new Error(`Grok launch omits required evaluator roots: ${missing.join(', ')}`);
|
|
128
|
-
if (broker.evaluatorPaths.some(row => row.role === 'slot-ledger' && row.path !== posix.dirname(broker.usageLedgerPath))) {
|
|
129
|
-
throw new Error('The Grok slot-ledger evaluator root must be the usage ledger directory');
|
|
130
|
-
}
|
|
131
|
-
const subject = [launch.workspace.target, ...launch.projections.map(row => row.target)];
|
|
132
|
-
if (paths.some(path => subject.some(target => nested(path, target) || nested(target, path)))) {
|
|
133
|
-
throw new Error('Grok evaluator roots cannot overlap subject workspace or projections');
|
|
134
|
-
}
|
|
135
|
-
if (broker.limits.maxTokens > launch.limits.wakeTokenCeiling)
|
|
136
|
-
throw new Error('Grok broker token limit exceeds the launch wake ceiling');
|
|
137
|
-
}
|
|
138
|
-
//# sourceMappingURL=schema.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"schema.js","sourceRoot":"","sources":["../../../../../../src/runtime/daimon/training/native/receipt/schema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import type { NativeLaunch } from './schema.js';
|
|
2
|
-
/** The caller supplies one persistent account directory, never a per-trial auth copy. */
|
|
3
|
-
export declare function nativeCodexAccount(launch: NativeLaunch): {
|
|
4
|
-
realm: {
|
|
5
|
-
role: "transport" | "subscription" | "state" | "home" | "memory";
|
|
6
|
-
source: string;
|
|
7
|
-
target: string;
|
|
8
|
-
};
|
|
9
|
-
bootstrap: {
|
|
10
|
-
source: string;
|
|
11
|
-
target: string;
|
|
12
|
-
};
|
|
13
|
-
} | undefined;
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
/** The caller supplies one persistent account directory, never a per-trial auth copy. */
|
|
2
|
-
export function nativeCodexAccount(launch) {
|
|
3
|
-
if (launch.agent.engine !== 'codex')
|
|
4
|
-
return undefined;
|
|
5
|
-
const rows = launch.projections.filter(row => row.role === 'subscription');
|
|
6
|
-
if (rows.length !== 1)
|
|
7
|
-
throw new Error('Codex requires exactly one shared subscription realm projection');
|
|
8
|
-
if (launch.credentials.length !== 1) {
|
|
9
|
-
throw new Error('Codex requires one shared subscription bootstrap ingress');
|
|
10
|
-
}
|
|
11
|
-
return { realm: rows[0], bootstrap: launch.credentials[0] };
|
|
12
|
-
}
|
|
13
|
-
//# sourceMappingURL=subscription.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"subscription.js","sourceRoot":"","sources":["../../../../../../src/runtime/daimon/training/native/receipt/subscription.ts"],"names":[],"mappings":"AAEA,yFAAyF;AACzF,MAAM,UAAU,kBAAkB,CAAC,MAAoB;IACrD,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IACtD,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,CAAC,IAAI,KAAK,cAAc,CAAC,CAAC;IAC3E,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,KAAK,CAAC,iEAAiE,CAAC,CAAC;IAC1G,IAAI,MAAM,CAAC,WAAW,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,0DAA0D,CAAC,CAAC;IAC9E,CAAC;IACD,OAAO,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC,CAAE,EAAE,SAAS,EAAE,MAAM,CAAC,WAAW,CAAC,CAAC,CAAE,EAAE,CAAC;AAChE,CAAC"}
|
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
import { z } from 'zod';
|
|
2
|
-
/** Daimon's documented environment contract; the optional runtime owns clocked child launches. */
|
|
3
|
-
export declare const nativeTaskClockSchema: z.ZodObject<{
|
|
4
|
-
origin: z.ZodString;
|
|
5
|
-
anchorEpochMs: z.ZodNumber;
|
|
6
|
-
libfaketimePath: z.ZodString;
|
|
7
|
-
}, z.core.$strict>;
|
|
8
|
-
export type NativeTaskClock = z.infer<typeof nativeTaskClockSchema>;
|
|
9
|
-
export interface NativeTaskClockEvidence {
|
|
10
|
-
version: 'noopolis.task-clock.v1';
|
|
11
|
-
origin: string;
|
|
12
|
-
anchorEpochMs: number;
|
|
13
|
-
}
|
|
14
|
-
/**
|
|
15
|
-
* Call inside the already-running worker before creating Daimon's host. Setting
|
|
16
|
-
* LD_PRELOAD here supplies Daimon's child gate; it never preloads this worker.
|
|
17
|
-
* Daimon derives tool-only FAKETIME and strips clocks from engine/auth launches.
|
|
18
|
-
*/
|
|
19
|
-
export declare function configureNativeTaskClock(taskClock: NativeTaskClock | undefined, timeoutMs: number, environment?: NodeJS.ProcessEnv, now?: () => number): NativeTaskClockEvidence | undefined;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { posix } from 'node:path';
|
|
2
|
-
import { z } from 'zod';
|
|
3
|
-
/** Daimon's documented environment contract; the optional runtime owns clocked child launches. */
|
|
4
|
-
export const nativeTaskClockSchema = z.strictObject({
|
|
5
|
-
origin: z.string().refine(validOrigin, 'Expected valid task clock ISO instant with Z or an explicit offset in UTC years 1970..9999'),
|
|
6
|
-
anchorEpochMs: z.number().int('Expected task clock anchorEpochMs to be a safe integer'),
|
|
7
|
-
libfaketimePath: z.string().min(1).refine(value => !/[\s:\0]/u.test(value) &&
|
|
8
|
-
/^libfaketime[^/]*\.so[^/]*$/u.test(posix.basename(value)), 'Expected a single libfaketime*.so* library path'),
|
|
9
|
-
});
|
|
10
|
-
/**
|
|
11
|
-
* Call inside the already-running worker before creating Daimon's host. Setting
|
|
12
|
-
* LD_PRELOAD here supplies Daimon's child gate; it never preloads this worker.
|
|
13
|
-
* Daimon derives tool-only FAKETIME and strips clocks from engine/auth launches.
|
|
14
|
-
*/
|
|
15
|
-
export function configureNativeTaskClock(taskClock, timeoutMs, environment = process.env, now = Date.now) {
|
|
16
|
-
if (taskClock === undefined) {
|
|
17
|
-
delete environment.NOOPOLIS_TASK_CLOCK;
|
|
18
|
-
delete environment.LD_PRELOAD;
|
|
19
|
-
return undefined;
|
|
20
|
-
}
|
|
21
|
-
const clock = nativeTaskClockSchema.parse(taskClock);
|
|
22
|
-
const realNow = now();
|
|
23
|
-
if (!Number.isSafeInteger(realNow))
|
|
24
|
-
throw new Error('Native task clock validation requires a safe integer real timestamp');
|
|
25
|
-
if (!Number.isSafeInteger(timeoutMs) || timeoutMs <= 0)
|
|
26
|
-
throw new Error('Native task clock requires a positive safe integer trial timeout');
|
|
27
|
-
const { anchorEpochMs } = clock;
|
|
28
|
-
// One caller-owned anchor synchronizes the transport and runtime. Permit only
|
|
29
|
-
// 1 s of clock skew; preparation cannot reuse a previous deadline window.
|
|
30
|
-
if (anchorEpochMs - realNow > 1000)
|
|
31
|
-
throw new Error('Native task clock anchorEpochMs is more than 1000 ms in the future');
|
|
32
|
-
if (realNow - anchorEpochMs > timeoutMs)
|
|
33
|
-
throw new Error('Native task clock anchorEpochMs is older than the trial deadline window');
|
|
34
|
-
const evidence = { version: 'noopolis.task-clock.v1', origin: clock.origin, anchorEpochMs };
|
|
35
|
-
environment.NOOPOLIS_TASK_CLOCK = JSON.stringify(evidence);
|
|
36
|
-
environment.LD_PRELOAD = clock.libfaketimePath;
|
|
37
|
-
return evidence;
|
|
38
|
-
}
|
|
39
|
-
function validOrigin(value) {
|
|
40
|
-
const match = /^(\d{4})-(\d{2})-(\d{2})T([01]\d|2[0-3]):([0-5]\d):([0-5]\d)(?:\.\d+)?(?:Z|[+-](?:[01]\d|2[0-3]):?[0-5]\d)$/u.exec(value);
|
|
41
|
-
const epoch = Date.parse(value);
|
|
42
|
-
if (!match || !Number.isSafeInteger(epoch) || epoch < 0 || epoch > 253_402_300_799_999)
|
|
43
|
-
return false;
|
|
44
|
-
const year = Number(match[1]), month = Number(match[2]), day = Number(match[3]);
|
|
45
|
-
const leap = year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0);
|
|
46
|
-
const days = [31, leap ? 29 : 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31];
|
|
47
|
-
return month >= 1 && month <= 12 && day >= 1 && day <= days[month - 1];
|
|
48
|
-
}
|
|
49
|
-
//# sourceMappingURL=task-clock.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"task-clock.js","sourceRoot":"","sources":["../../../../../../src/runtime/daimon/training/native/receipt/task-clock.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,218 +0,0 @@
|
|
|
1
|
-
import type { Usage } from '../../../../training/index.js';
|
|
2
|
-
import { type NativeLaunch } from './receipt/index.js';
|
|
3
|
-
import { type NativeGrokUsage, type NativeRequestUsage, type NativeTurnSeal } from './worker/index.js';
|
|
4
|
-
export interface SealedBrokerUsage {
|
|
5
|
-
usage: Usage | null;
|
|
6
|
-
rows: NativeGrokUsage[];
|
|
7
|
-
}
|
|
8
|
-
export interface SealedBrokerUsageOptions {
|
|
9
|
-
attempts?: number;
|
|
10
|
-
intervalMs?: number;
|
|
11
|
-
}
|
|
12
|
-
/**
|
|
13
|
-
* What a brokered turn spent, when its terminal frame never arrived.
|
|
14
|
-
*
|
|
15
|
-
* A wake that fails spends the same money as one that publishes. The worker's
|
|
16
|
-
* HTTP reply is the only route usage normally takes to this adapter, so a
|
|
17
|
-
* worker that dies mid-turn used to report `usage: null` for a turn whose tool
|
|
18
|
-
* calls had already succeeded — a fabricated zero, byte-identical to a measured
|
|
19
|
-
* one, for spend that really happened. The broker is the single sealed usage
|
|
20
|
-
* writer and it seals a failed turn's partial usage from what its own proxy
|
|
21
|
-
* metered, so the record exists; in child-process execution this adapter shares
|
|
22
|
-
* that filesystem and the launch receipt names the file.
|
|
23
|
-
*
|
|
24
|
-
* Three rules, all of them the ledger's own:
|
|
25
|
-
*
|
|
26
|
-
* - **Absence stays absence.** A missing, unreadable, malformed or empty ledger
|
|
27
|
-
* returns `null`, never `0`. Reading nothing is not the same as measuring
|
|
28
|
-
* nothing, and the difference is exactly what a fabricated zero destroys.
|
|
29
|
-
* - **Dedupe by `turn`.** Daimon may append one sealed turn's identical bytes
|
|
30
|
-
* twice (a replay racing another replay), so every ledger consumer collapses
|
|
31
|
-
* them; `readSealedGrokUsage` does it and refuses rows that disagree under
|
|
32
|
-
* one key.
|
|
33
|
-
* - **It cannot fail the trial.** This runs on a path that has already failed,
|
|
34
|
-
* and an instrumentation fault there would replace a diagnosable failure with
|
|
35
|
-
* a confusing one. Every fault is swallowed into `null`.
|
|
36
|
-
*
|
|
37
|
-
* The recovered spend is deliberately *not* promoted to complete coverage: the
|
|
38
|
-
* execution it belongs to never closed, so nothing here can prove the ledger
|
|
39
|
-
* holds all of it. It is `partial` — measured, bounded below, and honest about
|
|
40
|
-
* being the broker's account rather than the turn's.
|
|
41
|
-
*
|
|
42
|
-
* The short poll exists because sealing is the broker's reaction to losing its
|
|
43
|
-
* client: the worker dies, its control socket closes, and only then does the
|
|
44
|
-
* broker seal and append. Reading once, immediately, would race that append and
|
|
45
|
-
* report absence for a row written a moment later — which is the same
|
|
46
|
-
* fabricated zero by a different route. The wait is bounded and always
|
|
47
|
-
* terminates; giving up returns absence, not zero.
|
|
48
|
-
*/
|
|
49
|
-
export declare function readSealedBrokerUsage(launch: NativeLaunch, options?: SealedBrokerUsageOptions): Promise<SealedBrokerUsage>;
|
|
50
|
-
export declare const BROKER_REQUESTS_SCHEMA = "spawnfile.training.daimon-native.broker-requests.v1";
|
|
51
|
-
/** One proxied request, as timings and counts. Never a body, a prompt, a reply or a credential. */
|
|
52
|
-
export interface BrokerRequestTiming {
|
|
53
|
-
turn: string;
|
|
54
|
-
request: number;
|
|
55
|
-
requests: number;
|
|
56
|
-
model: string;
|
|
57
|
-
at: string;
|
|
58
|
-
startedAt?: string;
|
|
59
|
-
/** Absent exactly when the proxy never measured an end: the request that was issued and never answered. */
|
|
60
|
-
endedAt?: string;
|
|
61
|
-
/** Only when both ends were measured; an unanswered request has no duration to report. */
|
|
62
|
-
durationMs?: number;
|
|
63
|
-
usageSource?: NativeRequestUsage['usage_source'];
|
|
64
|
-
input: number;
|
|
65
|
-
cachedInput: number;
|
|
66
|
-
freshInput: number;
|
|
67
|
-
cacheWrite: number;
|
|
68
|
-
output: number;
|
|
69
|
-
total: number;
|
|
70
|
-
}
|
|
71
|
-
/** Why a present ledger could not be read, in a closed vocabulary: an error string could carry ledger bytes. */
|
|
72
|
-
export type BrokerRequestFailure = 'malformed' | 'schema' | 'unreadable';
|
|
73
|
-
export type BrokerRequestLedger = {
|
|
74
|
-
schema: typeof BROKER_REQUESTS_SCHEMA;
|
|
75
|
-
outcome: 'read';
|
|
76
|
-
read: number;
|
|
77
|
-
published: number;
|
|
78
|
-
open: number;
|
|
79
|
-
truncated: boolean;
|
|
80
|
-
rows: BrokerRequestTiming[];
|
|
81
|
-
} | {
|
|
82
|
-
schema: typeof BROKER_REQUESTS_SCHEMA;
|
|
83
|
-
outcome: 'unreadable';
|
|
84
|
-
failure: BrokerRequestFailure;
|
|
85
|
-
};
|
|
86
|
-
/**
|
|
87
|
-
* When a brokered turn last spoke to the provider, and whether it was answered.
|
|
88
|
-
*
|
|
89
|
-
* A turn killed by its deadline leaves two indistinguishable shapes in the
|
|
90
|
-
* published event stream: a request was issued and never came back, or the
|
|
91
|
-
* worker never issued the next request at all. Nothing on the adapter's side of
|
|
92
|
-
* the wake can separate them — but the broker's proxy writes a second ledger
|
|
93
|
-
* beside the usage one, a row per request with its own `started_at` and
|
|
94
|
-
* `ended_at`, and there the first shape is a row with no end and the second is
|
|
95
|
-
* no row. That file dies with the slot's tmpfs unless the failure path reads
|
|
96
|
-
* it, so this reads it there and publishes it as an operator-only diagnostic.
|
|
97
|
-
*
|
|
98
|
-
* It keeps the rules of the ledger beside it:
|
|
99
|
-
*
|
|
100
|
-
* - **Absence stays absence.** A missing or empty ledger returns `undefined` —
|
|
101
|
-
* nothing is published. A fabricated empty list would read as "no requests
|
|
102
|
-
* were made", which is one of the two answers this change exists to
|
|
103
|
-
* distinguish. A ledger that is present but unreadable publishes a failure
|
|
104
|
-
* classification instead, which is neither answer.
|
|
105
|
-
* - **An unanswered row survives as one.** `endedAt` is omitted, never filled,
|
|
106
|
-
* never normalised, and the bound keeps open rows before any other.
|
|
107
|
-
* - **Timings and counts only**, through an allow-list projection.
|
|
108
|
-
* - **It cannot fail the trial.** Every fault becomes a classification or
|
|
109
|
-
* absence, and the observer swallows a publish fault.
|
|
110
|
-
*
|
|
111
|
-
* The poll is the usage reader's, for the usage reader's reason: an unanswered
|
|
112
|
-
* request has no row until the broker seals the turn it belongs to, so reading
|
|
113
|
-
* once would race the append and report "never issued" for a request that was.
|
|
114
|
-
*/
|
|
115
|
-
export declare function readSealedBrokerRequests(launch: NativeLaunch, options?: SealedBrokerUsageOptions): Promise<BrokerRequestLedger | undefined>;
|
|
116
|
-
export declare const BROKER_SEAL_SCHEMA = "spawnfile.training.daimon-native.broker-seal.v1";
|
|
117
|
-
/** One outstanding MCP tool call: a name and how long it had been unanswered when the turn died. */
|
|
118
|
-
export interface BrokerSealOutstandingCall {
|
|
119
|
-
name: string;
|
|
120
|
-
outstandingMs: number;
|
|
121
|
-
}
|
|
122
|
-
/** One GET SSE tunnel still open when the turn died: its age, and whether the mount ever pushed through it. */
|
|
123
|
-
export interface BrokerSealOpenTunnel {
|
|
124
|
-
openMs: number;
|
|
125
|
-
delivered: boolean;
|
|
126
|
-
}
|
|
127
|
-
/**
|
|
128
|
-
* The session's standalone GET tunnels. A worker parked reading one is idle in
|
|
129
|
-
* exactly the way every other artifact renders as "doing nothing", so this is
|
|
130
|
-
* what separates a turn that died with its tunnel open from one that closed it
|
|
131
|
-
* first — and `delivered` separates a tunnel carrying frames from one held open
|
|
132
|
-
* in silence.
|
|
133
|
-
*/
|
|
134
|
-
export interface BrokerSealTunnels {
|
|
135
|
-
opened: number;
|
|
136
|
-
closed: number;
|
|
137
|
-
delivered: number;
|
|
138
|
-
open: BrokerSealOpenTunnel[];
|
|
139
|
-
}
|
|
140
|
-
/**
|
|
141
|
-
* One sealed terminal turn, as an allow-list projection.
|
|
142
|
-
*
|
|
143
|
-
* Every member is a number, a name, a timing or a value from a closed set. The
|
|
144
|
-
* one free-form string is `reason`, the worker's own last words, which Daimon
|
|
145
|
-
* redacted with that turn's own capabilities as exact secrets and bounded
|
|
146
|
-
* before it ever reached the ledger — the same discipline, and the same bytes,
|
|
147
|
-
* as the startup diagnostic published beside it.
|
|
148
|
-
*/
|
|
149
|
-
export interface BrokerSealRecord {
|
|
150
|
-
turn: string;
|
|
151
|
-
wake: string;
|
|
152
|
-
at: string;
|
|
153
|
-
model: string;
|
|
154
|
-
outcome: 'completed' | 'failed';
|
|
155
|
-
requests: number;
|
|
156
|
-
limitReason: 'tokens' | 'requests' | 'timeout' | 'none';
|
|
157
|
-
shellClock?: NativeTurnSeal['shell_clock'];
|
|
158
|
-
providerClock?: NativeTurnSeal['provider_clock'];
|
|
159
|
-
code?: string;
|
|
160
|
-
status?: string;
|
|
161
|
-
stage?: string;
|
|
162
|
-
failureClass?: string;
|
|
163
|
-
exitCode?: number;
|
|
164
|
-
termSignal?: number;
|
|
165
|
-
reason?: string;
|
|
166
|
-
/**
|
|
167
|
-
* Present exactly when the broker's MCP facade observed this turn. Absent is
|
|
168
|
-
* "never observed"; `started: 0` is "observed, and it called nothing". The
|
|
169
|
-
* two are different answers and this record never collapses them.
|
|
170
|
-
*/
|
|
171
|
-
mcp?: {
|
|
172
|
-
started: number;
|
|
173
|
-
answered: number;
|
|
174
|
-
undecoded: number;
|
|
175
|
-
outstanding: BrokerSealOutstandingCall[];
|
|
176
|
-
refusals?: NonNullable<NativeTurnSeal['mcp']>['refusals'];
|
|
177
|
-
tunnels?: BrokerSealTunnels;
|
|
178
|
-
};
|
|
179
|
-
}
|
|
180
|
-
export type BrokerSealLedger = {
|
|
181
|
-
schema: typeof BROKER_SEAL_SCHEMA;
|
|
182
|
-
outcome: 'read';
|
|
183
|
-
read: number;
|
|
184
|
-
outstanding: number;
|
|
185
|
-
openTunnels: number;
|
|
186
|
-
rows: BrokerSealRecord[];
|
|
187
|
-
} | {
|
|
188
|
-
schema: typeof BROKER_SEAL_SCHEMA;
|
|
189
|
-
outcome: 'unreadable';
|
|
190
|
-
failure: BrokerRequestFailure;
|
|
191
|
-
};
|
|
192
|
-
/**
|
|
193
|
-
* What the broker sealed about a turn that never answered.
|
|
194
|
-
*
|
|
195
|
-
* A worker that CRASHES still produces a terminal HTTP reply, and its failure
|
|
196
|
-
* code and last words ride that reply here. A worker that HANGS is killed by
|
|
197
|
-
* the trial deadline, so there is no reply at all — and the sealed terminal
|
|
198
|
-
* response, with the MCP call the worker was still blocked on riding on it,
|
|
199
|
-
* is written only into the broker's own turn record, in a `0700` store this
|
|
200
|
-
* uid cannot read, on a control root a training slot puts on tmpfs. Six live
|
|
201
|
-
* runs ended exactly that way: usage recovered, `output: absent`, and no
|
|
202
|
-
* account of what the turn was waiting for.
|
|
203
|
-
*
|
|
204
|
-
* The broker now projects that sealed response into a third stream beside the
|
|
205
|
-
* two ledgers this module already recovers, and this reads it there, on the
|
|
206
|
-
* same bounded poll and for the same reason: the seal is the broker's reaction
|
|
207
|
-
* to losing its client, so reading once would race the append.
|
|
208
|
-
*
|
|
209
|
-
* Same rules as the requests ledger beside it. Absence stays absence — a
|
|
210
|
-
* missing or empty stream publishes nothing, because a fabricated empty record
|
|
211
|
-
* would read as "the turn sealed nothing", which is one of the answers this
|
|
212
|
-
* exists to tell apart, and an `mcp` member is never invented for a turn the
|
|
213
|
-
* facade did not observe. Numbers, names, timings, closed vocabularies and one
|
|
214
|
-
* already-redacted reason. A fault publishes a classification, never a message
|
|
215
|
-
* that could quote the bad line. And it cannot fail the trial: every fault
|
|
216
|
-
* becomes a classification or absence.
|
|
217
|
-
*/
|
|
218
|
-
export declare function readSealedBrokerSeal(launch: NativeLaunch, options?: SealedBrokerUsageOptions): Promise<BrokerSealLedger | undefined>;
|