@plurnk/plurnk-service 1.21.0 → 1.22.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 (249) hide show
  1. package/.env.defaults +15 -6
  2. package/INSTALL.md +2 -2
  3. package/README.md +1 -1
  4. package/SPEC.md +329 -228
  5. package/dist/build-info.json +1 -1
  6. package/dist/content/edit-receipt.js +4 -3
  7. package/dist/content/edit-receipt.js.map +1 -1
  8. package/dist/content/index.d.ts +2 -7
  9. package/dist/content/index.d.ts.map +1 -1
  10. package/dist/content/index.js +2 -5
  11. package/dist/content/index.js.map +1 -1
  12. package/dist/content/line-anchors.d.ts.map +1 -1
  13. package/dist/content/line-anchors.js +46 -15
  14. package/dist/content/line-anchors.js.map +1 -1
  15. package/dist/content/line-marker.d.ts +1 -0
  16. package/dist/content/line-marker.d.ts.map +1 -1
  17. package/dist/content/line-marker.js +2 -0
  18. package/dist/content/line-marker.js.map +1 -1
  19. package/dist/content/matcher.d.ts +1 -1
  20. package/dist/content/matcher.d.ts.map +1 -1
  21. package/dist/content/matcher.js +7 -9
  22. package/dist/content/matcher.js.map +1 -1
  23. package/dist/content/pattern-edits.d.ts +6 -0
  24. package/dist/content/pattern-edits.d.ts.map +1 -1
  25. package/dist/content/pattern-edits.js +14 -0
  26. package/dist/content/pattern-edits.js.map +1 -1
  27. package/dist/content/read-projector.d.ts.map +1 -1
  28. package/dist/content/read-projector.js +2 -1
  29. package/dist/content/read-projector.js.map +1 -1
  30. package/dist/content/scope-format.d.ts +2 -2
  31. package/dist/content/scope-format.d.ts.map +1 -1
  32. package/dist/content/scope-format.js.map +1 -1
  33. package/dist/core/AdmittedTurnExecutor.d.ts.map +1 -1
  34. package/dist/core/AdmittedTurnExecutor.js +5 -2
  35. package/dist/core/AdmittedTurnExecutor.js.map +1 -1
  36. package/dist/core/DataStatementRunner.js +1 -1
  37. package/dist/core/DataStatementRunner.js.map +1 -1
  38. package/dist/core/Dispatcher.d.ts.map +1 -1
  39. package/dist/core/Dispatcher.js +1 -0
  40. package/dist/core/Dispatcher.js.map +1 -1
  41. package/dist/core/Dispatcher.sql +1 -1
  42. package/dist/core/EditMutations.js +4 -4
  43. package/dist/core/EditMutations.js.map +1 -1
  44. package/dist/core/EditSequence.d.ts.map +1 -1
  45. package/dist/core/EditSequence.js +2 -1
  46. package/dist/core/EditSequence.js.map +1 -1
  47. package/dist/core/Engine.d.ts +4 -1
  48. package/dist/core/Engine.d.ts.map +1 -1
  49. package/dist/core/Engine.js +7 -2
  50. package/dist/core/Engine.js.map +1 -1
  51. package/dist/core/ExecutorRegistry.d.ts +1 -0
  52. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  53. package/dist/core/ExecutorRegistry.js +4 -0
  54. package/dist/core/ExecutorRegistry.js.map +1 -1
  55. package/dist/core/FabricatedLog.d.ts +8 -0
  56. package/dist/core/FabricatedLog.d.ts.map +1 -0
  57. package/dist/core/FabricatedLog.js +16 -0
  58. package/dist/core/FabricatedLog.js.map +1 -0
  59. package/dist/core/KnownToxins.d.ts +0 -1
  60. package/dist/core/KnownToxins.d.ts.map +1 -1
  61. package/dist/core/KnownToxins.js +3 -12
  62. package/dist/core/KnownToxins.js.map +1 -1
  63. package/dist/core/LogBody.d.ts.map +1 -1
  64. package/dist/core/LogBody.js +3 -2
  65. package/dist/core/LogBody.js.map +1 -1
  66. package/dist/core/LogVisibility.d.ts +3 -1
  67. package/dist/core/LogVisibility.d.ts.map +1 -1
  68. package/dist/core/LogVisibility.js +30 -16
  69. package/dist/core/LogVisibility.js.map +1 -1
  70. package/dist/core/LoopDriver.d.ts.map +1 -1
  71. package/dist/core/LoopDriver.js +2 -3
  72. package/dist/core/LoopDriver.js.map +1 -1
  73. package/dist/core/LoopOutcome.d.ts +0 -1
  74. package/dist/core/LoopOutcome.d.ts.map +1 -1
  75. package/dist/core/LoopOutcome.js +1 -1
  76. package/dist/core/LoopOutcome.js.map +1 -1
  77. package/dist/core/OutsideEvent.d.ts +10 -0
  78. package/dist/core/OutsideEvent.d.ts.map +1 -0
  79. package/dist/core/OutsideEvent.js +5 -0
  80. package/dist/core/OutsideEvent.js.map +1 -0
  81. package/dist/core/PacketBuilder.js +2 -2
  82. package/dist/core/PacketBuilder.js.map +1 -1
  83. package/dist/core/PatternSelection.d.ts +1 -1
  84. package/dist/core/PatternSelection.d.ts.map +1 -1
  85. package/dist/core/PatternSelection.js +8 -6
  86. package/dist/core/PatternSelection.js.map +1 -1
  87. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  88. package/dist/core/ProposalLifecycle.js +2 -4
  89. package/dist/core/ProposalLifecycle.js.map +1 -1
  90. package/dist/core/ProviderInstantiate.d.ts +4 -4
  91. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  92. package/dist/core/ProviderInstantiate.js +24 -25
  93. package/dist/core/ProviderInstantiate.js.map +1 -1
  94. package/dist/core/ProviderRecovery.d.ts +1 -1
  95. package/dist/core/ProviderRecovery.d.ts.map +1 -1
  96. package/dist/core/ProviderRecovery.js +3 -1
  97. package/dist/core/ProviderRecovery.js.map +1 -1
  98. package/dist/core/ResourceSelector.js +1 -1
  99. package/dist/core/ResourceSelector.js.map +1 -1
  100. package/dist/core/StoredPacket.d.ts +1 -1
  101. package/dist/core/StoredPacket.d.ts.map +1 -1
  102. package/dist/core/StoredPacket.js +6 -15
  103. package/dist/core/StoredPacket.js.map +1 -1
  104. package/dist/core/StrikeRail.d.ts +2 -0
  105. package/dist/core/StrikeRail.d.ts.map +1 -1
  106. package/dist/core/StrikeRail.js +7 -1
  107. package/dist/core/StrikeRail.js.map +1 -1
  108. package/dist/core/Turn.d.ts +1 -1
  109. package/dist/core/Turn.d.ts.map +1 -1
  110. package/dist/core/Turn.js.map +1 -1
  111. package/dist/core/TurnDispositionHandler.d.ts.map +1 -1
  112. package/dist/core/TurnDispositionHandler.js +1 -4
  113. package/dist/core/TurnDispositionHandler.js.map +1 -1
  114. package/dist/core/TurnMaterialization.d.ts.map +1 -1
  115. package/dist/core/TurnMaterialization.js +5 -7
  116. package/dist/core/TurnMaterialization.js.map +1 -1
  117. package/dist/core/TurnRunner.d.ts +5 -1
  118. package/dist/core/TurnRunner.d.ts.map +1 -1
  119. package/dist/core/TurnRunner.js +108 -23
  120. package/dist/core/TurnRunner.js.map +1 -1
  121. package/dist/core/WorkerControlHandler.d.ts.map +1 -1
  122. package/dist/core/WorkerControlHandler.js +6 -1
  123. package/dist/core/WorkerControlHandler.js.map +1 -1
  124. package/dist/core/WorkerName.sql +2 -2
  125. package/dist/core/attachments.d.ts +0 -3
  126. package/dist/core/attachments.d.ts.map +1 -1
  127. package/dist/core/attachments.js +3 -3
  128. package/dist/core/attachments.js.map +1 -1
  129. package/dist/core/caps/DbSubscriptionCaps.d.ts.map +1 -1
  130. package/dist/core/caps/DbSubscriptionCaps.js +1 -2
  131. package/dist/core/caps/DbSubscriptionCaps.js.map +1 -1
  132. package/dist/core/fork.sql +2 -2
  133. package/dist/core/packet-wire.d.ts +1 -2
  134. package/dist/core/packet-wire.d.ts.map +1 -1
  135. package/dist/core/packet-wire.js +51 -54
  136. package/dist/core/packet-wire.js.map +1 -1
  137. package/dist/core/plurnk-uri.d.ts +0 -1
  138. package/dist/core/plurnk-uri.d.ts.map +1 -1
  139. package/dist/core/plurnk-uri.js +1 -1
  140. package/dist/core/plurnk-uri.js.map +1 -1
  141. package/dist/core/worker-ops.sql +1 -1
  142. package/dist/digest/Digest.d.ts.map +1 -1
  143. package/dist/digest/Digest.js +33 -60
  144. package/dist/digest/Digest.js.map +1 -1
  145. package/dist/digest/DigestEvidence.d.ts +9 -0
  146. package/dist/digest/DigestEvidence.d.ts.map +1 -0
  147. package/dist/digest/DigestEvidence.js +52 -0
  148. package/dist/digest/DigestEvidence.js.map +1 -0
  149. package/dist/digest/DigestRender.d.ts +1 -1
  150. package/dist/digest/DigestRender.d.ts.map +1 -1
  151. package/dist/digest/DigestRender.js +115 -66
  152. package/dist/digest/DigestRender.js.map +1 -1
  153. package/dist/digest/DigestRequiem.d.ts.map +1 -1
  154. package/dist/digest/DigestRequiem.js +56 -47
  155. package/dist/digest/DigestRequiem.js.map +1 -1
  156. package/dist/digest/digest-paths.d.ts.map +1 -1
  157. package/dist/digest/digest-paths.js +5 -14
  158. package/dist/digest/digest-paths.js.map +1 -1
  159. package/dist/digest/digest-rows.d.ts +10 -9
  160. package/dist/digest/digest-rows.d.ts.map +1 -1
  161. package/dist/digest/digest.sql +15 -11
  162. package/dist/schemes/EffectPolicy.js +1 -1
  163. package/dist/schemes/EffectPolicy.js.map +1 -1
  164. package/dist/schemes/Exec.d.ts.map +1 -1
  165. package/dist/schemes/Exec.js +26 -6
  166. package/dist/schemes/Exec.js.map +1 -1
  167. package/dist/schemes/ExecScratch.d.ts +10 -0
  168. package/dist/schemes/ExecScratch.d.ts.map +1 -0
  169. package/dist/schemes/ExecScratch.js +43 -0
  170. package/dist/schemes/ExecScratch.js.map +1 -0
  171. package/dist/schemes/File.d.ts.map +1 -1
  172. package/dist/schemes/File.js +39 -5
  173. package/dist/schemes/File.js.map +1 -1
  174. package/dist/schemes/Log.d.ts.map +1 -1
  175. package/dist/schemes/Log.js +5 -4
  176. package/dist/schemes/Log.js.map +1 -1
  177. package/dist/schemes/TurnSource.js +2 -2
  178. package/dist/schemes/TurnSource.js.map +1 -1
  179. package/dist/schemes/Worker.d.ts.map +1 -1
  180. package/dist/schemes/Worker.js +6 -3
  181. package/dist/schemes/Worker.js.map +1 -1
  182. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  183. package/dist/schemes/_entry-crud.js +2 -3
  184. package/dist/schemes/_entry-crud.js.map +1 -1
  185. package/dist/schemes/_entry-find.d.ts.map +1 -1
  186. package/dist/schemes/_entry-find.js +2 -1
  187. package/dist/schemes/_entry-find.js.map +1 -1
  188. package/dist/schemes/_entry-fts.d.ts +1 -0
  189. package/dist/schemes/_entry-fts.d.ts.map +1 -1
  190. package/dist/schemes/_entry-fts.js +34 -2
  191. package/dist/schemes/_entry-fts.js.map +1 -1
  192. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  193. package/dist/schemes/_entry-ops.js +3 -2
  194. package/dist/schemes/_entry-ops.js.map +1 -1
  195. package/dist/schemes/_path-scope.d.ts.map +1 -1
  196. package/dist/schemes/_path-scope.js +2 -3
  197. package/dist/schemes/_path-scope.js.map +1 -1
  198. package/dist/server/Daemon.d.ts +25 -13
  199. package/dist/server/Daemon.d.ts.map +1 -1
  200. package/dist/server/Daemon.js +89 -58
  201. package/dist/server/Daemon.js.map +1 -1
  202. package/dist/server/DrainSupervisor.d.ts +3 -3
  203. package/dist/server/DrainSupervisor.d.ts.map +1 -1
  204. package/dist/server/DrainSupervisor.js +3 -3
  205. package/dist/server/DrainSupervisor.js.map +1 -1
  206. package/dist/server/EnvFunctionality.d.ts +0 -1
  207. package/dist/server/EnvFunctionality.d.ts.map +1 -1
  208. package/dist/server/EnvFunctionality.js +1 -1
  209. package/dist/server/EnvFunctionality.js.map +1 -1
  210. package/dist/server/MembersFunctionality.d.ts +0 -9
  211. package/dist/server/MembersFunctionality.d.ts.map +1 -1
  212. package/dist/server/WorkerModelResolver.d.ts +8 -8
  213. package/dist/server/WorkerModelResolver.d.ts.map +1 -1
  214. package/dist/server/WorkerModelResolver.js +46 -45
  215. package/dist/server/WorkerModelResolver.js.map +1 -1
  216. package/dist/server/client-input.d.ts +1 -0
  217. package/dist/server/client-input.d.ts.map +1 -1
  218. package/dist/server/client-input.js +7 -0
  219. package/dist/server/client-input.js.map +1 -1
  220. package/dist/server/drain.sql +6 -6
  221. package/dist/server/envelope.sql +6 -6
  222. package/dist/server/loopDocs.js +1 -1
  223. package/dist/server/loopDocs.js.map +1 -1
  224. package/dist/server/model-catalog.js +2 -2
  225. package/dist/server/model-catalog.js.map +1 -1
  226. package/dist/server/model-route.d.ts +2 -2
  227. package/dist/server/model-route.d.ts.map +1 -1
  228. package/dist/server/model-route.js +5 -5
  229. package/dist/server/model-route.js.map +1 -1
  230. package/dist/service.d.ts.map +1 -1
  231. package/dist/service.js +41 -6
  232. package/dist/service.js.map +1 -1
  233. package/dist/share/Share.d.ts +15 -0
  234. package/dist/share/Share.d.ts.map +1 -0
  235. package/dist/share/Share.js +106 -0
  236. package/dist/share/Share.js.map +1 -0
  237. package/dist/share/share.sql +6 -0
  238. package/migrations/001_workspaces.sql +2 -2
  239. package/migrations/002_workers.sql +4 -6
  240. package/migrations/003_loops.sql +2 -2
  241. package/migrations/004_inference.sql +2 -2
  242. package/migrations/005_entries.sql +2 -2
  243. package/migrations/006_log.sql +2 -2
  244. package/migrations/007_subscriptions.sql +2 -2
  245. package/migrations/008_interactions.sql +2 -2
  246. package/migrations/009_effort.sql +7 -0
  247. package/migrations/010_outside_text.sql +41 -0
  248. package/migrations/011_settled.sql +133 -0
  249. package/package.json +42 -37
