@plurnk/plurnk-service 1.7.0 → 1.9.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 +49 -42
- package/INSTALL.md +48 -11
- package/README.md +12 -2
- package/SPEC.md +1166 -475
- package/digest-sql/channel-dispositions/dispositions.sql +15 -0
- package/digest-sql/channel-state/state.sql +6 -0
- package/digest-sql/curation/curation.sql +5 -0
- package/digest-sql/derivations/derivations.sql +4 -0
- package/digest-sql/embeddings/embeddings.sql +4 -0
- package/digest-sql/entry-dispositions/dispositions.sql +15 -0
- package/digest-sql/entry-state/state.sql +6 -0
- package/digest-sql/token-counts/token-counts.sql +2 -0
- package/dist/Paths.d.ts +0 -4
- package/dist/Paths.d.ts.map +1 -1
- package/dist/Paths.js +1 -21
- package/dist/Paths.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/content/read-projector.d.ts.map +1 -1
- package/dist/content/read-projector.js +4 -3
- package/dist/content/read-projector.js.map +1 -1
- package/dist/core/BudgetReadout.d.ts.map +1 -1
- package/dist/core/BudgetReadout.js +12 -22
- package/dist/core/BudgetReadout.js.map +1 -1
- package/dist/core/ChannelWrite.d.ts +8 -3
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +40 -8
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/ChannelWrite.sql +19 -5
- package/dist/core/CoreSchemeServices.d.ts +7 -3
- package/dist/core/CoreSchemeServices.d.ts.map +1 -1
- package/dist/core/CoreSchemeServices.js +8 -1
- package/dist/core/CoreSchemeServices.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +15 -6
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +352 -306
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +22 -10
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +86 -46
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +202 -177
- package/dist/core/EntryAddressBinding.d.ts +32 -0
- package/dist/core/EntryAddressBinding.d.ts.map +1 -0
- package/dist/core/EntryAddressBinding.js +93 -0
- package/dist/core/EntryAddressBinding.js.map +1 -0
- package/dist/core/ExecutorRegistry.d.ts +12 -6
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +34 -31
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/HostPaths.d.ts +29 -0
- package/dist/core/HostPaths.d.ts.map +1 -0
- package/dist/core/HostPaths.js +74 -0
- package/dist/core/HostPaths.js.map +1 -0
- package/dist/core/LegacyHome.d.ts +10 -0
- package/dist/core/LegacyHome.d.ts.map +1 -0
- package/dist/core/LegacyHome.js +170 -0
- package/dist/core/LegacyHome.js.map +1 -0
- package/dist/core/LogBody.d.ts +1 -1
- package/dist/core/LogBody.d.ts.map +1 -1
- package/dist/core/LogBody.js +21 -3
- package/dist/core/LogBody.js.map +1 -1
- package/dist/core/LogEntryProjection.js +1 -1
- package/dist/core/LogEntryProjection.js.map +1 -1
- package/dist/core/LogVisibility.d.ts +28 -0
- package/dist/core/LogVisibility.d.ts.map +1 -0
- package/dist/core/LogVisibility.js +215 -0
- package/dist/core/LogVisibility.js.map +1 -0
- package/dist/core/LoopLifecycle.d.ts +1 -0
- package/dist/core/LoopLifecycle.d.ts.map +1 -1
- package/dist/core/LoopLifecycle.js +8 -0
- package/dist/core/LoopLifecycle.js.map +1 -1
- package/dist/core/LoopLifecycle.sql +10 -0
- package/dist/core/OperatorConfig.d.ts +6 -0
- package/dist/core/OperatorConfig.d.ts.map +1 -0
- package/dist/core/OperatorConfig.js +95 -0
- package/dist/core/OperatorConfig.js.map +1 -0
- package/dist/core/OverflowTurn.d.ts +11 -0
- package/dist/core/OverflowTurn.d.ts.map +1 -0
- package/dist/core/OverflowTurn.js +81 -0
- package/dist/core/OverflowTurn.js.map +1 -0
- package/dist/core/Owner.js +3 -3
- package/dist/core/Owner.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts +7 -15
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +64 -127
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/ProblemLog.js +1 -1
- package/dist/core/ProblemLog.js.map +1 -1
- package/dist/core/ProposalLifecycle.d.ts +4 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +86 -47
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProviderInstantiate.d.ts +9 -5
- package/dist/core/ProviderInstantiate.d.ts.map +1 -1
- package/dist/core/ProviderInstantiate.js +99 -104
- package/dist/core/ProviderInstantiate.js.map +1 -1
- package/dist/core/ReasoningEvent.d.ts +13 -0
- package/dist/core/ReasoningEvent.d.ts.map +1 -0
- package/dist/core/ReasoningEvent.js +6 -0
- package/dist/core/ReasoningEvent.js.map +1 -0
- package/dist/core/ResourceMutations.d.ts +15 -19
- package/dist/core/ResourceMutations.d.ts.map +1 -1
- package/dist/core/ResourceMutations.js +118 -41
- package/dist/core/ResourceMutations.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +12 -12
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +58 -57
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/ToolResources.d.ts +19 -0
- package/dist/core/ToolResources.d.ts.map +1 -0
- package/dist/core/ToolResources.js +123 -0
- package/dist/core/ToolResources.js.map +1 -0
- package/dist/core/Turn.d.ts +27 -0
- package/dist/core/Turn.d.ts.map +1 -0
- package/dist/core/Turn.js +43 -0
- package/dist/core/Turn.js.map +1 -0
- package/dist/core/Turn.sql +72 -0
- package/dist/core/TurnOps.d.ts +7 -0
- package/dist/core/TurnOps.d.ts.map +1 -0
- package/dist/core/TurnOps.js +73 -0
- package/dist/core/TurnOps.js.map +1 -0
- package/dist/core/TurnRunner.d.ts +56 -5
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +1163 -929
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/WorkerName.d.ts +2 -1
- package/dist/core/WorkerName.d.ts.map +1 -1
- package/dist/core/WorkerName.js +2 -1
- package/dist/core/WorkerName.js.map +1 -1
- package/dist/core/WorkerName.sql +17 -2
- package/dist/core/WorkspaceGate.js +1 -1
- package/dist/core/WorkspaceGate.js.map +1 -1
- package/dist/core/caps/CapsResolve.d.ts +2 -2
- package/dist/core/caps/CapsResolve.d.ts.map +1 -1
- package/dist/core/caps/CapsResolve.js +5 -7
- 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 +13 -11
- package/dist/core/caps/DbChannelCaps.js.map +1 -1
- package/dist/core/caps/DbEntryCaps.d.ts +5 -5
- package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
- package/dist/core/caps/DbEntryCaps.js +27 -30
- 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 +5 -3
- package/dist/core/caps/DbNotifyCaps.js.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.d.ts +3 -3
- package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.js +16 -26
- package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts +6 -4
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +37 -5
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/env-defaults.d.ts.map +1 -1
- package/dist/core/env-defaults.js +7 -5
- package/dist/core/env-defaults.js.map +1 -1
- package/dist/core/file-creation-policy.d.ts +9 -0
- package/dist/core/file-creation-policy.d.ts.map +1 -0
- package/dist/core/file-creation-policy.js +25 -0
- package/dist/core/file-creation-policy.js.map +1 -0
- package/dist/core/fork.d.ts +4 -1
- package/dist/core/fork.d.ts.map +1 -1
- package/dist/core/fork.js +39 -16
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +83 -40
- package/dist/core/git-env.d.ts +0 -1
- package/dist/core/git-env.d.ts.map +1 -1
- package/dist/core/git-env.js +0 -3
- package/dist/core/git-env.js.map +1 -1
- package/dist/core/git-membership.d.ts +19 -1
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js +233 -74
- 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 +13 -14
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/operation-target-groups.d.ts +3 -0
- package/dist/core/operation-target-groups.d.ts.map +1 -0
- package/dist/core/operation-target-groups.js +53 -0
- package/dist/core/operation-target-groups.js.map +1 -0
- package/dist/core/packet-inject.d.ts +0 -1
- package/dist/core/packet-inject.d.ts.map +1 -1
- package/dist/core/packet-inject.js +6 -13
- package/dist/core/packet-inject.js.map +1 -1
- package/dist/core/packet-wire.d.ts +4 -0
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +226 -53
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +14 -3
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +62 -24
- package/dist/core/plurnk-uri.js.map +1 -1
- package/dist/core/scheme-types.d.ts +1 -0
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/teaching.d.ts.map +1 -1
- package/dist/core/teaching.js +4 -5
- package/dist/core/teaching.js.map +1 -1
- package/dist/core/worker-ops.sql +10 -6
- package/dist/core/worker-settings.d.ts +10 -0
- package/dist/core/worker-settings.d.ts.map +1 -0
- package/dist/core/worker-settings.js +32 -0
- package/dist/core/worker-settings.js.map +1 -0
- package/dist/core/workspace-settings.d.ts +2 -11
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js +7 -47
- package/dist/core/workspace-settings.js.map +1 -1
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +164 -92
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/digest.sql +9 -3
- package/dist/observe/genai.d.ts +9 -0
- package/dist/observe/genai.d.ts.map +1 -0
- package/dist/observe/genai.js +31 -0
- package/dist/observe/genai.js.map +1 -0
- package/dist/observe/spans.d.ts +3 -3
- package/dist/observe/spans.d.ts.map +1 -1
- package/dist/observe/spans.js +20 -5
- package/dist/observe/spans.js.map +1 -1
- package/dist/schemes/EffectPolicy.d.ts +3 -0
- package/dist/schemes/EffectPolicy.d.ts.map +1 -1
- package/dist/schemes/EffectPolicy.js +38 -6
- package/dist/schemes/EffectPolicy.js.map +1 -1
- package/dist/schemes/Exec.d.ts +3 -2
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +109 -34
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
- package/dist/schemes/ExecOutputScheme.js +5 -4
- package/dist/schemes/ExecOutputScheme.js.map +1 -1
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +170 -80
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.d.ts +6 -2
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +73 -22
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Log.sql +25 -7
- package/dist/schemes/Prompt.d.ts +2 -3
- package/dist/schemes/Prompt.d.ts.map +1 -1
- package/dist/schemes/Prompt.js +5 -9
- package/dist/schemes/Prompt.js.map +1 -1
- package/dist/schemes/QuestionTool.d.ts +10 -0
- package/dist/schemes/QuestionTool.d.ts.map +1 -0
- package/dist/schemes/QuestionTool.js +81 -0
- package/dist/schemes/QuestionTool.js.map +1 -0
- package/dist/schemes/Skill.d.ts.map +1 -1
- package/dist/schemes/Skill.js +6 -1
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +97 -34
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-crud.d.ts +5 -5
- package/dist/schemes/_entry-crud.d.ts.map +1 -1
- package/dist/schemes/_entry-crud.js +22 -17
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +77 -24
- package/dist/schemes/_entry-find.d.ts +8 -5
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +121 -40
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +16 -11
- package/dist/schemes/_entry-graph.sql +2 -6
- package/dist/schemes/_entry-manifest.d.ts +2 -2
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +18 -6
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-ops.d.ts +6 -5
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +39 -46
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_entry-ops.sql +9 -6
- package/dist/schemes/_entry-send.d.ts +2 -2
- package/dist/schemes/_entry-send.d.ts.map +1 -1
- package/dist/schemes/_entry-send.js +16 -14
- package/dist/schemes/_entry-send.js.map +1 -1
- package/dist/schemes/_search-index.d.ts.map +1 -1
- package/dist/schemes/_search-index.js +39 -25
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/server/Daemon.d.ts +98 -15
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +864 -348
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +84 -19
- package/dist/server/DaemonModule.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.d.ts +15 -10
- package/dist/server/DrainSupervisor.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.js +70 -19
- package/dist/server/DrainSupervisor.js.map +1 -1
- package/dist/server/Functionality.d.ts +44 -0
- package/dist/server/Functionality.d.ts.map +1 -0
- package/dist/server/Functionality.js +422 -0
- package/dist/server/Functionality.js.map +1 -0
- package/dist/server/FunctionalityManager.d.ts +22 -0
- package/dist/server/FunctionalityManager.d.ts.map +1 -0
- package/dist/server/FunctionalityManager.js +121 -0
- package/dist/server/FunctionalityManager.js.map +1 -0
- package/dist/server/SkillsFunctionality.d.ts +61 -0
- package/dist/server/SkillsFunctionality.d.ts.map +1 -0
- package/dist/server/SkillsFunctionality.js +449 -0
- package/dist/server/SkillsFunctionality.js.map +1 -0
- package/dist/server/WorkerCapabilities.d.ts +21 -0
- package/dist/server/WorkerCapabilities.d.ts.map +1 -0
- package/dist/server/WorkerCapabilities.js +214 -0
- package/dist/server/WorkerCapabilities.js.map +1 -0
- package/dist/server/WorkerResidency.d.ts +40 -0
- package/dist/server/WorkerResidency.d.ts.map +1 -0
- package/dist/server/WorkerResidency.js +283 -0
- package/dist/server/WorkerResidency.js.map +1 -0
- package/dist/server/client-input.d.ts +6 -2
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +72 -32
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts +2 -2
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +109 -23
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +33 -13
- package/dist/server/envelope.d.ts +7 -2
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +12 -6
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +36 -4
- package/dist/server/lifecycle-recovery.sql +24 -17
- package/dist/server/logEntry.d.ts +2 -1
- package/dist/server/logEntry.d.ts.map +1 -1
- package/dist/server/logEntry.js +3 -2
- package/dist/server/logEntry.js.map +1 -1
- package/dist/server/logEntry.sql +7 -0
- package/dist/server/loop-model.d.ts +2 -2
- package/dist/server/loop-model.d.ts.map +1 -1
- package/dist/server/loop-model.js +23 -33
- package/dist/server/loop-model.js.map +1 -1
- package/dist/server/loopDocs.d.ts +2 -1
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +88 -21
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/loopDocs.sql +14 -8
- package/dist/server/model-catalog.d.ts +3 -0
- package/dist/server/model-catalog.d.ts.map +1 -0
- package/dist/server/model-catalog.js +83 -0
- package/dist/server/model-catalog.js.map +1 -0
- package/dist/server/model-route.d.ts +7 -0
- package/dist/server/model-route.d.ts.map +1 -0
- package/dist/server/model-route.js +47 -0
- package/dist/server/model-route.js.map +1 -0
- package/dist/server/module-discovery.d.ts +13 -0
- package/dist/server/module-discovery.d.ts.map +1 -0
- package/dist/server/module-discovery.js +103 -0
- package/dist/server/module-discovery.js.map +1 -0
- package/dist/server/seam-entry-read.sql +9 -7
- package/dist/server/seam-log-read.sql +1 -1
- package/dist/server/seam-loop.sql +10 -1
- package/dist/server/seam-proposal-list.sql +4 -2
- package/dist/server/worker-capabilities.sql +19 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +193 -124
- package/dist/service.js.map +1 -1
- package/migrations/001_schema.sql +905 -196
- package/package.json +40 -38
- package/dist/core/ExecutableTools.d.ts +0 -11
- package/dist/core/ExecutableTools.d.ts.map +0 -1
- package/dist/core/ExecutableTools.js +0 -49
- package/dist/core/ExecutableTools.js.map +0 -1
- package/dist/core/JournalTurn.d.ts +0 -9
- package/dist/core/JournalTurn.d.ts.map +0 -1
- package/dist/core/JournalTurn.js +0 -14
- package/dist/core/JournalTurn.js.map +0 -1
- package/dist/core/JournalTurn.sql +0 -10
- package/dist/core/git-iso.d.ts +0 -13
- package/dist/core/git-iso.d.ts.map +0 -1
- package/dist/core/git-iso.js +0 -267
- package/dist/core/git-iso.js.map +0 -1
- package/dist/core/search-gate.d.ts +0 -17
- package/dist/core/search-gate.d.ts.map +0 -1
- package/dist/core/search-gate.js +0 -77
- package/dist/core/search-gate.js.map +0 -1
- package/dist/digest/Digest.sql +0 -1
- package/dist/server/workspace-capabilities.sql +0 -19
|
@@ -2,7 +2,7 @@ var _a;
|
|
|
2
2
|
import { InvalidOperationResultError, PLURNK_OPS, Validator, } from "@plurnk/plurnk-contracts";
|
|
3
3
|
import { observedSync } from "../observe/spans.js";
|
|
4
4
|
import LoopFlagsReader from "./LoopFlagsReader.js";
|
|
5
|
-
import { schemeNameOf } from "./plurnk-uri.js";
|
|
5
|
+
import { entryCoordinateOf, foldAuthorityIntoPath, schemeNameOf } from "./plurnk-uri.js";
|
|
6
6
|
import SchemeCtxImpl from "./caps/SchemeCtxImpl.js";
|
|
7
7
|
import Results, { OperationFailureError } from "./results.js";
|
|
8
8
|
import LogBody from "./LogBody.js";
|
|
@@ -38,6 +38,7 @@ class ProposalLifecycle {
|
|
|
38
38
|
#loopSignal;
|
|
39
39
|
#liveSubscriptions;
|
|
40
40
|
#interactions;
|
|
41
|
+
#entryAddresses;
|
|
41
42
|
// Proposal lifecycle: pending dispatch pauses waiting for resolution.
|
|
42
43
|
// Dispatch awaits the promise when a scheme returns status 202;
|
|
43
44
|
// Engine.resolveProposal feeds the resolution back in. Map is per-log-
|
|
@@ -47,7 +48,7 @@ class ProposalLifecycle {
|
|
|
47
48
|
// deliberately absent: loop-owned settlement happens in this owner before
|
|
48
49
|
// observers run, so an observer cannot become a hidden policy fallback.
|
|
49
50
|
#listeners = [];
|
|
50
|
-
constructor({ db, schemes, notices, streamEventNotify, wakeWorkerNotify, weigh, mimetypes, executors, loopSignal, liveSubscriptions, interactions }) {
|
|
51
|
+
constructor({ db, schemes, notices, streamEventNotify, wakeWorkerNotify, weigh, mimetypes, executors, loopSignal, liveSubscriptions, interactions, entryAddresses }) {
|
|
51
52
|
this.#db = db;
|
|
52
53
|
this.#schemes = schemes;
|
|
53
54
|
this.#notices = notices;
|
|
@@ -59,9 +60,10 @@ class ProposalLifecycle {
|
|
|
59
60
|
this.#loopSignal = loopSignal;
|
|
60
61
|
this.#liveSubscriptions = liveSubscriptions;
|
|
61
62
|
this.#interactions = interactions;
|
|
63
|
+
this.#entryAddresses = entryAddresses;
|
|
62
64
|
}
|
|
63
65
|
// External API to feed a resolution into a pending proposal. Called by
|
|
64
|
-
// the
|
|
66
|
+
// the ApplicationPort resolution call, core-owned disposition, or the timeout
|
|
65
67
|
// watcher. Throws when the logEntryId has no
|
|
66
68
|
// pending waiter — duplicate resolutions, IDs for non-proposed entries,
|
|
67
69
|
// or entries already-resolved are caller errors.
|
|
@@ -170,15 +172,7 @@ class ProposalLifecycle {
|
|
|
170
172
|
const attrs = _a.#objectJson(row.logEntryId, "attrs", row.attrs);
|
|
171
173
|
const result = _a.#result(row.logEntryId, row.rx);
|
|
172
174
|
const flags = LoopFlagsReader.parse(row.loop_flags, row.loopId);
|
|
173
|
-
const target =
|
|
174
|
-
const operatorQuestion = _a.#operatorQuestion(row, op, attrs);
|
|
175
|
-
const diverged = await this.#db.engine_target_diverged_this_turn.get({
|
|
176
|
-
worker_id: row.workerId,
|
|
177
|
-
turn_id: row.turnId,
|
|
178
|
-
scheme: target.scheme,
|
|
179
|
-
pathname: target.pathname,
|
|
180
|
-
});
|
|
181
|
-
const staleClobberRisk = diverged !== undefined;
|
|
175
|
+
const target = this.#target(row, op, attrs);
|
|
182
176
|
const proposal = Validator.assertProposalProjection({
|
|
183
177
|
logEntryId: row.logEntryId,
|
|
184
178
|
workerId: row.workerId,
|
|
@@ -189,8 +183,7 @@ class ProposalLifecycle {
|
|
|
189
183
|
body: typeof result.body === "string" ? result.body : "",
|
|
190
184
|
attrs,
|
|
191
185
|
flags,
|
|
192
|
-
|
|
193
|
-
disposition: _a.#disposition(operatorQuestion, flags, staleClobberRisk),
|
|
186
|
+
disposition: _a.#disposition(flags),
|
|
194
187
|
});
|
|
195
188
|
return { ...proposal, workspaceId: row.workspaceId };
|
|
196
189
|
}
|
|
@@ -224,18 +217,41 @@ class ProposalLifecycle {
|
|
|
224
217
|
throw new Error(`Pending proposal ${logEntryId} has invalid proposed result JSON.`, { cause });
|
|
225
218
|
}
|
|
226
219
|
}
|
|
227
|
-
|
|
220
|
+
#target(row, op, attrs) {
|
|
228
221
|
const routed = attrs.proposalTarget;
|
|
229
222
|
if (routed === undefined) {
|
|
230
223
|
if (op === "COPY" || op === "MOVE") {
|
|
231
224
|
throw new Error(`Pending proposal ${row.logEntryId} has no canonical ${op} proposal target.`);
|
|
232
225
|
}
|
|
233
|
-
|
|
226
|
+
if (row.pathname === null) {
|
|
227
|
+
return { scheme: row.scheme, authority: null, pathname: null };
|
|
228
|
+
}
|
|
229
|
+
const authorityMode = row.scheme === null
|
|
230
|
+
? "namespace"
|
|
231
|
+
: this.#schemes.manifestFor(row.scheme, row.workerId)?.authority ?? "namespace";
|
|
232
|
+
if (authorityMode === "resource") {
|
|
233
|
+
const authority = row.hostname === null
|
|
234
|
+
? ""
|
|
235
|
+
: `${row.hostname}${row.port === null ? "" : `:${row.port}`}`;
|
|
236
|
+
return {
|
|
237
|
+
scheme: row.scheme,
|
|
238
|
+
authority,
|
|
239
|
+
pathname: `${row.pathname}${row.query === null ? "" : `?${row.query}`}`,
|
|
240
|
+
};
|
|
241
|
+
}
|
|
242
|
+
return {
|
|
243
|
+
scheme: row.scheme,
|
|
244
|
+
authority: "",
|
|
245
|
+
pathname: authorityMode === "owner"
|
|
246
|
+
? row.pathname
|
|
247
|
+
: foldAuthorityIntoPath(row.hostname, row.pathname),
|
|
248
|
+
};
|
|
234
249
|
}
|
|
235
250
|
if (routed === null
|
|
236
251
|
|| typeof routed !== "object"
|
|
237
252
|
|| Array.isArray(routed)
|
|
238
253
|
|| typeof routed.scheme !== "string"
|
|
254
|
+
|| typeof routed.authority !== "string"
|
|
239
255
|
|| typeof routed.pathname !== "string") {
|
|
240
256
|
throw new Error(`Pending proposal ${row.logEntryId} has an invalid canonical proposal target.`);
|
|
241
257
|
}
|
|
@@ -243,34 +259,13 @@ class ProposalLifecycle {
|
|
|
243
259
|
scheme: routed.scheme === "file"
|
|
244
260
|
? null
|
|
245
261
|
: routed.scheme,
|
|
262
|
+
authority: routed.authority,
|
|
246
263
|
pathname: routed.pathname,
|
|
247
264
|
};
|
|
248
265
|
}
|
|
249
|
-
static #
|
|
250
|
-
if (
|
|
251
|
-
return
|
|
252
|
-
let signal;
|
|
253
|
-
try {
|
|
254
|
-
signal = JSON.parse(row.signal);
|
|
255
|
-
}
|
|
256
|
-
catch (cause) {
|
|
257
|
-
throw new Error(`Pending proposal ${row.logEntryId} has invalid signal JSON.`, { cause });
|
|
258
|
-
}
|
|
259
|
-
if (signal !== 300)
|
|
260
|
-
return false;
|
|
261
|
-
if (typeof attrs.question !== "string") {
|
|
262
|
-
throw new Error(`Pending SEND signal 300 proposal ${row.logEntryId} has no question.`);
|
|
263
|
-
}
|
|
264
|
-
return true;
|
|
265
|
-
}
|
|
266
|
-
static #disposition(operatorQuestion, flags, staleClobberRisk) {
|
|
267
|
-
if (flags.auto) {
|
|
268
|
-
if (operatorQuestion)
|
|
269
|
-
return { owner: "client" };
|
|
270
|
-
return staleClobberRisk
|
|
271
|
-
? { owner: "loop", decision: "reject", outcome: "stale_read_clobber" }
|
|
272
|
-
: { owner: "loop", decision: "accept" };
|
|
273
|
-
}
|
|
266
|
+
static #disposition(flags) {
|
|
267
|
+
if (flags.auto)
|
|
268
|
+
return { owner: "loop", decision: "accept" };
|
|
274
269
|
if (flags.noProposals) {
|
|
275
270
|
return { owner: "loop", decision: "reject", outcome: "no_review_channel" };
|
|
276
271
|
}
|
|
@@ -292,7 +287,7 @@ class ProposalLifecycle {
|
|
|
292
287
|
}
|
|
293
288
|
// On accept, run the scheme's applyResolution — File writes disk, Exec spawns. {§proposal-accept-applies}
|
|
294
289
|
async workerApply(statement, originalResult, resolution, ids) {
|
|
295
|
-
const { workspaceId, workerId, loopId, turnId } = ids;
|
|
290
|
+
const { workspaceId, workerId, functionalityWorkerId, loopId, turnId } = ids;
|
|
296
291
|
if (resolution.decision !== "accept")
|
|
297
292
|
return { resolution };
|
|
298
293
|
// EXEC routes to the exec scheme regardless of its runtime-owned target.
|
|
@@ -309,7 +304,7 @@ class ProposalLifecycle {
|
|
|
309
304
|
: schemeNameOf(statement.target);
|
|
310
305
|
if (schemeName === null)
|
|
311
306
|
return { resolution };
|
|
312
|
-
const handler = this.#schemes.get(schemeName,
|
|
307
|
+
const handler = this.#schemes.get(schemeName, functionalityWorkerId);
|
|
313
308
|
if (handler === undefined || typeof handler.applyResolution !== "function")
|
|
314
309
|
return { resolution };
|
|
315
310
|
try {
|
|
@@ -318,7 +313,7 @@ class ProposalLifecycle {
|
|
|
318
313
|
// the scheme uses ctx to write the entry that makes the
|
|
319
314
|
// operation's artifact visible in the next packet's index.
|
|
320
315
|
const applyCtx = {
|
|
321
|
-
db: this.#db, workspaceId, workerId, loopId, turnId,
|
|
316
|
+
db: this.#db, workspaceId, workerId, functionalityWorkerId, loopId, turnId,
|
|
322
317
|
writer: "model", signal: this.#loopSignal(loopId),
|
|
323
318
|
streamEventNotify: this.#streamEventNotify,
|
|
324
319
|
wakeWorkerNotify: this.#wakeWorkerNotify,
|
|
@@ -332,10 +327,54 @@ class ProposalLifecycle {
|
|
|
332
327
|
attrs: (originalResult.attrs ?? {}),
|
|
333
328
|
body: resolution.body,
|
|
334
329
|
};
|
|
335
|
-
const manifest = this.#schemes.manifestFor(schemeName,
|
|
330
|
+
const manifest = this.#schemes.manifestFor(schemeName, functionalityWorkerId);
|
|
336
331
|
if (manifest === undefined)
|
|
337
332
|
throw new Error(`scheme '${schemeName}' has no manifest`);
|
|
338
|
-
const
|
|
333
|
+
const proposalTarget = originalResult.attrs?.proposalTarget;
|
|
334
|
+
const authoredTarget = statement.op === "COPY" || statement.op === "MOVE"
|
|
335
|
+
? statement.body?.target ?? null
|
|
336
|
+
: statement.target;
|
|
337
|
+
let authority = proposalTarget === undefined
|
|
338
|
+
? authoredTarget === null
|
|
339
|
+
? ""
|
|
340
|
+
: entryCoordinateOf(authoredTarget, manifest.authority ?? "namespace").authority
|
|
341
|
+
: proposalTarget.authority;
|
|
342
|
+
let ownerId = await this.#entryAddresses.fixedOwnerId(manifest, applyCtx);
|
|
343
|
+
if (manifest.category === "data"
|
|
344
|
+
&& statement.op !== "EXEC"
|
|
345
|
+
&& authoredTarget !== null) {
|
|
346
|
+
const binding = await this.#entryAddresses.resolve({
|
|
347
|
+
target: authoredTarget,
|
|
348
|
+
routedScheme: schemeName,
|
|
349
|
+
handler,
|
|
350
|
+
manifest,
|
|
351
|
+
ctx: applyCtx,
|
|
352
|
+
});
|
|
353
|
+
if (binding.result !== null) {
|
|
354
|
+
return {
|
|
355
|
+
resolution: {
|
|
356
|
+
...resolution,
|
|
357
|
+
outcome: typeof binding.result.outcome === "string"
|
|
358
|
+
? binding.result.outcome
|
|
359
|
+
: "apply_failed",
|
|
360
|
+
},
|
|
361
|
+
applied: binding.result,
|
|
362
|
+
};
|
|
363
|
+
}
|
|
364
|
+
if (binding.address === null) {
|
|
365
|
+
const applied = Results.failure("proposal:application", "entry-not-found", 404, "The proposed entry target no longer resolves.", {}, { stage: "proposal-application", retryable: false });
|
|
366
|
+
return {
|
|
367
|
+
resolution: { ...resolution, outcome: "apply_failed" },
|
|
368
|
+
applied,
|
|
369
|
+
};
|
|
370
|
+
}
|
|
371
|
+
ownerId = binding.address.ownerId;
|
|
372
|
+
authority = binding.address.authority;
|
|
373
|
+
}
|
|
374
|
+
if (manifest.category === "data" && ownerId === null) {
|
|
375
|
+
throw new Error(`scheme '${schemeName}' proposal has no bound entry owner`);
|
|
376
|
+
}
|
|
377
|
+
const applyResult = Results.assert(await handler.applyResolution(request, new SchemeCtxImpl(applyCtx, schemeName, manifest, this.#liveSubscriptions, { authority, ownerId })));
|
|
339
378
|
if (applyResult.status >= 400) {
|
|
340
379
|
return {
|
|
341
380
|
resolution: {
|
|
@@ -347,7 +386,7 @@ class ProposalLifecycle {
|
|
|
347
386
|
}
|
|
348
387
|
// Propagate applyResolution.outcome onto the accepted resolution
|
|
349
388
|
// (operational metadata, e.g. exec's "started") AND its body — the applied result the
|
|
350
|
-
// model must see THIS turn: a file EDIT's line-numbered diff
|
|
389
|
+
// model must see THIS turn: a file EDIT's line-numbered diff. EXEC
|
|
351
390
|
// never uses the body rail — its output streams uniformly ({§exec-stream}, NO same-turn
|
|
352
391
|
// in-body exception; automatic admission only skips the review pause) and is READ next turn.
|
|
353
392
|
const withOutcome = applyResult.outcome !== undefined && resolution.outcome === undefined
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProposalLifecycle.js","sourceRoot":"","sources":["../../src/core/ProposalLifecycle.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"ProposalLifecycle.js","sourceRoot":"","sources":["../../src/core/ProposalLifecycle.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,15 @@
|
|
|
1
|
-
import type { Provider,
|
|
1
|
+
import type { Provider, ProviderSpec, ReasoningPolicy } from "@plurnk/plurnk-providers";
|
|
2
2
|
export default class ProviderInstantiate {
|
|
3
3
|
#private;
|
|
4
4
|
static aliasOf(provider: Provider): string | undefined;
|
|
5
|
-
static
|
|
6
|
-
static
|
|
7
|
-
static
|
|
5
|
+
static configurationAliasOf(provider: Provider, env?: NodeJS.ProcessEnv): string | undefined;
|
|
6
|
+
static hasConfigurationScope(provider: Provider, env?: NodeJS.ProcessEnv): boolean;
|
|
7
|
+
static assertGrammarConfigurationScope(provider: Provider, env?: NodeJS.ProcessEnv): void;
|
|
8
|
+
static registerConfigurationScope(provider: Provider, alias: string | null): void;
|
|
9
|
+
static registerInstance(provider: Provider, spec: ProviderSpec, env?: NodeJS.ProcessEnv, reasoningPolicy?: ReasoningPolicy): void;
|
|
10
|
+
static instantiateProvider(route: ProviderSpec, env?: NodeJS.ProcessEnv, reasoningPolicy?: ReasoningPolicy): Promise<Provider>;
|
|
11
|
+
static configuredReasoningPolicy(route: ProviderSpec, env?: NodeJS.ProcessEnv): ReasoningPolicy;
|
|
8
12
|
static loadActiveProvider(env?: NodeJS.ProcessEnv): Promise<Provider | null>;
|
|
9
|
-
static
|
|
13
|
+
static validateGrammarConfiguration(provider: Provider, env?: NodeJS.ProcessEnv, reasoningPolicy?: ReasoningPolicy): void;
|
|
10
14
|
}
|
|
11
15
|
//# sourceMappingURL=ProviderInstantiate.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ProviderInstantiate.d.ts","sourceRoot":"","sources":["../../src/core/ProviderInstantiate.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"ProviderInstantiate.d.ts","sourceRoot":"","sources":["../../src/core/ProviderInstantiate.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,QAAQ,EAAE,YAAY,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAExF,MAAM,CAAC,OAAO,OAAO,mBAAmB;;IAoBpC,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,GAAG,SAAS,CAErD;IAED,MAAM,CAAC,oBAAoB,CACvB,QAAQ,EAAE,QAAQ,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,MAAM,GAAG,SAAS,CAIpB;IAED,MAAM,CAAC,qBAAqB,CACxB,QAAQ,EAAE,QAAQ,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,OAAO,CAGT;IAED,MAAM,CAAC,+BAA+B,CAClC,QAAQ,EAAE,QAAQ,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,IAAI,CAON;IAMD,MAAM,CAAC,0BAA0B,CAAC,QAAQ,EAAE,QAAQ,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,GAAG,IAAI,CAEhF;IAKD,MAAM,CAAC,gBAAgB,CACnB,QAAQ,EAAE,QAAQ,EAClB,IAAI,EAAE,YAAY,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,eAAe,CAAC,EAAE,eAAe,GAClC,IAAI,CAMN;IAED,OAAa,mBAAmB,CAC5B,KAAK,EAAE,YAAY,EACnB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,eAAe,CAAC,EAAE,eAAe,GAClC,OAAO,CAAC,QAAQ,CAAC,CA0BnB;IAuBD,MAAM,CAAC,yBAAyB,CAC5B,KAAK,EAAE,YAAY,EACnB,GAAG,GAAE,MAAM,CAAC,UAAwB,GACrC,eAAe,CAMjB;IAwCD,OAAa,kBAAkB,CAAC,GAAG,GAAE,MAAM,CAAC,UAAwB,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC,CAM9F;IAKD,MAAM,CAAC,4BAA4B,CAC/B,QAAQ,EAAE,QAAQ,EAClB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,eAAe,CAAC,EAAE,eAAe,GAClC,IAAI,CAwBN;CACJ"}
|
|
@@ -3,163 +3,158 @@
|
|
|
3
3
|
// calling module's location; this is the package that actually has the
|
|
4
4
|
// `@plurnk/plurnk-providers-*` siblings installed in its node_modules.
|
|
5
5
|
//
|
|
6
|
-
// The pure helpers
|
|
6
|
+
// The pure selector helpers live in
|
|
7
7
|
// @plurnk/plurnk-providers as framework-grade env parsing.
|
|
8
|
-
import { instantiateProvider as instantiateFrameworkProvider, PROVIDERS_KNOBS,
|
|
8
|
+
import { instantiateProvider as instantiateFrameworkProvider, parseReasoningPolicy, PROVIDERS_KNOBS, resolveActiveRoute, scopeEnvToAlias, UnsupportedReasoningPolicyError } from "@plurnk/plurnk-providers";
|
|
9
9
|
export default class ProviderInstantiate {
|
|
10
|
-
// One provider per
|
|
10
|
+
// One provider per complete route+tuning projection for the process lifetime: a provider is
|
|
11
11
|
// stateless per the contract, and runLoop instantiating fresh per aliased call re-probed
|
|
12
12
|
// the backend (latency) and re-fired providers' construction warnings on every loop (the
|
|
13
|
-
// owner's boot log: one heuristic warning per runLoop request). Cache
|
|
14
|
-
//
|
|
13
|
+
// owner's boot log: one heuristic warning per runLoop request). Cache identity includes every
|
|
14
|
+
// provider-owned knob because operator tuning can change while a process remains alive.
|
|
15
15
|
static #instances = new Map();
|
|
16
16
|
static #registeredInstances = new Map();
|
|
17
17
|
// {§provider-instantiation-alias-resolution} — provider handle → the alias name that produced it,
|
|
18
18
|
// so the service scopes its own
|
|
19
19
|
// per-alias packet-policy knobs by the provider it's building a packet
|
|
20
20
|
// for. Service-owned metadata about handles WE created; never a provider-contract field.
|
|
21
|
-
|
|
22
|
-
//
|
|
23
|
-
//
|
|
21
|
+
// `null` is meaningful: this handle was constructed for an alias-free exact
|
|
22
|
+
// route and therefore uses global tuning. An absent entry is a foreign or
|
|
23
|
+
// hand-built handle for which the boot route remains the compatibility
|
|
24
|
+
// source of configuration scope.
|
|
25
|
+
static #configurationAliasByProvider = new WeakMap();
|
|
26
|
+
// The alias name a provider was built under, or undefined for an exact
|
|
27
|
+
// route, a test Mock, or another hand-built handle.
|
|
24
28
|
static aliasOf(provider) {
|
|
25
|
-
return ProviderInstantiate.#
|
|
26
|
-
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
29
|
+
return ProviderInstantiate.#configurationAliasByProvider.get(provider) ?? undefined;
|
|
30
|
+
}
|
|
31
|
+
static configurationAliasOf(provider, env = process.env) {
|
|
32
|
+
const registered = ProviderInstantiate.#configurationAliasByProvider.get(provider);
|
|
33
|
+
if (registered !== undefined)
|
|
34
|
+
return registered ?? undefined;
|
|
35
|
+
return resolveActiveRoute(env)?.alias;
|
|
36
|
+
}
|
|
37
|
+
static hasConfigurationScope(provider, env = process.env) {
|
|
38
|
+
return ProviderInstantiate.#configurationAliasByProvider.has(provider)
|
|
39
|
+
|| resolveActiveRoute(env) !== null;
|
|
40
|
+
}
|
|
41
|
+
static assertGrammarConfigurationScope(provider, env = process.env) {
|
|
42
|
+
if (ProviderInstantiate.hasConfigurationScope(provider, env))
|
|
43
|
+
return;
|
|
44
|
+
const scoped = Object.keys(env).some((key) => key.startsWith("PLURNK_PROVIDERS_GBNF_")
|
|
45
|
+
&& key !== "PLURNK_PROVIDERS_GBNF_DEBUG");
|
|
46
|
+
if (scoped) {
|
|
47
|
+
throw new Error("GBNF constraint: provider has no registered route and no active model route resolves, while route-scoped PLURNK_PROVIDERS_GBNF_* constraints are configured");
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
// {§grammar-configuration-admission} — identify a hand-built provider's
|
|
51
|
+
// configuration scope so direct Engine specimens exercise the same grammar
|
|
52
|
+
// resolution as daemon-constructed handles. null is an exact route using
|
|
53
|
+
// global tuning; a string is an alias-scoped route.
|
|
54
|
+
static registerConfigurationScope(provider, alias) {
|
|
55
|
+
ProviderInstantiate.#configurationAliasByProvider.set(provider, alias);
|
|
56
|
+
}
|
|
57
|
+
// Register a preconstructed handle under the same route+tuning identity as
|
|
58
|
+
// constructed providers. An injected handle must not shadow a later operator
|
|
59
|
+
// tuning projection merely because its wire route is unchanged.
|
|
60
|
+
static registerInstance(provider, spec, env = process.env, reasoningPolicy) {
|
|
61
|
+
ProviderInstantiate.#configurationAliasByProvider.set(provider, spec.alias ?? null);
|
|
62
|
+
ProviderInstantiate.#registeredInstances.set(ProviderInstantiate.#cacheKey(spec, env, reasoningPolicy), provider);
|
|
63
|
+
}
|
|
64
|
+
static async instantiateProvider(route, env = process.env, reasoningPolicy) {
|
|
43
65
|
if (env === process.env) {
|
|
44
|
-
const registered = ProviderInstantiate.#registeredInstances.get(ProviderInstantiate.#
|
|
45
|
-
if (registered !== undefined)
|
|
66
|
+
const registered = ProviderInstantiate.#registeredInstances.get(ProviderInstantiate.#cacheKey(route, env, reasoningPolicy));
|
|
67
|
+
if (registered !== undefined) {
|
|
68
|
+
if (reasoningPolicy !== undefined
|
|
69
|
+
&& !registered.supportedReasoningPolicies.includes(reasoningPolicy)) {
|
|
70
|
+
throw new UnsupportedReasoningPolicyError(`provider:${route.provider}`, reasoningPolicy, registered.supportedReasoningPolicies);
|
|
71
|
+
}
|
|
46
72
|
return registered;
|
|
47
|
-
|
|
73
|
+
}
|
|
74
|
+
const key = ProviderInstantiate.#cacheKey(route, env, reasoningPolicy);
|
|
48
75
|
let cached = ProviderInstantiate.#instances.get(key);
|
|
49
76
|
if (cached === undefined) {
|
|
50
|
-
cached = ProviderInstantiate.#instantiate(
|
|
77
|
+
cached = ProviderInstantiate.#instantiate(route, env, reasoningPolicy);
|
|
51
78
|
ProviderInstantiate.#instances.set(key, cached);
|
|
52
79
|
cached.catch(() => ProviderInstantiate.#instances.delete(key)); // a failed construct never poisons the cache
|
|
53
80
|
}
|
|
54
81
|
return cached;
|
|
55
82
|
}
|
|
56
|
-
return ProviderInstantiate.#instantiate(
|
|
83
|
+
return ProviderInstantiate.#instantiate(route, env, reasoningPolicy); // custom env (tests) — never cached
|
|
57
84
|
}
|
|
58
|
-
static #identityKey(
|
|
59
|
-
return `${
|
|
85
|
+
static #identityKey(route) {
|
|
86
|
+
return `${route.alias ?? ""}|${route.provider}|${route.model}|${route.baseUrl ?? ""}`;
|
|
60
87
|
}
|
|
61
|
-
static #cacheKey(
|
|
62
|
-
const scoped =
|
|
88
|
+
static #cacheKey(route, env, reasoningPolicy) {
|
|
89
|
+
const scoped = ProviderInstantiate.#scopedEnv(route, env, reasoningPolicy);
|
|
63
90
|
const tuning = PROVIDERS_KNOBS.map((name) => [name, scoped[name] ?? ""]);
|
|
64
|
-
return `${ProviderInstantiate.#identityKey(
|
|
91
|
+
return `${ProviderInstantiate.#identityKey(route)}|${JSON.stringify(tuning)}`;
|
|
65
92
|
}
|
|
66
|
-
static
|
|
67
|
-
const
|
|
68
|
-
|
|
93
|
+
static #scopedEnv(route, env, reasoningPolicy) {
|
|
94
|
+
const scoped = route.alias === undefined ? env : scopeEnvToAlias(env, route.alias);
|
|
95
|
+
return reasoningPolicy === undefined
|
|
96
|
+
? scoped
|
|
97
|
+
: { ...scoped, PLURNK_PROVIDERS_REASONING: reasoningPolicy };
|
|
98
|
+
}
|
|
99
|
+
static configuredReasoningPolicy(route, env = process.env) {
|
|
100
|
+
const value = ProviderInstantiate.#scopedEnv(route, env).PLURNK_PROVIDERS_REASONING;
|
|
101
|
+
const selection = route.alias === undefined
|
|
102
|
+
? `Model route '${route.provider}/${route.model}'`
|
|
103
|
+
: `Provider alias '${route.alias}'`;
|
|
104
|
+
return parseReasoningPolicy(value, `${selection} reasoning policy`);
|
|
105
|
+
}
|
|
106
|
+
static async #instantiate(route, env, reasoningPolicy) {
|
|
107
|
+
const provider = await ProviderInstantiate.#construct(route, env, reasoningPolicy);
|
|
108
|
+
ProviderInstantiate.#configurationAliasByProvider.set(provider, route.alias ?? null);
|
|
69
109
|
return provider;
|
|
70
110
|
}
|
|
71
|
-
static async #construct(
|
|
111
|
+
static async #construct(route, env, reasoningPolicy) {
|
|
72
112
|
// {§operator-config-precedence} — promote the alias-scoped provider-knob family
|
|
73
113
|
// (PLURNK_PROVIDERS_*_<alias>) to
|
|
74
114
|
// bare BEFORE construction, so per-alias tuning and generation-envelope pins bind. Without this
|
|
75
115
|
// the whole per-alias provider surface was silently dropped at construction.
|
|
76
|
-
env =
|
|
77
|
-
return ProviderInstantiate.#constructWith(
|
|
116
|
+
env = ProviderInstantiate.#scopedEnv(route, env, reasoningPolicy);
|
|
117
|
+
return ProviderInstantiate.#constructWith(route, env);
|
|
78
118
|
}
|
|
79
|
-
static async #constructWith(
|
|
80
|
-
return instantiateFrameworkProvider(
|
|
119
|
+
static async #constructWith(route, env) {
|
|
120
|
+
return instantiateFrameworkProvider(route.provider, env, route.model, undefined, undefined, route.baseUrl,
|
|
81
121
|
// #construct already materialized the alias-scoped environment.
|
|
82
122
|
undefined);
|
|
83
123
|
}
|
|
84
124
|
// Convenience: resolve + instantiate in one call. Returns null when no
|
|
85
125
|
// PLURNK_MODEL is set (caller decides what 'no provider' means).
|
|
86
126
|
static async loadActiveProvider(env = process.env) {
|
|
87
|
-
const
|
|
88
|
-
if (
|
|
127
|
+
const route = resolveActiveRoute(env); // PLURNK_MODEL resolves one alias or direct route — {§provider-instantiation-alias-resolution}
|
|
128
|
+
if (route === null)
|
|
89
129
|
return null;
|
|
90
|
-
const provider = await ProviderInstantiate.instantiateProvider(
|
|
91
|
-
|
|
130
|
+
const provider = await ProviderInstantiate.instantiateProvider(route, env);
|
|
131
|
+
ProviderInstantiate.validateGrammarConfiguration(provider, env);
|
|
92
132
|
return provider;
|
|
93
133
|
}
|
|
94
|
-
// A configured GBNF is an explicit local constrained-sampling contract.
|
|
95
|
-
//
|
|
96
|
-
//
|
|
97
|
-
static
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
const normalized = gbnf.replaceAll("\\", "/");
|
|
101
|
-
if (normalized.endsWith("/plurnk.qwen.gbnf") || normalized === "plurnk.qwen.gbnf") {
|
|
102
|
-
const sampled = `${ProviderInstantiate.#VERIFY_REASONING}</think>${ProviderInstantiate.#VERIFY_TOKEN}`;
|
|
103
|
-
return { sampled, response: `<think>\n${sampled}` };
|
|
104
|
-
}
|
|
105
|
-
const sampled = `<|channel>thought\n${ProviderInstantiate.#VERIFY_REASONING}<channel|>${ProviderInstantiate.#VERIFY_TOKEN}`;
|
|
106
|
-
return { sampled, response: sampled };
|
|
107
|
-
}
|
|
108
|
-
static async verifyGrammarEnforcement(provider, env = process.env) {
|
|
109
|
-
// {§grammar-enforcement-verified-at-boot}: resolve through the provider's registered alias,
|
|
110
|
-
// with the active alias
|
|
134
|
+
// A configured GBNF is an explicit local constrained-sampling contract. Admit
|
|
135
|
+
// only a provider configuration capable of carrying it. Actual enforcement is
|
|
136
|
+
// proven by each user-authorized generation; startup never generates tokens.
|
|
137
|
+
static validateGrammarConfiguration(provider, env = process.env, reasoningPolicy) {
|
|
138
|
+
// {§grammar-configuration-admission}: resolve through the provider's registered alias,
|
|
139
|
+
// with the active real alias; exact routes remain globally scoped
|
|
111
140
|
// retained only for the boot-global fallback.
|
|
112
|
-
|
|
113
|
-
const
|
|
141
|
+
ProviderInstantiate.assertGrammarConfigurationScope(provider, env);
|
|
142
|
+
const alias = ProviderInstantiate.configurationAliasOf(provider, env);
|
|
143
|
+
const scoped = alias === undefined ? env : scopeEnvToAlias(env, alias, [
|
|
114
144
|
"PLURNK_PROVIDERS_GBNF",
|
|
115
|
-
"PLURNK_PROVIDERS_GBNF_DEBUG",
|
|
116
145
|
"PLURNK_PROVIDERS_REASONING",
|
|
117
146
|
]);
|
|
118
147
|
const gbnf = scoped.PLURNK_PROVIDERS_GBNF;
|
|
119
148
|
if (gbnf === undefined || gbnf === "" || gbnf === "0")
|
|
120
149
|
return; // rails not requested — nothing to verify
|
|
121
|
-
if (scoped.PLURNK_PROVIDERS_REASONING === "off") {
|
|
122
|
-
throw new Error(`PLURNK_PROVIDERS_GBNF=${gbnf} is invalid with
|
|
150
|
+
if ((reasoningPolicy ?? scoped.PLURNK_PROVIDERS_REASONING) === "off") {
|
|
151
|
+
throw new Error(`PLURNK_PROVIDERS_GBNF=${gbnf} is invalid with reasoning policy off: the PLURNK GBNF requires adaptive or fixed reasoning ({§gbnf-requires-reasoning}).`);
|
|
123
152
|
}
|
|
124
153
|
if (provider.constrainsOutput !== true) {
|
|
125
154
|
throw new Error(`PLURNK_PROVIDERS_GBNF=${gbnf} configures local constrained sampling, but '${provider.model}' does not advertise GBNF transport. `
|
|
126
155
|
+ `Configure this knob only for a supported local llama-server; endpoint-managed constraints require no service-side GBNF setting. `
|
|
127
156
|
+ `If this is a llama-server, set PLURNK_PROVIDERS_LLAMA_SERVER_<alias>=1 when automatic detection is unavailable.`);
|
|
128
157
|
}
|
|
129
|
-
const debug = scoped.PLURNK_PROVIDERS_GBNF_DEBUG !== undefined
|
|
130
|
-
&& scoped.PLURNK_PROVIDERS_GBNF_DEBUG !== ""
|
|
131
|
-
&& scoped.PLURNK_PROVIDERS_GBNF_DEBUG !== "0";
|
|
132
|
-
if (debug)
|
|
133
|
-
return; // transport is deliberately withheld; real turns own validation and verdict evidence
|
|
134
|
-
const verifySentence = ProviderInstantiate.#verificationSentence(gbnf);
|
|
135
|
-
const forcing = `root ::= ${JSON.stringify(verifySentence.sampled)}`;
|
|
136
|
-
let response;
|
|
137
|
-
try {
|
|
138
|
-
response = await provider.generate({
|
|
139
|
-
messages: [{ role: "user", content: "ok" }],
|
|
140
|
-
workerId: "gbnf-enforcement-verify", grammar: forcing, maxOutputTokens: 32,
|
|
141
|
-
});
|
|
142
|
-
}
|
|
143
|
-
catch (cause) {
|
|
144
|
-
// A rejected probe request is distinct from a completed unconstrained response.
|
|
145
|
-
const detail = cause instanceof Error ? cause.message : String(cause);
|
|
146
|
-
throw new Error(`grammar enforcement verification could not COMPLETE its probe against '${provider.model}' (PLURNK_PROVIDERS_GBNF=${gbnf}) — the model REJECTED the probe request. `
|
|
147
|
-
+ `This is a request/config incompatibility, NOT proof the rails are dark (and it would fail every real turn too). `
|
|
148
|
-
+ `The configured rail requires a reasoning-capable model and a compatible adaptive/on reasoning posture. `
|
|
149
|
-
+ `Refusing to boot until the request the daemon sends is one the model accepts. Probe error: ${detail}`, { cause });
|
|
150
|
-
}
|
|
151
|
-
const evidence = response.grammarEvidence;
|
|
152
|
-
if (evidence === undefined) {
|
|
153
|
-
throw new Error(`GBNF enforcement failed: '${provider.model}' did not return grammar evidence for the forcing probe. `
|
|
154
|
-
+ `The service cannot verify the pre-projection sentence and refuses to boot.`);
|
|
155
|
-
}
|
|
156
|
-
const input = evidence.input.replace(/(<eos>|<\/s>|<\|eot_id\|>|<\|endoftext\|>|<end_of_turn>)$/, "");
|
|
157
|
-
if (!evidence.transported || input !== verifySentence.response) {
|
|
158
|
-
throw new Error(`GBNF enforcement failed: PLURNK_PROVIDERS_GBNF=${gbnf} requests constrained sampling, but '${provider.model}' returned unconstrained output to a forcing grammar `
|
|
159
|
-
+ `(expected ${JSON.stringify(verifySentence.response)}, got ${JSON.stringify(input.slice(0, 80))}; transported=${evidence.transported}). `
|
|
160
|
-
+ `Refusing to boot because the configured local constraint was not enforced. `
|
|
161
|
-
+ `Check the llama-server capability or remove the PLURNK_PROVIDERS_GBNF setting.`);
|
|
162
|
-
}
|
|
163
158
|
}
|
|
164
159
|
}
|
|
165
160
|
//# sourceMappingURL=ProviderInstantiate.js.map
|