@plurnk/plurnk-service 1.5.0 → 1.6.1

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 (248) hide show
  1. package/.env.defaults +22 -27
  2. package/INSTALL.md +22 -17
  3. package/README.md +1 -1
  4. package/SPEC.md +505 -362
  5. package/dist/build-info.json +1 -1
  6. package/dist/content/edit-collision.d.ts +5 -0
  7. package/dist/content/edit-collision.d.ts.map +1 -0
  8. package/dist/content/edit-collision.js +14 -0
  9. package/dist/content/edit-collision.js.map +1 -0
  10. package/dist/content/edit-receipt.d.ts +3 -2
  11. package/dist/content/edit-receipt.d.ts.map +1 -1
  12. package/dist/content/edit-receipt.js +58 -13
  13. package/dist/content/edit-receipt.js.map +1 -1
  14. package/dist/content/index.d.ts +4 -1
  15. package/dist/content/index.d.ts.map +1 -1
  16. package/dist/content/index.js +3 -1
  17. package/dist/content/index.js.map +1 -1
  18. package/dist/content/line-anchors.d.ts +41 -0
  19. package/dist/content/line-anchors.d.ts.map +1 -0
  20. package/dist/content/line-anchors.js +191 -0
  21. package/dist/content/line-anchors.js.map +1 -0
  22. package/dist/content/read-projector.d.ts +7 -1
  23. package/dist/content/read-projector.d.ts.map +1 -1
  24. package/dist/content/read-projector.js +46 -10
  25. package/dist/content/read-projector.js.map +1 -1
  26. package/dist/content/read-resolve.js +3 -3
  27. package/dist/content/read-resolve.js.map +1 -1
  28. package/dist/core/BudgetReadout.d.ts.map +1 -1
  29. package/dist/core/BudgetReadout.js +9 -2
  30. package/dist/core/BudgetReadout.js.map +1 -1
  31. package/dist/core/ChannelWrite.js +1 -1
  32. package/dist/core/ChannelWrite.js.map +1 -1
  33. package/dist/core/ChannelWrite.sql +3 -3
  34. package/dist/core/CoreSchemeServices.d.ts +1 -1
  35. package/dist/core/CoreSchemeServices.d.ts.map +1 -1
  36. package/dist/core/CoreSchemeServices.js +1 -1
  37. package/dist/core/CoreSchemeServices.js.map +1 -1
  38. package/dist/core/Dispatcher.d.ts +15 -5
  39. package/dist/core/Dispatcher.d.ts.map +1 -1
  40. package/dist/core/Dispatcher.js +220 -978
  41. package/dist/core/Dispatcher.js.map +1 -1
  42. package/dist/core/DurableStatement.d.ts.map +1 -1
  43. package/dist/core/DurableStatement.js +2 -0
  44. package/dist/core/DurableStatement.js.map +1 -1
  45. package/dist/core/Engine.d.ts +18 -43
  46. package/dist/core/Engine.d.ts.map +1 -1
  47. package/dist/core/Engine.js +90 -1554
  48. package/dist/core/Engine.js.map +1 -1
  49. package/dist/core/Engine.sql +192 -112
  50. package/dist/core/ExecutableTools.d.ts +10 -0
  51. package/dist/core/ExecutableTools.d.ts.map +1 -0
  52. package/dist/core/ExecutableTools.js +41 -0
  53. package/dist/core/ExecutableTools.js.map +1 -0
  54. package/dist/core/ExecutorRegistry.d.ts +3 -3
  55. package/dist/core/ExecutorRegistry.d.ts.map +1 -1
  56. package/dist/core/ExecutorRegistry.js +2 -2
  57. package/dist/core/ExecutorRegistry.js.map +1 -1
  58. package/dist/core/LogBody.d.ts +3 -0
  59. package/dist/core/LogBody.d.ts.map +1 -1
  60. package/dist/core/LogBody.js +21 -5
  61. package/dist/core/LogBody.js.map +1 -1
  62. package/dist/core/LogEntryProjection.d.ts +14 -0
  63. package/dist/core/LogEntryProjection.d.ts.map +1 -0
  64. package/dist/core/LogEntryProjection.js +38 -0
  65. package/dist/core/LogEntryProjection.js.map +1 -0
  66. package/dist/core/ModelCall.d.ts +27 -0
  67. package/dist/core/ModelCall.d.ts.map +1 -0
  68. package/dist/core/ModelCall.js +127 -0
  69. package/dist/core/ModelCall.js.map +1 -0
  70. package/dist/core/PacketBuilder.d.ts +14 -25
  71. package/dist/core/PacketBuilder.d.ts.map +1 -1
  72. package/dist/core/PacketBuilder.js +170 -244
  73. package/dist/core/PacketBuilder.js.map +1 -1
  74. package/dist/core/ProblemLog.d.ts +1 -1
  75. package/dist/core/ProblemLog.d.ts.map +1 -1
  76. package/dist/core/ProblemLog.js +15 -3
  77. package/dist/core/ProblemLog.js.map +1 -1
  78. package/dist/core/ProposalLifecycle.d.ts +2 -2
  79. package/dist/core/ProposalLifecycle.d.ts.map +1 -1
  80. package/dist/core/ProposalLifecycle.js +17 -9
  81. package/dist/core/ProposalLifecycle.js.map +1 -1
  82. package/dist/core/ProviderInstantiate.d.ts.map +1 -1
  83. package/dist/core/ProviderInstantiate.js +25 -8
  84. package/dist/core/ProviderInstantiate.js.map +1 -1
  85. package/dist/core/ResourceMutations.d.ts +73 -0
  86. package/dist/core/ResourceMutations.d.ts.map +1 -0
  87. package/dist/core/ResourceMutations.js +1142 -0
  88. package/dist/core/ResourceMutations.js.map +1 -0
  89. package/dist/core/SchemeRegistry.js +10 -10
  90. package/dist/core/SchemeRegistry.js.map +1 -1
  91. package/dist/core/StoredPacket.d.ts +2 -2
  92. package/dist/core/StoredPacket.js +7 -7
  93. package/dist/core/StrikeRail.d.ts +0 -1
  94. package/dist/core/StrikeRail.d.ts.map +1 -1
  95. package/dist/core/StrikeRail.js +6 -4
  96. package/dist/core/StrikeRail.js.map +1 -1
  97. package/dist/core/TurnRunner.d.ts +72 -0
  98. package/dist/core/TurnRunner.d.ts.map +1 -0
  99. package/dist/core/TurnRunner.js +1730 -0
  100. package/dist/core/TurnRunner.js.map +1 -0
  101. package/dist/core/caps/CapsResolve.js +1 -1
  102. package/dist/core/caps/CapsResolve.js.map +1 -1
  103. package/dist/core/caps/DbChannelCaps.js +4 -4
  104. package/dist/core/caps/DbChannelCaps.js.map +1 -1
  105. package/dist/core/caps/DbEntryCaps.d.ts +2 -1
  106. package/dist/core/caps/DbEntryCaps.d.ts.map +1 -1
  107. package/dist/core/caps/DbEntryCaps.js +8 -5
  108. package/dist/core/caps/DbEntryCaps.js.map +1 -1
  109. package/dist/core/caps/DbProjectionCaps.d.ts +1 -0
  110. package/dist/core/caps/DbProjectionCaps.d.ts.map +1 -1
  111. package/dist/core/caps/DbProjectionCaps.js +29 -0
  112. package/dist/core/caps/DbProjectionCaps.js.map +1 -1
  113. package/dist/core/caps/SchemeCtxImpl.d.ts +5 -2
  114. package/dist/core/caps/SchemeCtxImpl.d.ts.map +1 -1
  115. package/dist/core/caps/SchemeCtxImpl.js +6 -4
  116. package/dist/core/caps/SchemeCtxImpl.js.map +1 -1
  117. package/dist/core/content-hash.js +2 -2
  118. package/dist/core/content-hash.js.map +1 -1
  119. package/dist/core/content-weight.d.ts +2 -0
  120. package/dist/core/content-weight.d.ts.map +1 -0
  121. package/dist/core/content-weight.js +4 -0
  122. package/dist/core/content-weight.js.map +1 -0
  123. package/dist/core/content_weight.d.ts +4 -0
  124. package/dist/core/content_weight.d.ts.map +1 -0
  125. package/dist/core/content_weight.js +6 -0
  126. package/dist/core/content_weight.js.map +1 -0
  127. package/dist/core/fork.d.ts.map +1 -1
  128. package/dist/core/fork.js +23 -7
  129. package/dist/core/fork.js.map +1 -1
  130. package/dist/core/fork.sql +38 -17
  131. package/dist/core/git-membership.d.ts.map +1 -1
  132. package/dist/core/git-membership.js +1 -2
  133. package/dist/core/git-membership.js.map +1 -1
  134. package/dist/core/git-state.js +1 -1
  135. package/dist/core/git-state.js.map +1 -1
  136. package/dist/core/packet-wire.d.ts +6 -3
  137. package/dist/core/packet-wire.d.ts.map +1 -1
  138. package/dist/core/packet-wire.js +257 -99
  139. package/dist/core/packet-wire.js.map +1 -1
  140. package/dist/core/provider-accounting.d.ts +24 -0
  141. package/dist/core/provider-accounting.d.ts.map +1 -0
  142. package/dist/core/provider-accounting.js +76 -0
  143. package/dist/core/provider-accounting.js.map +1 -0
  144. package/dist/core/scheme-types.d.ts +1 -1
  145. package/dist/core/scheme-types.d.ts.map +1 -1
  146. package/dist/core/search-gate.d.ts +2 -2
  147. package/dist/core/search-gate.d.ts.map +1 -1
  148. package/dist/core/search-gate.js +8 -8
  149. package/dist/core/search-gate.js.map +1 -1
  150. package/dist/core/turn-scheduler.js +1 -1
  151. package/dist/core/turn-scheduler.js.map +1 -1
  152. package/dist/digest/Digest.d.ts.map +1 -1
  153. package/dist/digest/Digest.js +221 -110
  154. package/dist/digest/Digest.js.map +1 -1
  155. package/dist/digest/digest.sql +40 -18
  156. package/dist/schemes/Exec.d.ts.map +1 -1
  157. package/dist/schemes/Exec.js +136 -110
  158. package/dist/schemes/Exec.js.map +1 -1
  159. package/dist/schemes/ExecOutputScheme.js +1 -1
  160. package/dist/schemes/ExecOutputScheme.js.map +1 -1
  161. package/dist/schemes/File.d.ts +5 -4
  162. package/dist/schemes/File.d.ts.map +1 -1
  163. package/dist/schemes/File.js +25 -23
  164. package/dist/schemes/File.js.map +1 -1
  165. package/dist/schemes/Log.d.ts +11 -0
  166. package/dist/schemes/Log.d.ts.map +1 -1
  167. package/dist/schemes/Log.js +172 -107
  168. package/dist/schemes/Log.js.map +1 -1
  169. package/dist/schemes/Log.sql +48 -32
  170. package/dist/schemes/Prompt.d.ts +3 -3
  171. package/dist/schemes/Prompt.d.ts.map +1 -1
  172. package/dist/schemes/Prompt.js +4 -1
  173. package/dist/schemes/Prompt.js.map +1 -1
  174. package/dist/schemes/Skill.d.ts +4 -4
  175. package/dist/schemes/Skill.d.ts.map +1 -1
  176. package/dist/schemes/Skill.js +3 -0
  177. package/dist/schemes/Skill.js.map +1 -1
  178. package/dist/schemes/Worker.d.ts +4 -4
  179. package/dist/schemes/Worker.d.ts.map +1 -1
  180. package/dist/schemes/Worker.js +11 -7
  181. package/dist/schemes/Worker.js.map +1 -1
  182. package/dist/schemes/_entry-crud.d.ts +0 -1
  183. package/dist/schemes/_entry-crud.d.ts.map +1 -1
  184. package/dist/schemes/_entry-crud.js +19 -13
  185. package/dist/schemes/_entry-crud.js.map +1 -1
  186. package/dist/schemes/_entry-crud.sql +4 -16
  187. package/dist/schemes/_entry-find.d.ts +17 -16
  188. package/dist/schemes/_entry-find.d.ts.map +1 -1
  189. package/dist/schemes/_entry-find.js +58 -52
  190. package/dist/schemes/_entry-find.js.map +1 -1
  191. package/dist/schemes/_entry-find.sql +2 -21
  192. package/dist/schemes/_entry-graph.sql +1 -1
  193. package/dist/schemes/_entry-manifest.d.ts +5 -17
  194. package/dist/schemes/_entry-manifest.d.ts.map +1 -1
  195. package/dist/schemes/_entry-manifest.js +32 -28
  196. package/dist/schemes/_entry-manifest.js.map +1 -1
  197. package/dist/schemes/_entry-ops.d.ts +5 -4
  198. package/dist/schemes/_entry-ops.d.ts.map +1 -1
  199. package/dist/schemes/_entry-ops.js +89 -49
  200. package/dist/schemes/_entry-ops.js.map +1 -1
  201. package/dist/schemes/_entry-ops.sql +30 -4
  202. package/dist/schemes/_entry-send.js +4 -4
  203. package/dist/schemes/_entry-send.js.map +1 -1
  204. package/dist/schemes/_search-index.d.ts.map +1 -1
  205. package/dist/schemes/_search-index.js +10 -2
  206. package/dist/schemes/_search-index.js.map +1 -1
  207. package/dist/schemes/exec-abort.js +2 -2
  208. package/dist/schemes/exec-abort.js.map +1 -1
  209. package/dist/server/Daemon.d.ts +7 -42
  210. package/dist/server/Daemon.d.ts.map +1 -1
  211. package/dist/server/Daemon.js +139 -900
  212. package/dist/server/Daemon.js.map +1 -1
  213. package/dist/server/DrainSupervisor.d.ts +117 -0
  214. package/dist/server/DrainSupervisor.d.ts.map +1 -0
  215. package/dist/server/DrainSupervisor.js +802 -0
  216. package/dist/server/DrainSupervisor.js.map +1 -0
  217. package/dist/server/drain.sql +2 -2
  218. package/dist/server/envelope.d.ts +0 -2
  219. package/dist/server/envelope.d.ts.map +1 -1
  220. package/dist/server/envelope.js.map +1 -1
  221. package/dist/server/envelope.sql +2 -2
  222. package/dist/server/lifecycle-recovery.sql +28 -15
  223. package/dist/server/logEntry.d.ts +2 -1
  224. package/dist/server/logEntry.d.ts.map +1 -1
  225. package/dist/server/logEntry.js +14 -2
  226. package/dist/server/logEntry.js.map +1 -1
  227. package/dist/server/logEntry.sql +5 -1
  228. package/dist/server/seam-entry-read.sql +2 -2
  229. package/dist/service.js +1 -1
  230. package/dist/service.js.map +1 -1
  231. package/migrations/001_schema.sql +622 -216
  232. package/package.json +39 -34
  233. package/dist/core/BudgetOverflow.d.ts +0 -20
  234. package/dist/core/BudgetOverflow.d.ts.map +0 -1
  235. package/dist/core/BudgetOverflow.js +0 -49
  236. package/dist/core/BudgetOverflow.js.map +0 -1
  237. package/dist/core/caps/DbTagCaps.d.ts +0 -10
  238. package/dist/core/caps/DbTagCaps.d.ts.map +0 -1
  239. package/dist/core/caps/DbTagCaps.js +0 -46
  240. package/dist/core/caps/DbTagCaps.js.map +0 -1
  241. package/dist/core/ruler_count.d.ts +0 -4
  242. package/dist/core/ruler_count.d.ts.map +0 -1
  243. package/dist/core/ruler_count.js +0 -7
  244. package/dist/core/ruler_count.js.map +0 -1
  245. package/dist/core/token-ruler.d.ts +0 -2
  246. package/dist/core/token-ruler.d.ts.map +0 -1
  247. package/dist/core/token-ruler.js +0 -5
  248. package/dist/core/token-ruler.js.map +0 -1
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plurnk/plurnk-service",
3
- "version": "1.5.0",
3
+ "version": "1.6.1",
4
4
  "description": "Plurnk agent runtime — the server / engine / core. Implements the @plurnk/plurnk-contracts contract.",