package/.env.defaults CHANGED
@@ -10,6 +10,9 @@
10
10
  # Database path; empty = $XDG_DATA_HOME/plurnk/plurnk.db (~/.local/share by default).
11
11
  # Module operational state: $XDG_STATE_HOME/plurnk (~/.local/state/plurnk by default).
12
12
  PLURNK_SERVICE_DB_PATH=
13
+ # Where `share` writes when no folder is named: each share is a stamped child folder.
14
+ # A leading ~/ expands; empty = $XDG_STATE_HOME/plurnk/shares (~/.local/state/plurnk/shares by default).
15
+ PLURNK_SERVICE_SHARE_FOLDER=
13
16
  # The listener's address, PLURNK_HOST and PLURNK_PORT, is shared with every client and so is
14
17
  # declared by @plurnk/plurnk-contracts; --host and --port still spell it for one invocation.
15
18
 
@@ -63,7 +66,7 @@ PLURNK_SERVICE_FILE_MATERIALIZE_MAX_BYTES=104857600
63
66
  # --- Loop limits and recovery ---
64
67
  # Default child model: alias or provider/model. Unset = inherit the spawning loop's model.
65
68
  # PLURNK_MODEL_CHILD=fast
66
- # Model turns per loop, including resumes; -1 = unlimited. Client limits may tighten it.
69
+ # Model calls across the worker tree, including BARE and resumes; -1 = unlimited. Clients may tighten it.
67
70
  PLURNK_SERVICE_MAX_TURNS=-1
