@plurnk/plurnk-service 1.16.5 → 1.18.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/.env.defaults +140 -246
- package/INSTALL.md +84 -138
- package/README.md +10 -6
- package/SPEC.md +2468 -1694
- package/dist/Paths.d.ts +2 -0
- package/dist/Paths.d.ts.map +1 -1
- package/dist/Paths.js +2 -0
- package/dist/Paths.js.map +1 -1
- package/dist/build-info.d.ts.map +1 -1
- package/dist/build-info.js +7 -1
- package/dist/build-info.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/content/body-preview.d.ts +8 -0
- package/dist/content/body-preview.d.ts.map +1 -0
- package/dist/content/body-preview.js +39 -0
- package/dist/content/body-preview.js.map +1 -0
- package/dist/content/byte-view.d.ts +1 -4
- package/dist/content/byte-view.d.ts.map +1 -1
- package/dist/content/byte-view.js.map +1 -1
- package/dist/content/edit-collision.d.ts.map +1 -1
- package/dist/content/edit-collision.js +3 -4
- package/dist/content/edit-collision.js.map +1 -1
- package/dist/content/line-anchors.d.ts +2 -2
- package/dist/content/line-anchors.d.ts.map +1 -1
- package/dist/content/line-anchors.js +4 -3
- package/dist/content/line-anchors.js.map +1 -1
- package/dist/content/line-selection.d.ts +9 -0
- package/dist/content/line-selection.d.ts.map +1 -0
- package/dist/content/line-selection.js +29 -0
- package/dist/content/line-selection.js.map +1 -0
- package/dist/content/matcher.d.ts +0 -1
- package/dist/content/matcher.d.ts.map +1 -1
- package/dist/content/matcher.js +2 -3
- package/dist/content/matcher.js.map +1 -1
- package/dist/content/pattern-edits.d.ts +39 -0
- package/dist/content/pattern-edits.d.ts.map +1 -0
- package/dist/content/pattern-edits.js +121 -0
- package/dist/content/pattern-edits.js.map +1 -0
- package/dist/content/read-projector.d.ts +18 -9
- package/dist/content/read-projector.d.ts.map +1 -1
- package/dist/content/read-projector.js +132 -35
- package/dist/content/read-projector.js.map +1 -1
- package/dist/content/read-resolve.d.ts +4 -1
- package/dist/content/read-resolve.d.ts.map +1 -1
- package/dist/content/read-resolve.js +42 -7
- package/dist/content/read-resolve.js.map +1 -1
- package/dist/core/AdmittedTurnExecutor.d.ts +2 -5
- package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
- package/dist/core/AdmittedTurnExecutor.js +96 -88
- package/dist/core/AdmittedTurnExecutor.js.map +1 -1
- package/dist/core/BareBatchRunner.d.ts +6 -1
- package/dist/core/BareBatchRunner.d.ts.map +1 -1
- package/dist/core/BareBatchRunner.js +20 -5
- package/dist/core/BareBatchRunner.js.map +1 -1
- package/dist/core/BudgetReadout.d.ts +2 -3
- package/dist/core/BudgetReadout.d.ts.map +1 -1
- package/dist/core/BudgetReadout.js +23 -32
- package/dist/core/BudgetReadout.js.map +1 -1
- package/dist/core/CapabilityPolicies.d.ts +3 -8
- package/dist/core/CapabilityPolicies.d.ts.map +1 -1
- package/dist/core/CapabilityPolicies.js +2 -28
- package/dist/core/CapabilityPolicies.js.map +1 -1
- package/dist/core/CapabilityResolver.d.ts +10 -10
- package/dist/core/CapabilityResolver.d.ts.map +1 -1
- package/dist/core/CapabilityResolver.js +122 -93
- package/dist/core/CapabilityResolver.js.map +1 -1
- package/dist/core/ChannelWrite.d.ts +15 -11
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +12 -13
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/ChannelWrite.sql +99 -9
- package/dist/core/ClientInteractions.d.ts.map +1 -1
- package/dist/core/ClientInteractions.js +7 -0
- package/dist/core/ClientInteractions.js.map +1 -1
- package/dist/core/CoreSchemeServices.d.ts +13 -10
- package/dist/core/CoreSchemeServices.d.ts.map +1 -1
- package/dist/core/CoreSchemeServices.js +13 -5
- package/dist/core/CoreSchemeServices.js.map +1 -1
- package/dist/core/DataStatementRunner.d.ts +2 -2
- package/dist/core/DataStatementRunner.d.ts.map +1 -1
- package/dist/core/DataStatementRunner.js +208 -161
- package/dist/core/DataStatementRunner.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +24 -26
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +381 -232
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Dispatcher.sql +66 -0
- package/dist/core/DurableStatement.d.ts.map +1 -1
- package/dist/core/DurableStatement.js +2 -1
- package/dist/core/DurableStatement.js.map +1 -1
- package/dist/core/EditMutations.d.ts +14 -18
- package/dist/core/EditMutations.d.ts.map +1 -1
- package/dist/core/EditMutations.js +211 -280
- package/dist/core/EditMutations.js.map +1 -1
- package/dist/core/EditMutations.sql +15 -0
- package/dist/core/EditSequence.d.ts +13 -0
- package/dist/core/EditSequence.d.ts.map +1 -0
- package/dist/core/EditSequence.js +73 -0
- package/dist/core/EditSequence.js.map +1 -0
- package/dist/core/Engine.d.ts +17 -23
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +74 -164
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +0 -724
- package/dist/core/EntryAddressBinding.d.ts +7 -17
- package/dist/core/EntryAddressBinding.d.ts.map +1 -1
- package/dist/core/EntryAddressBinding.js +12 -72
- package/dist/core/EntryAddressBinding.js.map +1 -1
- package/dist/core/ExecutionOutputs.d.ts +9 -0
- package/dist/core/ExecutionOutputs.d.ts.map +1 -0
- package/dist/core/ExecutionOutputs.js +36 -0
- package/dist/core/ExecutionOutputs.js.map +1 -0
- package/dist/core/ExecutionOutputs.sql +21 -0
- package/dist/core/ExecutorRegistry.d.ts +11 -5
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +37 -32
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/HostPaths.d.ts +1 -0
- package/dist/core/HostPaths.d.ts.map +1 -1
- package/dist/core/HostPaths.js +4 -0
- package/dist/core/HostPaths.js.map +1 -1
- package/dist/core/InferenceCall.d.ts.map +1 -1
- package/dist/core/InferenceCall.js +1 -2
- package/dist/core/InferenceCall.js.map +1 -1
- package/dist/core/InferenceCall.sql +29 -0
- package/dist/core/KillHandler.d.ts +1 -0
- package/dist/core/KillHandler.d.ts.map +1 -1
- package/dist/core/KillHandler.js +24 -21
- package/dist/core/KillHandler.js.map +1 -1
- package/dist/core/LogBody.d.ts +8 -1
- package/dist/core/LogBody.d.ts.map +1 -1
- package/dist/core/LogBody.js +44 -12
- package/dist/core/LogBody.js.map +1 -1
- package/dist/core/LogEntryProjection.d.ts +1 -0
- package/dist/core/LogEntryProjection.d.ts.map +1 -1
- package/dist/core/LogEntryProjection.js +12 -10
- package/dist/core/LogEntryProjection.js.map +1 -1
- package/dist/core/LogVisibility.d.ts +1 -0
- package/dist/core/LogVisibility.d.ts.map +1 -1
- package/dist/core/LogVisibility.js +3 -0
- package/dist/core/LogVisibility.js.map +1 -1
- package/dist/core/LogWriter.d.ts +2 -3
- package/dist/core/LogWriter.d.ts.map +1 -1
- package/dist/core/LogWriter.js +31 -36
- package/dist/core/LogWriter.js.map +1 -1
- package/dist/core/LogWriter.sql +23 -0
- package/dist/core/LoopDriver.d.ts +11 -8
- package/dist/core/LoopDriver.d.ts.map +1 -1
- package/dist/core/LoopDriver.js +161 -189
- package/dist/core/LoopDriver.js.map +1 -1
- package/dist/core/LoopDriver.sql +11 -0
- package/dist/core/LoopLifecycle.d.ts +32 -2
- package/dist/core/LoopLifecycle.d.ts.map +1 -1
- package/dist/core/LoopLifecycle.js +88 -4
- package/dist/core/LoopLifecycle.js.map +1 -1
- package/dist/core/LoopLifecycle.sql +145 -28
- package/dist/core/LoopPolicyReader.sql +6 -0
- package/dist/core/MembershipMaterialization.d.ts.map +1 -1
- package/dist/core/MembershipMaterialization.js +6 -28
- package/dist/core/MembershipMaterialization.js.map +1 -1
- package/dist/core/ModelCall.d.ts.map +1 -1
- package/dist/core/ModelCall.js +2 -6
- package/dist/core/ModelCall.js.map +1 -1
- package/dist/core/ModelCall.sql +41 -0
- package/dist/core/MutationEffects.d.ts +5 -3
- package/dist/core/MutationEffects.d.ts.map +1 -1
- package/dist/core/MutationEffects.js +10 -28
- package/dist/core/MutationEffects.js.map +1 -1
- package/dist/core/NativeContent.d.ts +6 -0
- package/dist/core/NativeContent.d.ts.map +1 -0
- package/dist/core/NativeContent.js +16 -0
- package/dist/core/NativeContent.js.map +1 -0
- package/dist/core/NativeContent.sql +6 -0
- package/dist/core/NoticeChannel.js +1 -1
- package/dist/core/NoticeChannel.js.map +1 -1
- package/dist/core/OperatorConfig.js +5 -5
- package/dist/core/OperatorConfig.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts +8 -5
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +117 -81
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/PacketBuilder.sql +146 -0
- package/dist/core/PatternSelection.d.ts +28 -0
- package/dist/core/PatternSelection.d.ts.map +1 -0
- package/dist/core/PatternSelection.js +42 -0
- package/dist/core/PatternSelection.js.map +1 -0
- package/dist/core/ProblemLog.d.ts.map +1 -1
- package/dist/core/ProblemLog.js +0 -1
- package/dist/core/ProblemLog.js.map +1 -1
- package/dist/core/PromptFrames.d.ts +12 -0
- package/dist/core/PromptFrames.d.ts.map +1 -0
- package/dist/core/PromptFrames.js +28 -0
- package/dist/core/PromptFrames.js.map +1 -0
- package/dist/core/ProposalLifecycle.d.ts +0 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +26 -23
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProposalLifecycle.sql +33 -0
- package/dist/core/ProviderInstantiate.d.ts +1 -1
- package/dist/core/ProviderInstantiate.d.ts.map +1 -1
- package/dist/core/ProviderInstantiate.js +7 -14
- package/dist/core/ProviderInstantiate.js.map +1 -1
- package/dist/core/ReasoningView.d.ts +9 -0
- package/dist/core/ReasoningView.d.ts.map +1 -0
- package/dist/core/ReasoningView.js +47 -0
- package/dist/core/ReasoningView.js.map +1 -0
- package/dist/core/ResourceBindings.d.ts +16 -0
- package/dist/core/ResourceBindings.d.ts.map +1 -0
- package/dist/core/ResourceBindings.js +45 -0
- package/dist/core/ResourceBindings.js.map +1 -0
- package/dist/core/ResourceMutations.d.ts +5 -8
- package/dist/core/ResourceMutations.d.ts.map +1 -1
- package/dist/core/ResourceMutations.js +6 -7
- package/dist/core/ResourceMutations.js.map +1 -1
- package/dist/core/ResourceSelector.d.ts +2 -2
- package/dist/core/ResourceSelector.d.ts.map +1 -1
- package/dist/core/ResourceSelector.js +122 -62
- package/dist/core/ResourceSelector.js.map +1 -1
- package/dist/core/ResourceTransfers.d.ts +4 -2
- package/dist/core/ResourceTransfers.d.ts.map +1 -1
- package/dist/core/ResourceTransfers.js +95 -26
- package/dist/core/ResourceTransfers.js.map +1 -1
- package/dist/core/RuntimeWorker.d.ts +5 -0
- package/dist/core/RuntimeWorker.d.ts.map +1 -0
- package/dist/core/RuntimeWorker.js +15 -0
- package/dist/core/RuntimeWorker.js.map +1 -0
- package/dist/core/RuntimeWorker.sql +11 -0
- package/dist/core/SchemeRegistry.d.ts +12 -16
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +59 -85
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/StoredPacket.d.ts +6 -1
- package/dist/core/StoredPacket.d.ts.map +1 -1
- package/dist/core/StoredPacket.js +30 -10
- package/dist/core/StoredPacket.js.map +1 -1
- package/dist/core/StrikeRail.d.ts +11 -8
- package/dist/core/StrikeRail.d.ts.map +1 -1
- package/dist/core/StrikeRail.js +63 -114
- package/dist/core/StrikeRail.js.map +1 -1
- package/dist/core/StrikeRail.sql +12 -0
- package/dist/core/TerminalResult.d.ts +1 -1
- package/dist/core/TerminalResult.d.ts.map +1 -1
- package/dist/core/TerminalResult.js +2 -2
- package/dist/core/TerminalResult.js.map +1 -1
- package/dist/core/TokenCalibration.d.ts +1 -6
- package/dist/core/TokenCalibration.d.ts.map +1 -1
- package/dist/core/TokenCalibration.js +13 -9
- package/dist/core/TokenCalibration.js.map +1 -1
- package/dist/core/TokenCalibration.sql +15 -0
- package/dist/core/ToolInputSchema.d.ts +6 -0
- package/dist/core/ToolInputSchema.d.ts.map +1 -0
- package/dist/core/ToolInputSchema.js +43 -0
- package/dist/core/ToolInputSchema.js.map +1 -0
- package/dist/core/ToolResources.d.ts.map +1 -1
- package/dist/core/ToolResources.js +77 -51
- package/dist/core/ToolResources.js.map +1 -1
- package/dist/core/Turn.d.ts +5 -2
- package/dist/core/Turn.d.ts.map +1 -1
- package/dist/core/Turn.js +13 -11
- package/dist/core/Turn.js.map +1 -1
- package/dist/core/Turn.sql +25 -39
- package/dist/core/{SendBroadcastHandler.d.ts → TurnDispositionHandler.d.ts} +24 -18
- package/dist/core/TurnDispositionHandler.d.ts.map +1 -0
- package/dist/core/TurnDispositionHandler.js +206 -0
- package/dist/core/TurnDispositionHandler.js.map +1 -0
- package/dist/core/TurnMaterialization.d.ts +2 -3
- package/dist/core/TurnMaterialization.d.ts.map +1 -1
- package/dist/core/TurnMaterialization.js +47 -24
- package/dist/core/TurnMaterialization.js.map +1 -1
- package/dist/core/TurnMaterialization.sql +44 -0
- package/dist/core/TurnOps.d.ts.map +1 -1
- package/dist/core/TurnOps.js +8 -64
- package/dist/core/TurnOps.js.map +1 -1
- package/dist/core/TurnRunner.d.ts +8 -15
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +1175 -1317
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/TurnRunner.sql +74 -0
- package/dist/core/TurnSources.sql +39 -0
- package/dist/core/WorkerControlAddress.d.ts +1 -0
- package/dist/core/WorkerControlAddress.d.ts.map +1 -1
- package/dist/core/WorkerControlAddress.js +5 -0
- package/dist/core/WorkerControlAddress.js.map +1 -1
- package/dist/core/WorkerControlHandler.d.ts +1 -3
- package/dist/core/WorkerControlHandler.d.ts.map +1 -1
- package/dist/core/WorkerControlHandler.js +64 -48
- package/dist/core/WorkerControlHandler.js.map +1 -1
- package/dist/core/WorkerName.d.ts +11 -12
- package/dist/core/WorkerName.d.ts.map +1 -1
- package/dist/core/WorkerName.js +40 -47
- package/dist/core/WorkerName.js.map +1 -1
- package/dist/core/WorkerName.sql +7 -10
- package/dist/core/WorkspaceGate.d.ts +1 -1
- package/dist/core/WorkspaceGate.d.ts.map +1 -1
- package/dist/core/WorkspaceGate.js +33 -10
- package/dist/core/WorkspaceGate.js.map +1 -1
- package/dist/core/ambient.sql +236 -0
- package/dist/core/attachments.d.ts +2 -1
- package/dist/core/attachments.d.ts.map +1 -1
- package/dist/core/attachments.js +5 -4
- package/dist/core/attachments.js.map +1 -1
- package/dist/core/caps/CapsResolve.d.ts +2 -3
- package/dist/core/caps/CapsResolve.d.ts.map +1 -1
- package/dist/core/caps/CapsResolve.js +5 -5
- package/dist/core/caps/CapsResolve.js.map +1 -1
- package/dist/core/caps/DbChannelCaps.d.ts +1 -1
- package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
- package/dist/core/caps/DbChannelCaps.js +4 -6
- package/dist/core/caps/DbChannelCaps.js.map +1 -1
- package/dist/core/caps/DbEntryCaps.d.ts +2 -1
- package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
- package/dist/core/caps/DbEntryCaps.js +11 -17
- package/dist/core/caps/DbEntryCaps.js.map +1 -1
- package/dist/core/caps/DbNotifyCaps.d.ts +1 -1
- package/dist/core/caps/DbNotifyCaps.d.ts.map +1 -1
- package/dist/core/caps/DbNotifyCaps.js +3 -5
- package/dist/core/caps/DbNotifyCaps.js.map +1 -1
- package/dist/core/caps/DbProjectionCaps.js +1 -1
- package/dist/core/caps/DbProjectionCaps.js.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.d.ts +1 -1
- package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.js +5 -7
- package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts +0 -2
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +4 -20
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/env-catalog.d.ts +28 -0
- package/dist/core/env-catalog.d.ts.map +1 -0
- package/dist/core/env-catalog.js +99 -0
- package/dist/core/env-catalog.js.map +1 -0
- package/dist/core/env-defaults.d.ts.map +1 -1
- package/dist/core/env-defaults.js +4 -2
- package/dist/core/env-defaults.js.map +1 -1
- package/dist/core/file-materialization.d.ts +4 -1
- package/dist/core/file-materialization.d.ts.map +1 -1
- package/dist/core/file-materialization.js +15 -1
- package/dist/core/file-materialization.js.map +1 -1
- package/dist/core/fork.d.ts +1 -6
- package/dist/core/fork.d.ts.map +1 -1
- package/dist/core/fork.js +9 -153
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +162 -185
- package/dist/core/git-env.d.ts +1 -0
- package/dist/core/git-env.d.ts.map +1 -1
- package/dist/core/git-env.js +39 -2
- package/dist/core/git-env.js.map +1 -1
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js +64 -48
- package/dist/core/git-membership.js.map +1 -1
- package/dist/core/git-state.d.ts.map +1 -1
- package/dist/core/git-state.js +26 -20
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/glob_match.d.ts +4 -0
- package/dist/core/glob_match.d.ts.map +1 -0
- package/dist/core/glob_match.js +7 -0
- package/dist/core/glob_match.js.map +1 -0
- package/dist/core/maintenance.sql +6 -0
- package/dist/core/mutation-types.d.ts +7 -28
- package/dist/core/mutation-types.d.ts.map +1 -1
- package/dist/core/operation-target-groups.d.ts.map +1 -1
- package/dist/core/operation-target-groups.js +2 -1
- package/dist/core/operation-target-groups.js.map +1 -1
- package/dist/core/packet-inject.d.ts.map +1 -1
- package/dist/core/packet-inject.js +2 -3
- package/dist/core/packet-inject.js.map +1 -1
- package/dist/core/packet-wire.d.ts +8 -6
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +381 -388
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +1 -1
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +5 -12
- package/dist/core/plurnk-uri.js.map +1 -1
- package/dist/core/scheme-types.d.ts +3 -3
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/scheme-types.js.map +1 -1
- package/dist/core/sha256.d.ts +4 -0
- package/dist/core/sha256.d.ts.map +1 -0
- package/dist/core/sha256.js +6 -0
- package/dist/core/sha256.js.map +1 -0
- package/dist/core/teaching.js +1 -1
- package/dist/core/teaching.js.map +1 -1
- package/dist/core/turn-scheduler.d.ts.map +1 -1
- package/dist/core/turn-scheduler.js +5 -18
- package/dist/core/turn-scheduler.js.map +1 -1
- package/dist/core/turn-signals.d.ts +0 -6
- package/dist/core/turn-signals.d.ts.map +1 -1
- package/dist/core/turn-signals.js +1 -7
- package/dist/core/turn-signals.js.map +1 -1
- package/dist/core/worker-ops.sql +15 -22
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js +18 -2
- package/dist/core/workspace-settings.js.map +1 -1
- package/dist/core/workspace-settings.sql +6 -0
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +30 -91
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/DigestRender.d.ts +1 -0
- package/dist/digest/DigestRender.d.ts.map +1 -1
- package/dist/digest/DigestRender.js +58 -62
- package/dist/digest/DigestRender.js.map +1 -1
- package/dist/digest/digest-rows.d.ts +16 -32
- package/dist/digest/digest-rows.d.ts.map +1 -1
- package/dist/digest/digest.sql +54 -20
- package/dist/schemes/Exec.d.ts +6 -12
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +318 -215
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecOutputScheme.d.ts +8 -6
- package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
- package/dist/schemes/ExecOutputScheme.js +33 -61
- package/dist/schemes/ExecOutputScheme.js.map +1 -1
- package/dist/schemes/ExecScheduler.js +2 -2
- package/dist/schemes/ExecScheduler.js.map +1 -1
- package/dist/schemes/ExecutionInput.d.ts +12 -0
- package/dist/schemes/ExecutionInput.d.ts.map +1 -0
- package/dist/schemes/ExecutionInput.js +94 -0
- package/dist/schemes/ExecutionInput.js.map +1 -0
- package/dist/schemes/File.d.ts +5 -2
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +62 -91
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +84 -79
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Log.sql +183 -15
- package/dist/schemes/Prompt.d.ts.map +1 -1
- package/dist/schemes/Prompt.js +3 -12
- package/dist/schemes/Prompt.js.map +1 -1
- package/dist/schemes/QuestionTool.d.ts +5 -0
- package/dist/schemes/QuestionTool.d.ts.map +1 -1
- package/dist/schemes/QuestionTool.js +7 -15
- package/dist/schemes/QuestionTool.js.map +1 -1
- package/dist/schemes/Skill.d.ts +12 -7
- package/dist/schemes/Skill.d.ts.map +1 -1
- package/dist/schemes/Skill.js +149 -21
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/TurnSource.d.ts +12 -0
- package/dist/schemes/TurnSource.d.ts.map +1 -0
- package/dist/schemes/TurnSource.js +117 -0
- package/dist/schemes/TurnSource.js.map +1 -0
- package/dist/schemes/Worker.d.ts +3 -3
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +61 -208
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-crud.d.ts +12 -15
- package/dist/schemes/_entry-crud.d.ts.map +1 -1
- package/dist/schemes/_entry-crud.js +63 -63
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +159 -45
- package/dist/schemes/_entry-find.d.ts +1 -3
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +111 -112
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +22 -14
- package/dist/schemes/_entry-fts.d.ts +14 -0
- package/dist/schemes/_entry-fts.d.ts.map +1 -0
- package/dist/schemes/_entry-fts.js +82 -0
- package/dist/schemes/_entry-fts.js.map +1 -0
- package/dist/schemes/_entry-fts.sql +31 -0
- package/dist/schemes/_entry-graph.d.ts.map +1 -1
- package/dist/schemes/_entry-graph.js +6 -14
- package/dist/schemes/_entry-graph.js.map +1 -1
- package/dist/schemes/_entry-graph.sql +29 -44
- package/dist/schemes/_entry-manifest.d.ts +2 -1
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +20 -26
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-manifest.sql +26 -0
- package/dist/schemes/_entry-ops.d.ts +3 -5
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +30 -43
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_entry-ops.sql +5 -6
- package/dist/schemes/_entry-readable.d.ts +8 -0
- package/dist/schemes/_entry-readable.d.ts.map +1 -0
- package/dist/schemes/_entry-readable.js +38 -0
- package/dist/schemes/_entry-readable.js.map +1 -0
- package/dist/schemes/_entry-send.d.ts +1 -1
- package/dist/schemes/_entry-send.d.ts.map +1 -1
- package/dist/schemes/_entry-send.js +3 -3
- package/dist/schemes/_entry-send.js.map +1 -1
- package/dist/schemes/_search-index.d.ts +5 -3
- package/dist/schemes/_search-index.d.ts.map +1 -1
- package/dist/schemes/_search-index.js +169 -160
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/schemes/_search-index.sql +47 -0
- package/dist/schemes/exec-abort.js +1 -1
- package/dist/schemes/exec-abort.js.map +1 -1
- package/dist/schemes/exec-env.d.ts +3 -0
- package/dist/schemes/exec-env.d.ts.map +1 -1
- package/dist/schemes/exec-env.js +66 -15
- package/dist/schemes/exec-env.js.map +1 -1
- package/dist/schemes/exec-runtime.d.ts +1 -1
- package/dist/schemes/exec-runtime.d.ts.map +1 -1
- package/dist/schemes/exec-runtime.js +1 -1
- package/dist/schemes/exec-runtime.js.map +1 -1
- package/dist/server/ClientReads.d.ts +2 -2
- package/dist/server/ClientReads.d.ts.map +1 -1
- package/dist/server/ClientReads.js +7 -9
- package/dist/server/ClientReads.js.map +1 -1
- package/dist/server/Daemon.d.ts +15 -21
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +165 -168
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +29 -22
- package/dist/server/DaemonModule.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.d.ts +8 -21
- package/dist/server/DrainSupervisor.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.js +278 -306
- package/dist/server/DrainSupervisor.js.map +1 -1
- package/dist/server/EnvFunctionality.d.ts +43 -0
- package/dist/server/EnvFunctionality.d.ts.map +1 -0
- package/dist/server/EnvFunctionality.js +194 -0
- package/dist/server/EnvFunctionality.js.map +1 -0
- package/dist/server/Functionality.d.ts +12 -11
- package/dist/server/Functionality.d.ts.map +1 -1
- package/dist/server/Functionality.js +279 -142
- package/dist/server/Functionality.js.map +1 -1
- package/dist/server/FunctionalityManager.d.ts +5 -5
- package/dist/server/FunctionalityManager.d.ts.map +1 -1
- package/dist/server/FunctionalityManager.js +29 -57
- package/dist/server/FunctionalityManager.js.map +1 -1
- package/dist/server/MembersFunctionality.d.ts +5 -4
- package/dist/server/MembersFunctionality.d.ts.map +1 -1
- package/dist/server/MembersFunctionality.js +24 -38
- package/dist/server/MembersFunctionality.js.map +1 -1
- package/dist/server/PlurnkSkill.d.ts +11 -0
- package/dist/server/PlurnkSkill.d.ts.map +1 -0
- package/dist/server/PlurnkSkill.js +41 -0
- package/dist/server/PlurnkSkill.js.map +1 -0
- package/dist/server/Retention.d.ts +25 -0
- package/dist/server/Retention.d.ts.map +1 -0
- package/dist/server/Retention.js +57 -0
- package/dist/server/Retention.js.map +1 -0
- package/dist/server/Retention.sql +59 -0
- package/dist/server/ServiceModules.d.ts +5 -0
- package/dist/server/ServiceModules.d.ts.map +1 -0
- package/dist/server/ServiceModules.js +10 -0
- package/dist/server/ServiceModules.js.map +1 -0
- package/dist/server/SkillsFunctionality.d.ts +14 -19
- package/dist/server/SkillsFunctionality.d.ts.map +1 -1
- package/dist/server/SkillsFunctionality.js +102 -106
- package/dist/server/SkillsFunctionality.js.map +1 -1
- package/dist/server/WorkerModelResolver.d.ts +4 -0
- package/dist/server/WorkerModelResolver.d.ts.map +1 -1
- package/dist/server/WorkerModelResolver.js +72 -39
- package/dist/server/WorkerModelResolver.js.map +1 -1
- package/dist/server/WorkspaceCapabilities.d.ts +21 -0
- package/dist/server/WorkspaceCapabilities.d.ts.map +1 -0
- package/dist/server/{WorkerCapabilities.js → WorkspaceCapabilities.js} +40 -40
- package/dist/server/WorkspaceCapabilities.js.map +1 -0
- package/dist/server/WorkspaceResidency.d.ts +38 -0
- package/dist/server/WorkspaceResidency.d.ts.map +1 -0
- package/dist/server/WorkspaceResidency.js +226 -0
- package/dist/server/WorkspaceResidency.js.map +1 -0
- package/dist/server/client-input.d.ts +1 -4
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +5 -46
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +4 -22
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +66 -43
- package/dist/server/envelope.d.ts +8 -1
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +9 -19
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +49 -13
- package/dist/server/lifecycle-recovery.sql +18 -20
- package/dist/server/logEntry.d.ts +1 -1
- package/dist/server/logEntry.d.ts.map +1 -1
- package/dist/server/logEntry.js +4 -1
- package/dist/server/logEntry.js.map +1 -1
- package/dist/server/logEntry.sql +25 -1
- package/dist/server/loopDocs.d.ts +2 -2
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +38 -31
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/loopDocs.sql +1 -3
- package/dist/server/model-catalog.d.ts.map +1 -1
- package/dist/server/model-catalog.js +2 -1
- package/dist/server/model-catalog.js.map +1 -1
- package/dist/server/model-route.d.ts +1 -1
- package/dist/server/model-route.d.ts.map +1 -1
- package/dist/server/model-route.js +4 -2
- package/dist/server/model-route.js.map +1 -1
- package/dist/server/seam-entry-read.sql +3 -4
- package/dist/server/seam-loop.sql +2 -9
- package/dist/server/workspace-capabilities.sql +64 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +21 -18
- package/dist/service.js.map +1 -1
- package/docs/env.md +55 -0
- package/docs/members.md +83 -0
- package/docs/skills.md +50 -0
- package/migrations/001_workspaces.sql +53 -0
- package/migrations/002_workers.sql +198 -0
- package/migrations/003_loops.sql +326 -0
- package/migrations/004_inference.sql +401 -0
- package/migrations/005_entries.sql +215 -0
- package/migrations/006_log.sql +581 -0
- package/migrations/007_subscriptions.sql +175 -0
- package/migrations/008_interactions.sql +29 -0
- package/package.json +44 -41
- package/digest-sql/channel-dispositions/dispositions.sql +0 -15
- package/digest-sql/channel-state/state.sql +0 -6
- package/digest-sql/curation/curation.sql +0 -6
- package/digest-sql/derivations/derivations.sql +0 -4
- package/digest-sql/embeddings/embeddings.sql +0 -4
- package/digest-sql/entry-dispositions/dispositions.sql +0 -15
- package/digest-sql/entry-state/state.sql +0 -6
- package/digest-sql/token-counts/token-counts.sql +0 -2
- package/dist/core/EmbeddingCall.d.ts +0 -23
- package/dist/core/EmbeddingCall.d.ts.map +0 -1
- package/dist/core/EmbeddingCall.js +0 -149
- package/dist/core/EmbeddingCall.js.map +0 -1
- package/dist/core/OverflowTurn.d.ts +0 -11
- package/dist/core/OverflowTurn.d.ts.map +0 -1
- package/dist/core/OverflowTurn.js +0 -80
- package/dist/core/OverflowTurn.js.map +0 -1
- package/dist/core/Owner.d.ts +0 -8
- package/dist/core/Owner.d.ts.map +0 -1
- package/dist/core/Owner.js +0 -46
- package/dist/core/Owner.js.map +0 -1
- package/dist/core/SendBroadcastHandler.d.ts.map +0 -1
- package/dist/core/SendBroadcastHandler.js +0 -159
- package/dist/core/SendBroadcastHandler.js.map +0 -1
- package/dist/core/VectorPump.d.ts +0 -28
- package/dist/core/VectorPump.d.ts.map +0 -1
- package/dist/core/VectorPump.js +0 -130
- package/dist/core/VectorPump.js.map +0 -1
- package/dist/core/owner.sql +0 -11
- package/dist/core/worker-settings.d.ts +0 -10
- package/dist/core/worker-settings.d.ts.map +0 -1
- package/dist/core/worker-settings.js +0 -53
- package/dist/core/worker-settings.js.map +0 -1
- package/dist/schemes/_entry-chunk.d.ts +0 -14
- package/dist/schemes/_entry-chunk.d.ts.map +0 -1
- package/dist/schemes/_entry-chunk.js +0 -165
- package/dist/schemes/_entry-chunk.js.map +0 -1
- package/dist/schemes/_entry-semantic.d.ts +0 -63
- package/dist/schemes/_entry-semantic.d.ts.map +0 -1
- package/dist/schemes/_entry-semantic.js +0 -299
- package/dist/schemes/_entry-semantic.js.map +0 -1
- package/dist/schemes/_entry-semantic.sql +0 -99
- package/dist/schemes/cosine.d.ts +0 -4
- package/dist/schemes/cosine.d.ts.map +0 -1
- package/dist/schemes/cosine.js +0 -9
- package/dist/schemes/cosine.js.map +0 -1
- package/dist/server/WorkerCapabilities.d.ts +0 -21
- package/dist/server/WorkerCapabilities.d.ts.map +0 -1
- package/dist/server/WorkerCapabilities.js.map +0 -1
- package/dist/server/WorkerResidency.d.ts +0 -40
- package/dist/server/WorkerResidency.d.ts.map +0 -1
- package/dist/server/WorkerResidency.js +0 -283
- package/dist/server/WorkerResidency.js.map +0 -1
- package/dist/server/seam-log-read.sql +0 -21
- package/dist/server/worker-capabilities.sql +0 -28
- package/migrations/001_schema.sql +0 -2207
package/dist/core/StrikeRail.js
CHANGED
|
@@ -1,93 +1,35 @@
|
|
|
1
1
|
import { createHash } from "node:crypto";
|
|
2
|
-
import {
|
|
3
|
-
//
|
|
4
|
-
//
|
|
5
|
-
//
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
// not failures: probing a path that doesn't exist (404), a line
|
|
9
|
-
// range that doesn't exist (416), or a capability a scheme lacks (501) is how discovery
|
|
10
|
-
// works — striking them prices caution into the motions we most want (range-reads ARE
|
|
11
|
-
// the surgical behavior under budget pressure). One simple set, evenly applied.
|
|
12
|
-
// 409 is SOFT here because Engine accounts for a refused final disposition
|
|
13
|
-
// through steerStruck ({§engine-rails}). Counting that raw status as well would
|
|
14
|
-
// double-count one ruling; other 409 outcomes remain soft. The cycle detector
|
|
15
|
-
// remains an independent backstop. EXEC outcomes are soft independently of
|
|
16
|
-
// status: executor errors remain evidence, not PLURNK contract violations — and so
|
|
17
|
-
// is the same evidence wherever it surfaces: a failed command's completion READ
|
|
18
|
-
// ({§exec-stream}) or the model's own READ of that stream carries an `executor/*`
|
|
19
|
-
// problem identity and never strikes (#425 F1). Structural violations do strike,
|
|
20
|
-
// by ruling: six in a row is a degenerated run at the weak end of competence.
|
|
21
|
-
const SOFT_FAILURE_STATUSES = new Set([404, 409, 416, 501]);
|
|
2
|
+
import { isExecutionOp } from "@plurnk/plurnk-contracts";
|
|
3
|
+
// {§engine-rails}: discovery misses and not-ready results are soft, and no answer to a TASK claim strikes
|
|
4
|
+
// (a completion joins live work, {§completion-joins-live-work}; a claim over settled results
|
|
5
|
+
// defers, {§completion-defers-to-results}). Executor evidence is soft wherever it surfaces,
|
|
6
|
+
// including a completion READ ({§exec-stream}).
|
|
7
|
+
const SOFT_FAILURE_STATUSES = new Set([404, 409, 416, 425, 501]);
|
|
22
8
|
const EXECUTOR_EVIDENCE_PREFIX = "https://problems.plurnk.xyz/executor/";
|
|
23
9
|
const isExecutorEvidence = ({ problemType }) => typeof problemType === "string" && problemType.startsWith(EXECUTOR_EVIDENCE_PREFIX);
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
// same artifact instead of progressing).
|
|
29
|
-
// - FIND/READ/KILL: body IS the search/selection pattern; varied
|
|
30
|
-
// matchers or scopes on the same target ARE different activities (the
|
|
31
|
-
// model is exploring different queries, not repeating one).
|
|
32
|
-
// - BARE: the body is the complete isolated prompt and therefore the
|
|
33
|
-
// activity identity, just as EXEC's body identifies its command —
|
|
34
|
-
// with or without a program path; the executor slot is part of the identity ({§exec-executor-slot}).
|
|
35
|
-
const fingerprintOp = (stmt) => {
|
|
36
|
-
const path = stmt.op === "COPY" || stmt.op === "MOVE" ? stmt.source.target : stmt.target;
|
|
37
|
-
const matcherDiscriminator = () => {
|
|
38
|
-
// For matcher-bearing ops, the body's `raw` (matcher source) plus
|
|
39
|
-
// any lineMarker forms the activity discriminator.
|
|
40
|
-
const parts = [];
|
|
41
|
-
const body = stmt.body;
|
|
42
|
-
if (body !== null && typeof body === "object" && typeof body.raw === "string") {
|
|
43
|
-
parts.push(`body:${bodyIdentity(body.raw)}`);
|
|
44
|
-
}
|
|
45
|
-
const lm = stmt.lineMarker;
|
|
46
|
-
if (lm !== null && lm !== undefined)
|
|
47
|
-
parts.push(`L:${lm.marks.join(",")}`);
|
|
48
|
-
return parts.length > 0 ? `|${parts.join("|")}` : "";
|
|
49
|
-
};
|
|
50
|
-
if (path === null) {
|
|
51
|
-
// Path-less ops need an activity-defining discriminator other
|
|
52
|
-
// than `target`. Picked per op so the cycle detector reflects
|
|
53
|
-
// intent rather than syntax:
|
|
54
|
-
// - EXEC: the command body IS the activity. Without a body
|
|
55
|
-
// digest, varied shell commands (find / ls / wc) collapse to
|
|
56
|
-
// one fingerprint and the detector mislabels exploration
|
|
57
|
-
// as a loop.
|
|
58
|
-
// - SEND: the status code (signal) IS the activity. Different
|
|
59
|
-
// Different SEND signals are different intentions; the same signal with
|
|
60
|
-
// different message bodies is the same termination signal.
|
|
61
|
-
if (stmt.op === "EXEC" || stmt.op === "BARE") {
|
|
62
|
-
const body = typeof stmt.body === "string" ? stmt.body : "";
|
|
63
|
-
const executor = stmt.op === "EXEC" ? `|[${stmt.executor ?? ""}]` : "";
|
|
64
|
-
return `${stmt.op}${executor}|(no-path)${body.length > 0 ? `|body:${bodyIdentity(body)}` : ""}`;
|
|
65
|
-
}
|
|
66
|
-
if (stmt.op === "SEND") {
|
|
67
|
-
return `SEND|(no-path)|status:${stmt.status ?? ""}`;
|
|
68
|
-
}
|
|
69
|
-
return `${stmt.op}|(no-path)`;
|
|
70
|
-
}
|
|
71
|
-
const base = path.kind === "url"
|
|
72
|
-
? `${stmt.op}|${renderTarget(path)}`
|
|
73
|
-
: `${stmt.op}|local:${path.raw}`;
|
|
74
|
-
if (stmt.op === "FIND" || stmt.op === "READ" || stmt.op === "KILL") {
|
|
75
|
-
return `${base}${matcherDiscriminator()}`;
|
|
76
|
-
}
|
|
77
|
-
if (stmt.op === "EXEC") {
|
|
78
|
-
const body = typeof stmt.body === "string" ? stmt.body : "";
|
|
79
|
-
return `${base}|[${stmt.executor ?? ""}]${body.length > 0 ? `|body:${bodyIdentity(body)}` : ""}`;
|
|
80
|
-
}
|
|
81
|
-
return base;
|
|
82
|
-
};
|
|
10
|
+
const SOURCE_DECORATION = new Set(["aside", "position"]);
|
|
11
|
+
const observedResult = (result) => result?.problem === undefined
|
|
12
|
+
? result
|
|
13
|
+
: { ...result, problem: Object.fromEntries(Object.entries(result.problem).filter(([key]) => key !== "instance")) };
|
|
83
14
|
// {§engine-rails} — one per-loop rail owns the consecutive strike streak and
|
|
84
15
|
// cycle history. The model sees admitted operation and engine-rail failures,
|
|
85
16
|
// never this private accounting.
|
|
86
17
|
export default class StrikeRail {
|
|
87
|
-
//
|
|
88
|
-
//
|
|
89
|
-
|
|
90
|
-
|
|
18
|
+
// {§engine-cycle-evidence}: compare operational inputs and observed results,
|
|
19
|
+
// not an interpretation of the model's intent. Optional results support the
|
|
20
|
+
// syntax-only Engine fingerprint helper; admitted turns always supply them.
|
|
21
|
+
static fingerprintTurn(ops, results) {
|
|
22
|
+
if (results !== undefined && results.length !== ops.length) {
|
|
23
|
+
throw new Error("cycle evidence requires one result per executed operation");
|
|
24
|
+
}
|
|
25
|
+
const activity = ops.flatMap((statement, index) => {
|
|
26
|
+
const operation = Object.fromEntries(Object.entries(statement).filter(([key]) => !SOURCE_DECORATION.has(key)));
|
|
27
|
+
return [[operation, observedResult(results?.[index])]];
|
|
28
|
+
});
|
|
29
|
+
const canonical = JSON.stringify(activity, (_key, value) => value !== null && typeof value === "object" && !Array.isArray(value)
|
|
30
|
+
? Object.fromEntries(Object.keys(value).sort().map((key) => [key, value[key]]))
|
|
31
|
+
: value);
|
|
32
|
+
return createHash("sha256").update(canonical).digest("hex");
|
|
91
33
|
}
|
|
92
34
|
// {§engine-rails} cycle detector. For each candidate period k in [1, maxCyclePeriod],
|
|
93
35
|
// check whether the last k*minCycles entries form minCycles repetitions of the
|
|
@@ -113,45 +55,52 @@ export default class StrikeRail {
|
|
|
113
55
|
}
|
|
114
56
|
return { detected: false };
|
|
115
57
|
}
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
58
|
+
#db;
|
|
59
|
+
constructor(db) {
|
|
60
|
+
this.#db = db;
|
|
61
|
+
}
|
|
62
|
+
async #state(loopId) {
|
|
63
|
+
const state = await this.#db.strike_rail_state.get({ loop_id: loopId });
|
|
64
|
+
if (state === undefined)
|
|
65
|
+
throw new Error(`strike rail loop ${loopId} not found`);
|
|
66
|
+
return state;
|
|
67
|
+
}
|
|
68
|
+
// {§strikes-first-party-metadata}: provider metadata, never a model-facing counter.
|
|
69
|
+
async streak(loopId) {
|
|
70
|
+
return (await this.#state(loopId)).strike_streak;
|
|
126
71
|
}
|
|
127
|
-
// Per-turn strike accounting,
|
|
72
|
+
// Per-turn strike accounting, including exhausted frame admission.
|
|
128
73
|
// {§engine-rails} owns the complete source list and threshold semantics.
|
|
129
|
-
assess(loopId, turn) {
|
|
74
|
+
async assess(loopId, turn) {
|
|
130
75
|
// {§engine-rails}: cycle detection. Push this turn's fingerprint to
|
|
131
76
|
// history and scan for repetition patterns. Detection is intentionally
|
|
132
77
|
// not a model-facing notice; it is private engine accounting.
|
|
133
|
-
const state = this.#state
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
const
|
|
78
|
+
const state = await this.#state(loopId);
|
|
79
|
+
// The ending turn remains in its opening wait revision. A real park
|
|
80
|
+
// closes that window even if a wake already reclaimed the same drain.
|
|
81
|
+
const history = state.cycle_wait_revision === turn.waitRevision
|
|
82
|
+
? JSON.parse(state.cycle_history) : [];
|
|
83
|
+
history.push(turn.fingerprint);
|
|
84
|
+
const window = turn.minCycles * turn.maxCyclePeriod;
|
|
85
|
+
if (history.length > window)
|
|
86
|
+
history.splice(0, history.length - window);
|
|
87
|
+
const cycle = StrikeRail.detectCycle(history, turn.minCycles, turn.maxCyclePeriod);
|
|
88
|
+
const recordedFailed = turn.outcomes.some((outcome) => !isExecutionOp(outcome.op)
|
|
137
89
|
&& outcome.status >= 400
|
|
138
90
|
&& !SOFT_FAILURE_STATUSES.has(outcome.status)
|
|
139
91
|
&& !isExecutorEvidence(outcome));
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
145
|
-
|
|
146
|
-
|
|
147
|
-
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
return { cycleDetected: cycle.detected, thresholdCrossed };
|
|
152
|
-
}
|
|
153
|
-
delete(loopId) {
|
|
154
|
-
this.#state.delete(loopId);
|
|
92
|
+
// {§empty-turn} — a turn with no operation is one progress-contract strike.
|
|
93
|
+
const struck = recordedFailed || cycle.detected || turn.emptyTurn === true;
|
|
94
|
+
const streak = struck ? state.strike_streak + 1 : 0;
|
|
95
|
+
const saved = await this.#db.strike_rail_assess.run({
|
|
96
|
+
loop_id: loopId,
|
|
97
|
+
streak,
|
|
98
|
+
history: JSON.stringify(history),
|
|
99
|
+
wait_revision: turn.waitRevision,
|
|
100
|
+
});
|
|
101
|
+
if (saved.changes !== 1)
|
|
102
|
+
throw new Error(`strike rail loop ${loopId} disappeared during assessment`);
|
|
103
|
+
return { cycleDetected: cycle.detected, thresholdCrossed: struck && streak >= turn.maxStrikes };
|
|
155
104
|
}
|
|
156
105
|
}
|
|
157
106
|
//# sourceMappingURL=StrikeRail.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StrikeRail.js","sourceRoot":"","sources":["../../src/core/StrikeRail.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"StrikeRail.js","sourceRoot":"","sources":["../../src/core/StrikeRail.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
-- {§loop-rail-continuity}: StrikeRail owns private per-loop assessment state.
|
|
2
|
+
|
|
3
|
+
-- PREP: strike_rail_state
|
|
4
|
+
SELECT strike_streak, cycle_history, cycle_wait_revision
|
|
5
|
+
FROM loops WHERE id = $loop_id;
|
|
6
|
+
|
|
7
|
+
-- PREP: strike_rail_assess
|
|
8
|
+
UPDATE loops
|
|
9
|
+
SET strike_streak = $streak,
|
|
10
|
+
cycle_history = $history,
|
|
11
|
+
cycle_wait_revision = $wait_revision
|
|
12
|
+
WHERE id = $loop_id;
|
|
@@ -4,7 +4,7 @@ export interface TerminalPresentation {
|
|
|
4
4
|
readonly mimetype: string;
|
|
5
5
|
}
|
|
6
6
|
export default class TerminalResult {
|
|
7
|
-
static success(content: string | null): SchemeResult;
|
|
7
|
+
static success(content: string | null, mimetype?: string): SchemeResult;
|
|
8
8
|
static assert(value: unknown, subject: string): SchemeResult;
|
|
9
9
|
static parse(serialized: string, subject: string): SchemeResult;
|
|
10
10
|
static present(result: SchemeResult, options?: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalResult.d.ts","sourceRoot":"","sources":["../../src/core/TerminalResult.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,GAAG,YAAY,
|
|
1
|
+
{"version":3,"file":"TerminalResult.d.ts","sourceRoot":"","sources":["../../src/core/TerminalResult.ts"],"names":[],"mappings":"AAAA,OAAgB,EAAE,KAAK,YAAY,EAAE,MAAM,cAAc,CAAC;AAE1D,MAAM,WAAW,oBAAoB;IACjC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,SAAkB,GAAG,YAAY,CAI/E;IAED,MAAM,CAAC,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAM3D;IAED,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,YAAY,CAQ9D;IAED,MAAM,CAAC,OAAO,CACV,MAAM,EAAE,YAAY,EACpB,OAAO,GAAE;QACL,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;QACxB,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;KACvB,GACP,oBAAoB,GAAG,IAAI,CAuB7B;CACJ"}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import Results from "./results.js";
|
|
2
2
|
export default class TerminalResult {
|
|
3
|
-
static success(content) {
|
|
3
|
+
static success(content, mimetype = "text/markdown") {
|
|
4
4
|
return Results.assert(content === null || content.length === 0
|
|
5
5
|
? { status: 200 }
|
|
6
|
-
: { status: 200, content, mimetype
|
|
6
|
+
: { status: 200, content, mimetype });
|
|
7
7
|
}
|
|
8
8
|
static assert(value, subject) {
|
|
9
9
|
try {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TerminalResult.js","sourceRoot":"","sources":["../../src/core/TerminalResult.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,cAAc,CAAC;AAO1D,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,OAAO,CAAC,OAAsB;
|
|
1
|
+
{"version":3,"file":"TerminalResult.js","sourceRoot":"","sources":["../../src/core/TerminalResult.ts"],"names":[],"mappings":"AAAA,OAAO,OAA8B,MAAM,cAAc,CAAC;AAO1D,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,OAAO,CAAC,OAAsB,EAAE,QAAQ,GAAG,eAAe;QAC7D,OAAO,OAAO,CAAC,MAAM,CAAC,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAC1D,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE;YACjB,CAAC,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,CAAC,CAAC;IAC9C,CAAC;IAED,MAAM,CAAC,MAAM,CAAC,KAAc,EAAE,OAAe;QACzC,IAAI,CAAC;YACD,OAAO,OAAO,CAAC,MAAM,CAAC,KAAqB,CAAC,CAAC;QACjD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,2CAA2C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACtF,CAAC;IACL,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,UAAkB,EAAE,OAAe;QAC5C,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,UAAU,CAAY,CAAC;QAC/C,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,IAAI,KAAK,CAAC,GAAG,OAAO,2CAA2C,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;QACtF,CAAC;QACD,OAAO,cAAc,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAClD,CAAC;IAED,MAAM,CAAC,OAAO,CACV,MAAoB,EACpB,OAAO,GAIH,EAAE;QAEN,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;QACrC,MAAM,aAAa,GAAG,OAAO,KAAK,CAAC,OAAO,KAAK,QAAQ,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC;YAC/E,CAAC,CAAC,KAAK,CAAC,OAAO;YACf,CAAC,CAAC,IAAI,CAAC;QACX,MAAM,cAAc,GAAG,KAAK,CAAC,OAAO,EAAE,MAAM,IAAI,IAAI,CAAC;QACrD,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAM,UAAU,GAAG,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,CAAC;QAC7E,IAAI,OAAO,GAAG,aAAa,IAAI,cAAc,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,QAAQ,IAAI,EAAE,CAAC,CAAC;QAC5F,IAAI,OAAO,CAAC,YAAY,KAAK,QAAQ,EAAE,CAAC;YACpC,OAAO,GAAG,wCAAwC,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,OAAO,EAAE,EAAE,CAAC;QAClG,CAAC;QACD,IAAI,OAAO,CAAC,OAAO,KAAK,SAAS,IAAI,OAAO,CAAC,OAAO,KAAK,IAAI,EAAE,CAAC;YAC5D,OAAO,GAAG,OAAO,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,OAAO,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;QAC1F,CAAC;QACD,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,IAAI,CAAC;QACtC,OAAO;YACH,OAAO;YACP,QAAQ,EAAE,aAAa,KAAK,IAAI,IAAI,OAAO,KAAK,CAAC,QAAQ,KAAK,QAAQ;gBAClE,CAAC,CAAC,KAAK,CAAC,QAAQ;gBAChB,CAAC,CAAC,eAAe;SACxB,CAAC;IACN,CAAC;CACJ"}
|
|
@@ -3,14 +3,9 @@ export interface CalibrationSample {
|
|
|
3
3
|
readonly weight: number;
|
|
4
4
|
readonly reported: number;
|
|
5
5
|
}
|
|
6
|
-
export interface WeighedItem {
|
|
7
|
-
readonly path: string;
|
|
8
|
-
readonly tokensBody: number;
|
|
9
|
-
readonly tokensActive: number;
|
|
10
|
-
}
|
|
11
6
|
export default class TokenCalibration {
|
|
12
7
|
static factor(samples: readonly CalibrationSample[]): number;
|
|
13
8
|
static forModel(db: Db, model: string): Promise<number>;
|
|
14
|
-
static
|
|
9
|
+
static capacity(inputCapacity: number | null, factor?: number): number | null;
|
|
15
10
|
}
|
|
16
11
|
//# sourceMappingURL=TokenCalibration.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenCalibration.d.ts","sourceRoot":"","sources":["../../src/core/TokenCalibration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"TokenCalibration.d.ts","sourceRoot":"","sources":["../../src/core/TokenCalibration.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAElC,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAMD,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACjC,MAAM,CAAC,MAAM,CAAC,OAAO,EAAE,SAAS,iBAAiB,EAAE,GAAG,MAAM,CAY3D;IAED,OAAa,QAAQ,CAAC,EAAE,EAAE,EAAE,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAI5D;IAED,MAAM,CAAC,QAAQ,CAAC,aAAa,EAAE,MAAM,GAAG,IAAI,EAAE,MAAM,SAAI,GAAG,MAAM,GAAG,IAAI,CAOvE;CACJ"}
|
|
@@ -1,7 +1,6 @@
|
|
|
1
1
|
const MIN_SAMPLES = 3;
|
|
2
|
-
// {§tokenomics-calibrated-readout} —
|
|
3
|
-
//
|
|
4
|
-
// this model actually reported for its recent packets; nothing stored is rewritten.
|
|
2
|
+
// {§tokenomics-calibrated-readout} — provider capacity crosses into the stable
|
|
3
|
+
// curation ruler here. Content costs never cross in the opposite direction.
|
|
5
4
|
export default class TokenCalibration {
|
|
6
5
|
static factor(samples) {
|
|
7
6
|
if (samples.length < MIN_SAMPLES)
|
|
@@ -24,12 +23,17 @@ export default class TokenCalibration {
|
|
|
24
23
|
const samples = await db.engine_calibration_samples.all({ model });
|
|
25
24
|
return TokenCalibration.factor(samples);
|
|
26
25
|
}
|
|
27
|
-
static
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
26
|
+
static capacity(inputCapacity, factor = 1) {
|
|
27
|
+
if (!Number.isFinite(factor) || factor <= 0)
|
|
28
|
+
throw new TypeError("calibration must be a positive finite number");
|
|
29
|
+
if (inputCapacity === null)
|
|
30
|
+
return null;
|
|
31
|
+
if (!Number.isSafeInteger(inputCapacity) || inputCapacity <= 0)
|
|
32
|
+
throw new TypeError("input capacity must be a positive safe integer");
|
|
33
|
+
const capacity = Math.floor(inputCapacity / factor);
|
|
34
|
+
if (!Number.isSafeInteger(capacity) || capacity < 0)
|
|
35
|
+
throw new TypeError("curation capacity must be a non-negative safe integer");
|
|
36
|
+
return capacity;
|
|
33
37
|
}
|
|
34
38
|
}
|
|
35
39
|
//# sourceMappingURL=TokenCalibration.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"TokenCalibration.js","sourceRoot":"","sources":["../../src/core/TokenCalibration.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"TokenCalibration.js","sourceRoot":"","sources":["../../src/core/TokenCalibration.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,GAAG,CAAC,CAAC;AAEtB,+EAA+E;AAC/E,4EAA4E;AAC5E,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACjC,MAAM,CAAC,MAAM,CAAC,OAAqC;QAC/C,IAAI,OAAO,CAAC,MAAM,GAAG,WAAW;YAAE,OAAO,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,CAAC,CAAC;QACf,IAAI,QAAQ,GAAG,CAAC,CAAC;QACjB,KAAK,MAAM,MAAM,IAAI,OAAO,EAAE,CAAC;YAC3B,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;gBACjD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC;oBAAE,MAAM,IAAI,SAAS,CAAC,sBAAsB,IAAI,kCAAkC,CAAC,CAAC;YACtI,CAAC;YACD,MAAM,IAAI,MAAM,CAAC,MAAM,CAAC;YACxB,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC;QAChC,CAAC;QACD,OAAO,QAAQ,GAAG,MAAM,CAAC;IAC7B,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,EAAM,EAAE,KAAa;QACvC,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,0DAA0D,CAAC,CAAC;QACxG,MAAM,OAAO,GAAG,MAAM,EAAE,CAAC,0BAA0B,CAAC,GAAG,CAAuC,EAAE,KAAK,EAAE,CAAC,CAAC;QACzG,OAAO,gBAAgB,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IAC5C,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,aAA4B,EAAE,MAAM,GAAG,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,IAAI,MAAM,IAAI,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,8CAA8C,CAAC,CAAC;QACjH,IAAI,aAAa,KAAK,IAAI;YAAE,OAAO,IAAI,CAAC;QACxC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,aAAa,IAAI,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,gDAAgD,CAAC,CAAC;QACtI,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,aAAa,GAAG,MAAM,CAAC,CAAC;QACpD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,QAAQ,GAAG,CAAC;YAAE,MAAM,IAAI,SAAS,CAAC,uDAAuD,CAAC,CAAC;QAClI,OAAO,QAAQ,CAAC;IACpB,CAAC;CACJ"}
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
-- TokenCalibration: measured weight against reported tokens, per model.
|
|
2
|
+
|
|
3
|
+
-- PREP: engine_calibration_samples
|
|
4
|
+
-- {§tokenomics-calibrated-readout} — one model's last five settled emission responses, each pairing
|
|
5
|
+
-- the request's measured packet weight with the provider's reported prompt count.
|
|
6
|
+
-- Newest first; only rows where both figures are positive.
|
|
7
|
+
SELECT json_extract(t.packet, '$.weight') AS weight, pr.usage_input AS reported
|
|
8
|
+
FROM provider_requests pr
|
|
9
|
+
JOIN inference_calls ic ON ic.id = pr.inference_call_id
|
|
10
|
+
JOIN turns t ON t.id = ic.turn_id
|
|
11
|
+
WHERE pr.model = $model AND pr.state = 'settled' AND pr.outcome = 'response'
|
|
12
|
+
AND ic.kind = 'emission' AND pr.usage_input > 0
|
|
13
|
+
AND t.packet IS NOT NULL AND json_extract(t.packet, '$.weight') > 0
|
|
14
|
+
ORDER BY pr.id DESC
|
|
15
|
+
LIMIT 5;
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolInputSchema.d.ts","sourceRoot":"","sources":["../../src/core/ToolInputSchema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAa,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAMtE,MAAM,CAAC,OAAO,OAAO,eAAe;IAEhC,MAAM,CAAC,OAAO,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,CAUzC;IAGD,MAAM,CAAC,UAAU,CAAC,MAAM,EAAE,UAAU,GAAG,MAAM,EAAE,CAoB9C;CACJ"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
import { Validator } from "@plurnk/plurnk-contracts";
|
|
2
|
+
const TYPES = new Set(["string", "number", "integer", "boolean", "null", "object", "array"]);
|
|
3
|
+
const objectOf = (value) => typeof value === "object" && value !== null && !Array.isArray(value) ? value : {};
|
|
4
|
+
export default class ToolInputSchema {
|
|
5
|
+
// {§executor-input-schema-preview} — a shallow field list, not a schema compiler.
|
|
6
|
+
static preview(schema) {
|
|
7
|
+
const properties = objectOf(schema.properties);
|
|
8
|
+
const required = Array.isArray(schema.required) ? schema.required : [];
|
|
9
|
+
const fields = required.map((name) => {
|
|
10
|
+
const type = objectOf(properties[name]).type;
|
|
11
|
+
const declared = Array.isArray(type) ? type : [type];
|
|
12
|
+
const broad = declared.filter((value) => typeof value === "string" && TYPES.has(value));
|
|
13
|
+
return `${JSON.stringify(name)}: ${broad.length === 0 ? "unknown" : broad.join(" | ")}`;
|
|
14
|
+
});
|
|
15
|
+
return `{${fields.join(", ")}}`;
|
|
16
|
+
}
|
|
17
|
+
// Include known referenced documents verbatim. Do not inline, rewrite, or fetch schemas.
|
|
18
|
+
static references(schema) {
|
|
19
|
+
const documents = new Map();
|
|
20
|
+
if (typeof schema.$id === "string")
|
|
21
|
+
documents.set(schema.$id, schema);
|
|
22
|
+
const visit = (value) => {
|
|
23
|
+
if (typeof value !== "object" || value === null)
|
|
24
|
+
return;
|
|
25
|
+
const ref = objectOf(value).$ref;
|
|
26
|
+
if (typeof ref === "string") {
|
|
27
|
+
const id = ref.split("#", 1)[0];
|
|
28
|
+
if (!documents.has(id)) {
|
|
29
|
+
const document = Validator.schemaByRef(id);
|
|
30
|
+
if (document !== null) {
|
|
31
|
+
documents.set(id, document);
|
|
32
|
+
visit(document);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
for (const child of Object.values(value))
|
|
37
|
+
visit(child);
|
|
38
|
+
};
|
|
39
|
+
visit(schema);
|
|
40
|
+
return [...documents.values()].filter((document) => document !== schema);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=ToolInputSchema.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ToolInputSchema.js","sourceRoot":"","sources":["../../src/core/ToolInputSchema.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ToolResources.d.ts","sourceRoot":"","sources":["../../src/core/ToolResources.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"ToolResources.d.ts","sourceRoot":"","sources":["../../src/core/ToolResources.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACR,qBAAqB,EACrB,kBAAkB,EAClB,mBAAmB,EACtB,MAAM,sBAAsB,CAAC;AAG9B,MAAM,WAAW,YAAY;IACzB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,UAAU,UAAU;IAChB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,kBAAkB,CAAC;IACrC,QAAQ,CAAC,UAAU,EAAE,qBAAqB,CAAC;IAC3C,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI,CAAC;IAE9C,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,CAAC;CACnC;AAgJD,MAAM,CAAC,OAAO,OAAO,aAAa;IAC9B,MAAM,CAAC,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAG3C;IAED,MAAM,CAAC,MAAM,CAAC,MAAM,EAAE,UAAU,GAAG,YAAY,EAAE,CAwEhD;CACJ"}
|