5
5
  "type": "module",
6
6
  "license": "MIT",
@@ -43,10 +43,15 @@
43
43
  "test:lint": "npm run types:sqlrite:check && tsc --noEmit && tsc --noEmit -p tsconfig.test.json",
44
44
  "test:unit": "node --conditions=plurnk-dev --import=./test/setup.ts --env-file-if-exists=.env.defaults --test --test-timeout=30000 scripts/*.test.mjs src/**/*.test.ts",
45
45
  "test:intg": "PLURNK_SERVICE_FILES_ITEMS=0 node --conditions=plurnk-dev --import=./test/setup.ts --env-file-if-exists=.env.defaults --test --test-concurrency=8 --test-timeout=30000 test/intg/*.test.ts",
46
+ "build:rail": "npm run build:gbnf -w @plurnk/plurnk-contracts",
47
+ "pretest:live": "npm run build:rail",
46
48
  "test:live": "bash ../scripts/operator-environment.sh node --conditions=plurnk-dev scripts/live.mjs",
49
+ "pretest:live:specimen": "npm run build:rail",
47
50
  "test:live:specimen": "bash ../scripts/operator-environment.sh node --conditions=plurnk-dev scripts/live.mjs --specimen",
48
51
  "test:live:zeropin": "PLURNK_ZERO_PIN=1 npm run test:live",