68
71
  # Actions per emission; -1 = unlimited. Final disposition remains; excess actions report an error.
69
72
  PLURNK_SERVICE_MAX_COMMANDS=-1
@@ -75,9 +78,10 @@ PLURNK_SERVICE_LOOP_TIMEOUT=86400000
75
78
  PLURNK_SERVICE_LIVE_TIMEOUT=600000
76
79
  # Shutdown settlement deadline, positive ms; abandon outstanding waits after expiry.
77
80
  PLURNK_SERVICE_STOP_TIMEOUT_MS=30000
78
- # Provider recovery window, ms; 0 = park immediately. Expiry parks until the next prompt/wake. Loop and BARE calls alike.
81
+ # Provider recovery window, ms; 0 = no reissue. Expiry parks attended loops until a prompt/wake;
82
+ # unattended loops conclude and BARE returns the provider failure.
79
83
  PLURNK_SERVICE_PROVIDER_RECOVERY=900000
80
- # First recovery delay, ms; doubles on failure, capped at 12 times this value.
84
+ # First recovery delay, ms; doubles on failure up to PROVIDER_RECOVERY_BACKOFF_MAX below.
81
85
  PLURNK_SERVICE_PROVIDER_RECOVERY_BACKOFF=5000
82
86
  # Ceiling of that doubling delay, ms.
