@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.
Files changed (184) hide show
  1. package/.env.defaults +22 -17
  2. package/INSTALL.md +20 -1
  3. package/SPEC.md +333 -88
  4. package/dist/build-info.json +1 -1
  5. package/dist/completions/_plurnk-service +1 -1
  6. package/dist/completions/plurnk-service.bash +1 -1
  7. package/dist/completions/plurnk-service.fish +1 -0
  8. package/dist/content/path-mimetype.d.ts.map +1 -1
  9. package/dist/content/path-mimetype.js +2 -8
  10. package/dist/content/path-mimetype.js.map +1 -1
  11. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  12. package/dist/core/AdmittedTurnExecutor.js +22 -10
  13. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  14. package/dist/{schemes/_derivation-use.d.ts → core/ContentUse.d.ts} +3 -3
  15. package/dist/core/ContentUse.d.ts.map +1 -0
  16. package/dist/{schemes/_derivation-use.js → core/ContentUse.js} +8 -7
  17. package/dist/core/ContentUse.js.map +1 -0
  18. package/dist/core/DataStatementRunner.d.ts.map +1 -1
  19. package/dist/core/DataStatementRunner.js +8 -20
  20. package/dist/core/DataStatementRunner.js.map +1 -1
  21. package/dist/core/Dispatcher.d.ts +9 -1
  22. package/dist/core/Dispatcher.d.ts.map +1 -1
  23. package/dist/core/Dispatcher.js +144 -71
  24. package/dist/core/Dispatcher.js.map +1 -1
  25. package/dist/core/EditMutations.js +1 -1
  26. package/dist/core/EditMutations.js.map +1 -1
  27. package/dist/core/Engine.d.ts +1 -1
  28. package/dist/core/Engine.d.ts.map +1 -1
  29. package/dist/core/Engine.js +3 -3
  30. package/dist/core/Engine.js.map +1 -1
  31. package/dist/core/FileAddress.d.ts +12 -0
  32. package/dist/core/FileAddress.d.ts.map +1 -0
  33. package/dist/core/FileAddress.js +73 -0
  34. package/dist/core/FileAddress.js.map +1 -0
  35. package/dist/core/FilePublication.d.ts +15 -0
  36. package/dist/core/FilePublication.d.ts.map +1 -0
  37. package/dist/core/FilePublication.js +143 -0
  38. package/dist/core/FilePublication.js.map +1 -0
  39. package/dist/core/FileSnapshot.d.ts +26 -0
  40. package/dist/core/FileSnapshot.d.ts.map +1 -0
  41. package/dist/core/FileSnapshot.js +179 -0
  42. package/dist/core/FileSnapshot.js.map +1 -0
  43. package/dist/core/KillHandler.d.ts.map +1 -1
  44. package/dist/core/KillHandler.js +2 -1
  45. package/dist/core/KillHandler.js.map +1 -1
  46. package/dist/core/MembershipMaterialization.d.ts.map +1 -1
  47. package/dist/core/MembershipMaterialization.js +87 -143
  48. package/dist/core/MembershipMaterialization.js.map +1 -1
  49. package/dist/core/MutationEffects.d.ts +2 -1
  50. package/dist/core/MutationEffects.d.ts.map +1 -1
  51. package/dist/core/MutationEffects.js +14 -1
  52. package/dist/core/MutationEffects.js.map +1 -1
  53. package/dist/core/PacketBuilder.sql +8 -0
  54. package/dist/core/PathGlob.d.ts +6 -0
  55. package/dist/core/PathGlob.d.ts.map +1 -0
  56. package/dist/core/PathGlob.js +24 -0
  57. package/dist/core/PathGlob.js.map +1 -0
  58. package/dist/core/ProposalLifecycle.d.ts +2 -1
  59. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  60. package/dist/core/ProposalLifecycle.js +45 -33
  61. package/dist/core/ProposalLifecycle.js.map +1 -1
  62. package/dist/core/ProposalLifecycle.sql +4 -0
  63. package/dist/core/ResourceBindings.d.ts.map +1 -1
  64. package/dist/core/ResourceBindings.js +4 -3
  65. package/dist/core/ResourceBindings.js.map +1 -1
  66. package/dist/core/ResourceSelector.d.ts +1 -2
  67. package/dist/core/ResourceSelector.d.ts.map +1 -1
  68. package/dist/core/ResourceSelector.js +30 -9
  69. package/dist/core/ResourceSelector.js.map +1 -1
  70. package/dist/core/ResourceTransfers.d.ts +1 -1
  71. package/dist/core/ResourceTransfers.d.ts.map +1 -1
  72. package/dist/core/ResourceTransfers.js +26 -11
  73. package/dist/core/ResourceTransfers.js.map +1 -1
  74. package/dist/core/TurnRunner.d.ts.map +1 -1
  75. package/dist/core/TurnRunner.js +6 -4
  76. package/dist/core/TurnRunner.js.map +1 -1
  77. package/dist/core/caps/SchemeCtxImpl.d.ts +1 -0
  78. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  79. package/dist/core/caps/SchemeCtxImpl.js +5 -0
  80. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  81. package/dist/core/git-membership.d.ts +1 -0
  82. package/dist/core/git-membership.d.ts.map +1 -1
  83. package/dist/core/git-membership.js +9 -11
  84. package/dist/core/git-membership.js.map +1 -1
  85. package/dist/core/glob_match.js +3 -3
  86. package/dist/core/glob_match.js.map +1 -1
  87. package/dist/core/mutation-types.d.ts +3 -0
  88. package/dist/core/mutation-types.d.ts.map +1 -1
  89. package/dist/core/namespace.d.ts +4 -1
  90. package/dist/core/namespace.d.ts.map +1 -1
  91. package/dist/core/namespace.js +14 -3
  92. package/dist/core/namespace.js.map +1 -1
  93. package/dist/core/packet-wire.d.ts.map +1 -1
  94. package/dist/core/packet-wire.js +11 -9
  95. package/dist/core/packet-wire.js.map +1 -1
  96. package/dist/core/plurnk-uri.d.ts +3 -2
  97. package/dist/core/plurnk-uri.d.ts.map +1 -1
  98. package/dist/core/plurnk-uri.js +23 -11
  99. package/dist/core/plurnk-uri.js.map +1 -1
  100. package/dist/core/scheme-types.d.ts +1 -0
  101. package/dist/core/scheme-types.d.ts.map +1 -1
  102. package/dist/core/sqlite-synchronous.d.ts +2 -0
  103. package/dist/core/sqlite-synchronous.d.ts.map +1 -0
  104. package/dist/core/sqlite-synchronous.js +4 -0
  105. package/dist/core/sqlite-synchronous.js.map +1 -0
  106. package/dist/evidence/EvidenceReader.d.ts.map +1 -1
  107. package/dist/evidence/EvidenceReader.js +8 -1
  108. package/dist/evidence/EvidenceReader.js.map +1 -1
  109. package/dist/evidence/digest.sql +6 -1
  110. package/dist/man/plurnk-service.1 +32 -21
  111. package/dist/schemes/Env.d.ts +1 -1
  112. package/dist/schemes/Env.d.ts.map +1 -1
  113. package/dist/schemes/Env.js +2 -2
  114. package/dist/schemes/Env.js.map +1 -1
  115. package/dist/schemes/File.d.ts +1 -0
  116. package/dist/schemes/File.d.ts.map +1 -1
  117. package/dist/schemes/File.js +233 -268
  118. package/dist/schemes/File.js.map +1 -1
  119. package/dist/schemes/Log.d.ts.map +1 -1
  120. package/dist/schemes/Log.js +64 -7
  121. package/dist/schemes/Log.js.map +1 -1
  122. package/dist/schemes/Worker.js +1 -1
  123. package/dist/schemes/Worker.js.map +1 -1
  124. package/dist/schemes/_entry-crud.d.ts +2 -0
  125. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  126. package/dist/schemes/_entry-crud.js +8 -5
  127. package/dist/schemes/_entry-crud.js.map +1 -1
  128. package/dist/schemes/_entry-crud.sql +15 -15
  129. package/dist/schemes/_entry-find.d.ts +1 -0
  130. package/dist/schemes/_entry-find.d.ts.map +1 -1
  131. package/dist/schemes/_entry-find.js +15 -10
  132. package/dist/schemes/_entry-find.js.map +1 -1
  133. package/dist/schemes/_entry-manifest.d.ts +2 -2
  134. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  135. package/dist/schemes/_entry-manifest.js +7 -5
  136. package/dist/schemes/_entry-manifest.js.map +1 -1
  137. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  138. package/dist/schemes/_entry-ops.js +9 -7
  139. package/dist/schemes/_entry-ops.js.map +1 -1
  140. package/dist/schemes/_path-scope.d.ts.map +1 -1
  141. package/dist/schemes/_path-scope.js +12 -4
  142. package/dist/schemes/_path-scope.js.map +1 -1
  143. package/dist/schemes/_search-index.js +3 -3
  144. package/dist/schemes/_search-index.js.map +1 -1
  145. package/dist/schemes/exec-env.d.ts.map +1 -1
  146. package/dist/schemes/exec-env.js +7 -22
  147. package/dist/schemes/exec-env.js.map +1 -1
  148. package/dist/server/Daemon.d.ts.map +1 -1
  149. package/dist/server/Daemon.js +40 -68
  150. package/dist/server/Daemon.js.map +1 -1
  151. package/dist/server/DrainSupervisor.d.ts +1 -3
  152. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  153. package/dist/server/DrainSupervisor.js +30 -5
  154. package/dist/server/DrainSupervisor.js.map +1 -1
  155. package/dist/server/EnvFunctionality.d.ts.map +1 -1
  156. package/dist/server/EnvFunctionality.js +19 -11
  157. package/dist/server/EnvFunctionality.js.map +1 -1
  158. package/dist/server/Functionality.d.ts.map +1 -1
  159. package/dist/server/Functionality.js +15 -8
  160. package/dist/server/Functionality.js.map +1 -1
  161. package/dist/server/FunctionalityManager.d.ts +1 -1
  162. package/dist/server/FunctionalityManager.d.ts.map +1 -1
  163. package/dist/server/FunctionalityManager.js +5 -1
  164. package/dist/server/FunctionalityManager.js.map +1 -1
  165. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  166. package/dist/server/MembersFunctionality.js +12 -12
  167. package/dist/server/MembersFunctionality.js.map +1 -1
  168. package/dist/server/Retention.d.ts.map +1 -1
  169. package/dist/server/Retention.js +5 -5
  170. package/dist/server/Retention.js.map +1 -1
  171. package/dist/server/Retention.sql +49 -23
  172. package/dist/server/lifecycle-recovery.sql +4 -1
  173. package/dist/service.d.ts.map +1 -1
  174. package/dist/service.js +4 -0
  175. package/dist/service.js.map +1 -1
  176. package/docs/copy-move.md +3 -0
  177. package/docs/env.md +12 -6
  178. package/docs/members.md +16 -1
  179. package/migrations/023_file_revisions.sql +54 -0
  180. package/migrations/024_proposal_decisions.sql +34 -0
  181. package/migrations/025_response_retention.sql +30 -0
  182. package/package.json +33 -31
  183. package/dist/schemes/_derivation-use.d.ts.map +0 -1
  184. package/dist/schemes/_derivation-use.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"MembersFunctionality.js","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MembersFunctionality.js","sourceRoot":"","sources":["../../src/server/MembersFunctionality.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"Retention.d.ts","sourceRoot":"","sources":["../../src/server/Retention.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAIxC,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,MAAM,CAAC;AAKhD,eAAO,MAAM,eAAe,SAAS,MAAM,CAAC,UAAU,KAAiB,eAWrE,CAAC;AAEH,MAAM,CAAC,OAAO,OAAO,SAAS;;IAK1B,YAAY,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe,EAG1C;IAED,IAAI,MAAM,IAAI,eAAe,CAAyB;IAMhD,cAAc,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAQ/F;IAQK,GAAG,CAAC,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAc1M;IAeD,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAI7C;IAED,IAAI,IAAI,IAAI,CAGX;CACJ"}
1
+ {"version":3,"file":"Retention.d.ts","sourceRoot":"","sources":["../../src/server/Retention.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,eAAe,CAAC;AAIxC,MAAM,WAAW,eAAe;IAC5B,QAAQ,CAAC,iBAAiB,EAAE,MAAM,CAAC;IACnC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACrC,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,kBAAkB,EAAE,OAAO,CAAC;IACrC,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,QAAQ,CAAC,mBAAmB,EAAE,MAAM,CAAC;CACxC;AAED,MAAM,MAAM,UAAU,GAAG,aAAa,GAAG,MAAM,CAAC;AAKhD,eAAO,MAAM,eAAe,SAAS,MAAM,CAAC,UAAU,KAAiB,eAWrE,CAAC;AAEH,MAAM,CAAC,OAAO,OAAO,SAAS;;IAK1B,YAAY,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,eAAe,EAG1C;IAED,IAAI,MAAM,IAAI,eAAe,CAAyB;IAIhD,cAAc,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,WAAW,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC,CAQ/F;IASK,GAAG,CAAC,GAAG,GAAE,MAAmB,GAAG,OAAO,CAAC;QAAE,cAAc,EAAE,MAAM,CAAC;QAAC,gBAAgB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAC;QAAC,oBAAoB,EAAE,MAAM,CAAC;QAAC,iBAAiB,EAAE,MAAM,CAAC;QAAC,cAAc,EAAE,MAAM,CAAA;KAAE,CAAC,CAe1M;IAeD,KAAK,CAAC,OAAO,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,GAAG,IAAI,CAI7C;IAED,IAAI,IAAI,IAAI,CAGX;CACJ"}
@@ -1,5 +1,5 @@
1
1
  import { Knob } from "@plurnk/plurnk-meta";
2
- import DerivationUse from "../schemes/_derivation-use.js";
2
+ import ContentUse from "../core/ContentUse.js";
3
3
  // SQLite's PRAGMA auto_vacuum codes for the modes the daemon manages.
4
4
  const AUTO_VACUUM_CODE = Object.freeze({ none: 0, incremental: 2 });
5
5
  export const retentionPolicy = (env = process.env) => ({
@@ -23,8 +23,6 @@ export default class Retention {
23
23
  this.#policy = policy;
24
24
  }
25
25
  get policy() { return this.#policy; }
26
- // One pass, in dependency order: compositions and response bodies retire first, then the
27
- // items and derivations nothing references. Each statement is a no-op under the default policy.
28
26
  // {§db-space-reclamation} — once per open: a database whose auto-vacuum mode differs from the
29
27
  // policy's is converted (a mode change takes effect through one VACUUM). Runs before any drain.
30
28
  async prepareStorage() {
@@ -45,15 +43,17 @@ export default class Retention {
45
43
  throw new Error("page counts are unavailable");
46
44
  return row;
47
45
  }
46
+ // Release expired compositions and response bodies before collecting unreferenced content.
48
47
  async run(now = Date.now()) {
49
48
  const { retainPacketTurns, retainPacketMs, retainResponseTurns, retainResponseMs, collectPacketItems, collectDerivations, collectContents } = this.#policy;
50
49
  const packets = await this.#db.retention_retire_packets.run({ keep_turns: retainPacketTurns, keep_ms: retainPacketMs, now_ms: now });
51
50
  const responses = await this.#db.retention_retire_responses.run({ keep_turns: retainResponseTurns, keep_ms: retainResponseMs, now_ms: now });
52
51
  const items = await this.#db.retention_collect_packet_items.run({ collect: collectPacketItems ? 1 : 0 });
53
- const collected = await DerivationUse.collect(this.#db, async () => {
52
+ const collected = await ContentUse.collect(this.#db, async () => {
54
53
  const derivations = await this.#db.retention_collect_derivations.run({ collect: collectDerivations ? 1 : 0 });
55
54
  const contents = await this.#db.retention_collect_contents.run({ collect: collectContents ? 1 : 0 });
56
- return { derivations: derivations.changes, contents: contents.changes };
55
+ const native = await this.#db.retention_collect_native_contents.run({ collect: collectContents ? 1 : 0 });
56
+ return { derivations: derivations.changes, contents: contents.changes + native.changes };
57
57
  });
58
58
  const reclaimedPages = await this.#reclaim();
59
59
  // `.run`, not `.all`: `.all` is served by a read-only reader, and a checkpoint there is an I/O error.
@@ -1 +1 @@
1
- {"version":3,"file":"Retention.js","sourceRoot":"","sources":["../../src/server/Retention.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Retention.js","sourceRoot":"","sources":["../../src/server/Retention.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,16 @@
1
1
  -- Retention ({§retention-policy}): the operator's policy over what the database keeps, as set
2
- -- statements run by Retention on the daemon's cadence and at shutdown. Under the defaults nothing
3
- -- that is information leaves; only what no row references.
2
+ -- statements run by Retention on the daemon's cadence and at shutdown. Packet compositions and
3
+ -- payloads expire independently of durable identities, decisions and accounting.
4
+
5
+ -- INIT: inference_payload_retirement
6
+ DROP TRIGGER IF EXISTS inference_payload_retirement;
7
+ CREATE TRIGGER inference_payload_retirement
8
+ AFTER UPDATE OF payloads_retired_at ON inference_calls
9
+ BEGIN
10
+ DELETE FROM model_call_responses WHERE id = NEW.id;
11
+ UPDATE provider_requests SET evidence = NULL
12
+ WHERE inference_call_id = NEW.id AND evidence IS NOT NULL;
13
+ END;
4
14
 
5
15
  -- PREP: retention_retire_packets
6
16
  -- A completed turn older than the policy — beyond the newest $keep_turns packet-bearing turns of
@@ -21,27 +31,25 @@ WHERE ($keep_turns >= 0 OR $keep_ms >= 0)
21
31
  );
22
32
 
23
33
  -- PREP: retention_retire_responses
24
- -- A settled call's response body beyond the newest $keep_turns body-bearing calls of its loop,
25
- -- or whose turn completed more than $keep_ms before $now_ms, retires; the call's identity,
26
- -- failure, capacity, admission and accounting stay, and the digest renders it request-only.
27
- -- -1 on both disables the statement; a call on an open turn is never retired.
28
- DELETE FROM model_call_responses
29
- WHERE ($keep_turns >= 0 OR $keep_ms >= 0)
30
- AND id IN (
31
- SELECT ic.id FROM inference_calls ic
32
- JOIN turns t ON t.id = ic.turn_id
33
- WHERE t.completed_at IS NOT NULL
34
- AND (
35
- ($keep_turns >= 0 AND (
36
- SELECT COUNT(*) FROM inference_calls newer
37
- JOIN turns nt ON nt.id = newer.turn_id
38
- WHERE nt.loop_id = t.loop_id
39
- AND EXISTS (SELECT 1 FROM model_call_responses r WHERE r.id = newer.id)
40
- AND (nt.sequence > t.sequence OR (nt.sequence = t.sequence AND newer.sequence > ic.sequence))
41
- ) >= $keep_turns)
42
- OR ($keep_ms >= 0 AND unixepoch(t.completed_at) * 1000 < $now_ms - $keep_ms)
43
- )
44
- );
34
+ -- Rank logical calls, not physical retries. Already retired calls retain their place
35
+ -- in that chronology; failed-only captures count too. Open work never expires.
36
+ WITH ranked AS MATERIALIZED (
37
+ SELECT ic.id, ic.state, t.completed_at, ic.payloads_retired_at,
38
+ row_number() OVER (PARTITION BY t.loop_id ORDER BY t.sequence DESC, ic.sequence DESC) AS ordinal
39
+ FROM inference_calls ic JOIN turns t ON t.id = ic.turn_id
40
+ WHERE ($keep_turns >= 0 OR $keep_ms >= 0)
41
+ AND (ic.payloads_retired_at IS NOT NULL
42
+ OR EXISTS (SELECT 1 FROM model_call_responses r WHERE r.id = ic.id)
43
+ OR EXISTS (SELECT 1 FROM provider_requests pr WHERE pr.inference_call_id = ic.id AND pr.evidence IS NOT NULL))
44
+ )
45
+ UPDATE inference_calls SET payloads_retired_at = strftime('%Y-%m-%dT%H:%M:%fZ', $now_ms / 1000.0, 'unixepoch')
46
+ WHERE id IN (
47
+ SELECT id FROM ranked
48
+ WHERE payloads_retired_at IS NULL AND state <> 'pending' AND completed_at IS NOT NULL
49
+ AND (($keep_turns >= 0 AND ordinal > $keep_turns)
50
+ OR ($keep_ms >= 0 AND unixepoch(completed_at) * 1000 < $now_ms - $keep_ms))
51
+ )
52
+ AND NOT EXISTS (SELECT 1 FROM provider_requests pr WHERE pr.inference_call_id = inference_calls.id AND pr.state = 'pending');
45
53
 
46
54
  -- PREP: retention_collect_packet_items
47
55
  -- {§packet-items}: an item no turn's composition references is transient data.
@@ -66,6 +74,24 @@ WHERE $collect = 1
66
74
  AND NOT EXISTS (SELECT 1 FROM entry_channel_rows r WHERE r.content_id = contents.id)
67
75
  AND NOT EXISTS (SELECT 1 FROM derivations d WHERE d.content_id = contents.id);
68
76
 
77
+ -- PREP: retention_collect_native_contents
78
+ -- {§native-content-lifetime}: curation flags never determine evidence ownership.
79
+ DELETE FROM native_contents
80
+ WHERE $collect = 1
81
+ AND hash NOT IN (
82
+ SELECT native_content_hash FROM log_entries WHERE native_content_hash IS NOT NULL
83
+ UNION
84
+ SELECT json_extract(a.value, '$.contentHash') FROM log_entries le,
85
+ json_each(CASE WHEN le.mimetype_rx = 'application/json' THEN le.rx ELSE '{}' END, '$.attachments') a
86
+ WHERE le.mimetype_rx = 'application/json' AND json_type(a.value, '$.contentHash') = 'text'
87
+ UNION
88
+ SELECT json_extract(a.value, '$.contentHash') FROM loop_messages m, json_each(m.evidence, '$.attachments') a
89
+ WHERE json_type(a.value, '$.contentHash') = 'text'
90
+ UNION
91
+ SELECT json_extract(a.value, '$.contentHash') FROM turns t, json_each(t.packet, '$.attachments') a
92
+ WHERE json_type(a.value, '$.contentHash') = 'text'
93
+ );
94
+
69
95
  -- {§db-space-reclamation} The daemon keeps its own file healthy: freed pages go back to the OS.
70
96
 
71
97
  -- PREP: retention_auto_vacuum_mode
@@ -72,7 +72,10 @@ SET state = 'failed',
72
72
  'type', 'https://problems.plurnk.xyz/lifecycle/recovery/owner-vanished',
73
73
  'title', 'Owner vanished',
74
74
  'status', 500,
75
- 'detail', 'The daemon restarted while this proposal was pending; its process-local owner no longer exists.',
75
+ 'detail', CASE WHEN EXISTS (
76
+ SELECT 1 FROM proposal_decisions pd WHERE pd.log_entry_id = log_entries.id AND pd.decision = 'accept'
77
+ ) THEN 'The daemon restarted after approval and before the operation result was saved; whether the effect completed is unknown. The operation was not replayed.'
78
+ ELSE 'The daemon restarted while this proposal was pending; its process-local owner no longer exists.' END,
76
79
  'instance', printf(
77
80
  'log:///%d/%d/%d/%s',
78
81
  (SELECT sequence FROM loops WHERE id = log_entries.loop_id),
@@ -1 +1 @@
1
- {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":";AAsCA,MAAM,CAAC,OAAO,OAAO,OAAO;;IAmUxB,OAAa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAqHjC;CACJ"}
1
+ {"version":3,"file":"service.d.ts","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":";AAuCA,MAAM,CAAC,OAAO,OAAO,OAAO;;IAsUxB,OAAa,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAqHjC;CACJ"}
package/dist/service.js CHANGED
@@ -8,6 +8,7 @@ import { fileURLToPath } from "node:url";
8
8
  import { dirname, resolve } from "node:path";
9
9
  import SqlRite from "@possumtech/sqlrite";
10
10
  import { sqlFunctionPaths } from "./core/sql-functions.js";
11
+ import { sqliteSynchronous } from "./core/sqlite-synchronous.js";
11
12
  import Daemon from "./server/Daemon.js";
12
13
  import HttpListener from "./server/HttpListener.js";
13
14
  import DaemonLock from "./server/DaemonLock.js";
@@ -106,6 +107,7 @@ export default class Service {
106
107
  return route.alias === undefined ? exact : `${route.alias}=${exact}`;
107
108
  }
108
109
  static async #validateConfiguration() {
110
+ sqliteSynchronous();
109
111
  Daemon.validateConfiguration();
110
112
  Daemon.validateWorkspaceConfiguration();
111
113
  await ServiceModules.validateConfiguration(workspacePaths(Service.#hostPaths, process.cwd()).configurationRoots.map(({ directory }) => directory));
@@ -141,6 +143,7 @@ export default class Service {
141
143
  return n;
142
144
  }
143
145
  static async #openDb(dbPath, exclusive = false) {
146
+ const synchronous = sqliteSynchronous();
144
147
  const tuning = {};
145
148
  for (const [env, opt] of [
146
149
  ["PLURNK_SERVICE_SQLITE_TIMEOUT", "timeout"],
@@ -165,6 +168,7 @@ export default class Service {
165
168
  try {
166
169
  const db = await SqlRite.open({
167
170
  path: dbPath,
171
+ synchronous,
168
172
  dir: [resolve(Service.#projectRoot, "migrations"), Service.#codeDir],
169
173
  functions: sqlFunctionPaths,
170
174
  ...tuning,
@@ -1 +1 @@
1
- {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"service.js","sourceRoot":"","sources":["../src/service.ts"],"names":[],"mappings":"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"}
package/docs/copy-move.md CHANGED
@@ -25,6 +25,9 @@ Move the whole resulting channel to a new address:
25
25
 
26
26
  COPY leaves its source unchanged. MOVE removes the selected source region or
27
27
  channel after the destination succeeds; a failed destination leaves it intact.
28
+ A changed file source is preserved. If removal fails after the destination was
29
+ written, the result reports that destination; MOVE is not a transaction across
30
+ both resources ({§file-delete-revision}, {§move-cross-scheme-move}).
28
31
  Paths can address files, workspace entries, or readable streams. Stream content
29
32
  can be copied; MOVE cannot remove a stream's output. A log source contributes
30
33
  only its untrimmed content, and MOVE curates that source as KILL would.
package/docs/env.md CHANGED
@@ -19,12 +19,15 @@ existing environment.
19
19
 
20
20
  ## Your entries
21
21
 
22
- `add` sets one variable for every command you run from now on. The name is the
22
+ `add` declares and enables one variable for every command you run from now on. The name is the
23
23
  alias, `{ "value": "…" }` the definition, used verbatim: no interpolation, no
24
24
  escapes. It persists until you `remove` it. This is a registry, not a prefix —
25
25
  `CARGO_TARGET_DIR=/tmp/x cargo build` sets a value for one command; `add` sets
26
26
  it for all of them.
27
27
 
28
+ `replace` takes the same `{alias, definition}` to change a value, retaining its
29
+ enabledness. A new name is created enabled. Both verbs accept workspace scope.
30
+
28
31
  `disable` withdraws a name from your commands while keeping the entry listed;
29
32
  `enable` restores it. For an ambient name that is how `CI=1` goes away for you
30
33
  alone, without the operator changing anything. `remove` forgets your own entry;
@@ -66,10 +69,13 @@ outlives the loop: it runs until it exits or is KILLed. `turn` keeps the command
66
69
  only through the current turn. WAIT's duration bounds the wait for inspection,
67
70
  not the command's lifetime.
68
71
 
69
- ## Names you cannot set
72
+ ## Names managed elsewhere
70
73
 
71
- `PLURNK_*` and provider credential names are plurnk's own and never reach a
72
- command, so `add` refuses them and tells you why.
74
+ `PLURNK_*` and provider credential names are reserved in `env` entries and
75
+ invocation overrides. Plurnk configuration belongs in the environment cascade;
76
+ READ `skill://plurnk/.env.defaults` for its reference. An MCP definition can
77
+ explicitly bind an operator credential without adding it to every command's
78
+ environment; READ `worker:///_plurnk/plurnk/mcp.md` for that setup.
73
79
 
74
80
  ## Finding a name
75
81
 
@@ -95,8 +101,8 @@ value, verbatim. The ordinary verbs reach it:
95
101
  ```
96
102
 
97
103
  A write is your own layer, never the workspace's or the operator's. `EDIT` sets the value
98
- (the body, whole: a value has no lines to scope) as `add` does for your worker; `KILL`
104
+ (the body, whole: a value has no lines to scope) as `replace` does for your worker; `KILL`
99
105
  retires the name from your commands as `remove` does for an entry you own and as
100
106
  `disable` does for one you inherited, so the inherited definition is kept and can be
101
107
  enabled again. Names plurnk reserves — its own configuration and provider credentials —
102
- are not resources and are refused as they are at `add`.
108
+ are not resources and are refused as they are at `add` and `replace`.
package/docs/members.md CHANGED
@@ -12,7 +12,7 @@ that set.
12
12
  | A file is a member because | How it got there |
13
13
  | --- | --- |
14
14
  | git tracks it | it was committed or staged (`git ls-files`), refreshed every turn |
15
- | a definition includes it | an enabled `members` definition — a gitignore-style glob such as `docs/**` |
15
+ | a definition includes it | an enabled `members` definition — a shell-path glob such as `docs/**` |
16
16
  | plurnk created it | a file your accepted `EDIT`, `COPY`, or `MOVE` wrote gets an exact creation record; it is a member without any `git add` |
17
17
 
18
18
  An exclusion (`!glob`) wins over every inclusion. A model definition never
@@ -71,6 +71,14 @@ candidate: its `provenance.kind` is the verdict and its `summary` the reason.
71
71
  - **Excluded by `!glob`**: an exclusion outranks every inclusion, and a model
72
72
  definition cannot lift it; only the user can.
73
73
 
74
+ - **Outside the project root** (`../notes.md`, or an absolute path beyond the
75
+ root): no model definition reaches it; only a members definition under the
76
+ operator's namespace scope admits it. File operands beginning with `~/`
77
+ resolve from the daemon user's home; `./~/` names a literal project
78
+ directory. Members globs remain project-relative, not home shorthand.
79
+ A command runs on the host from the project root, and its output is a stream
80
+ the worker reads.
81
+
74
82
  ## Files you create
75
83
 
76
84
  An `EDIT` to a path that does not exist creates it when the file-creation
@@ -78,6 +86,13 @@ scope admits it (`PLURNK_SERVICE_FILE_CREATE_SCOPE`). The new file is a member i
78
86
  creation record — you never need `git add` for your own creations. Deleting
79
87
  it (`KILL`) retires the record.
80
88
 
89
+ ## Changes while you work
90
+
91
+ File mutations check their selected revision again at acceptance. If the file
92
+ changed, `409 edit-collision` preserves it: inspect the current file and rebuild
93
+ the operation. A MOVE may already have written its destination before source
94
+ cleanup conflicts; its receipt identifies that completed effect.
95
+
81
96
  ## Definitions belong to the workspace
82
97
 
83
98
  `list` shows every definition with its origin (`service` from the operator's
@@ -0,0 +1,54 @@
1
+ -- MIGRATE: 23 file revisions
2
+ -- Released in 3.2.0 and frozen ({§db-migrations}): a shape change is the next MIGRATE version, never an edit here.
3
+ -- {§file-snapshot-revision}: stat-only baselines cannot authorize content replacement.
4
+ -- Retain every projection; ordinary materialization supplies its complete revision.
5
+ UPDATE entries SET synced_sig = NULL WHERE scheme = 'file';
6
+
7
+ DROP TRIGGER entry_publication_insert;
8
+ DROP VIEW entry_publication;
9
+
10
+ CREATE VIEW entry_publication AS
11
+ SELECT NULL AS workspace_id, NULL AS scheme, NULL AS authority, NULL AS pathname,
12
+ NULL AS attributes, NULL AS default_channel, NULL AS output,
13
+ NULL AS channels, NULL AS created, NULL AS synced_sig
14
+ WHERE 0;
15
+
16
+ CREATE TRIGGER entry_publication_insert
17
+ INSTEAD OF INSERT ON entry_publication
18
+ BEGIN
19
+ SELECT CASE WHEN json_type(NEW.channels) IS NOT 'object'
20
+ THEN RAISE(ABORT, 'entry publication requires a channel object') END;
21
+ INSERT INTO entries (workspace_id, scheme, authority, pathname, attributes, default_channel, output, synced_sig)
22
+ VALUES (NEW.workspace_id, NEW.scheme, NEW.authority, NEW.pathname,
23
+ COALESCE(NEW.attributes, '{}'), NEW.default_channel, NEW.output, NEW.synced_sig)
24
+ ON CONFLICT (workspace_id, scheme, authority, pathname) DO UPDATE SET
25
+ attributes = COALESCE(NEW.attributes, entries.attributes),
26
+ default_channel = excluded.default_channel,
27
+ output = MAX(entries.output, excluded.output),
28
+ synced_sig = excluded.synced_sig;
29
+ DELETE FROM entry_channels WHERE entry_id = (
30
+ SELECT id FROM entries WHERE workspace_id = NEW.workspace_id
31
+ AND scheme = NEW.scheme AND authority = NEW.authority AND pathname = NEW.pathname
32
+ ) AND name NOT IN (SELECT key FROM json_each(NEW.channels));
33
+ UPDATE entry_channels
34
+ SET content = json_extract(c.value, '$.content'),
35
+ mimetype = json_extract(c.value, '$.mimetype'),
36
+ weight = json_extract(c.value, '$.weight'),
37
+ content_hash = json_extract(c.value, '$.content_hash'),
38
+ state = json_extract(c.value, '$.state'),
39
+ producer_result = json_extract(c.value, '$.producer_result')
40
+ FROM (SELECT key, value FROM json_each(NEW.channels)) AS c
41
+ WHERE entry_channels.name = c.key
42
+ AND entry_channels.entry_id = (
43
+ SELECT id FROM entries WHERE workspace_id = NEW.workspace_id
44
+ AND scheme = NEW.scheme AND authority = NEW.authority AND pathname = NEW.pathname
45
+ );
46
+ INSERT INTO entry_channels (entry_id, name, content, mimetype, weight, content_hash, state, producer_result)
47
+ SELECT e.id, c.key, json_extract(c.value, '$.content'), json_extract(c.value, '$.mimetype'),
48
+ json_extract(c.value, '$.weight'), json_extract(c.value, '$.content_hash'),
49
+ json_extract(c.value, '$.state'), json_extract(c.value, '$.producer_result')
50
+ FROM entries e, json_each(NEW.channels) c
51
+ WHERE e.workspace_id = NEW.workspace_id AND e.scheme = NEW.scheme
52
+ AND e.authority = NEW.authority AND e.pathname = NEW.pathname
53
+ AND NOT EXISTS (SELECT 1 FROM entry_channel_rows r WHERE r.entry_id = e.id AND r.name = c.key);
54
+ END;
@@ -0,0 +1,34 @@
1
+ -- MIGRATE: 24 proposal decisions
2
+ -- Released in 3.2.0 and frozen ({§db-migrations}): a shape change is the next MIGRATE version, never an edit here.
3
+ -- {§proposal-decision-evidence}: authority precedes effects; results cannot replace decisions.
4
+ CREATE TABLE proposal_decisions (
5
+ log_entry_id INTEGER PRIMARY KEY REFERENCES log_entries(id) ON DELETE CASCADE,
6
+ decision TEXT NOT NULL CHECK (decision IN ('accept', 'reject', 'cancel')),
7
+ resolver TEXT NOT NULL CHECK (length(resolver) > 0),
8
+ body TEXT,
9
+ outcome TEXT,
10
+ decided_at TEXT NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ', 'now'))
11
+ ) STRICT;
12
+
13
+ CREATE TRIGGER proposal_decision_insert
14
+ BEFORE INSERT ON proposal_decisions
15
+ BEGIN
16
+ SELECT CASE WHEN NOT EXISTS (
17
+ SELECT 1 FROM log_entries le JOIN workers w ON w.id = le.worker_id
18
+ WHERE le.id = NEW.log_entry_id AND le.state = 'proposed'
19
+ AND (NEW.resolver = '_plurnk' OR NEW.resolver = w.owner)
20
+ ) THEN RAISE(ABORT, 'proposal decision requires a pending operation and its resolving authority') END;
21
+ END;
22
+
23
+ CREATE TRIGGER proposal_decision_immutable
24
+ BEFORE UPDATE ON proposal_decisions
25
+ BEGIN
26
+ SELECT RAISE(ABORT, 'proposal decisions are immutable');
27
+ END;
28
+
29
+ CREATE TRIGGER proposal_decision_history_lifetime
30
+ BEFORE DELETE ON proposal_decisions
31
+ WHEN EXISTS (SELECT 1 FROM log_entries WHERE id = OLD.log_entry_id)
32
+ BEGIN
33
+ SELECT RAISE(ABORT, 'proposal decisions belong to operation history');
34
+ END;
@@ -0,0 +1,30 @@
1
+ -- MIGRATE: 25 response retention
2
+ -- Released in 3.2.0 and frozen ({§db-migrations}): a shape change is the next MIGRATE version, never an edit here.
3
+ -- {§retention-policy}: one logical call owns retirement of all its captured payloads.
4
+ ALTER TABLE inference_calls ADD COLUMN payloads_retired_at TEXT;
5
+
6
+ CREATE TRIGGER inference_payload_retirement_insert
7
+ BEFORE INSERT ON inference_calls WHEN NEW.payloads_retired_at IS NOT NULL
8
+ BEGIN
9
+ SELECT RAISE(ABORT, 'inference payloads cannot open retired');
10
+ END;
11
+
12
+ CREATE TRIGGER inference_payload_retirement_once
13
+ BEFORE UPDATE OF payloads_retired_at ON inference_calls
14
+ WHEN OLD.payloads_retired_at IS NOT NULL OR NEW.payloads_retired_at IS NULL
15
+ OR NEW.state = 'pending'
16
+ OR NOT EXISTS (SELECT 1 FROM turns WHERE id = NEW.turn_id AND completed_at IS NOT NULL)
17
+ OR EXISTS (SELECT 1 FROM provider_requests WHERE inference_call_id = NEW.id AND state = 'pending')
18
+ BEGIN
19
+ SELECT RAISE(ABORT, 'inference payload retirement requires completed work and occurs once');
20
+ END;
21
+
22
+ CREATE TRIGGER provider_request_payload_immutable
23
+ BEFORE UPDATE OF evidence ON provider_requests
24
+ WHEN OLD.state <> 'pending' AND NOT (
25
+ OLD.evidence IS NOT NULL AND NEW.evidence IS NULL
26
+ AND EXISTS (SELECT 1 FROM inference_calls WHERE id = OLD.inference_call_id AND payloads_retired_at IS NOT NULL)
27
+ )
28
+ BEGIN
29
+ SELECT RAISE(ABORT, 'provider request payload is immutable except through retention');
30
+ END;