@plurnk/plurnk-service 3.1.0 → 3.2.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 +22 -17
- package/INSTALL.md +20 -1
- package/SPEC.md +333 -88
- package/dist/build-info.json +1 -1
- package/dist/completions/_plurnk-service +1 -1
- package/dist/completions/plurnk-service.bash +1 -1
- package/dist/completions/plurnk-service.fish +1 -0
- package/dist/content/path-mimetype.d.ts.map +1 -1
- package/dist/content/path-mimetype.js +2 -8
- package/dist/content/path-mimetype.js.map +1 -1
- package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
- package/dist/core/AdmittedTurnExecutor.js +22 -10
- package/dist/core/AdmittedTurnExecutor.js.map +1 -1
- package/dist/{schemes/_derivation-use.d.ts → core/ContentUse.d.ts} +3 -3
- package/dist/core/ContentUse.d.ts.map +1 -0
- package/dist/{schemes/_derivation-use.js → core/ContentUse.js} +8 -7
- package/dist/core/ContentUse.js.map +1 -0
- package/dist/core/DataStatementRunner.d.ts.map +1 -1
- package/dist/core/DataStatementRunner.js +8 -20
- package/dist/core/DataStatementRunner.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 +144 -71
- package/dist/core/Dispatcher.js.map +1 -1
- package/dist/core/EditMutations.js +1 -1
- package/dist/core/EditMutations.js.map +1 -1
- package/dist/core/Engine.d.ts +1 -1
- package/dist/core/Engine.d.ts.map +1 -1
- package/dist/core/Engine.js +3 -3
- package/dist/core/Engine.js.map +1 -1
- package/dist/core/FileAddress.d.ts +12 -0
- package/dist/core/FileAddress.d.ts.map +1 -0
- package/dist/core/FileAddress.js +73 -0
- package/dist/core/FileAddress.js.map +1 -0
- package/dist/core/FilePublication.d.ts +15 -0
- package/dist/core/FilePublication.d.ts.map +1 -0
- package/dist/core/FilePublication.js +143 -0
- package/dist/core/FilePublication.js.map +1 -0
- package/dist/core/FileSnapshot.d.ts +26 -0
- package/dist/core/FileSnapshot.d.ts.map +1 -0
- package/dist/core/FileSnapshot.js +179 -0
- package/dist/core/FileSnapshot.js.map +1 -0
- package/dist/core/KillHandler.d.ts.map +1 -1
- package/dist/core/KillHandler.js +2 -1
- package/dist/core/KillHandler.js.map +1 -1
- package/dist/core/MembershipMaterialization.d.ts.map +1 -1
- package/dist/core/MembershipMaterialization.js +87 -143
- package/dist/core/MembershipMaterialization.js.map +1 -1
- package/dist/core/MutationEffects.d.ts +2 -1
- package/dist/core/MutationEffects.d.ts.map +1 -1
- package/dist/core/MutationEffects.js +14 -1
- package/dist/core/MutationEffects.js.map +1 -1
- package/dist/core/PacketBuilder.sql +8 -0
- package/dist/core/PathGlob.d.ts +6 -0
- package/dist/core/PathGlob.d.ts.map +1 -0
- package/dist/core/PathGlob.js +24 -0
- package/dist/core/PathGlob.js.map +1 -0
- package/dist/core/ProposalLifecycle.d.ts +2 -1
- package/dist/core/ProposalLifecycle.d.ts.map +1 -1
- package/dist/core/ProposalLifecycle.js +45 -33
- package/dist/core/ProposalLifecycle.js.map +1 -1
- package/dist/core/ProposalLifecycle.sql +4 -0
- package/dist/core/ResourceBindings.d.ts.map +1 -1
- package/dist/core/ResourceBindings.js +4 -3
- package/dist/core/ResourceBindings.js.map +1 -1
- package/dist/core/ResourceSelector.d.ts +1 -2
- package/dist/core/ResourceSelector.d.ts.map +1 -1
- package/dist/core/ResourceSelector.js +30 -9
- package/dist/core/ResourceSelector.js.map +1 -1
- package/dist/core/ResourceTransfers.d.ts +1 -1
- package/dist/core/ResourceTransfers.d.ts.map +1 -1
- package/dist/core/ResourceTransfers.js +26 -11
- package/dist/core/ResourceTransfers.js.map +1 -1
- package/dist/core/TurnRunner.d.ts.map +1 -1
- package/dist/core/TurnRunner.js +6 -4
- package/dist/core/TurnRunner.js.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.d.ts +1 -0
- package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
- package/dist/core/caps/SchemeCtxImpl.js +5 -0
- package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
- package/dist/core/git-membership.d.ts +1 -0
- package/dist/core/git-membership.d.ts.map +1 -1
- package/dist/core/git-membership.js +9 -11
- package/dist/core/git-membership.js.map +1 -1
- package/dist/core/glob_match.js +3 -3
- package/dist/core/glob_match.js.map +1 -1
- package/dist/core/mutation-types.d.ts +3 -0
- package/dist/core/mutation-types.d.ts.map +1 -1
- package/dist/core/namespace.d.ts +4 -1
- package/dist/core/namespace.d.ts.map +1 -1
- package/dist/core/namespace.js +14 -3
- package/dist/core/namespace.js.map +1 -1
- package/dist/core/packet-wire.d.ts.map +1 -1
- package/dist/core/packet-wire.js +11 -9
- package/dist/core/packet-wire.js.map +1 -1
- package/dist/core/plurnk-uri.d.ts +3 -2
- package/dist/core/plurnk-uri.d.ts.map +1 -1
- package/dist/core/plurnk-uri.js +23 -11
- 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/sqlite-synchronous.d.ts +2 -0
- package/dist/core/sqlite-synchronous.d.ts.map +1 -0
- package/dist/core/sqlite-synchronous.js +4 -0
- package/dist/core/sqlite-synchronous.js.map +1 -0
- package/dist/evidence/EvidenceReader.d.ts.map +1 -1
- package/dist/evidence/EvidenceReader.js +8 -1
- package/dist/evidence/EvidenceReader.js.map +1 -1
- package/dist/evidence/digest.sql +6 -1
- package/dist/man/plurnk-service.1 +32 -21
- package/dist/schemes/Env.d.ts +1 -1
- package/dist/schemes/Env.d.ts.map +1 -1
- package/dist/schemes/Env.js +2 -2
- package/dist/schemes/Env.js.map +1 -1
- package/dist/schemes/File.d.ts +1 -0
- package/dist/schemes/File.d.ts.map +1 -1
- package/dist/schemes/File.js +233 -268
- package/dist/schemes/File.js.map +1 -1
- package/dist/schemes/Log.d.ts.map +1 -1
- package/dist/schemes/Log.js +64 -7
- package/dist/schemes/Log.js.map +1 -1
- package/dist/schemes/Worker.js +1 -1
- package/dist/schemes/Worker.js.map +1 -1
- package/dist/schemes/_entry-crud.d.ts +2 -0
- package/dist/schemes/_entry-crud.d.ts.map +1 -1
- package/dist/schemes/_entry-crud.js +8 -5
- package/dist/schemes/_entry-crud.js.map +1 -1
- package/dist/schemes/_entry-crud.sql +15 -15
- package/dist/schemes/_entry-find.d.ts +1 -0
- package/dist/schemes/_entry-find.d.ts.map +1 -1
- package/dist/schemes/_entry-find.js +15 -10
- package/dist/schemes/_entry-find.js.map +1 -1
- 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 +7 -5
- package/dist/schemes/_entry-manifest.js.map +1 -1
- package/dist/schemes/_entry-ops.d.ts.map +1 -1
- package/dist/schemes/_entry-ops.js +9 -7
- package/dist/schemes/_entry-ops.js.map +1 -1
- package/dist/schemes/_path-scope.d.ts.map +1 -1
- package/dist/schemes/_path-scope.js +12 -4
- package/dist/schemes/_path-scope.js.map +1 -1
- package/dist/schemes/_search-index.js +3 -3
- package/dist/schemes/_search-index.js.map +1 -1
- package/dist/schemes/exec-env.d.ts.map +1 -1
- package/dist/schemes/exec-env.js +7 -22
- package/dist/schemes/exec-env.js.map +1 -1
- package/dist/server/Daemon.d.ts.map +1 -1
- package/dist/server/Daemon.js +40 -68
- package/dist/server/Daemon.js.map +1 -1
- package/dist/server/DrainSupervisor.d.ts +1 -3
- package/dist/server/DrainSupervisor.d.ts.map +1 -1
- package/dist/server/DrainSupervisor.js +30 -5
- package/dist/server/DrainSupervisor.js.map +1 -1
- package/dist/server/EnvFunctionality.d.ts.map +1 -1
- package/dist/server/EnvFunctionality.js +19 -11
- package/dist/server/EnvFunctionality.js.map +1 -1
- package/dist/server/Functionality.d.ts.map +1 -1
- package/dist/server/Functionality.js +15 -8
- package/dist/server/Functionality.js.map +1 -1
- package/dist/server/FunctionalityManager.d.ts +1 -1
- package/dist/server/FunctionalityManager.d.ts.map +1 -1
- package/dist/server/FunctionalityManager.js +5 -1
- package/dist/server/FunctionalityManager.js.map +1 -1
- package/dist/server/MembersFunctionality.d.ts.map +1 -1
- package/dist/server/MembersFunctionality.js +12 -12
- package/dist/server/MembersFunctionality.js.map +1 -1
- package/dist/server/Retention.d.ts.map +1 -1
- package/dist/server/Retention.js +5 -5
- package/dist/server/Retention.js.map +1 -1
- package/dist/server/Retention.sql +49 -23
- package/dist/server/lifecycle-recovery.sql +4 -1
- package/dist/service.d.ts.map +1 -1
- package/dist/service.js +4 -0
- package/dist/service.js.map +1 -1
- package/docs/copy-move.md +3 -0
- package/docs/env.md +12 -6
- package/docs/members.md +16 -1
- package/migrations/023_file_revisions.sql +54 -0
- package/migrations/024_proposal_decisions.sql +34 -0
- package/migrations/025_response_retention.sql +30 -0
- package/package.json +33 -31
- package/dist/schemes/_derivation-use.d.ts.map +0 -1
- package/dist/schemes/_derivation-use.js.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/EnvFunctionality.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACR,6BAA6B,EAC7B,wBAAwB,EACxB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAC3F,OAAO,KAAK,EAAE,sBAAsB,EAAE,0BAA0B,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAC/G,OAAO,EAAmB,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AAElF,OAAoB,EAAE,KAAK,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAI5E,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAIxC,eAAO,MAAM,SAAS,2BAA2B,CAAC;
|
|
1
|
+
{"version":3,"file":"EnvFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/EnvFunctionality.ts"],"names":[],"mappings":"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"}
|
|
@@ -11,6 +11,11 @@ const isRecord = (value) => typeof value === "object" && value !== null && !Arra
|
|
|
11
11
|
// A refusal is the verb's own operation result, the shape both projections convert; anything else
|
|
12
12
|
// thrown here would surface as a fault of the action or the manager rather than as the outcome.
|
|
13
13
|
const actionError = (code, status, detail, extensions = {}) => new OperationFailureError(Results.failure("env:functionality", code, status, detail, {}, { family: ENV_FAMILY, retryable: false, ...extensions }));
|
|
14
|
+
// {§exec-env-scoped} The family and invocation modifier share the same reservation.
|
|
15
|
+
const reservedNameError = (alias) => actionError("name-reserved", 400, `'${alias}' is reserved in env entries and invocation overrides.`, {
|
|
16
|
+
alias,
|
|
17
|
+
recovery: "READ worker:///_plurnk/plurnk/env.md for supported configuration paths.",
|
|
18
|
+
});
|
|
14
19
|
// POSIX-ish, and deliberately narrow: a name the shell can actually export. This is the family's
|
|
15
20
|
// alias grammar ({§functionality-adapter}) — the alias IS the variable name, and case is semantic.
|
|
16
21
|
const NAME = /^[A-Za-z_][A-Za-z0-9_]*$/u;
|
|
@@ -43,7 +48,8 @@ export default class EnvFunctionality {
|
|
|
43
48
|
+ "comment as the summary; plurnk's own names never appear. `query` matches a name or the "
|
|
44
49
|
+ "comment that documents it; `source` selects one owning package; an empty body is the "
|
|
45
50
|
+ "whole catalog, which is short — start there. It is how you learn which names have a "
|
|
46
|
-
+ "consumer, and how you learn the name of a value only the operator can supply."
|
|
51
|
+
+ "consumer, and how you learn the name of a value only the operator can supply. "
|
|
52
|
+
+ "READ a dotenv file; set its variables with `add` or `EDIT (env:///NAME)`.",
|
|
47
53
|
};
|
|
48
54
|
#defaults;
|
|
49
55
|
constructor(defaults, scheme) {
|
|
@@ -70,7 +76,14 @@ export default class EnvFunctionality {
|
|
|
70
76
|
// configuration and provider credential names are the operator's, refused by `add`, and would
|
|
71
77
|
// only bury the few names that matter under the operator's knobs.
|
|
72
78
|
const reserved = ExecEnv.ownSecretTest();
|
|
73
|
-
|
|
79
|
+
const files = await this.#defaults();
|
|
80
|
+
if (query.source !== undefined && !files.some(({ owner }) => owner === query.source)) {
|
|
81
|
+
throw actionError("source-unknown", 400, `'${query.source}' is not a package in the configuration catalog.`, {
|
|
82
|
+
source: query.source,
|
|
83
|
+
recovery: "Omit source to list the catalog. READ files; set variables with add or EDIT (env:///NAME).",
|
|
84
|
+
});
|
|
85
|
+
}
|
|
86
|
+
return EnvCatalog.candidates(files, {
|
|
74
87
|
...(query.query === undefined ? {} : { query: query.query }),
|
|
75
88
|
...(query.source === undefined ? {} : { source: query.source }),
|
|
76
89
|
}).filter(({ alias }) => !reserved(alias));
|
|
@@ -81,12 +94,8 @@ export default class EnvFunctionality {
|
|
|
81
94
|
if (!NAME.test(alias)) {
|
|
82
95
|
throw actionError("name-invalid", 400, `'${alias}' is not a name a shell can export.`, { retryable: false });
|
|
83
96
|
}
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
// learn why. {§exec-env-scoped} strips these unconditionally at every layer.
|
|
87
|
-
if (ExecEnv.ownSecretTest()(alias)) {
|
|
88
|
-
throw actionError("name-reserved", 400, `'${alias}' is plurnk's own: PLURNK_* configuration and provider credential names never reach a subprocess.`, { retryable: false });
|
|
89
|
-
}
|
|
97
|
+
if (ExecEnv.ownSecretTest()(alias))
|
|
98
|
+
throw reservedNameError(alias);
|
|
90
99
|
const definition = record.definition;
|
|
91
100
|
if (typeof definition?.value !== "string") {
|
|
92
101
|
throw actionError("value-invalid", 400, `'${alias}' needs a string value.`, { retryable: false });
|
|
@@ -190,9 +199,8 @@ export default class EnvFunctionality {
|
|
|
190
199
|
for (const [name, value] of Object.entries(raw)) {
|
|
191
200
|
if (!NAME.test(name))
|
|
192
201
|
throw actionError("name-invalid", 400, `'${name}' is not a name a shell can export.`, { alias: name, retryable: false });
|
|
193
|
-
if (reserved(name))
|
|
194
|
-
throw
|
|
195
|
-
}
|
|
202
|
+
if (reserved(name))
|
|
203
|
+
throw reservedNameError(name);
|
|
196
204
|
if (typeof value !== "string")
|
|
197
205
|
throw actionError("value-invalid", 400, `'${name}' needs a string value.`, { alias: name, retryable: false });
|
|
198
206
|
out[name] = value;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EnvFunctionality.js","sourceRoot":"","sources":["../../src/server/EnvFunctionality.ts"],"names":[],"mappings":"AAWA,OAAO,EAAE,eAAe,EAA2B,MAAM,wBAAwB,CAAC;AAClF,OAAO,UAAU,MAAM,wBAAwB,CAAC;AAChD,OAAO,WAAqC,MAAM,yBAAyB,CAAC;AAC5E,OAAO,OAAO,EAAE,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,OAAO,MAAM,wBAAwB,CAAC;AAC7C,OAAO,KAAK,MAAM,aAAa,CAAC;AAGhC,MAAM,UAAU,GAAG,KAAK,CAAC;AACzB,sFAAsF;AACtF,MAAM,CAAC,MAAM,SAAS,GAAG,wBAAwB,CAAC;AAElD,MAAM,QAAQ,GAAG,CAAC,KAAc,EAAoC,EAAE,CAClE,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;AAEzE,kGAAkG;AAClG,gGAAgG;AAChG,MAAM,WAAW,GAAG,CAAC,IAAY,EAAE,MAAc,EAAE,MAAc,EAAE,UAAU,GAAsC,EAAE,EAAyB,EAAE,CAC5I,IAAI,qBAAqB,CACrB,OAAO,CAAC,OAAO,CAAC,mBAAmB,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,UAAU,EAAE,SAAS,EAAE,KAAK,EAAE,GAAG,UAAU,EAAE,CAAC,CAC1H,CAAC;AAEN,iGAAiG;AACjG,mGAAmG;AACnG,MAAM,IAAI,GAAG,2BAA2B,CAAC;AAEzC,8FAA8F;AAC9F,MAAM,UAAU,GAAe;IAC3B,IAAI,EAAE,QAAQ;IACd,oBAAoB,EAAE,KAAK;IAC3B,QAAQ,EAAE,CAAC,OAAO,CAAC;IACnB,UAAU,EAAE;QACR,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,WAAW,EAAE,+DAA+D,EAAE;KAC1G;CACqB,CAAC;AAE3B,MAAM,CAAC,OAAO,OAAO,gBAAgB;IACjC,gFAAgF;IACvE,MAAM,CAAiC;IACvC,MAAM,GAAG,UAAU,CAAC;IACpB,cAAc,GAAG,SAAS,CAAC;IAC3B,OAAO,GAAG,qDAAqD,CAAC;IAChE,gBAAgB,GAAG,UAAU,CAAC;IAC9B,MAAM,GAAG,CAAC,QAAQ,EAAE,WAAW,CAAU,CAAC;IAC1C,YAAY,GAAG,IAAI,CAAC;IACpB,OAAO,GAAG,KAAK,CAAC,WAAW,CAAC;IAC5B,OAAO,GAAG,EAAE,KAAK,EAAE,kBAAkB,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,aAAa,EAAE,EAAE,CAAC;IACvF,uGAAuG;IAC9F,SAAS,GAA2B;QACzC,MAAM,EAAE,CAAC,OAAO,EAAE,QAAQ,CAAC;QAC3B,aAAa,EAAE,IAAI;QACnB,OAAO,EAAE,mFAAmF;cACtF,0FAA0F;cAC1F,yFAAyF;cACzF,uFAAuF;cACvF,sFAAsF;cACtF
|
|
1
|
+
{"version":3,"file":"EnvFunctionality.js","sourceRoot":"","sources":["../../src/server/EnvFunctionality.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Functionality.d.ts","sourceRoot":"","sources":["../../src/server/Functionality.ts"],"names":[],"mappings":"AAYA,OAAO,KAAK,EAKR,gCAAgC,EAGhC,MAAM,EACT,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"Functionality.d.ts","sourceRoot":"","sources":["../../src/server/Functionality.ts"],"names":[],"mappings":"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"}
|
|
@@ -108,6 +108,7 @@ class Functionality {
|
|
|
108
108
|
list: scopedInput(EMPTY_INPUT),
|
|
109
109
|
...(discovery === undefined ? {} : { discover: scopedInput(discoverInput(discovery)) }),
|
|
110
110
|
add: addInput,
|
|
111
|
+
replace: { ...addInput, required: ["alias", "definition"] },
|
|
111
112
|
enable: scopedInput(ALIAS_INPUT),
|
|
112
113
|
disable: scopedInput(ALIAS_INPUT),
|
|
113
114
|
remove: scopedInput(ALIAS_INPUT),
|
|
@@ -491,17 +492,20 @@ class Functionality {
|
|
|
491
492
|
let alias;
|
|
492
493
|
let status = 200;
|
|
493
494
|
let removed = false;
|
|
495
|
+
let admission;
|
|
494
496
|
switch (verb) {
|
|
495
|
-
case "add":
|
|
497
|
+
case "add":
|
|
498
|
+
case "replace": {
|
|
496
499
|
const admitted = await adapter.admit(input, identity, caller, options);
|
|
500
|
+
admission = admitted;
|
|
497
501
|
alias = admitted.alias;
|
|
498
502
|
if (!aliasPattern(adapter).test(alias))
|
|
499
503
|
throw failure(adapter.family, "alias-invalid", 400, `Alias '${alias}' must match ${aliasPattern(adapter)}.`, { alias, retryable: false });
|
|
500
504
|
const current = effective.get(alias);
|
|
501
|
-
if (current?.origin === local && !isDeepStrictEqual(current.definition, admitted.definition)) {
|
|
502
|
-
throw failure(adapter.family, "alias-exists", 409, `'${alias}' already has a different ${local} definition.`, { alias, recovery: "Use the
|
|
505
|
+
if (verb === "add" && current?.origin === local && !isDeepStrictEqual(current.definition, admitted.definition)) {
|
|
506
|
+
throw failure(adapter.family, "alias-exists", 409, `'${alias}' already has a different ${local} definition.`, { alias, recovery: "Use replace with the complete definition to change it.", retryable: false });
|
|
503
507
|
}
|
|
504
|
-
definitions[alias] = { origin: local, definition: admitted.definition, enabled: true };
|
|
508
|
+
definitions[alias] = { origin: local, definition: admitted.definition, enabled: verb === "replace" ? current?.enabled ?? true : true };
|
|
505
509
|
status = current?.origin === local ? 200 : 201;
|
|
506
510
|
break;
|
|
507
511
|
}
|
|
@@ -532,7 +536,7 @@ class Functionality {
|
|
|
532
536
|
}
|
|
533
537
|
default: throw new Error(`unreachable verb ${verb}`);
|
|
534
538
|
}
|
|
535
|
-
return { definitions, alias, status, removed };
|
|
539
|
+
return { definitions, alias, status, removed, ...(admission === undefined ? {} : { admission }) };
|
|
536
540
|
}
|
|
537
541
|
#mutationResult(adapter, { alias, status, removed }, effectiveAfter, outcomes) {
|
|
538
542
|
const definition = effectiveAfter.get(alias);
|
|
@@ -558,10 +562,11 @@ class Functionality {
|
|
|
558
562
|
// already-active alias keeps its live attachment.
|
|
559
563
|
const retry = verb === "enable" && family.prepared?.outcomes.get(transition.alias)?.state !== "active";
|
|
560
564
|
const publication = await this.#publish(adapter, identity, nextState, {
|
|
561
|
-
failure: caller === "action" ? "reject" : "publish-unavailable",
|
|
565
|
+
failure: caller === "action" || verb === "replace" ? "reject" : "publish-unavailable",
|
|
562
566
|
configurationFailure: "reject",
|
|
563
567
|
retain: () => this.#host.retainWorkspace(identity.workspaceId),
|
|
564
568
|
forceAlias: retry ? transition.alias : null,
|
|
569
|
+
admission: transition.admission,
|
|
565
570
|
});
|
|
566
571
|
const effectiveAfter = await this.#effective(adapter, identity, nextState);
|
|
567
572
|
return this.#mutationResult(adapter, transition, effectiveAfter, publication.outcomes);
|
|
@@ -583,7 +588,7 @@ class Functionality {
|
|
|
583
588
|
const transition = await this.#transition(adapter, verb, input, identity, caller, state, effective, options);
|
|
584
589
|
const nextState = { version: STATE_VERSION, definitions: transition.definitions };
|
|
585
590
|
const effectiveAfter = await this.#effective(adapter, identity, nextState);
|
|
586
|
-
const prepared = await this.#prepareForWorker(adapter, identity, effectiveAfter, caller === "action" ? "reject" : "publish-unavailable");
|
|
591
|
+
const prepared = await this.#prepareForWorker(adapter, identity, effectiveAfter, caller === "action" || verb === "replace" ? "reject" : "publish-unavailable", transition.admission);
|
|
587
592
|
try {
|
|
588
593
|
await this.#host.replaceWorkerModuleState(workerId, adapter.namespaceOwner, _a.#persisted(nextState));
|
|
589
594
|
}
|
|
@@ -596,10 +601,11 @@ class Functionality {
|
|
|
596
601
|
// A worker-scoped family's preparation yields outcomes only. It holds no residency — no runtimes,
|
|
597
602
|
// documents or snapshot ({§module-workspace-residency}) — because its definitions are read at the
|
|
598
603
|
// spawn that uses them rather than leased and cooled; the coordinator enforces that here.
|
|
599
|
-
async #prepareForWorker(adapter, identity, effective, failureMode) {
|
|
604
|
+
async #prepareForWorker(adapter, identity, effective, failureMode, admission) {
|
|
600
605
|
const enabled = _a.#enabled(effective);
|
|
601
606
|
const prepared = await adapter.prepare({
|
|
602
607
|
workspaceId: identity.workspaceId, enabled, previous: null, failure: failureMode,
|
|
608
|
+
...(admission === undefined ? {} : { admission }),
|
|
603
609
|
progress: () => undefined,
|
|
604
610
|
retain: () => this.#host.retainWorkspace(identity.workspaceId),
|
|
605
611
|
});
|
|
@@ -689,6 +695,7 @@ class Functionality {
|
|
|
689
695
|
enabled,
|
|
690
696
|
previous: previous?.snapshot ?? null,
|
|
691
697
|
failure: options.failure,
|
|
698
|
+
...(options.admission === undefined ? {} : { admission: options.admission }),
|
|
692
699
|
progress: (alias) => {
|
|
693
700
|
if (!enabled.has(alias))
|
|
694
701
|
throw new Error(`${adapter.family} reported preparation of unknown alias '${alias}'.`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Functionality.js","sourceRoot":"","sources":["../../src/server/Functionality.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Functionality.js","sourceRoot":"","sources":["../../src/server/Functionality.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,7 +3,7 @@ import type { ChannelDecl, Effect, ExecArgs, ExecResult, RuntimeAvailability, Ru
|
|
|
3
3
|
import type { FunctionalityDiscovery } from "@plurnk/plurnk-modules";
|
|
4
4
|
import { type JsonSchema } from "@plurnk/plurnk-contracts";
|
|
5
5
|
import type Functionality from "./Functionality.ts";
|
|
6
|
-
export declare const FUNCTIONALITY_VERBS: readonly ["list", "discover", "add", "enable", "disable", "remove"];
|
|
6
|
+
export declare const FUNCTIONALITY_VERBS: readonly ["list", "discover", "add", "replace", "enable", "disable", "remove"];
|
|
7
7
|
export type FunctionalityVerb = (typeof FUNCTIONALITY_VERBS)[number];
|
|
8
8
|
export type FunctionalityTeaching = {
|
|
9
9
|
readonly traits?: readonly string[];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalityManager.d.ts","sourceRoot":"","sources":["../../src/server/FunctionalityManager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC7I,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKrE,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AAGpD,eAAO,MAAM,mBAAmB,
|
|
1
|
+
{"version":3,"file":"FunctionalityManager.d.ts","sourceRoot":"","sources":["../../src/server/FunctionalityManager.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAC;AAC7I,OAAO,KAAK,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,EAAY,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAKrE,OAAO,KAAK,aAAa,MAAM,oBAAoB,CAAC;AAGpD,eAAO,MAAM,mBAAmB,gFAAgG,CAAC;AACjI,MAAM,MAAM,iBAAiB,GAAG,CAAC,OAAO,mBAAmB,CAAC,CAAC,MAAM,CAAC,CAAC;AAmCrE,MAAM,MAAM,qBAAqB,GAAG;IAChC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,QAAQ,CAAC,YAAY,EAAE,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC,CAAC;IAChF,QAAQ,CAAC,OAAO,CAAC,EAAE;QAAE,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC3E,QAAQ,CAAC,SAAS,CAAC,EAAE,sBAAsB,CAAC;CAC/C,CAAC;AAKF,eAAO,MAAM,wBAAwB,WAAY,MAAM,WAAW,MAAM,WAAW,MAAM,KAAG,WAU1F,CAAC;AAEH,MAAM,CAAC,OAAO,OAAO,oBAAqB,SAAQ,YAAY;;IAM1D,YAAY,IAAI,EAAE;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,WAAW,EAAE,aAAa,CAAA;KAAE,GAAG,qBAAqB,EAM/H;IAKD,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,oBAAoB,CAIhD;IAED,IAAI,QAAQ,IAAI,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC,CAEpD;IAED,IAAa,MAAM,IAAI,aAAa,CAAC,MAAM,CAAC,GAAG,SAAS,CAEvD;IAEc,KAAK,IAAI,OAAO,CAAC,mBAAmB,CAAC,CAEnD;IAEQ,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAI7C;IAUD,YAAY,IAAI,mBAAmB,CAiBlC;IAgBK,GAAG,CAAC,IAAI,EAAE,QAAQ,GAAG,OAAO,CAAC,UAAU,CAAC,CAwC7C;CACJ"}
|
|
@@ -11,7 +11,7 @@ import ErrorDetail from "../core/ErrorDetail.js";
|
|
|
11
11
|
import Results, { OperationFailureError } from "../core/results.js";
|
|
12
12
|
import EnvFunctionality from "./EnvFunctionality.js";
|
|
13
13
|
const CHANNEL = "results";
|
|
14
|
-
export const FUNCTIONALITY_VERBS = Object.freeze(["list", "discover", "add", "enable", "disable", "remove"]);
|
|
14
|
+
export const FUNCTIONALITY_VERBS = Object.freeze(["list", "discover", "add", "replace", "enable", "disable", "remove"]);
|
|
15
15
|
const READ_VERBS = new Set(["list", "discover"]);
|
|
16
16
|
const VERB_TEACHING = Object.freeze({
|
|
17
17
|
list: {
|
|
@@ -26,6 +26,10 @@ const VERB_TEACHING = Object.freeze({
|
|
|
26
26
|
summary: "Validate one exact definition, persist it at the selected scope, prepare it, and enable it atomically.",
|
|
27
27
|
details: "A host effect: it proposes and runs only on acceptance. The definition must conform to the family definition schema.",
|
|
28
28
|
},
|
|
29
|
+
replace: {
|
|
30
|
+
summary: "Assign a complete definition to a named alias, retaining its enabledness.",
|
|
31
|
+
details: "A host effect. A new alias is enabled. Rejection preserves the preceding definition and attachment; disabled definitions are saved without preparation.",
|
|
32
|
+
},
|
|
29
33
|
enable: {
|
|
30
34
|
summary: "Prepare and publish one already-available definition.",
|
|
31
35
|
details: "A host effect. Re-enabling an unavailable definition retries its preparation.",
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"FunctionalityManager.js","sourceRoot":"","sources":["../../src/server/FunctionalityManager.ts"],"names":[],"mappings":"AAAA,2EAA2E;AAC3E,4EAA4E;AAC5E,kFAAkF;AAClF,+EAA+E;AAC/E,8EAA8E;AAC9E,kDAAkD;AAClD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AAGpD,OAAO,EAAE,QAAQ,EAAmB,MAAM,0BAA0B,CAAC;AACrE,OAAO,EAAE,YAAY,EAAE,MAAM,uBAAuB,CAAC;AACrD,OAAO,WAAW,MAAM,wBAAwB,CAAC;AACjD,OAAO,OAAO,EAAE,EAAE,qBAAqB,EAAE,MAAM,oBAAoB,CAAC;AACpE,OAAO,gBAAgB,MAAM,uBAAuB,CAAC;AAGrD,MAAM,OAAO,GAAG,SAAS,CAAC;AAC1B,MAAM,CAAC,MAAM,mBAAmB,GAAG,MAAM,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,UAAU,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,QAAQ,CAAU,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"FunctionalityManager.js","sourceRoot":"","sources":["../../src/server/FunctionalityManager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MembersFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"AASA,OAAO,
|
|
1
|
+
{"version":3,"file":"MembersFunctionality.d.ts","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"AASA,OAAO,EAAyB,KAAK,sBAAsB,EAAE,KAAK,0BAA0B,EAAE,KAAK,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAChJ,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAExC,OAAO,KAAK,MAAM,MAAM,mBAAmB,CAAC;AAC5C,OAA2B,EAAE,KAAK,eAAe,EAAE,MAAM,iCAAiC,CAAC;AAM3F,OAAO,KAAK,EACR,mBAAmB,EACnB,6BAA6B,EAE7B,wBAAwB,EACxB,qBAAqB,EACrB,8BAA8B,EAC9B,2BAA2B,EAC9B,MAAM,0BAA0B,CAAC;AAClC,OAAO,KAAK,EAAE,oBAAoB,EAAE,sBAAsB,EAAE,MAAM,wBAAwB,CAAC;AAgE3F,eAAO,MAAM,OAAO,SAAU,MAAM,KAAG,MAItC,CAAC;AAGF,eAAO,MAAM,cAAc,aAAa,MAAM,CAAC,UAAU,KAAiB,8BAA8B,EAavG,CAAC;AAIF,eAAO,MAAM,UAAU,aAAa,MAAM,CAAC,UAAU,KAAiB,eACX,CAAC;AAmE5D,MAAM,CAAC,OAAO,OAAO,oBAAqB,YAAW,oBAAoB;;IACrE,QAAQ,CAAC,MAAM,aAAkB;IACjC,QAAQ,CAAC,cAAc,iCAAiB;IACxC,QAAQ,CAAC,OAAO,4BAA4B;IAC5C,QAAQ,CAAC,gBAAgB,aAAc;IACvC,QAAQ,CAAC,OAAO;QAAK,KAAK;QAAU,UAAU;YAAI,IAAI;;MAAgB;IACtE,QAAQ,CAAC,OAAO,SAAqB;IACrC,QAAQ,CAAC,SAAS,EAAE,sBAAsB,CAGxC;IAKF,YAAY,EAAE,EAAE,EAAE,MAAM,EAAE,OAAqB,EAAE,EAAE;QAAE,EAAE,EAAE,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC,UAAU,CAAA;KAAE,EAI/G;IAEK,SAAS,IAAI,OAAO,CAAC,SAAS,8BAA8B,EAAE,CAAC,CAEpE;IAIK,QAAQ,CAAC,KAAK,EAAE,0BAA0B,EAAE,QAAQ,EAAE,2BAA2B,GAAG,OAAO,CAAC,SAAS,sBAAsB,EAAE,CAAC,CAenI;IA6CK,KAAK,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,2BAA2B,EAAE,MAAM,GAAE,mBAA8B,GAAG,OAAO,CAAC,6BAA6B,CAAC,CAoCjJ;IAMK,OAAO,CAAC,WAAW,EAAE,wBAAwB,GAAG,OAAO,CAAC,qBAAqB,CAAC,CAkBnF;IAEK,QAAQ,IAAI,OAAO,CAAC,IAAI,CAAC,CAE9B;CA2BJ"}
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
// {§members-functionality} — file membership as one workspace Functionality family. The model, the
|
|
2
|
-
// client, and the operator learn one surface (
|
|
2
|
+
// client, and the operator learn one surface ({§functionality-coordinator})
|
|
3
3
|
// for what the model may see, exactly as they do for skills and MCP servers. A definition is one
|
|
4
|
-
//
|
|
4
|
+
// shell-path glob and `!glob` excludes; definitions are workspace desired state and the
|
|
5
5
|
// membership overlay is their projection ({§members-projection}) — the one truth every worker sees
|
|
6
6
|
// ({§membership-baseline}). A model's `add` is admitted against the service ceiling
|
|
7
7
|
// `PLURNK_SERVICE_MEMBERS_MODEL_SCOPE` (none < root < namespace) narrowed by the workspace.
|
|
8
8
|
import { stat } from "node:fs/promises";
|
|
9
|
-
import {
|
|
10
|
-
import { Validator } from "@plurnk/plurnk-contracts";
|
|
9
|
+
import { resolve } from "node:path";
|
|
10
|
+
import { PathSyntax, Validator } from "@plurnk/plurnk-contracts";
|
|
11
11
|
import { ConfigurationError, Knob, ResourceEnvironment } from "@plurnk/plurnk-meta";
|
|
12
12
|
import FileCreationPolicy from "../core/file-creation-policy.js";
|
|
13
13
|
import GitMembership from "../core/git-membership.js";
|
|
14
14
|
import Results, { OperationFailureError } from "../core/results.js";
|
|
15
15
|
import WorkspaceSettings from "../core/workspace-settings.js";
|
|
16
|
+
import PathGlob from "../core/PathGlob.js";
|
|
16
17
|
import Paths from "../Paths.js";
|
|
17
18
|
const MEMBERS_FAMILY = "members";
|
|
18
19
|
const MEMBERS_OWNER = "@plurnk/plurnk-core/members";
|
|
19
20
|
const PREFIX = "PLURNK_MEMBERS_";
|
|
20
21
|
const SCOPE_KEY = "PLURNK_SERVICE_MEMBERS_MODEL_SCOPE";
|
|
21
22
|
const ALIAS = /^[a-z][a-z0-9-]*$/u;
|
|
22
|
-
const PATTERN_CHARACTERS = /[*?[\]{}]/u;
|
|
23
23
|
const sampleSize = () => Knob.integer("PLURNK_SERVICE_MEMBERS_SAMPLE", 0);
|
|
24
24
|
// The exact definition one `add` accepts. Provenance is the coordinator's truth, never the
|
|
25
25
|
// caller's claim: `admit` overwrites whatever arrived in the definition.
|
|
@@ -31,7 +31,7 @@ const DEFINITION = Object.freeze({
|
|
|
31
31
|
glob: {
|
|
32
32
|
type: "string",
|
|
33
33
|
minLength: 1,
|
|
34
|
-
description: "A
|
|
34
|
+
description: "A shell-path glob relative to the project root (`docs/**`, `*.md`, `../shared/*.json`). A leading `!` excludes matching members; an exclusion wins over every inclusion.",
|
|
35
35
|
},
|
|
36
36
|
provenance: {
|
|
37
37
|
type: "object",
|
|
@@ -87,12 +87,12 @@ const resolutionOf = (definition, overlay) => {
|
|
|
87
87
|
if (overlay === null)
|
|
88
88
|
return { effect, pattern, matched: 0, files: [], ignored: 0 };
|
|
89
89
|
if (effect === "exclude") {
|
|
90
|
-
const files = overlay.excluded.filter((path) =>
|
|
90
|
+
const files = overlay.excluded.filter((path) => PathGlob.matches(path, pattern));
|
|
91
91
|
return { effect, pattern, matched: files.length, files: files.slice(0, sampleSize()), ignored: 0 };
|
|
92
92
|
}
|
|
93
93
|
const members = new Set(overlay.members);
|
|
94
94
|
const files = (overlay.scans.get(pattern) ?? []).filter((path) => members.has(path));
|
|
95
|
-
const ignored = overlay.masked.filter((path) =>
|
|
95
|
+
const ignored = overlay.masked.filter((path) => PathGlob.matches(path, pattern)).length;
|
|
96
96
|
return { effect, pattern, matched: files.length, files: files.slice(0, sampleSize()), ignored };
|
|
97
97
|
};
|
|
98
98
|
// {§members-projection} — each enabled definition is one generated document under
|
|
@@ -168,7 +168,7 @@ export default class MembersFunctionality {
|
|
|
168
168
|
if (overlay === null) {
|
|
169
169
|
throw refuse("headless", 409, "The workspace has no project root, so there are no file members.", { recovery: "Open the workspace on a project root." });
|
|
170
170
|
}
|
|
171
|
-
return [isExclusion(glob) ||
|
|
171
|
+
return [isExclusion(glob) || PathSyntax.hasGlob(glob)
|
|
172
172
|
? await this.#preview(glob, overlay, identity.workspaceId)
|
|
173
173
|
: await this.#verdict(glob, overlay, identity.workspaceId)];
|
|
174
174
|
}
|
|
@@ -176,7 +176,7 @@ export default class MembersFunctionality {
|
|
|
176
176
|
const pattern = patternOf(glob);
|
|
177
177
|
const candidate = { alias: aliasOf(glob), definition: { glob }, provenance: { kind: "preview", source: glob } };
|
|
178
178
|
if (isExclusion(glob)) {
|
|
179
|
-
const excluded = overlay.members.filter((path) =>
|
|
179
|
+
const excluded = overlay.members.filter((path) => PathGlob.matches(path, pattern));
|
|
180
180
|
return { ...candidate, summary: `would exclude ${count(excluded.length, "member")}${sample(excluded)}` };
|
|
181
181
|
}
|
|
182
182
|
const matched = await GitMembership.scanPattern(overlay.root, pattern, undefined);
|
|
@@ -200,7 +200,7 @@ export default class MembersFunctionality {
|
|
|
200
200
|
: definition !== undefined ? `included by \`${definition}\`` : "a creation record: plurnk wrote it";
|
|
201
201
|
return { ...candidate, provenance: { kind: "member", source: key }, summary: `member — ${via}` };
|
|
202
202
|
}
|
|
203
|
-
const exclusion = overlay.excludeGlobs.find((pattern) =>
|
|
203
|
+
const exclusion = overlay.excludeGlobs.find((pattern) => PathGlob.matches(key, pattern));
|
|
204
204
|
if (exclusion !== undefined) {
|
|
205
205
|
return { ...candidate, provenance: { kind: "excluded", source: key }, summary: `not a member — excluded by \`!${exclusion}\`` };
|
|
206
206
|
}
|
|
@@ -217,7 +217,7 @@ export default class MembersFunctionality {
|
|
|
217
217
|
const { alias, definition } = input;
|
|
218
218
|
const validation = Validator.validateJsonSchemaInstance(DEFINITION, definition);
|
|
219
219
|
if (!validation.valid) {
|
|
220
|
-
throw refuse("definition-invalid", 400, "A members definition is { glob }: a
|
|
220
|
+
throw refuse("definition-invalid", 400, "A members definition is { glob }: a shell-path pattern, `!glob` to exclude.", {
|
|
221
221
|
errors: validation.errors,
|
|
222
222
|
recovery: "Supply { \"alias\": \"<name>\", \"definition\": { \"glob\": \"<pattern>\" } }.",
|
|
223
223
|
});
|