83
87
  PLURNK_SERVICE_PROVIDER_RECOVERY_BACKOFF_MAX=60000
@@ -109,6 +113,11 @@ PLURNK_SERVICE_EXEC_CONCURRENCY=12
109
113
  PLURNK_SERVICE_EXEC_INPUT_TIMEOUT_MS=10000
110
114
  # Deadline for one runtime's availability probe at boot, positive ms; expiry reports it unavailable.
111
115
  PLURNK_SERVICE_EXEC_PROBE_TIMEOUT_MS=3000
116
+ # Directory a non-file execution source (`sh (log:///…)`) is written to for its run, created 0700
117
+ # on first use ({§exec-scratch-directory}). Empty = $XDG_RUNTIME_DIR/plurnk, else the platform
118
+ # temporary directory. An executor in another filesystem namespace (a container that mounts only
119
+ # the repository) must see the same directory: point this at one it mounts.
120
+ PLURNK_SERVICE_EXEC_SCRATCH=
112
121
  # What an operation that runs code or changes the world does: propose = it needs a settlement;
113
122
  # auto = it runs ungated. This covers a subprocess and an outbound POST, PUT or DELETE alike.
114
123
  PLURNK_SERVICE_EFFECT_HOST=propose
@@ -144,13 +153,13 @@ PLURNK_SERVICE_PREVIEW_LINES=100
144
153
  PLURNK_SERVICE_PREVIEW_CHARS=16000
