@askdkc/kiokuko 0.1.17 → 0.1.19

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 (534) hide show
  1. package/README.ja.md +91 -112
  2. package/README.ko.md +90 -102
  3. package/README.md +103 -262
  4. package/README.zh-CN.md +88 -102
  5. package/dist/agent-file/atomic-write.d.ts +90 -3
  6. package/dist/agent-file/atomic-write.d.ts.map +1 -1
  7. package/dist/agent-file/atomic-write.js +990 -14
  8. package/dist/agent-file/atomic-write.js.map +1 -1
  9. package/dist/agent-file/managed-block.d.ts +12 -1
  10. package/dist/agent-file/managed-block.d.ts.map +1 -1
  11. package/dist/agent-file/managed-block.js +49 -4
  12. package/dist/agent-file/managed-block.js.map +1 -1
  13. package/dist/agent-file/render.d.ts +1 -1
  14. package/dist/agent-file/render.d.ts.map +1 -1
  15. package/dist/agent-file/render.js +10 -7
  16. package/dist/agent-file/render.js.map +1 -1
  17. package/dist/akinator/agent-task.d.ts +11 -22
  18. package/dist/akinator/agent-task.d.ts.map +1 -1
  19. package/dist/akinator/agent-task.js +454 -99
  20. package/dist/akinator/agent-task.js.map +1 -1
  21. package/dist/akinator/capabilities.d.ts +18 -6
  22. package/dist/akinator/capabilities.d.ts.map +1 -1
  23. package/dist/akinator/capabilities.js +72 -35
  24. package/dist/akinator/capabilities.js.map +1 -1
  25. package/dist/akinator/capability-binding.d.ts +11 -0
  26. package/dist/akinator/capability-binding.d.ts.map +1 -0
  27. package/dist/akinator/capability-binding.js +56 -0
  28. package/dist/akinator/capability-binding.js.map +1 -0
  29. package/dist/akinator/domain.js +2 -2
  30. package/dist/akinator/domain.js.map +1 -1
  31. package/dist/akinator/knowledge-path.d.ts.map +1 -1
  32. package/dist/akinator/knowledge-path.js +409 -39
  33. package/dist/akinator/knowledge-path.js.map +1 -1
  34. package/dist/akinator/orchestrator.d.ts +3 -4
  35. package/dist/akinator/orchestrator.d.ts.map +1 -1
  36. package/dist/akinator/orchestrator.js +1 -4
  37. package/dist/akinator/orchestrator.js.map +1 -1
  38. package/dist/akinator/service.d.ts +0 -4
  39. package/dist/akinator/service.d.ts.map +1 -1
  40. package/dist/akinator/service.js +19 -35
  41. package/dist/akinator/service.js.map +1 -1
  42. package/dist/akinator/skill-discovery-attempt.d.ts +20 -0
  43. package/dist/akinator/skill-discovery-attempt.d.ts.map +1 -0
  44. package/dist/akinator/skill-discovery-attempt.js +390 -0
  45. package/dist/akinator/skill-discovery-attempt.js.map +1 -0
  46. package/dist/akinator/store.d.ts.map +1 -1
  47. package/dist/akinator/store.js +107 -52
  48. package/dist/akinator/store.js.map +1 -1
  49. package/dist/akinator/types.d.ts +0 -12
  50. package/dist/akinator/types.d.ts.map +1 -1
  51. package/dist/bin/kiokuko.js +0 -0
  52. package/dist/cli.d.ts +2 -0
  53. package/dist/cli.d.ts.map +1 -1
  54. package/dist/cli.js +534 -148
  55. package/dist/cli.js.map +1 -1
  56. package/dist/client/server-client.d.ts +5 -3
  57. package/dist/client/server-client.d.ts.map +1 -1
  58. package/dist/client/server-client.js +486 -181
  59. package/dist/client/server-client.js.map +1 -1
  60. package/dist/commands/agent.d.ts +2 -0
  61. package/dist/commands/agent.d.ts.map +1 -1
  62. package/dist/commands/agent.js +861 -86
  63. package/dist/commands/agent.js.map +1 -1
  64. package/dist/commands/backup.d.ts +2 -1
  65. package/dist/commands/backup.d.ts.map +1 -1
  66. package/dist/commands/backup.js +64 -8
  67. package/dist/commands/backup.js.map +1 -1
  68. package/dist/commands/doctor.d.ts +5 -1
  69. package/dist/commands/doctor.d.ts.map +1 -1
  70. package/dist/commands/doctor.js +70 -26
  71. package/dist/commands/doctor.js.map +1 -1
  72. package/dist/commands/export.d.ts +0 -4
  73. package/dist/commands/export.d.ts.map +1 -1
  74. package/dist/commands/export.js +191 -32
  75. package/dist/commands/export.js.map +1 -1
  76. package/dist/commands/import.d.ts +10 -1
  77. package/dist/commands/import.d.ts.map +1 -1
  78. package/dist/commands/import.js +592 -113
  79. package/dist/commands/import.js.map +1 -1
  80. package/dist/commands/init.d.ts +19 -1
  81. package/dist/commands/init.d.ts.map +1 -1
  82. package/dist/commands/init.js +569 -22
  83. package/dist/commands/init.js.map +1 -1
  84. package/dist/commands/purge.d.ts.map +1 -1
  85. package/dist/commands/purge.js +3 -0
  86. package/dist/commands/purge.js.map +1 -1
  87. package/dist/commands/setup.d.ts +34 -8
  88. package/dist/commands/setup.d.ts.map +1 -1
  89. package/dist/commands/setup.js +418 -86
  90. package/dist/commands/setup.js.map +1 -1
  91. package/dist/commands/skills.d.ts +9 -0
  92. package/dist/commands/skills.d.ts.map +1 -0
  93. package/dist/commands/skills.js +317 -0
  94. package/dist/commands/skills.js.map +1 -0
  95. package/dist/commands/use.d.ts +10 -2
  96. package/dist/commands/use.d.ts.map +1 -1
  97. package/dist/commands/use.js +851 -73
  98. package/dist/commands/use.js.map +1 -1
  99. package/dist/config/paths.d.ts +11 -1
  100. package/dist/config/paths.d.ts.map +1 -1
  101. package/dist/config/paths.js +64 -29
  102. package/dist/config/paths.js.map +1 -1
  103. package/dist/config/project-config.d.ts +1 -0
  104. package/dist/config/project-config.d.ts.map +1 -1
  105. package/dist/config/project-config.js +70 -32
  106. package/dist/config/project-config.js.map +1 -1
  107. package/dist/context/broker.d.ts +28 -14
  108. package/dist/context/broker.d.ts.map +1 -1
  109. package/dist/context/broker.js +604 -145
  110. package/dist/context/broker.js.map +1 -1
  111. package/dist/context/delivery.d.ts +6 -21
  112. package/dist/context/delivery.d.ts.map +1 -1
  113. package/dist/context/delivery.js +196 -147
  114. package/dist/context/delivery.js.map +1 -1
  115. package/dist/context/feedback.d.ts +11 -12
  116. package/dist/context/feedback.d.ts.map +1 -1
  117. package/dist/context/feedback.js +229 -261
  118. package/dist/context/feedback.js.map +1 -1
  119. package/dist/context/ranking.d.ts +1 -12
  120. package/dist/context/ranking.d.ts.map +1 -1
  121. package/dist/context/ranking.js +13 -4
  122. package/dist/context/ranking.js.map +1 -1
  123. package/dist/context/recommendations.d.ts +0 -5
  124. package/dist/context/recommendations.d.ts.map +1 -1
  125. package/dist/context/recommendations.js +0 -1
  126. package/dist/context/recommendations.js.map +1 -1
  127. package/dist/context/run-state.d.ts +26 -0
  128. package/dist/context/run-state.d.ts.map +1 -0
  129. package/dist/context/run-state.js +399 -0
  130. package/dist/context/run-state.js.map +1 -0
  131. package/dist/context/scoped-broker.d.ts +17 -5
  132. package/dist/context/scoped-broker.d.ts.map +1 -1
  133. package/dist/context/scoped-broker.js +512 -106
  134. package/dist/context/scoped-broker.js.map +1 -1
  135. package/dist/context/selection-state.d.ts +19 -0
  136. package/dist/context/selection-state.d.ts.map +1 -0
  137. package/dist/context/selection-state.js +250 -0
  138. package/dist/context/selection-state.js.map +1 -0
  139. package/dist/db/adapter.d.ts +5 -3
  140. package/dist/db/adapter.d.ts.map +1 -1
  141. package/dist/db/adapter.js +6 -3
  142. package/dist/db/adapter.js.map +1 -1
  143. package/dist/db/capabilities.d.ts.map +1 -1
  144. package/dist/db/capabilities.js +34 -16
  145. package/dist/db/capabilities.js.map +1 -1
  146. package/dist/db/connection.d.ts +8 -0
  147. package/dist/db/connection.d.ts.map +1 -1
  148. package/dist/db/connection.js +55 -26
  149. package/dist/db/connection.js.map +1 -1
  150. package/dist/db/migrate.d.ts +28 -7
  151. package/dist/db/migrate.d.ts.map +1 -1
  152. package/dist/db/migrate.js +106 -78
  153. package/dist/db/migrate.js.map +1 -1
  154. package/dist/db/sqlite-retry.d.ts +11 -0
  155. package/dist/db/sqlite-retry.d.ts.map +1 -0
  156. package/dist/db/sqlite-retry.js +66 -0
  157. package/dist/db/sqlite-retry.js.map +1 -0
  158. package/dist/db/transaction.d.ts +13 -0
  159. package/dist/db/transaction.d.ts.map +1 -1
  160. package/dist/db/transaction.js +53 -24
  161. package/dist/db/transaction.js.map +1 -1
  162. package/dist/db/upgrade-backup.d.ts +58 -2
  163. package/dist/db/upgrade-backup.d.ts.map +1 -1
  164. package/dist/db/upgrade-backup.js +757 -28
  165. package/dist/db/upgrade-backup.js.map +1 -1
  166. package/dist/errors.js +1 -1
  167. package/dist/errors.js.map +1 -1
  168. package/dist/gateway/agent-service.d.ts +4 -1
  169. package/dist/gateway/agent-service.d.ts.map +1 -1
  170. package/dist/gateway/agent-service.js +71 -58
  171. package/dist/gateway/agent-service.js.map +1 -1
  172. package/dist/gateway/checkpoint-service.d.ts +1 -0
  173. package/dist/gateway/checkpoint-service.d.ts.map +1 -1
  174. package/dist/gateway/checkpoint-service.js +47 -24
  175. package/dist/gateway/checkpoint-service.js.map +1 -1
  176. package/dist/ledger/archive.d.ts +1 -4
  177. package/dist/ledger/archive.d.ts.map +1 -1
  178. package/dist/ledger/archive.js +77 -39
  179. package/dist/ledger/archive.js.map +1 -1
  180. package/dist/ledger/maintenance.d.ts +0 -11
  181. package/dist/ledger/maintenance.d.ts.map +1 -1
  182. package/dist/ledger/maintenance.js +24 -40
  183. package/dist/ledger/maintenance.js.map +1 -1
  184. package/dist/ledger/projection.d.ts +0 -1
  185. package/dist/ledger/projection.d.ts.map +1 -1
  186. package/dist/ledger/projection.js.map +1 -1
  187. package/dist/ledger/promotion.d.ts +0 -9
  188. package/dist/ledger/promotion.d.ts.map +1 -1
  189. package/dist/ledger/promotion.js.map +1 -1
  190. package/dist/ledger/query.d.ts +1 -15
  191. package/dist/ledger/query.d.ts.map +1 -1
  192. package/dist/ledger/query.js.map +1 -1
  193. package/dist/ledger/store.d.ts +0 -1
  194. package/dist/ledger/store.d.ts.map +1 -1
  195. package/dist/ledger/store.js +11 -8
  196. package/dist/ledger/store.js.map +1 -1
  197. package/dist/ledger/types.d.ts +0 -4
  198. package/dist/ledger/types.d.ts.map +1 -1
  199. package/dist/ledger/types.js.map +1 -1
  200. package/dist/ledger/validate.d.ts.map +1 -1
  201. package/dist/ledger/validate.js +0 -5
  202. package/dist/ledger/validate.js.map +1 -1
  203. package/dist/mcp/server.d.ts +4 -0
  204. package/dist/mcp/server.d.ts.map +1 -1
  205. package/dist/mcp/server.js +105 -54
  206. package/dist/mcp/server.js.map +1 -1
  207. package/dist/memory/audit.d.ts +0 -1
  208. package/dist/memory/audit.d.ts.map +1 -1
  209. package/dist/memory/audit.js +0 -1
  210. package/dist/memory/audit.js.map +1 -1
  211. package/dist/memory/curator.d.ts.map +1 -1
  212. package/dist/memory/curator.js +172 -96
  213. package/dist/memory/curator.js.map +1 -1
  214. package/dist/memory/entries.d.ts +12 -2
  215. package/dist/memory/entries.d.ts.map +1 -1
  216. package/dist/memory/entries.js +198 -114
  217. package/dist/memory/entries.js.map +1 -1
  218. package/dist/memory/federated-retrieval.d.ts +12 -1
  219. package/dist/memory/federated-retrieval.d.ts.map +1 -1
  220. package/dist/memory/federated-retrieval.js +183 -70
  221. package/dist/memory/federated-retrieval.js.map +1 -1
  222. package/dist/memory/hybrid-retrieval.d.ts +5 -11
  223. package/dist/memory/hybrid-retrieval.d.ts.map +1 -1
  224. package/dist/memory/hybrid-retrieval.js +78 -58
  225. package/dist/memory/hybrid-retrieval.js.map +1 -1
  226. package/dist/memory/lifecycle.d.ts.map +1 -1
  227. package/dist/memory/lifecycle.js +17 -13
  228. package/dist/memory/lifecycle.js.map +1 -1
  229. package/dist/memory/rebuild-search.d.ts +5 -0
  230. package/dist/memory/rebuild-search.d.ts.map +1 -1
  231. package/dist/memory/rebuild-search.js +101 -76
  232. package/dist/memory/rebuild-search.js.map +1 -1
  233. package/dist/memory/retrieval-query.d.ts +0 -5
  234. package/dist/memory/retrieval-query.d.ts.map +1 -1
  235. package/dist/memory/retrieval-query.js +0 -5
  236. package/dist/memory/retrieval-query.js.map +1 -1
  237. package/dist/memory/retrieval.d.ts.map +1 -1
  238. package/dist/memory/retrieval.js +25 -131
  239. package/dist/memory/retrieval.js.map +1 -1
  240. package/dist/memory/revisions.d.ts +76 -1
  241. package/dist/memory/revisions.d.ts.map +1 -1
  242. package/dist/memory/revisions.js +539 -35
  243. package/dist/memory/revisions.js.map +1 -1
  244. package/dist/memory/scoped-memory.d.ts +16 -1
  245. package/dist/memory/scoped-memory.d.ts.map +1 -1
  246. package/dist/memory/scoped-memory.js +240 -107
  247. package/dist/memory/scoped-memory.js.map +1 -1
  248. package/dist/memory/secrets.d.ts +2 -0
  249. package/dist/memory/secrets.d.ts.map +1 -1
  250. package/dist/memory/secrets.js +36 -0
  251. package/dist/memory/secrets.js.map +1 -1
  252. package/dist/memory/structured-memory.d.ts +3 -2
  253. package/dist/memory/structured-memory.d.ts.map +1 -1
  254. package/dist/memory/structured-memory.js +54 -22
  255. package/dist/memory/structured-memory.js.map +1 -1
  256. package/dist/memory/workspaces.d.ts +9 -0
  257. package/dist/memory/workspaces.d.ts.map +1 -1
  258. package/dist/memory/workspaces.js +67 -0
  259. package/dist/memory/workspaces.js.map +1 -1
  260. package/dist/package-version.d.ts +2 -0
  261. package/dist/package-version.d.ts.map +1 -0
  262. package/dist/package-version.js +7 -0
  263. package/dist/package-version.js.map +1 -0
  264. package/dist/repository/binding.d.ts +5 -0
  265. package/dist/repository/binding.d.ts.map +1 -1
  266. package/dist/repository/binding.js +117 -17
  267. package/dist/repository/binding.js.map +1 -1
  268. package/dist/repository/framework-version.d.ts +8 -0
  269. package/dist/repository/framework-version.d.ts.map +1 -0
  270. package/dist/repository/framework-version.js +29 -0
  271. package/dist/repository/framework-version.js.map +1 -0
  272. package/dist/repository/identity-value.d.ts +4 -0
  273. package/dist/repository/identity-value.d.ts.map +1 -0
  274. package/dist/repository/identity-value.js +24 -0
  275. package/dist/repository/identity-value.js.map +1 -0
  276. package/dist/repository/identity.d.ts.map +1 -1
  277. package/dist/repository/identity.js +2 -0
  278. package/dist/repository/identity.js.map +1 -1
  279. package/dist/repository/project-fingerprint.d.ts +14 -2
  280. package/dist/repository/project-fingerprint.d.ts.map +1 -1
  281. package/dist/repository/project-fingerprint.js +312 -33
  282. package/dist/repository/project-fingerprint.js.map +1 -1
  283. package/dist/repository/remote-url.d.ts +0 -1
  284. package/dist/repository/remote-url.d.ts.map +1 -1
  285. package/dist/repository/remote-url.js +0 -1
  286. package/dist/repository/remote-url.js.map +1 -1
  287. package/dist/runtime-version.d.ts +2 -1
  288. package/dist/runtime-version.d.ts.map +1 -1
  289. package/dist/runtime-version.js +21 -4
  290. package/dist/runtime-version.js.map +1 -1
  291. package/dist/serialization/boundary-json.d.ts +20 -0
  292. package/dist/serialization/boundary-json.d.ts.map +1 -0
  293. package/dist/serialization/boundary-json.js +129 -0
  294. package/dist/serialization/boundary-json.js.map +1 -0
  295. package/dist/serialization/envelope.js +1 -1
  296. package/dist/serialization/envelope.js.map +1 -1
  297. package/dist/serialization/validate.d.ts +7 -0
  298. package/dist/serialization/validate.d.ts.map +1 -1
  299. package/dist/serialization/validate.js +53 -13
  300. package/dist/serialization/validate.js.map +1 -1
  301. package/dist/server/app.js +1 -1
  302. package/dist/server/app.js.map +1 -1
  303. package/dist/server/http.d.ts +4 -3
  304. package/dist/server/http.d.ts.map +1 -1
  305. package/dist/server/http.js +90 -50
  306. package/dist/server/http.js.map +1 -1
  307. package/dist/server/idempotency.d.ts +0 -6
  308. package/dist/server/idempotency.d.ts.map +1 -1
  309. package/dist/server/idempotency.js.map +1 -1
  310. package/dist/server/router.d.ts.map +1 -1
  311. package/dist/server/router.js +21 -4
  312. package/dist/server/router.js.map +1 -1
  313. package/dist/server/routes/agent-capability-gate.d.ts +40 -0
  314. package/dist/server/routes/agent-capability-gate.d.ts.map +1 -0
  315. package/dist/server/routes/agent-capability-gate.js +182 -0
  316. package/dist/server/routes/agent-capability-gate.js.map +1 -0
  317. package/dist/server/routes/agent-events.d.ts.map +1 -1
  318. package/dist/server/routes/agent-events.js +8 -1
  319. package/dist/server/routes/agent-events.js.map +1 -1
  320. package/dist/server/routes/agent-intake.d.ts.map +1 -1
  321. package/dist/server/routes/agent-intake.js +10 -2
  322. package/dist/server/routes/agent-intake.js.map +1 -1
  323. package/dist/server/routes/agent-promotions.d.ts.map +1 -1
  324. package/dist/server/routes/agent-promotions.js +5 -2
  325. package/dist/server/routes/agent-promotions.js.map +1 -1
  326. package/dist/server/routes/agent-runs.d.ts.map +1 -1
  327. package/dist/server/routes/agent-runs.js +18 -4
  328. package/dist/server/routes/agent-runs.js.map +1 -1
  329. package/dist/server/routes/request-binding.d.ts +5 -0
  330. package/dist/server/routes/request-binding.d.ts.map +1 -0
  331. package/dist/server/routes/request-binding.js +49 -0
  332. package/dist/server/routes/request-binding.js.map +1 -0
  333. package/dist/server/routes/task5-support.d.ts +1 -8
  334. package/dist/server/routes/task5-support.d.ts.map +1 -1
  335. package/dist/server/routes/task5-support.js +1 -17
  336. package/dist/server/routes/task5-support.js.map +1 -1
  337. package/dist/server/routes/task5.d.ts.map +1 -1
  338. package/dist/server/routes/task5.js +106 -36
  339. package/dist/server/routes/task5.js.map +1 -1
  340. package/dist/server/write-queue.js +2 -2
  341. package/dist/server/write-queue.js.map +1 -1
  342. package/dist/setup/claude-config.d.ts +2 -1
  343. package/dist/setup/claude-config.d.ts.map +1 -1
  344. package/dist/setup/claude-config.js +54 -4
  345. package/dist/setup/claude-config.js.map +1 -1
  346. package/dist/setup/client-detection.d.ts +7 -2
  347. package/dist/setup/client-detection.d.ts.map +1 -1
  348. package/dist/setup/client-detection.js +27 -9
  349. package/dist/setup/client-detection.js.map +1 -1
  350. package/dist/setup/hermes-config.d.ts +2 -1
  351. package/dist/setup/hermes-config.d.ts.map +1 -1
  352. package/dist/setup/hermes-config.js +53 -12
  353. package/dist/setup/hermes-config.js.map +1 -1
  354. package/dist/setup/legacy-client-cleanup.d.ts +6 -0
  355. package/dist/setup/legacy-client-cleanup.d.ts.map +1 -0
  356. package/dist/setup/legacy-client-cleanup.js +152 -0
  357. package/dist/setup/legacy-client-cleanup.js.map +1 -0
  358. package/dist/setup/managed-text.d.ts.map +1 -1
  359. package/dist/setup/managed-text.js +11 -1
  360. package/dist/setup/managed-text.js.map +1 -1
  361. package/dist/setup/opencode-config.d.ts +2 -1
  362. package/dist/setup/opencode-config.d.ts.map +1 -1
  363. package/dist/setup/opencode-config.js +57 -5
  364. package/dist/setup/opencode-config.js.map +1 -1
  365. package/dist/setup/render.d.ts +2 -1
  366. package/dist/setup/render.d.ts.map +1 -1
  367. package/dist/setup/render.js +91 -17
  368. package/dist/setup/render.js.map +1 -1
  369. package/dist/setup/standard-skills.d.ts +16 -2
  370. package/dist/setup/standard-skills.d.ts.map +1 -1
  371. package/dist/setup/standard-skills.js +37 -13
  372. package/dist/setup/standard-skills.js.map +1 -1
  373. package/dist/setup/strict-json.d.ts +7 -0
  374. package/dist/setup/strict-json.d.ts.map +1 -0
  375. package/dist/setup/strict-json.js +98 -0
  376. package/dist/setup/strict-json.js.map +1 -0
  377. package/dist/setup/strict-toml.d.ts +7 -0
  378. package/dist/setup/strict-toml.d.ts.map +1 -0
  379. package/dist/setup/strict-toml.js +470 -0
  380. package/dist/setup/strict-toml.js.map +1 -0
  381. package/dist/skills/cache.d.ts +15 -0
  382. package/dist/skills/cache.d.ts.map +1 -0
  383. package/dist/skills/cache.js +19 -0
  384. package/dist/skills/cache.js.map +1 -0
  385. package/dist/skills/candidate-ranking.d.ts +15 -0
  386. package/dist/skills/candidate-ranking.d.ts.map +1 -0
  387. package/dist/skills/candidate-ranking.js +52 -0
  388. package/dist/skills/candidate-ranking.js.map +1 -0
  389. package/dist/skills/chunking.d.ts +11 -0
  390. package/dist/skills/chunking.d.ts.map +1 -0
  391. package/dist/skills/chunking.js +291 -0
  392. package/dist/skills/chunking.js.map +1 -0
  393. package/dist/skills/config.d.ts +19 -0
  394. package/dist/skills/config.d.ts.map +1 -0
  395. package/dist/skills/config.js +103 -0
  396. package/dist/skills/config.js.map +1 -0
  397. package/dist/skills/discovery-service.d.ts +26 -0
  398. package/dist/skills/discovery-service.d.ts.map +1 -0
  399. package/dist/skills/discovery-service.js +921 -0
  400. package/dist/skills/discovery-service.js.map +1 -0
  401. package/dist/skills/external-transport.d.ts +2 -0
  402. package/dist/skills/external-transport.d.ts.map +1 -0
  403. package/dist/skills/external-transport.js +30 -0
  404. package/dist/skills/external-transport.js.map +1 -0
  405. package/dist/skills/find.d.ts +16 -0
  406. package/dist/skills/find.d.ts.map +1 -0
  407. package/dist/skills/find.js +58 -0
  408. package/dist/skills/find.js.map +1 -0
  409. package/dist/skills/gap-detection.d.ts +23 -0
  410. package/dist/skills/gap-detection.d.ts.map +1 -0
  411. package/dist/skills/gap-detection.js +62 -0
  412. package/dist/skills/gap-detection.js.map +1 -0
  413. package/dist/skills/import-preparation.d.ts +4 -0
  414. package/dist/skills/import-preparation.d.ts.map +1 -0
  415. package/dist/skills/import-preparation.js +20 -0
  416. package/dist/skills/import-preparation.js.map +1 -0
  417. package/dist/skills/materialization-authority.d.ts +11 -0
  418. package/dist/skills/materialization-authority.d.ts.map +1 -0
  419. package/dist/skills/materialization-authority.js +92 -0
  420. package/dist/skills/materialization-authority.js.map +1 -0
  421. package/dist/skills/materialization-service.d.ts +22 -0
  422. package/dist/skills/materialization-service.d.ts.map +1 -0
  423. package/dist/skills/materialization-service.js +101 -0
  424. package/dist/skills/materialization-service.js.map +1 -0
  425. package/dist/skills/official-catalog.d.ts +31 -0
  426. package/dist/skills/official-catalog.d.ts.map +1 -0
  427. package/dist/skills/official-catalog.js +110 -0
  428. package/dist/skills/official-catalog.js.map +1 -0
  429. package/dist/skills/providers/schema.d.ts +30 -0
  430. package/dist/skills/providers/schema.d.ts.map +1 -0
  431. package/dist/skills/providers/schema.js +354 -0
  432. package/dist/skills/providers/schema.js.map +1 -0
  433. package/dist/skills/providers/skills-sh-compat.d.ts +17 -0
  434. package/dist/skills/providers/skills-sh-compat.d.ts.map +1 -0
  435. package/dist/skills/providers/skills-sh-compat.js +71 -0
  436. package/dist/skills/providers/skills-sh-compat.js.map +1 -0
  437. package/dist/skills/providers/skills-sh-v1.d.ts +23 -0
  438. package/dist/skills/providers/skills-sh-v1.d.ts.map +1 -0
  439. package/dist/skills/providers/skills-sh-v1.js +134 -0
  440. package/dist/skills/providers/skills-sh-v1.js.map +1 -0
  441. package/dist/skills/query-builder.d.ts +18 -0
  442. package/dist/skills/query-builder.d.ts.map +1 -0
  443. package/dist/skills/query-builder.js +93 -0
  444. package/dist/skills/query-builder.js.map +1 -0
  445. package/dist/skills/source/errors.d.ts +9 -0
  446. package/dist/skills/source/errors.d.ts.map +1 -0
  447. package/dist/skills/source/errors.js +15 -0
  448. package/dist/skills/source/errors.js.map +1 -0
  449. package/dist/skills/source/frontmatter.d.ts +9 -0
  450. package/dist/skills/source/frontmatter.d.ts.map +1 -0
  451. package/dist/skills/source/frontmatter.js +77 -0
  452. package/dist/skills/source/frontmatter.js.map +1 -0
  453. package/dist/skills/source/github-fetcher.d.ts +20 -0
  454. package/dist/skills/source/github-fetcher.d.ts.map +1 -0
  455. package/dist/skills/source/github-fetcher.js +292 -0
  456. package/dist/skills/source/github-fetcher.js.map +1 -0
  457. package/dist/skills/source/snapshot-validator.d.ts +28 -0
  458. package/dist/skills/source/snapshot-validator.d.ts.map +1 -0
  459. package/dist/skills/source/snapshot-validator.js +186 -0
  460. package/dist/skills/source/snapshot-validator.js.map +1 -0
  461. package/dist/skills/store.d.ts +181 -0
  462. package/dist/skills/store.d.ts.map +1 -0
  463. package/dist/skills/store.js +1710 -0
  464. package/dist/skills/store.js.map +1 -0
  465. package/dist/skills/types.d.ts +169 -0
  466. package/dist/skills/types.d.ts.map +1 -0
  467. package/dist/skills/types.js +2 -0
  468. package/dist/skills/types.js.map +1 -0
  469. package/dist/web/i18n.d.ts +32 -0
  470. package/dist/web/i18n.d.ts.map +1 -1
  471. package/dist/web/i18n.js +128 -0
  472. package/dist/web/i18n.js.map +1 -1
  473. package/dist/web/server.d.ts.map +1 -1
  474. package/dist/web/server.js +386 -38
  475. package/dist/web/server.js.map +1 -1
  476. package/dist/web/ui.d.ts +4 -0
  477. package/dist/web/ui.d.ts.map +1 -1
  478. package/dist/web/ui.js +382 -6
  479. package/dist/web/ui.js.map +1 -1
  480. package/migrations/009_external_skill_discovery.sql +126 -0
  481. package/package.json +4 -3
  482. package/skills/kiokuko-single-purpose-functions/SKILL.md +288 -0
  483. package/skills/kiokuko-single-purpose-functions/references/kiokuko-patterns.md +344 -0
  484. package/skills/kiokuko-single-purpose-functions/references/review-checklist.md +97 -0
  485. package/skills/kiokuko-ui-design-soul/SKILL.md +1186 -28
  486. package/templates/AGENTS.md +8 -7
  487. package/dist/client/runtime-discovery.d.ts +0 -15
  488. package/dist/client/runtime-discovery.d.ts.map +0 -1
  489. package/dist/client/runtime-discovery.js +0 -45
  490. package/dist/client/runtime-discovery.js.map +0 -1
  491. package/dist/commands/call.d.ts +0 -7
  492. package/dist/commands/call.d.ts.map +0 -1
  493. package/dist/commands/call.js +0 -10
  494. package/dist/commands/call.js.map +0 -1
  495. package/dist/commands/link.d.ts +0 -6
  496. package/dist/commands/link.d.ts.map +0 -1
  497. package/dist/commands/link.js +0 -6
  498. package/dist/commands/link.js.map +0 -1
  499. package/dist/commands/promote.d.ts +0 -6
  500. package/dist/commands/promote.d.ts.map +0 -1
  501. package/dist/commands/promote.js +0 -6
  502. package/dist/commands/promote.js.map +0 -1
  503. package/dist/commands/read.d.ts +0 -6
  504. package/dist/commands/read.d.ts.map +0 -1
  505. package/dist/commands/read.js +0 -4
  506. package/dist/commands/read.js.map +0 -1
  507. package/dist/commands/recall.d.ts +0 -6
  508. package/dist/commands/recall.d.ts.map +0 -1
  509. package/dist/commands/recall.js +0 -4
  510. package/dist/commands/recall.js.map +0 -1
  511. package/dist/commands/record.d.ts +0 -6
  512. package/dist/commands/record.d.ts.map +0 -1
  513. package/dist/commands/record.js +0 -4
  514. package/dist/commands/record.js.map +0 -1
  515. package/dist/commands/search.d.ts +0 -6
  516. package/dist/commands/search.d.ts.map +0 -1
  517. package/dist/commands/search.js +0 -4
  518. package/dist/commands/search.js.map +0 -1
  519. package/dist/commands/supersede.d.ts +0 -6
  520. package/dist/commands/supersede.d.ts.map +0 -1
  521. package/dist/commands/supersede.js +0 -6
  522. package/dist/commands/supersede.js.map +0 -1
  523. package/dist/knowledge/sources.d.ts +0 -72
  524. package/dist/knowledge/sources.d.ts.map +0 -1
  525. package/dist/knowledge/sources.js +0 -388
  526. package/dist/knowledge/sources.js.map +0 -1
  527. package/dist/setup/opencode-evidence.d.ts +0 -37
  528. package/dist/setup/opencode-evidence.d.ts.map +0 -1
  529. package/dist/setup/opencode-evidence.js +0 -58
  530. package/dist/setup/opencode-evidence.js.map +0 -1
  531. package/dist/setup/opencode-loop-guard.d.ts +0 -9
  532. package/dist/setup/opencode-loop-guard.d.ts.map +0 -1
  533. package/dist/setup/opencode-loop-guard.js +0 -248
  534. package/dist/setup/opencode-loop-guard.js.map +0 -1
