@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
package/dist/schemes/File.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { mkdir, readFile, realpath, rm, stat, writeFile } from "node:fs/promises";
|
|
1
|
+
import { lstat, mkdir, readFile, realpath, rm, stat, writeFile } from "node:fs/promises";
|
|
2
2
|
import Namespace from "../core/namespace.js";
|
|
3
3
|
import Owner from "../core/Owner.js";
|
|
4
|
-
import { dirname, relative, isAbsolute, join, matchesGlob } from "node:path";
|
|
4
|
+
import { basename, dirname, relative, isAbsolute, join, matchesGlob } from "node:path";
|
|
5
5
|
import { createPatch } from "diff";
|
|
6
6
|
import { PathSyntax } from "@plurnk/plurnk-contracts";
|
|
7
7
|
import GitMembership from "../core/git-membership.js";
|
|
@@ -21,6 +21,27 @@ const loadWorkspaceRoot = async (db, workspaceId) => {
|
|
|
21
21
|
const row = await db.envelope_get_workspace.get({ id: workspaceId });
|
|
22
22
|
return row?.project_root ?? null;
|
|
23
23
|
};
|
|
24
|
+
// Resolve the nearest existing ancestor, then append the still-absent tail. This
|
|
25
|
+
// gives a proposed create the same physical containment check as an existing path:
|
|
26
|
+
// an in-root symlinked parent cannot smuggle a root-scoped write outside the jail.
|
|
27
|
+
const prospectiveRealpath = async (requested) => {
|
|
28
|
+
const tail = [basename(requested)];
|
|
29
|
+
let cursor = dirname(requested);
|
|
30
|
+
while (true) {
|
|
31
|
+
try {
|
|
32
|
+
return join(await realpath(cursor), ...tail);
|
|
33
|
+
}
|
|
34
|
+
catch (cause) {
|
|
35
|
+
if (cause.code !== "ENOENT")
|
|
36
|
+
throw cause;
|
|
37
|
+
}
|
|
38
|
+
const parent = dirname(cursor);
|
|
39
|
+
if (parent === cursor)
|
|
40
|
+
throw new Error(`No existing ancestor contains '${requested}'.`);
|
|
41
|
+
tail.unshift(basename(cursor));
|
|
42
|
+
cursor = parent;
|
|
43
|
+
}
|
|
44
|
+
};
|
|
24
45
|
// Detect mimetype from a file's path through the configured registry. The
|
|
25
46
|
// `MimetypeBinary.normalizeAutoTextMimetype` wrapper ensures text/plain returned by the
|
|
26
47
|
// service is normalized to text/markdown — plurnk-service never auto-
|
|
@@ -52,13 +73,15 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
52
73
|
channels: {}, // dynamic mimetype per file extension
|
|
53
74
|
defaultChannel: "body",
|
|
54
75
|
category: "data",
|
|
55
|
-
|
|
76
|
+
entryOwner: "commons",
|
|
77
|
+
inherit: "none",
|
|
78
|
+
writableBy: ["model", "client", "plugin", "_plurnk"],
|
|
56
79
|
volatile: false,
|
|
57
80
|
modelVisible: true,
|
|
58
81
|
folderScopes: true,
|
|
59
82
|
textEditScopes: true,
|
|
60
83
|
example: "## READ0 (README.md)",
|
|
61
|
-
documentation: "The project's workspace files (
|
|
84
|
+
documentation: "The project's workspace files (shown as bare paths) — THE TASK'S FILES: when asked to change the project, EDIT these, not your notes or scratch. READ and FIND them like any entry; EDIT proposes a diff for review and only writes to disk once accepted — the review is normal, not a refusal, so propose the edit rather than working around it. Existing non-members are invisible and cannot be clobbered; admitted absent paths may be created.",
|
|
62
85
|
};
|
|
63
86
|
// {§fs-namei}/{§fs-canonical-name} — the ONE statement-normalizing seam: every model
|
|
64
87
|
// spelling resolves through Namespace.canonicalize before storage, comparison, or render.
|
|
@@ -90,14 +113,16 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
90
113
|
async resolveEntryAddress(target, ctx) {
|
|
91
114
|
const core = this.coreContext(ctx);
|
|
92
115
|
const pathname = File.#canonSpelling(target.kind === "url" ? target.pathname : target.raw, await loadWorkspaceRoot(core.db, core.workspaceId));
|
|
93
|
-
return pathname === null ? null : {
|
|
116
|
+
return pathname === null ? null : { authority: "", pathname };
|
|
94
117
|
}
|
|
95
118
|
async find(statement, ctx) {
|
|
96
119
|
const core = this.coreContext(ctx);
|
|
97
120
|
// {§fs-namei} — canonicalize the glob's path portion before the candidate scan, the
|
|
98
121
|
// same seam READ/EDIT use; a bare `notes.md` and `/notes.md` scan identically.
|
|
99
122
|
const canon = File.#canonTarget(statement, await loadWorkspaceRoot(core.db, core.workspaceId));
|
|
100
|
-
return EntryFind.findWorkspaceEntries(canon ?? statement, core, File.manifest
|
|
123
|
+
return EntryFind.findWorkspaceEntries(canon ?? statement, core, File.manifest, {
|
|
124
|
+
ownerId: await Owner.commonsId(core.db, core.workspaceId),
|
|
125
|
+
});
|
|
101
126
|
}
|
|
102
127
|
// COPY/MOVE FROM file:/// — read-only, gated by entry-existence (a non-member
|
|
103
128
|
// has no entry → 404). The write-back side (writeEntry) is deliberately absent;
|
|
@@ -109,7 +134,10 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
109
134
|
// misses the canonical-stored member and 404s a source that plainly exists.
|
|
110
135
|
const root = await loadWorkspaceRoot(core.db, core.workspaceId);
|
|
111
136
|
const key = root === null ? pathname : Namespace.canonicalize(pathname, root);
|
|
112
|
-
|
|
137
|
+
const canonical = key ?? pathname;
|
|
138
|
+
return "entries" in ctx
|
|
139
|
+
? ctx.entries.read(canonical)
|
|
140
|
+
: EntryCrud.readEntry({ authority: "", pathname: canonical }, core, "file", await Owner.commonsId(core.db, core.workspaceId));
|
|
113
141
|
}
|
|
114
142
|
// {§membership} disk-write gate, shared by edit() and writeEntry() (the COPY/MOVE
|
|
115
143
|
// dest). Resolves the canonical path; enforces containment (traversal → 403),
|
|
@@ -155,25 +183,31 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
155
183
|
catch (err) {
|
|
156
184
|
if (err.code !== "ENOENT")
|
|
157
185
|
throw err;
|
|
158
|
-
|
|
186
|
+
// A dangling final symlink occupies the name even though realpath cannot
|
|
187
|
+
// follow it. Treat it as the same opaque existing non-member as O_EXCL.
|
|
188
|
+
try {
|
|
189
|
+
await lstat(requested);
|
|
190
|
+
return {
|
|
191
|
+
ok: false,
|
|
192
|
+
code: "path-occupied-by-nonmember",
|
|
193
|
+
status: 403,
|
|
194
|
+
detail: `A non-member file already occupies '${key}'.`,
|
|
195
|
+
extensions: {
|
|
196
|
+
path: key,
|
|
197
|
+
recovery: "Choose an unoccupied member path.",
|
|
198
|
+
retryable: false,
|
|
199
|
+
},
|
|
200
|
+
};
|
|
201
|
+
}
|
|
202
|
+
catch (occupancyCause) {
|
|
203
|
+
if (occupancyCause.code !== "ENOENT")
|
|
204
|
+
throw occupancyCause;
|
|
205
|
+
}
|
|
206
|
+
canonical = await prospectiveRealpath(requested);
|
|
159
207
|
fileExists = false;
|
|
160
208
|
}
|
|
161
|
-
// {§fs-write-surface} 6 — only the root mints: no create on any mount, ever.
|
|
162
|
-
if (isMount && !fileExists) {
|
|
163
|
-
return {
|
|
164
|
-
ok: false,
|
|
165
|
-
code: "mount-create-forbidden",
|
|
166
|
-
status: 403,
|
|
167
|
-
detail: `The mounted path '${key}' does not permit file creation.`,
|
|
168
|
-
extensions: {
|
|
169
|
-
path: key,
|
|
170
|
-
recovery: "Create the file inside the project root.",
|
|
171
|
-
retryable: false,
|
|
172
|
-
},
|
|
173
|
-
};
|
|
174
|
-
}
|
|
175
209
|
if (!isMount) {
|
|
176
|
-
const relBare = relative(root, canonical);
|
|
210
|
+
const relBare = relative(await realpath(root), canonical);
|
|
177
211
|
// in-tree keys whose realpath escapes (a symlink out) stay refused — the jail holds.
|
|
178
212
|
if (relBare.startsWith("..") || isAbsolute(relBare)) {
|
|
179
213
|
return {
|
|
@@ -192,9 +226,9 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
192
226
|
const rel = key; // the bare canonical member key ({§fs-canonical-name}) — storage ≡ wire
|
|
193
227
|
let original = "";
|
|
194
228
|
let baseSig = null; // the snapshot signature the proposal is computed against; null = create (assumed-absent)
|
|
195
|
-
let
|
|
229
|
+
let creationAdmission = null;
|
|
196
230
|
if (fileExists) {
|
|
197
|
-
const member = await ctx.db.crud_get_member_sig.get({ workspace_id: ctx.workspaceId, owner_id: await Owner.commonsId(ctx.db, ctx.workspaceId), scheme: "file", pathname: rel });
|
|
231
|
+
const member = await ctx.db.crud_get_member_sig.get({ workspace_id: ctx.workspaceId, owner_id: await Owner.commonsId(ctx.db, ctx.workspaceId), scheme: "file", authority: "", pathname: rel });
|
|
198
232
|
// {§fs-errno} — the occupancy fact (POSIX O_EXCL precedent): something invisible
|
|
199
233
|
// occupies the path; existence leaks, content stays dark. The model picks another name.
|
|
200
234
|
if (member === undefined) {
|
|
@@ -211,7 +245,7 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
211
245
|
};
|
|
212
246
|
}
|
|
213
247
|
// {§fs-write-surface} 5 — a git-included mount member is read-only: git's grants
|
|
214
|
-
// confer rw only within the project; only
|
|
248
|
+
// confer rw only within the project; only a pick grant carries write.
|
|
215
249
|
if (isMount && member.membership_origin === "git") {
|
|
216
250
|
return {
|
|
217
251
|
ok: false,
|
|
@@ -236,34 +270,15 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
236
270
|
// disk read. EDIT is naive against the view the model saw; the write-side CAS (applyResolution)
|
|
237
271
|
// guards the landing. baseSig is that snapshot's stat, carried with the proposal so a sibling
|
|
238
272
|
// worker's reconcile can't advance it under the paused proposal. {§membership-edit-write-cas}
|
|
239
|
-
const snapshot = await ctx.db.ops_read_channel.get({ workspace_id: ctx.workspaceId, owner_id: await Owner.commonsId(ctx.db, ctx.workspaceId), scheme: "file", pathname: rel, channel: "body" });
|
|
273
|
+
const snapshot = await ctx.db.ops_read_channel.get({ workspace_id: ctx.workspaceId, owner_id: await Owner.commonsId(ctx.db, ctx.workspaceId), scheme: "file", authority: "", pathname: rel, channel: "body" });
|
|
240
274
|
original = snapshot?.content ?? "";
|
|
241
275
|
baseSig = member.synced_sig;
|
|
242
276
|
}
|
|
243
277
|
else {
|
|
244
|
-
|
|
245
|
-
|
|
246
|
-
|
|
247
|
-
|
|
248
|
-
const picks = (await ctx.db.crud_list_workspace_constraints.all({ workspace_id: ctx.workspaceId }))
|
|
249
|
-
.filter((c) => c.effect === "pick").map((c) => c.glob);
|
|
250
|
-
const clientAdmits = picks.some((g) => matchesGlob(rel, g));
|
|
251
|
-
if (!clientAdmits && !(await GitMembership.wouldGitAdmit(root, rel, ctx.signal))) {
|
|
252
|
-
return {
|
|
253
|
-
ok: false,
|
|
254
|
-
code: "file-not-admitted",
|
|
255
|
-
status: 403,
|
|
256
|
-
detail: `The new file '${rel}' would not belong to the workspace because Git ignores it and no client pick includes it.`,
|
|
257
|
-
extensions: {
|
|
258
|
-
path: rel,
|
|
259
|
-
recovery: "Choose a path admitted by Git or the workspace picks.",
|
|
260
|
-
retryable: false,
|
|
261
|
-
},
|
|
262
|
-
};
|
|
263
|
-
}
|
|
264
|
-
// {§fs-write-surface} — the closure PROVED the grantor; the accept stamps what was
|
|
265
|
-
// proven instead of leaving provenance NULL until the next reconcile guesses it.
|
|
266
|
-
admittedBy = clientAdmits ? "client" : "git";
|
|
278
|
+
const admission = await GitMembership.planCreation(ctx.db, ctx.workspaceId, rel, ctx.signal);
|
|
279
|
+
if (!admission.ok)
|
|
280
|
+
return admission;
|
|
281
|
+
creationAdmission = admission;
|
|
267
282
|
}
|
|
268
283
|
const mimetype = await detectFileMimetype(canonical, ctx);
|
|
269
284
|
if (await MimetypeBinary.isBinaryMimetype(mimetype, ctx.mimetypes)) {
|
|
@@ -278,7 +293,7 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
278
293
|
},
|
|
279
294
|
};
|
|
280
295
|
}
|
|
281
|
-
return { ok: true, canonical, rel, fileExists, original, mimetype, baseSig,
|
|
296
|
+
return { ok: true, canonical, rel, fileExists, original, mimetype, baseSig, creationAdmission };
|
|
282
297
|
}
|
|
283
298
|
// {§membership-edit-write-cas}, {§proposal-202-pauses}: return status=202
|
|
284
299
|
// with a udiff body for client review and attrs carrying the full patched
|
|
@@ -304,7 +319,7 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
304
319
|
const target = await this.#resolveWriteTarget(pathname, core);
|
|
305
320
|
if (!target.ok)
|
|
306
321
|
return failure(target.code, target.status, target.detail, target.extensions);
|
|
307
|
-
const { canonical, rel, fileExists, original, mimetype, baseSig
|
|
322
|
+
const { canonical, rel, fileExists, original, mimetype, baseSig } = target;
|
|
308
323
|
for (const candidate of statements.slice(1)) {
|
|
309
324
|
if (candidate.target === null) {
|
|
310
325
|
return failure("edit-batch-mismatch", 400, "The EDIT batch spans multiple resources.", {
|
|
@@ -355,8 +370,9 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
355
370
|
if (fileExists && patched === original)
|
|
356
371
|
return {
|
|
357
372
|
status: 304,
|
|
373
|
+
detail: "the target already matches this content — move on or re-READ; never re-send the same body",
|
|
358
374
|
...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
|
|
359
|
-
}; // {§edit-noop-304}
|
|
375
|
+
}; // {§edit-noop-304} — teaching rides the receipt, not the hot path (#342)
|
|
360
376
|
const patch = createPatch(rel, original, patched, "current", "proposed");
|
|
361
377
|
const receiptEdits = fileExists
|
|
362
378
|
? statements.map((candidate) => ({ marker: candidate.lineMarker, body: candidate.body ?? "" }))
|
|
@@ -367,7 +383,7 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
367
383
|
body: patch,
|
|
368
384
|
editReceipt: batchReceipt,
|
|
369
385
|
...(scopeNormalizations === undefined ? {} : { scopeNormalizations }),
|
|
370
|
-
attrs: { path: rel, canonical, patch, patched, mimetype, editReceipt: batchReceipt, baseSig, existed: fileExists
|
|
386
|
+
attrs: { path: rel, canonical, patch, patched, mimetype, editReceipt: batchReceipt, baseSig, existed: fileExists },
|
|
371
387
|
};
|
|
372
388
|
}
|
|
373
389
|
async edit(statement, ctx) {
|
|
@@ -392,10 +408,10 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
392
408
|
if (!target.ok) {
|
|
393
409
|
return Results.failure("scheme:file", target.code, target.status, target.detail, { created: false, entryId: null }, target.extensions);
|
|
394
410
|
}
|
|
395
|
-
const { canonical, rel, fileExists, original, mimetype, baseSig
|
|
411
|
+
const { canonical, rel, fileExists, original, mimetype, baseSig } = target;
|
|
396
412
|
const patched = bodyChannel.content;
|
|
397
413
|
const patch = createPatch(rel, original, patched, "current", "proposed");
|
|
398
|
-
return { status: 202, created: !fileExists, entryId: null, body: patch, attrs: { path: rel, canonical, patch, patched, mimetype, baseSig, existed: fileExists
|
|
414
|
+
return { status: 202, created: !fileExists, entryId: null, body: patch, attrs: { path: rel, canonical, patch, patched, mimetype, baseSig, existed: fileExists } };
|
|
399
415
|
}
|
|
400
416
|
// applyResolution — called by Engine.dispatch after a proposed log
|
|
401
417
|
// entry resolves with decision=accept. Two responsibilities:
|
|
@@ -429,10 +445,15 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
429
445
|
});
|
|
430
446
|
}
|
|
431
447
|
}
|
|
432
|
-
|
|
448
|
+
if ("entries" in ctx)
|
|
449
|
+
await ctx.entries.delete(attrs.deletePath);
|
|
450
|
+
else {
|
|
451
|
+
await EntryCrud.deleteEntry({ authority: "", pathname: attrs.deletePath }, core, "file", await Owner.commonsId(core.db, core.workspaceId));
|
|
452
|
+
}
|
|
453
|
+
await GitMembership.removeGeneratedPick(core.db, core.workspaceId, attrs.deletePath);
|
|
433
454
|
return { status: 200 };
|
|
434
455
|
}
|
|
435
|
-
|
|
456
|
+
let canonical = attrs.canonical;
|
|
436
457
|
const relPath = attrs.path;
|
|
437
458
|
const patched = body ?? attrs.patched;
|
|
438
459
|
const mimetype = attrs.mimetype;
|
|
@@ -448,6 +469,25 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
448
469
|
if (typeof mimetype !== "string" || mimetype.length === 0) {
|
|
449
470
|
throw new InvalidOperationResultError("The accepted file proposal is missing attrs.mimetype.");
|
|
450
471
|
}
|
|
472
|
+
const existed = args.attrs.existed === true; // proposal targeted an existing member (edit) vs a fresh create
|
|
473
|
+
let creationAdmission = null;
|
|
474
|
+
if (!existed) {
|
|
475
|
+
// {§file-create-transaction}: approval is a fresh admission boundary. Re-resolve
|
|
476
|
+
// the physical target so a parent symlink swapped while review was pending cannot
|
|
477
|
+
// redirect an accepted root-scoped create outside the workspace.
|
|
478
|
+
const acceptedTarget = await this.#resolveWriteTarget(relPath, core);
|
|
479
|
+
if (!acceptedTarget.ok) {
|
|
480
|
+
return Results.failure("scheme:file", acceptedTarget.code, acceptedTarget.status, acceptedTarget.detail, { outcome: "create_refused" }, acceptedTarget.extensions);
|
|
481
|
+
}
|
|
482
|
+
if (acceptedTarget.fileExists) {
|
|
483
|
+
return EditCollision.result(relPath, { outcome: "edit_collision" });
|
|
484
|
+
}
|
|
485
|
+
canonical = acceptedTarget.canonical;
|
|
486
|
+
creationAdmission = acceptedTarget.creationAdmission;
|
|
487
|
+
if (creationAdmission === null) {
|
|
488
|
+
throw new InvalidOperationResultError("A revalidated file creation is missing its admission decision.");
|
|
489
|
+
}
|
|
490
|
+
}
|
|
451
491
|
// CAS — the write-side twin of #materializeMember's read-gate (synced_sig === sig). The
|
|
452
492
|
// proposal was computed against the snapshot (body + baseSig); if disk drifted out-of-band
|
|
453
493
|
// since propose, the full-blob write would clobber it. Refuse and surface the same neutral
|
|
@@ -455,7 +495,6 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
455
495
|
// the next reconcile narrates disk truth via FsDivergence; the model re-reads + re-proposes.
|
|
456
496
|
// No clever re-diff, no clobber. {§membership-edit-write-cas}
|
|
457
497
|
const baseSig = (args.attrs.baseSig ?? null);
|
|
458
|
-
const existed = args.attrs.existed === true; // proposal targeted an existing member (edit) vs a fresh create
|
|
459
498
|
let currentSig = null;
|
|
460
499
|
try {
|
|
461
500
|
const st = await stat(canonical);
|
|
@@ -483,47 +522,100 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
483
522
|
}
|
|
484
523
|
receipt = reviewerReplacementReceipt(original, patched, receipt);
|
|
485
524
|
}
|
|
525
|
+
if (receipt !== undefined) {
|
|
526
|
+
const parseIssues = await new DbProjectionCaps(core).parseIssues(patched, mimetype);
|
|
527
|
+
receipt = withEditReceiptParseIssues(receipt, parseIssues);
|
|
528
|
+
}
|
|
486
529
|
try {
|
|
487
530
|
// A write into a not-yet-existing subtree creates it — an accepted proposal must not
|
|
488
531
|
// die on a missing parent dir (the fan-out digest: tasks/… write_failed on ENOENT).
|
|
489
532
|
await mkdir(dirname(canonical), { recursive: true });
|
|
490
|
-
await writeFile(canonical, patched, "utf8");
|
|
533
|
+
await writeFile(canonical, patched, { encoding: "utf8", flag: existed ? "w" : "wx" });
|
|
491
534
|
}
|
|
492
535
|
catch (err) {
|
|
536
|
+
if (!existed && err.code === "EEXIST") {
|
|
537
|
+
return EditCollision.result(relPath, { outcome: "edit_collision" });
|
|
538
|
+
}
|
|
493
539
|
console.error(`File write failed for '${relPath}':`, err);
|
|
494
540
|
return Results.failure("scheme:file", "write-failed", 500, `The file could not be written: ${ErrorDetail.preview(err)}`, { outcome: "write_failed" }, {
|
|
495
541
|
path: relPath,
|
|
496
542
|
stage: "filesystem-write",
|
|
497
543
|
});
|
|
498
544
|
}
|
|
499
|
-
// Register the exact mimetype resolved at proposal time
|
|
500
|
-
//
|
|
545
|
+
// Register the exact mimetype resolved at proposal time, then complete the
|
|
546
|
+
// membership-owned incorporation transaction. No fallible receipt work follows.
|
|
501
547
|
try {
|
|
502
548
|
// {§entry-identity-no-null} — file members persist under the reserved
|
|
503
549
|
// `file` identity; bare-path rendering is a projection of that row.
|
|
504
|
-
const
|
|
505
|
-
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
|
|
510
|
-
|
|
511
|
-
|
|
512
|
-
const root = await loadWorkspaceRoot(core.db, core.workspaceId);
|
|
513
|
-
if (root !== null) {
|
|
514
|
-
await GitMembership.stageFile(root, relPath, ctx.signal);
|
|
515
|
-
}
|
|
516
|
-
}
|
|
550
|
+
const write = "entries" in ctx
|
|
551
|
+
? await ctx.entries.write(relPath, {
|
|
552
|
+
channels: { body: { content: patched, mimetype } },
|
|
553
|
+
})
|
|
554
|
+
: await EntryCrud.writeEntry({ authority: "", pathname: relPath }, {
|
|
555
|
+
channels: { body: { content: patched, mimetype } },
|
|
556
|
+
}, core, "file", await Owner.commonsId(core.db, core.workspaceId));
|
|
557
|
+
const { entryId } = write;
|
|
517
558
|
// Restamp synced_sig to the landed write so the next reconcile recognizes our own
|
|
518
559
|
// write as the synced state — not an FsDivergence narrated back at the model.
|
|
519
560
|
if (entryId !== null) {
|
|
520
561
|
const landed = await stat(canonical);
|
|
521
562
|
await core.db.crud_set_synced_sig.run({ entry_id: entryId, synced_sig: `${landed.mtimeMs}:${landed.size}` });
|
|
522
563
|
}
|
|
564
|
+
if (!existed) {
|
|
565
|
+
if (entryId === null || creationAdmission === null || !creationAdmission.ok) {
|
|
566
|
+
throw new InvalidOperationResultError("A created file is missing its entry or admission decision.");
|
|
567
|
+
}
|
|
568
|
+
const root = await loadWorkspaceRoot(core.db, core.workspaceId);
|
|
569
|
+
if (root === null) {
|
|
570
|
+
throw new InvalidOperationResultError("A created file lost its workspace project root.");
|
|
571
|
+
}
|
|
572
|
+
await GitMembership.incorporateCreation(core.db, core.workspaceId, entryId, root, relPath, creationAdmission, ctx.signal);
|
|
573
|
+
}
|
|
523
574
|
}
|
|
524
575
|
catch (err) {
|
|
525
|
-
|
|
526
|
-
|
|
576
|
+
if (!existed) {
|
|
577
|
+
const rollbackErrors = [];
|
|
578
|
+
try {
|
|
579
|
+
const row = await core.db.crud_find_workspace_entry.get({
|
|
580
|
+
workspace_id: core.workspaceId,
|
|
581
|
+
owner_id: await Owner.commonsId(core.db, core.workspaceId),
|
|
582
|
+
scheme: "file",
|
|
583
|
+
authority: "",
|
|
584
|
+
pathname: relPath,
|
|
585
|
+
});
|
|
586
|
+
if (row !== undefined)
|
|
587
|
+
await core.db.crud_delete_entry.run({ entry_id: row.id });
|
|
588
|
+
}
|
|
589
|
+
catch (rollbackCause) {
|
|
590
|
+
rollbackErrors.push(rollbackCause);
|
|
591
|
+
}
|
|
592
|
+
try {
|
|
593
|
+
await rm(canonical);
|
|
594
|
+
}
|
|
595
|
+
catch (rollbackCause) {
|
|
596
|
+
if (rollbackCause.code !== "ENOENT") {
|
|
597
|
+
rollbackErrors.push(rollbackCause);
|
|
598
|
+
}
|
|
599
|
+
}
|
|
600
|
+
if (rollbackErrors.length > 0) {
|
|
601
|
+
const rollback = new AggregateError(rollbackErrors, `Creation rollback failed for '${relPath}'.`);
|
|
602
|
+
console.error(`File creation failed and rollback was incomplete for '${relPath}':`, err, rollback);
|
|
603
|
+
return Results.failure("scheme:file", "creation-rollback-failed", 500, `The file could not be incorporated and rollback was incomplete: ${ErrorDetail.preview(rollback)}`, { outcome: "creation_rollback_failed" }, {
|
|
604
|
+
path: relPath,
|
|
605
|
+
stage: "creation-rollback",
|
|
606
|
+
cause: ErrorDetail.preview(err),
|
|
607
|
+
retryable: false,
|
|
608
|
+
});
|
|
609
|
+
}
|
|
610
|
+
console.error(`File creation incorporation failed for '${relPath}':`, err);
|
|
611
|
+
return Results.failure("scheme:file", "creation-incorporation-failed", 500, `The file could not be incorporated, so its exclusive creation was rolled back: ${ErrorDetail.preview(err)}`, { outcome: "creation_rolled_back" }, {
|
|
612
|
+
path: relPath,
|
|
613
|
+
stage: "membership-incorporation",
|
|
614
|
+
retryable: false,
|
|
615
|
+
});
|
|
616
|
+
}
|
|
617
|
+
// An existing-file write has already changed disk. Surface the partial
|
|
618
|
+
// failure rather than pretending the addressable entry followed it.
|
|
527
619
|
console.error(`File registration failed for '${relPath}':`, err);
|
|
528
620
|
return Results.failure("scheme:file", "materialization-failed", 500, `The file was written to disk but could not be registered: ${ErrorDetail.preview(err)}`, { outcome: "materialize_failed" }, {
|
|
529
621
|
path: relPath,
|
|
@@ -533,8 +625,6 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
533
625
|
}
|
|
534
626
|
if (receipt === undefined)
|
|
535
627
|
return { status: 200 };
|
|
536
|
-
const parseIssues = await new DbProjectionCaps(core).parseIssues(patched, mimetype);
|
|
537
|
-
receipt = withEditReceiptParseIssues(receipt, parseIssues);
|
|
538
628
|
return {
|
|
539
629
|
status: 200,
|
|
540
630
|
editReceipt: receipt,
|
|
@@ -554,7 +644,7 @@ export default class File extends CoreSchemeAdapterBase {
|
|
|
554
644
|
const rel = Namespace.canonicalize(pathname, root);
|
|
555
645
|
if (rel === null)
|
|
556
646
|
return Results.failure("scheme:file", "entry-not-found", 404, `No file entry exists at ${pathname}.`, {}, { target: pathname });
|
|
557
|
-
const member = await core.db.crud_find_workspace_entry.get({ workspace_id: core.workspaceId, owner_id: await Owner.commonsId(core.db, core.workspaceId), scheme: "file", pathname: rel });
|
|
647
|
+
const member = await core.db.crud_find_workspace_entry.get({ workspace_id: core.workspaceId, owner_id: await Owner.commonsId(core.db, core.workspaceId), scheme: "file", authority: "", pathname: rel });
|
|
558
648
|
if (member === undefined)
|
|
559
649
|
return Results.failure("scheme:file", "entry-not-found", 404, `No file entry exists at ${rel}.`, {}, { target: rel });
|
|
560
650
|
return { status: 202, attrs: { deletePath: rel } };
|
package/dist/schemes/File.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"File.js","sourceRoot":"","sources":["../../src/schemes/File.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"File.js","sourceRoot":"","sources":["../../src/schemes/File.ts"],"names":[],"mappings":"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"}
|
package/dist/schemes/Log.d.ts
CHANGED
|
@@ -4,12 +4,16 @@ import type { FindResult } from "./_entry-find.ts";
|
|
|
4
4
|
import { CoreSchemeAdapterBase } from "../core/CoreSchemeServices.ts";
|
|
5
5
|
import type { CoreRepresentationProvider, CoreRepresentationResolution, CoreSchemeCallContext } from "../core/CoreSchemeServices.ts";
|
|
6
6
|
import { type SchemeResultBase } from "../core/results.ts";
|
|
7
|
+
import { type LogFoldRanges } from "../core/LogVisibility.ts";
|
|
7
8
|
type OpenFoldResult = SchemeResultBase & {
|
|
8
9
|
matched?: number;
|
|
9
10
|
};
|
|
10
11
|
export interface LogCurationPlan {
|
|
11
|
-
readonly
|
|
12
|
-
|
|
12
|
+
readonly targets: readonly {
|
|
13
|
+
readonly id: number;
|
|
14
|
+
readonly before: LogFoldRanges;
|
|
15
|
+
readonly after: LogFoldRanges;
|
|
16
|
+
}[];
|
|
13
17
|
readonly add: readonly string[];
|
|
14
18
|
readonly remove: readonly string[];
|
|
15
19
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Log.d.ts","sourceRoot":"","sources":["../../src/schemes/Log.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,yBAAyB,CAAC;AAInF,OAAO,KAAK,EAAE,UAAU,EAA+C,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EACR,0BAA0B,EAC1B,4BAA4B,EAC5B,qBAAqB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAgB,EAAuB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"Log.d.ts","sourceRoot":"","sources":["../../src/schemes/Log.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,aAAa,EAClB,KAAK,UAAU,EAClB,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,cAAc,EAAuB,MAAM,yBAAyB,CAAC;AAInF,OAAO,KAAK,EAAE,UAAU,EAA+C,MAAM,kBAAkB,CAAC;AAChG,OAAO,EAAE,qBAAqB,EAAE,MAAM,+BAA+B,CAAC;AACtE,OAAO,KAAK,EACR,0BAA0B,EAC1B,4BAA4B,EAC5B,qBAAqB,EACxB,MAAM,+BAA+B,CAAC;AACvC,OAAgB,EAAuB,KAAK,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AAGzF,OAAsB,EAAE,KAAK,aAAa,EAAE,MAAM,0BAA0B,CAAC;AAO7E,KAAK,cAAc,GAAG,gBAAgB,GAAG;IAAE,OAAO,CAAC,EAAE,MAAM,CAAA;CAAE,CAAC;AAgB9D,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,OAAO,EAAE,SAAS;QACvB,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;QACpB,QAAQ,CAAC,MAAM,EAAE,aAAa,CAAC;QAC/B,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC;KACjC,EAAE,CAAC;IACJ,QAAQ,CAAC,GAAG,EAAE,SAAS,MAAM,EAAE,CAAC;IAChC,QAAQ,CAAC,MAAM,EAAE,SAAS,MAAM,EAAE,CAAC;CACtC;AAED,MAAM,WAAW,kBAAkB;IAC/B,QAAQ,CAAC,MAAM,EAAE,cAAc,CAAC;IAChC,QAAQ,CAAC,IAAI,EAAE,eAAe,GAAG,IAAI,CAAC;CACzC;AAoDD,MAAM,CAAC,OAAO,OAAO,GAAI,SAAQ,qBAAsB,YAAW,0BAA0B;;IACxF,MAAM,CAAC,QAAQ,EAAE,cAAc,CAa7B;IAEI,yBAAyB,CAC3B,MAAM,EAAE,UAAU,GAAG,IAAI,EACzB,GAAG,EAAE,qBAAqB,GAC3B,OAAO,CAAC,4BAA4B,CAAC,CAiFvC;IAMK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,UAAU,CAAC,CAEpF;IAgSK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAKxF;IAGK,IAAI,CAAC,SAAS,EAAE,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,cAAc,CAAC,CAKxF;IAIK,MAAM,CAAC,SAAS,EAAE,aAAa,GAAG,aAAa,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,kBAAkB,CAAC,CAM9G;IAoUK,IAAI,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,qBAAqB,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAwB1G;CACJ"}
|