@plurnk/plurnk-service 1.8.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 +20 -0
- package/INSTALL.md +14 -16
- package/README.md +1 -1
- package/SPEC.md +635 -296
- package/digest-sql/channel-dispositions/dispositions.sql +2 -2
- package/digest-sql/entry-dispositions/dispositions.sql +2 -2
- package/dist/Paths.d.ts +1 -2
- package/dist/Paths.d.ts.map +1 -1
- package/dist/Paths.js +1 -9
- package/dist/Paths.js.map +1 -1
- package/dist/build-info.json +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 +17 -4
- 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 +9 -1
- package/dist/core/Dispatcher.d.ts.map +1 -1
- package/dist/core/Dispatcher.js +321 -221
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/Engine.d.ts +13 -4
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +44 -22
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/Engine.sql +101 -81
- 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 +4 -4
- package/dist/core/ExecutorRegistry.d.ts.map +1 -1
- package/dist/core/ExecutorRegistry.js +28 -28
- package/dist/core/ExecutorRegistry.js.map +1 -1
- package/dist/core/LogBody.d.ts.map +1 -1
- package/dist/core/LogBody.js +19 -1
- package/dist/core/LogBody.js.map +1 -1
- package/dist/core/OperatorConfig.d.ts.map +1 -1
- package/dist/core/OperatorConfig.js +5 -2
- package/dist/core/OperatorConfig.js.map +1 -1
- package/dist/core/OverflowTurn.d.ts.map +1 -1
- package/dist/core/OverflowTurn.js +5 -1
- package/dist/core/OverflowTurn.js.map +1 -1
- package/dist/core/Owner.js +1 -1
- package/dist/core/Owner.js.map +1 -1
- package/dist/core/PacketBuilder.d.ts +5 -1
- package/dist/core/PacketBuilder.d.ts.map +1 -1
- package/dist/core/PacketBuilder.js +21 -11
- package/dist/core/PacketBuilder.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 +85 -26
- package/dist/core/ProposalLifecycle.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 +113 -38
- package/dist/core/ResourceMutations.js.map +1 -1
- package/dist/core/SchemeRegistry.d.ts +12 -11
- package/dist/core/SchemeRegistry.d.ts.map +1 -1
- package/dist/core/SchemeRegistry.js +52 -47
- package/dist/core/SchemeRegistry.js.map +1 -1
- package/dist/core/ToolResources.d.ts.map +1 -1
- package/dist/core/ToolResources.js +20 -19
- package/dist/core/ToolResources.js.map +1 -1
- package/dist/core/Turn.d.ts +1 -1
- package/dist/core/Turn.d.ts.map +1 -1
- package/dist/core/TurnOps.d.ts +2 -2
- package/dist/core/TurnOps.d.ts.map +1 -1
- package/dist/core/TurnOps.js +14 -4
- package/dist/core/TurnOps.js.map +1 -1
- package/dist/core/TurnRunner.d.ts +46 -3
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +165 -78
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/WorkerName.d.ts +1 -0
- 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/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 +27 -15
- package/dist/core/fork.js.map +1 -1
- package/dist/core/fork.sql +35 -22
- 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 +225 -50
- package/dist/core/git-membership.js.map +1 -1
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +28 -19
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +13 -2
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +59 -21
- 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/worker-ops.sql +10 -6
- package/dist/core/worker-settings.d.ts +1 -0
- package/dist/core/worker-settings.d.ts.map +1 -1
- package/dist/core/worker-settings.js +7 -0
- package/dist/core/worker-settings.js.map +1 -1
- package/dist/core/workspace-settings.d.ts +2 -0
- package/dist/core/workspace-settings.d.ts.map +1 -1
- package/dist/core/workspace-settings.js +5 -1
- package/dist/core/workspace-settings.js.map +1 -1
- package/dist/digest/Digest.d.ts.map +1 -1
- package/dist/digest/Digest.js +1 -1
- package/dist/digest/Digest.js.map +1 -1
- package/dist/digest/digest.sql +1 -1
- package/dist/schemes/Exec.d.ts +3 -2
- package/dist/schemes/Exec.d.ts.map +1 -1
- package/dist/schemes/Exec.js +55 -22
- 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/Prompt.d.ts +2 -3
- package/dist/schemes/Prompt.d.ts.map +1 -1
- package/dist/schemes/Prompt.js +4 -7
- package/dist/schemes/Prompt.js.map +1 -1
- package/dist/schemes/Skill.d.ts.map +1 -1
- package/dist/schemes/Skill.js +3 -1
- package/dist/schemes/Skill.js.map +1 -1
- package/dist/schemes/Worker.d.ts.map +1 -1
- package/dist/schemes/Worker.js +95 -49
- 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 +58 -23
- package/dist/schemes/_entry-find.d.ts +3 -2
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +26 -25
- package/dist/schemes/_entry-find.js.map +1 -1
- package/dist/schemes/_entry-find.sql +10 -7
- 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 +6 -5
- 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 +2 -0
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/server/Daemon.d.ts +42 -10
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +326 -248
- 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 +3 -1
- package/dist/server/DrainSupervisor.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.js +11 -9
- 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 +1 -0
- package/dist/server/client-input.d.ts.map +1 -1
- package/dist/server/client-input.js +22 -1
- 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 +89 -25
- package/dist/server/dispatch-as-plurnk.js.map +1 -1
- package/dist/server/drain.sql +11 -6
- package/dist/server/envelope.d.ts +6 -1
- package/dist/server/envelope.d.ts.map +1 -1
- package/dist/server/envelope.js +8 -2
- package/dist/server/envelope.js.map +1 -1
- package/dist/server/envelope.sql +11 -3
- package/dist/server/lifecycle-recovery.sql +13 -16
- package/dist/server/loopDocs.d.ts +2 -1
- package/dist/server/loopDocs.d.ts.map +1 -1
- package/dist/server/loopDocs.js +67 -51
- package/dist/server/loopDocs.js.map +1 -1
- package/dist/server/loopDocs.sql +14 -10
- package/dist/server/module-discovery.d.ts +2 -2
- package/dist/server/module-discovery.d.ts.map +1 -1
- package/dist/server/module-discovery.js +27 -2
- package/dist/server/module-discovery.js.map +1 -1
- 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 +11 -1
- package/dist/service.js.map +1 -1
- package/migrations/001_schema.sql +486 -136
- package/package.json +34 -32
- package/dist/server/skillDocs.d.ts +0 -9
- package/dist/server/skillDocs.d.ts.map +0 -1
- package/dist/server/skillDocs.js +0 -212
- package/dist/server/skillDocs.js.map +0 -1
- package/dist/server/skillDocs.sql +0 -14
- package/dist/server/workspace-capabilities.sql +0 -19
package/dist/core/packet-wire.js
CHANGED
|
@@ -518,7 +518,9 @@ export default class PacketWire {
|
|
|
518
518
|
const path = PacketWire.#entryPath(coordinate, renderedOp);
|
|
519
519
|
if (path !== null)
|
|
520
520
|
meta.path = path;
|
|
521
|
-
|
|
521
|
+
// Absence = "model" — the worker's own authorship is the default,
|
|
522
|
+
// exactly as `source` absence means the owning worker (#338).
|
|
523
|
+
if (typeof e.origin === "string" && e.origin !== "model")
|
|
522
524
|
meta.origin = e.origin;
|
|
523
525
|
// {§env-delta-attribution}: render the causal worker address or
|
|
524
526
|
// subsystem token when present; absence means the owning worker.
|
|
@@ -533,7 +535,10 @@ export default class PacketWire {
|
|
|
533
535
|
}
|
|
534
536
|
meta.git = git;
|
|
535
537
|
}
|
|
536
|
-
|
|
538
|
+
// Absence = 200 on a non-SEND row — the clients' quiet grammar
|
|
539
|
+
// (plurnk#21) applied to the packet; SEND keeps its submit code and
|
|
540
|
+
// every non-200 stays explicit (#338).
|
|
541
|
+
if (typeof e.status === "number" && (op === "SEND" || e.status !== 200))
|
|
537
542
|
meta.status = e.status;
|
|
538
543
|
if (e.tags !== undefined) {
|
|
539
544
|
const storedTags = e.tags;
|
|
@@ -585,6 +590,14 @@ export default class PacketWire {
|
|
|
585
590
|
Validator.assertProblemDetails(problem);
|
|
586
591
|
meta.problem = problem;
|
|
587
592
|
}
|
|
593
|
+
// The success-side sibling (#342): a sub-problem receipt may carry one
|
|
594
|
+
// terse `detail` (e.g. the EDIT 304) so situational teaching is paid
|
|
595
|
+
// only when the situation occurs, never in the hot path.
|
|
596
|
+
if (!Object.hasOwn(meta, "problem") && rx !== null && typeof rx === "object"
|
|
597
|
+
&& typeof rx.detail === "string"
|
|
598
|
+
&& rx.detail.length > 0) {
|
|
599
|
+
meta.detail = rx.detail;
|
|
600
|
+
}
|
|
588
601
|
// {§retrieval-packet-metadata}: one extent/coordinate owner plus
|
|
589
602
|
// only FIND aggregates that add information beyond that extent.
|
|
590
603
|
let findItems = null;
|
|
@@ -723,7 +736,9 @@ export default class PacketWire {
|
|
|
723
736
|
// when that body is withheld. Active accounting happens only after every field and
|
|
724
737
|
// the final row framing are known below.
|
|
725
738
|
const renderedBodyWeight = body.length > 0 ? weighContent(body) : 0;
|
|
726
|
-
|
|
739
|
+
// Never tokensBody:0 — a priceless OPEN is field absence, and
|
|
740
|
+
// tokensBody presence is what marks the folded state (#338).
|
|
741
|
+
if (fullBody.content.length > 0 && renderedBodyWeight > 0)
|
|
727
742
|
meta.tokensBody = renderedBodyWeight;
|
|
728
743
|
// lines beside tokens on a non-retrieval row with a navigable body — the count of
|
|
729
744
|
// `N:`-numbered lines (fences and unnumbered prose don't count), so the model can plan
|
|
@@ -734,10 +749,10 @@ export default class PacketWire {
|
|
|
734
749
|
if (bodyVisibility.folded.length > 0 && !bodyVisibility.fullyFolded) {
|
|
735
750
|
meta.folded = LogVisibility.format(bodyVisibility.folded);
|
|
736
751
|
}
|
|
737
|
-
// {§jsonplurnk} —
|
|
738
|
-
//
|
|
739
|
-
//
|
|
740
|
-
//
|
|
752
|
+
// {§jsonplurnk} — the three body states stay self-describing through
|
|
753
|
+
// field presence alone (#338): a `body` field ⇒ open, `tokensBody`
|
|
754
|
+
// without `body` ⇒ folded, neither ⇒ none. OPEN/FOLD remain
|
|
755
|
+
// friendly no-ops on `none`.
|
|
741
756
|
const display = fullBody.content.length === 0
|
|
742
757
|
? "none"
|
|
743
758
|
: bodyVisibility.fullyFolded
|
|
@@ -745,9 +760,6 @@ export default class PacketWire {
|
|
|
745
760
|
: body.length === 0
|
|
746
761
|
? "none"
|
|
747
762
|
: "open";
|
|
748
|
-
meta.display = display;
|
|
749
|
-
if (display === "none")
|
|
750
|
-
meta.body = "";
|
|
751
763
|
const projectedChunk = projection.chunk !== null
|
|
752
764
|
&& bodyVisibility.folded.length > 0
|
|
753
765
|
&& !bodyVisibility.fullyFolded
|
|
@@ -762,21 +774,18 @@ export default class PacketWire {
|
|
|
762
774
|
? obj.replace(/\}$/, `,"body":${body}${chunk}}`)
|
|
763
775
|
: obj;
|
|
764
776
|
};
|
|
765
|
-
// The accounting
|
|
766
|
-
// decimal
|
|
767
|
-
//
|
|
768
|
-
//
|
|
769
|
-
|
|
777
|
+
// The accounting field participates in the row it measures. Iterate
|
|
778
|
+
// until its decimal width and therefore the rendered row's curation
|
|
779
|
+
// weight are stable. The metadata share is derivable (tokensActive −
|
|
780
|
+
// tokensBody when open; tokensActive otherwise) and feeds no
|
|
781
|
+
// curation decision, so it is not serialized (#338).
|
|
770
782
|
meta.tokensActive = 0;
|
|
771
|
-
meta.tokensMetadata = 0;
|
|
772
783
|
for (let pass = 0; pass < 8; pass += 1) {
|
|
773
784
|
const tokensActive = weighContent(renderRow());
|
|
774
|
-
|
|
775
|
-
if (meta.tokensActive === tokensActive && meta.tokensMetadata === tokensMetadata) {
|
|
785
|
+
if (meta.tokensActive === tokensActive) {
|
|
776
786
|
return renderRow();
|
|
777
787
|
}
|
|
778
788
|
meta.tokensActive = tokensActive;
|
|
779
|
-
meta.tokensMetadata = tokensMetadata;
|
|
780
789
|
}
|
|
781
790
|
throw new Error("jsonplurnk row accounting did not converge");
|
|
782
791
|
}).join(",\n");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"packet-wire.js","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"packet-wire.js","sourceRoot":"","sources":["../../src/core/packet-wire.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { type ParsedPath } from "@plurnk/plurnk-contracts";
|
|
2
|
+
import { type EntryCoordinate, type SchemeAuthority } from "@plurnk/plurnk-schemes";
|
|
2
3
|
export interface RenderTargetParts {
|
|
3
4
|
readonly scheme: string | null | undefined;
|
|
4
5
|
readonly hostname?: string | null;
|
|
@@ -8,11 +9,21 @@ export interface RenderTargetParts {
|
|
|
8
9
|
readonly fragment?: string | null;
|
|
9
10
|
}
|
|
10
11
|
export declare function schemeNameOf(path: ParsedPath | null): string | null;
|
|
12
|
+
export declare function routedSchemeName(addressedScheme: string): string;
|
|
11
13
|
export declare function foldAuthorityIntoPath(hostname: string | null, pathname: string): string;
|
|
12
|
-
export declare function
|
|
14
|
+
export declare function entryCoordinateOf(path: ParsedPath, authority: SchemeAuthority): EntryCoordinate;
|
|
15
|
+
export declare function authorityParts(authority: string): {
|
|
16
|
+
hostname: string | null;
|
|
17
|
+
port: number | null;
|
|
18
|
+
};
|
|
19
|
+
export declare const GENERATED_ROOT = "/_plurnk";
|
|
20
|
+
export declare function generatedPathname(relative: string): string;
|
|
21
|
+
export declare function isGeneratedPathname(pathname: string): boolean;
|
|
13
22
|
export declare function promptPathname(loopSeq: number, promptOrdinal: number): string;
|
|
14
23
|
export declare function promptLoopPrefix(loopSeq: number): string;
|
|
15
|
-
export declare function renderAddress(
|
|
24
|
+
export declare function renderAddress(address: EntryCoordinate & {
|
|
25
|
+
readonly scheme: string;
|
|
26
|
+
}): string;
|
|
16
27
|
/** Render one stored target without exposing credentials or request metadata. {§scheme-address} */
|
|
17
28
|
export declare function renderTarget(target: RenderTargetParts): string | null;
|
|
18
29
|
//# sourceMappingURL=plurnk-uri.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plurnk-uri.d.ts","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"plurnk-uri.d.ts","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAIA,OAAO,EAAc,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAkB,KAAK,eAAe,EAAE,KAAK,eAAe,EAAE,MAAM,wBAAwB,CAAC;AAEpG,MAAM,WAAW,iBAAiB;IAC9B,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAC7C,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrC;AAKD,wBAAgB,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,IAAI,GAAG,MAAM,GAAG,IAAI,CAQnE;AAED,wBAAgB,gBAAgB,CAAC,eAAe,EAAE,MAAM,GAAG,MAAM,CAIhE;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAEvF;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,EAAE,eAAe,GAAG,eAAe,CAqB/F;AAED,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG;IAAE,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,CAUlG;AAKD,eAAO,MAAM,cAAc,aAAa,CAAC;AAEzC,wBAAgB,iBAAiB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE1D;AAED,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAE7D;AAMD,wBAAgB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,MAAM,GAAG,MAAM,CAE7E;AAED,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAExD;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,eAAe,GAAG;IAAE,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAK5F;AAED,mGAAmG;AACnG,wBAAgB,YAAY,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,GAAG,IAAI,CAyBrE"}
|
package/dist/core/plurnk-uri.js
CHANGED
|
@@ -12,25 +12,63 @@ export function schemeNameOf(path) {
|
|
|
12
12
|
// {§scheme-address-network}: handler aliases route https through http and ws through wss
|
|
13
13
|
// without collapsing the addressed scheme's resource identity.
|
|
14
14
|
if (path.kind === "url") {
|
|
15
|
-
|
|
16
|
-
return "http";
|
|
17
|
-
if (path.scheme === "ws")
|
|
18
|
-
return "wss";
|
|
19
|
-
return path.scheme;
|
|
15
|
+
return routedSchemeName(path.scheme);
|
|
20
16
|
}
|
|
21
17
|
return "file"; // local (bare) → file
|
|
22
18
|
}
|
|
19
|
+
export function routedSchemeName(addressedScheme) {
|
|
20
|
+
if (addressedScheme === "http")
|
|
21
|
+
return "https";
|
|
22
|
+
if (addressedScheme === "ws")
|
|
23
|
+
return "wss";
|
|
24
|
+
return addressedScheme;
|
|
25
|
+
}
|
|
23
26
|
export function foldAuthorityIntoPath(hostname, pathname) {
|
|
24
27
|
return hostname ? `/${hostname}${pathname}` : pathname;
|
|
25
28
|
}
|
|
26
|
-
export function
|
|
27
|
-
if (path.kind === "
|
|
28
|
-
return
|
|
29
|
+
export function entryCoordinateOf(path, authority) {
|
|
30
|
+
if (path.kind === "local") {
|
|
31
|
+
return { authority: "", pathname: PathSyntax.decodeParens(path.raw) };
|
|
32
|
+
}
|
|
33
|
+
if (authority === "resource") {
|
|
34
|
+
const canonicalAuthority = path.hostname === null
|
|
35
|
+
? ""
|
|
36
|
+
: `${path.hostname}${path.port === null ? "" : `:${path.port}`}`;
|
|
37
|
+
const query = path.query === null ? "" : `?${path.query}`;
|
|
38
|
+
return {
|
|
39
|
+
authority: canonicalAuthority,
|
|
40
|
+
pathname: PathSyntax.decodeParens(path.pathname) + query,
|
|
41
|
+
};
|
|
29
42
|
}
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
return
|
|
43
|
+
if (authority === "owner") {
|
|
44
|
+
return { authority: "", pathname: PathSyntax.decodeParens(path.pathname) };
|
|
45
|
+
}
|
|
46
|
+
return {
|
|
47
|
+
authority: "",
|
|
48
|
+
pathname: PathSyntax.decodeParens(foldAuthorityIntoPath(path.hostname, path.pathname)),
|
|
49
|
+
};
|
|
50
|
+
}
|
|
51
|
+
export function authorityParts(authority) {
|
|
52
|
+
if (authority.length === 0)
|
|
53
|
+
return { hostname: null, port: null };
|
|
54
|
+
const parsed = new URL(`plurnk-authority://${authority}/`);
|
|
55
|
+
if (parsed.username.length > 0 || parsed.password.length > 0 || parsed.hostname.length === 0) {
|
|
56
|
+
throw new TypeError(`Invalid resource authority ${JSON.stringify(authority)}.`);
|
|
57
|
+
}
|
|
58
|
+
return {
|
|
59
|
+
hostname: parsed.hostname,
|
|
60
|
+
port: parsed.port.length === 0 ? null : Number(parsed.port),
|
|
61
|
+
};
|
|
62
|
+
}
|
|
63
|
+
// {§worker-generated-subtree} — every Plurnk-generated per-Worker document lives under
|
|
64
|
+
// worker://~/_plurnk/. The root is the one writer-tier boundary and the fork
|
|
65
|
+
// rederive predicate; families (agents.md, skills/, tools/) hang beneath it.
|
|
66
|
+
export const GENERATED_ROOT = "/_plurnk";
|
|
67
|
+
export function generatedPathname(relative) {
|
|
68
|
+
return `${GENERATED_ROOT}${relative.startsWith("/") ? relative : `/${relative}`}`;
|
|
69
|
+
}
|
|
70
|
+
export function isGeneratedPathname(pathname) {
|
|
71
|
+
return pathname === GENERATED_ROOT || pathname.startsWith(`${GENERATED_ROOT}/`);
|
|
34
72
|
}
|
|
35
73
|
// {§prompt-self-only} — the prompt address is prompt:///<loopSeq>/<promptOrdinal>: the OWNER rides the
|
|
36
74
|
// owner_id column ({§entry-owner}), so the coordinate is bare and loop-relative — the last
|
|
@@ -42,15 +80,12 @@ export function promptPathname(loopSeq, promptOrdinal) {
|
|
|
42
80
|
export function promptLoopPrefix(loopSeq) {
|
|
43
81
|
return `/${loopSeq}/`;
|
|
44
82
|
}
|
|
45
|
-
export function renderAddress(
|
|
46
|
-
if (NetworkAddress.supports(scheme))
|
|
47
|
-
return NetworkAddress.render(
|
|
83
|
+
export function renderAddress(address) {
|
|
84
|
+
if (NetworkAddress.supports(address.scheme))
|
|
85
|
+
return NetworkAddress.render(address);
|
|
86
|
+
const { scheme, authority, pathname } = address;
|
|
48
87
|
const encoded = PathSyntax.encodeParens(pathname);
|
|
49
|
-
|
|
50
|
-
// model-facing rendering restores it to the authority slot.
|
|
51
|
-
// worker:// renders :/// — the owner rides owner_id ({§entry-owner}), so empty authority IS
|
|
52
|
-
// the canonical stored form; a querying face re-applies its authority (~/name) for display.
|
|
53
|
-
return PathSyntax.escapeTarget(`${scheme}://${encoded}`);
|
|
88
|
+
return PathSyntax.escapeTarget(`${scheme}://${authority}${encoded}`);
|
|
54
89
|
}
|
|
55
90
|
/** Render one stored target without exposing credentials or request metadata. {§scheme-address} */
|
|
56
91
|
export function renderTarget(target) {
|
|
@@ -67,7 +102,10 @@ export function renderTarget(target) {
|
|
|
67
102
|
address = PathSyntax.escapeTarget(`${scheme}://${hostname}${port}${PathSyntax.encodeParens(target.pathname)}`);
|
|
68
103
|
}
|
|
69
104
|
else {
|
|
70
|
-
|
|
105
|
+
const authority = hostname === null || hostname.length === 0
|
|
106
|
+
? ""
|
|
107
|
+
: `${hostname}${target.port === null || target.port === undefined ? "" : `:${target.port}`}`;
|
|
108
|
+
address = renderAddress({ scheme, authority, pathname: target.pathname });
|
|
71
109
|
}
|
|
72
110
|
if (target.query !== null && target.query !== undefined) {
|
|
73
111
|
address += `?${PathSyntax.escapeTarget(target.query)}`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"plurnk-uri.js","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"AAAA,kFAAkF;AAClF,+EAA+E;AAC/E,yEAAyE;AAEzE,OAAO,EAAE,UAAU,EAAmB,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,cAAc,
|
|
1
|
+
{"version":3,"file":"plurnk-uri.js","sourceRoot":"","sources":["../../src/core/plurnk-uri.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheme-types.d.ts","sourceRoot":"","sources":["../../src/core/scheme-types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACR,wBAAwB,EACxB,2BAA2B,EAC3B,MAAM,EACT,MAAM,0BAA0B,CAAC;AAIlC,YAAY,EACR,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,UAAU,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAMhD,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;IAChB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"scheme-types.d.ts","sourceRoot":"","sources":["../../src/core/scheme-types.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,gBAAgB,MAAM,uBAAuB,CAAC;AAC1D,OAAO,KAAK,EAAE,iBAAiB,EAAE,gBAAgB,EAAE,kBAAkB,EAAE,MAAM,mBAAmB,CAAC;AACjG,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC7C,OAAO,KAAK,EACR,wBAAwB,EACxB,2BAA2B,EAC3B,MAAM,EACT,MAAM,0BAA0B,CAAC;AAIlC,YAAY,EACR,SAAS,EACT,kBAAkB,EAClB,cAAc,EACd,UAAU,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAMhD,MAAM,WAAW,mBAAmB;IAChC,QAAQ,CAAC,EAAE,EAAE,EAAE,CAAC;IAChB,QAAQ,CAAC,WAAW,EAAE,MAAM,CAAC;IAC7B,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAK1B,QAAQ,CAAC,qBAAqB,EAAE,MAAM,CAAC;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,MAAM,EAAE,WAAW,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,iBAAiB,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,gBAAgB,CAAC;IAK7C,QAAQ,CAAC,YAAY,CAAC,EAAE,kBAAkB,CAAC;IAC3C,QAAQ,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC;IAI/B,QAAQ,CAAC,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAOtC,QAAQ,CAAC,KAAK,CAAC,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;IAI1C,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IAGxD,QAAQ,CAAC,UAAU,CAAC,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;IAG/C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,CAC1B,OAAO,EAAE,wBAAwB,KAChC,OAAO,CAAC,2BAA2B,CAAC,CAAC;CAC7C"}
|
package/dist/core/worker-ops.sql
CHANGED
|
@@ -14,7 +14,7 @@ ORDER BY id DESC LIMIT 1;
|
|
|
14
14
|
SELECT name FROM workers WHERE id = $worker_id;
|
|
15
15
|
|
|
16
16
|
-- PREP: worker_deliverable_by_name
|
|
17
|
-
-- The newest worker holding this name, with its
|
|
17
|
+
-- The newest worker holding this name, with its live loop or latest-settled terminal result — the
|
|
18
18
|
-- deliverable a sister COLLECTS by READing worker://<name> ({§worker-scheme-collect}, the pull side of
|
|
19
19
|
-- the same deliverable the push delta carries). Non-terminal means the worker has not delivered yet
|
|
20
20
|
-- (READ steers to 202).
|
|
@@ -23,21 +23,25 @@ SELECT r.id AS worker_id, l.status, l.terminal_result, l.terminated_by
|
|
|
23
23
|
FROM workers r
|
|
24
24
|
JOIN loops l ON l.worker_id = r.id
|
|
25
25
|
WHERE r.workspace_id = $workspace_id AND r.name = $name
|
|
26
|
-
ORDER BY r.id DESC,
|
|
26
|
+
ORDER BY r.id DESC,
|
|
27
|
+
CASE WHEN l.status IN (100, 102, 202) THEN 0 ELSE 1 END,
|
|
28
|
+
CASE WHEN l.status IN (100, 102, 202) THEN l.sequence END DESC,
|
|
29
|
+
CASE WHEN l.status NOT IN (100, 102, 202) THEN l.terminated_at END DESC,
|
|
30
|
+
l.id DESC
|
|
27
31
|
LIMIT 1;
|
|
28
32
|
|
|
29
33
|
-- PREP: worker_live_by_name
|
|
30
|
-
-- The newest worker holding this name that is still LIVE (
|
|
34
|
+
-- The newest worker holding this name that is still LIVE (an unresolved loop, 100/102/202) —
|
|
31
35
|
-- the spawn gate's collision check. A hit means the name is in use by a running sister
|
|
32
36
|
-- (refuse: 409); no hit means the name is free or held only by a terminated worker (reclaim).
|
|
33
37
|
SELECT r.id FROM workers r
|
|
34
38
|
JOIN loops l ON l.worker_id = r.id
|
|
35
|
-
WHERE r.workspace_id = $workspace_id AND r.name = $name AND l.status IN (100, 102)
|
|
39
|
+
WHERE r.workspace_id = $workspace_id AND r.name = $name AND l.status IN (100, 102, 202)
|
|
36
40
|
ORDER BY r.id DESC LIMIT 1;
|
|
37
41
|
|
|
38
42
|
-- PREP: worker_count_active
|
|
39
|
-
-- Workers in a workspace with
|
|
43
|
+
-- Workers in a workspace with an unresolved loop (100 pending / 102 in-progress / 202 parked)
|
|
40
44
|
-- — "active" for the PLURNK_SERVICE_WORKSPACE_WORKERS_MAX_ACTIVE ceiling (worker-cap.ts).
|
|
41
45
|
SELECT COUNT(DISTINCT r.id) AS n FROM workers r
|
|
42
46
|
JOIN loops l ON l.worker_id = r.id
|
|
43
|
-
WHERE r.workspace_id = $workspace_id AND l.status IN (100, 102);
|
|
47
|
+
WHERE r.workspace_id = $workspace_id AND l.status IN (100, 102, 202);
|
|
@@ -5,5 +5,6 @@ export interface WorkerSettings {
|
|
|
5
5
|
export default class WorkerSettingsReader {
|
|
6
6
|
static read(db: Db, workerId: number): Promise<WorkerSettings>;
|
|
7
7
|
static requestUserInputEnabled(db: Db, workerId: number): Promise<boolean>;
|
|
8
|
+
static toolAvailable(db: Db, workerId: number, runtime: string): Promise<boolean>;
|
|
8
9
|
}
|
|
9
10
|
//# sourceMappingURL=worker-settings.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-settings.d.ts","sourceRoot":"","sources":["../../src/core/worker-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AASlC,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACtC;AAID,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACrC,OAAa,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAcnE;IAED,OAAa,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;CACJ"}
|
|
1
|
+
{"version":3,"file":"worker-settings.d.ts","sourceRoot":"","sources":["../../src/core/worker-settings.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AASlC,MAAM,WAAW,cAAc;IAC3B,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;CACtC;AAID,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACrC,OAAa,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,CAAC,CAcnE;IAED,OAAa,uBAAuB,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAE/E;IAKD,OAAa,aAAa,CAAC,EAAE,EAAE,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC,CAGtF;CACJ"}
|
|
@@ -21,5 +21,12 @@ export default class WorkerSettingsReader {
|
|
|
21
21
|
static async requestUserInputEnabled(db, workerId) {
|
|
22
22
|
return (await WorkerSettingsReader.read(db, workerId)).requestUserInput;
|
|
23
23
|
}
|
|
24
|
+
// {§worker-tool-admission} is one predicate shared by discovery and
|
|
25
|
+
// execution. A tool hidden from a Worker cannot remain guessable through
|
|
26
|
+
// generated documentation while dispatch rejects it.
|
|
27
|
+
static async toolAvailable(db, workerId, runtime) {
|
|
28
|
+
return runtime !== "question"
|
|
29
|
+
|| await WorkerSettingsReader.requestUserInputEnabled(db, workerId);
|
|
30
|
+
}
|
|
24
31
|
}
|
|
25
32
|
//# sourceMappingURL=worker-settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"worker-settings.js","sourceRoot":"","sources":["../../src/core/worker-settings.ts"],"names":[],"mappings":"AAaA,MAAM,gBAAgB,GAAmB,MAAM,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACrC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,QAAgB;QACtC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAuB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtF,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,gBAAgB,CAAC;QAC/C,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAY,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACpG,MAAM,CAAC,GAAG,MAAwC,CAAC;QACnD,OAAO;YACH,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,KAAK,IAAI;SAChD,CAAC;IACN,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAM,EAAE,QAAgB;QACzD,OAAO,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC5E,CAAC;CACJ"}
|
|
1
|
+
{"version":3,"file":"worker-settings.js","sourceRoot":"","sources":["../../src/core/worker-settings.ts"],"names":[],"mappings":"AAaA,MAAM,gBAAgB,GAAmB,MAAM,CAAC,MAAM,CAAC,EAAE,gBAAgB,EAAE,KAAK,EAAE,CAAC,CAAC;AAEpF,MAAM,CAAC,OAAO,OAAO,oBAAoB;IACrC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,QAAgB;QACtC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,oBAAoB,CAAC,GAAG,CAAuB,EAAE,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QACtF,IAAI,GAAG,KAAK,SAAS;YAAE,OAAO,gBAAgB,CAAC;QAC/C,IAAI,MAAe,CAAC;QACpB,IAAI,CAAC;YACD,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAY,CAAC;QACjD,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,gBAAgB,CAAC;QAC5B,CAAC;QACD,IAAI,OAAO,MAAM,KAAK,QAAQ,IAAI,MAAM,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC;YAAE,OAAO,gBAAgB,CAAC;QACpG,MAAM,CAAC,GAAG,MAAwC,CAAC;QACnD,OAAO;YACH,gBAAgB,EAAE,CAAC,CAAC,gBAAgB,KAAK,IAAI;SAChD,CAAC;IACN,CAAC;IAED,MAAM,CAAC,KAAK,CAAC,uBAAuB,CAAC,EAAM,EAAE,QAAgB;QACzD,OAAO,CAAC,MAAM,oBAAoB,CAAC,IAAI,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC,CAAC,gBAAgB,CAAC;IAC5E,CAAC;IAED,oEAAoE;IACpE,yEAAyE;IACzE,qDAAqD;IACrD,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,EAAM,EAAE,QAAgB,EAAE,OAAe;QAChE,OAAO,OAAO,KAAK,UAAU;eACtB,MAAM,oBAAoB,CAAC,uBAAuB,CAAC,EAAE,EAAE,QAAQ,CAAC,CAAC;IAC5E,CAAC;CACJ"}
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
import type { Db } from "./Db.ts";
|
|
2
|
+
import { type FileCreateScope } from "./file-creation-policy.ts";
|
|
2
3
|
export type WorkspaceOpenContext = {
|
|
3
4
|
filesItems: number | null;
|
|
4
5
|
maxCommands: number | null;
|
|
5
6
|
git: boolean | null;
|
|
7
|
+
fileCreateScope: FileCreateScope | null;
|
|
6
8
|
client: string | null;
|
|
7
9
|
execs: Record<string, string> | null;
|
|
8
10
|
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-settings.d.ts","sourceRoot":"","sources":["../../src/core/workspace-settings.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"workspace-settings.d.ts","sourceRoot":"","sources":["../../src/core/workspace-settings.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,SAAS,CAAC;AAClC,OAA2B,EAAE,KAAK,eAAe,EAAE,MAAM,2BAA2B,CAAC;AAErF,MAAM,MAAM,oBAAoB,GAAG;IAC/B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,GAAG,EAAE,OAAO,GAAG,IAAI,CAAC;IACpB,eAAe,EAAE,eAAe,GAAG,IAAI,CAAC;IACxC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,KAAK,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;CACxC,CAAC;AAEF,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAGlC,OAAa,IAAI,CAAC,EAAE,EAAE,EAAE,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,oBAAoB,CAAC,CAY5E;CAEJ"}
|
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
// user legitimately sets at workspace.create, read at turn-0 with precedence over env.
|
|
3
3
|
// filesItems REPLACES the env value; the other knobs compose per their own tags.
|
|
4
4
|
// Storage is a JSON bag on workspaces.settings.
|
|
5
|
+
import FileCreationPolicy from "./file-creation-policy.js";
|
|
5
6
|
export default class WorkspaceSettings {
|
|
6
7
|
// The workspace's open-context bag. Absent/unset fields read as null / []. A malformed
|
|
7
8
|
// bag never reaches here — workspace.create validates before persisting.
|
|
@@ -11,9 +12,12 @@ export default class WorkspaceSettings {
|
|
|
11
12
|
const filesItems = typeof bag.filesItems === "number" ? bag.filesItems : null;
|
|
12
13
|
const maxCommands = typeof bag.maxCommands === "number" ? bag.maxCommands : null;
|
|
13
14
|
const git = typeof bag.git === "boolean" ? bag.git : null;
|
|
15
|
+
const fileCreateScope = bag.fileCreateScope === undefined
|
|
16
|
+
? null
|
|
17
|
+
: FileCreationPolicy.parse(bag.fileCreateScope, "settings.fileCreateScope");
|
|
14
18
|
const client = typeof bag.client === "string" ? bag.client : null;
|
|
15
19
|
const execs = (typeof bag.execs === "object" && bag.execs !== null && !Array.isArray(bag.execs)) ? bag.execs : null;
|
|
16
|
-
return { filesItems, maxCommands, git, client, execs };
|
|
20
|
+
return { filesItems, maxCommands, git, fileCreateScope, client, execs };
|
|
17
21
|
}
|
|
18
22
|
}
|
|
19
23
|
//# sourceMappingURL=workspace-settings.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-settings.js","sourceRoot":"","sources":["../../src/core/workspace-settings.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,uFAAuF;AACvF,iFAAiF;AACjF,gDAAgD;
|
|
1
|
+
{"version":3,"file":"workspace-settings.js","sourceRoot":"","sources":["../../src/core/workspace-settings.ts"],"names":[],"mappings":"AAAA,sGAAsG;AACtG,uFAAuF;AACvF,iFAAiF;AACjF,gDAAgD;AAGhD,OAAO,kBAA4C,MAAM,2BAA2B,CAAC;AAWrF,MAAM,CAAC,OAAO,OAAO,iBAAiB;IAClC,uFAAuF;IACvF,yEAAyE;IACzE,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,EAAM,EAAE,WAAmB;QACzC,MAAM,GAAG,GAAG,MAAM,EAAE,CAAC,sBAAsB,CAAC,GAAG,CAAuB,EAAE,YAAY,EAAE,WAAW,EAAE,CAAC,CAAC;QACrG,MAAM,GAAG,GAAG,GAAG,EAAE,QAAQ,KAAK,SAAS,CAAC,CAAC,CAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAkI,CAAC,CAAC,CAAC,EAAE,CAAC;QAC1M,MAAM,UAAU,GAAG,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC;QAC9E,MAAM,WAAW,GAAG,OAAO,GAAG,CAAC,WAAW,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,IAAI,CAAC;QACjF,MAAM,GAAG,GAAG,OAAO,GAAG,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC;QAC1D,MAAM,eAAe,GAAG,GAAG,CAAC,eAAe,KAAK,SAAS;YACrD,CAAC,CAAC,IAAI;YACN,CAAC,CAAC,kBAAkB,CAAC,KAAK,CAAC,GAAG,CAAC,eAAe,EAAE,0BAA0B,CAAC,CAAC;QAChF,MAAM,MAAM,GAAG,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC;QAClE,MAAM,KAAK,GAAG,CAAC,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ,IAAI,GAAG,CAAC,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAE,GAAG,CAAC,KAAgC,CAAC,CAAC,CAAC,IAAI,CAAC;QAChJ,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,GAAG,EAAE,eAAe,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC;IAC5E,CAAC;CAEJ"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Digest.d.ts","sourceRoot":"","sources":["../../src/digest/Digest.ts"],"names":[],"mappings":";AAmDA,OAAO,EAKH,KAAK,QAAQ,EAKhB,MAAM,0BAA0B,CAAC;
|
|
1
|
+
{"version":3,"file":"Digest.d.ts","sourceRoot":"","sources":["../../src/digest/Digest.ts"],"names":[],"mappings":";AAmDA,OAAO,EAKH,KAAK,QAAQ,EAKhB,MAAM,0BAA0B,CAAC;AA6OlC,UAAU,aAAa;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AA2BD,MAAM,CAAC,OAAO,OAAO,MAAM;;IA0hBvB,MAAM,CAAC,aAAa,IAAI,MAAM,CAM7B;IAID,OAAa,OAAO,CAAC,IAAI,EAAE,aAAa,GAAG;QAAE,MAAM,CAAC,EAAE,WAAW,CAAC;QAAC,QAAQ,CAAC,EAAE,QAAQ,CAAA;KAAE,GAAG,OAAO,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAA;KAAE,CAAC,CAsPxJ;IAED,MAAM,CAAC,GAAG,CAAC,IAAI,EAAE,aAAa,GAAG,IAAI,CAIpC;CA2MJ"}
|
package/dist/digest/Digest.js
CHANGED
|
@@ -323,7 +323,7 @@ export default class Digest {
|
|
|
323
323
|
if (m.embeddings.dispositions.length > 0) {
|
|
324
324
|
lines.push("Semantic dispositions:");
|
|
325
325
|
for (const row of m.embeddings.dispositions) {
|
|
326
|
-
const address = `${EntryManifest.toPath(row.scheme, row.pathname)}#${row.channel}`;
|
|
326
|
+
const address = `${EntryManifest.toPath(row.scheme, row.authority, row.pathname)}#${row.channel}`;
|
|
327
327
|
lines.push(` ${row.disposition} ${address}${row.reason === null ? "" : ` — ${row.reason}`}`);
|
|
328
328
|
}
|
|
329
329
|
}
|