@cleocode/core 2026.10.21 → 2026.10.22

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 (420) hide show
  1. package/STABILITY.md +1 -1
  2. package/dist/build-provenance.json +2 -2
  3. package/dist/config.d.ts.map +1 -1
  4. package/dist/config.js +2 -0
  5. package/dist/config.js.map +1 -1
  6. package/dist/docs/document-edges.d.ts +38 -0
  7. package/dist/docs/document-edges.d.ts.map +1 -0
  8. package/dist/docs/document-edges.js +62 -0
  9. package/dist/docs/document-edges.js.map +1 -0
  10. package/dist/docs/projection.d.ts +3 -2
  11. package/dist/docs/projection.d.ts.map +1 -1
  12. package/dist/docs/projection.js +33 -36
  13. package/dist/docs/projection.js.map +1 -1
  14. package/dist/events/event-bus.d.ts +6 -5
  15. package/dist/events/event-bus.d.ts.map +1 -1
  16. package/dist/events/event-bus.js +9 -8
  17. package/dist/events/event-bus.js.map +1 -1
  18. package/dist/gateway-client/generated/index.d.ts +2 -2
  19. package/dist/gateway-client/generated/index.d.ts.map +1 -1
  20. package/dist/gateway-client/generated/index.js +1 -1
  21. package/dist/gateway-client/generated/index.js.map +1 -1
  22. package/dist/gateway-client/generated/namespaces.gen.d.ts +1 -0
  23. package/dist/gateway-client/generated/namespaces.gen.d.ts.map +1 -1
  24. package/dist/gateway-client/generated/namespaces.gen.js +2 -1
  25. package/dist/gateway-client/generated/namespaces.gen.js.map +1 -1
  26. package/dist/gateway-client/generated/sdk.gen.d.ts +5 -1
  27. package/dist/gateway-client/generated/sdk.gen.d.ts.map +1 -1
  28. package/dist/gateway-client/generated/sdk.gen.js +11 -0
  29. package/dist/gateway-client/generated/sdk.gen.js.map +1 -1
  30. package/dist/gateway-client/generated/types.gen.d.ts +34 -0
  31. package/dist/gateway-client/generated/types.gen.d.ts.map +1 -1
  32. package/dist/git/base-ref.d.ts +81 -0
  33. package/dist/git/base-ref.d.ts.map +1 -0
  34. package/dist/git/base-ref.js +135 -0
  35. package/dist/git/base-ref.js.map +1 -0
  36. package/dist/git/hooks-install.d.ts +1 -1
  37. package/dist/git/hooks-install.d.ts.map +1 -1
  38. package/dist/git/work-tree.d.ts +40 -0
  39. package/dist/git/work-tree.d.ts.map +1 -1
  40. package/dist/git/work-tree.js +62 -7
  41. package/dist/git/work-tree.js.map +1 -1
  42. package/dist/hooks/handlers/conduit-hooks.d.ts +2 -1
  43. package/dist/hooks/handlers/conduit-hooks.d.ts.map +1 -1
  44. package/dist/hooks/handlers/conduit-hooks.js +9 -23
  45. package/dist/hooks/handlers/conduit-hooks.js.map +1 -1
  46. package/dist/hooks/handlers/index.d.ts +0 -1
  47. package/dist/hooks/handlers/index.d.ts.map +1 -1
  48. package/dist/hooks/handlers/index.js +0 -2
  49. package/dist/hooks/handlers/index.js.map +1 -1
  50. package/dist/hooks.d.ts +1 -1
  51. package/dist/hooks.d.ts.map +1 -1
  52. package/dist/init.d.ts.map +1 -1
  53. package/dist/init.js +5 -12
  54. package/dist/init.js.map +1 -1
  55. package/dist/internal.d.ts +2 -3
  56. package/dist/internal.d.ts.map +1 -1
  57. package/dist/internal.js +1 -1
  58. package/dist/internal.js.map +1 -1
  59. package/dist/lifecycle/index.d.ts +15 -1
  60. package/dist/lifecycle/index.d.ts.map +1 -1
  61. package/dist/lifecycle/index.js +12 -6
  62. package/dist/lifecycle/index.js.map +1 -1
  63. package/dist/lifecycle/stage-guidance.js +1 -1
  64. package/dist/lifecycle/stage-guidance.js.map +1 -1
  65. package/dist/memory/auto-row-quarantine.d.ts +196 -0
  66. package/dist/memory/auto-row-quarantine.d.ts.map +1 -0
  67. package/dist/memory/auto-row-quarantine.js +363 -0
  68. package/dist/memory/auto-row-quarantine.js.map +1 -0
  69. package/dist/memory/auto-row-rules.d.ts +29 -0
  70. package/dist/memory/auto-row-rules.d.ts.map +1 -0
  71. package/dist/memory/auto-row-rules.js +55 -0
  72. package/dist/memory/auto-row-rules.js.map +1 -0
  73. package/dist/memory/brain-lifecycle.d.ts.map +1 -1
  74. package/dist/memory/brain-lifecycle.js +13 -8
  75. package/dist/memory/brain-lifecycle.js.map +1 -1
  76. package/dist/memory/brain-search.d.ts +49 -29
  77. package/dist/memory/brain-search.d.ts.map +1 -1
  78. package/dist/memory/brain-search.js +159 -156
  79. package/dist/memory/brain-search.js.map +1 -1
  80. package/dist/memory/brain-similarity.d.ts +27 -4
  81. package/dist/memory/brain-similarity.d.ts.map +1 -1
  82. package/dist/memory/brain-similarity.js +41 -20
  83. package/dist/memory/brain-similarity.js.map +1 -1
  84. package/dist/memory/brain-stub-prune.d.ts +13 -0
  85. package/dist/memory/brain-stub-prune.d.ts.map +1 -1
  86. package/dist/memory/brain-stub-prune.js +14 -3
  87. package/dist/memory/brain-stub-prune.js.map +1 -1
  88. package/dist/memory/brain-writer-handlers.d.ts +3 -7
  89. package/dist/memory/brain-writer-handlers.d.ts.map +1 -1
  90. package/dist/memory/brain-writer-handlers.js +5 -20
  91. package/dist/memory/brain-writer-handlers.js.map +1 -1
  92. package/dist/memory/brain-writer-thread.d.ts +2 -11
  93. package/dist/memory/brain-writer-thread.d.ts.map +1 -1
  94. package/dist/memory/brain-writer-thread.js +20 -78
  95. package/dist/memory/brain-writer-thread.js.map +1 -1
  96. package/dist/memory/brain-writer-worker.js +1 -8
  97. package/dist/memory/brain-writer-worker.js.map +1 -1
  98. package/dist/memory/dispatch-trace-format.d.ts +13 -14
  99. package/dist/memory/dispatch-trace-format.d.ts.map +1 -1
  100. package/dist/memory/dispatch-trace-format.js +13 -14
  101. package/dist/memory/dispatch-trace-format.js.map +1 -1
  102. package/dist/memory/eligibility.d.ts +22 -0
  103. package/dist/memory/eligibility.d.ts.map +1 -1
  104. package/dist/memory/eligibility.js +36 -0
  105. package/dist/memory/eligibility.js.map +1 -1
  106. package/dist/memory/engine-compat.d.ts.map +1 -1
  107. package/dist/memory/engine-compat.js +11 -1
  108. package/dist/memory/engine-compat.js.map +1 -1
  109. package/dist/memory/evidence-graph-links.d.ts +253 -0
  110. package/dist/memory/evidence-graph-links.d.ts.map +1 -0
  111. package/dist/memory/evidence-graph-links.js +554 -0
  112. package/dist/memory/evidence-graph-links.js.map +1 -0
  113. package/dist/memory/extraction-gate.d.ts +7 -0
  114. package/dist/memory/extraction-gate.d.ts.map +1 -1
  115. package/dist/memory/extraction-gate.js +20 -8
  116. package/dist/memory/extraction-gate.js.map +1 -1
  117. package/dist/memory/global-brain.d.ts +4 -6
  118. package/dist/memory/global-brain.d.ts.map +1 -1
  119. package/dist/memory/global-brain.js +15 -2
  120. package/dist/memory/global-brain.js.map +1 -1
  121. package/dist/memory/graph-auto-populate.d.ts +73 -1
  122. package/dist/memory/graph-auto-populate.d.ts.map +1 -1
  123. package/dist/memory/graph-auto-populate.js +111 -8
  124. package/dist/memory/graph-auto-populate.js.map +1 -1
  125. package/dist/memory/import-from-provider.d.ts +19 -6
  126. package/dist/memory/import-from-provider.d.ts.map +1 -1
  127. package/dist/memory/import-from-provider.js +28 -15
  128. package/dist/memory/import-from-provider.js.map +1 -1
  129. package/dist/memory/lessons-import.d.ts +175 -0
  130. package/dist/memory/lessons-import.d.ts.map +1 -0
  131. package/dist/memory/lessons-import.js +233 -0
  132. package/dist/memory/lessons-import.js.map +1 -0
  133. package/dist/memory/lessons.d.ts +67 -0
  134. package/dist/memory/lessons.d.ts.map +1 -0
  135. package/dist/memory/lessons.js +121 -0
  136. package/dist/memory/lessons.js.map +1 -0
  137. package/dist/memory/memory-bridge.d.ts.map +1 -1
  138. package/dist/memory/memory-bridge.js +3 -2
  139. package/dist/memory/memory-bridge.js.map +1 -1
  140. package/dist/memory/public-api.d.ts.map +1 -1
  141. package/dist/memory/public-api.js +7 -6
  142. package/dist/memory/public-api.js.map +1 -1
  143. package/dist/memory/recall-ranking.d.ts +88 -0
  144. package/dist/memory/recall-ranking.d.ts.map +1 -0
  145. package/dist/memory/recall-ranking.js +130 -0
  146. package/dist/memory/recall-ranking.js.map +1 -0
  147. package/dist/memory/retrieval/build-retrieval-bundle.js +5 -5
  148. package/dist/memory/retrieval/build-retrieval-bundle.js.map +1 -1
  149. package/dist/memory/retrieval/fetch.d.ts +3 -2
  150. package/dist/memory/retrieval/fetch.d.ts.map +1 -1
  151. package/dist/memory/retrieval/fetch.js +4 -3
  152. package/dist/memory/retrieval/fetch.js.map +1 -1
  153. package/dist/memory/retrieval/observe.d.ts +1 -7
  154. package/dist/memory/retrieval/observe.d.ts.map +1 -1
  155. package/dist/memory/retrieval/observe.js +9 -58
  156. package/dist/memory/retrieval/observe.js.map +1 -1
  157. package/dist/memory/retrieval/search.d.ts +5 -6
  158. package/dist/memory/retrieval/search.d.ts.map +1 -1
  159. package/dist/memory/retrieval/search.js +38 -102
  160. package/dist/memory/retrieval/search.js.map +1 -1
  161. package/dist/memory/retrieval/telemetry.d.ts +5 -16
  162. package/dist/memory/retrieval/telemetry.d.ts.map +1 -1
  163. package/dist/memory/retrieval/telemetry.js +5 -22
  164. package/dist/memory/retrieval/telemetry.js.map +1 -1
  165. package/dist/nexus/analyze-orchestrator.d.ts +15 -0
  166. package/dist/nexus/analyze-orchestrator.d.ts.map +1 -1
  167. package/dist/nexus/analyze-orchestrator.js +53 -6
  168. package/dist/nexus/analyze-orchestrator.js.map +1 -1
  169. package/dist/nexus/brief-map.d.ts +60 -0
  170. package/dist/nexus/brief-map.d.ts.map +1 -0
  171. package/dist/nexus/brief-map.js +234 -0
  172. package/dist/nexus/brief-map.js.map +1 -0
  173. package/dist/nexus/freshness.d.ts +128 -13
  174. package/dist/nexus/freshness.d.ts.map +1 -1
  175. package/dist/nexus/freshness.js +374 -86
  176. package/dist/nexus/freshness.js.map +1 -1
  177. package/dist/nexus/graph-manifest.d.ts +47 -0
  178. package/dist/nexus/graph-manifest.d.ts.map +1 -1
  179. package/dist/nexus/graph-manifest.js +69 -0
  180. package/dist/nexus/graph-manifest.js.map +1 -1
  181. package/dist/nexus/hooks-augment.d.ts.map +1 -1
  182. package/dist/nexus/hooks-augment.js +7 -3
  183. package/dist/nexus/hooks-augment.js.map +1 -1
  184. package/dist/nexus/index-health.d.ts +112 -0
  185. package/dist/nexus/index-health.d.ts.map +1 -0
  186. package/dist/nexus/index-health.js +199 -0
  187. package/dist/nexus/index-health.js.map +1 -0
  188. package/dist/nexus/living-brain.d.ts.map +1 -1
  189. package/dist/nexus/living-brain.js +2 -15
  190. package/dist/nexus/living-brain.js.map +1 -1
  191. package/dist/nexus/pid-lock.d.ts +50 -0
  192. package/dist/nexus/pid-lock.d.ts.map +1 -0
  193. package/dist/nexus/pid-lock.js +135 -0
  194. package/dist/nexus/pid-lock.js.map +1 -0
  195. package/dist/nexus/projects-clean.d.ts.map +1 -1
  196. package/dist/nexus/projects-clean.js +33 -2
  197. package/dist/nexus/projects-clean.js.map +1 -1
  198. package/dist/nexus/refresh-child.js +4 -0
  199. package/dist/nexus/refresh-child.js.map +1 -1
  200. package/dist/nexus/registry-host.d.ts +70 -0
  201. package/dist/nexus/registry-host.d.ts.map +1 -0
  202. package/dist/nexus/registry-host.js +79 -0
  203. package/dist/nexus/registry-host.js.map +1 -0
  204. package/dist/nexus/registry.d.ts +37 -0
  205. package/dist/nexus/registry.d.ts.map +1 -1
  206. package/dist/nexus/registry.js +49 -1
  207. package/dist/nexus/registry.js.map +1 -1
  208. package/dist/nexus/reindex-on-merge.d.ts +94 -0
  209. package/dist/nexus/reindex-on-merge.d.ts.map +1 -0
  210. package/dist/nexus/reindex-on-merge.js +192 -0
  211. package/dist/nexus/reindex-on-merge.js.map +1 -0
  212. package/dist/orchestrate/handoff-ops.d.ts.map +1 -1
  213. package/dist/orchestrate/handoff-ops.js +1 -13
  214. package/dist/orchestrate/handoff-ops.js.map +1 -1
  215. package/dist/orchestrate/index.d.ts +2 -3
  216. package/dist/orchestrate/index.d.ts.map +1 -1
  217. package/dist/orchestrate/index.js +2 -2
  218. package/dist/orchestrate/index.js.map +1 -1
  219. package/dist/orchestrate/lifecycle-ops.d.ts +3 -0
  220. package/dist/orchestrate/lifecycle-ops.d.ts.map +1 -1
  221. package/dist/orchestrate/lifecycle-ops.js +5 -5
  222. package/dist/orchestrate/lifecycle-ops.js.map +1 -1
  223. package/dist/orchestrate/spawn-ops.d.ts +8 -28
  224. package/dist/orchestrate/spawn-ops.d.ts.map +1 -1
  225. package/dist/orchestrate/spawn-ops.js +8 -67
  226. package/dist/orchestrate/spawn-ops.js.map +1 -1
  227. package/dist/orchestration/lead-rollup.d.ts +7 -0
  228. package/dist/orchestration/lead-rollup.d.ts.map +1 -1
  229. package/dist/orchestration/lead-rollup.js.map +1 -1
  230. package/dist/orchestration/spawn-prompt.d.ts +8 -29
  231. package/dist/orchestration/spawn-prompt.d.ts.map +1 -1
  232. package/dist/orchestration/spawn-prompt.js +44 -112
  233. package/dist/orchestration/spawn-prompt.js.map +1 -1
  234. package/dist/orchestration/spawn.d.ts +7 -14
  235. package/dist/orchestration/spawn.d.ts.map +1 -1
  236. package/dist/orchestration/spawn.js +2 -5
  237. package/dist/orchestration/spawn.js.map +1 -1
  238. package/dist/orchestration/wave-topic.d.ts +0 -13
  239. package/dist/orchestration/wave-topic.d.ts.map +1 -1
  240. package/dist/orchestration/wave-topic.js +0 -20
  241. package/dist/orchestration/wave-topic.js.map +1 -1
  242. package/dist/release/engine-ops.js +2 -2
  243. package/dist/release/engine-ops.js.map +1 -1
  244. package/dist/release/github-pr.d.ts +8 -5
  245. package/dist/release/github-pr.d.ts.map +1 -1
  246. package/dist/release/github-pr.js +11 -16
  247. package/dist/release/github-pr.js.map +1 -1
  248. package/dist/release/plan.d.ts +4 -2
  249. package/dist/release/plan.d.ts.map +1 -1
  250. package/dist/release/plan.js +11 -4
  251. package/dist/release/plan.js.map +1 -1
  252. package/dist/release/pr-evidence.d.ts +39 -11
  253. package/dist/release/pr-evidence.d.ts.map +1 -1
  254. package/dist/release/pr-evidence.js +122 -31
  255. package/dist/release/pr-evidence.js.map +1 -1
  256. package/dist/release/reconcile.d.ts +15 -0
  257. package/dist/release/reconcile.d.ts.map +1 -1
  258. package/dist/release/reconcile.js +36 -0
  259. package/dist/release/reconcile.js.map +1 -1
  260. package/dist/render/brain/index.d.ts +3 -2
  261. package/dist/render/brain/index.d.ts.map +1 -1
  262. package/dist/render/brain/index.js +4 -2
  263. package/dist/render/brain/index.js.map +1 -1
  264. package/dist/render/brain/migrate-repo-ids.d.ts +19 -0
  265. package/dist/render/brain/migrate-repo-ids.d.ts.map +1 -0
  266. package/dist/render/brain/migrate-repo-ids.js +41 -0
  267. package/dist/render/brain/migrate-repo-ids.js.map +1 -0
  268. package/dist/render/nexus/graph/index.d.ts.map +1 -1
  269. package/dist/render/nexus/graph/index.js +10 -1
  270. package/dist/render/nexus/graph/index.js.map +1 -1
  271. package/dist/resources/admission-ledger.d.ts +39 -4
  272. package/dist/resources/admission-ledger.d.ts.map +1 -1
  273. package/dist/resources/admission-ledger.js +147 -32
  274. package/dist/resources/admission-ledger.js.map +1 -1
  275. package/dist/resources/hook-footprint.d.ts +90 -0
  276. package/dist/resources/hook-footprint.d.ts.map +1 -0
  277. package/dist/resources/hook-footprint.js +245 -0
  278. package/dist/resources/hook-footprint.js.map +1 -0
  279. package/dist/resources/pressure-gate.d.ts +3 -2
  280. package/dist/resources/pressure-gate.d.ts.map +1 -1
  281. package/dist/resources/pressure-gate.js +8 -5
  282. package/dist/resources/pressure-gate.js.map +1 -1
  283. package/dist/resources/run-admission.d.ts +23 -3
  284. package/dist/resources/run-admission.d.ts.map +1 -1
  285. package/dist/resources/run-admission.js +70 -8
  286. package/dist/resources/run-admission.js.map +1 -1
  287. package/dist/resources/run-class.d.ts +1 -0
  288. package/dist/resources/run-class.d.ts.map +1 -1
  289. package/dist/resources/run-class.js +7 -0
  290. package/dist/resources/run-class.js.map +1 -1
  291. package/dist/resources/run-governed.d.ts +13 -1
  292. package/dist/resources/run-governed.d.ts.map +1 -1
  293. package/dist/resources/run-governed.js +29 -6
  294. package/dist/resources/run-governed.js.map +1 -1
  295. package/dist/resources/top-memory.d.ts +67 -0
  296. package/dist/resources/top-memory.d.ts.map +1 -0
  297. package/dist/resources/top-memory.js +143 -0
  298. package/dist/resources/top-memory.js.map +1 -0
  299. package/dist/scaffold/global-scaffold.d.ts +6 -1
  300. package/dist/scaffold/global-scaffold.d.ts.map +1 -1
  301. package/dist/scaffold/global-scaffold.js +11 -2
  302. package/dist/scaffold/global-scaffold.js.map +1 -1
  303. package/dist/scaffold/scaffold-global.d.ts +3 -2
  304. package/dist/scaffold/scaffold-global.d.ts.map +1 -1
  305. package/dist/scaffold/scaffold-global.js +3 -2
  306. package/dist/scaffold/scaffold-global.js.map +1 -1
  307. package/dist/sentient/ingesters/brain-ingester.d.ts.map +1 -1
  308. package/dist/sentient/ingesters/brain-ingester.js +2 -1
  309. package/dist/sentient/ingesters/brain-ingester.js.map +1 -1
  310. package/dist/session/engine-ops.js +1 -1
  311. package/dist/session/engine-ops.js.map +1 -1
  312. package/dist/sessions/briefing.d.ts +26 -0
  313. package/dist/sessions/briefing.d.ts.map +1 -1
  314. package/dist/sessions/briefing.js +46 -0
  315. package/dist/sessions/briefing.js.map +1 -1
  316. package/dist/sessions/session-end-snapshot.d.ts +1 -1
  317. package/dist/sessions/session-end-snapshot.js +1 -1
  318. package/dist/sessions/session-id.d.ts +2 -1
  319. package/dist/sessions/session-id.d.ts.map +1 -1
  320. package/dist/sessions/session-id.js +3 -2
  321. package/dist/sessions/session-id.js.map +1 -1
  322. package/dist/store/agent-resolver.d.ts +0 -6
  323. package/dist/store/agent-resolver.d.ts.map +1 -1
  324. package/dist/store/agent-resolver.js +0 -31
  325. package/dist/store/agent-resolver.js.map +1 -1
  326. package/dist/store/memory-accessor.d.ts +45 -2
  327. package/dist/store/memory-accessor.d.ts.map +1 -1
  328. package/dist/store/memory-accessor.js +81 -7
  329. package/dist/store/memory-accessor.js.map +1 -1
  330. package/dist/store/schema/cleo-shared/brain.d.ts +2 -2
  331. package/dist/store/schema/memory-schema.d.ts +3 -3
  332. package/dist/store/schema/memory-schema.d.ts.map +1 -1
  333. package/dist/store/schema/memory-schema.js +2 -0
  334. package/dist/store/schema/memory-schema.js.map +1 -1
  335. package/dist/store/session-store.d.ts +5 -2
  336. package/dist/store/session-store.d.ts.map +1 -1
  337. package/dist/store/session-store.js +10 -5
  338. package/dist/store/session-store.js.map +1 -1
  339. package/dist/store/sqlite-native.d.ts +5 -4
  340. package/dist/store/sqlite-native.d.ts.map +1 -1
  341. package/dist/store/sqlite-native.js +5 -4
  342. package/dist/store/sqlite-native.js.map +1 -1
  343. package/dist/store/sync/merge/rules.d.ts.map +1 -1
  344. package/dist/store/sync/merge/rules.js +4 -3
  345. package/dist/store/sync/merge/rules.js.map +1 -1
  346. package/dist/store/validation-schemas.d.ts +1 -0
  347. package/dist/store/validation-schemas.d.ts.map +1 -1
  348. package/dist/store/vault-manifest.js +1 -1
  349. package/dist/store/vault-manifest.js.map +1 -1
  350. package/dist/system/project-health.d.ts +7 -0
  351. package/dist/system/project-health.d.ts.map +1 -1
  352. package/dist/system/project-health.js +13 -0
  353. package/dist/system/project-health.js.map +1 -1
  354. package/dist/tasks/add.d.ts.map +1 -1
  355. package/dist/tasks/add.js +0 -15
  356. package/dist/tasks/add.js.map +1 -1
  357. package/dist/tasks/affected-packages.d.ts +26 -11
  358. package/dist/tasks/affected-packages.d.ts.map +1 -1
  359. package/dist/tasks/affected-packages.js +54 -17
  360. package/dist/tasks/affected-packages.js.map +1 -1
  361. package/dist/tasks/affected-scope.d.ts +24 -0
  362. package/dist/tasks/affected-scope.d.ts.map +1 -1
  363. package/dist/tasks/affected-scope.js +57 -0
  364. package/dist/tasks/affected-scope.js.map +1 -1
  365. package/dist/tasks/change-set.d.ts +72 -9
  366. package/dist/tasks/change-set.d.ts.map +1 -1
  367. package/dist/tasks/change-set.js +227 -20
  368. package/dist/tasks/change-set.js.map +1 -1
  369. package/dist/tasks/complete-ci.d.ts.map +1 -1
  370. package/dist/tasks/complete-ci.js +2 -0
  371. package/dist/tasks/complete-ci.js.map +1 -1
  372. package/dist/tasks/complete.d.ts +2 -2
  373. package/dist/tasks/complete.d.ts.map +1 -1
  374. package/dist/tasks/complete.js +38 -17
  375. package/dist/tasks/complete.js.map +1 -1
  376. package/dist/tasks/done-plan.d.ts.map +1 -1
  377. package/dist/tasks/done-plan.js +66 -18
  378. package/dist/tasks/done-plan.js.map +1 -1
  379. package/dist/tasks/epic-enforcement.d.ts +39 -1
  380. package/dist/tasks/epic-enforcement.d.ts.map +1 -1
  381. package/dist/tasks/epic-enforcement.js +46 -2
  382. package/dist/tasks/epic-enforcement.js.map +1 -1
  383. package/dist/tasks/evidence.d.ts +74 -22
  384. package/dist/tasks/evidence.d.ts.map +1 -1
  385. package/dist/tasks/evidence.js +221 -35
  386. package/dist/tasks/evidence.js.map +1 -1
  387. package/dist/tasks/gate-runner.d.ts.map +1 -1
  388. package/dist/tasks/gate-runner.js +2 -12
  389. package/dist/tasks/gate-runner.js.map +1 -1
  390. package/dist/tasks/qa-run-binding.d.ts +2 -0
  391. package/dist/tasks/qa-run-binding.d.ts.map +1 -1
  392. package/dist/tasks/qa-run-binding.js +6 -2
  393. package/dist/tasks/qa-run-binding.js.map +1 -1
  394. package/dist/tasks/test-run-binding.d.ts +2 -0
  395. package/dist/tasks/test-run-binding.d.ts.map +1 -1
  396. package/dist/tasks/test-run-binding.js +8 -3
  397. package/dist/tasks/test-run-binding.js.map +1 -1
  398. package/dist/tasks/verification-policy.d.ts +57 -1
  399. package/dist/tasks/verification-policy.d.ts.map +1 -1
  400. package/dist/tasks/verification-policy.js +94 -1
  401. package/dist/tasks/verification-policy.js.map +1 -1
  402. package/dist/upgrade.d.ts.map +1 -1
  403. package/dist/upgrade.js +2 -15
  404. package/dist/upgrade.js.map +1 -1
  405. package/dist/validation/engine-ops.d.ts.map +1 -1
  406. package/dist/validation/engine-ops.js +39 -19
  407. package/dist/validation/engine-ops.js.map +1 -1
  408. package/package.json +13 -13
  409. package/schemas/config.schema.json +69 -0
  410. package/templates/CLEO-INJECTION.md +4 -5
  411. package/templates/CLEO-REFERENCE.md +2 -4
  412. package/templates/git-hooks/post-merge +25 -0
  413. package/dist/memory/dispatch-trace.d.ts +0 -44
  414. package/dist/memory/dispatch-trace.d.ts.map +0 -1
  415. package/dist/memory/dispatch-trace.js +0 -65
  416. package/dist/memory/dispatch-trace.js.map +0 -1
  417. package/dist/memory/retrieval/increment-citation-counts.d.ts +0 -11
  418. package/dist/memory/retrieval/increment-citation-counts.d.ts.map +0 -1
  419. package/dist/memory/retrieval/increment-citation-counts.js +0 -43
  420. package/dist/memory/retrieval/increment-citation-counts.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"freshness.js","sourceRoot":"","sources":["../../src/nexus/freshness.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"freshness.js","sourceRoot":"","sources":["../../src/nexus/freshness.ts"],"names":[],"mappings":"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"}
@@ -15,6 +15,18 @@
15
15
  */
16
16
  import type { GraphIndexAssessment, GraphIndexRunSummary } from '@cleocode/contracts';
17
17
  import type { NodeSQLiteDatabase } from 'drizzle-orm/node-sqlite';
18
+ /**
19
+ * An inline refresh failed or was aborted (T14014): skip inline refreshes until
20
+ * `until`, or until a successful analysis publishes a new generation.
21
+ */
22
+ export interface RefreshCooldown {
23
+ /** ISO 8601 instant the cooldown ends. */
24
+ until: string;
25
+ /** Graph generation the failed refresh started from. */
26
+ generation: string | null;
27
+ /** Why the refresh did not finish. */
28
+ reason: string;
29
+ }
18
30
  /** One indexed file: `[path, size, mtimeMs, contentHash]`. */
19
31
  export type GraphManifestEntry = [path: string, size: number, mtimeMs: number, hash: string];
20
32
  /** Compact description of the files a published generation was built from. */
@@ -94,6 +106,41 @@ export declare function readFileManifest(db: NodeSQLiteDatabase, projectRoot: st
94
106
  * @param cost - Summary and duration of the run.
95
107
  */
96
108
  export declare function writeRunCost(db: NodeSQLiteDatabase, cost: GraphRunCost): void;
109
+ /**
110
+ * The revision the published generation indexed (T14007). Lenient: a missing,
111
+ * unparseable or revision-less assessment reads as `null`, never a throw, so a
112
+ * freshness answer is never lost to it.
113
+ *
114
+ * @param db - Project graph database.
115
+ * @returns The recorded `assessedRevision`, or `null`.
116
+ */
117
+ export declare function readIndexedRevision(db: NodeSQLiteDatabase): string | null;
118
+ /**
119
+ * Record an inline-refresh cooldown (T14014).
120
+ *
121
+ * @param db - Project graph database.
122
+ * @param cooldown - Until when, from which generation, and why.
123
+ */
124
+ export declare function writeRefreshCooldown(db: NodeSQLiteDatabase, cooldown: RefreshCooldown): void;
125
+ /**
126
+ * The inline-refresh cooldown in force, or `null` (T14014). It lapses at its
127
+ * `until`, or as soon as a successful analysis publishes a new generation.
128
+ *
129
+ * @param db - Project graph database.
130
+ * @param nowMs - The clock.
131
+ * @returns The active cooldown, or `null`.
132
+ */
133
+ export declare function readActiveRefreshCooldown(db: NodeSQLiteDatabase, nowMs?: number): RefreshCooldown | null;
134
+ /**
135
+ * Whether a cooldown is still in force: before its `until`, and no analysis
136
+ * has published a new generation since it was recorded (T14014).
137
+ *
138
+ * @param db - Project graph database.
139
+ * @param cooldown - A recorded cooldown (from `_nexus_meta` or its fallback file).
140
+ * @param nowMs - The clock.
141
+ * @returns True while it applies.
142
+ */
143
+ export declare function refreshCooldownApplies(db: NodeSQLiteDatabase, cooldown: RefreshCooldown, nowMs?: number): boolean;
97
144
  /**
98
145
  * Read the last recorded run cost.
99
146
  * @param db - Project graph database.
@@ -1 +1 @@
1
- {"version":3,"file":"graph-manifest.d.ts","sourceRoot":"","sources":["../../src/nexus/graph-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAGH,OAAO,KAAK,EAAE,oBAAoB,EAAE,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AAEtF,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,yBAAyB,CAAC;AAUlE,8DAA8D;AAC9D,MAAM,MAAM,kBAAkB,GAAG,CAAC,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,CAAC,CAAC;AAE7F,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IAChC,yCAAyC;IACzC,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B;;;OAGG;IACH,UAAU,EAAE,MAAM,CAAC;IACnB,6EAA6E;IAC7E,oBAAoB,EAAE,MAAM,EAAE,CAAC;IAC/B,wCAAwC;IACxC,UAAU,EAAE,MAAM,CAAC;IACnB,8CAA8C;IAC9C,KAAK,EAAE,kBAAkB,EAAE,CAAC;CAC7B;AAED,oEAAoE;AACpE,MAAM,WAAW,YAAY;IAC3B,2DAA2D;IAC3D,OAAO,EAAE,oBAAoB,CAAC;IAC9B,qEAAqE;IACrE,UAAU,EAAE,MAAM,CAAC;IACnB,6BAA6B;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AA0BD,iFAAiF;AACjF,UAAU,YAAY;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,UAAU,EAAE,IAAI,CACd,oBAAoB,EACpB,YAAY,GAAG,YAAY,GAAG,sBAAsB,GAAG,YAAY,CACpE,EACD,KAAK,EAAE,SAAS,YAAY,EAAE,GAC7B,iBAAiB,CAanB;AAED;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAC/B,EAAE,EAAE,kBAAkB,EACtB,QAAQ,EAAE,iBAAiB,EAC3B,WAAW,CAAC,EAAE,MAAM,GACnB,IAAI,CAMN;AAED;;;;GAIG;AACH,wBAAgB,iBAAiB,CAAC,EAAE,EAAE,kBAAkB,GAAG,IAAI,CAE9D;AAcD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,gBAAgB,CAC9B,EAAE,EAAE,kBAAkB,EACtB,WAAW,EAAE,MAAM,GAClB,iBAAiB,GAAG,IAAI,CAY1B;AAED;;;;GAIG;AACH,wBAAgB,YAAY,CAAC,EAAE,EAAE,kBAAkB,EAAE,IAAI,EAAE,YAAY,GAAG,IAAI,CAG7E;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,EAAE,EAAE,kBAAkB,GAAG,YAAY,GAAG,IAAI,CAOvE"}
1
+ {"version":3,"file":"graph-manifest.d.ts","sourceRoot":"","sources":["../../src/nexus/graph-manifest.ts"],"names":[],"mappings":"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"}
@@ -22,6 +22,8 @@ import { canonicalProjectRoot, fromStoredPath, isWithin, toStoredPath } from './
22
22
  const MANIFEST_KEY = 'graph_file_manifest';
23
23
  /** `_nexus_meta` key of the last analysis run summary. */
24
24
  const RUN_SUMMARY_KEY = 'graph_run_summary';
25
+ /** `_nexus_meta` key of the inline-refresh cooldown (T14014). */
26
+ const REFRESH_COOLDOWN_KEY = 'inline_refresh_cooldown';
25
27
  const manifestSchema = z.object({
26
28
  generation: z.string().nullable(),
27
29
  sourceRoot: z.string(),
@@ -40,6 +42,7 @@ const runCostSchema = z.object({
40
42
  reusedFiles: z.number(),
41
43
  resolvedFiles: z.number(),
42
44
  phaseMs: z.record(z.string(), z.number()),
45
+ communitiesSkipped: z.string().optional(),
43
46
  }),
44
47
  durationMs: z.number(),
45
48
  recordedAt: z.string(),
@@ -134,6 +137,72 @@ export function writeRunCost(db, cost) {
134
137
  db.run(sql `INSERT INTO main._nexus_meta (key, value) VALUES (${RUN_SUMMARY_KEY}, ${JSON.stringify(cost)})
135
138
  ON CONFLICT(key) DO UPDATE SET value = excluded.value, updated_at = strftime('%s', 'now')`);
136
139
  }
140
+ /**
141
+ * The revision the published generation indexed (T14007). Lenient: a missing,
142
+ * unparseable or revision-less assessment reads as `null`, never a throw, so a
143
+ * freshness answer is never lost to it.
144
+ *
145
+ * @param db - Project graph database.
146
+ * @returns The recorded `assessedRevision`, or `null`.
147
+ */
148
+ export function readIndexedRevision(db) {
149
+ const value = db.values(sql `SELECT value FROM main._nexus_meta WHERE key = ${ASSESSMENT_KEY}`)[0]?.[0];
150
+ if (typeof value !== 'string')
151
+ return null;
152
+ try {
153
+ const revision = JSON.parse(value).assessedRevision;
154
+ return typeof revision === 'string' && revision.length > 0 ? revision : null;
155
+ }
156
+ catch {
157
+ return null;
158
+ }
159
+ }
160
+ /**
161
+ * Record an inline-refresh cooldown (T14014).
162
+ *
163
+ * @param db - Project graph database.
164
+ * @param cooldown - Until when, from which generation, and why.
165
+ */
166
+ export function writeRefreshCooldown(db, cooldown) {
167
+ db.run(sql `INSERT INTO main._nexus_meta (key, value) VALUES (${REFRESH_COOLDOWN_KEY}, ${JSON.stringify(cooldown)})
168
+ ON CONFLICT(key) DO UPDATE SET value = excluded.value, updated_at = strftime('%s', 'now')`);
169
+ }
170
+ /**
171
+ * The inline-refresh cooldown in force, or `null` (T14014). It lapses at its
172
+ * `until`, or as soon as a successful analysis publishes a new generation.
173
+ *
174
+ * @param db - Project graph database.
175
+ * @param nowMs - The clock.
176
+ * @returns The active cooldown, or `null`.
177
+ */
178
+ export function readActiveRefreshCooldown(db, nowMs = Date.now()) {
179
+ const value = db.values(sql `SELECT value FROM main._nexus_meta WHERE key = ${REFRESH_COOLDOWN_KEY}`)[0]?.[0];
180
+ if (typeof value !== 'string')
181
+ return null;
182
+ let cooldown;
183
+ try {
184
+ cooldown = JSON.parse(value);
185
+ }
186
+ catch {
187
+ return null;
188
+ }
189
+ return refreshCooldownApplies(db, cooldown, nowMs) ? cooldown : null;
190
+ }
191
+ /**
192
+ * Whether a cooldown is still in force: before its `until`, and no analysis
193
+ * has published a new generation since it was recorded (T14014).
194
+ *
195
+ * @param db - Project graph database.
196
+ * @param cooldown - A recorded cooldown (from `_nexus_meta` or its fallback file).
197
+ * @param nowMs - The clock.
198
+ * @returns True while it applies.
199
+ */
200
+ export function refreshCooldownApplies(db, cooldown, nowMs = Date.now()) {
201
+ if (!(Date.parse(cooldown.until) > nowMs))
202
+ return false;
203
+ const generation = db.values(sql `SELECT value FROM main._nexus_meta WHERE key = 'graph_generation'`)[0]?.[0];
204
+ return (typeof generation === 'string' ? generation : null) === cooldown.generation;
205
+ }
137
206
  /**
138
207
  * Read the last recorded run cost.
139
208
  * @param db - Project graph database.
@@ -1 +1 @@
1
- {"version":3,"file":"graph-manifest.js","sourceRoot":"","sources":["../../src/nexus/graph-manifest.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,OAAO,EAAE,GAAG,EAAE,MAAM,aAAa,CAAC;AAElC,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AACvD,OAAO,EAAE,oBAAoB,EAAE,cAAc,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,mBAAmB,CAAC;AAEjG,sDAAsD;AACtD,MAAM,YAAY,GAAG,qBAAqB,CAAC;AAC3C,0DAA0D;AAC1D,MAAM,eAAe,GAAG,mBAAmB,CAAC;AAgC5C,MAAM,cAAc,GAAG,CAAC,CAAC,MAAM,CAAC;IAC9B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;IACjC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,oBAAoB,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,KAAK,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;CAC1E,CAAC,CAAC;AAEH,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IAC7B,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC;QAChB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,aAAa,EAAE,MAAM,EAAE,WAAW,CAAC,CAAC;QAClD,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;QAClB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;QACtB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;QACxB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;QACzB,OAAO,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC;KAC1C,CAAC;IACF,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC;AAUH;;;;;GAKG;AACH,MAAM,UAAU,iBAAiB,CAC/B,UAGC,EACD,KAA8B;IAE9B,MAAM,OAAO,GAAyB,EAAE,CAAC;IACzC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;QACzB,IAAI,IAAI,CAAC,WAAW,IAAI,IAAI,CAAC,IAAI,KAAK,SAAS,IAAI,IAAI,CAAC,OAAO,KAAK,SAAS;YAC3E,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC;IACzE,CAAC;IACD,OAAO;QACL,UAAU,EAAE,UAAU,CAAC,UAAU,IAAI,IAAI;QACzC,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,oBAAoB,EAAE,CAAC,GAAG,CAAC,UAAU,CAAC,oBAAoB,IAAI,EAAE,CAAC,CAAC;QAClE,UAAU,EAAE,UAAU,CAAC,UAAU;QACjC,KAAK,EAAE,OAAO;KACf,CAAC;AACJ,CAAC;AAED;;;;;;;;;GASG;AACH,MAAM,UAAU,iBAAiB,CAC/B,EAAsB,EACtB,QAA2B,EAC3B,WAAoB;IAEpB,MAAM,MAAM,GAAsB,WAAW;QAC3C,CAAC,CAAC,EAAE,GAAG,QAAQ,EAAE,UAAU,EAAE,YAAY,CAAC,WAAW,EAAE,QAAQ,CAAC,UAAU,CAAC,EAAE;QAC7E,CAAC,CAAC,QAAQ,CAAC;IACb,EAAE,CAAC,GAAG,CAAC,GAAG,CAAA,qDAAqD,YAAY,KAAK,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC;8FACV,CAAC,CAAC;AAChG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,iBAAiB,CAAC,EAAsB;IACtD,EAAE,CAAC,GAAG,CAAC,GAAG,CAAA,4CAA4C,YAAY,EAAE,CAAC,CAAC;AACxE,CAAC;AAED;;;;GAIG;AACH,SAAS,iBAAiB,CAAC,EAAsB;IAC/C,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CACrB,GAAG,CAAA,6FAA6F,cAAc,EAAE,CACjH,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACV,OAAO,OAAO,KAAK,KAAK,QAAQ,IAAI,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC;AAC5E,CAAC;AAED;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,gBAAgB,CAC9B,EAAsB,EACtB,WAAmB;IAEnB,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CACrB,GAAG,CAAA,kDAAkD,YAAY,EAAE,CACpE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACV,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,MAAM,GAAG,cAAc,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IACvD,MAAM,IAAI,GAAG,oBAAoB,CAAC,WAAW,CAAC,CAAC;IAC/C,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,UAAU,CAAC;QAChC,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC;IAC5E,MAAM,UAAU,GAAG,iBAAiB,CAAC,EAAE,CAAC,CAAC;IACzC,IAAI,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC,UAAU,CAAC;QAAE,OAAO,MAAM,CAAC;IAC3E,OAAO,EAAE,GAAG,MAAM,EAAE,UAAU,EAAE,cAAc,CAAC,IAAI,EAAE,MAAM,CAAC,UAAU,EAAE,UAAU,CAAC,EAAE,CAAC;AACxF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,YAAY,CAAC,EAAsB,EAAE,IAAkB;IACrE,EAAE,CAAC,GAAG,CAAC,GAAG,CAAA,qDAAqD,eAAe,KAAK,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC;8FACX,CAAC,CAAC;AAChG,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,WAAW,CAAC,EAAsB;IAChD,MAAM,KAAK,GAAG,EAAE,CAAC,MAAM,CACrB,GAAG,CAAA,kDAAkD,eAAe,EAAE,CACvE,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACV,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,IAAI,CAAC;IAC3C,MAAM,MAAM,GAAG,aAAa,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC;AAC7C,CAAC"}
1
+ {"version":3,"file":"graph-manifest.js","sourceRoot":"","sources":["../../src/nexus/graph-manifest.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-augment.d.ts","sourceRoot":"","sources":["../../src/nexus/hooks-augment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CA0D7D"}
1
+ {"version":3,"file":"hooks-augment.d.ts","sourceRoot":"","sources":["../../src/nexus/hooks-augment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAKH;;;;;;;;;;;;;GAaG;AACH,wBAAgB,uBAAuB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CA8D7D"}
@@ -77,9 +77,13 @@ if [[ -z "\${PATTERN}" ]]; then
77
77
  exit 0
78
78
  fi
79
79
 
80
- # Call cleo nexus augment and emit to stderr
81
- # If cleo is not available or nexus.db is absent, this will exit 0 silently
82
- cleo nexus augment "\${PATTERN}" 2>&1 >&2 || true
80
+ # Call cleo nexus augment and emit to stderr only when it answered.
81
+ # A missing cleo, an absent index, or a refusal because the index is stale
82
+ # (E_NEXUS_INDEX_STALE, T14008) prints nothing: no stale context, no noise on
83
+ # every tool call.
84
+ if OUT="$(cleo nexus augment "\${PATTERN}" 2>/dev/null)" && [[ -n "\${OUT}" ]]; then
85
+ printf '%s\n' "\${OUT}" >&2
86
+ fi
83
87
 
84
88
  exit 0
85
89
  `;
@@ -1 +1 @@
1
- {"version":3,"file":"hooks-augment.js","sourceRoot":"","sources":["../../src/nexus/hooks-augment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAEtD,6CAA6C;IAC7C,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,kEAAkE;IAClE,mEAAmE;IACnE,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA8CvB,CAAC;IAEA,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5D,CAAC"}
1
+ {"version":3,"file":"hooks-augment.js","sourceRoot":"","sources":["../../src/nexus/hooks-augment.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,EAAE,SAAS,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC;;;;;;;;;;;;;GAaG;AACH,MAAM,UAAU,uBAAuB,CAAC,OAAe;IACrD,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IACjD,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,EAAE,kBAAkB,CAAC,CAAC;IAEtD,6CAA6C;IAC7C,SAAS,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEzC,kEAAkE;IAClE,mEAAmE;IACnE,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAkDvB,CAAC;IAEA,aAAa,CAAC,UAAU,EAAE,aAAa,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5D,CAAC"}
@@ -0,0 +1,112 @@
1
+ /**
2
+ * Walk-free code-index health (T14021): where the index stands against the
3
+ * base branch and HEAD, which indexed files are gone from disk, the stale
4
+ * policy, and the read-only per-project probe `cleo doctor --all-projects`
5
+ * runs. Kept apart from `freshness.ts` so the doctor probe does not pull the
6
+ * analysis pipeline (and its write path) into the health check.
7
+ *
8
+ * Code placed in `packages/core/` per Package-Boundary Check — verified against AGENTS.md.
9
+ *
10
+ * @module nexus/index-health
11
+ * @task T14021
12
+ */
13
+ import type { GraphIndexFreshness } from '@cleocode/contracts';
14
+ import type { getNexusDb } from '../store/nexus-sqlite.js';
15
+ /**
16
+ * Where the index stands against the base branch (T14007): the indexed
17
+ * revision, the base ref and its commit, the commits the index has not seen,
18
+ * and its age. Measured against the base ref, never the working tree or HEAD,
19
+ * so a checkout on an old branch cannot make a stale index look fresh.
20
+ *
21
+ * @param db - Project graph database.
22
+ * @param sourceRoot - Repository the index describes.
23
+ * @param lastIndexedAt - Assessment time of the published generation.
24
+ * @returns The revision fields of {@link GraphIndexFreshness}.
25
+ */
26
+ export declare function measureAgainstBase(db: Awaited<ReturnType<typeof getNexusDb>>, sourceRoot: string, lastIndexedAt: string | null): Promise<Pick<GraphIndexFreshness, 'indexedRevision' | 'baseRef' | 'baseRevision' | 'commitsBehind' | 'commitsBehindHead' | 'changedFilesSinceIndex' | 'ageDays'>>;
27
+ /**
28
+ * Indexed paths that no longer exist under `sourceRoot`, sorted (T14021). One
29
+ * `existsSync` per path: no walk and no hashing.
30
+ *
31
+ * @param sourceRoot - Repository the index describes.
32
+ * @param paths - Indexed POSIX paths relative to `sourceRoot`.
33
+ * @returns The absent paths.
34
+ */
35
+ export declare function missingIndexedPaths(sourceRoot: string, paths: Iterable<string>): string[];
36
+ /** One project's code-index health, as `cleo doctor --all-projects` reports it (T14021). */
37
+ export interface NexusIndexHealth {
38
+ /** A published generation with a file manifest exists. */
39
+ indexed: boolean;
40
+ /** When the index was built. */
41
+ lastIndexedAt: string | null;
42
+ /** Whole days since it was built. */
43
+ ageDays: number | null;
44
+ /** Revision it indexed. */
45
+ indexedRevision: string | null;
46
+ /** Commits on the base branch it has not seen (reported only). */
47
+ commitsBehind: number | null;
48
+ /** Commits on the checked-out HEAD it has not seen; judged against the policy. */
49
+ commitsBehindHead: number | null;
50
+ /** Indexed files no longer on disk. */
51
+ missingFileCount: number;
52
+ /** A bounded sample of them. */
53
+ missingPaths: string[];
54
+ /** Too far behind HEAD for `nexus.freshness.maxCommitsBehind`, or holding missing files. */
55
+ stale: boolean;
56
+ /** Why the index is stale or could not be read; absent when fresh. */
57
+ reason?: string;
58
+ }
59
+ /**
60
+ * Probe a project's code index without a walk and without opening its store
61
+ * through the migrating chokepoint (T14021): a read-only snapshot of the
62
+ * project's `cleo.db`, the recorded manifest and revision, `git rev-list`
63
+ * counts, and one `existsSync` per indexed file. A project that was never
64
+ * indexed is not stale.
65
+ *
66
+ * @param projectRoot - Project whose index is probed.
67
+ * @param dbPath - The project's `cleo.db`.
68
+ * @param options - `sampleLimit` for missing paths.
69
+ * @returns The index health; never throws.
70
+ * @example
71
+ * ```ts
72
+ * const health = await probeNexusIndexHealth('/repo', '/repo/.cleo/cleo.db');
73
+ * if (health.stale) console.log(health.reason);
74
+ * ```
75
+ */
76
+ export declare function probeNexusIndexHealth(projectRoot: string, dbPath: string, options?: {
77
+ sampleLimit?: number;
78
+ }): Promise<NexusIndexHealth>;
79
+ /** Default for `nexus.freshness.maxCommitsBehind` (T14008, lead decision 2026-10-24). */
80
+ export declare const DEFAULT_MAX_COMMITS_BEHIND = 50;
81
+ /** Env var that accepts a stale answer for any graph query (T14008). */
82
+ export declare const NEXUS_ALLOW_STALE_ENV = "CLEO_NEXUS_ALLOW_STALE";
83
+ /** When a graph answer from a stale index is refused (T14008). */
84
+ export interface NexusStalePolicy {
85
+ /** Most commits the index may trail the base branch. */
86
+ maxCommitsBehind: number;
87
+ /** The caller accepted a stale answer (`--allow-stale` or {@link NEXUS_ALLOW_STALE_ENV}). */
88
+ allowStale: boolean;
89
+ }
90
+ /**
91
+ * Read the stale-answer policy: `nexus.freshness.maxCommitsBehind` (default
92
+ * {@link DEFAULT_MAX_COMMITS_BEHIND}) and the caller's opt-out.
93
+ *
94
+ * @param projectRoot - Project whose merged config is read.
95
+ * @param options - `allowStale` from the caller's flag.
96
+ * @returns The effective policy.
97
+ * @example
98
+ * ```ts
99
+ * const policy = await readNexusStalePolicy(root, { allowStale: args['allow-stale'] });
100
+ * ```
101
+ */
102
+ export declare function readNexusStalePolicy(projectRoot: string, options?: {
103
+ allowStale?: boolean;
104
+ }): Promise<NexusStalePolicy>;
105
+ /**
106
+ * Read an on/off env value (`true`/`false`, `1`/`0`, `yes`/`no`, `on`/`off`).
107
+ *
108
+ * @param value - Raw env value.
109
+ * @returns The switch, or `undefined` when unrecognised.
110
+ */
111
+ export declare function envSwitch(value: unknown): boolean | undefined;
112
+ //# sourceMappingURL=index-health.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-health.d.ts","sourceRoot":"","sources":["../../src/nexus/index-health.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAIH,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,qBAAqB,CAAC;AAE/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,0BAA0B,CAAC;AAM3D;;;;;;;;;;GAUG;AACH,wBAAsB,kBAAkB,CACtC,EAAE,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,CAAC,EAC1C,UAAU,EAAE,MAAM,EAClB,aAAa,EAAE,MAAM,GAAG,IAAI,GAC3B,OAAO,CACR,IAAI,CACF,mBAAmB,EACjB,iBAAiB,GACjB,SAAS,GACT,cAAc,GACd,eAAe,GACf,mBAAmB,GACnB,wBAAwB,GACxB,SAAS,CACZ,CACF,CAgCA;AAED;;;;;;;GAOG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,MAAM,EAAE,CAIzF;AAED,4FAA4F;AAC5F,MAAM,WAAW,gBAAgB;IAC/B,0DAA0D;IAC1D,OAAO,EAAE,OAAO,CAAC;IACjB,gCAAgC;IAChC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,qCAAqC;IACrC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,2BAA2B;IAC3B,eAAe,EAAE,MAAM,GAAG,IAAI,CAAC;IAC/B,kEAAkE;IAClE,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;IAC7B,kFAAkF;IAClF,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,uCAAuC;IACvC,gBAAgB,EAAE,MAAM,CAAC;IACzB,gCAAgC;IAChC,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,4FAA4F;IAC5F,KAAK,EAAE,OAAO,CAAC;IACf,sEAAsE;IACtE,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAsB,qBAAqB,CACzC,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE,MAAM,EACd,OAAO,GAAE;IAAE,WAAW,CAAC,EAAE,MAAM,CAAA;CAAO,GACrC,OAAO,CAAC,gBAAgB,CAAC,CA0D3B;AAED,yFAAyF;AACzF,eAAO,MAAM,0BAA0B,KAAK,CAAC;AAE7C,wEAAwE;AACxE,eAAO,MAAM,qBAAqB,2BAA2B,CAAC;AAE9D,kEAAkE;AAClE,MAAM,WAAW,gBAAgB;IAC/B,wDAAwD;IACxD,gBAAgB,EAAE,MAAM,CAAC;IACzB,6FAA6F;IAC7F,UAAU,EAAE,OAAO,CAAC;CACrB;AAED;;;;;;;;;;;GAWG;AACH,wBAAsB,oBAAoB,CACxC,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE;IAAE,UAAU,CAAC,EAAE,OAAO,CAAA;CAAO,GACrC,OAAO,CAAC,gBAAgB,CAAC,CAgB3B;AAED;;;;;GAKG;AACH,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,CAK7D"}
@@ -0,0 +1,199 @@
1
+ /**
2
+ * Walk-free code-index health (T14021): where the index stands against the
3
+ * base branch and HEAD, which indexed files are gone from disk, the stale
4
+ * policy, and the read-only per-project probe `cleo doctor --all-projects`
5
+ * runs. Kept apart from `freshness.ts` so the doctor probe does not pull the
6
+ * analysis pipeline (and its write path) into the health check.
7
+ *
8
+ * Code placed in `packages/core/` per Package-Boundary Check — verified against AGENTS.md.
9
+ *
10
+ * @module nexus/index-health
11
+ * @task T14021
12
+ */
13
+ import { existsSync } from 'node:fs';
14
+ import { join } from 'node:path';
15
+ import { getConfigValue } from '../config/registry.js';
16
+ import { readFileManifest, readIndexedRevision } from './graph-manifest.js';
17
+ /** Milliseconds per day, for {@link GraphIndexFreshness.ageDays}. */
18
+ const DAY_MS = 86_400_000;
19
+ /**
20
+ * Where the index stands against the base branch (T14007): the indexed
21
+ * revision, the base ref and its commit, the commits the index has not seen,
22
+ * and its age. Measured against the base ref, never the working tree or HEAD,
23
+ * so a checkout on an old branch cannot make a stale index look fresh.
24
+ *
25
+ * @param db - Project graph database.
26
+ * @param sourceRoot - Repository the index describes.
27
+ * @param lastIndexedAt - Assessment time of the published generation.
28
+ * @returns The revision fields of {@link GraphIndexFreshness}.
29
+ */
30
+ export async function measureAgainstBase(db, sourceRoot, lastIndexedAt) {
31
+ const { changedFilesSince, commitsBetween, resolveBaseRef, revParse } = await import('../git/base-ref.js');
32
+ const indexedRevision = readIndexedRevision(db);
33
+ const baseRef = resolveBaseRef(sourceRoot);
34
+ const baseRevision = baseRef ? revParse(sourceRoot, baseRef) : null;
35
+ const commitsBehind = indexedRevision && baseRevision
36
+ ? commitsBetween(sourceRoot, indexedRevision, baseRevision)
37
+ : null;
38
+ // T14008: what is checked out is what a query is about; the base distance is report-only.
39
+ const commitsBehindHead = indexedRevision
40
+ ? commitsBetween(sourceRoot, indexedRevision, 'HEAD')
41
+ : null;
42
+ // T14014: a cheap, walk-free count for reporting; the walk stays authoritative.
43
+ const changedFilesSinceIndex = indexedRevision
44
+ ? changedFilesSince(sourceRoot, indexedRevision)
45
+ : null;
46
+ const indexedMs = lastIndexedAt ? Date.parse(lastIndexedAt) : Number.NaN;
47
+ const ageDays = Number.isFinite(indexedMs)
48
+ ? Math.max(0, Math.floor((Date.now() - indexedMs) / DAY_MS))
49
+ : null;
50
+ return {
51
+ indexedRevision,
52
+ baseRef,
53
+ baseRevision,
54
+ commitsBehind,
55
+ commitsBehindHead,
56
+ changedFilesSinceIndex,
57
+ ageDays,
58
+ };
59
+ }
60
+ /**
61
+ * Indexed paths that no longer exist under `sourceRoot`, sorted (T14021). One
62
+ * `existsSync` per path: no walk and no hashing.
63
+ *
64
+ * @param sourceRoot - Repository the index describes.
65
+ * @param paths - Indexed POSIX paths relative to `sourceRoot`.
66
+ * @returns The absent paths.
67
+ */
68
+ export function missingIndexedPaths(sourceRoot, paths) {
69
+ const missing = [];
70
+ for (const path of paths)
71
+ if (!existsSync(join(sourceRoot, path)))
72
+ missing.push(path);
73
+ return missing.sort();
74
+ }
75
+ /**
76
+ * Probe a project's code index without a walk and without opening its store
77
+ * through the migrating chokepoint (T14021): a read-only snapshot of the
78
+ * project's `cleo.db`, the recorded manifest and revision, `git rev-list`
79
+ * counts, and one `existsSync` per indexed file. A project that was never
80
+ * indexed is not stale.
81
+ *
82
+ * @param projectRoot - Project whose index is probed.
83
+ * @param dbPath - The project's `cleo.db`.
84
+ * @param options - `sampleLimit` for missing paths.
85
+ * @returns The index health; never throws.
86
+ * @example
87
+ * ```ts
88
+ * const health = await probeNexusIndexHealth('/repo', '/repo/.cleo/cleo.db');
89
+ * if (health.stale) console.log(health.reason);
90
+ * ```
91
+ */
92
+ export async function probeNexusIndexHealth(projectRoot, dbPath, options = {}) {
93
+ const health = {
94
+ indexed: false,
95
+ lastIndexedAt: null,
96
+ ageDays: null,
97
+ indexedRevision: null,
98
+ commitsBehind: null,
99
+ commitsBehindHead: null,
100
+ missingFileCount: 0,
101
+ missingPaths: [],
102
+ stale: false,
103
+ };
104
+ if (!existsSync(dbPath))
105
+ return health;
106
+ const { openCleoDbSnapshot } = await import('../store/open-cleo-db.js');
107
+ const { drizzle } = await import('drizzle-orm/node-sqlite');
108
+ let snap;
109
+ try {
110
+ snap = openCleoDbSnapshot(dbPath, { readOnly: true, applyPragmas: false });
111
+ const hasMeta = snap.db
112
+ .prepare("SELECT 1 FROM main.sqlite_master WHERE type = 'table' AND name = '_nexus_meta'")
113
+ .get();
114
+ if (!hasMeta)
115
+ return health;
116
+ const db = drizzle({ client: snap.db });
117
+ const manifest = readFileManifest(db, projectRoot);
118
+ if (!manifest)
119
+ return health;
120
+ const base = await measureAgainstBase(db, manifest.sourceRoot, manifest.assessedAt);
121
+ const missing = missingIndexedPaths(manifest.sourceRoot, manifest.files.map(([path]) => path));
122
+ const { maxCommitsBehind } = await readNexusStalePolicy(projectRoot);
123
+ const behind = (base.commitsBehindHead ?? 0) > maxCommitsBehind;
124
+ const reasons = [
125
+ ...(behind
126
+ ? [`${base.commitsBehindHead} commit(s) behind HEAD (max ${maxCommitsBehind})`]
127
+ : []),
128
+ ...(missing.length > 0 ? [`${missing.length} indexed file(s) no longer on disk`] : []),
129
+ ];
130
+ return {
131
+ indexed: true,
132
+ lastIndexedAt: manifest.assessedAt,
133
+ ageDays: base.ageDays ?? null,
134
+ indexedRevision: base.indexedRevision ?? null,
135
+ commitsBehind: base.commitsBehind ?? null,
136
+ commitsBehindHead: base.commitsBehindHead ?? null,
137
+ missingFileCount: missing.length,
138
+ missingPaths: missing.slice(0, options.sampleLimit ?? 10),
139
+ stale: reasons.length > 0,
140
+ ...(reasons.length > 0 ? { reason: reasons.join('; ') } : {}),
141
+ };
142
+ }
143
+ catch (error) {
144
+ return {
145
+ ...health,
146
+ reason: `the index could not be read: ${error instanceof Error ? error.message : String(error)}`,
147
+ };
148
+ }
149
+ finally {
150
+ snap?.close();
151
+ }
152
+ }
153
+ /** Default for `nexus.freshness.maxCommitsBehind` (T14008, lead decision 2026-10-24). */
154
+ export const DEFAULT_MAX_COMMITS_BEHIND = 50;
155
+ /** Env var that accepts a stale answer for any graph query (T14008). */
156
+ export const NEXUS_ALLOW_STALE_ENV = 'CLEO_NEXUS_ALLOW_STALE';
157
+ /**
158
+ * Read the stale-answer policy: `nexus.freshness.maxCommitsBehind` (default
159
+ * {@link DEFAULT_MAX_COMMITS_BEHIND}) and the caller's opt-out.
160
+ *
161
+ * @param projectRoot - Project whose merged config is read.
162
+ * @param options - `allowStale` from the caller's flag.
163
+ * @returns The effective policy.
164
+ * @example
165
+ * ```ts
166
+ * const policy = await readNexusStalePolicy(root, { allowStale: args['allow-stale'] });
167
+ * ```
168
+ */
169
+ export async function readNexusStalePolicy(projectRoot, options = {}) {
170
+ let raw;
171
+ try {
172
+ raw = await getConfigValue('nexus.freshness.maxCommitsBehind', { projectRoot });
173
+ }
174
+ catch {
175
+ raw = undefined;
176
+ }
177
+ const configured = Number(raw);
178
+ return {
179
+ maxCommitsBehind: raw !== undefined && raw !== null && Number.isInteger(configured) && configured >= 0
180
+ ? configured
181
+ : DEFAULT_MAX_COMMITS_BEHIND,
182
+ allowStale: options.allowStale === true || envSwitch(process.env[NEXUS_ALLOW_STALE_ENV]) === true,
183
+ };
184
+ }
185
+ /**
186
+ * Read an on/off env value (`true`/`false`, `1`/`0`, `yes`/`no`, `on`/`off`).
187
+ *
188
+ * @param value - Raw env value.
189
+ * @returns The switch, or `undefined` when unrecognised.
190
+ */
191
+ export function envSwitch(value) {
192
+ const text = String(value).trim().toLowerCase();
193
+ if (['true', '1', 'yes', 'on'].includes(text))
194
+ return true;
195
+ if (['false', '0', 'no', 'off'].includes(text))
196
+ return false;
197
+ return undefined;
198
+ }
199
+ //# sourceMappingURL=index-health.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index-health.js","sourceRoot":"","sources":["../../src/nexus/index-health.ts"],"names":[],"mappings":"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"}