@plurnk/plurnk-service 1.6.1 → 1.8.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 +29 -42
- package/INSTALL.md +49 -10
- package/README.md +11 -1
- package/SPEC.md +702 -287
- 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 +2 -5
- package/dist/Paths.d.ts.map +1 -1
- package/dist/Paths.js +9 -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.map +1 -1
- package/dist/core/ChannelWrite.js.map +1 -1
- package/dist/core/ChannelWrite.sql +2 -1
- package/dist/core/ClientInteractions.d.ts +19 -0
- package/dist/core/ClientInteractions.d.ts.map +1 -0
- package/dist/core/ClientInteractions.js +124 -0
- package/dist/core/ClientInteractions.js.map +1 -0
- package/dist/core/ClientInteractions.sql +34 -0
- package/dist/core/CoreSchemeServices.d.ts +8 -2
- 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 +9 -6
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +74 -125
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +26 -9
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +125 -44
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +112 -107
- package/dist/core/ExecutorRegistry.d.ts +19 -5
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +144 -18
- 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 +2 -2
- 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 +92 -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 +77 -0
- package/dist/core/OverflowTurn.js.map +1 -0
- package/dist/core/Owner.js +2 -2
- package/dist/core/Owner.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts +3 -15
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +52 -113
- 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 +3 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +9 -26
- 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/ResourceMutations.d.ts +2 -2
- package/dist/core/ResourceMutations.d.ts.map +1 -1
- package/dist/core/ResourceMutations.js +13 -11
- package/dist/core/ResourceMutations.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +18 -11
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +201 -53
- 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 +122 -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 +63 -0
- package/dist/core/TurnOps.js.map +1 -0
- package/dist/core/TurnRunner.d.ts +15 -5
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +1050 -900
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/WorkerName.d.ts +1 -1
- package/dist/core/WorkerName.d.ts.map +1 -1
- package/dist/core/WorkspaceGate.d.ts +1 -0
- package/dist/core/WorkspaceGate.d.ts.map +1 -1
- package/dist/core/WorkspaceGate.js +39 -0
- package/dist/core/WorkspaceGate.js.map +1 -1
- package/dist/core/caps/CoreInteractionCaps.d.ts +9 -0
- package/dist/core/caps/CoreInteractionCaps.d.ts.map +1 -0
- package/dist/core/caps/CoreInteractionCaps.js +14 -0
- package/dist/core/caps/CoreInteractionCaps.js.map +1 -0
- package/dist/core/caps/SchemeCtxImpl.d.ts +2 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +3 -0
- 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/fork.d.ts.map +1 -1
- package/dist/core/fork.js +15 -4
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +57 -27
- 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.map +1 -1
- package/dist/core/git-membership.js +10 -26
- 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 +208 -44
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +1 -1
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +3 -3
- package/dist/core/plurnk-uri.js.map +1 -1
- package/dist/core/scheme-types.d.ts +2 -1
- package/dist/core/scheme-types.d.ts.map +1 -1
- package/dist/core/scheme-types.js.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-settings.d.ts +9 -0
- package/dist/core/worker-settings.d.ts.map +1 -0
- package/dist/core/worker-settings.js +25 -0
- package/dist/core/worker-settings.js.map +1 -0
- package/dist/core/workspace-settings.d.ts +0 -11
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js +3 -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 +8 -2
- 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.map +1 -1
- package/dist/schemes/Exec.js +82 -18
- package/dist/schemes/Exec.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.map +1 -1
- package/dist/schemes/Prompt.js +1 -2
- 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 +4 -1
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +20 -3
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +19 -1
- package/dist/schemes/_entry-find.d.ts +5 -3
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +102 -22
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +8 -6
- package/dist/schemes/_entry-graph.sql +2 -6
- package/dist/schemes/_entry-manifest.d.ts.map +1 -1
- package/dist/schemes/_entry-manifest.js +12 -1
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_search-index.d.ts.map +1 -1
- package/dist/schemes/_search-index.js +37 -25
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/server/Daemon.d.ts +69 -12
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +737 -133
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DaemonModule.d.ts +31 -3
- package/dist/server/DaemonModule.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.d.ts +12 -9
- package/dist/server/DrainSupervisor.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.js +59 -10
- package/dist/server/DrainSupervisor.js.map +1 -1
- package/dist/server/client-input.d.ts +7 -2
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +65 -34
- package/dist/server/client-input.js.map +1 -1
- package/dist/server/dispatch-as-plurnk.d.ts.map +1 -1
- package/dist/server/dispatch-as-plurnk.js +28 -6
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +26 -11
- package/dist/server/envelope.d.ts +1 -1
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +4 -4
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +25 -1
- package/dist/server/lifecycle-recovery.sql +17 -1
- 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 +1 -0
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +94 -14
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/loopDocs.sql +12 -0
- 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 +78 -0
- package/dist/server/module-discovery.js.map +1 -0
- package/dist/server/skillDocs.d.ts +9 -0
- package/dist/server/skillDocs.d.ts.map +1 -0
- package/dist/server/skillDocs.js +212 -0
- package/dist/server/skillDocs.js.map +1 -0
- package/dist/server/skillDocs.sql +14 -0
- package/dist/server/workspace-capabilities.sql +19 -0
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +182 -123
- package/dist/service.js.map +1 -1
- package/migrations/001_schema.sql +455 -65
- package/package.json +38 -37
- package/dist/core/ExecutableTools.d.ts +0 -10
- package/dist/core/ExecutableTools.d.ts.map +0 -1
- package/dist/core/ExecutableTools.js +0 -41
- 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/schemes/Exec.js
CHANGED
|
@@ -19,7 +19,8 @@ import Results, { OperationFailureError } from "../core/results.js";
|
|
|
19
19
|
import { InvalidOperationResultError, NetworkAddress } from "@plurnk/plurnk-schemes";
|
|
20
20
|
import DbProjectionCaps from "../core/caps/DbProjectionCaps.js";
|
|
21
21
|
import WorkerControlAddress from "../core/WorkerControlAddress.js";
|
|
22
|
-
import
|
|
22
|
+
import Turn from "../core/Turn.js";
|
|
23
|
+
import LoopLifecycle from "../core/LoopLifecycle.js";
|
|
23
24
|
import LogEntryProjection from "../core/LogEntryProjection.js";
|
|
24
25
|
import LogBody from "../core/LogBody.js";
|
|
25
26
|
import { setTimeout as delay } from "node:timers/promises";
|
|
@@ -90,7 +91,7 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
90
91
|
writableBy: ["model", "client"],
|
|
91
92
|
volatile: true,
|
|
92
93
|
modelVisible: true,
|
|
93
|
-
documentation: "Runs a registered executable tool — `## EXEC0 [executor] (target) <timeout,poll>\nbody` — using
|
|
94
|
+
documentation: "Runs a registered executable tool — `## EXEC0 [executor] (target) <timeout,poll>\nbody` — using its `worker://plurnk/tools/` invocation contract. Output streams into the worker's `<executor>:///<loop>/<turn>/<seq>` entry on that tool's own channels. A host-effecting invocation proposes for review before it runs; a read-only or pure one runs ungated. Either way you never fetch the output: the engine surfaces each turn's new stream bytes automatically — folded while it runs, opened when it finishes.",
|
|
94
95
|
flags: {
|
|
95
96
|
excludedInAsk: true,
|
|
96
97
|
},
|
|
@@ -212,9 +213,9 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
212
213
|
// {§exec-registry-resolves} — a non-empty tag selects exactly one registered executable
|
|
213
214
|
// tool. Unknown tags are not reinterpreted as shell command words: that would make the
|
|
214
215
|
// executed command differ from the authored body. Bare EXEC remains the default-shell form.
|
|
215
|
-
const resolved = core.executors.entry(runtime);
|
|
216
|
+
const resolved = core.executors.entry(runtime, core.workspaceId);
|
|
216
217
|
if (resolved === undefined) {
|
|
217
|
-
const available = core.executors.availableRuntimes()
|
|
218
|
+
const available = core.executors.availableRuntimes(core.workspaceId)
|
|
218
219
|
.filter((tag) => workspaceExecs === null || Policy.isEnabled(tag, workspaceExecs));
|
|
219
220
|
return Results.failure("scheme:exec", "runtime-not-registered", 501, `Executable tool '${runtime}' is not registered in this workspace.`, {}, {
|
|
220
221
|
requestedRuntime: runtime,
|
|
@@ -232,7 +233,7 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
232
233
|
// {§operator-config-workspace-execs} — the workspace layer only narrows
|
|
233
234
|
// the registered set. Bare EXEC resolves to sh before the same gate.
|
|
234
235
|
if (workspaceExecs !== null && !Policy.isEnabled(runtime, workspaceExecs)) {
|
|
235
|
-
const available = core.executors.availableRuntimes()
|
|
236
|
+
const available = core.executors.availableRuntimes(core.workspaceId)
|
|
236
237
|
.filter((tag) => Policy.isEnabled(tag, workspaceExecs));
|
|
237
238
|
return Results.failure("scheme:exec", "runtime-disabled", 501, `Executable tool '${runtime}' is disabled by workspace policy.`, {}, {
|
|
238
239
|
requestedRuntime: runtime,
|
|
@@ -250,7 +251,23 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
250
251
|
retryable: false,
|
|
251
252
|
});
|
|
252
253
|
}
|
|
253
|
-
const
|
|
254
|
+
const registry = core.executors.toolRegistry(runtime, core.workspaceId);
|
|
255
|
+
const exactTarget = statement.target?.raw ?? null;
|
|
256
|
+
const registeredTool = registry?.tools.find((tool) => tool.target === exactTarget);
|
|
257
|
+
if (registry !== null && registeredTool === undefined) {
|
|
258
|
+
const availableTargets = registry.tools.map((tool) => tool.target);
|
|
259
|
+
return Results.failure("scheme:exec", exactTarget === null ? "target-required" : "target-not-registered", exactTarget === null ? 400 : 404, exactTarget === null
|
|
260
|
+
? `Executable tool family '${runtime}' requires one registered tool target.`
|
|
261
|
+
: `Executable tool family '${runtime}' has no registered target '${exactTarget}'.`, {}, {
|
|
262
|
+
runtime,
|
|
263
|
+
availableTargets,
|
|
264
|
+
recovery: availableTargets.length > 0
|
|
265
|
+
? `Select one registered target: ${availableTargets.join(", ")}.`
|
|
266
|
+
: `Continue without executing '${runtime}'; it has no enabled targets.`,
|
|
267
|
+
retryable: false,
|
|
268
|
+
});
|
|
269
|
+
}
|
|
270
|
+
const invocation = registeredTool?.invocation ?? resolved.invocation;
|
|
254
271
|
const hasBody = body.length > 0;
|
|
255
272
|
const hasTarget = statement.target !== null;
|
|
256
273
|
const refuse = (code, detail, recovery, extensions = {}) => Results.failure("scheme:exec", code, 400, detail, {}, { runtime, recovery, retryable: false, ...extensions });
|
|
@@ -371,7 +388,8 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
371
388
|
}
|
|
372
389
|
const read = await this.readExecSource({
|
|
373
390
|
op: "READ",
|
|
374
|
-
|
|
391
|
+
delimiter: "",
|
|
392
|
+
annotation: null,
|
|
375
393
|
signal: null,
|
|
376
394
|
target: sourceTarget,
|
|
377
395
|
lineMarker: { marks: [1, -1] },
|
|
@@ -389,8 +407,8 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
389
407
|
retryable: false,
|
|
390
408
|
});
|
|
391
409
|
}
|
|
392
|
-
tempPath = join(tmpdir(), `plurnk-exec-${
|
|
393
|
-
await writeFile(tempPath, content, "utf8");
|
|
410
|
+
tempPath = join(tmpdir(), `plurnk-exec-${crypto.randomUUID()}`);
|
|
411
|
+
await writeFile(tempPath, content, { encoding: "utf8", flag: "wx", mode: 0o600 });
|
|
394
412
|
target = tempPath;
|
|
395
413
|
}
|
|
396
414
|
if (body.length === 0 && target === null) {
|
|
@@ -402,7 +420,7 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
402
420
|
if (core.executors === undefined) {
|
|
403
421
|
throw new InvalidOperationResultError("An accepted EXEC proposal has no executor registry.");
|
|
404
422
|
}
|
|
405
|
-
const resolved = core.executors.entry(runtime);
|
|
423
|
+
const resolved = core.executors.entry(runtime, core.workspaceId);
|
|
406
424
|
if (resolved === undefined) {
|
|
407
425
|
throw new InvalidOperationResultError(`The '${runtime}' executor disappeared after its EXEC proposal.`);
|
|
408
426
|
}
|
|
@@ -510,6 +528,8 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
510
528
|
// reserved-worker turn owned by this spawn.
|
|
511
529
|
let entryChain = Promise.resolve();
|
|
512
530
|
let narration = null;
|
|
531
|
+
let narrationResult = { status: 200 };
|
|
532
|
+
let entryChainFailed = false;
|
|
513
533
|
let callerSource;
|
|
514
534
|
const resolveCallerSource = async () => {
|
|
515
535
|
if (callerSource !== undefined)
|
|
@@ -584,13 +604,17 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
584
604
|
const written = Results.assert(await EntryCrud.writeEntry(pathname, { channels }, ctx, scheme));
|
|
585
605
|
if (narration === null) {
|
|
586
606
|
const worker = await db.envelope_get_worker_by_name.get({ workspace_id: ctx.workspaceId, name: "plurnk" })
|
|
587
|
-
?? await db.envelope_insert_worker.get({ workspace_id: ctx.workspaceId, name: "plurnk", origin: "
|
|
607
|
+
?? await db.envelope_insert_worker.get({ workspace_id: ctx.workspaceId, name: "plurnk", origin: "_plurnk" });
|
|
588
608
|
if (worker === undefined)
|
|
589
609
|
throw new Error("entry(): plurnk worker resolution returned no row");
|
|
590
610
|
const loop = await db.envelope_insert_client_loop.get({ worker_id: worker.id });
|
|
591
611
|
if (loop === undefined)
|
|
592
612
|
throw new Error("entry(): loop insert returned no row");
|
|
593
|
-
const turn = await
|
|
613
|
+
const turn = await Turn.open(db, {
|
|
614
|
+
loopId: loop.id,
|
|
615
|
+
producer: "_plurnk",
|
|
616
|
+
kind: "operation",
|
|
617
|
+
});
|
|
594
618
|
narration = {
|
|
595
619
|
workerId: worker.id,
|
|
596
620
|
loopId: loop.id,
|
|
@@ -600,10 +624,12 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
600
624
|
seq: 1,
|
|
601
625
|
};
|
|
602
626
|
}
|
|
627
|
+
if (narrationResult.status < 400 || written.status >= 400)
|
|
628
|
+
narrationResult = written;
|
|
603
629
|
const sequence = narration.seq++;
|
|
604
630
|
const narrationAttrs = { kind: "entry_materialized" };
|
|
605
631
|
if (written.problem !== undefined) {
|
|
606
|
-
const coordinate = LogEntryProjection.coordinate(`${narration.loopSeq}/${narration.turnSeq}/${sequence}`, { origin: "
|
|
632
|
+
const coordinate = LogEntryProjection.coordinate(`${narration.loopSeq}/${narration.turnSeq}/${sequence}`, { origin: "_plurnk", op: "EDIT", attrs: narrationAttrs });
|
|
607
633
|
Results.attachInstance(written, `log:///${coordinate}`);
|
|
608
634
|
}
|
|
609
635
|
const tx = JSON.stringify({ op: "EDIT", body: source });
|
|
@@ -621,8 +647,8 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
621
647
|
worker_id: narration.workerId, loop_id: narration.loopId, turn_id: narration.turnId, sequence,
|
|
622
648
|
// signal carries additive tag terms through the same slot a model's EDIT uses, so the
|
|
623
649
|
// ambient row renders its tags natively everywhere (packet meta line, digest).
|
|
624
|
-
origin: "
|
|
625
|
-
op: "EDIT",
|
|
650
|
+
origin: "_plurnk", source: causalSource, model_call_id: null,
|
|
651
|
+
op: "EDIT", delimiter: "", signal: JSON.stringify(tagSignal),
|
|
626
652
|
scheme, username: null, password: null, hostname: null, port: null,
|
|
627
653
|
pathname, query: null, fragment: null, lineMarker: null,
|
|
628
654
|
tx, mimetype_tx: "application/json",
|
|
@@ -649,14 +675,21 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
649
675
|
return renderAddress(scheme, pathname);
|
|
650
676
|
};
|
|
651
677
|
const run = entryChain.then(op, op);
|
|
652
|
-
entryChain = run.then(() => undefined, () =>
|
|
678
|
+
entryChain = run.then(() => undefined, () => { entryChainFailed = true; });
|
|
653
679
|
return run;
|
|
654
680
|
};
|
|
681
|
+
const executionFailures = [];
|
|
655
682
|
try {
|
|
656
683
|
try {
|
|
657
684
|
const reported = await executor.run({
|
|
658
685
|
runtime, body, cwd, target, signal,
|
|
659
686
|
entry: entrySink,
|
|
687
|
+
interact: (request) => {
|
|
688
|
+
if (ctx.requestInteraction === undefined) {
|
|
689
|
+
throw new Error("EXEC client interaction capability is unavailable.");
|
|
690
|
+
}
|
|
691
|
+
return ctx.requestInteraction(request);
|
|
692
|
+
},
|
|
660
693
|
env: ExecEnv.scoped(), // SPEC {§exec} {§exec-env-scoped} — never plurnk's own secrets
|
|
661
694
|
write: (channel, chunk, mimetype) => enqueue(() => ChannelWrite.appendToChannel(db, {
|
|
662
695
|
entryId, channel, chunk, mimetype, notify: ctx.streamEventNotify, coordinate,
|
|
@@ -724,9 +757,35 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
724
757
|
stdoutLength = stdoutMeta?.contentLength ?? 0;
|
|
725
758
|
stderrLength = stderrMeta?.contentLength ?? 0;
|
|
726
759
|
}
|
|
727
|
-
|
|
760
|
+
catch (cause) {
|
|
761
|
+
executionFailures.push(cause);
|
|
762
|
+
}
|
|
763
|
+
{
|
|
728
764
|
// {§exec-entry-sink} — the spawn tail owns every serialized entry/narration write.
|
|
729
|
-
|
|
765
|
+
const finalizationErrors = [...executionFailures];
|
|
766
|
+
if (entryChainFailed && narrationResult.status < 400) {
|
|
767
|
+
narrationResult = Results.failure("scheme:exec", "entry-narration-failed", 500, "An executor entry could not be materialized or narrated.", {}, { stage: "entry-materialization", retryable: false });
|
|
768
|
+
}
|
|
769
|
+
try {
|
|
770
|
+
await entryChain;
|
|
771
|
+
}
|
|
772
|
+
catch (cause) {
|
|
773
|
+
narrationResult = Results.failure("scheme:exec", "entry-narration-failed", 500, "An executor entry could not be materialized or narrated.", {}, { stage: "entry-materialization", retryable: false });
|
|
774
|
+
finalizationErrors.push(cause);
|
|
775
|
+
}
|
|
776
|
+
const completedNarration = narration;
|
|
777
|
+
if (completedNarration !== null) {
|
|
778
|
+
try {
|
|
779
|
+
await Turn.complete(db, completedNarration.turnId, narrationResult.status);
|
|
780
|
+
const closed = await new LoopLifecycle(db).finish(completedNarration.loopId, narrationResult);
|
|
781
|
+
if (closed === null) {
|
|
782
|
+
throw new Error(`entry(): narration loop ${completedNarration.loopId} was not open at completion`);
|
|
783
|
+
}
|
|
784
|
+
}
|
|
785
|
+
catch (cause) {
|
|
786
|
+
finalizationErrors.push(cause);
|
|
787
|
+
}
|
|
788
|
+
}
|
|
730
789
|
if (timeoutTimer !== null)
|
|
731
790
|
clearTimeout(timeoutTimer); // a finished spawn leaves no pending timer
|
|
732
791
|
// {§exec-source-temporary} — cleanup cannot rewrite the settled
|
|
@@ -751,6 +810,11 @@ export default class Exec extends CoreSchemeAdapterBase {
|
|
|
751
810
|
...coordinate,
|
|
752
811
|
});
|
|
753
812
|
}
|
|
813
|
+
if (finalizationErrors.length === 1)
|
|
814
|
+
throw finalizationErrors[0];
|
|
815
|
+
if (finalizationErrors.length > 1) {
|
|
816
|
+
throw new AggregateError(finalizationErrors, `EXEC narration ${completedNarration?.turnId ?? "unknown"} failed to settle`);
|
|
817
|
+
}
|
|
754
818
|
}
|
|
755
819
|
return result;
|
|
756
820
|
}
|
package/dist/schemes/Exec.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Exec.js","sourceRoot":"","sources":["../../src/schemes/Exec.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"}
|
package/dist/schemes/Log.js
CHANGED
|
@@ -5,6 +5,7 @@ import { CoreSchemeAdapterBase } from "../core/CoreSchemeServices.js";
|
|
|
5
5
|
import Results from "../core/results.js";
|
|
6
6
|
import LogBody from "../core/LogBody.js";
|
|
7
7
|
import LogEntryProjection from "../core/LogEntryProjection.js";
|
|
8
|
+
import LogVisibility from "../core/LogVisibility.js";
|
|
8
9
|
import EntrySemantic from "./_entry-semantic.js";
|
|
9
10
|
import EntryGraph from "./_entry-graph.js";
|
|
10
11
|
import { resolveSearchCandidates } from "./_search-candidate.js";
|
|
@@ -64,11 +65,12 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
64
65
|
defaultChannel: "",
|
|
65
66
|
category: "logging",
|
|
66
67
|
// Log KILL is model-authorized curation. Other mutations remain unavailable
|
|
67
|
-
// because Log exposes no edit/writeEntry handler. {§
|
|
68
|
-
writableBy: ["
|
|
68
|
+
// because Log exposes no edit/writeEntry handler. {§turn-ops-log-curation}
|
|
69
|
+
writableBy: ["_plurnk", "model"],
|
|
69
70
|
volatile: false,
|
|
70
71
|
modelVisible: true,
|
|
71
72
|
folderScopes: true,
|
|
73
|
+
lineAnchors: true,
|
|
72
74
|
example: "## READ0 (log:///1/2/3)",
|
|
73
75
|
};
|
|
74
76
|
async resolveCoreRepresentation(target, ctx) {
|
|
@@ -331,15 +333,15 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
331
333
|
}
|
|
332
334
|
async open(statement, ctx) {
|
|
333
335
|
const core = this.coreContext(ctx);
|
|
334
|
-
const outcome = await this.#planCuration(statement, core,
|
|
336
|
+
const outcome = await this.#planCuration(statement, core, "OPEN");
|
|
335
337
|
if (outcome.plan !== null)
|
|
336
338
|
await this.#applyDirect(outcome.plan, core);
|
|
337
339
|
return outcome.result;
|
|
338
340
|
}
|
|
339
|
-
// FOLD
|
|
341
|
+
// FOLD changes only packet visibility — an active subscription stays alive. {§subscriptions-fold-keeps-subscription}
|
|
340
342
|
async fold(statement, ctx) {
|
|
341
343
|
const core = this.coreContext(ctx);
|
|
342
|
-
const outcome = await this.#planCuration(statement, core,
|
|
344
|
+
const outcome = await this.#planCuration(statement, core, "FOLD");
|
|
343
345
|
if (outcome.plan !== null)
|
|
344
346
|
await this.#applyDirect(outcome.plan, core);
|
|
345
347
|
return outcome.result;
|
|
@@ -347,7 +349,7 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
347
349
|
// Core dispatch retains the exact landed effect beside the suppressed
|
|
348
350
|
// OPEN/FOLD event. Direct scheme callers receive the ordinary result above.
|
|
349
351
|
async curate(statement, ctx) {
|
|
350
|
-
return this.#planCuration(statement, this.coreContext(ctx), statement.op
|
|
352
|
+
return this.#planCuration(statement, this.coreContext(ctx), statement.op);
|
|
351
353
|
}
|
|
352
354
|
// Resolve a log:/// target — a concrete coordinate or path-glob — to the matched row ids.
|
|
353
355
|
// OPEN/FOLD/KILL share this one path selection; log curation has no positional pagination.
|
|
@@ -461,15 +463,18 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
461
463
|
return ids.length === 0 ? { status: 204, ids: [] } : { status: 200, ids };
|
|
462
464
|
}
|
|
463
465
|
async #applyDirect(plan, ctx) {
|
|
464
|
-
for (const
|
|
465
|
-
await ctx.db.
|
|
466
|
+
for (const target of plan.targets) {
|
|
467
|
+
await ctx.db.log_set_folded_by_id.run({
|
|
468
|
+
id: target.id,
|
|
469
|
+
folded: LogVisibility.serialize(target.after),
|
|
470
|
+
});
|
|
466
471
|
for (const tag of plan.remove)
|
|
467
|
-
await ctx.db.log_remove_tag.run({ log_entry_id: id, tag });
|
|
472
|
+
await ctx.db.log_remove_tag.run({ log_entry_id: target.id, tag });
|
|
468
473
|
for (const tag of plan.add)
|
|
469
|
-
await ctx.db.log_write_tag.run({ log_entry_id: id, tag });
|
|
474
|
+
await ctx.db.log_write_tag.run({ log_entry_id: target.id, tag });
|
|
470
475
|
}
|
|
471
476
|
}
|
|
472
|
-
async #planCuration(statement, ctx,
|
|
477
|
+
async #planCuration(statement, ctx, operation) {
|
|
473
478
|
let tags;
|
|
474
479
|
try {
|
|
475
480
|
tags = TagSignal.curation(statement.signal);
|
|
@@ -482,15 +487,61 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
482
487
|
plan: null,
|
|
483
488
|
};
|
|
484
489
|
}
|
|
485
|
-
const planned = (ids) =>
|
|
486
|
-
|
|
487
|
-
|
|
488
|
-
|
|
489
|
-
|
|
490
|
-
|
|
491
|
-
|
|
492
|
-
|
|
493
|
-
|
|
490
|
+
const planned = async (ids) => {
|
|
491
|
+
const rows = await ctx.db.log_curation_targets.all({ ids: JSON.stringify(ids) });
|
|
492
|
+
if (rows.length !== ids.length) {
|
|
493
|
+
throw new Error("Log curation selection changed before its visibility plan was resolved.");
|
|
494
|
+
}
|
|
495
|
+
const targets = [];
|
|
496
|
+
for (const row of rows) {
|
|
497
|
+
const body = LogBody.resolve({
|
|
498
|
+
op: row.op,
|
|
499
|
+
attrs: row.attrs,
|
|
500
|
+
tx: row.tx,
|
|
501
|
+
rx: row.rx,
|
|
502
|
+
mimetypeTx: row.mimetype_tx,
|
|
503
|
+
mimetypeRx: row.mimetype_rx,
|
|
504
|
+
});
|
|
505
|
+
const identity = `log:///${LogEntryProjection.coordinate(row.coordinate, row)}`;
|
|
506
|
+
const result = row.mimetype_rx === "application/json"
|
|
507
|
+
? JSON.parse(row.rx)
|
|
508
|
+
: null;
|
|
509
|
+
const rawAnchors = LogEntryProjection.op(row) === "READ"
|
|
510
|
+
&& result !== null
|
|
511
|
+
&& typeof result === "object"
|
|
512
|
+
&& Object.hasOwn(result, "lineAnchors")
|
|
513
|
+
? result.lineAnchors
|
|
514
|
+
: [];
|
|
515
|
+
if (!Array.isArray(rawAnchors)) {
|
|
516
|
+
throw new TypeError("A READ log body carries malformed published line anchors.");
|
|
517
|
+
}
|
|
518
|
+
const scope = LogVisibility.resolveScope(statement.lineMarker, identity, body.content, rawAnchors);
|
|
519
|
+
if (!scope.ok) {
|
|
520
|
+
return {
|
|
521
|
+
result: Results.failure("scheme:log", "curation-scope-invalid", 400, scope.detail, {}, {
|
|
522
|
+
target: identity,
|
|
523
|
+
recovery: "Use one log-body line or an inclusive two-line range.",
|
|
524
|
+
retryable: false,
|
|
525
|
+
}),
|
|
526
|
+
plan: null,
|
|
527
|
+
};
|
|
528
|
+
}
|
|
529
|
+
const before = LogVisibility.parse(row.folded);
|
|
530
|
+
targets.push({
|
|
531
|
+
id: row.id,
|
|
532
|
+
before,
|
|
533
|
+
after: LogVisibility.apply(before, operation, scope.range, LogVisibility.lineCount(body.content)),
|
|
534
|
+
});
|
|
535
|
+
}
|
|
536
|
+
return {
|
|
537
|
+
result: { status: 200, matched: ids.length },
|
|
538
|
+
plan: {
|
|
539
|
+
targets,
|
|
540
|
+
add: tags.add,
|
|
541
|
+
remove: tags.remove,
|
|
542
|
+
},
|
|
543
|
+
};
|
|
544
|
+
};
|
|
494
545
|
if (statement.body !== null) {
|
|
495
546
|
const matched = await this.#resolveByMatcher(statement, tags.filter, ctx);
|
|
496
547
|
if (matched.status === 204)
|
|
@@ -533,7 +584,7 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
533
584
|
}
|
|
534
585
|
if (statement.target === null) {
|
|
535
586
|
return {
|
|
536
|
-
result: Results.failure("scheme:log", "target-required", 400, `${
|
|
587
|
+
result: Results.failure("scheme:log", "target-required", 400, `${operation} requires a path, body pattern, or unsigned tag; signed tags do not select log items.`, {}, {
|
|
537
588
|
recovery: "Provide a log coordinate, prefix, glob, body pattern, or unsigned tag.",
|
|
538
589
|
retryable: false,
|
|
539
590
|
}),
|
|
@@ -561,7 +612,7 @@ export default class Log extends CoreSchemeAdapterBase {
|
|
|
561
612
|
return planned(selected.ids);
|
|
562
613
|
}
|
|
563
614
|
// KILL shares OPEN/FOLD's address resolution, deletes instead of flipping visibility,
|
|
564
|
-
// and carries no positional scope. {§
|
|
615
|
+
// and carries no positional scope. {§turn-ops-log-curation} {§log-curation-set-selection}
|
|
565
616
|
async kill(pathname, _signal, ctx) {
|
|
566
617
|
const core = this.coreContext(ctx);
|
|
567
618
|
const r = await this.#resolveIds(pathname.replace(/^\//, ""), core);
|