145
154
  # Turn0 reasoning READ: -1 = complete; 0 = omit; N = first N lines. Later reads are model-chosen.
146
155
  # Alias override: PLURNK_REASONING_VIEW_LINES_<alias>. Source retention/streaming are unchanged.
147
- PLURNK_REASONING_VIEW_LINES=-1
156
+ PLURNK_REASONING_VIEW_LINES=100
148
157
  # After a turn with no operation, its reasoning is read back: same scale, same alias override.
149
- PLURNK_REASONING_EMPTY_TURN_LINES=-1
158
+ PLURNK_REASONING_EMPTY_TURN_LINES=100
150
159
  # Cold-start input allowance reserved for automatic prompt bodies, percentage in (0,100).
151
160
  # Alias override: PLURNK_SERVICE_PROMPT_PROJECTION_<alias>. Full prompts remain addressable.
152
161
  PLURNK_SERVICE_PROMPT_PROJECTION=25%
153
- # Neighboring lines hashed on each side of an editable line anchor; 0 = addressed line only.
162
+ # Minimum neighbors hashed on each side of an editable line anchor; repeated handles widen context.
154
163
  PLURNK_SERVICE_LINE_ANCHOR_CONTEXT_LINES=2
155
164
  # Surrounding and changed lines shown at each EDIT boundary; overlapping windows coalesce.