52
+ "pretest:demo": "npm run build:rail",
49
53
  "test:demo": "bash ../scripts/operator-environment.sh env PLURNK_SERVICE_POLICY=../plurnk-meta/PLURNK_PERSONALITY.md node --conditions=plurnk-dev --import=./test/floor.ts --env-file-if-exists=.env.defaults --env-file-if-exists=$HOME/.plurnk/.env --env-file-if-exists=.env --env-file-if-exists=.env.test --test --test-concurrency=1 test/demo/*.test.ts",
54
+ "pretest:demo:zeropin": "npm run build:rail",
50
55
  "test:demo:zeropin": "bash ../scripts/operator-environment.sh env PLURNK_ZERO_PIN=1 PLURNK_SERVICE_POLICY=../plurnk-meta/PLURNK_PERSONALITY.md node --conditions=plurnk-dev --import=./test/floor.ts --env-file-if-exists=.env.defaults --env-file-if-exists=$HOME/.plurnk/.env --env-file-if-exists=.env --env-file-if-exists=.env.test --test --test-concurrency=1 test/demo/*.test.ts",
51
56
  "test:benchlet": "node scripts/benchlet.mjs",
52
57
  "fixture:demo": "node --conditions=plurnk-dev test/demo/_fixture.ts",
@@ -77,42 +82,42 @@
77
82
  "@opentelemetry/resources": "^2.10.0",
