@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
|
@@ -1,30 +1,29 @@
|
|
|
1
1
|
// Search-index materialization for every readable workspace channel. Entry
|
|
2
2
|
// channels and logs attach to the same immutable, content-addressed derivation
|
|
3
|
-
// artifacts; FTS
|
|
4
|
-
import
|
|
5
|
-
import { isMimetypeInputError } from "@plurnk/plurnk-mimetypes";
|
|
3
|
+
// artifacts; FTS and graph relationships consume them uniformly.
|
|
4
|
+
import { MimetypeDerivationError, isMimetypeInputError } from "@plurnk/plurnk-mimetypes";
|
|
6
5
|
import { createHash } from "node:crypto";
|
|
7
6
|
import { availableParallelism } from "node:os";
|
|
8
7
|
import EntryGraph from "./_entry-graph.js";
|
|
9
|
-
import
|
|
8
|
+
import EntryFts from "./_entry-fts.js";
|
|
10
9
|
import LogBody from "../core/LogBody.js";
|
|
11
10
|
import LogEntryProjection from "../core/LogEntryProjection.js";
|
|
11
|
+
import LogVisibility from "../core/LogVisibility.js";
|
|
12
12
|
import matchSearchExclusion from "./_search-exclusion.js";
|
|
13
|
-
import {
|
|
13
|
+
import { contentHash } from "../core/content-hash.js";
|
|
14
14
|
const NO_PROJECTION_IDENTITY = "projection:none";
|
|
15
15
|
export default class SearchIndex {
|
|
16
16
|
// The index materializes one immutable artifact per exact READ representation and
|
|
17
17
|
// configuration identity, then atomically attaches resource addresses to it.
|
|
18
|
-
// Cancellation leaves a building artifact unattached for retry
|
|
19
|
-
// ahead of its vectors stays lexical/vectors_pending and re-enters the pump); a typed
|
|
18
|
+
// Cancellation leaves a building artifact unattached for retry; a typed
|
|
20
19
|
// invalid-source failure is terminal and observable so
|
|
21
20
|
// one malformed specimen cannot hold workspace readiness hostage.
|
|
22
21
|
// Hash-keyed chains serialize concurrent workspace warm requests for the same
|
|
23
22
|
// artifact while distinct artifacts remain parallel.
|
|
24
23
|
static #deriveChains = new Map();
|
|
25
|
-
static async #deriveOne(ctx, r, hash,
|
|
24
|
+
static async #deriveOne(ctx, r, hash, searchExcluded, binary, callbacks = {}) {
|
|
26
25
|
const prior = SearchIndex.#deriveChains.get(hash) ?? Promise.resolve();
|
|
27
|
-
const run = prior.then(() => SearchIndex.#deriveOneUnlocked(ctx, r, hash,
|
|
26
|
+
const run = prior.then(() => SearchIndex.#deriveOneUnlocked(ctx, r, hash, searchExcluded, binary, callbacks));
|
|
28
27
|
const tail = run.catch(() => { }); // the chain survives a failed link; deriveOne's caller sees the rejection
|
|
29
28
|
SearchIndex.#deriveChains.set(hash, tail);
|
|
30
29
|
void tail.finally(() => {
|
|
@@ -33,41 +32,34 @@ export default class SearchIndex {
|
|
|
33
32
|
});
|
|
34
33
|
return run;
|
|
35
34
|
}
|
|
36
|
-
static async #deriveOneUnlocked(ctx, r, hash,
|
|
35
|
+
static async #deriveOneUnlocked(ctx, r, hash, searchExcluded, binary, callbacks) {
|
|
37
36
|
const { db, mimetypes } = ctx;
|
|
38
37
|
if (mimetypes === undefined)
|
|
39
38
|
throw new Error("deriveOne: ctx.mimetypes is required");
|
|
40
|
-
|
|
39
|
+
// Attach while the channel still denotes the derived representation: by its stored identity
|
|
40
|
+
// when it has one, by the exact body otherwise ({§derivation-dedup-parallel}).
|
|
41
|
+
const attach = async (content) => {
|
|
41
42
|
if (r.attachment === "entry-channel") {
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
43
|
+
const identity = { entry_id: r.id, scheme: r.scheme, authority: r.authority, pathname: r.pathname, channel: r.channel, mimetype: r.mimetype, deep_hash: hash };
|
|
44
|
+
if (r.hashed) {
|
|
45
|
+
await db.crud_attach_channel_derivation_by_hash.run({ ...identity, content_hash: r.contentHash });
|
|
46
|
+
return;
|
|
47
|
+
}
|
|
48
|
+
const body = content ?? await r.body();
|
|
49
|
+
if (body === null)
|
|
50
|
+
return;
|
|
51
|
+
await db.crud_attach_channel_derivation.run({ ...identity, content: body });
|
|
52
|
+
}
|
|
53
|
+
else if (r.attachment === "log") {
|
|
54
|
+
await db.log_set_deep_hash.run({ log_entry_id: r.id, deep_hash: hash, folded: r.folded });
|
|
52
55
|
}
|
|
53
56
|
else {
|
|
54
|
-
await db.
|
|
57
|
+
await db.turn_source_attach_derivation.run({ turn_id: r.id, kind: r.kind, deep_hash: hash });
|
|
55
58
|
}
|
|
56
59
|
};
|
|
57
60
|
let artifact = await db.derivation_get.get({ deep_hash: hash });
|
|
58
61
|
if (artifact?.state === "complete") {
|
|
59
|
-
await attach();
|
|
60
|
-
// {§derivation-vectors-background} — an artifact an earlier pass (or process) left
|
|
61
|
-
// owing vectors re-enters the pump with the extents its graph already holds.
|
|
62
|
-
if (pump !== undefined && owesVectors(artifact)) {
|
|
63
|
-
const extents = await db.graph_defs_extents.all({ derivation_id: artifact.id });
|
|
64
|
-
pump.enqueue(semanticPlan, [{
|
|
65
|
-
derivationId: artifact.id,
|
|
66
|
-
hash,
|
|
67
|
-
content: r.content,
|
|
68
|
-
symbols: extents.map(({ line, end_line }) => ({ line, endLine: end_line ?? undefined })),
|
|
69
|
-
}]);
|
|
70
|
-
}
|
|
62
|
+
await attach(null);
|
|
71
63
|
return;
|
|
72
64
|
}
|
|
73
65
|
if (artifact === undefined) {
|
|
@@ -76,6 +68,11 @@ export default class SearchIndex {
|
|
|
76
68
|
if (artifact === undefined)
|
|
77
69
|
throw new Error(`failed to create derivation artifact ${hash}`);
|
|
78
70
|
const derivationId = artifact.id;
|
|
71
|
+
// The body crosses into the process here and nowhere earlier; a representation that moved
|
|
72
|
+
// on since it was judged leaves the artifact building for the next pass to judge afresh.
|
|
73
|
+
const content = await r.body();
|
|
74
|
+
if (content === null)
|
|
75
|
+
return;
|
|
79
76
|
let parseIssues = null;
|
|
80
77
|
let summary = null;
|
|
81
78
|
const attachComplete = async (disposition, reason = null) => {
|
|
@@ -86,30 +83,38 @@ export default class SearchIndex {
|
|
|
86
83
|
parse_issues: parseIssues,
|
|
87
84
|
summary,
|
|
88
85
|
});
|
|
89
|
-
await attach();
|
|
86
|
+
await attach(content);
|
|
90
87
|
};
|
|
91
|
-
const wantGraph =
|
|
88
|
+
const wantGraph = content.length > 0 && !binary;
|
|
92
89
|
if (!wantGraph) {
|
|
93
90
|
await EntryGraph.populateFrom(db, derivationId, [], []);
|
|
94
|
-
await
|
|
95
|
-
await
|
|
96
|
-
await attachComplete(searchExcluded === undefined ? "nonsemantic" : "excluded", searchExcluded ?? (r.content.length === 0 ? "empty" : "binary"));
|
|
91
|
+
await EntryFts.index(db, derivationId, "");
|
|
92
|
+
await attachComplete(searchExcluded === undefined ? "unsearchable" : "excluded", searchExcluded ?? (content.length === 0 ? "empty" : "binary"));
|
|
97
93
|
return;
|
|
98
94
|
}
|
|
99
95
|
let result;
|
|
100
96
|
try {
|
|
101
|
-
result = await mimetypes.process({ content
|
|
97
|
+
result = await mimetypes.process({ content, hint: r.mimetype, path: r.pathname }, {
|
|
102
98
|
channels: searchExcluded === undefined ? ["symbols", "references"] : [],
|
|
103
99
|
summary: true,
|
|
104
100
|
});
|
|
105
101
|
}
|
|
106
102
|
catch (error) {
|
|
107
|
-
if (ctx.signal?.aborted === true
|
|
103
|
+
if (ctx.signal?.aborted === true)
|
|
104
|
+
throw error;
|
|
105
|
+
// {§derivation-member-failure}: a typed invalid-source rejection and a handler's own
|
|
106
|
+
// defect on this one member ({§mimetype-derivation-evidence}) are both that member's
|
|
107
|
+
// terminal disposition, never the pass's. Anything else thrown here — a grammar not
|
|
108
|
+
// installed, a contract violation outside the handler — stays fatal.
|
|
109
|
+
const handlerDefect = error instanceof MimetypeDerivationError;
|
|
110
|
+
if (!handlerDefect && !isMimetypeInputError(error))
|
|
108
111
|
throw error;
|
|
109
112
|
await EntryGraph.populateFrom(db, derivationId, [], []);
|
|
110
|
-
await
|
|
111
|
-
|
|
112
|
-
await attachComplete(searchExcluded === undefined ? "failed" : "excluded",
|
|
113
|
+
await EntryFts.index(db, derivationId, "");
|
|
114
|
+
const reason = searchExcluded ?? SearchIndex.#failureReason(error);
|
|
115
|
+
await attachComplete(searchExcluded === undefined ? "failed" : "excluded", reason);
|
|
116
|
+
if (handlerDefect && searchExcluded === undefined)
|
|
117
|
+
callbacks.onMemberFailure?.({ path: r.pathname, reason });
|
|
113
118
|
return;
|
|
114
119
|
}
|
|
115
120
|
ctx.signal?.throwIfAborted();
|
|
@@ -119,45 +124,18 @@ export default class SearchIndex {
|
|
|
119
124
|
callbacks.onNotice?.(notice);
|
|
120
125
|
if (searchExcluded !== undefined) {
|
|
121
126
|
await EntryGraph.populateFrom(db, derivationId, [], []);
|
|
122
|
-
await
|
|
123
|
-
await EntrySemantic.indexEmbedding(db, derivationId, [], undefined);
|
|
127
|
+
await EntryFts.index(db, derivationId, "");
|
|
124
128
|
await attachComplete("excluded", searchExcluded);
|
|
125
129
|
return;
|
|
126
130
|
}
|
|
127
|
-
// Persistence
|
|
131
|
+
// Persistence operations are outside typed input-failure
|
|
128
132
|
// containment. An internal/operational failure leaves the artifact
|
|
129
133
|
// building and propagates so a later warm can retry; it is never
|
|
130
134
|
// mislabeled as one malformed resource.
|
|
131
135
|
await EntryGraph.populateFrom(db, derivationId, result.symbols ?? [], result.references ?? []);
|
|
132
|
-
//
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
await EntrySemantic.indexFts(db, derivationId, semanticSource);
|
|
136
|
-
// Size rejection is vector-only: membership, READ, graph, and FTS remain exhaustive.
|
|
137
|
-
if (EntrySemantic.embedSizeRejection(semanticSource) !== null) {
|
|
138
|
-
await EntrySemantic.indexEmbedding(db, derivationId, [], undefined);
|
|
139
|
-
await attachComplete("lexical", "max_embed_size");
|
|
140
|
-
return;
|
|
141
|
-
}
|
|
142
|
-
if (semanticPlan.info === null) {
|
|
143
|
-
await EntrySemantic.indexEmbedding(db, derivationId, [], undefined);
|
|
144
|
-
await attachComplete("lexical", "embedder_unavailable");
|
|
145
|
-
return;
|
|
146
|
-
}
|
|
147
|
-
// {§derivation-vectors-background} — attach now, vectors behind: the artifact is lexical
|
|
148
|
-
// until the pump lands its chunks and upgrades the disposition.
|
|
149
|
-
if (pump !== undefined) {
|
|
150
|
-
await EntrySemantic.indexEmbedding(db, derivationId, [], undefined);
|
|
151
|
-
await attachComplete("lexical", VECTORS_PENDING_REASON);
|
|
152
|
-
pump.enqueue(semanticPlan, [{ derivationId, hash, content: semanticSource, symbols: result.symbols ?? [] }]);
|
|
153
|
-
return;
|
|
154
|
-
}
|
|
155
|
-
const { chunks, model } = await EntrySemantic.deriveEmbeddings(semanticPlan, (texts, options) => EmbeddingCall.documents(ctx.db, {
|
|
156
|
-
workspaceId: ctx.workspaceId,
|
|
157
|
-
turnId: ctx.turnId > 0 ? ctx.turnId : null,
|
|
158
|
-
}, semanticPlan.mimetypes, semanticPlan.info.model, texts, options), semanticSource, result.symbols ?? [], undefined, undefined, ctx.signal, callbacks.onProgress);
|
|
159
|
-
await EntrySemantic.indexEmbedding(db, derivationId, chunks, model);
|
|
160
|
-
await attachComplete(chunks.length > 0 ? "vector" : "nonsemantic", chunks.length > 0 ? null : "no_embedding_content");
|
|
136
|
+
// Index exactly the addressed READ representation.
|
|
137
|
+
await EntryFts.index(db, derivationId, content);
|
|
138
|
+
await attachComplete("indexed");
|
|
161
139
|
}
|
|
162
140
|
static progressHeartbeatMs() {
|
|
163
141
|
const progressHeartbeatMs = Number(process.env.PLURNK_SERVICE_DERIVE_PROGRESS_HEARTBEAT_MS);
|
|
@@ -170,9 +148,7 @@ export default class SearchIndex {
|
|
|
170
148
|
const rawConcurrency = process.env.PLURNK_SERVICE_DERIVE_CONCURRENCY;
|
|
171
149
|
const cores = availableParallelism();
|
|
172
150
|
const configuredConcurrency = rawConcurrency === undefined || rawConcurrency.trim() === ""
|
|
173
|
-
//
|
|
174
|
-
// A square-root fan-out keeps that pool fed without simultaneously
|
|
175
|
-
// materializing one enormous symbol/chunk graph per host core.
|
|
151
|
+
// Bound concurrently materialized parser graphs independently of SQL readers.
|
|
176
152
|
? Math.max(1, Math.floor(Math.sqrt(cores)))
|
|
177
153
|
: Number(rawConcurrency);
|
|
178
154
|
if (!Number.isInteger(configuredConcurrency) || configuredConcurrency === 0 || configuredConcurrency < -1) {
|
|
@@ -180,18 +156,16 @@ export default class SearchIndex {
|
|
|
180
156
|
}
|
|
181
157
|
return configuredConcurrency === -1 ? cores : configuredConcurrency;
|
|
182
158
|
}
|
|
183
|
-
//
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
if (
|
|
187
|
-
return
|
|
188
|
-
|
|
189
|
-
|
|
190
|
-
|
|
159
|
+
// The exact reason for a member's `failed` row: the handler's invocation context plus its
|
|
160
|
+
// original cause, or the typed rejection's own message.
|
|
161
|
+
static #failureReason(error) {
|
|
162
|
+
if (!(error instanceof MimetypeDerivationError))
|
|
163
|
+
return error instanceof Error ? error.message : String(error);
|
|
164
|
+
const cause = error.cause;
|
|
165
|
+
const detail = cause instanceof Error ? `${cause.name}: ${cause.message}` : String(cause);
|
|
166
|
+
return `${error.message} ${detail}`;
|
|
191
167
|
}
|
|
192
|
-
|
|
193
|
-
// embedding to it; without one the pass derives vectors inline.
|
|
194
|
-
static async maintain(ctx, pump) {
|
|
168
|
+
static async maintain(ctx) {
|
|
195
169
|
const { db, workspaceId, mimetypes } = ctx;
|
|
196
170
|
if (mimetypes === undefined)
|
|
197
171
|
throw new Error("SearchIndex.maintain: ctx.mimetypes is required");
|
|
@@ -200,15 +174,25 @@ export default class SearchIndex {
|
|
|
200
174
|
// Validate global graph persistence tuning before resource-local
|
|
201
175
|
// derivation containment can classify a handler failure.
|
|
202
176
|
EntryGraph.storeBatch();
|
|
203
|
-
|
|
177
|
+
// {§derivation-dedup-parallel} — entry channels are judged from stored identity: the
|
|
178
|
+
// candidate statement carries no body, and a body crosses into the process only for a
|
|
179
|
+
// derivation that runs, or for a channel with no stored identity (a stream), which must be
|
|
180
|
+
// read to be judged. Log rows and turn sources still arrive whole.
|
|
181
|
+
let acquiredBytes = 0;
|
|
182
|
+
const candidates = await db.search_index_entry_candidates.all({ workspace_id: workspaceId });
|
|
183
|
+
const acquire = async (entryId, channel, storedHash) => {
|
|
184
|
+
const row = await db.search_index_entry_body.get({ entry_id: entryId, channel, content_hash: storedHash });
|
|
185
|
+
if (row === undefined)
|
|
186
|
+
return null;
|
|
187
|
+
acquiredBytes += row.content.length;
|
|
188
|
+
return row.content;
|
|
189
|
+
};
|
|
204
190
|
const logRows = await db.log_derivation_rows.all({ workspace_id: workspaceId });
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
const semanticPlan = await EntrySemantic.prepareEmbeddings(mimetypes);
|
|
208
|
-
const deepCfgSig = semanticPlan.signature;
|
|
191
|
+
for (const row of logRows)
|
|
192
|
+
acquiredBytes += row.tx.length + row.rx.length;
|
|
209
193
|
const projectionIdentities = new Map();
|
|
210
|
-
const projectionIdentityFor = (mimetype,
|
|
211
|
-
if (searchExcluded !== undefined ||
|
|
194
|
+
const projectionIdentityFor = (mimetype, contentLength, binary, searchExcluded) => {
|
|
195
|
+
if (searchExcluded !== undefined || contentLength === 0 || binary) {
|
|
212
196
|
return Promise.resolve(NO_PROJECTION_IDENTITY);
|
|
213
197
|
}
|
|
214
198
|
const cached = projectionIdentities.get(mimetype);
|
|
@@ -218,88 +202,109 @@ export default class SearchIndex {
|
|
|
218
202
|
projectionIdentities.set(mimetype, identity);
|
|
219
203
|
return identity;
|
|
220
204
|
};
|
|
221
|
-
// No embedder (absent OR PLURNK_SERVICE_EMBED_DISABLE) is represented by
|
|
222
|
-
// the same plan and `embed:none` signature; derivation keeps only graph/FTS.
|
|
223
205
|
// Compute the changed-representation worklist before scheduling so aggregate
|
|
224
206
|
// progress has a stable total. {§derivation-dedup-parallel}
|
|
225
207
|
const pending = [];
|
|
226
|
-
for (const
|
|
227
|
-
const searchExcluded = matchSearchExclusion(
|
|
208
|
+
for (const c of candidates) {
|
|
209
|
+
const searchExcluded = matchSearchExclusion(c);
|
|
228
210
|
const dispositionIdentity = searchExcluded === undefined ? "included" : `excluded:${searchExcluded}`;
|
|
229
|
-
const binary = (await mimetypes.classify(
|
|
230
|
-
const projectionIdentity = await projectionIdentityFor(
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
211
|
+
const binary = (await mimetypes.classify(c.mimetype)).binary;
|
|
212
|
+
const projectionIdentity = await projectionIdentityFor(c.mimetype, c.content_length, binary, searchExcluded);
|
|
213
|
+
// A channel without a stored identity (an open or streamed channel) is the one body the
|
|
214
|
+
// metadata cannot judge; it is read now and hashed.
|
|
215
|
+
let preloaded = null;
|
|
216
|
+
let identity = c.content_hash;
|
|
217
|
+
if (identity === null) {
|
|
218
|
+
preloaded = await acquire(c.entry_id, c.channel, null);
|
|
219
|
+
if (preloaded === null)
|
|
220
|
+
continue;
|
|
221
|
+
identity = contentHash(preloaded);
|
|
222
|
+
}
|
|
223
|
+
const hash = derivationHash({ contentHash: identity, mimetype: c.mimetype, binary, projectionIdentity, dispositionIdentity });
|
|
224
|
+
if (hash === c.deep_hash)
|
|
225
|
+
continue; // unchanged since last derivation → deep rows persist
|
|
226
|
+
const body = preloaded;
|
|
227
|
+
pending.push({
|
|
228
|
+
r: {
|
|
229
|
+
id: c.entry_id,
|
|
230
|
+
attachment: "entry-channel",
|
|
231
|
+
scheme: c.scheme,
|
|
232
|
+
authority: c.authority,
|
|
233
|
+
channel: c.channel,
|
|
234
|
+
pathname: c.pathname,
|
|
235
|
+
mimetype: c.mimetype,
|
|
236
|
+
contentLength: c.content_length,
|
|
237
|
+
contentHash: identity,
|
|
238
|
+
hashed: c.content_hash !== null,
|
|
239
|
+
body: body === null ? () => acquire(c.entry_id, c.channel, c.content_hash) : () => Promise.resolve(body),
|
|
240
|
+
},
|
|
241
|
+
hash,
|
|
242
|
+
searchExcluded,
|
|
234
243
|
binary,
|
|
235
|
-
projectionIdentity,
|
|
236
|
-
semanticIdentity: deepCfgSig,
|
|
237
|
-
dispositionIdentity,
|
|
238
244
|
});
|
|
239
|
-
if (hash !== r.deep_hash || (pump !== undefined && owesVectors({ disposition: r.deep_disposition, reason: r.deep_reason })))
|
|
240
|
-
pending.push({
|
|
241
|
-
r: {
|
|
242
|
-
id: r.entry_id,
|
|
243
|
-
attachment: "entry-channel",
|
|
244
|
-
scheme: r.scheme,
|
|
245
|
-
authority: r.authority,
|
|
246
|
-
channel: r.channel,
|
|
247
|
-
pathname: r.pathname,
|
|
248
|
-
content: r.content,
|
|
249
|
-
mimetype: r.mimetype,
|
|
250
|
-
},
|
|
251
|
-
hash,
|
|
252
|
-
searchExcluded,
|
|
253
|
-
binary,
|
|
254
|
-
}); // unchanged since last derivation → deep rows persist
|
|
255
245
|
}
|
|
256
246
|
for (const row of logRows) {
|
|
257
|
-
const projection = LogBody.
|
|
247
|
+
const projection = LogBody.readable({
|
|
258
248
|
op: row.op,
|
|
259
249
|
attrs: row.attrs,
|
|
260
250
|
tx: row.tx,
|
|
261
251
|
rx: row.rx,
|
|
262
252
|
mimetypeTx: row.mimetype_tx,
|
|
263
253
|
mimetypeRx: row.mimetype_rx,
|
|
264
|
-
});
|
|
254
|
+
}, LogVisibility.parse(row.folded));
|
|
265
255
|
const binary = (await mimetypes.classify(projection.mimetype)).binary;
|
|
266
|
-
const projectionIdentity = await projectionIdentityFor(projection.mimetype, projection.content, binary, undefined);
|
|
256
|
+
const projectionIdentity = await projectionIdentityFor(projection.mimetype, projection.content.length, binary, undefined);
|
|
267
257
|
const hash = derivationHash({
|
|
268
|
-
|
|
258
|
+
contentHash: contentHash(projection.content),
|
|
269
259
|
mimetype: projection.mimetype,
|
|
270
260
|
binary,
|
|
271
261
|
projectionIdentity,
|
|
272
|
-
semanticIdentity: deepCfgSig,
|
|
273
262
|
dispositionIdentity: "included",
|
|
274
263
|
});
|
|
275
|
-
if (hash !== row.deep_hash
|
|
264
|
+
if (hash !== row.deep_hash)
|
|
276
265
|
pending.push({
|
|
277
266
|
r: {
|
|
278
267
|
id: row.id,
|
|
279
268
|
attachment: "log",
|
|
269
|
+
folded: row.folded,
|
|
280
270
|
pathname: LogEntryProjection.coordinate(row.coordinate, row),
|
|
281
|
-
content: projection.content,
|
|
282
271
|
mimetype: projection.mimetype,
|
|
272
|
+
contentLength: projection.content.length,
|
|
273
|
+
contentHash: contentHash(projection.content),
|
|
274
|
+
body: () => Promise.resolve(projection.content),
|
|
283
275
|
},
|
|
284
276
|
hash,
|
|
285
277
|
searchExcluded: undefined,
|
|
286
278
|
binary,
|
|
287
279
|
});
|
|
288
280
|
}
|
|
289
|
-
const
|
|
290
|
-
|
|
291
|
-
|
|
292
|
-
|
|
293
|
-
|
|
294
|
-
|
|
281
|
+
const sources = await db.turn_source_derivations.all({ workspace_id: workspaceId });
|
|
282
|
+
for (const source of sources) {
|
|
283
|
+
acquiredBytes += source.content.length;
|
|
284
|
+
const mimetype = source.kind === "ops" ? "text/vnd.plurnk" : "text/plain";
|
|
285
|
+
const projectionIdentity = await projectionIdentityFor(mimetype, source.content.length, false, undefined);
|
|
286
|
+
const identity = contentHash(source.content);
|
|
287
|
+
const hash = derivationHash({ contentHash: identity, mimetype, binary: false, projectionIdentity, dispositionIdentity: "included" });
|
|
288
|
+
if (hash !== source.deep_hash)
|
|
289
|
+
pending.push({
|
|
290
|
+
r: {
|
|
291
|
+
id: source.turn_id, attachment: "turn-source", kind: source.kind,
|
|
292
|
+
pathname: source.pathname, mimetype,
|
|
293
|
+
contentLength: source.content.length, contentHash: identity,
|
|
294
|
+
body: () => Promise.resolve(source.content),
|
|
295
|
+
},
|
|
296
|
+
hash, searchExcluded: undefined, binary: false,
|
|
297
|
+
});
|
|
298
|
+
}
|
|
295
299
|
// {§derivation-dedup-parallel} — warm smaller projections before an
|
|
296
|
-
// expensive outlier; ordering never changes exhaustive derivation.
|
|
297
|
-
|
|
300
|
+
// expensive outlier; ordering never changes exhaustive derivation. The
|
|
301
|
+
// stored length orders without a body.
|
|
302
|
+
pending.sort((a, b) => a.r.contentLength - b.r.contentLength);
|
|
298
303
|
const total = pending.length;
|
|
299
304
|
if (total === 0)
|
|
300
|
-
return 0;
|
|
305
|
+
return { derived: 0, acquiredBytes };
|
|
301
306
|
let completed = 0;
|
|
302
|
-
|
|
307
|
+
const memberFailures = [];
|
|
303
308
|
const projectionNotices = new Set();
|
|
304
309
|
const forwardProjectionNotice = (notice) => {
|
|
305
310
|
const key = JSON.stringify(notice);
|
|
@@ -314,17 +319,16 @@ export default class SearchIndex {
|
|
|
314
319
|
const percent = terminal ? 100 : Math.floor((current / total) * 100);
|
|
315
320
|
ctx.pushNotice?.({
|
|
316
321
|
source: "engine:derivation",
|
|
317
|
-
kind: "
|
|
322
|
+
kind: "search_progress",
|
|
318
323
|
phase,
|
|
319
324
|
message,
|
|
320
325
|
completed: current,
|
|
321
326
|
total,
|
|
322
327
|
percent,
|
|
323
|
-
...(stage === undefined ? {} : { stage }),
|
|
324
328
|
level,
|
|
325
329
|
});
|
|
326
330
|
};
|
|
327
|
-
publish("preparing", "Preparing repository content for
|
|
331
|
+
publish("preparing", "Preparing repository content for search indexing");
|
|
328
332
|
// Each derivation identity builds one shared artifact while distinct
|
|
329
333
|
// artifacts run with bounded concurrency. {§derivation-dedup-parallel}
|
|
330
334
|
const groups = new Map();
|
|
@@ -344,11 +348,9 @@ export default class SearchIndex {
|
|
|
344
348
|
const group = work[next++];
|
|
345
349
|
for (const { r, hash, searchExcluded, binary } of group) {
|
|
346
350
|
ctx.signal?.throwIfAborted();
|
|
347
|
-
await SearchIndex.#deriveOne(ctx, r, hash,
|
|
351
|
+
await SearchIndex.#deriveOne(ctx, r, hash, searchExcluded, binary, {
|
|
348
352
|
onNotice: forwardProjectionNotice,
|
|
349
|
-
|
|
350
|
-
stage = progress.phase;
|
|
351
|
-
},
|
|
353
|
+
onMemberFailure: (failure) => { memberFailures.push(failure); },
|
|
352
354
|
});
|
|
353
355
|
completed++;
|
|
354
356
|
}
|
|
@@ -361,7 +363,7 @@ export default class SearchIndex {
|
|
|
361
363
|
if (failures.length === 1)
|
|
362
364
|
throw failures[0];
|
|
363
365
|
if (failures.length > 1) {
|
|
364
|
-
throw new AggregateError(failures, `${failures.length}
|
|
366
|
+
throw new AggregateError(failures, `${failures.length} search derivation workers failed`);
|
|
365
367
|
}
|
|
366
368
|
};
|
|
367
369
|
// Each group stays on one worker: its representative completes the artifact, then every
|
|
@@ -369,17 +371,26 @@ export default class SearchIndex {
|
|
|
369
371
|
ctx.signal?.throwIfAborted();
|
|
370
372
|
const heartbeat = setInterval(() => {
|
|
371
373
|
if (completed < total) {
|
|
372
|
-
publish("indexing", `Indexing repository
|
|
374
|
+
publish("indexing", `Indexing repository search: ${Math.floor((completed / total) * 100)}% (${completed}/${total})`);
|
|
373
375
|
}
|
|
374
376
|
}, progressHeartbeatMs);
|
|
375
377
|
heartbeat.unref();
|
|
376
378
|
try {
|
|
377
379
|
await workerPool([...groups.values()]);
|
|
378
|
-
|
|
379
|
-
|
|
380
|
+
if (memberFailures.length === 0) {
|
|
381
|
+
publish("complete", "Repository search index is ready");
|
|
382
|
+
}
|
|
383
|
+
else {
|
|
384
|
+
// {§derivation-member-failure}: the pass completes; the terminal notice names the
|
|
385
|
+
// first failed member and carries the count.
|
|
386
|
+
const [first] = memberFailures;
|
|
387
|
+
const rest = memberFailures.length - 1;
|
|
388
|
+
publish("complete", `Repository search index is ready; ${memberFailures.length} of ${total} derivations failed: ${JSON.stringify(first.path)} — ${first.reason}${rest === 0 ? "" : ` (and ${rest} more)`}`, "warn");
|
|
389
|
+
}
|
|
390
|
+
return { derived: total, acquiredBytes };
|
|
380
391
|
}
|
|
381
392
|
catch (error) {
|
|
382
|
-
publish("failed", `
|
|
393
|
+
publish("failed", `Search indexing failed: ${error instanceof Error ? error.message : String(error)}`, "error");
|
|
383
394
|
throw error;
|
|
384
395
|
}
|
|
385
396
|
finally {
|
|
@@ -387,12 +398,12 @@ export default class SearchIndex {
|
|
|
387
398
|
}
|
|
388
399
|
}
|
|
389
400
|
}
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
401
|
+
// {§derivation-dedup-parallel} — the identity is a hash over the representation's own SHA-256
|
|
402
|
+
// ({§tokenomics-content-hash-identity}), never over its body, so a stored channel identity
|
|
403
|
+
// decides dirtiness without the body crossing into the process.
|
|
393
404
|
function derivationHash(input) {
|
|
394
405
|
return createHash("sha256")
|
|
395
|
-
.update(input.
|
|
406
|
+
.update(input.contentHash)
|
|
396
407
|
.update("\0")
|
|
397
408
|
.update(input.mimetype)
|
|
398
409
|
.update("\0")
|
|
@@ -400,8 +411,6 @@ function derivationHash(input) {
|
|
|
400
411
|
.update("\0")
|
|
401
412
|
.update(input.projectionIdentity)
|
|
402
413
|
.update("\0")
|
|
403
|
-
.update(input.semanticIdentity)
|
|
404
|
-
.update("\0")
|
|
405
414
|
.update(input.dispositionIdentity)
|
|
406
415
|
.digest("hex");
|
|
407
416
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_search-index.js","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"_search-index.js","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"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"}
|