156
165
  PLURNK_SERVICE_EDIT_RECEIPT_CONTEXT_LINES=4
package/INSTALL.md CHANGED
@@ -15,7 +15,7 @@ plurnk-service start
15
15
  ```
16
16
 
17
17
  First start seeds the user's configuration once. No model ships active;
18
- choose a model route before starting a model loop. The version-1 database
18
+ [choose a model route](https://github.com/plurnk/plurnk-service/blob/main/plurnk-providers/README.md#configure-a-model) before starting a model loop. The version-1 database
19
19
  baseline is disposable during development.
20
20
 
21
21
  | Resource | Default location |
@@ -62,7 +62,7 @@ the owning declaration specifies its meaning.
62
62
  | File creation and membership | Separate policies. Creating an out-of-root file, admitting a new file, and editing an existing member are distinct decisions. |
63
63
  | User-facing behavior | Operating policy; use configuration for runtime controls. |
64
64
 
65
- The `@plurnk/plurnk-providers` README covers alias tuning, reasoning and output
65
+ The [`@plurnk/plurnk-providers` README](https://github.com/plurnk/plurnk-service/blob/main/plurnk-providers/README.md#configure-a-model) covers alias tuning, reasoning and output
66
66
  budgets, local endpoints, caching, and connectivity; the
67
67
  [model chapter](skill://plurnk/references/models.md) is what a model is told.
68
68
  The defaults catalog groups the remaining settings by their owning subsystem:
package/README.md CHANGED
@@ -27,7 +27,7 @@ Clients use AG-UI management actions and AG-UI Run streams exposed by
27
27
  a second client transport.
28
28
 
29
29
  `models.list` locally lists catalog routes, configuration readiness, and each
30
- route's accepted `capabilities.reasoningPolicies`. `worker.reasoning.get`
30
+ route's accepted `capabilities.efforts`. `worker.effort.get`
31
31
  reports the choices shared by a worker's selected model and spawn override.
32
32
 
33
33
  ## Start