78
83
  "@opentelemetry/sdk-metrics": "^2.10.0",
79
84
  "@opentelemetry/sdk-trace-base": "^2.10.0",
80
- "@plurnk/gbnf": "1.5.0",
81
- "@plurnk/plurnk-agui": "1.5.0",
82
- "@plurnk/plurnk-contracts": "1.5.0",
83
- "@plurnk/plurnk-execs": "1.5.0",
84
- "@plurnk/plurnk-execs-common": "1.5.0",
85
- "@plurnk/plurnk-execs-git": "1.5.0",
86
- "@plurnk/plurnk-execs-jq": "1.5.0",
87
- "@plurnk/plurnk-execs-search": "1.5.0",
88
- "@plurnk/plurnk-execs-sqlite": "1.5.0",
89
- "@plurnk/plurnk-execs-wasm": "1.5.0",
90
- "@plurnk/plurnk-hooks": "1.5.0",
91
- "@plurnk/plurnk-mcp": "1.5.0",
92
- "@plurnk/plurnk-meta": "1.5.0",
93
- "@plurnk/plurnk-mimetypes": "1.5.0",
94
- "@plurnk/plurnk-mimetypes-application-ipynb": "1.5.0",
95
- "@plurnk/plurnk-mimetypes-application-json": "1.5.0",
96
- "@plurnk/plurnk-mimetypes-application-jsonl": "1.5.0",
97
- "@plurnk/plurnk-mimetypes-application-pdf": "1.5.0",
98
- "@plurnk/plurnk-mimetypes-application-xml": "1.5.0",
99
- "@plurnk/plurnk-mimetypes-embeddings": "1.5.0",
100
- "@plurnk/plurnk-mimetypes-text-csv": "1.5.0",
101
- "@plurnk/plurnk-mimetypes-text-diff": "1.5.0",
102
- "@plurnk/plurnk-mimetypes-text-dotenv": "1.5.0",
103
- "@plurnk/plurnk-mimetypes-text-html": "1.5.0",
104
- "@plurnk/plurnk-mimetypes-text-ini": "1.5.0",
105
- "@plurnk/plurnk-mimetypes-text-markdown": "1.5.0",
106
- "@plurnk/plurnk-mimetypes-text-plain": "1.5.0",
107
- "@plurnk/plurnk-mimetypes-tokenizers": "1.5.0",
108
- "@plurnk/plurnk-models": "1.5.0",
109
- "@plurnk/plurnk-providers": "1.5.0",
110
- "@plurnk/plurnk-schemes": "1.5.0",
111
- "@plurnk/plurnk-schemes-http": "1.5.0",
85
+ "@plurnk/gbnf": "1.6.1",
86
+ "@plurnk/plurnk-agui": "1.6.1",
87
+ "@plurnk/plurnk-contracts": "1.6.1",
88
+ "@plurnk/plurnk-execs": "1.6.1",
89
+ "@plurnk/plurnk-execs-common": "1.6.1",
90
+ "@plurnk/plurnk-execs-git": "1.6.1",
91
+ "@plurnk/plurnk-execs-jq": "1.6.1",
92
+ "@plurnk/plurnk-execs-search": "1.6.1",
93
+ "@plurnk/plurnk-execs-sqlite": "1.6.1",
94
+ "@plurnk/plurnk-execs-wasm": "1.6.1",
95
+ "@plurnk/plurnk-hooks": "1.6.1",
96
+ "@plurnk/plurnk-mcp": "1.6.1",
97
+ "@plurnk/plurnk-meta": "1.6.1",
98
+ "@plurnk/plurnk-mimetypes": "1.6.1",
99
+ "@plurnk/plurnk-mimetypes-application-ipynb": "1.6.1",
100
+ "@plurnk/plurnk-mimetypes-application-json": "1.6.1",
101
+ "@plurnk/plurnk-mimetypes-application-jsonl": "1.6.1",
102
+ "@plurnk/plurnk-mimetypes-application-pdf": "1.6.1",
103
+ "@plurnk/plurnk-mimetypes-application-xml": "1.6.1",
104
+ "@plurnk/plurnk-mimetypes-embeddings": "1.6.1",
105
+ "@plurnk/plurnk-mimetypes-text-csv": "1.6.1",
106
+ "@plurnk/plurnk-mimetypes-text-diff": "1.6.1",
107
+ "@plurnk/plurnk-mimetypes-text-dotenv": "1.6.1",
108
+ "@plurnk/plurnk-mimetypes-text-html": "1.6.1",
109
+ "@plurnk/plurnk-mimetypes-text-ini": "1.6.1",
110
+ "@plurnk/plurnk-mimetypes-text-markdown": "1.6.1",
111
+ "@plurnk/plurnk-mimetypes-text-plain": "1.6.1",
112
+ "@plurnk/plurnk-mimetypes-tokenizers": "1.6.1",
113
+ "@plurnk/plurnk-models": "1.6.1",
114
+ "@plurnk/plurnk-providers": "1.6.1",
115
+ "@plurnk/plurnk-schemes": "1.6.1",
116
+ "@plurnk/plurnk-schemes-http": "1.6.1",
112
117
  "@possumtech/sqlrite": "^6.5.2",