@@ -1,388 +0,0 @@
1
- import { withImmediateTransaction } from '../db/transaction.js';
2
- import { KiokukoError } from '../errors.js';
3
- import { recordEntryInTransaction } from '../memory/entries.js';
4
- import { canonicalContentHash } from '../serialization/validate.js';
5
- export const OFFICIAL_SOURCES = [
6
- {
7
- id: 'mattpocock-skills',
8
- name: 'Matt Pocock Skills',
9
- owner: 'mattpocock',
10
- repository: 'skills',
11
- ref: 'main',
12
- roots: ['skills'],
13
- repositoryUrl: 'https://github.com/mattpocock/skills',
14
- },
15
- ];
16
- const MAX_TREE_ITEMS = 500;
17
- const MAX_DOCUMENTS_PER_SOURCE = 8;
18
- const MAX_DOCUMENT_BYTES = 100_000;
19
- const MAX_SUMMARY_CHARACTERS = 500;
20
- const MAX_TITLE_CHARACTERS = 2_000;
21
- const MAX_COMMIT_CHARACTERS = 200;
22
- const MAX_SOURCE_ERROR_CHARACTERS = 160;
23
- const MAX_SOURCE_ID_CHARACTERS = 100;
24
- const MAX_TASK_CHARACTERS = 16_384;
25
- const ALLOWED_REVISION = /^[A-Za-z0-9._-]{1,200}$/u;
26
- const ALLOWED_PATH = /^[A-Za-z0-9._/-]{1,2000}$/u;
27
- function sourceApiUrl(source, endpoint) {
28
- return `https://api.github.com/repos/${source.owner}/${source.repository}/${endpoint}`;
29
- }
30
- function rawDocumentUrl(source, commit, path) {
31
- return `https://raw.githubusercontent.com/${source.owner}/${source.repository}/${commit}/${path}`;
32
- }
33
- function sourceForId(sourceId) {
34
- const source = OFFICIAL_SOURCES.find((candidate) => candidate.id === sourceId);
35
- if (!source)
36
- throw new KiokukoError('VALIDATION_ERROR', 'Official source is not allowlisted');
37
- return source;
38
- }
39
- function sourceFailure() {
40
- return new KiokukoError('PARTIAL_FAILURE', 'Official source could not be prepared');
41
- }
42
- function safeError(error) {
43
- if (error instanceof KiokukoError && error.code === 'SECURITY_REJECTION')
44
- return 'document_rejected';
45
- if (error instanceof KiokukoError && error.code === 'PARTIAL_FAILURE')
46
- return 'source_unavailable';
47
- return 'source_unavailable';
48
- }
49
- async function fetchBoundedText(fetchImpl, url, accept) {
50
- const response = await fetchImpl(url, {
51
- headers: {
52
- accept,
53
- 'user-agent': 'kiokuko-source-sync',
54
- },
55
- });
56
- if (!response.ok)
57
- throw sourceFailure();
58
- const reader = response.body?.getReader();
59
- if (!reader) {
60
- const text = await response.text();
61
- if (Buffer.byteLength(text, 'utf8') > 2_000_000)
62
- throw sourceFailure();
63
- return text;
64
- }
65
- const chunks = [];
66
- let size = 0;
67
- try {
68
- for (;;) {
69
- const next = await reader.read();
70
- if (next.done)
71
- break;
72
- const chunk = Buffer.from(next.value);
73
- size += chunk.byteLength;
74
- if (size > 2_000_000) {
75
- await reader.cancel();
76
- throw sourceFailure();
77
- }
78
- chunks.push(chunk);
79
- }
80
- }
81
- catch {
82
- throw sourceFailure();
83
- }
84
- return Buffer.concat(chunks).toString('utf8');
85
- }
86
- async function fetchJson(fetchImpl, url) {
87
- const text = await fetchBoundedText(fetchImpl, url, 'application/vnd.github+json');
88
- try {
89
- return JSON.parse(text);
90
- }
91
- catch {
92
- throw sourceFailure();
93
- }
94
- }
95
- async function fetchText(fetchImpl, url) {
96
- const text = await fetchBoundedText(fetchImpl, url, 'text/plain');
97
- if (Buffer.byteLength(text, 'utf8') > MAX_DOCUMENT_BYTES)
98
- throw sourceFailure();
99
- return text;
100
- }
101
- function asObject(value) {
102
- if (typeof value !== 'object' || value === null || Array.isArray(value))
103
- throw sourceFailure();
104
- return value;
105
- }
106
- function revision(value) {
107
- if (typeof value !== 'string' || !ALLOWED_REVISION.test(value))
108
- throw sourceFailure();
109
- return value;
110
- }
111
- function parseFrontmatter(content) {
112
- const metadata = /^---\r?\n([\s\S]*?)\r?\n---(?:\r?\n|$)/u.exec(content)?.[1] ?? '';
113
- const name = /^name:\s*["']?(.+?)["']?\s*$/mu.exec(metadata)?.[1]?.trim() ?? null;
114
- const description = /^description:\s*["']?(.+?)["']?\s*$/mu.exec(metadata)?.[1]?.trim() ?? null;
115
- return {
116
- name: name?.slice(0, MAX_TITLE_CHARACTERS) || null,
117
- description: description?.slice(0, MAX_SUMMARY_CHARACTERS) || null,
118
- disableModelInvocation: /^disable-model-invocation:\s*true\s*$/mu.test(metadata),
119
- };
120
- }
121
- function tokens(value) {
122
- return new Set((value.toLocaleLowerCase().match(/[\p{L}\p{N}][\p{L}\p{N}-]*/gu) ?? []).filter((token) => token.length > 1));
123
- }
124
- function pathRoleTags(path) {
125
- const normalized = path.toLocaleLowerCase();
126
- const tags = new Set();
127
- if (/tdd|prototype|implement|codebase-design/u.test(normalized))
128
- tags.add('bot:builder');
129
- if (/diagnos|debug|code-review|resolving-merge-conflicts/u.test(normalized))
130
- tags.add('bot:reviewer');
131
- if (/research|citation|search/u.test(normalized))
132
- tags.add('bot:researcher');
133
- if (/wizard|devops|infrastructure|deploy/u.test(normalized))
134
- tags.add('bot:devops');
135
- if (/writing|document|to-spec|to-prd/u.test(normalized))
136
- tags.add('bot:writer');
137
- if (/analysis|domain-modeling|codebase-design/u.test(normalized))
138
- tags.add('bot:analyst');
139
- return [...tags].sort();
140
- }
141
- function scoreDocument(document, task, profile, recommendedTags) {
142
- const query = tokens([task, profile.target ?? '', profile.expected ?? '', profile.constraints ?? ''].join(' '));
143
- const searchable = tokens([document.path, document.title, document.summary ?? '', document.content.slice(0, 12_000)].join(' '));
144
- let score = [...query].filter((token) => searchable.has(token)).length;
145
- const normalizedPath = document.path.toLocaleLowerCase();
146
- if (profile.taskType === 'build' && /tdd|test|implement|develop|codebase-design/u.test(normalizedPath))
147
- score += 5;
148
- if (profile.taskType === 'debug' && /debug|diagnos|systematic/u.test(normalizedPath))
149
- score += 5;
150
- if (profile.taskType === 'research' && /research|citation|search/u.test(normalizedPath))
151
- score += 5;
152
- if (profile.taskType === 'review' && /review|verification/u.test(normalizedPath))
153
- score += 5;
154
- if (profile.taskType === 'devops' && /devops|infra|docker|server/u.test(normalizedPath))
155
- score += 5;
156
- if (profile.taskType === 'writing' && /writing|document/u.test(normalizedPath))
157
- score += 5;
158
- if (recommendedTags.some((tag) => pathRoleTags(document.path).includes(tag)))
159
- score += 3;
160
- return score;
161
- }
162
- function documentTitle(source, path, content) {
163
- const frontmatter = parseFrontmatter(content);
164
- const basename = path.split('/').at(-2) ?? path.split('/').at(-1) ?? 'document';
165
- return {
166
- title: `${source.name}: ${frontmatter.name ?? basename}`.slice(0, MAX_TITLE_CHARACTERS),
167
- summary: frontmatter.description
168
- ?? content.replace(/^---[\s\S]*?---\s*/u, '').trim().slice(0, MAX_SUMMARY_CHARACTERS),
169
- };
170
- }
171
- function isCandidatePath(source, path) {
172
- if (!ALLOWED_PATH.test(path) || !path.endsWith('/SKILL.md'))
173
- return false;
174
- return source.roots.some((root) => path === root || path.startsWith(`${root}/`));
175
- }
176
- async function loadSourceDocuments(source, fetchImpl, task, profile, recommendedTags) {
177
- const commitValue = revision(asObject(await fetchJson(fetchImpl, sourceApiUrl(source, `commits/${source.ref}`))).sha);
178
- const treeValue = asObject(await fetchJson(fetchImpl, sourceApiUrl(source, `git/trees/${commitValue}?recursive=1`)));
179
- if (treeValue.truncated === true || !Array.isArray(treeValue.tree))
180
- throw sourceFailure();
181
- const tree = treeValue.tree.flatMap((item) => {
182
- if (typeof item !== 'object' || item === null || Array.isArray(item))
183
- return [];
184
- const object = item;
185
- return typeof object.path === 'string' && typeof object.type === 'string' ? [{ path: object.path, type: object.type }] : [];
186
- });
187
- const paths = tree
188
- .filter((item) => item.type === 'blob' && isCandidatePath(source, item.path))
189
- .sort((left, right) => left.path.localeCompare(right.path))
190
- .slice(0, MAX_TREE_ITEMS);
191
- const documents = [];
192
- for (const item of paths) {
193
- const content = await fetchText(fetchImpl, rawDocumentUrl(source, commitValue, item.path));
194
- if (parseFrontmatter(content).disableModelInvocation)
195
- continue;
196
- const title = documentTitle(source, item.path, content);
197
- const score = scoreDocument({ path: item.path, ...title, content }, task, profile, recommendedTags);
198
- if (score > 0)
199
- documents.push({
200
- sourceId: source.id,
201
- commit: commitValue,
202
- path: item.path,
203
- content,
204
- ...title,
205
- score,
206
- tags: pathRoleTags(item.path),
207
- });
208
- }
209
- documents.sort((left, right) => right.score - left.score || left.path.localeCompare(right.path));
210
- return { commit: commitValue, documents: documents.slice(0, MAX_DOCUMENTS_PER_SOURCE) };
211
- }
212
- function clonePrepared(prepared) {
213
- const copy = structuredClone(prepared);
214
- return deepFreeze(copy);
215
- }
216
- function deepFreeze(value) {
217
- if (typeof value === 'object' && value !== null) {
218
- Object.freeze(value);
219
- for (const child of Object.values(value))
220
- deepFreeze(child);
221
- }
222
- return value;
223
- }
224
- export async function prepareOfficialSourceSync(input) {
225
- if (typeof input.workspace !== 'string' || input.workspace.length === 0)
226
- throw new KiokukoError('VALIDATION_ERROR', 'Official source preparation input is invalid');
227
- if (typeof input.task !== 'string' || input.task.length > MAX_TASK_CHARACTERS)
228
- throw new KiokukoError('VALIDATION_ERROR', 'Official source preparation input is invalid');
229
- const fetchImpl = input.fetchImpl ?? fetch;
230
- const sources = await Promise.all(OFFICIAL_SOURCES.map(async (source) => {
231
- try {
232
- const loaded = await loadSourceDocuments(source, fetchImpl, input.task, input.profile, input.recommendedTags);
233
- return { sourceId: source.id, commit: loaded.commit, documents: loaded.documents };
234
- }
235
- catch (error) {
236
- return { sourceId: source.id, commit: null, documents: [], error: safeError(error).slice(0, MAX_SOURCE_ERROR_CHARACTERS) };
237
- }
238
- }));
239
- return clonePrepared({ attempted: true, sources });
240
- }
241
- function validatePrepared(prepared) {
242
- if (typeof prepared !== 'object' || prepared === null || Array.isArray(prepared))
243
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
244
- const input = prepared;
245
- if (input.attempted !== true || !Array.isArray(input.sources) || input.sources.length !== OFFICIAL_SOURCES.length)
246
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
247
- const sources = [];
248
- const seenSources = new Set();
249
- for (const value of input.sources) {
250
- if (typeof value !== 'object' || value === null || Array.isArray(value))
251
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
252
- const source = value;
253
- if (typeof source.sourceId !== 'string' || source.sourceId.length > MAX_SOURCE_ID_CHARACTERS || seenSources.has(source.sourceId))
254
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
255
- const official = sourceForId(source.sourceId);
256
- seenSources.add(source.sourceId);
257
- const commitValue = source.commit;
258
- const commit = commitValue === null ? null : revision(commitValue);
259
- if (!Array.isArray(source.documents) || source.documents.length > MAX_DOCUMENTS_PER_SOURCE)
260
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
261
- const paths = new Set();
262
- const documents = source.documents.map((value) => {
263
- if (typeof value !== 'object' || value === null || Array.isArray(value))
264
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
265
- const document = value;
266
- if (document.sourceId !== official.id || typeof document.commit !== 'string' || document.commit !== commit || !ALLOWED_REVISION.test(document.commit))
267
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
268
- if (typeof document.path !== 'string' || !isCandidatePath(official, document.path) || paths.has(document.path))
269
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
270
- paths.add(document.path);
271
- if (typeof document.content !== 'string' || Buffer.byteLength(document.content, 'utf8') > MAX_DOCUMENT_BYTES)
272
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
273
- if (typeof document.title !== 'string' || document.title.length === 0 || document.title.length > MAX_TITLE_CHARACTERS)
274
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
275
- if (document.summary !== null && (typeof document.summary !== 'string' || document.summary.length > MAX_SUMMARY_CHARACTERS))
276
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
277
- if (typeof document.score !== 'number' || !Number.isSafeInteger(document.score) || document.score < 1)
278
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
279
- if (!Array.isArray(document.tags) || document.tags.length > 16 || document.tags.some((tag) => typeof tag !== 'string' || tag.length === 0 || tag.length > 200))
280
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
281
- return {
282
- sourceId: official.id,
283
- commit: document.commit,
284
- path: document.path,
285
- content: document.content,
286
- title: document.title,
287
- summary: document.summary,
288
- score: document.score,
289
- tags: [...new Set(document.tags)].sort(),
290
- };
291
- }).sort((left, right) => right.score - left.score || left.path.localeCompare(right.path));
292
- const safeSourceError = source.error === undefined
293
- ? undefined
294
- : source.error === 'source_unavailable' || source.error === 'document_rejected'
295
- ? source.error
296
- : 'source_unavailable';
297
- sources.push({ sourceId: official.id, commit, documents, ...(safeSourceError === undefined ? {} : { error: safeSourceError.slice(0, MAX_SOURCE_ERROR_CHARACTERS) }) });
298
- }
299
- if (seenSources.size !== OFFICIAL_SOURCES.length)
300
- throw new KiokukoError('VALIDATION_ERROR', 'Prepared official source data is invalid');
301
- return { attempted: true, sources: sources.sort((left, right) => left.sourceId.localeCompare(right.sourceId)) };
302
- }
303
- function documentInput(workspace, document) {
304
- const source = sourceForId(document.sourceId);
305
- const provenance = {
306
- type: 'github_repository',
307
- reference: `https://github.com/${source.owner}/${source.repository}/blob/${document.commit}/${document.path}`,
308
- };
309
- const tags = [...new Set([
310
- `source:${source.id}`,
311
- document.path.endsWith('/SKILL.md') ? 'external:skill' : 'external:knowledge',
312
- `skill:${document.path.split('/').at(-2) ?? 'document'}`,
313
- ...document.tags,
314
- ])].sort();
315
- const input = {
316
- workspace,
317
- kind: 'reference',
318
- title: document.title,
319
- body: document.content,
320
- summary: document.summary,
321
- provenance,
322
- trustLevel: 'untrusted',
323
- confidence: 0.75,
324
- tags,
325
- createdBy: 'kiokuko-source-sync',
326
- actor: 'kiokuko-source-sync',
327
- };
328
- return { input, contentHash: canonicalContentHash({ kind: input.kind, title: input.title, body: input.body, summary: input.summary, scope: {}, provenance, tags }) };
329
- }
330
- export function persistOfficialSourceSyncInTransaction(database, input) {
331
- const workspace = input.workspace;
332
- if (typeof workspace !== 'string' || workspace.length === 0)
333
- throw new KiokukoError('VALIDATION_ERROR', 'Official source persistence input is invalid');
334
- const prepared = validatePrepared(input.prepared);
335
- const now = input.now ?? new Date().toISOString();
336
- let imported = 0;
337
- const sources = [];
338
- for (const preparedSource of prepared.sources) {
339
- if (preparedSource.commit === null) {
340
- sources.push({ sourceId: preparedSource.sourceId, commit: null, documents: 0, imported: 0, ...(preparedSource.error === undefined ? {} : { error: preparedSource.error }) });
341
- continue;
342
- }
343
- let sourceImported = 0;
344
- for (const document of preparedSource.documents) {
345
- const built = documentInput(workspace, document);
346
- const existing = database.prepare('SELECT entry_id AS id FROM entry_revisions WHERE workspace = ? AND content_hash = ? LIMIT 1').get(workspace, built.contentHash);
347
- try {
348
- recordEntryInTransaction(database, built.input, { now });
349
- if (!existing)
350
- sourceImported += 1;
351
- }
352
- catch (error) {
353
- if (error instanceof KiokukoError && error.code === 'SECURITY_REJECTION')
354
- continue;
355
- throw error;
356
- }
357
- }
358
- const source = sourceForId(preparedSource.sourceId);
359
- database.prepare(`
360
- INSERT INTO knowledge_sources (source_id, repository_url, ref_name, commit_sha, document_count, last_synced_at)
361
- VALUES (?, ?, ?, ?, ?, ?)
362
- ON CONFLICT(source_id) DO UPDATE SET repository_url = excluded.repository_url,
363
- ref_name = excluded.ref_name, commit_sha = excluded.commit_sha,
364
- document_count = excluded.document_count, last_synced_at = excluded.last_synced_at
365
- `).run(source.id, source.repositoryUrl, source.ref, preparedSource.commit, preparedSource.documents.length, now);
366
- imported += sourceImported;
367
- sources.push({ sourceId: source.id, commit: preparedSource.commit, documents: preparedSource.documents.length, imported: sourceImported, ...(preparedSource.error === undefined ? {} : { error: preparedSource.error }) });
368
- }
369
- return { attempted: true, imported, sources };
370
- }
371
- export function persistOfficialSourceSync(database, input) {
372
- return withImmediateTransaction(database, () => persistOfficialSourceSyncInTransaction(database, input));
373
- }
374
- export async function syncOfficialSources(input) {
375
- const prepared = await prepareOfficialSourceSync({
376
- workspace: input.workspace,
377
- task: input.task,
378
- profile: input.profile,
379
- recommendedTags: input.recommendedTags,
380
- ...(input.fetchImpl === undefined ? {} : { fetchImpl: input.fetchImpl }),
381
- });
382
- return persistOfficialSourceSync(input.database, {
383
- workspace: input.workspace,
384
- prepared,
385
- ...(input.now === undefined ? {} : { now: input.now }),
386
- });
387
- }
388
- //# sourceMappingURL=sources.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"sources.js","sourceRoot":"","sources":["../../src/knowledge/sources.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,wBAAwB,EAAE,MAAM,sBAAsB,CAAC;AAChE,OAAO,EAAE,oBAAoB,EAAmB,MAAM,8BAA8B,CAAC;AAerF,MAAM,CAAC,MAAM,gBAAgB,GAAqB;IAChD;QACE,EAAE,EAAE,mBAAmB;QACvB,IAAI,EAAE,oBAAoB;QAC1B,KAAK,EAAE,YAAY;QACnB,UAAU,EAAE,QAAQ;QACpB,GAAG,EAAE,MAAM;QACX,KAAK,EAAE,CAAC,QAAQ,CAAC;QACjB,aAAa,EAAE,sCAAsC;KACtD;CACF,CAAC;AAsDF,MAAM,cAAc,GAAG,GAAG,CAAC;AAC3B,MAAM,wBAAwB,GAAG,CAAC,CAAC;AACnC,MAAM,kBAAkB,GAAG,OAAO,CAAC;AACnC,MAAM,sBAAsB,GAAG,GAAG,CAAC;AACnC,MAAM,oBAAoB,GAAG,KAAK,CAAC;AACnC,MAAM,qBAAqB,GAAG,GAAG,CAAC;AAClC,MAAM,2BAA2B,GAAG,GAAG,CAAC;AACxC,MAAM,wBAAwB,GAAG,GAAG,CAAC;AACrC,MAAM,mBAAmB,GAAG,MAAM,CAAC;AACnC,MAAM,gBAAgB,GAAG,0BAA0B,CAAC;AACpD,MAAM,YAAY,GAAG,4BAA4B,CAAC;AAElD,SAAS,YAAY,CAAC,MAAsB,EAAE,QAAgB;IAC5D,OAAO,gCAAgC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,IAAI,QAAQ,EAAE,CAAC;AACzF,CAAC;AAED,SAAS,cAAc,CAAC,MAAsB,EAAE,MAAc,EAAE,IAAY;IAC1E,OAAO,qCAAqC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,IAAI,MAAM,IAAI,IAAI,EAAE,CAAC;AACpG,CAAC;AAED,SAAS,WAAW,CAAC,QAAgB;IACnC,MAAM,MAAM,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,CAAC,EAAE,KAAK,QAAQ,CAAC,CAAC;IAC/E,IAAI,CAAC,MAAM;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,oCAAoC,CAAC,CAAC;IAC9F,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,SAAS,aAAa;IACpB,OAAO,IAAI,YAAY,CAAC,iBAAiB,EAAE,uCAAuC,CAAC,CAAC;AACtF,CAAC;AAED,SAAS,SAAS,CAAC,KAAc;IAC/B,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB;QAAE,OAAO,mBAAmB,CAAC;IACrG,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,iBAAiB;QAAE,OAAO,oBAAoB,CAAC;IACnG,OAAO,oBAAoB,CAAC;AAC9B,CAAC;AAED,KAAK,UAAU,gBAAgB,CAAC,SAAoB,EAAE,GAAW,EAAE,MAAc;IAC/E,MAAM,QAAQ,GAAG,MAAM,SAAS,CAAC,GAAG,EAAE;QACpC,OAAO,EAAE;YACP,MAAM;YACN,YAAY,EAAE,qBAAqB;SACpC;KACF,CAAC,CAAC;IACH,IAAI,CAAC,QAAQ,CAAC,EAAE;QAAE,MAAM,aAAa,EAAE,CAAC;IACxC,MAAM,MAAM,GAAG,QAAQ,CAAC,IAAI,EAAE,SAAS,EAAE,CAAC;IAC1C,IAAI,CAAC,MAAM,EAAE,CAAC;QACZ,MAAM,IAAI,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;QACnC,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,SAAS;YAAE,MAAM,aAAa,EAAE,CAAC;QACvE,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,MAAM,GAAa,EAAE,CAAC;IAC5B,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,CAAC;QACH,SAAS,CAAC;YACR,MAAM,IAAI,GAAG,MAAM,MAAM,CAAC,IAAI,EAAE,CAAC;YACjC,IAAI,IAAI,CAAC,IAAI;gBAAE,MAAM;YACrB,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtC,IAAI,IAAI,KAAK,CAAC,UAAU,CAAC;YACzB,IAAI,IAAI,GAAG,SAAS,EAAE,CAAC;gBACrB,MAAM,MAAM,CAAC,MAAM,EAAE,CAAC;gBACtB,MAAM,aAAa,EAAE,CAAC;YACxB,CAAC;YACD,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACrB,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,aAAa,EAAE,CAAC;IACxB,CAAC;IACD,OAAO,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;AAChD,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,SAAoB,EAAE,GAAW;IACxD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,6BAA6B,CAAC,CAAC;IACnF,IAAI,CAAC;QACH,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAY,CAAC;IACrC,CAAC;IAAC,MAAM,CAAC;QACP,MAAM,aAAa,EAAE,CAAC;IACxB,CAAC;AACH,CAAC;AAED,KAAK,UAAU,SAAS,CAAC,SAAoB,EAAE,GAAW;IACxD,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,SAAS,EAAE,GAAG,EAAE,YAAY,CAAC,CAAC;IAClE,IAAI,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,MAAM,CAAC,GAAG,kBAAkB;QAAE,MAAM,aAAa,EAAE,CAAC;IAChF,OAAO,IAAI,CAAC;AACd,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;QAAE,MAAM,aAAa,EAAE,CAAC;IAC/F,OAAO,KAAgC,CAAC;AAC1C,CAAC;AAED,SAAS,QAAQ,CAAC,KAAc;IAC9B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,KAAK,CAAC;QAAE,MAAM,aAAa,EAAE,CAAC;IACtF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,gBAAgB,CAAC,OAAe;IACvC,MAAM,QAAQ,GAAG,yCAAyC,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACpF,MAAM,IAAI,GAAG,gCAAgC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IAClF,MAAM,WAAW,GAAG,uCAAuC,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,IAAI,IAAI,CAAC;IAChG,OAAO;QACL,IAAI,EAAE,IAAI,EAAE,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC,IAAI,IAAI;QAClD,WAAW,EAAE,WAAW,EAAE,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC,IAAI,IAAI;QAClE,sBAAsB,EAAE,yCAAyC,CAAC,IAAI,CAAC,QAAQ,CAAC;KACjF,CAAC;AACJ,CAAC;AAED,SAAS,MAAM,CAAC,KAAa;IAC3B,OAAO,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,iBAAiB,EAAE,CAAC,KAAK,CAAC,8BAA8B,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC;AAC9H,CAAC;AAED,SAAS,YAAY,CAAC,IAAY;IAChC,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;IAC5C,MAAM,IAAI,GAAG,IAAI,GAAG,EAAU,CAAC;IAC/B,IAAI,0CAA0C,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IACzF,IAAI,sDAAsD,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;IACtG,IAAI,2BAA2B,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC,CAAC;IAC7E,IAAI,sCAAsC,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IACpF,IAAI,kCAAkC,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAChF,IAAI,2CAA2C,CAAC,IAAI,CAAC,UAAU,CAAC;QAAE,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAC;IAC1F,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,SAAS,aAAa,CAAC,QAAkF,EAAE,IAAY,EAAE,OAAoB,EAAE,eAAyB;IACtK,MAAM,KAAK,GAAG,MAAM,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,MAAM,IAAI,EAAE,EAAE,OAAO,CAAC,QAAQ,IAAI,EAAE,EAAE,OAAO,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChH,MAAM,UAAU,GAAG,MAAM,CAAC,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC,OAAO,IAAI,EAAE,EAAE,QAAQ,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChI,IAAI,KAAK,GAAG,CAAC,GAAG,KAAK,CAAC,CAAC,MAAM,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;IACvE,MAAM,cAAc,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,EAAE,CAAC;IACzD,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,6CAA6C,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACnH,IAAI,OAAO,CAAC,QAAQ,KAAK,OAAO,IAAI,2BAA2B,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACjG,IAAI,OAAO,CAAC,QAAQ,KAAK,UAAU,IAAI,2BAA2B,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACpG,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,sBAAsB,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IAC7F,IAAI,OAAO,CAAC,QAAQ,KAAK,QAAQ,IAAI,6BAA6B,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACpG,IAAI,OAAO,CAAC,QAAQ,KAAK,SAAS,IAAI,mBAAmB,CAAC,IAAI,CAAC,cAAc,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IAC3F,IAAI,eAAe,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;QAAE,KAAK,IAAI,CAAC,CAAC;IACzF,OAAO,KAAK,CAAC;AACf,CAAC;AAED,SAAS,aAAa,CAAC,MAAsB,EAAE,IAAY,EAAE,OAAe;IAC1E,MAAM,WAAW,GAAG,gBAAgB,CAAC,OAAO,CAAC,CAAC;IAC9C,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,CAAC;IAChF,OAAO;QACL,KAAK,EAAE,GAAG,MAAM,CAAC,IAAI,KAAK,WAAW,CAAC,IAAI,IAAI,QAAQ,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,oBAAoB,CAAC;QACvF,OAAO,EAAE,WAAW,CAAC,WAAW;eAC3B,OAAO,CAAC,OAAO,CAAC,qBAAqB,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,sBAAsB,CAAC;KACxF,CAAC;AACJ,CAAC;AAED,SAAS,eAAe,CAAC,MAAsB,EAAE,IAAY;IAC3D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC;QAAE,OAAO,KAAK,CAAC;IAC1E,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,IAAI,IAAI,IAAI,CAAC,UAAU,CAAC,GAAG,IAAI,GAAG,CAAC,CAAC,CAAC;AACnF,CAAC;AAED,KAAK,UAAU,mBAAmB,CAAC,MAAsB,EAAE,SAAoB,EAAE,IAAY,EAAE,OAAoB,EAAE,eAAyB;IAC5I,MAAM,WAAW,GAAG,QAAQ,CAAC,QAAQ,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,WAAW,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IACtH,MAAM,SAAS,GAAG,QAAQ,CAAC,MAAM,SAAS,CAAC,SAAS,EAAE,YAAY,CAAC,MAAM,EAAE,aAAa,WAAW,cAAc,CAAC,CAAC,CAAC,CAAC;IACrH,IAAI,SAAS,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,IAAI,CAAC;QAAE,MAAM,aAAa,EAAE,CAAC;IAC1F,MAAM,IAAI,GAAI,SAAS,CAAC,IAAkB,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE;QAC1D,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC;YAAE,OAAO,EAAE,CAAC;QAChF,MAAM,MAAM,GAAG,IAA+B,CAAC;QAC/C,OAAO,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,OAAO,MAAM,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,IAAI,EAAE,MAAM,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC9H,CAAC,CAAe,CAAC;IACjB,MAAM,KAAK,GAAG,IAAI;SACf,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,MAAM,IAAI,eAAe,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC;SAC5E,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;SAC1D,KAAK,CAAC,CAAC,EAAE,cAAc,CAAC,CAAC;IAC5B,MAAM,SAAS,GAAqC,EAAE,CAAC;IACvD,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,SAAS,EAAE,cAAc,CAAC,MAAM,EAAE,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;QAC3F,IAAI,gBAAgB,CAAC,OAAO,CAAC,CAAC,sBAAsB;YAAE,SAAS;QAC/D,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;QACxD,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,GAAG,KAAK,EAAE,OAAO,EAAE,EAAE,IAAI,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QACpG,IAAI,KAAK,GAAG,CAAC;YAAE,SAAS,CAAC,IAAI,CAAC;gBAC5B,QAAQ,EAAE,MAAM,CAAC,EAAE;gBACnB,MAAM,EAAE,WAAW;gBACnB,IAAI,EAAE,IAAI,CAAC,IAAI;gBACf,OAAO;gBACP,GAAG,KAAK;gBACR,KAAK;gBACL,IAAI,EAAE,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC;aAC9B,CAAC,CAAC;IACL,CAAC;IACD,SAAS,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IACjG,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,EAAE,wBAAwB,CAAC,EAAE,CAAC;AAC1F,CAAC;AAED,SAAS,aAAa,CAAC,QAAoC;IACzD,MAAM,IAAI,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;IACvC,OAAO,UAAU,CAAC,IAAI,CAAC,CAAC;AAC1B,CAAC;AAED,SAAS,UAAU,CAAI,KAAQ;IAC7B,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;QAChD,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QACrB,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,MAAM,CAAC,KAAgC,CAAC;YAAE,UAAU,CAAC,KAAK,CAAC,CAAC;IACzF,CAAC;IACD,OAAO,KAAK,CAAC;AACf,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAAC,KAAqC;IACnF,IAAI,OAAO,KAAK,CAAC,SAAS,KAAK,QAAQ,IAAI,KAAK,CAAC,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;IACpK,IAAI,OAAO,KAAK,CAAC,IAAI,KAAK,QAAQ,IAAI,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,mBAAmB;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;IAC1K,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC;IAC3C,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC,gBAAgB,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAmC,EAAE;QACvG,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,mBAAmB,CAAC,MAAM,EAAE,SAAS,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,CAAC,eAAe,CAAC,CAAC;YAC9G,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,SAAS,EAAE,CAAC;QACrF,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,KAAK,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,2BAA2B,CAAC,EAAE,CAAC;QAC7H,CAAC;IACH,CAAC,CAAC,CAAC,CAAC;IACJ,OAAO,aAAa,CAAC,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;AACrD,CAAC;AAED,SAAS,gBAAgB,CAAC,QAAiB;IACzC,IAAI,OAAO,QAAQ,KAAK,QAAQ,IAAI,QAAQ,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;IACzK,MAAM,KAAK,GAAG,QAAmC,CAAC;IAClD,IAAI,KAAK,CAAC,SAAS,KAAK,IAAI,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,KAAK,CAAC,OAAO,CAAC,MAAM,KAAK,gBAAgB,CAAC,MAAM;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;IAC1M,MAAM,OAAO,GAA6B,EAAE,CAAC;IAC7C,MAAM,WAAW,GAAG,IAAI,GAAG,EAAU,CAAC;IACtC,KAAK,MAAM,KAAK,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;QAClC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;QAChK,MAAM,MAAM,GAAG,KAAgC,CAAC;QAChD,IAAI,OAAO,MAAM,CAAC,QAAQ,KAAK,QAAQ,IAAI,MAAM,CAAC,QAAQ,CAAC,MAAM,GAAG,wBAAwB,IAAI,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;QACzN,MAAM,QAAQ,GAAG,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QAC9C,WAAW,CAAC,GAAG,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,CAAC;QAClC,MAAM,MAAM,GAAG,WAAW,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QACnE,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,MAAM,CAAC,SAAS,CAAC,IAAI,MAAM,CAAC,SAAS,CAAC,MAAM,GAAG,wBAAwB;YAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;QACnL,MAAM,KAAK,GAAG,IAAI,GAAG,EAAU,CAAC;QAChC,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC,KAAK,EAAkC,EAAE;YAC/E,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YAChK,MAAM,QAAQ,GAAG,KAAgC,CAAC;YAClD,IAAI,QAAQ,CAAC,QAAQ,KAAK,QAAQ,CAAC,EAAE,IAAI,OAAO,QAAQ,CAAC,MAAM,KAAK,QAAQ,IAAI,QAAQ,CAAC,MAAM,KAAK,MAAM,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YAC9O,IAAI,OAAO,QAAQ,CAAC,IAAI,KAAK,QAAQ,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,IAAI,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YACvM,KAAK,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;YACzB,IAAI,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC,GAAG,kBAAkB;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YACrM,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,CAAC,MAAM,GAAG,oBAAoB;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YAC9M,IAAI,QAAQ,CAAC,OAAO,KAAK,IAAI,IAAI,CAAC,OAAO,QAAQ,CAAC,OAAO,KAAK,QAAQ,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,GAAG,sBAAsB,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YACpN,IAAI,OAAO,QAAQ,CAAC,KAAK,KAAK,QAAQ,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,QAAQ,CAAC,KAAK,GAAG,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YAC9L,IAAI,CAAC,KAAK,CAAC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,MAAM,GAAG,EAAE,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,GAAG,GAAG,CAAC;gBAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;YACvP,OAAO;gBACL,QAAQ,EAAE,QAAQ,CAAC,EAAE;gBACrB,MAAM,EAAE,QAAQ,CAAC,MAAM;gBACvB,IAAI,EAAE,QAAQ,CAAC,IAAI;gBACnB,OAAO,EAAE,QAAQ,CAAC,OAAO;gBACzB,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,OAAO,EAAE,QAAQ,CAAC,OAAwB;gBAC1C,KAAK,EAAE,QAAQ,CAAC,KAAK;gBACrB,IAAI,EAAE,CAAC,GAAG,IAAI,GAAG,CAAC,QAAQ,CAAC,IAAgB,CAAC,CAAC,CAAC,IAAI,EAAE;aACrD,CAAC;QACJ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,KAAK,CAAC,KAAK,GAAG,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;QAC1F,MAAM,eAAe,GAAG,MAAM,CAAC,KAAK,KAAK,SAAS;YAChD,CAAC,CAAC,SAAS;YACX,CAAC,CAAC,MAAM,CAAC,KAAK,KAAK,oBAAoB,IAAI,MAAM,CAAC,KAAK,KAAK,mBAAmB;gBAC7E,CAAC,CAAC,MAAM,CAAC,KAAK;gBACd,CAAC,CAAC,oBAAoB,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,CAAC,eAAe,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,eAAe,CAAC,KAAK,CAAC,CAAC,EAAE,2BAA2B,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;IACzK,CAAC;IACD,IAAI,WAAW,CAAC,IAAI,KAAK,gBAAgB,CAAC,MAAM;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,0CAA0C,CAAC,CAAC;IACzI,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,EAAE,CAAC;AAClH,CAAC;AAED,SAAS,aAAa,CAAC,SAAiB,EAAE,QAAwC;IAIhF,MAAM,MAAM,GAAG,WAAW,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,UAAU,GAAG;QACjB,IAAI,EAAE,mBAAmB;QACzB,SAAS,EAAE,sBAAsB,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,UAAU,SAAS,QAAQ,CAAC,MAAM,IAAI,QAAQ,CAAC,IAAI,EAAE;KAChG,CAAC;IAChB,MAAM,IAAI,GAAG,CAAC,GAAG,IAAI,GAAG,CAAC;YACvB,UAAU,MAAM,CAAC,EAAE,EAAE;YACrB,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,gBAAgB,CAAC,CAAC,CAAC,oBAAoB;YAC7E,SAAS,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,UAAU,EAAE;YACxD,GAAG,QAAQ,CAAC,IAAI;SACjB,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;IACX,MAAM,KAAK,GAAG;QACZ,SAAS;QACT,IAAI,EAAE,WAAoB;QAC1B,KAAK,EAAE,QAAQ,CAAC,KAAK;QACrB,IAAI,EAAE,QAAQ,CAAC,OAAO;QACtB,OAAO,EAAE,QAAQ,CAAC,OAAO;QACzB,UAAU;QACV,UAAU,EAAE,WAAoB;QAChC,UAAU,EAAE,IAAI;QAChB,IAAI;QACJ,SAAS,EAAE,qBAAqB;QAChC,KAAK,EAAE,qBAAqB;KAC7B,CAAC;IACF,OAAO,EAAE,KAAK,EAAE,WAAW,EAAE,oBAAoB,CAAC,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,IAAI,EAAE,KAAK,CAAC,IAAI,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,IAAI,EAAE,CAAC,EAAE,CAAC;AACvK,CAAC;AAQD,MAAM,UAAU,sCAAsC,CAAC,QAAwB,EAAE,KAAgF;IAC/J,MAAM,SAAS,GAAG,KAAK,CAAC,SAAS,CAAC;IAClC,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC;QAAE,MAAM,IAAI,YAAY,CAAC,kBAAkB,EAAE,8CAA8C,CAAC,CAAC;IACxJ,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IAClD,MAAM,GAAG,GAAG,KAAK,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC;IAClD,IAAI,QAAQ,GAAG,CAAC,CAAC;IACjB,MAAM,OAAO,GAAgC,EAAE,CAAC;IAChD,KAAK,MAAM,cAAc,IAAI,QAAQ,CAAC,OAAO,EAAE,CAAC;QAC9C,IAAI,cAAc,CAAC,MAAM,KAAK,IAAI,EAAE,CAAC;YACnC,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;YAC7K,SAAS;QACX,CAAC;QACD,IAAI,cAAc,GAAG,CAAC,CAAC;QACvB,KAAK,MAAM,QAAQ,IAAI,cAAc,CAAC,SAAS,EAAE,CAAC;YAChD,MAAM,KAAK,GAAG,aAAa,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YACjD,MAAM,QAAQ,GAAG,QAAQ,CAAC,OAAO,CAAC,6FAA6F,CAAC,CAAC,GAAG,CAAiB,SAAS,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;YACnL,IAAI,CAAC;gBACH,wBAAwB,CAAC,QAAQ,EAAE,KAAK,CAAC,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,CAAC;gBACzD,IAAI,CAAC,QAAQ;oBAAE,cAAc,IAAI,CAAC,CAAC;YACrC,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,KAAK,YAAY,YAAY,IAAI,KAAK,CAAC,IAAI,KAAK,oBAAoB;oBAAE,SAAS;gBACnF,MAAM,KAAK,CAAC;YACd,CAAC;QACH,CAAC;QACD,MAAM,MAAM,GAAG,WAAW,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QACpD,QAAQ,CAAC,OAAO,CAAC;;;;;;KAMhB,CAAC,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,EAAE,MAAM,CAAC,aAAa,EAAE,MAAM,CAAC,GAAG,EAAE,cAAc,CAAC,MAAM,EAAE,cAAc,CAAC,SAAS,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QACjH,QAAQ,IAAI,cAAc,CAAC;QAC3B,OAAO,CAAC,IAAI,CAAC,EAAE,QAAQ,EAAE,MAAM,CAAC,EAAE,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAE,SAAS,EAAE,cAAc,CAAC,SAAS,CAAC,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,GAAG,CAAC,cAAc,CAAC,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,cAAc,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,CAAC;IAC7N,CAAC;IACD,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,CAAC;AAChD,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAwB,EAAE,KAAgF;IAClJ,OAAO,wBAAwB,CAAC,QAAQ,EAAE,GAAG,EAAE,CAAC,sCAAsC,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC,CAAC;AAC3G,CAAC;AAED,MAAM,CAAC,KAAK,UAAU,mBAAmB,CAAC,KAAsB;IAC9D,MAAM,QAAQ,GAAG,MAAM,yBAAyB,CAAC;QAC/C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,OAAO,EAAE,KAAK,CAAC,OAAO;QACtB,eAAe,EAAE,KAAK,CAAC,eAAe;QACtC,GAAG,CAAC,KAAK,CAAC,SAAS,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,SAAS,EAAE,KAAK,CAAC,SAAS,EAAE,CAAC;KACzE,CAAC,CAAC;IACH,OAAO,yBAAyB,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC/C,SAAS,EAAE,KAAK,CAAC,SAAS;QAC1B,QAAQ;QACR,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,GAAG,EAAE,KAAK,CAAC,GAAG,EAAE,CAAC;KACvD,CAAC,CAAC;AACL,CAAC"}
@@ -1,37 +0,0 @@
1
- export declare const OPENCODE_CAPTURE_PROFILES: readonly ["off", "minimal", "standard"];
2
- export type OpenCodeCaptureProfile = (typeof OPENCODE_CAPTURE_PROFILES)[number];
3
- export declare const OPENCODE_MODES: readonly ["advisory", "strict"];
4
- export type OpenCodeMode = (typeof OPENCODE_MODES)[number];
5
- export interface OpenCodeEvidence {
6
- changedPaths?: string[];
7
- errorSignatures?: string[];
8
- commands?: Array<{
9
- executable: string;
10
- classification?: string;
11
- exitCode?: number;
12
- outcome: 'passed' | 'failed' | 'unknown';
13
- digest?: string;
14
- }>;
15
- tests?: Array<{
16
- runner: string;
17
- target?: string;
18
- outcome: 'passed' | 'failed' | 'unknown';
19
- digest?: string;
20
- }>;
21
- verification?: {
22
- outcome: 'fresh' | 'stale' | 'failed' | 'unknown';
23
- };
24
- }
25
- export interface OpenCodeEvidenceAccumulator {
26
- readonly profile: OpenCodeCaptureProfile;
27
- evidence: OpenCodeEvidence;
28
- }
29
- export declare function createOpenCodeEvidenceAccumulator(profile: OpenCodeCaptureProfile): OpenCodeEvidenceAccumulator;
30
- export declare function observeOpenCodeTool(accumulator: OpenCodeEvidenceAccumulator, input: {
31
- tool: string;
32
- }, output: {
33
- args?: unknown;
34
- metadata?: unknown;
35
- }, outcome?: 'passed' | 'failed' | 'unknown'): void;
36
- export declare function mergeOpenCodeEvidence(explicit: unknown, captured: OpenCodeEvidence): OpenCodeEvidence;
37
- //# sourceMappingURL=opencode-evidence.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode-evidence.d.ts","sourceRoot":"","sources":["../../src/setup/opencode-evidence.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,yBAAyB,yCAA0C,CAAC;AACjF,MAAM,MAAM,sBAAsB,GAAG,CAAC,OAAO,yBAAyB,CAAC,CAAC,MAAM,CAAC,CAAC;AAChF,eAAO,MAAM,cAAc,iCAAkC,CAAC;AAC9D,MAAM,MAAM,YAAY,GAAG,CAAC,OAAO,cAAc,CAAC,CAAC,MAAM,CAAC,CAAC;AAE3D,MAAM,WAAW,gBAAgB;IAC/B,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,QAAQ,CAAC,EAAE,KAAK,CAAC;QAAE,UAAU,EAAE,MAAM,CAAC;QAAC,cAAc,CAAC,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAChJ,KAAK,CAAC,EAAE,KAAK,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,QAAQ,GAAG,QAAQ,GAAG,SAAS,CAAC;QAAC,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC9G,YAAY,CAAC,EAAE;QAAE,OAAO,EAAE,OAAO,GAAG,OAAO,GAAG,QAAQ,GAAG,SAAS,CAAA;KAAE,CAAC;CACtE;AAED,MAAM,WAAW,2BAA2B;IAC1C,QAAQ,CAAC,OAAO,EAAE,sBAAsB,CAAC;IACzC,QAAQ,EAAE,gBAAgB,CAAC;CAC5B;AAmBD,wBAAgB,iCAAiC,CAAC,OAAO,EAAE,sBAAsB,GAAG,2BAA2B,CAE9G;AAED,wBAAgB,mBAAmB,CACjC,WAAW,EAAE,2BAA2B,EACxC,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAA;CAAE,EACvB,MAAM,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,EAC9C,OAAO,GAAE,QAAQ,GAAG,QAAQ,GAAG,SAAqB,GACnD,IAAI,CAqBN;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,gBAAgB,GAAG,gBAAgB,CAUrG"}
@@ -1,58 +0,0 @@
1
- import { createHash } from 'node:crypto';
2
- export const OPENCODE_CAPTURE_PROFILES = ['off', 'minimal', 'standard'];
3
- export const OPENCODE_MODES = ['advisory', 'strict'];
4
- const MAX_ITEMS = 100;
5
- const CONTROL = /[\u0000-\u001f\u007f]/u;
6
- function boundedPath(value) {
7
- if (typeof value !== 'string' || value.length === 0 || value.length > 500 || CONTROL.test(value) || value.startsWith('/') || /^[A-Za-z]:[\\/]/u.test(value) || value.split(/[\\/]/u).includes('..'))
8
- return undefined;
9
- return value.replaceAll('\\', '/');
10
- }
11
- function boundedString(value) {
12
- return typeof value === 'string' && value.length > 0 && value.length <= 500 && !CONTROL.test(value) && !/(?:api[_-]?key|token|password|secret|authorization)/iu.test(value) ? value : undefined;
13
- }
14
- function digest(value) {
15
- const text = boundedString(value);
16
- return text === undefined ? undefined : createHash('sha256').update(text, 'utf8').digest('hex');
17
- }
18
- export function createOpenCodeEvidenceAccumulator(profile) {
19
- return { profile, evidence: {} };
20
- }
21
- export function observeOpenCodeTool(accumulator, input, output, outcome = 'unknown') {
22
- if (accumulator.profile === 'off')
23
- return;
24
- const args = output.args && typeof output.args === 'object' && !Array.isArray(output.args) ? output.args : {};
25
- const metadata = output.metadata && typeof output.metadata === 'object' && !Array.isArray(output.metadata) ? output.metadata : {};
26
- const paths = [...(Array.isArray(args.changedPaths) ? args.changedPaths : []), ...(Array.isArray(metadata.changedPaths) ? metadata.changedPaths : [])]
27
- .map(boundedPath).filter((value) => value !== undefined);
28
- accumulator.evidence.changedPaths = [...new Set([...(accumulator.evidence.changedPaths ?? []), ...paths])].slice(0, MAX_ITEMS);
29
- const executable = input.tool.toLowerCase().replace(/[^a-z0-9_.-]+/gu, '_').slice(0, 200);
30
- accumulator.evidence.commands = [...(accumulator.evidence.commands ?? []), { executable, classification: 'opencode-tool', outcome }].slice(-MAX_ITEMS);
31
- if (accumulator.profile !== 'standard')
32
- return;
33
- const error = boundedString(metadata.errorSignature);
34
- if (error !== undefined)
35
- accumulator.evidence.errorSignatures = [...new Set([...(accumulator.evidence.errorSignatures ?? []), error])].slice(0, MAX_ITEMS);
36
- const runner = boundedString(metadata.testRunner);
37
- if (runner !== undefined) {
38
- const target = boundedString(metadata.testTarget);
39
- const testDigest = digest(metadata.testDigest);
40
- const test = { runner, ...(target === undefined ? {} : { target }), outcome, ...(testDigest === undefined ? {} : { digest: testDigest }) };
41
- accumulator.evidence.tests = [...(accumulator.evidence.tests ?? []), test].slice(-MAX_ITEMS);
42
- }
43
- const verification = metadata.verification;
44
- if (verification === 'fresh' || verification === 'stale' || verification === 'failed' || verification === 'unknown')
45
- accumulator.evidence.verification = { outcome: verification };
46
- }
47
- export function mergeOpenCodeEvidence(explicit, captured) {
48
- const input = explicit && typeof explicit === 'object' && !Array.isArray(explicit) ? explicit : {};
49
- const existing = input;
50
- return {
51
- ...(Array.isArray(existing.changedPaths) || captured.changedPaths !== undefined ? { changedPaths: [...new Set([...(existing.changedPaths ?? []), ...(captured.changedPaths ?? [])])].slice(0, MAX_ITEMS) } : {}),
52
- ...(Array.isArray(existing.errorSignatures) || captured.errorSignatures !== undefined ? { errorSignatures: [...new Set([...(existing.errorSignatures ?? []), ...(captured.errorSignatures ?? [])])].slice(0, MAX_ITEMS) } : {}),
53
- ...(Array.isArray(existing.commands) || captured.commands !== undefined ? { commands: [...(existing.commands ?? []), ...(captured.commands ?? [])].slice(-MAX_ITEMS) } : {}),
54
- ...(Array.isArray(existing.tests) || captured.tests !== undefined ? { tests: [...(existing.tests ?? []), ...(captured.tests ?? [])].slice(-MAX_ITEMS) } : {}),
55
- ...(existing.verification !== undefined || captured.verification !== undefined ? { verification: captured.verification ?? existing.verification } : {}),
56
- };
57
- }
58
- //# sourceMappingURL=opencode-evidence.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode-evidence.js","sourceRoot":"","sources":["../../src/setup/opencode-evidence.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- import type { DelimitedBlockResult } from './managed-text.js';
2
- import { type OpenCodeCaptureProfile, type OpenCodeMode } from './opencode-evidence.js';
3
- export declare const OPENCODE_LOOP_GUARD_MARKER = "// Managed by `kiokuko setup`: OpenCode loop guard v1";
4
- export interface OpenCodeLoopGuardOptions {
5
- captureProfile?: OpenCodeCaptureProfile;
6
- mode?: OpenCodeMode;
7
- }
8
- export declare function renderOpenCodeLoopGuard(existing: string | undefined, options?: OpenCodeLoopGuardOptions): DelimitedBlockResult;
9
- //# sourceMappingURL=opencode-loop-guard.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"opencode-loop-guard.d.ts","sourceRoot":"","sources":["../../src/setup/opencode-loop-guard.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,mBAAmB,CAAC;AAC9D,OAAO,EAA6C,KAAK,sBAAsB,EAAE,KAAK,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEnI,eAAO,MAAM,0BAA0B,0DAA0D,CAAC;AA6KlG,MAAM,WAAW,wBAAwB;IACvC,cAAc,CAAC,EAAE,sBAAsB,CAAC;IACxC,IAAI,CAAC,EAAE,YAAY,CAAC;CACrB;AA2DD,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,OAAO,GAAE,wBAA6B,GAAG,oBAAoB,CAgBlI"}