attention-manifest-protocol 0.4.2 → 0.4.4

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 (809) hide show
  1. package/CHANGELOG.md +341 -293
  2. package/CHANGELOG.zh-CN.md +41 -8
  3. package/README.md +250 -171
  4. package/README.zh-CN.md +251 -171
  5. package/lib/assignment/assign.d.ts +102 -0
  6. package/lib/assignment/assign.js +556 -0
  7. package/lib/assignment/binding.d.ts +103 -0
  8. package/lib/assignment/binding.js +575 -0
  9. package/lib/assignment/errors.d.ts +14 -0
  10. package/lib/assignment/errors.js +16 -0
  11. package/lib/assignment/guards.d.ts +18 -0
  12. package/lib/assignment/guards.js +28 -0
  13. package/lib/assignment/index.d.ts +10 -0
  14. package/lib/assignment/index.js +10 -0
  15. package/lib/assignment/types.d.ts +169 -0
  16. package/lib/assignment/types.js +1 -0
  17. package/lib/attention/budget.d.ts +1 -1
  18. package/lib/attention/budget.js +31 -9
  19. package/lib/bayes/engine.js +2 -1
  20. package/lib/bayes/reliability.js +25 -10
  21. package/lib/boundary/frame.d.ts +10 -4
  22. package/lib/boundary/frame.js +346 -109
  23. package/lib/boundary/kinds.d.ts +11 -0
  24. package/lib/boundary/kinds.js +33 -0
  25. package/lib/boundary/refTable.d.ts +19 -9
  26. package/lib/boundary/refTable.js +128 -30
  27. package/lib/boundary/toolCall.d.ts +22 -10
  28. package/lib/boundary/toolCall.js +798 -97
  29. package/lib/concept/conceptBudget.js +10 -1
  30. package/lib/concurrency/idempotency.d.ts +4 -3
  31. package/lib/concurrency/idempotency.js +57 -13
  32. package/lib/concurrency/retry.js +18 -3
  33. package/lib/context/agentContext.d.ts +13 -0
  34. package/lib/context/agentContext.js +14 -1
  35. package/lib/context/ast.d.ts +4 -1
  36. package/lib/context/ast.js +13 -3
  37. package/lib/context/contentStore.js +22 -9
  38. package/lib/context/contextBuilder.d.ts +457 -0
  39. package/lib/context/contextBuilder.js +1395 -0
  40. package/lib/context/contextPackage.d.ts +214 -0
  41. package/lib/context/contextPackage.js +191 -0
  42. package/lib/context/index.d.ts +14 -3
  43. package/lib/context/index.js +9 -1
  44. package/lib/context/relevance.d.ts +171 -0
  45. package/lib/context/relevance.js +250 -0
  46. package/lib/context/workspaceDiff.d.ts +105 -0
  47. package/lib/context/workspaceDiff.js +238 -0
  48. package/lib/context/workspaceService.d.ts +236 -1
  49. package/lib/context/workspaceService.js +1501 -73
  50. package/lib/cooperation/collaboration.d.ts +9 -0
  51. package/lib/cooperation/session.d.ts +4 -4
  52. package/lib/cooperation/session.js +3 -3
  53. package/lib/database/adapter/filesystemStore.d.ts +145 -0
  54. package/lib/database/adapter/filesystemStore.js +321 -0
  55. package/lib/database/adapter/index.d.ts +2 -0
  56. package/lib/database/adapter/index.js +2 -0
  57. package/lib/database/adapter/workspaceSessionStore.d.ts +118 -0
  58. package/lib/database/adapter/workspaceSessionStore.js +120 -0
  59. package/lib/database/entity/fileGraph.d.ts +53 -0
  60. package/lib/database/entity/fileGraph.js +15 -0
  61. package/lib/database/entity/fileTree.d.ts +76 -0
  62. package/lib/database/entity/fileTree.js +39 -0
  63. package/lib/database/entity/hook.d.ts +29 -0
  64. package/lib/database/entity/hook.js +18 -0
  65. package/lib/database/entity/index.d.ts +4 -0
  66. package/lib/database/entity/index.js +4 -0
  67. package/lib/database/entity/workspaceSession.d.ts +53 -0
  68. package/lib/database/entity/workspaceSession.js +28 -0
  69. package/lib/database/repository/fileAnnotationRepository.d.ts +75 -0
  70. package/lib/database/repository/fileAnnotationRepository.js +109 -0
  71. package/lib/database/repository/fileGraphRepository.d.ts +188 -0
  72. package/lib/database/repository/fileGraphRepository.js +648 -0
  73. package/lib/database/repository/fileNodeRepository.d.ts +116 -0
  74. package/lib/database/repository/fileNodeRepository.js +263 -0
  75. package/lib/database/repository/fileOutlineRepository.d.ts +40 -0
  76. package/lib/database/repository/fileOutlineRepository.js +104 -0
  77. package/lib/database/repository/fileWriteRepository.d.ts +41 -0
  78. package/lib/database/repository/fileWriteRepository.js +93 -0
  79. package/lib/database/repository/hookRepository.d.ts +67 -0
  80. package/lib/database/repository/hookRepository.js +150 -0
  81. package/lib/database/repository/index.d.ts +7 -0
  82. package/lib/database/repository/index.js +7 -0
  83. package/lib/database/repository/workspaceSessionRepository.d.ts +134 -0
  84. package/lib/database/repository/workspaceSessionRepository.js +327 -0
  85. package/lib/database/service/database.d.ts +14 -0
  86. package/lib/database/service/database.js +21 -0
  87. package/lib/database/sql/schema.js +187 -0
  88. package/lib/database/store/database.js +6 -1
  89. package/lib/delegate/team.d.ts +5 -0
  90. package/lib/delegate/team.js +83 -20
  91. package/lib/discover/classify.d.ts +20 -0
  92. package/lib/discover/classify.js +85 -0
  93. package/lib/discover/host.d.ts +20 -0
  94. package/lib/discover/host.js +89 -0
  95. package/lib/discover/index.d.ts +11 -0
  96. package/lib/discover/index.js +11 -0
  97. package/lib/discover/kinds.d.ts +14 -0
  98. package/lib/discover/kinds.js +23 -0
  99. package/lib/discover/tree.d.ts +7 -0
  100. package/lib/discover/tree.js +432 -0
  101. package/lib/discover/types.d.ts +115 -0
  102. package/lib/discover/types.js +1 -0
  103. package/lib/error/boundaryRejection.d.ts +1 -1
  104. package/lib/evaluation/agreement.js +2 -2
  105. package/lib/execution/handles.js +6 -0
  106. package/lib/execution/pin.js +2 -2
  107. package/lib/file/cfb.d.ts +56 -0
  108. package/lib/file/cfb.js +396 -0
  109. package/lib/file/dependency.d.ts +151 -0
  110. package/lib/file/dependency.js +568 -0
  111. package/lib/file/directory.d.ts +34 -0
  112. package/lib/file/directory.js +141 -0
  113. package/lib/file/errors.d.ts +20 -0
  114. package/lib/file/errors.js +18 -0
  115. package/lib/file/exportGraph.d.ts +31 -0
  116. package/lib/file/exportGraph.js +554 -0
  117. package/lib/file/file.d.ts +40 -0
  118. package/lib/file/file.js +339 -0
  119. package/lib/file/importGraph.d.ts +121 -0
  120. package/lib/file/importGraph.js +1022 -0
  121. package/lib/file/index.d.ts +45 -0
  122. package/lib/file/index.js +30 -0
  123. package/lib/file/metadata.d.ts +66 -0
  124. package/lib/file/metadata.js +470 -0
  125. package/lib/file/path.d.ts +60 -0
  126. package/lib/file/path.js +259 -0
  127. package/lib/file/read.d.ts +168 -0
  128. package/lib/file/read.js +541 -0
  129. package/lib/file/runtime.d.ts +95 -0
  130. package/lib/file/runtime.js +150 -0
  131. package/lib/file/service.d.ts +227 -0
  132. package/lib/file/service.js +663 -0
  133. package/lib/file/syntaxTree.d.ts +7 -0
  134. package/lib/file/syntaxTree.js +38 -0
  135. package/lib/file/time.d.ts +38 -0
  136. package/lib/file/time.js +44 -0
  137. package/lib/file/tree.d.ts +53 -0
  138. package/lib/file/tree.js +417 -0
  139. package/lib/file/types.d.ts +371 -0
  140. package/lib/file/types.js +1 -0
  141. package/lib/file/write.d.ts +159 -0
  142. package/lib/file/write.js +1028 -0
  143. package/lib/file/zip.d.ts +35 -0
  144. package/lib/file/zip.js +349 -0
  145. package/lib/fingerprint/algorithm.d.ts +97 -0
  146. package/lib/fingerprint/algorithm.js +271 -0
  147. package/lib/fingerprint/bytes.d.ts +18 -0
  148. package/lib/fingerprint/bytes.js +31 -0
  149. package/lib/fingerprint/error.d.ts +73 -0
  150. package/lib/fingerprint/error.js +86 -0
  151. package/lib/fingerprint/file.d.ts +71 -0
  152. package/lib/fingerprint/file.js +254 -0
  153. package/lib/fingerprint/index.d.ts +37 -0
  154. package/lib/fingerprint/index.js +12 -0
  155. package/lib/fingerprint/json.d.ts +41 -0
  156. package/lib/fingerprint/json.js +94 -0
  157. package/lib/fingerprint/number.d.ts +32 -0
  158. package/lib/fingerprint/number.js +95 -0
  159. package/lib/fingerprint/policy.d.ts +54 -0
  160. package/lib/fingerprint/policy.js +50 -0
  161. package/lib/fingerprint/preimage.d.ts +84 -0
  162. package/lib/fingerprint/preimage.js +133 -0
  163. package/lib/fingerprint/raw.d.ts +26 -0
  164. package/lib/fingerprint/raw.js +45 -0
  165. package/lib/fingerprint/ref.d.ts +39 -0
  166. package/lib/fingerprint/ref.js +178 -0
  167. package/lib/fingerprint/text.d.ts +42 -0
  168. package/lib/fingerprint/text.js +155 -0
  169. package/lib/fingerprint/tree.d.ts +56 -0
  170. package/lib/fingerprint/tree.js +288 -0
  171. package/lib/fingerprint/verify.d.ts +20 -0
  172. package/lib/fingerprint/verify.js +99 -0
  173. package/lib/global/filesystem.d.ts +43 -0
  174. package/lib/global/filesystem.js +75 -0
  175. package/lib/global/index.d.ts +8 -0
  176. package/lib/global/index.js +8 -0
  177. package/lib/global/service.d.ts +51 -0
  178. package/lib/global/service.js +98 -0
  179. package/lib/governance/transport.js +18 -6
  180. package/lib/hook/ast.d.ts +29 -0
  181. package/lib/hook/ast.js +22 -0
  182. package/lib/hook/code.d.ts +55 -0
  183. package/lib/hook/code.js +47 -0
  184. package/lib/hook/dependency.d.ts +45 -0
  185. package/lib/hook/dependency.js +28 -0
  186. package/lib/hook/diff.d.ts +114 -0
  187. package/lib/hook/diff.js +327 -0
  188. package/lib/hook/exportation.d.ts +31 -0
  189. package/lib/hook/exportation.js +24 -0
  190. package/lib/hook/file.d.ts +44 -0
  191. package/lib/hook/file.js +154 -0
  192. package/lib/hook/importation.d.ts +33 -0
  193. package/lib/hook/importation.js +22 -0
  194. package/lib/hook/index.d.ts +30 -0
  195. package/lib/hook/index.js +23 -0
  196. package/lib/hook/outline.d.ts +35 -0
  197. package/lib/hook/outline.js +27 -0
  198. package/lib/hook/project.d.ts +65 -0
  199. package/lib/hook/project.js +217 -0
  200. package/lib/hook/types.d.ts +114 -0
  201. package/lib/hook/types.js +407 -0
  202. package/lib/index.d.ts +9 -0
  203. package/lib/index.js +9 -0
  204. package/lib/lock/lease.js +28 -3
  205. package/lib/manifest/cardSign.d.ts +1 -1
  206. package/lib/manifest/cardSign.js +37 -7
  207. package/lib/manifest/federation.js +13 -6
  208. package/lib/manifest/trust.d.ts +2 -0
  209. package/lib/manifest/trust.js +27 -6
  210. package/lib/module/index.d.ts +4 -0
  211. package/lib/module/index.js +4 -0
  212. package/lib/module/mcp/client.js +21 -2
  213. package/lib/module/mcp/filesystemServer.d.ts +24 -0
  214. package/lib/module/mcp/filesystemServer.js +102 -0
  215. package/lib/module/mcp/http.js +32 -19
  216. package/lib/module/mcp/workspaceServer.js +20 -3
  217. package/lib/module/tool/filesystemExecutor.d.ts +18 -0
  218. package/lib/module/tool/filesystemExecutor.js +49 -0
  219. package/lib/module/tool/globalExecutor.d.ts +17 -0
  220. package/lib/module/tool/globalExecutor.js +39 -0
  221. package/lib/module/tool/globalFilesystemExecutor.d.ts +18 -0
  222. package/lib/module/tool/globalFilesystemExecutor.js +49 -0
  223. package/lib/module/tool/workspaceExecutor.d.ts +9 -0
  224. package/lib/module/tool/workspaceExecutor.js +16 -3
  225. package/lib/naming/aliases.d.ts +48 -0
  226. package/lib/naming/aliases.js +79 -0
  227. package/lib/naming/catalog.d.ts +117 -0
  228. package/lib/naming/catalog.js +108 -0
  229. package/lib/naming/grammar.d.ts +67 -0
  230. package/lib/naming/grammar.js +212 -0
  231. package/lib/naming/ids.d.ts +157 -0
  232. package/lib/naming/ids.js +119 -0
  233. package/lib/naming/index.d.ts +13 -0
  234. package/lib/naming/index.js +13 -0
  235. package/lib/outline/index.d.ts +9 -0
  236. package/lib/outline/index.js +8 -0
  237. package/lib/outline/office.d.ts +160 -0
  238. package/lib/outline/office.js +2375 -0
  239. package/lib/outline/officeBridge.d.ts +32 -0
  240. package/lib/outline/officeBridge.js +27 -0
  241. package/lib/outline/outline.d.ts +159 -0
  242. package/lib/outline/outline.js +837 -0
  243. package/lib/outline/outlineIndex.d.ts +97 -0
  244. package/lib/outline/outlineIndex.js +325 -0
  245. package/lib/outline/outlineKeywords.d.ts +59 -0
  246. package/lib/outline/outlineKeywords.js +143 -0
  247. package/lib/outline/outlineStrategies.d.ts +414 -0
  248. package/lib/outline/outlineStrategies.js +8324 -0
  249. package/lib/outline/reactOutline.d.ts +37 -0
  250. package/lib/outline/reactOutline.js +1070 -0
  251. package/lib/outline/shellOutline.d.ts +65 -0
  252. package/lib/outline/shellOutline.js +873 -0
  253. package/lib/outline/sqlOutline.d.ts +170 -0
  254. package/lib/outline/sqlOutline.js +1536 -0
  255. package/lib/outline/strategy.d.ts +46 -0
  256. package/lib/outline/strategy.js +1 -0
  257. package/lib/outline/types.d.ts +95 -0
  258. package/lib/outline/types.js +1 -0
  259. package/lib/outline/visualBasicOutline.d.ts +27 -0
  260. package/lib/outline/visualBasicOutline.js +750 -0
  261. package/lib/protocol/filesystem.d.ts +55 -0
  262. package/lib/protocol/filesystem.js +105 -0
  263. package/lib/protocol/global.d.ts +42 -0
  264. package/lib/protocol/global.js +63 -0
  265. package/lib/protocol/globalFilesystem.d.ts +40 -0
  266. package/lib/protocol/globalFilesystem.js +59 -0
  267. package/lib/protocol/index.d.ts +4 -0
  268. package/lib/protocol/index.js +4 -0
  269. package/lib/protocol/protocol.d.ts +4 -0
  270. package/lib/protocol/wire.js +5 -2
  271. package/lib/protocol/workspace.d.ts +305 -0
  272. package/lib/protocol/workspace.js +258 -0
  273. package/lib/receipt/receipt.d.ts +8 -0
  274. package/lib/registry/content.js +9 -3
  275. package/lib/runtime/kernelRuntime.js +9 -1
  276. package/lib/scenario/scenario.js +5 -4
  277. package/lib/semantic/canonical.d.ts +61 -0
  278. package/lib/semantic/canonical.js +135 -8
  279. package/lib/semantic/jsonValue.d.ts +31 -0
  280. package/lib/semantic/jsonValue.js +122 -0
  281. package/lib/semantic/sha256.js +3 -0
  282. package/lib/semantic/time.d.ts +14 -0
  283. package/lib/semantic/time.js +56 -0
  284. package/lib/session/context.d.ts +76 -0
  285. package/lib/session/context.js +419 -0
  286. package/lib/session/errors.d.ts +24 -0
  287. package/lib/session/errors.js +22 -0
  288. package/lib/session/identity.d.ts +24 -0
  289. package/lib/session/identity.js +56 -0
  290. package/lib/session/index.d.ts +14 -0
  291. package/lib/session/index.js +12 -0
  292. package/lib/session/registry.d.ts +130 -0
  293. package/lib/session/registry.js +908 -0
  294. package/lib/session/types.d.ts +227 -0
  295. package/lib/session/types.js +14 -0
  296. package/lib/structure/index.d.ts +1 -0
  297. package/lib/structure/index.js +1 -0
  298. package/lib/structure/trie.d.ts +88 -0
  299. package/lib/structure/trie.js +183 -0
  300. package/lib/syntax/byteIndex.d.ts +44 -0
  301. package/lib/syntax/byteIndex.js +148 -0
  302. package/lib/syntax/charset.d.ts +88 -0
  303. package/lib/syntax/charset.js +276 -0
  304. package/lib/syntax/index.d.ts +6 -0
  305. package/lib/syntax/index.js +5 -0
  306. package/lib/syntax/syntaxRegistry.d.ts +150 -0
  307. package/lib/syntax/syntaxRegistry.js +314 -0
  308. package/lib/syntax/syntaxTree.d.ts +106 -0
  309. package/lib/syntax/syntaxTree.js +668 -0
  310. package/lib/syntax/types.d.ts +15 -0
  311. package/lib/syntax/types.js +1 -0
  312. package/lib/types/common.d.ts +1 -1
  313. package/package.json +72 -193
  314. package/.editorconfig +0 -12
  315. package/.prettierignore +0 -17
  316. package/MCP-Token/347/250/216/344/270/216/344/270/213/344/270/200/344/273/243/345/267/245/345/205/267/345/215/217/350/256/256.html +0 -1763
  317. package/docs/annotation-campaign-A.csv +0 -54
  318. package/docs/annotation-campaign-B.csv +0 -54
  319. package/docs/annotation-campaign.csv +0 -54
  320. package/docs/eval/annotations-A.jsonl +0 -16
  321. package/docs/eval/annotations.json +0 -122
  322. package/docs/eval/recorded-labels.json +0 -12
  323. package/docs/eval/replay-cases.json +0 -14
  324. package/docs/eval/replay-labels-b.json +0 -14
  325. package/docs/examples/attention-request.json +0 -16
  326. package/docs/examples/checkpoint.json +0 -15
  327. package/docs/examples/claim.json +0 -66
  328. package/docs/examples/collaboration.json +0 -66
  329. package/docs/examples/concept-checkpoint.json +0 -15
  330. package/docs/examples/concept-prune-plan.json +0 -45
  331. package/docs/examples/federation.json +0 -126
  332. package/docs/examples/frame-chain.json +0 -77
  333. package/docs/examples/ledger-snapshot.json +0 -108
  334. package/docs/examples/manifest.json +0 -77
  335. package/docs/examples/message.json +0 -19
  336. package/docs/examples/other-model.json +0 -45
  337. package/docs/examples/plan.json +0 -50
  338. package/docs/examples/prune-plan.json +0 -48
  339. package/docs/examples/receipt.json +0 -22
  340. package/docs/examples/runtime-run.json +0 -573
  341. package/docs/examples/team.json +0 -66
  342. package/docs/examples/verb-note.json +0 -11
  343. package/docs/probes/bayes-scores.json +0 -1452
  344. package/docs/probes/calibration-imported.json +0 -141
  345. package/docs/probes/context-ast-deepseek.json +0 -1577
  346. package/docs/probes/deepseek-probe.json +0 -917
  347. package/docs/probes/eval-recorded-replay.json +0 -597
  348. package/docs/probes/eval-replay.json +0 -124
  349. package/docs/probes/eval-summary.json +0 -42
  350. package/docs/probes/runtime-eval.json +0 -4230
  351. package/eslint.config.mts +0 -96
  352. package/index.html +0 -13
  353. package/prettier.config.mts +0 -37
  354. package/public/favicon.svg +0 -1
  355. package/public/icons.svg +0 -24
  356. package/src/attention/attention.ts +0 -347
  357. package/src/attention/budget.ts +0 -72
  358. package/src/attention/cognition.ts +0 -519
  359. package/src/attention/index.ts +0 -8
  360. package/src/attention/interrupts.ts +0 -228
  361. package/src/attention/resource.ts +0 -316
  362. package/src/attention/social.ts +0 -217
  363. package/src/attention/socialTypes.ts +0 -115
  364. package/src/authz/authz.ts +0 -305
  365. package/src/authz/index.ts +0 -1
  366. package/src/bayes/calibration.ts +0 -204
  367. package/src/bayes/calibrationRegistry.ts +0 -111
  368. package/src/bayes/calibrationSelection.ts +0 -154
  369. package/src/bayes/engine.ts +0 -532
  370. package/src/bayes/index.ts +0 -6
  371. package/src/bayes/reliability.ts +0 -62
  372. package/src/bayes/scopedPriors.ts +0 -88
  373. package/src/boundary/frame.ts +0 -322
  374. package/src/boundary/ids.ts +0 -14
  375. package/src/boundary/index.ts +0 -12
  376. package/src/boundary/refTable.ts +0 -125
  377. package/src/boundary/toolCall.ts +0 -212
  378. package/src/concept/concept.ts +0 -75
  379. package/src/concept/conceptBudget.ts +0 -346
  380. package/src/concept/conceptBudgetTypes.ts +0 -79
  381. package/src/concept/index.ts +0 -3
  382. package/src/concurrency/idempotency.ts +0 -41
  383. package/src/concurrency/index.ts +0 -5
  384. package/src/concurrency/mutex.ts +0 -26
  385. package/src/concurrency/namedLocks.ts +0 -35
  386. package/src/concurrency/retry.ts +0 -50
  387. package/src/concurrency/worker.ts +0 -128
  388. package/src/context/agentContext.ts +0 -308
  389. package/src/context/ast.ts +0 -499
  390. package/src/context/contentStore.ts +0 -75
  391. package/src/context/context.ts +0 -65
  392. package/src/context/contextIndex.ts +0 -85
  393. package/src/context/document.ts +0 -137
  394. package/src/context/fileStorePath.ts +0 -14
  395. package/src/context/index.ts +0 -43
  396. package/src/context/lifecycle.ts +0 -221
  397. package/src/context/projections.ts +0 -151
  398. package/src/context/workspace.ts +0 -422
  399. package/src/context/workspaceProtocol.ts +0 -112
  400. package/src/context/workspaceService.ts +0 -423
  401. package/src/cooperation/board.ts +0 -104
  402. package/src/cooperation/collaboration.ts +0 -60
  403. package/src/cooperation/index.ts +0 -6
  404. package/src/cooperation/merge.ts +0 -190
  405. package/src/cooperation/metrics.ts +0 -57
  406. package/src/cooperation/session.ts +0 -131
  407. package/src/cooperation/unified.ts +0 -56
  408. package/src/counter.ts +0 -9
  409. package/src/database/adapter/adapters.ts +0 -35
  410. package/src/database/adapter/index.ts +0 -4
  411. package/src/database/adapter/runtimeSink.ts +0 -74
  412. package/src/database/adapter/sessionStore.ts +0 -32
  413. package/src/database/adapter/turnStore.ts +0 -23
  414. package/src/database/entity/agent.ts +0 -199
  415. package/src/database/entity/entity.ts +0 -1046
  416. package/src/database/entity/handle.ts +0 -79
  417. package/src/database/entity/index.ts +0 -32
  418. package/src/database/entity/message.ts +0 -74
  419. package/src/database/entity/meta.ts +0 -11
  420. package/src/database/entity/object.ts +0 -42
  421. package/src/database/entity/outbox.ts +0 -15
  422. package/src/database/entity/process.ts +0 -65
  423. package/src/database/entity/registry.ts +0 -155
  424. package/src/database/entity/runtimeApproval.ts +0 -30
  425. package/src/database/entity/runtimeSession.ts +0 -13
  426. package/src/database/entity/runtimeTurn.ts +0 -15
  427. package/src/database/entity/thread.ts +0 -85
  428. package/src/database/entity/window.ts +0 -85
  429. package/src/database/entity/worker.ts +0 -90
  430. package/src/database/index.ts +0 -6
  431. package/src/database/repository/addressSpaceRepository.ts +0 -72
  432. package/src/database/repository/agentRepository.ts +0 -460
  433. package/src/database/repository/base.ts +0 -41
  434. package/src/database/repository/executionRepository.ts +0 -477
  435. package/src/database/repository/handleRepository.ts +0 -64
  436. package/src/database/repository/index.ts +0 -20
  437. package/src/database/repository/messageRepository.ts +0 -52
  438. package/src/database/repository/objectRepository.ts +0 -69
  439. package/src/database/repository/outboxRepository.ts +0 -63
  440. package/src/database/repository/processRepository.ts +0 -58
  441. package/src/database/repository/registryRepository.ts +0 -119
  442. package/src/database/repository/repository.ts +0 -491
  443. package/src/database/repository/runtimeApprovalRepository.ts +0 -44
  444. package/src/database/repository/runtimeSessionRepository.ts +0 -27
  445. package/src/database/repository/runtimeTurnRepository.ts +0 -39
  446. package/src/database/repository/socialRepository.ts +0 -185
  447. package/src/database/repository/threadRepository.ts +0 -57
  448. package/src/database/repository/windowRepository.ts +0 -88
  449. package/src/database/repository/workerRepository.ts +0 -69
  450. package/src/database/service/database.ts +0 -90
  451. package/src/database/service/handleService.ts +0 -48
  452. package/src/database/service/index.ts +0 -16
  453. package/src/database/service/messageService.ts +0 -61
  454. package/src/database/service/objectService.ts +0 -59
  455. package/src/database/service/processService.ts +0 -61
  456. package/src/database/service/registryServices.ts +0 -88
  457. package/src/database/service/service.ts +0 -183
  458. package/src/database/service/stepService.ts +0 -53
  459. package/src/database/service/threadService.ts +0 -65
  460. package/src/database/service/windowService.ts +0 -30
  461. package/src/database/service/workerService.ts +0 -57
  462. package/src/database/sql/index.ts +0 -3
  463. package/src/database/sql/schema.ts +0 -418
  464. package/src/database/sql/sql.ts +0 -543
  465. package/src/database/store/database.ts +0 -210
  466. package/src/database/store/index.ts +0 -3
  467. package/src/database/store/store.ts +0 -266
  468. package/src/delegate/index.ts +0 -2
  469. package/src/delegate/team.ts +0 -268
  470. package/src/delegate/teamTypes.ts +0 -47
  471. package/src/diagnosis/checklist.ts +0 -74
  472. package/src/diagnosis/context.ts +0 -93
  473. package/src/diagnosis/frame.ts +0 -256
  474. package/src/diagnosis/index.ts +0 -5
  475. package/src/diagnosis/router.ts +0 -72
  476. package/src/diagnosis/types.ts +0 -89
  477. package/src/error/agentError.ts +0 -16
  478. package/src/error/ampError.ts +0 -20
  479. package/src/error/authzError.ts +0 -14
  480. package/src/error/boundaryRejection.ts +0 -20
  481. package/src/error/index.ts +0 -7
  482. package/src/error/kernelError.ts +0 -27
  483. package/src/error/mailboxError.ts +0 -9
  484. package/src/error/windowError.ts +0 -12
  485. package/src/evaluation/agreement.ts +0 -96
  486. package/src/evaluation/index.ts +0 -2
  487. package/src/evaluation/labels.ts +0 -241
  488. package/src/evidence/evidenceGraph.ts +0 -205
  489. package/src/evidence/index.ts +0 -4
  490. package/src/evidence/revalidation.ts +0 -191
  491. package/src/execution/exec.ts +0 -408
  492. package/src/execution/handles.ts +0 -65
  493. package/src/execution/index.ts +0 -3
  494. package/src/execution/pin.ts +0 -154
  495. package/src/frame/frame.ts +0 -70
  496. package/src/frame/index.ts +0 -1
  497. package/src/goal/goal.ts +0 -43
  498. package/src/goal/index.ts +0 -2
  499. package/src/goal/plan.ts +0 -196
  500. package/src/governance/attentionManifest.ts +0 -802
  501. package/src/governance/audit.ts +0 -362
  502. package/src/governance/budget.ts +0 -628
  503. package/src/governance/context.ts +0 -356
  504. package/src/governance/control.ts +0 -159
  505. package/src/governance/cooperation.ts +0 -479
  506. package/src/governance/credential.ts +0 -359
  507. package/src/governance/httpServer.ts +0 -99
  508. package/src/governance/index.ts +0 -32
  509. package/src/governance/legal.ts +0 -574
  510. package/src/governance/matrix.ts +0 -460
  511. package/src/governance/perspectives.ts +0 -406
  512. package/src/governance/signing.ts +0 -407
  513. package/src/governance/store.ts +0 -125
  514. package/src/governance/switching.ts +0 -459
  515. package/src/governance/toolPolicy.ts +0 -80
  516. package/src/governance/transport.ts +0 -204
  517. package/src/governance/types.ts +0 -380
  518. package/src/governance/workflow.ts +0 -743
  519. package/src/index.ts +0 -11
  520. package/src/interaction/index.ts +0 -1
  521. package/src/interaction/interaction.ts +0 -391
  522. package/src/ipc/index.ts +0 -4
  523. package/src/ipc/mailbox.ts +0 -132
  524. package/src/ipc/memorySocialStore.ts +0 -93
  525. package/src/ipc/social.ts +0 -93
  526. package/src/kernel/index.ts +0 -14
  527. package/src/kernel/scheduler.ts +0 -498
  528. package/src/ledger/checkpoint.ts +0 -304
  529. package/src/ledger/index.ts +0 -4
  530. package/src/ledger/ledger.ts +0 -31
  531. package/src/ledger/persistence.ts +0 -159
  532. package/src/ledger/share.ts +0 -80
  533. package/src/lock/index.ts +0 -2
  534. package/src/lock/lease.ts +0 -74
  535. package/src/main.ts +0 -199
  536. package/src/manifest/agentCard.ts +0 -72
  537. package/src/manifest/cardSign.ts +0 -87
  538. package/src/manifest/federation.ts +0 -237
  539. package/src/manifest/federationTypes.ts +0 -55
  540. package/src/manifest/index.ts +0 -8
  541. package/src/manifest/keys.ts +0 -643
  542. package/src/manifest/manifest.ts +0 -114
  543. package/src/manifest/sign.ts +0 -134
  544. package/src/manifest/trust.ts +0 -146
  545. package/src/mission/index.ts +0 -2
  546. package/src/mission/missionQueue.ts +0 -75
  547. package/src/module/index.ts +0 -9
  548. package/src/module/llm/deepseek.ts +0 -214
  549. package/src/module/llm/llm.ts +0 -84
  550. package/src/module/mcp/client.ts +0 -110
  551. package/src/module/mcp/http.ts +0 -102
  552. package/src/module/mcp/protocol.ts +0 -77
  553. package/src/module/mcp/server.ts +0 -148
  554. package/src/module/mcp/transport.ts +0 -30
  555. package/src/module/mcp/workspaceServer.ts +0 -111
  556. package/src/module/sandbox/sandbox.ts +0 -29
  557. package/src/module/tool/mcpExecutor.ts +0 -54
  558. package/src/module/tool/policy.ts +0 -52
  559. package/src/module/tool/redact.ts +0 -29
  560. package/src/module/tool/tool.ts +0 -53
  561. package/src/module/tool/workspaceExecutor.ts +0 -35
  562. package/src/policy/guard.ts +0 -240
  563. package/src/policy/index.ts +0 -2
  564. package/src/policy/policy.ts +0 -561
  565. package/src/process/agent.ts +0 -341
  566. package/src/process/agentService.ts +0 -236
  567. package/src/process/agentStore.ts +0 -378
  568. package/src/process/executionStore.ts +0 -151
  569. package/src/process/index.ts +0 -5
  570. package/src/process/process.ts +0 -240
  571. package/src/process/transitions.ts +0 -19
  572. package/src/progress/index.ts +0 -2
  573. package/src/progress/progress.ts +0 -85
  574. package/src/protocol/a2a.ts +0 -120
  575. package/src/protocol/channel.ts +0 -44
  576. package/src/protocol/envelope.ts +0 -655
  577. package/src/protocol/httpChannel.ts +0 -87
  578. package/src/protocol/index.ts +0 -6
  579. package/src/protocol/protocol.ts +0 -138
  580. package/src/protocol/wire.ts +0 -60
  581. package/src/receipt/index.ts +0 -1
  582. package/src/receipt/receipt.ts +0 -47
  583. package/src/registry/content.ts +0 -69
  584. package/src/registry/index.ts +0 -23
  585. package/src/registry/registry.ts +0 -599
  586. package/src/runtime/action.ts +0 -87
  587. package/src/runtime/behavior.ts +0 -330
  588. package/src/runtime/behaviorTuning.ts +0 -163
  589. package/src/runtime/cognitiveRuntime.ts +0 -703
  590. package/src/runtime/escalation.ts +0 -35
  591. package/src/runtime/governedTask.ts +0 -233
  592. package/src/runtime/index.ts +0 -15
  593. package/src/runtime/kernelRuntime.ts +0 -144
  594. package/src/runtime/operation.ts +0 -35
  595. package/src/runtime/replay.ts +0 -71
  596. package/src/runtime/routing.ts +0 -58
  597. package/src/runtime/safety.ts +0 -48
  598. package/src/runtime/session.ts +0 -341
  599. package/src/runtime/sessionStore.ts +0 -43
  600. package/src/runtime/telemetry.ts +0 -55
  601. package/src/runtime/turnStore.ts +0 -30
  602. package/src/scenario/index.ts +0 -1
  603. package/src/scenario/scenario.ts +0 -299
  604. package/src/semantic/canonical.ts +0 -24
  605. package/src/semantic/index.ts +0 -2
  606. package/src/semantic/sha256.ts +0 -82
  607. package/src/storage/appendLog.ts +0 -372
  608. package/src/storage/fileAppendSink.ts +0 -40
  609. package/src/storage/index.ts +0 -2
  610. package/src/store/bindCache.ts +0 -22
  611. package/src/store/cache.ts +0 -191
  612. package/src/store/context.ts +0 -31
  613. package/src/store/handleStore.ts +0 -31
  614. package/src/store/index.ts +0 -9
  615. package/src/store/messageStore.ts +0 -31
  616. package/src/store/objectStore.ts +0 -31
  617. package/src/store/processStore.ts +0 -31
  618. package/src/store/threadStore.ts +0 -31
  619. package/src/store/windowStore.ts +0 -31
  620. package/src/structure/abstractSyntaxTree.ts +0 -493
  621. package/src/structure/avlTree.ts +0 -408
  622. package/src/structure/binarySearchTree.ts +0 -352
  623. package/src/structure/binaryTree.ts +0 -525
  624. package/src/structure/bloomFilter.ts +0 -231
  625. package/src/structure/compare.ts +0 -110
  626. package/src/structure/cuckooFilter.ts +0 -337
  627. package/src/structure/deque.ts +0 -223
  628. package/src/structure/filterKey.ts +0 -36
  629. package/src/structure/hash.ts +0 -279
  630. package/src/structure/heap.ts +0 -268
  631. package/src/structure/index.ts +0 -20
  632. package/src/structure/iterator.ts +0 -22
  633. package/src/structure/lru.ts +0 -619
  634. package/src/structure/ordered.ts +0 -399
  635. package/src/structure/priority.ts +0 -915
  636. package/src/structure/queue.ts +0 -168
  637. package/src/structure/redBlackTree.ts +0 -680
  638. package/src/structure/segmentTree.ts +0 -248
  639. package/src/structure/stack.ts +0 -118
  640. package/src/structure/unordered.ts +0 -407
  641. package/src/style.css +0 -278
  642. package/src/thread/index.ts +0 -2
  643. package/src/thread/thread.ts +0 -176
  644. package/src/thread/transitions.ts +0 -17
  645. package/src/types/common.ts +0 -119
  646. package/src/types/index.ts +0 -23
  647. package/src/warrant/epistemic.ts +0 -154
  648. package/src/warrant/index.ts +0 -3
  649. package/src/warrant/inquiry.ts +0 -166
  650. package/src/warrant/warrant.ts +0 -179
  651. package/src/window/compaction.ts +0 -403
  652. package/src/window/compactionTypes.ts +0 -119
  653. package/src/window/index.ts +0 -7
  654. package/src/window/page.ts +0 -18
  655. package/src/window/window.ts +0 -244
  656. package/tools/_helpers.ts +0 -34
  657. package/tools/a2a-check.ts +0 -110
  658. package/tools/a2a-flow-check.ts +0 -78
  659. package/tools/agent-card-check.ts +0 -76
  660. package/tools/agent-check.ts +0 -236
  661. package/tools/agent-store-check.ts +0 -153
  662. package/tools/agreement-check.ts +0 -27
  663. package/tools/annotation-server-check.ts +0 -48
  664. package/tools/annotation-server.ts +0 -230
  665. package/tools/annotation-status.ts +0 -65
  666. package/tools/approval-access-check.ts +0 -66
  667. package/tools/arch-check.ts +0 -72
  668. package/tools/attention-core-check.ts +0 -48
  669. package/tools/attention-resource-check.ts +0 -169
  670. package/tools/audit-check.ts +0 -207
  671. package/tools/authority-check.ts +0 -124
  672. package/tools/authz-check.ts +0 -138
  673. package/tools/bayes-check.ts +0 -162
  674. package/tools/bayes-probe.ts +0 -154
  675. package/tools/behavior-tuning-check.ts +0 -53
  676. package/tools/board-check.ts +0 -87
  677. package/tools/boundary-check.ts +0 -199
  678. package/tools/bundle-trust-check.ts +0 -96
  679. package/tools/calibrate-imported.ts +0 -108
  680. package/tools/calibration-check.ts +0 -44
  681. package/tools/calibration-registry-check.ts +0 -40
  682. package/tools/calibration-sim.ts +0 -40
  683. package/tools/card-sign-check.ts +0 -71
  684. package/tools/card-trust-check.ts +0 -78
  685. package/tools/channel-check.ts +0 -86
  686. package/tools/checkpoint-check.ts +0 -620
  687. package/tools/cleanup-style-configs.ts +0 -29
  688. package/tools/cognition-check.ts +0 -648
  689. package/tools/cognitive-runtime-check.ts +0 -609
  690. package/tools/collaboration-demo.ts +0 -78
  691. package/tools/compaction-check.ts +0 -266
  692. package/tools/concept-check.ts +0 -260
  693. package/tools/concurrency-check.ts +0 -242
  694. package/tools/conformance-runtime.ts +0 -389
  695. package/tools/conformance.ts +0 -651
  696. package/tools/context-ast-check.ts +0 -90
  697. package/tools/context-ast-deepseek.ts +0 -242
  698. package/tools/context-graph-bench.ts +0 -50
  699. package/tools/context-graph-check.ts +0 -229
  700. package/tools/context-index-check.ts +0 -48
  701. package/tools/context-lifecycle-check.ts +0 -69
  702. package/tools/context-projection-check.ts +0 -73
  703. package/tools/context-scope-check.ts +0 -134
  704. package/tools/context-storage-check.ts +0 -113
  705. package/tools/cooperation-check.ts +0 -517
  706. package/tools/cooperation-http-check.ts +0 -125
  707. package/tools/deepseek-llm-check.ts +0 -147
  708. package/tools/deepseek-probe.ts +0 -494
  709. package/tools/diagnosis-check.ts +0 -109
  710. package/tools/diagnosis-router-check.ts +0 -50
  711. package/tools/document-context-check.ts +0 -237
  712. package/tools/envelope-check.ts +0 -659
  713. package/tools/eslint-rules/index.ts +0 -26
  714. package/tools/eslint-rules/rules/jsdoc-comment-format.ts +0 -105
  715. package/tools/eslint-rules/rules/no-function-keyword.ts +0 -60
  716. package/tools/eslint-rules/rules/no-multiline-parameters.ts +0 -71
  717. package/tools/eslint-rules/rules/no-multiline-type-parameters.ts +0 -57
  718. package/tools/eslint-rules/rules/no-undefined-comparison.ts +0 -115
  719. package/tools/eslint-rules/rules/prefer-template-for-string-conversion.ts +0 -97
  720. package/tools/eslint-rules/rules/require-typeof-parentheses.ts +0 -49
  721. package/tools/eslint-rules/rules/require-variable-type.ts +0 -36
  722. package/tools/eslint-rules/rules/variable-naming.ts +0 -175
  723. package/tools/eval-recorded-replay.ts +0 -215
  724. package/tools/eval-replay.ts +0 -139
  725. package/tools/eval-summary.ts +0 -136
  726. package/tools/evidence-revalidation-check.ts +0 -235
  727. package/tools/exec-check.ts +0 -217
  728. package/tools/federation-check.ts +0 -166
  729. package/tools/federation-demo.ts +0 -45
  730. package/tools/filter-check.ts +0 -243
  731. package/tools/governance-check.ts +0 -680
  732. package/tools/governance-store-check.ts +0 -131
  733. package/tools/governed-task-check.ts +0 -227
  734. package/tools/guard-check.ts +0 -122
  735. package/tools/http-channel-check.ts +0 -125
  736. package/tools/import-campaign.ts +0 -28
  737. package/tools/inquiry-check.ts +0 -126
  738. package/tools/interaction-check.ts +0 -171
  739. package/tools/interrupts-check.ts +0 -173
  740. package/tools/ipc-check.ts +0 -170
  741. package/tools/kernel-async-check.ts +0 -136
  742. package/tools/kernel-check.ts +0 -369
  743. package/tools/kernel-runtime-check.ts +0 -276
  744. package/tools/keys-check.ts +0 -559
  745. package/tools/label-audit.ts +0 -70
  746. package/tools/labels-workflow-check.ts +0 -49
  747. package/tools/linear-structure-check.ts +0 -524
  748. package/tools/live-exec.ts +0 -62
  749. package/tools/live-governance-eval.ts +0 -813
  750. package/tools/live-legacy.ts +0 -50
  751. package/tools/lru-check.ts +0 -182
  752. package/tools/make-annotation-campaign.ts +0 -57
  753. package/tools/mcp-executor-check.ts +0 -33
  754. package/tools/merge-annotations.ts +0 -32
  755. package/tools/merge-check.ts +0 -98
  756. package/tools/metrics-check.ts +0 -84
  757. package/tools/net-probe.ts +0 -107
  758. package/tools/oauth-probe.ts +0 -117
  759. package/tools/outbox-check.ts +0 -50
  760. package/tools/persistence-check.ts +0 -144
  761. package/tools/pin-check.ts +0 -116
  762. package/tools/platform-check.ts +0 -281
  763. package/tools/policy-check.ts +0 -514
  764. package/tools/prettier-plugin/index.mts +0 -84
  765. package/tools/priority-check.ts +0 -627
  766. package/tools/probe-context7.ts +0 -63
  767. package/tools/registry-check.ts +0 -252
  768. package/tools/reliability-check.ts +0 -25
  769. package/tools/retry-check.ts +0 -85
  770. package/tools/rewrite-declaration-extensions.ts +0 -98
  771. package/tools/runtime-check.ts +0 -165
  772. package/tools/runtime-deepseek-check.ts +0 -85
  773. package/tools/runtime-eval.ts +0 -358
  774. package/tools/scenario-check.ts +0 -161
  775. package/tools/scenario-incident.ts +0 -162
  776. package/tools/scoped-priors-check.ts +0 -35
  777. package/tools/scoped-priors-pooling.ts +0 -34
  778. package/tools/segment-ast-check.ts +0 -649
  779. package/tools/session-check.ts +0 -196
  780. package/tools/session-store-check.ts +0 -73
  781. package/tools/share-check.ts +0 -88
  782. package/tools/sign-check.ts +0 -95
  783. package/tools/signing-check.ts +0 -275
  784. package/tools/snapshot-demo.ts +0 -65
  785. package/tools/social-check.ts +0 -146
  786. package/tools/structure-compare-check.ts +0 -95
  787. package/tools/support/documentScanner.ts +0 -577
  788. package/tools/support/texScanner.ts +0 -631
  789. package/tools/support/workspaceScanner.ts +0 -476
  790. package/tools/team-check.ts +0 -163
  791. package/tools/team-demo.ts +0 -36
  792. package/tools/telemetry-check.ts +0 -44
  793. package/tools/tex-context-check.ts +0 -263
  794. package/tools/tool-gate-check.ts +0 -98
  795. package/tools/tree-structure-check.ts +0 -786
  796. package/tools/trust-flow-check.ts +0 -158
  797. package/tools/turn-store-check.ts +0 -57
  798. package/tools/unified-check.ts +0 -83
  799. package/tools/validate.ts +0 -309
  800. package/tools/wire-check.ts +0 -96
  801. package/tools/workspace-agent-check.ts +0 -486
  802. package/tools/workspace-agent-demo.ts +0 -62
  803. package/tools/workspace-agent-server.ts +0 -101
  804. package/tools/workspace-context-check.ts +0 -331
  805. package/tools/workspace-context.ts +0 -131
  806. package/tsconfig.build.json +0 -14
  807. package/tsconfig.json +0 -24
  808. package/tsconfig.tools.json +0 -31
  809. package/viz/context-ast.json +0 -1577