113
118
  "diff": "^9.0.0",
114
119
  "ignore": "7.0.6",
115
- "isomorphic-git": "1.41.3"
120
+ "isomorphic-git": "1.41.4"
116
121
  },
117
122
  "devDependencies": {
118
123
  "@opentelemetry/core": "^2.10.0",
@@ -1,20 +0,0 @@
1
- import { type OperationResult } from "@plurnk/plurnk-contracts";
2
- export interface BudgetOverflowMeasurement {
3
- readonly usage: number;
4
- readonly ceiling: number;
5
- readonly deficit: number;
6
- }
7
- export interface BudgetOverflowPhysicalFailure {
8
- readonly reason: string;
9
- readonly detail: string;
10
- readonly capacity: number | null;
11
- readonly tokens?: number;
12
- readonly tokenKind?: string;
13
- readonly tokenSource?: string;
14
- }
15
- export default class BudgetOverflow {
16
- static measure(usage: number, ceiling: number): BudgetOverflowMeasurement;
17
- static result(usage: number, ceiling: number, recovery: boolean, physical?: BudgetOverflowPhysicalFailure): OperationResult;
18
- static foldedResult(usage: number, ceiling: number): OperationResult;
19
- }
20
- //# sourceMappingURL=BudgetOverflow.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BudgetOverflow.d.ts","sourceRoot":"","sources":["../../src/core/BudgetOverflow.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,eAAe,EACvB,MAAM,0BAA0B,CAAC;AAElC,MAAM,WAAW,yBAAyB;IACtC,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC5B;AAED,MAAM,WAAW,6BAA6B;IAC1C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,QAAQ,CAAC,MAAM,CAAC,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;CACjC;AAID,MAAM,CAAC,OAAO,OAAO,cAAc;IAC/B,MAAM,CAAC,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,yBAAyB,CAMxE;IAED,MAAM,CAAC,MAAM,CACT,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,EACf,QAAQ,EAAE,OAAO,EACjB,QAAQ,CAAC,EAAE,6BAA6B,GACzC,eAAe,CA8BjB;IAED,MAAM,CAAC,YAAY,CACf,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,MAAM,GAChB,eAAe,CAmBjB;CACJ"}
@@ -1,49 +0,0 @@
1
- import { Problems, Validator, } from "@plurnk/plurnk-contracts";
2
- const formatTokens = (tokens) => tokens.toLocaleString("en-US");
3
- export default class BudgetOverflow {
4
- static measure(usage, ceiling) {
5
- return {
6
- usage,
7
- ceiling,
8
- deficit: Math.max(0, usage - ceiling),
9
- };
10
- }
11
- static result(usage, ceiling, recovery, physical) {
12
- const measurement = BudgetOverflow.measure(usage, ceiling);
13
- const physicalDetail = physical === undefined
14
- ? ""
15
- : ` Physical recovery was not admitted: ${physical.detail}.`;
16
- return Validator.assertOperationResult({
17
- status: 413,
18
- problem: Problems.create("engine:grinder", "budget-overflow", 413, `At overflow detection, Token Usage ${formatTokens(measurement.usage)} exceeds Token Ceiling ${formatTokens(measurement.ceiling)} by ${formatTokens(measurement.deficit)}. No working room remains.${physicalDetail}`, {
19
- ...measurement,
20
- stage: "overflow-detection",
21
- retryable: false,
22
- ...(physical === undefined ? {} : {
23
- physicalAdmission: physical.reason,
24
- physicalCapacity: physical.capacity,
25
- ...(physical.tokens === undefined ? {} : { physicalTokens: physical.tokens }),
26
- ...(physical.tokenKind === undefined ? {} : { physicalTokenKind: physical.tokenKind }),
27
- ...(physical.tokenSource === undefined ? {} : { physicalTokenSource: physical.tokenSource }),
28
- }),
29
- ...(recovery ? {
30
- recovery: "Restore working room before the next turn: FOLD or KILL irrelevant log items, or use smaller retrieval ranges.",
31
- } : {}),
32
- }, { title: "Prompt budget exceeded" }),
33
- });
34
- }
35
- static foldedResult(usage, ceiling) {
36
- const measurement = BudgetOverflow.measure(usage, ceiling);
37
- return Validator.assertOperationResult({
38
- status: 413,
39
- problem: Problems.create("engine:grinder", "budget-overflow", 413, `At overflow detection, Token Usage ${formatTokens(measurement.usage)} exceeded Token Ceiling ${formatTokens(measurement.ceiling)} by ${formatTokens(measurement.deficit)}. The newest open log items were FOLDed, and the rebuilt packet now fits.`, {
40
- ...measurement,
41
- stage: "overflow-detection",
42
- resolution: "newest-log-items-folded",
43
- recovery: "Keep irrelevant log items FOLDed or KILL them, and use smaller retrieval ranges.",
44
- retryable: false,
45
- }, { title: "Prompt budget exceeded" }),
46
- });
47
- }
48
- }
49
- //# sourceMappingURL=BudgetOverflow.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"BudgetOverflow.js","sourceRoot":"","sources":["../../src/core/BudgetOverflow.ts"],"names":[],"mappings":"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"}
@@ -1,10 +0,0 @@
1
- import { type SchemeResult, type TagCaps, type TagListResult } from "@plurnk/plurnk-schemes";
2
- import type { PlurnkSchemeContext } from "../scheme-types.ts";
3
- export default class DbTagCaps implements TagCaps {
4
- #private;
5
- constructor(ctx: PlurnkSchemeContext, scheme: string, ownerId?: number);
6
- add(pathname: string, tags: ReadonlyArray<string>): Promise<SchemeResult>;
7
- remove(pathname: string, tags: ReadonlyArray<string>): Promise<SchemeResult>;
8
- list(pathname: string): Promise<TagListResult>;
9
- }
10
- //# sourceMappingURL=DbTagCaps.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DbTagCaps.d.ts","sourceRoot":"","sources":["../../../src/core/caps/DbTagCaps.ts"],"names":[],"mappings":"AAMA,OAAO,EAAW,KAAK,YAAY,EAAE,KAAK,OAAO,EAAE,KAAK,aAAa,EAAE,MAAM,wBAAwB,CAAC;AACtG,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAI9D,MAAM,CAAC,OAAO,OAAO,SAAU,YAAW,OAAO;;IAK7C,YAAY,GAAG,EAAE,mBAAmB,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,EAIrE;IAcK,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAK9E;IAEK,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,aAAa,CAAC,MAAM,CAAC,GAAG,OAAO,CAAC,YAAY,CAAC,CAKjF;IAEK,IAAI,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC,CAKnD;CACJ"}
@@ -1,46 +0,0 @@
1
- // Db-backed implementation of the tag namespace in plurnk-schemes
2
- // {§capability-ctx}.
3
- // add/remove/list folksonomic tags on an entry, addressed by pathname. add is
4
- // INSERT OR IGNORE (idempotent — re-adding a tag is a no-op); list returns them
5
- // tag-sorted; remove drops the named tags. Absent entry → 404.
6
- import { Results } from "@plurnk/plurnk-schemes";
7
- import CapsResolve from "./CapsResolve.js";
8
- import { renderAddress } from "../plurnk-uri.js";
9
- export default class DbTagCaps {
10
- #ctx;
11
- #scheme;
12
- #ownerId;
13
- constructor(ctx, scheme, ownerId) {
14
- this.#ctx = ctx;
15
- this.#scheme = scheme;
16
- this.#ownerId = ownerId;
17
- }
18
- #missing(pathname, fields = {}) {
19
- const target = renderAddress(this.#scheme, pathname);
20
- return Results.failure(`scheme:${this.#scheme}`, "entry-not-found", 404, `No entry exists at ${target}.`, fields, { target });
21
- }
22
- async add(pathname, tags) {
23
- const entryId = await CapsResolve.entryId(this.#ctx, this.#scheme, pathname, this.#ownerId);
24
- if (entryId === null)
25
- return this.#missing(pathname);
26
- for (const tag of tags)
27
- await this.#ctx.db.crud_write_tag.run({ entry_id: entryId, tag });
28
- return Results.assert({ status: 200 });
29
- }
30
- async remove(pathname, tags) {
31
- const entryId = await CapsResolve.entryId(this.#ctx, this.#scheme, pathname, this.#ownerId);
32
- if (entryId === null)
33
- return this.#missing(pathname);
34
- for (const tag of tags)
35
- await this.#ctx.db.crud_delete_tag.run({ entry_id: entryId, tag });
36
- return Results.assert({ status: 200 });
37
- }
38
- async list(pathname) {
39
- const entryId = await CapsResolve.entryId(this.#ctx, this.#scheme, pathname, this.#ownerId);
40
- if (entryId === null)
41
- return this.#missing(pathname, { tags: [] });
42
- const rows = await this.#ctx.db.crud_read_tags.all({ entry_id: entryId });
43
- return Results.assert({ status: 200, tags: rows.map((r) => r.tag) });
44
- }
45
- }
46
- //# sourceMappingURL=DbTagCaps.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"DbTagCaps.js","sourceRoot":"","sources":["../../../src/core/caps/DbTagCaps.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import { rulerCount } from "./token-ruler.ts";
2
- export declare const deterministic = true;
3
- export default rulerCount;
4
- //# sourceMappingURL=ruler_count.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ruler_count.d.ts","sourceRoot":"","sources":["../../src/core/ruler_count.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,eAAO,MAAM,aAAa,OAAO,CAAC;eACnB,UAAU"}
@@ -1,7 +0,0 @@
1
- // SqlRite custom-function adapter for the one model-independent ruler.
2
- // The filename deliberately owns the SQL function name `ruler_count`;
3
- // deterministic marks the pure function as safe for SQLite optimization.
4
- import { rulerCount } from "./token-ruler.js";
5
- export const deterministic = true;
6
- export default rulerCount;
7
- //# sourceMappingURL=ruler_count.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ruler_count.js","sourceRoot":"","sources":["../../src/core/ruler_count.ts"],"names":[],"mappings":"AAAA,uEAAuE;AACvE,sEAAsE;AACtE,yEAAyE;AACzE,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C,MAAM,CAAC,MAAM,aAAa,GAAG,IAAI,CAAC;AAClC,eAAe,UAAU,CAAC"}
@@ -1,2 +0,0 @@
1
- export declare const rulerCount: (text: string) => number;
2
- //# sourceMappingURL=token-ruler.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-ruler.d.ts","sourceRoot":"","sources":["../../src/core/token-ruler.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU,SAAU,MAAM,KAAG,MAAoC,CAAC"}
@@ -1,5 +0,0 @@
1
- // {§tokenomics-agnostic-ruler}: one model-independent unit for packet render-weight
2
- // and stored content-depth. Mixed-model workers share workspace accounting, so these
3
- // values never vary by provider. Physical recovery admission is separate and provider-owned.
4
- export const rulerCount = (text) => Math.ceil(text.length / 2);
5
- //# sourceMappingURL=token-ruler.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"token-ruler.js","sourceRoot":"","sources":["../../src/core/token-ruler.ts"],"names":[],"mappings":"AAAA,oFAAoF;AACpF,qFAAqF;AACrF,6FAA6F;AAC7F,MAAM,CAAC,MAAM,UAAU,GAAG,CAAC,IAAY,EAAU,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC"}