@plurnk/plurnk-service 1.3.12 → 1.4.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 +84 -77
- package/INSTALL.md +50 -25
- package/README.md +24 -10
- package/SPEC.md +2311 -928
- package/dist/Paths.d.ts +4 -1
- package/dist/Paths.d.ts.map +1 -1
- package/dist/Paths.js +23 -21
- package/dist/Paths.js.map +1 -1
- package/dist/build-info.json +1 -1
- package/dist/content/edit-receipt.d.ts +13 -28
- package/dist/content/edit-receipt.d.ts.map +1 -1
- package/dist/content/edit-receipt.js +285 -104
- package/dist/content/edit-receipt.js.map +1 -1
- package/dist/content/edited-span.d.ts.map +1 -1
- package/dist/content/edited-span.js +2 -5
- package/dist/content/edited-span.js.map +1 -1
- package/dist/content/index.d.ts +3 -3
- package/dist/content/index.d.ts.map +1 -1
- package/dist/content/index.js +1 -1
- package/dist/content/index.js.map +1 -1
- package/dist/content/line-marker.d.ts +6 -9
- package/dist/content/line-marker.d.ts.map +1 -1
- package/dist/content/line-marker.js +7 -11
- package/dist/content/line-marker.js.map +1 -1
- package/dist/content/matcher.d.ts +14 -25
- package/dist/content/matcher.d.ts.map +1 -1
- package/dist/content/matcher.js +77 -107
- package/dist/content/matcher.js.map +1 -1
- package/dist/content/mimetype-binary.d.ts +2 -2
- package/dist/content/mimetype-binary.d.ts.map +1 -1
- package/dist/content/mimetype-binary.js +10 -10
- package/dist/content/mimetype-binary.js.map +1 -1
- package/dist/content/path-mimetype.js +3 -3
- package/dist/content/path-mimetype.js.map +1 -1
- package/dist/content/read-resolve.d.ts +8 -4
- package/dist/content/read-resolve.d.ts.map +1 -1
- package/dist/content/read-resolve.js +101 -49
- package/dist/content/read-resolve.js.map +1 -1
- package/dist/core/BranchReceipt.d.ts +7 -0
- package/dist/core/BranchReceipt.d.ts.map +1 -0
- package/dist/core/BranchReceipt.js +27 -0
- package/dist/core/BranchReceipt.js.map +1 -0
- package/dist/core/BudgetOverflow.d.ts +23 -0
- package/dist/core/BudgetOverflow.d.ts.map +1 -0
- package/dist/core/BudgetOverflow.js +61 -0
- package/dist/core/BudgetOverflow.js.map +1 -0
- package/dist/core/BudgetReadout.d.ts +8 -0
- package/dist/core/BudgetReadout.d.ts.map +1 -0
- package/dist/core/BudgetReadout.js +79 -0
- package/dist/core/BudgetReadout.js.map +1 -0
- package/dist/core/ChannelWrite.d.ts +28 -9
- package/dist/core/ChannelWrite.d.ts.map +1 -1
- package/dist/core/ChannelWrite.js +28 -21
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/ChannelWrite.sql +11 -10
- package/dist/core/CoreSchemeServices.d.ts +10 -4
- package/dist/core/CoreSchemeServices.d.ts.map +1 -1
- package/dist/core/CoreSchemeServices.js +7 -1
- package/dist/core/CoreSchemeServices.js.map +1 -1
- package/dist/core/Dispatcher.d.ts +29 -20
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +1488 -599
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/DurableStatement.d.ts +6 -0
- package/dist/core/DurableStatement.d.ts.map +1 -0
- package/dist/core/DurableStatement.js +51 -0
- package/dist/core/DurableStatement.js.map +1 -0
- package/dist/core/Engine.d.ts +48 -20
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +1208 -789
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +309 -217
- package/dist/core/EnvFlags.js +1 -1
- package/dist/core/EnvFlags.js.map +1 -1
- package/dist/core/ErrorDetail.d.ts +6 -0
- package/dist/core/ErrorDetail.d.ts.map +1 -0
- package/dist/core/ErrorDetail.js +20 -0
- package/dist/core/ErrorDetail.js.map +1 -0
- package/dist/core/ExecutorRegistry.d.ts +14 -3
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +56 -30
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/GitBranch.d.ts +20 -0
- package/dist/core/GitBranch.d.ts.map +1 -0
- package/dist/core/GitBranch.js +110 -0
- package/dist/core/GitBranch.js.map +1 -0
- package/dist/core/JournalTurn.d.ts +9 -0
- package/dist/core/JournalTurn.d.ts.map +1 -0
- package/dist/core/JournalTurn.js +14 -0
- package/dist/core/JournalTurn.js.map +1 -0
- package/dist/core/JournalTurn.sql +10 -0
- package/dist/core/LogBody.d.ts +17 -0
- package/dist/core/LogBody.d.ts.map +1 -0
- package/dist/core/LogBody.js +148 -0
- package/dist/core/LogBody.js.map +1 -0
- package/dist/core/LoopFlagsReader.d.ts +7 -0
- package/dist/core/LoopFlagsReader.d.ts.map +1 -0
- package/dist/core/LoopFlagsReader.js +33 -0
- package/dist/core/LoopFlagsReader.js.map +1 -0
- package/dist/core/LoopLifecycle.d.ts +8 -1
- package/dist/core/LoopLifecycle.d.ts.map +1 -1
- package/dist/core/LoopLifecycle.js +55 -9
- package/dist/core/LoopLifecycle.js.map +1 -1
- package/dist/core/LoopLifecycle.sql +9 -3
- package/dist/core/NoticeChannel.d.ts +13 -0
- package/dist/core/NoticeChannel.d.ts.map +1 -0
- package/dist/core/NoticeChannel.js +40 -0
- package/dist/core/NoticeChannel.js.map +1 -0
- package/dist/core/Owner.d.ts +0 -1
- package/dist/core/Owner.d.ts.map +1 -1
- package/dist/core/Owner.js +2 -5
- package/dist/core/Owner.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts +25 -24
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +313 -375
- package/dist/core/PacketBuilder.js.map +1 -1
- package/dist/core/ProblemLog.d.ts +26 -0
- package/dist/core/ProblemLog.d.ts.map +1 -0
- package/dist/core/ProblemLog.js +58 -0
- package/dist/core/ProblemLog.js.map +1 -0
- package/dist/core/ProposalLifecycle.d.ts +15 -21
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +291 -78
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProviderInstantiate.d.ts.map +1 -1
- package/dist/core/ProviderInstantiate.js +51 -48
- package/dist/core/ProviderInstantiate.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +14 -8
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +189 -114
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/ServiceTeardown.d.ts +11 -0
- package/dist/core/ServiceTeardown.d.ts.map +1 -0
- package/dist/core/ServiceTeardown.js +70 -0
- package/dist/core/ServiceTeardown.js.map +1 -0
- package/dist/core/StoredPacket.d.ts +29 -0
- package/dist/core/StoredPacket.d.ts.map +1 -0
- package/dist/core/StoredPacket.js +147 -0
- package/dist/core/StoredPacket.js.map +1 -0
- package/dist/core/StrikeRail.d.ts +1 -2
- package/dist/core/StrikeRail.d.ts.map +1 -1
- package/dist/core/StrikeRail.js +25 -55
- package/dist/core/StrikeRail.js.map +1 -1
- package/dist/core/WorkerControlAddress.d.ts +17 -0
- package/dist/core/WorkerControlAddress.d.ts.map +1 -0
- package/dist/core/WorkerControlAddress.js +44 -0
- package/dist/core/WorkerControlAddress.js.map +1 -0
- package/dist/core/WorkerName.d.ts +31 -0
- package/dist/core/WorkerName.d.ts.map +1 -0
- package/dist/core/WorkerName.js +95 -0
- package/dist/core/WorkerName.js.map +1 -0
- package/dist/core/WorkerName.sql +36 -0
- package/dist/core/WorkspaceGate.d.ts +14 -0
- package/dist/core/WorkspaceGate.d.ts.map +1 -0
- package/dist/core/WorkspaceGate.js +155 -0
- package/dist/core/WorkspaceGate.js.map +1 -0
- package/dist/core/caps/CapsResolve.d.ts +1 -1
- package/dist/core/caps/CapsResolve.d.ts.map +1 -1
- package/dist/core/caps/CapsResolve.js.map +1 -1
- package/dist/core/caps/DbChannelCaps.d.ts +5 -11
- package/dist/core/caps/DbChannelCaps.d.ts.map +1 -1
- package/dist/core/caps/DbChannelCaps.js +24 -8
- package/dist/core/caps/DbChannelCaps.js.map +1 -1
- package/dist/core/caps/DbEntryCaps.d.ts +4 -13
- package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
- package/dist/core/caps/DbEntryCaps.js +15 -6
- 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 +12 -11
- package/dist/core/caps/DbNotifyCaps.js.map +1 -1
- package/dist/core/caps/DbProjectionCaps.d.ts +5 -5
- package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
- package/dist/core/caps/DbProjectionCaps.js +21 -4
- package/dist/core/caps/DbProjectionCaps.js.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.d.ts +4 -4
- package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
- package/dist/core/caps/DbSubscriptionCaps.js +57 -62
- package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
- package/dist/core/caps/DbTagCaps.d.ts +5 -12
- package/dist/core/caps/DbTagCaps.d.ts.map +1 -1
- package/dist/core/caps/DbTagCaps.js +14 -7
- package/dist/core/caps/DbTagCaps.js.map +1 -1
- package/dist/core/content-hash.js +1 -1
- package/dist/core/content-hash.js.map +1 -1
- package/dist/core/env-defaults.d.ts.map +1 -1
- package/dist/core/env-defaults.js.map +1 -1
- package/dist/core/fork.d.ts.map +1 -1
- package/dist/core/fork.js +55 -30
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +41 -27
- package/dist/core/git-env.d.ts +2 -0
- package/dist/core/git-env.d.ts.map +1 -1
- package/dist/core/git-env.js +13 -18
- package/dist/core/git-env.js.map +1 -1
- package/dist/core/git-iso.d.ts.map +1 -1
- package/dist/core/git-iso.js +9 -15
- package/dist/core/git-iso.js.map +1 -1
- package/dist/core/git-membership.d.ts +1 -1
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js +198 -146
- 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 +10 -11
- package/dist/core/git-state.js.map +1 -1
- package/dist/core/owner.sql +1 -1
- package/dist/core/packet-inject.d.ts.map +1 -1
- package/dist/core/packet-inject.js +7 -11
- package/dist/core/packet-inject.js.map +1 -1
- package/dist/core/packet-wire.d.ts +2 -20
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +242 -368
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +12 -1
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +49 -29
- package/dist/core/plurnk-uri.js.map +1 -1
- package/dist/core/results.d.ts +16 -5
- package/dist/core/results.d.ts.map +1 -1
- package/dist/core/results.js +27 -18
- package/dist/core/results.js.map +1 -1
- package/dist/core/ruler_count.d.ts +4 -0
- package/dist/core/ruler_count.d.ts.map +1 -0
- package/dist/core/ruler_count.js +7 -0
- package/dist/core/ruler_count.js.map +1 -0
- package/dist/core/scheme-types.d.ts +9 -11
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/scheme-types.js.map +1 -1
- package/dist/core/search-gate.d.ts.map +1 -1
- package/dist/core/search-gate.js +3 -11
- package/dist/core/search-gate.js.map +1 -1
- package/dist/core/teaching-corpus.d.ts +6 -0
- package/dist/core/teaching-corpus.d.ts.map +1 -0
- package/dist/core/teaching-corpus.js +23 -0
- package/dist/core/teaching-corpus.js.map +1 -0
- package/dist/core/teaching.d.ts +0 -1
- package/dist/core/teaching.d.ts.map +1 -1
- package/dist/core/teaching.js +2 -8
- package/dist/core/teaching.js.map +1 -1
- package/dist/core/token-ruler.d.ts.map +1 -1
- package/dist/core/token-ruler.js +3 -16
- package/dist/core/token-ruler.js.map +1 -1
- package/dist/core/turn-scheduler.d.ts +1 -1
- package/dist/core/turn-scheduler.d.ts.map +1 -1
- package/dist/core/turn-scheduler.js +1 -1
- package/dist/core/turn-scheduler.js.map +1 -1
- package/dist/core/worker-cap.d.ts +2 -4
- package/dist/core/worker-cap.d.ts.map +1 -1
- package/dist/core/worker-cap.js +13 -4
- package/dist/core/worker-cap.js.map +1 -1
- package/dist/core/{run-ops.sql → worker-ops.sql} +11 -11
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js +17 -9
- package/dist/core/workspace-settings.js.map +1 -1
- package/dist/digest/Digest.d.ts +2 -1
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +337 -138
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/digest.sql +19 -10
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -5
- package/dist/index.js.map +1 -1
- package/dist/matrix/live-specimen.d.ts +9 -0
- package/dist/matrix/live-specimen.d.ts.map +1 -0
- package/dist/matrix/live-specimen.js +37 -0
- package/dist/matrix/live-specimen.js.map +1 -0
- package/dist/observe/api.d.ts +6 -0
- package/dist/observe/api.d.ts.map +1 -0
- package/dist/observe/api.js +11 -0
- package/dist/observe/api.js.map +1 -0
- package/dist/observe/init.d.ts +7 -0
- package/dist/observe/init.d.ts.map +1 -0
- package/dist/observe/init.js +159 -0
- package/dist/observe/init.js.map +1 -0
- package/dist/observe/metrics.d.ts +6 -0
- package/dist/observe/metrics.d.ts.map +1 -0
- package/dist/observe/metrics.js +15 -0
- package/dist/observe/metrics.js.map +1 -0
- package/dist/observe/spans.d.ts +4 -0
- package/dist/observe/spans.d.ts.map +1 -0
- package/dist/observe/spans.js +51 -0
- package/dist/observe/spans.js.map +1 -0
- package/dist/schemes/EffectPolicy.d.ts +1 -0
- package/dist/schemes/EffectPolicy.d.ts.map +1 -1
- package/dist/schemes/EffectPolicy.js +5 -2
- package/dist/schemes/EffectPolicy.js.map +1 -1
- package/dist/schemes/Exec.d.ts +6 -11
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +364 -247
- package/dist/schemes/Exec.js.map +1 -1
- package/dist/schemes/ExecOutputScheme.d.ts +8 -7
- package/dist/schemes/ExecOutputScheme.d.ts.map +1 -1
- package/dist/schemes/ExecOutputScheme.js +48 -9
- package/dist/schemes/ExecOutputScheme.js.map +1 -1
- package/dist/schemes/File.d.ts +7 -11
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +279 -142
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.d.ts +4 -8
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +475 -208
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Log.sql +62 -30
- package/dist/schemes/Prompt.d.ts +3 -2
- package/dist/schemes/Prompt.d.ts.map +1 -1
- package/dist/schemes/Prompt.js +9 -6
- package/dist/schemes/Prompt.js.map +1 -1
- package/dist/schemes/Skill.d.ts +1 -1
- package/dist/schemes/Skill.d.ts.map +1 -1
- package/dist/schemes/Skill.js +2 -3
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Worker.d.ts +8 -16
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +179 -69
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-chunk.d.ts.map +1 -1
- package/dist/schemes/_entry-chunk.js +12 -5
- package/dist/schemes/_entry-chunk.js.map +1 -1
- package/dist/schemes/_entry-crud.d.ts +10 -9
- package/dist/schemes/_entry-crud.d.ts.map +1 -1
- package/dist/schemes/_entry-crud.js +59 -13
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +20 -8
- package/dist/schemes/_entry-find.d.ts +20 -15
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +339 -174
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +20 -8
- package/dist/schemes/_entry-graph.d.ts +4 -2
- package/dist/schemes/_entry-graph.d.ts.map +1 -1
- package/dist/schemes/_entry-graph.js +55 -31
- package/dist/schemes/_entry-graph.js.map +1 -1
- package/dist/schemes/_entry-graph.sql +37 -22
- package/dist/schemes/_entry-manifest.d.ts +10 -15
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +50 -268
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-ops.d.ts +9 -14
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +149 -77
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_entry-ops.sql +1 -1
- package/dist/schemes/_entry-semantic.d.ts +23 -8
- package/dist/schemes/_entry-semantic.d.ts.map +1 -1
- package/dist/schemes/_entry-semantic.js +141 -60
- package/dist/schemes/_entry-semantic.js.map +1 -1
- package/dist/schemes/_entry-semantic.sql +63 -45
- package/dist/schemes/_entry-send.d.ts +3 -4
- package/dist/schemes/_entry-send.d.ts.map +1 -1
- package/dist/schemes/_entry-send.js +48 -23
- package/dist/schemes/_entry-send.js.map +1 -1
- package/dist/schemes/_path-scope.d.ts +23 -0
- package/dist/schemes/_path-scope.d.ts.map +1 -0
- package/dist/schemes/_path-scope.js +61 -0
- package/dist/schemes/_path-scope.js.map +1 -0
- package/dist/schemes/_search-candidate.d.ts +20 -0
- package/dist/schemes/_search-candidate.d.ts.map +1 -0
- package/dist/schemes/_search-candidate.js +19 -0
- package/dist/schemes/_search-candidate.js.map +1 -0
- package/dist/schemes/_search-exclusion.d.ts +7 -0
- package/dist/schemes/_search-exclusion.d.ts.map +1 -0
- package/dist/schemes/_search-exclusion.js +23 -0
- package/dist/schemes/_search-exclusion.js.map +1 -0
- package/dist/schemes/_search-index.d.ts +6 -0
- package/dist/schemes/_search-index.d.ts.map +1 -0
- package/dist/schemes/_search-index.js +326 -0
- package/dist/schemes/_search-index.js.map +1 -0
- package/dist/schemes/cosine.js +1 -1
- package/dist/schemes/cosine.js.map +1 -1
- package/dist/schemes/exec-abort.js +3 -3
- package/dist/schemes/exec-abort.js.map +1 -1
- package/dist/schemes/exec-env.js +3 -3
- package/dist/schemes/exec-env.js.map +1 -1
- package/dist/server/BranchBatches.d.ts +48 -0
- package/dist/server/BranchBatches.d.ts.map +1 -0
- package/dist/server/BranchBatches.js +591 -0
- package/dist/server/BranchBatches.js.map +1 -0
- package/dist/server/Daemon.d.ts +36 -66
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +920 -446
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +31 -0
- package/dist/server/DaemonModule.d.ts.map +1 -0
- package/dist/server/DaemonModule.js +2 -0
- package/dist/server/DaemonModule.js.map +1 -0
- package/dist/server/branch-batch.sql +152 -0
- package/dist/server/client-input.d.ts +12 -0
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +262 -57
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +15 -7
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +92 -62
- package/dist/server/envelope.d.ts +2 -5
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +119 -95
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +19 -23
- package/dist/server/exec-poll-backoff.js +1 -1
- package/dist/server/exec-poll-backoff.js.map +1 -1
- package/dist/server/lifecycle-recovery.sql +79 -2
- package/dist/server/logEntry.d.ts +3 -1
- package/dist/server/logEntry.d.ts.map +1 -1
- package/dist/server/logEntry.js +4 -2
- package/dist/server/logEntry.js.map +1 -1
- package/dist/server/logEntry.sql +1 -1
- package/dist/server/loop-model.d.ts.map +1 -1
- package/dist/server/loop-model.js +22 -9
- package/dist/server/loop-model.js.map +1 -1
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +5 -4
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/seam-entry-read.sql +15 -10
- package/dist/server/seam-log-read.sql +2 -2
- package/dist/server/seam-loop.sql +1 -1
- package/dist/server/seam-proposal-list.sql +17 -7
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +66 -60
- package/dist/service.js.map +1 -1
- package/migrations/001_schema.sql +897 -0
- package/package.json +57 -26
- package/dist/core/PluginLoader.d.ts +0 -20
- package/dist/core/PluginLoader.d.ts.map +0 -1
- package/dist/core/PluginLoader.js +0 -142
- package/dist/core/PluginLoader.js.map +0 -1
- package/dist/core/TelemetryChannel.d.ts +0 -37
- package/dist/core/TelemetryChannel.d.ts.map +0 -1
- package/dist/core/TelemetryChannel.js +0 -80
- package/dist/core/TelemetryChannel.js.map +0 -1
- package/dist/core/path-decode.d.ts +0 -3
- package/dist/core/path-decode.d.ts.map +0 -1
- package/dist/core/path-decode.js +0 -9
- package/dist/core/path-decode.js.map +0 -1
- package/dist/core/plugin-attribution.d.ts +0 -5
- package/dist/core/plugin-attribution.d.ts.map +0 -1
- package/dist/core/plugin-attribution.js +0 -39
- package/dist/core/plugin-attribution.js.map +0 -1
- package/dist/core/world-state.d.ts +0 -10
- package/dist/core/world-state.d.ts.map +0 -1
- package/dist/core/world-state.js +0 -35
- package/dist/core/world-state.js.map +0 -1
- package/dist/core/world-state.sql +0 -35
- package/dist/core/zero-pin.d.ts +0 -3
- package/dist/core/zero-pin.d.ts.map +0 -1
- package/dist/core/zero-pin.js +0 -16
- package/dist/core/zero-pin.js.map +0 -1
- package/dist/server/auto.d.ts +0 -6
- package/dist/server/auto.d.ts.map +0 -1
- package/dist/server/auto.js +0 -63
- package/dist/server/auto.js.map +0 -1
- package/dist/server/clientTurn.d.ts +0 -6
- package/dist/server/clientTurn.d.ts.map +0 -1
- package/dist/server/clientTurn.js +0 -22
- package/dist/server/clientTurn.js.map +0 -1
- package/dist/server/clientTurn.sql +0 -10
- package/dist/server/noProposals.d.ts +0 -6
- package/dist/server/noProposals.d.ts.map +0 -1
- package/dist/server/noProposals.js +0 -37
- package/dist/server/noProposals.js.map +0 -1
- package/dist/server/version-info.d.ts +0 -14
- package/dist/server/version-info.d.ts.map +0 -1
- package/dist/server/version-info.js +0 -69
- package/dist/server/version-info.js.map +0 -1
- package/migrations/0000-00-00.01_schema.sql +0 -536
- package/migrations/0004_loop-provider.sql +0 -3
- package/migrations/0005_subscription-published-channel.sql +0 -3
- package/migrations/0006_loop-max-turns.sql +0 -3
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
// Shared SEND dispatcher for entry-bearing schemes. Schemes interpret
|
|
2
|
-
// status codes per SPEC §send-dispatch. v0 handles 410 (Gone, delete the resource)
|
|
2
|
+
// status codes per SPEC {§send-dispatch}. v0 handles 410 (Gone, delete the resource)
|
|
3
3
|
// and 499 (Client Closed Request, cancel active subscription).
|
|
4
4
|
import Owner from "../core/Owner.js";
|
|
5
|
-
import {
|
|
5
|
+
import { entryPathnameOf, renderAddress } from "../core/plurnk-uri.js";
|
|
6
6
|
import EntryCrud from "./_entry-crud.js";
|
|
7
7
|
import ChannelWrite from "../core/ChannelWrite.js";
|
|
8
|
+
import Results from "../core/results.js";
|
|
8
9
|
export default class EntrySend {
|
|
9
10
|
static #pathnameOf(statement) {
|
|
10
11
|
const path = statement.target;
|
|
11
12
|
if (path === null)
|
|
12
13
|
return null;
|
|
13
|
-
|
|
14
|
-
return path.raw; // regex source — parens are syntax, never encoded
|
|
15
|
-
return decodePathParens(path.kind === "url" ? path.pathname : path.raw); // #239 item 4
|
|
14
|
+
return entryPathnameOf(path);
|
|
16
15
|
}
|
|
17
16
|
static #fragmentOf(statement) {
|
|
18
17
|
const path = statement.target;
|
|
@@ -21,47 +20,73 @@ export default class EntrySend {
|
|
|
21
20
|
return path.fragment;
|
|
22
21
|
}
|
|
23
22
|
static async sendToWorkspaceEntry(statement, ctx, scheme, explicitOwnerId) {
|
|
24
|
-
|
|
25
|
-
|
|
23
|
+
const failure = (code, status, detail, fields = {}, extensions = {}) => Results.failure(`scheme:${scheme}`, code, status, detail, fields, extensions);
|
|
24
|
+
if (statement.target === null) {
|
|
25
|
+
return failure("target-required", 400, "Directed SEND requires a target path.", {}, {
|
|
26
|
+
recovery: "Provide the target path.",
|
|
27
|
+
retryable: false,
|
|
28
|
+
});
|
|
29
|
+
}
|
|
26
30
|
const status = statement.signal;
|
|
27
|
-
if (status === null)
|
|
28
|
-
return
|
|
29
|
-
|
|
31
|
+
if (status === null) {
|
|
32
|
+
return failure("status-required", 400, "SEND requires a numeric status code.", {}, {
|
|
33
|
+
recovery: "Provide a numeric SEND status.",
|
|
34
|
+
retryable: false,
|
|
35
|
+
});
|
|
36
|
+
}
|
|
37
|
+
// SEND[410] Gone — delete the targeted resource (SPEC {§send-dispatch}). With a
|
|
30
38
|
// #fragment, deletes just that channel; without, deletes the whole entry.
|
|
31
39
|
if (status === 410) {
|
|
32
40
|
const pathname = EntrySend.#pathnameOf(statement);
|
|
33
41
|
if (pathname === null)
|
|
34
|
-
return
|
|
42
|
+
return failure("target-required", 400, "SEND[410] requires a target path.");
|
|
43
|
+
const target = renderAddress(scheme, pathname);
|
|
35
44
|
const fragment = EntrySend.#fragmentOf(statement);
|
|
36
45
|
if (fragment !== null) {
|
|
37
46
|
const { db, workspaceId } = ctx;
|
|
38
47
|
const entry = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, owner_id: explicitOwnerId ?? await Owner.commonsId(db, workspaceId), scheme, pathname });
|
|
39
|
-
if (entry === undefined)
|
|
40
|
-
return {
|
|
48
|
+
if (entry === undefined) {
|
|
49
|
+
return failure("entry-not-found", 404, `No entry exists at ${target}.`, {}, { target });
|
|
50
|
+
}
|
|
41
51
|
const deleted = await db.crud_delete_channel.get({ entry_id: entry.id, name: fragment });
|
|
42
|
-
return
|
|
52
|
+
return deleted === undefined
|
|
53
|
+
? failure("channel-not-found", 404, `No channel named #${fragment} exists at ${target}.`, {}, {
|
|
54
|
+
target,
|
|
55
|
+
channel: fragment,
|
|
56
|
+
})
|
|
57
|
+
: { status: 200 };
|
|
43
58
|
}
|
|
44
59
|
const result = await EntryCrud.deleteEntry(pathname, ctx, scheme, explicitOwnerId);
|
|
45
|
-
return
|
|
60
|
+
return result;
|
|
46
61
|
}
|
|
47
|
-
// SEND[499] Client Closed Request — cancel active subscription (SPEC §send-dispatch, §stream-control).
|
|
62
|
+
// SEND[499] Client Closed Request — cancel active subscription (SPEC {§send-dispatch}, {§stream-control}).
|
|
48
63
|
// Entry-bearing schemes never have subscriptions in v0; always return 404.
|
|
49
64
|
// Streaming schemes (sse / exec / etc.) override this and look up via
|
|
50
65
|
// findActiveSubscription, then call their teardown using the stored handle.
|
|
51
66
|
if (status === 499) {
|
|
52
67
|
const pathname = EntrySend.#pathnameOf(statement);
|
|
53
68
|
if (pathname === null)
|
|
54
|
-
return
|
|
69
|
+
return failure("target-required", 400, "SEND[499] requires a target path.");
|
|
70
|
+
const target = renderAddress(scheme, pathname);
|
|
55
71
|
const { db, workspaceId, workerId } = ctx;
|
|
56
72
|
const entry = await db.crud_find_workspace_entry.get({ workspace_id: workspaceId, owner_id: explicitOwnerId ?? await Owner.commonsId(db, workspaceId), scheme, pathname });
|
|
57
|
-
if (entry === undefined)
|
|
58
|
-
return
|
|
73
|
+
if (entry === undefined) {
|
|
74
|
+
return failure("entry-not-found", 404, `No entry exists at ${target}.`, {}, { target });
|
|
75
|
+
}
|
|
59
76
|
const subscription = await ChannelWrite.findActiveSubscription(db, { workerId, entryId: entry.id });
|
|
60
|
-
if (subscription === null)
|
|
61
|
-
return
|
|
62
|
-
|
|
77
|
+
if (subscription === null) {
|
|
78
|
+
return failure("subscription-not-found", 404, `No active subscription exists at ${target}.`, {}, { target });
|
|
79
|
+
}
|
|
80
|
+
return failure("subscription-owned-elsewhere", 501, `Scheme '${subscription.scheme}' owns cancellation for this subscription.`, {}, {
|
|
81
|
+
target,
|
|
82
|
+
owningScheme: subscription.scheme,
|
|
83
|
+
retryable: false,
|
|
84
|
+
});
|
|
63
85
|
}
|
|
64
|
-
return
|
|
86
|
+
return failure("status-not-implemented", 501, `The '${scheme}' entry scheme does not interpret SEND status ${status}.`, {}, {
|
|
87
|
+
requestedStatus: status,
|
|
88
|
+
retryable: false,
|
|
89
|
+
}); // {§send-dispatch-entry-schemes-501-on-non-410}
|
|
65
90
|
}
|
|
66
91
|
}
|
|
67
92
|
//# sourceMappingURL=_entry-send.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"AAAA,sEAAsE;AACtE,
|
|
1
|
+
{"version":3,"file":"_entry-send.js","sourceRoot":"","sources":["../../src/schemes/_entry-send.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export type PathScope = {
|
|
2
|
+
kind: "exact";
|
|
3
|
+
pathname: string;
|
|
4
|
+
candidatePrefix: string;
|
|
5
|
+
} | {
|
|
6
|
+
kind: "folder";
|
|
7
|
+
prefix: string;
|
|
8
|
+
candidatePrefix: string;
|
|
9
|
+
} | {
|
|
10
|
+
kind: "glob";
|
|
11
|
+
pattern: string;
|
|
12
|
+
candidatePrefix: string | null;
|
|
13
|
+
shallowPrefix: string | null;
|
|
14
|
+
recursivePrefix: string | null;
|
|
15
|
+
};
|
|
16
|
+
export declare const pathScope: (pathname: string, folderScopes: boolean) => PathScope;
|
|
17
|
+
export declare const pathScopeMatches: (scope: PathScope, pathname: string) => boolean;
|
|
18
|
+
export type PathFolderSummary = {
|
|
19
|
+
selector: string;
|
|
20
|
+
pathnames: string[];
|
|
21
|
+
};
|
|
22
|
+
export declare const pathFolderSummaries: (scope: PathScope, pathnames: readonly string[]) => PathFolderSummary[];
|
|
23
|
+
//# sourceMappingURL=_path-scope.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_path-scope.d.ts","sourceRoot":"","sources":["../../src/schemes/_path-scope.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,SAAS,GACf;IAAE,IAAI,EAAE,OAAO,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAC5D;IAAE,IAAI,EAAE,QAAQ,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAA;CAAE,GAC3D;IACE,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;CAClC,CAAC;AAEN,eAAO,MAAM,SAAS,aAAc,MAAM,gBAAgB,OAAO,KAAG,SAanE,CAAC;AAEF,eAAO,MAAM,gBAAgB,UAAW,SAAS,YAAY,MAAM,KAAG,OAarE,CAAC;AAEF,MAAM,MAAM,iBAAiB,GAAG;IAC5B,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,MAAM,EAAE,CAAC;CACvB,CAAC;AAKF,eAAO,MAAM,mBAAmB,UACrB,SAAS,aACL,SAAS,MAAM,EAAE,KAC7B,iBAAiB,EAgBnB,CAAC"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { posix } from "node:path";
|
|
2
|
+
import { PathSyntax } from "@plurnk/plurnk-contracts";
|
|
3
|
+
export const pathScope = (pathname, folderScopes) => {
|
|
4
|
+
if (folderScopes && (pathname === "" || pathname.endsWith("/"))) {
|
|
5
|
+
return { kind: "folder", prefix: pathname, candidatePrefix: pathname };
|
|
6
|
+
}
|
|
7
|
+
const magic = PathSyntax.globMagicIndex(pathname);
|
|
8
|
+
if (magic < 0)
|
|
9
|
+
return { kind: "exact", pathname, candidatePrefix: pathname };
|
|
10
|
+
const candidatePrefix = magic === 0 ? null : pathname.slice(0, magic);
|
|
11
|
+
const shallowPrefix = pathname[magic] === "*" && pathname[magic + 1] !== "*"
|
|
12
|
+
&& magic === pathname.length - 1
|
|
13
|
+
? pathname.slice(0, magic)
|
|
14
|
+
: null;
|
|
15
|
+
const recursivePrefix = pathname.slice(magic) === "**" ? pathname.slice(0, magic) : null;
|
|
16
|
+
return { kind: "glob", pattern: pathname, candidatePrefix, shallowPrefix, recursivePrefix };
|
|
17
|
+
};
|
|
18
|
+
export const pathScopeMatches = (scope, pathname) => {
|
|
19
|
+
if (scope.kind === "exact")
|
|
20
|
+
return pathname === scope.pathname;
|
|
21
|
+
if (scope.kind === "folder")
|
|
22
|
+
return pathname.startsWith(scope.prefix);
|
|
23
|
+
// Terminal `*` and `**` are the structural catalog selectors. They include
|
|
24
|
+
// dot entries so the promised complete map cannot hide `.env.defaults` or
|
|
25
|
+
// `.github`; richer shell patterns retain Node's native dotfile behavior.
|
|
26
|
+
if (scope.shallowPrefix !== null) {
|
|
27
|
+
if (!pathname.startsWith(scope.shallowPrefix))
|
|
28
|
+
return false;
|
|
29
|
+
const remainder = pathname.slice(scope.shallowPrefix.length);
|
|
30
|
+
return remainder.length > 0 && !remainder.includes("/");
|
|
31
|
+
}
|
|
32
|
+
if (scope.recursivePrefix !== null)
|
|
33
|
+
return pathname.startsWith(scope.recursivePrefix);
|
|
34
|
+
return posix.matchesGlob(pathname, scope.pattern);
|
|
35
|
+
};
|
|
36
|
+
// A terminal single-star glob is a one-level catalog. Real entries at that
|
|
37
|
+
// level remain ordinary results; deeper entries collapse under an actionable
|
|
38
|
+
// `dir/**` selector that describes exactly the subtree being summarized.
|
|
39
|
+
export const pathFolderSummaries = (scope, pathnames) => {
|
|
40
|
+
if (scope.kind !== "glob" || scope.shallowPrefix === null)
|
|
41
|
+
return [];
|
|
42
|
+
const bySelector = new Map();
|
|
43
|
+
for (const pathname of pathnames) {
|
|
44
|
+
if (!pathname.startsWith(scope.shallowPrefix))
|
|
45
|
+
continue;
|
|
46
|
+
const remainder = pathname.slice(scope.shallowPrefix.length);
|
|
47
|
+
const slash = remainder.indexOf("/");
|
|
48
|
+
if (slash < 0)
|
|
49
|
+
continue;
|
|
50
|
+
const selector = `${scope.shallowPrefix}${remainder.slice(0, slash + 1)}**`;
|
|
51
|
+
const members = bySelector.get(selector);
|
|
52
|
+
if (members === undefined)
|
|
53
|
+
bySelector.set(selector, [pathname]);
|
|
54
|
+
else
|
|
55
|
+
members.push(pathname);
|
|
56
|
+
}
|
|
57
|
+
return [...bySelector.entries()]
|
|
58
|
+
.map(([selector, members]) => ({ selector, pathnames: members }))
|
|
59
|
+
.toSorted((a, b) => a.selector.localeCompare(b.selector));
|
|
60
|
+
};
|
|
61
|
+
//# sourceMappingURL=_path-scope.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_path-scope.js","sourceRoot":"","sources":["../../src/schemes/_path-scope.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
export interface SearchCandidate {
|
|
2
|
+
readonly key: string;
|
|
3
|
+
readonly deepHash: string;
|
|
4
|
+
}
|
|
5
|
+
export interface SearchAttachment {
|
|
6
|
+
readonly key: string;
|
|
7
|
+
readonly deepHash: string | null;
|
|
8
|
+
}
|
|
9
|
+
export type SearchCandidateSet = {
|
|
10
|
+
readonly state: "ready";
|
|
11
|
+
readonly candidates: readonly SearchCandidate[];
|
|
12
|
+
readonly indexed: number;
|
|
13
|
+
readonly total: number;
|
|
14
|
+
} | {
|
|
15
|
+
readonly state: "incomplete";
|
|
16
|
+
readonly indexed: number;
|
|
17
|
+
readonly total: number;
|
|
18
|
+
};
|
|
19
|
+
export declare const resolveSearchCandidates: (attachments: readonly SearchAttachment[]) => SearchCandidateSet;
|
|
20
|
+
//# sourceMappingURL=_search-candidate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_search-candidate.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-candidate.ts"],"names":[],"mappings":"AAGA,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;CAC7B;AAED,MAAM,WAAW,gBAAgB;IAC7B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACpC;AAED,MAAM,MAAM,kBAAkB,GACxB;IACE,QAAQ,CAAC,KAAK,EAAE,OAAO,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,SAAS,eAAe,EAAE,CAAC;IAChD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAC1B,GACC;IACE,QAAQ,CAAC,KAAK,EAAE,YAAY,CAAC;IAC7B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEN,eAAO,MAAM,uBAAuB,gBACnB,SAAS,gBAAgB,EAAE,KACzC,kBAiBF,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
export const resolveSearchCandidates = (attachments) => {
|
|
2
|
+
const candidates = attachments.flatMap(({ key, deepHash }) => deepHash === null
|
|
3
|
+
? []
|
|
4
|
+
: [{ key, deepHash }]);
|
|
5
|
+
if (candidates.length !== attachments.length) {
|
|
6
|
+
return {
|
|
7
|
+
state: "incomplete",
|
|
8
|
+
indexed: candidates.length,
|
|
9
|
+
total: attachments.length,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
return {
|
|
13
|
+
state: "ready",
|
|
14
|
+
candidates,
|
|
15
|
+
indexed: candidates.length,
|
|
16
|
+
total: attachments.length,
|
|
17
|
+
};
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=_search-candidate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_search-candidate.js","sourceRoot":"","sources":["../../src/schemes/_search-candidate.ts"],"names":[],"mappings":"AA0BA,MAAM,CAAC,MAAM,uBAAuB,GAAG,CACnC,WAAwC,EACtB,EAAE;IACpB,MAAM,UAAU,GAAG,WAAW,CAAC,OAAO,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,EAAE,EAAE,CAAC,QAAQ,KAAK,IAAI;QAC3E,CAAC,CAAC,EAAE;QACJ,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;IAC3B,IAAI,UAAU,CAAC,MAAM,KAAK,WAAW,CAAC,MAAM,EAAE,CAAC;QAC3C,OAAO;YACH,KAAK,EAAE,YAAY;YACnB,OAAO,EAAE,UAAU,CAAC,MAAM;YAC1B,KAAK,EAAE,WAAW,CAAC,MAAM;SAC5B,CAAC;IACN,CAAC;IACD,OAAO;QACH,KAAK,EAAE,OAAO;QACd,UAAU;QACV,OAAO,EAAE,UAAU,CAAC,MAAM;QAC1B,KAAK,EAAE,WAAW,CAAC,MAAM;KAC5B,CAAC;AACN,CAAC,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_search-exclusion.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAEA,KAAK,cAAc,GAAG;IAClB,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;CACpB,CAAC;AAeF,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,cAAc,GAAG,MAAM,GAAG,SAAS,CAMrG"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { globToRegex } from "@plurnk/plurnk-mimetypes";
|
|
2
|
+
const cache = new Map();
|
|
3
|
+
function compile(raw) {
|
|
4
|
+
const cached = cache.get(raw);
|
|
5
|
+
if (cached !== undefined)
|
|
6
|
+
return cached;
|
|
7
|
+
const patterns = raw.split(",")
|
|
8
|
+
.map((source) => source.trim())
|
|
9
|
+
.filter((source) => source.length > 0)
|
|
10
|
+
.map((source) => ({ source, regex: globToRegex(source) }));
|
|
11
|
+
cache.set(raw, patterns);
|
|
12
|
+
return patterns;
|
|
13
|
+
}
|
|
14
|
+
export default function matchSearchExclusion({ scheme, pathname }) {
|
|
15
|
+
if (scheme !== "file")
|
|
16
|
+
return undefined;
|
|
17
|
+
const raw = process.env.PLURNK_SERVICE_SEARCH_EXCLUDE;
|
|
18
|
+
if (raw === undefined || raw.trim() === "")
|
|
19
|
+
return undefined;
|
|
20
|
+
const basename = pathname.slice(pathname.lastIndexOf("/") + 1);
|
|
21
|
+
return compile(raw).find(({ source, regex }) => regex.test(source.includes("/") ? pathname : basename))?.source;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=_search-exclusion.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_search-exclusion.js","sourceRoot":"","sources":["../../src/schemes/_search-exclusion.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,0BAA0B,CAAC;AAOvD,MAAM,KAAK,GAAG,IAAI,GAAG,EAA+C,CAAC;AAErE,SAAS,OAAO,CAAC,GAAW;IACxB,MAAM,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IAC9B,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,QAAQ,GAAG,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC;SAC1B,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;SAC9B,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;SACrC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,WAAW,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC;IAC/D,KAAK,CAAC,GAAG,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACzB,OAAO,QAAQ,CAAC;AACpB,CAAC;AAED,MAAM,CAAC,OAAO,UAAU,oBAAoB,CAAC,EAAE,MAAM,EAAE,QAAQ,EAAkB;IAC7E,IAAI,MAAM,KAAK,MAAM;QAAE,OAAO,SAAS,CAAC;IACxC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,6BAA6B,CAAC;IACtD,IAAI,GAAG,KAAK,SAAS,IAAI,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE;QAAE,OAAO,SAAS,CAAC;IAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/D,OAAO,OAAO,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,EAAE,MAAM,CAAC;AACpH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"_search-index.d.ts","sourceRoot":"","sources":["../../src/schemes/_search-index.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,yBAAyB,CAAC;AA0CnE,MAAM,CAAC,OAAO,OAAO,WAAW;;IAsG5B,OAAa,QAAQ,CAAC,GAAG,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA8M7D;CAEJ"}
|