@@ -1,75 +0,0 @@
1
- /**
2
- * AMP v0.1 — Concept: a compressed pattern that can occupy one attention slot.
3
- * Mirrors docs/schemas/concept.schema.json.
4
- */
5
- import type { Confidence, Id, Provenance, Ref, Timestamp } from "../types/common.ts";
6
-
7
- export type ConceptStatus = "proposed" | "active" | "deprecated" | "merged" | "split";
8
-
9
- export interface ConceptFeature {
10
- feature: string;
11
- weight?: Confidence;
12
- }
13
-
14
- export interface ConceptDimension {
15
- name: string;
16
- scale?: "nominal" | "ordinal" | "interval" | "ratio";
17
- }
18
-
19
- export type ConceptRelationType = "is-a" | "part-of" | "causes" | "enables" | "contrasts-with" | "derived-from" | "precedes";
20
-
21
- export interface ConceptRelation {
22
- type: ConceptRelationType;
23
- target: Ref;
24
- }
25
-
26
- export interface ConceptExample {
27
- ref?: Ref;
28
- description: string;
29
- typicality?: Confidence;
30
- }
31
-
32
- /**
33
- * Operations are recorded, never applied in place.
34
- */
35
- export interface ConceptRevision {
36
- op: "merge" | "split" | "refine" | "retire";
37
- at: Timestamp;
38
- from?: Ref[];
39
- reason?: string;
40
- }
41
-
42
- export interface Concept {
43
- amp: "0.1";
44
- kind: "concept";
45
- id: Id;
46
- label: string;
47
- definition: string;
48
- /**
49
- * Defining features (prototype-style, graded — not an OWL class expression).
50
- */
51
- intension: ConceptFeature[];
52
- /**
53
- * Conceptual-space dimensions, when the concept is geometric rather than featural.
54
- */
55
- dimensions?: ConceptDimension[];
56
- /**
57
- * Anti-vacuity: external theory this concept is answerable to.
58
- */
59
- theory_refs?: string[];
60
- extension?: Ref[];
61
- prototype?: string;
62
- /**
63
- * Grounding: at least one real instance. A concept with none is a label.
64
- */
65
- examples?: ConceptExample[];
66
- counterexamples?: ConceptExample[];
67
- relations?: ConceptRelation[];
68
- grounded_in?: Ref[];
69
- status: ConceptStatus;
70
- confidence: Confidence;
71
- provenance: Provenance;
72
- version: number;
73
- created: Timestamp;
74
- revision?: ConceptRevision;
75
- }
@@ -1,346 +0,0 @@
1
- import { digestOf } from "../semantic/canonical.ts";
2
- import type { Concept, ConceptExample, ConceptRelation } from "./concept.ts";
3
- import type { ConceptBudget, ConceptCheckpoint, ConceptDrop, ConceptPrunePlan } from "./conceptBudgetTypes.ts";
4
-
5
- /**
6
- * Concept economy: bound one concept's content, and bound how many versions of
7
- * it are kept in storage.
8
- *
9
- * The rules answer one question: what may be removed without making the concept
10
- * worse at being a concept? Duplicated examples, duplicated relations, relation
11
- * targets that no longer resolve, and examples beyond the reading budget. Never
12
- * the definition, the intension, the counterexamples, or the last example that
13
- * keeps the concept grounded.
14
- */
15
-
16
- export const DefaultConceptBudget: ConceptBudget = {
17
- amp: "0.1",
18
- kind: "concept-budget",
19
- maxExamples: 8,
20
- minExamples: 1,
21
- maxRelations: 12,
22
- keepVersions: 1,
23
- };
24
-
25
- function normaliseText(text: string): string {
26
- return text.trim().toLowerCase().replace(/\s+/g, " ");
27
- }
28
-
29
- function utf8Bytes(value: unknown): number {
30
- return new TextEncoder().encode(JSON.stringify(value)).length;
31
- }
32
-
33
- function typicalityOf(example: ConceptExample): number {
34
- return typeof(example.typicality) === "number" ? example.typicality : 0.5;
35
- }
36
-
37
- function clip(text: string, limit = 60): string {
38
- const flat = text.trim().replace(/\s+/g, " ");
39
- return flat.length <= limit ? flat : `${flat.slice(0, limit - 1)}…`;
40
- }
41
-
42
- export interface ConceptPruneOptions {
43
- /**
44
- * Resolvers for relation targets. Without one, dangling relations cannot be detected.
45
- */
46
- known?: (kind: string, id: string) => boolean;
47
- }
48
-
49
- export interface ConceptPruneResult {
50
- concept: Concept;
51
- plan: ConceptPrunePlan;
52
- }
53
-
54
- function resolveBudget(overrides: Partial<ConceptBudget>): ConceptBudget {
55
- const budget: ConceptBudget = { ...DefaultConceptBudget, ...overrides, amp: "0.1", kind: "concept-budget" };
56
- const minExamples = Math.max(0, Math.floor(budget.minExamples));
57
- return {
58
- ...budget,
59
- minExamples,
60
- maxExamples: Math.max(minExamples, Math.floor(budget.maxExamples)),
61
- maxRelations: Math.max(0, Math.floor(budget.maxRelations)),
62
- keepVersions: Math.max(1, Math.floor(budget.keepVersions)),
63
- };
64
- }
65
-
66
- /**
67
- * A bounded view of one concept.
68
- *
69
- * Deterministic: the input is not mutated, and the same input yields the same
70
- * plan. `version` is carried over unchanged — a view is not a revision, and
71
- * bumping the version here would forge lineage.
72
- */
73
- export function pruneConcept(concept: Concept, overrides: Partial<ConceptBudget> = {}, options: ConceptPruneOptions = {}): ConceptPruneResult {
74
- const budget = resolveBudget(overrides);
75
- const dropped: ConceptDrop[] = [];
76
- let reclaimed = 0;
77
-
78
- const drop = (item: ConceptDrop, raw: unknown): void => {
79
- dropped.push(item);
80
- reclaimed += utf8Bytes(raw);
81
- };
82
-
83
- const view: Concept = { ...concept };
84
-
85
- // Examples: collapse duplicates, then trim past the ceiling, never past the floor.
86
- if (concept.examples) {
87
- const unique = new Map<string, { example: ConceptExample; index: number }>();
88
- concept.examples.forEach((example, index) => {
89
- const key = normaliseText(example.description);
90
- const existing = unique.get(key);
91
- if (!existing) {
92
- unique.set(key, { example, index });
93
- return;
94
- }
95
- if (typicalityOf(example) > typicalityOf(existing.example)) {
96
- // The newcomer is the better example of the pair; the earlier one goes.
97
- drop(
98
- {
99
- slot: "example",
100
- index: existing.index,
101
- summary: clip(existing.example.description),
102
- reason: "duplicate",
103
- revisit_if: "if the kept example is removed as atypical",
104
- },
105
- existing.example,
106
- );
107
- unique.set(key, { example, index });
108
- return;
109
- }
110
- drop(
111
- {
112
- slot: "example",
113
- index,
114
- summary: clip(example.description),
115
- reason: "duplicate",
116
- revisit_if: "if this example is rewritten with a detail the kept one lacks",
117
- },
118
- example,
119
- );
120
- });
121
-
122
- const kept = [...unique.values()].sort((a, b) => a.index - b.index);
123
- if (kept.length > budget.maxExamples) {
124
- const ranked = [...kept].sort((a, b) => typicalityOf(b.example) - typicalityOf(a.example) || a.index - b.index);
125
- const keep = new Set(ranked.slice(0, budget.maxExamples).map((item) => item.index));
126
- for (const item of ranked) {
127
- if (keep.has(item.index)) {
128
- continue;
129
- }
130
- drop(
131
- {
132
- slot: "example",
133
- index: item.index,
134
- summary: clip(item.example.description),
135
- reason: "over-budget",
136
- revisit_if: "if the concept needs a broader extension again",
137
- },
138
- item.example,
139
- );
140
- }
141
- view.examples = kept.filter((item) => keep.has(item.index)).map((item) => item.example);
142
- } else {
143
- view.examples = kept.map((item) => item.example);
144
- }
145
- }
146
-
147
- // Counterexamples are the falsifiers; they are never trimmed (W-2).
148
-
149
- // Relations: duplicate, dangling, then over budget.
150
- if (concept.relations) {
151
- const seen = new Set<string>();
152
- const surviving: { relation: ConceptRelation; index: number }[] = [];
153
- concept.relations.forEach((relation, index) => {
154
- const key = `${relation.type}|${relation.target.kind}|${relation.target.id}`;
155
- if (seen.has(key)) {
156
- drop(
157
- {
158
- slot: "relation",
159
- index,
160
- summary: `${relation.type} → ${relation.target.kind}:${relation.target.id}`,
161
- reason: "duplicate",
162
- revisit_if: "if the duplicate gains a distinct provenance or weight",
163
- },
164
- relation,
165
- );
166
- return;
167
- }
168
- seen.add(key);
169
- if (options.known && options.known(relation.target.kind, relation.target.id) === false) {
170
- drop(
171
- {
172
- slot: "relation",
173
- index,
174
- summary: `${relation.type} → ${relation.target.kind}:${relation.target.id}`,
175
- reason: "dangling",
176
- revisit_if: `if ${relation.target.kind}:${relation.target.id} is imported again`,
177
- },
178
- relation,
179
- );
180
- return;
181
- }
182
- surviving.push({ relation, index });
183
- });
184
-
185
- const keep = surviving.slice(0, budget.maxRelations);
186
- for (const item of surviving.slice(budget.maxRelations)) {
187
- drop(
188
- {
189
- slot: "relation",
190
- index: item.index,
191
- summary: `${item.relation.type} → ${item.relation.target.kind}:${item.relation.target.id}`,
192
- reason: "over-budget",
193
- revisit_if: "if the relation becomes load-bearing for a query",
194
- },
195
- item.relation,
196
- );
197
- }
198
- view.relations = keep.map((item) => item.relation);
199
- }
200
-
201
- // Extension: exact duplicates only. Membership refs may be external, so no dangling check.
202
- if (concept.extension) {
203
- const seen = new Set<string>();
204
- const kept = concept.extension.filter((ref, index) => {
205
- const key = `${ref.kind}:${ref.id}`;
206
- if (!seen.has(key)) {
207
- seen.add(key);
208
- return true;
209
- }
210
- drop({ slot: "extension", index, summary: key, reason: "duplicate", revisit_if: "if the duplicate comes from a different source" }, ref);
211
- return false;
212
- });
213
- view.extension = kept;
214
- }
215
-
216
- return {
217
- concept: view,
218
- plan: {
219
- amp: "0.1",
220
- kind: "concept-prune-plan",
221
- concept: concept.id,
222
- version: concept.version,
223
- dropped,
224
- reclaimedBytes: reclaimed,
225
- budget,
226
- },
227
- };
228
- }
229
-
230
- export class ConceptCompactionRefused extends Error {
231
- constructor(message: string) {
232
- super(message);
233
- this.name = "ConceptCompactionRefused";
234
- }
235
- }
236
-
237
- export interface ConceptHistoryCompaction {
238
- checkpoint: ConceptCheckpoint;
239
- head: Concept;
240
- removed: Concept[];
241
- }
242
-
243
- /**
244
- * Replace every version except the retained tail with a checkpoint.
245
- *
246
- * Refuses on a gap in the version sequence: a checkpoint over a broken lineage
247
- * would assert that nothing is missing while being unable to prove it.
248
- */
249
- export function compactConceptHistory(versions: Concept[], options: { keepVersions?: number; now?: string } = {}): ConceptHistoryCompaction {
250
- if (versions.length === 0) {
251
- throw new ConceptCompactionRefused("no versions to compact");
252
- }
253
-
254
- const ordered = [...versions].sort((a, b) => a.version - b.version);
255
- const id = ordered[0].id;
256
- for (const version of ordered) {
257
- if (version.id !== id) {
258
- throw new ConceptCompactionRefused(`versions belong to different concepts: ${id} and ${version.id}`);
259
- }
260
- }
261
- for (let index = 1; index < ordered.length; index++) {
262
- if (ordered[index].version !== ordered[index - 1].version + 1) {
263
- throw new ConceptCompactionRefused(`lineage is broken between version ${ordered[index - 1].version} and ${ordered[index].version}`);
264
- }
265
- }
266
-
267
- const keepVersions = Math.max(1, Math.floor(options.keepVersions ?? 1));
268
- const cut = ordered.length - keepVersions;
269
- if (cut <= 0) {
270
- throw new ConceptCompactionRefused("nothing to compact: every version is inside the retention window");
271
- }
272
-
273
- const removed = ordered.slice(0, cut);
274
- const head = ordered[ordered.length - 1];
275
- const last = removed[removed.length - 1];
276
-
277
- return {
278
- checkpoint: {
279
- amp: "0.1",
280
- kind: "concept-checkpoint",
281
- id: `cp.concept.${id}.${last.version}`,
282
- concept: id,
283
- from: removed[0].version,
284
- to: last.version,
285
- count: removed.length,
286
- tip: digestOf(last),
287
- root: digestOf(removed),
288
- created: options.now ?? new Date().toISOString(),
289
- budget: { keepVersions },
290
- },
291
- head,
292
- removed,
293
- };
294
- }
295
-
296
- /**
297
- * Check a concept checkpoint against the versions it claims to cover.
298
- */
299
- export function verifyConceptCheckpoint(checkpoint: ConceptCheckpoint, removed: Concept[], head?: Concept): { ok: boolean; reasons: string[] } {
300
- const reasons: string[] = [];
301
-
302
- if (digestOf(removed) !== checkpoint.root) {
303
- reasons.push("checkpoint root does not cover the removed versions");
304
- }
305
- if (removed.length !== checkpoint.count) {
306
- reasons.push(`checkpoint count ${checkpoint.count} does not match ${removed.length} removed versions`);
307
- }
308
-
309
- for (let index = 1; index < removed.length; index++) {
310
- if (removed[index].version !== removed[index - 1].version + 1) {
311
- reasons.push(`removed versions are not contiguous at ${removed[index - 1].version} → ${removed[index].version}`);
312
- }
313
- }
314
-
315
- const first = removed[0];
316
- const last = removed[removed.length - 1];
317
- if (!first || !last) {
318
- reasons.push("no versions were removed");
319
- } else {
320
- if (first.version !== checkpoint.from) {
321
- reasons.push(`checkpoint starts at ${checkpoint.from} but the first removed version is ${first.version}`);
322
- }
323
- if (last.version !== checkpoint.to) {
324
- reasons.push(`checkpoint ends at ${checkpoint.to} but the last removed version is ${last.version}`);
325
- }
326
- if (digestOf(last) !== checkpoint.tip) {
327
- reasons.push("checkpoint tip does not match the last removed version");
328
- }
329
- for (const version of removed) {
330
- if (version.id !== checkpoint.concept) {
331
- reasons.push(`removed version ${version.version} belongs to ${version.id}`);
332
- }
333
- }
334
- }
335
-
336
- if (head) {
337
- if (head.id !== checkpoint.concept) {
338
- reasons.push(`head belongs to ${head.id}, not ${checkpoint.concept}`);
339
- }
340
- if (head.version !== checkpoint.to + 1) {
341
- reasons.push(`head version ${head.version} does not continue from ${checkpoint.to}`);
342
- }
343
- }
344
-
345
- return { ok: reasons.length === 0, reasons };
346
- }
@@ -1,79 +0,0 @@
1
- /**
2
- * AMP v0.1 — concept economy.
3
- *
4
- * A concept is the unit that occupies an attention slot, so its size is paid on
5
- * every turn that uses it. Left alone, a concept accretes: examples pile up,
6
- * relations duplicate, old versions accumulate in the ledger. This layer bounds
7
- * both, without letting either the definition or the falsifiers be trimmed away.
8
- *
9
- * Two operations, deliberately separate:
10
- *
11
- * - **pruneConcept** returns a bounded *view* of one concept. Storage is
12
- * untouched and `version` does not move: a view is not a revision.
13
- * - **compactConceptHistory** replaces every version except the head with a
14
- * checkpoint that commits to their digest, so lineage stays provable.
15
- */
16
- import type { Digest, Id, Timestamp } from "../types/common.ts";
17
-
18
- export interface ConceptBudget {
19
- amp: "0.1";
20
- kind: "concept-budget";
21
- /**
22
- * Hard ceiling on examples in a view.
23
- */
24
- maxExamples: number;
25
- /**
26
- * Floor that keeps a concept grounded: zero examples would make it a label.
27
- */
28
- minExamples: number;
29
- maxRelations: number;
30
- /**
31
- * Versions kept in storage besides the head. 1 means head only.
32
- */
33
- keepVersions: number;
34
- }
35
-
36
- export type ConceptDropReason = "duplicate" | "over-budget" | "dangling";
37
-
38
- export interface ConceptDrop {
39
- slot: "example" | "relation" | "extension";
40
- index: number;
41
- /**
42
- * Human-readable identification of what left the view.
43
- */
44
- summary: string;
45
- reason: ConceptDropReason;
46
- revisit_if: string;
47
- }
48
-
49
- export interface ConceptPrunePlan {
50
- amp: "0.1";
51
- kind: "concept-prune-plan";
52
- concept: Id;
53
- version: number;
54
- dropped: ConceptDrop[];
55
- reclaimedBytes: number;
56
- budget: ConceptBudget;
57
- }
58
-
59
- export interface ConceptCheckpoint {
60
- amp: "0.1";
61
- kind: "concept-checkpoint";
62
- id: Id;
63
- concept: Id;
64
- from: number;
65
- to: number;
66
- count: number;
67
- /**
68
- * Digest of the last removed version, so a holder can spot a swap.
69
- */
70
- tip: Digest;
71
- /**
72
- * Digest over the removed versions, in version order.
73
- */
74
- root: Digest;
75
- created: Timestamp;
76
- budget: {
77
- keepVersions: number;
78
- };
79
- }
@@ -1,3 +0,0 @@
1
- export * from "./concept.ts";
2
- export * from "./conceptBudget.ts";
3
- export * from "./conceptBudgetTypes.ts";
@@ -1,41 +0,0 @@
1
- /**
2
- * Idempotency for external effects.
3
- *
4
- * A message send or a tool call carries a key; the first successful attempt
5
- * stores its result, and a retry after a crash returns that result instead of
6
- * performing the effect twice. The unique primary key is the arbiter, so two
7
- * workers racing on the same key cannot both execute.
8
- */
9
- import type { DatabaseSync } from "node:sqlite";
10
-
11
- export interface OnceResult<T> {
12
- value: T;
13
- replayed: boolean;
14
- }
15
-
16
- type IdempotencyRow = {
17
- result: string;
18
- };
19
-
20
- type Once = <T>(db: DatabaseSync, key: string, at: string, fn: () => T) => OnceResult<T>;
21
-
22
- export const once: Once = <T>(db: DatabaseSync, key: string, at: string, fn: () => T): OnceResult<T> => {
23
- const existing: IdempotencyRow | undefined = db.prepare("SELECT result FROM idempotency WHERE key = ?").get(key) as IdempotencyRow | undefined;
24
- if (existing !== (void 0)) {
25
- return { value: JSON.parse(existing.result) as T, replayed: true };
26
- }
27
- const value: T = fn();
28
- try {
29
- db.prepare("INSERT INTO idempotency (key, result, created_at) VALUES (?, ?, ?)").run(key, JSON.stringify(value), at);
30
- return { value, replayed: false };
31
- } catch {
32
- /**
33
- * Another worker won the insert between our SELECT and INSERT.
34
- */
35
- const row: IdempotencyRow | undefined = db.prepare("SELECT result FROM idempotency WHERE key = ?").get(key) as IdempotencyRow | undefined;
36
- if (row === (void 0)) {
37
- throw new Error(`idempotency key ${key} was not stored`);
38
- }
39
- return { value: JSON.parse(row.result) as T, replayed: true };
40
- }
41
- };
@@ -1,5 +0,0 @@
1
- export * from "./idempotency.ts";
2
- export * from "./mutex.ts";
3
- export * from "./namedLocks.ts";
4
- export * from "./retry.ts";
5
- export * from "./worker.ts";
@@ -1,26 +0,0 @@
1
- /**
2
- * An async mutex for in-process critical sections.
3
- *
4
- * The kernel's own writes are synchronous and serialized by SQLite, so this is
5
- * for handlers that interleave at `await` points: a tool call, an LLM request,
6
- * a file write. It is not a cross-worker lock — for that, use the database
7
- * lease (`claimThread` + fencing token), because a promise cannot be shared
8
- * between `worker_threads`.
9
- */
10
- export class Mutex {
11
- private tail: Promise<void> = Promise.resolve();
12
-
13
- async run<T>(fn: () => Promise<T> | T): Promise<T> {
14
- const previous: Promise<void> = this.tail;
15
- let release: () => void = () => {};
16
- this.tail = new Promise<void>((resolve) => {
17
- release = resolve;
18
- });
19
- await previous;
20
- try {
21
- return await fn();
22
- } finally {
23
- release();
24
- }
25
- }
26
- }
@@ -1,35 +0,0 @@
1
- /**
2
- * Named mutexes for one worker.
3
- *
4
- * A single process may need to serialize access to a resource (a file, a
5
- * browser tab, an MCP session) without blocking unrelated work. The registry
6
- * keeps one {@link Mutex} per name; `UnorderedMap` is enough because names are
7
- * opaque and the lock itself carries no ordering.
8
- *
9
- * This is intra-worker only. Cross-worker exclusion is the database lease
10
- * (`claimThread`), not a promise.
11
- */
12
- import { UnorderedMap } from "../structure/unordered.ts";
13
- import { Mutex } from "./mutex.ts";
14
-
15
- export class NamedLocks {
16
- private readonly locks: UnorderedMap<string, Mutex> = new UnorderedMap<string, Mutex>();
17
-
18
- forName(name: string): Mutex {
19
- const existing: Mutex | undefined = this.locks.get(name);
20
- if (existing !== (void 0)) {
21
- return existing;
22
- }
23
- const mutex: Mutex = new Mutex();
24
- this.locks.set(name, mutex);
25
- return mutex;
26
- }
27
-
28
- run<T>(name: string, fn: () => Promise<T> | T): Promise<T> {
29
- return this.forName(name).run(fn);
30
- }
31
-
32
- get size(): number {
33
- return this.locks.size;
34
- }
35
- }
@@ -1,50 +0,0 @@
1
- /**
2
- * Retry helpers for the two kinds of contention a kernel sees.
3
- *
4
- * - SQLite write contention between `worker_threads`: `SQLITE_BUSY`. The
5
- * connection sets `busy_timeout`, and async callers can additionally back off
6
- * with {@link withBusyRetry}.
7
- * - Application-level contention: a lease or a row version that moved. Callers
8
- * should re-read and decide, not retry blindly.
9
- */
10
-
11
- export interface RetryOptions {
12
- attempts?: number;
13
- baseMs?: number;
14
- maxMs?: number;
15
- sleep?: (ms: number) => Promise<void>;
16
- isRetryable?: (error: unknown) => boolean;
17
- }
18
-
19
- export const isBusyError: (error: unknown) => boolean = (error: unknown): boolean => {
20
- const message: string = error instanceof Error ? error.message : `${error}`;
21
- return message.includes("database is locked") || message.includes("SQLITE_BUSY");
22
- };
23
-
24
- const defaultSleep: (ms: number) => Promise<void> = (ms: number): Promise<void> => new Promise((resolve) => setTimeout(resolve, ms));
25
-
26
- type BusyRetry = <T>(fn: () => Promise<T> | T, options?: RetryOptions) => Promise<T>;
27
-
28
- /**
29
- * Retry an async operation with exponential backoff while it is busy.
30
- */
31
- export const withBusyRetry: BusyRetry = async <T>(fn: () => Promise<T> | T, options: RetryOptions = {}): Promise<T> => {
32
- const attempts: number = options.attempts ?? 5;
33
- const baseMs: number = options.baseMs ?? 25;
34
- const maxMs: number = options.maxMs ?? 1000;
35
- const sleep: (ms: number) => Promise<void> = options.sleep ?? defaultSleep;
36
- const retryable: (error: unknown) => boolean = options.isRetryable ?? isBusyError;
37
- let lastError: unknown;
38
- for (let attempt: number = 0; attempt < attempts; attempt += 1) {
39
- try {
40
- return await fn();
41
- } catch (error) {
42
- lastError = error;
43
- if (!retryable(error) || attempt === attempts - 1) {
44
- throw error;
45
- }
46
- await sleep(Math.min(maxMs, baseMs * 2 ** attempt));
47
- }
48
- }
49
- throw lastError;
50
- };