@wrongstack/core 0.313.0 → 0.316.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (343) hide show
  1. package/dist/chronicle/index.js +84 -6391
  2. package/dist/chronicle/legacy-journal-import.d.ts +0 -6
  3. package/dist/chronicle/metrics-ingest.d.ts +14 -0
  4. package/dist/chronicle/metrics-schema.d.ts +10 -1
  5. package/dist/chronicle/metrics-store.d.ts +20 -2
  6. package/dist/chronicle/project-server.js +98 -4874
  7. package/dist/chronicle/sink.d.ts +13 -0
  8. package/dist/chronicle/sqlite-journal.d.ts +20 -2
  9. package/dist/chunk-25LSLC3G.js +334 -0
  10. package/dist/chunk-27QIURLN.js +1073 -0
  11. package/dist/chunk-2FK4WTFF.js +207 -0
  12. package/dist/chunk-2YU4WVBW.js +134 -0
  13. package/dist/chunk-3AGWVSS7.js +4608 -0
  14. package/dist/chunk-3BDV7RL3.js +211 -0
  15. package/dist/chunk-3ECENVHL.js +325 -0
  16. package/dist/chunk-3XPVB7BA.js +135 -0
  17. package/dist/chunk-45WI72ZB.js +16884 -0
  18. package/dist/chunk-4BMVPOHO.js +3748 -0
  19. package/dist/chunk-4I7HGVVA.js +363 -0
  20. package/dist/chunk-4LCZVJVF.js +317 -0
  21. package/dist/chunk-4SJNS7OB.js +217 -0
  22. package/dist/chunk-4VWO3ZXL.js +342 -0
  23. package/dist/chunk-57GEWK5X.js +26 -0
  24. package/dist/chunk-5BMIE7QG.js +46 -0
  25. package/dist/chunk-5S437PRC.js +50 -0
  26. package/dist/chunk-5XDUGTKN.js +511 -0
  27. package/dist/chunk-5YPSXQXM.js +1443 -0
  28. package/dist/chunk-6FHWXLPT.js +10 -0
  29. package/dist/chunk-6H5GEOET.js +2406 -0
  30. package/dist/chunk-6NWEVFEL.js +151 -0
  31. package/dist/chunk-AYW5YINX.js +58 -0
  32. package/dist/chunk-B4AMLZPB.js +9 -0
  33. package/dist/chunk-B7F4WVP4.js +65 -0
  34. package/dist/chunk-BJHVULHO.js +55 -0
  35. package/dist/chunk-BPBKKBUK.js +2085 -0
  36. package/dist/chunk-BYD345OX.js +589 -0
  37. package/dist/chunk-C27KDLOX.js +279 -0
  38. package/dist/chunk-CU546ESW.js +597 -0
  39. package/dist/chunk-DLHHXUAM.js +172 -0
  40. package/dist/chunk-DOTHQSJ2.js +429 -0
  41. package/dist/chunk-DYLPMV4Q.js +711 -0
  42. package/dist/chunk-EODDVJBM.js +82 -0
  43. package/dist/chunk-F3JWNST7.js +361 -0
  44. package/dist/chunk-FC2ZGRF3.js +140 -0
  45. package/dist/chunk-FCBTO76Z.js +5786 -0
  46. package/dist/chunk-FHZVFYSL.js +396 -0
  47. package/dist/chunk-FNXVT7HF.js +52 -0
  48. package/dist/chunk-FWNLEZYG.js +259 -0
  49. package/dist/chunk-FXQLIX3K.js +211 -0
  50. package/dist/chunk-G5S3S5ZN.js +38 -0
  51. package/dist/chunk-GDQ7CZRQ.js +116 -0
  52. package/dist/chunk-GJJGJB2R.js +1374 -0
  53. package/dist/chunk-GTCU6DZ3.js +1 -0
  54. package/dist/chunk-HA4ZYA6T.js +178 -0
  55. package/dist/chunk-HI3JGZR2.js +188 -0
  56. package/dist/chunk-HMLIGAU7.js +395 -0
  57. package/dist/chunk-HXKZ7OBQ.js +303 -0
  58. package/dist/chunk-I7DALG7J.js +292 -0
  59. package/dist/chunk-IRUTEHCE.js +960 -0
  60. package/dist/chunk-IYFBFX34.js +86 -0
  61. package/dist/chunk-J2WRWR37.js +1104 -0
  62. package/dist/chunk-JFPJ6LLQ.js +129 -0
  63. package/dist/chunk-JMULFFLN.js +9 -0
  64. package/dist/chunk-JO4MGB6Z.js +1264 -0
  65. package/dist/chunk-JVKB2TBL.js +48 -0
  66. package/dist/chunk-JX7VBZDK.js +31 -0
  67. package/dist/chunk-K6BXGITA.js +931 -0
  68. package/dist/chunk-KDQJCT2J.js +45 -0
  69. package/dist/chunk-KJ2ZTQSL.js +47 -0
  70. package/dist/chunk-KZMSZV32.js +187 -0
  71. package/dist/chunk-LA7CLDRW.js +129 -0
  72. package/dist/chunk-LHOA5DWA.js +28 -0
  73. package/dist/chunk-LSMMOS2Z.js +119 -0
  74. package/dist/chunk-LX5QWLBL.js +27 -0
  75. package/dist/chunk-LXWCMQNJ.js +789 -0
  76. package/dist/chunk-M27LIEKV.js +2829 -0
  77. package/dist/chunk-MJPHJRAL.js +663 -0
  78. package/dist/chunk-MTL4O5YR.js +228 -0
  79. package/dist/chunk-NDBIPFNY.js +102 -0
  80. package/dist/chunk-NEMIWEXC.js +1199 -0
  81. package/dist/chunk-NHJ75HXY.js +1 -0
  82. package/dist/chunk-NIOAGFPB.js +1510 -0
  83. package/dist/chunk-NS52ISWS.js +355 -0
  84. package/dist/chunk-NSOFPKGT.js +5352 -0
  85. package/dist/chunk-NVIZG63R.js +757 -0
  86. package/dist/chunk-O37BQ65S.js +21 -0
  87. package/dist/chunk-OOYZPOXM.js +308 -0
  88. package/dist/chunk-OSGLYW5J.js +28 -0
  89. package/dist/chunk-PFCMSSUF.js +1640 -0
  90. package/dist/chunk-PFZO3C6H.js +14 -0
  91. package/dist/chunk-PGRVXIMY.js +158 -0
  92. package/dist/chunk-PHH7LD45.js +113 -0
  93. package/dist/chunk-PISBFBJN.js +109 -0
  94. package/dist/chunk-POOOIWE5.js +9 -0
  95. package/dist/chunk-PQNS3U7Z.js +1240 -0
  96. package/dist/chunk-QSTSJOCK.js +402 -0
  97. package/dist/chunk-RFQMOKWK.js +282 -0
  98. package/dist/chunk-RJIZEJ42.js +30 -0
  99. package/dist/chunk-RTOTNK3P.js +484 -0
  100. package/dist/chunk-RXKSDUAU.js +1172 -0
  101. package/dist/chunk-S45JPKQN.js +3317 -0
  102. package/dist/chunk-SAFHACFA.js +152 -0
  103. package/dist/chunk-SQJVFEBV.js +41 -0
  104. package/dist/chunk-SVT4RNTR.js +49 -0
  105. package/dist/chunk-SWUFN7XM.js +43 -0
  106. package/dist/chunk-SXMVYC5H.js +174 -0
  107. package/dist/chunk-SZ6AYUIZ.js +23 -0
  108. package/dist/chunk-TBRL2RCC.js +9 -0
  109. package/dist/chunk-TCCHINEF.js +655 -0
  110. package/dist/chunk-THEGTRAG.js +316 -0
  111. package/dist/chunk-TR4LQE7L.js +2256 -0
  112. package/dist/chunk-TRT2HRWZ.js +18 -0
  113. package/dist/chunk-TWJMGXCI.js +900 -0
  114. package/dist/chunk-U45AXT5D.js +1023 -0
  115. package/dist/chunk-U4FWBSO3.js +509 -0
  116. package/dist/chunk-UBGDX6FI.js +147 -0
  117. package/dist/chunk-UJILKYES.js +75 -0
  118. package/dist/chunk-ULMAQV3T.js +234 -0
  119. package/dist/chunk-VVBP6KGT.js +9 -0
  120. package/dist/chunk-W5VITDM2.js +168 -0
  121. package/dist/chunk-WAHQVNWT.js +194 -0
  122. package/dist/chunk-WBPVKEEE.js +227 -0
  123. package/dist/chunk-WGGYRBXH.js +5434 -0
  124. package/dist/chunk-WLYKU45P.js +5770 -0
  125. package/dist/chunk-WP7BVANJ.js +53 -0
  126. package/dist/chunk-WQQON3SV.js +473 -0
  127. package/dist/chunk-WQTOVMGV.js +119 -0
  128. package/dist/chunk-XBDP4QPW.js +7 -0
  129. package/dist/chunk-XEBHSJLT.js +103 -0
  130. package/dist/chunk-XF4VUMKW.js +231 -0
  131. package/dist/chunk-XQ2ECNK3.js +1 -0
  132. package/dist/chunk-Y5YXDM7D.js +74 -0
  133. package/dist/chunk-YOPAUVU4.js +2588 -0
  134. package/dist/chunk-YPT4A46F.js +362 -0
  135. package/dist/chunk-YWXT3JNM.js +425 -0
  136. package/dist/chunk-YY6APYUM.js +49 -0
  137. package/dist/chunk-Z2IJUO45.js +691 -0
  138. package/dist/chunk-ZHZ2Y2DH.js +1643 -0
  139. package/dist/chunk-ZT7JNIGX.js +152 -0
  140. package/dist/coordination/agent-monitor.d.ts +9 -1
  141. package/dist/coordination/agent-subagent-runner.d.ts +1 -1
  142. package/dist/coordination/agents/agent-prompts.d.ts +8 -0
  143. package/dist/coordination/agents/index.d.ts +33 -1
  144. package/dist/coordination/agents/index.js +184 -6269
  145. package/dist/coordination/agents/phase3-wave1-platform.d.ts +1 -3
  146. package/dist/coordination/agents/phase3-wave2-meta.d.ts +1 -3
  147. package/dist/coordination/agents/phase8-wave3-products.d.ts +1 -3
  148. package/dist/coordination/agents/phase9-wave4-platform-meta.d.ts +1 -3
  149. package/dist/coordination/agents/project-agent-identity.d.ts +11 -11
  150. package/dist/coordination/agents/types.d.ts +13 -2
  151. package/dist/coordination/brain-monitor.d.ts +30 -7
  152. package/dist/coordination/collab-debug.d.ts +1 -1
  153. package/dist/coordination/collab-pause.d.ts +1 -1
  154. package/dist/coordination/delegate-tool.d.ts +7 -5
  155. package/dist/coordination/director-kanban-queue-helpers.d.ts +1 -0
  156. package/dist/coordination/director-options.d.ts +7 -0
  157. package/dist/coordination/director-spawn-model.d.ts +17 -0
  158. package/dist/coordination/director-tools.d.ts +2 -2
  159. package/dist/coordination/director.d.ts +12 -0
  160. package/dist/coordination/dispatcher.d.ts +8 -0
  161. package/dist/coordination/fleet-bus.d.ts +35 -4
  162. package/dist/coordination/fleet-supervisor.d.ts +10 -2
  163. package/dist/coordination/fleet.d.ts +16 -7
  164. package/dist/coordination/index.d.ts +4 -0
  165. package/dist/coordination/index.js +402 -34324
  166. package/dist/coordination/kanban-dispatch-port.d.ts +2 -2
  167. package/dist/coordination/mailbox-http-router.d.ts +4 -3
  168. package/dist/coordination/mailbox-http-validation.d.ts +1 -1
  169. package/dist/coordination/mailbox-project-server.js +48 -3276
  170. package/dist/coordination/mailbox-types.d.ts +24 -6
  171. package/dist/coordination/model-tier-leader.d.ts +122 -0
  172. package/dist/coordination/model-tier.d.ts +122 -0
  173. package/dist/coordination/multi-agent-coordinator.d.ts +24 -0
  174. package/dist/coordination/origin-session.d.ts +16 -0
  175. package/dist/coordination/provider-status-tracker.d.ts +41 -5
  176. package/dist/coordination/session-note-hub.d.ts +44 -0
  177. package/dist/coordination/session-note-tool.d.ts +10 -0
  178. package/dist/core/agent.d.ts +15 -2
  179. package/dist/core/context.d.ts +22 -3
  180. package/dist/core/index.d.ts +2 -0
  181. package/dist/core/index.js +239 -12360
  182. package/dist/core/model-ref.js +5 -23
  183. package/dist/core/provider-runner.d.ts +36 -1
  184. package/dist/core/request-conversation-binding.d.ts +37 -0
  185. package/dist/core/session-notes.d.ts +25 -0
  186. package/dist/core/system-prompt-builder.d.ts +11 -2
  187. package/dist/core/system-prompt-variants.d.ts +78 -0
  188. package/dist/design/index.js +50 -1087
  189. package/dist/execution/auto-compaction-middleware.d.ts +11 -0
  190. package/dist/execution/autonomy-brain.d.ts +2 -1
  191. package/dist/execution/autonomy-prompt-contributor.d.ts +7 -2
  192. package/dist/execution/compaction-core.d.ts +4 -4
  193. package/dist/execution/eternal-autonomy.d.ts +1 -1
  194. package/dist/execution/index.d.ts +1 -1
  195. package/dist/execution/index.js +1615 -21895
  196. package/dist/execution/model-runtime.d.ts +0 -7
  197. package/dist/execution/parallel-eternal-engine.d.ts +7 -7
  198. package/dist/execution/prompt-enhancer.js +16 -535
  199. package/dist/execution/retry-policy.d.ts +31 -1
  200. package/dist/extension/index.js +7 -311
  201. package/dist/goal/index.js +33 -3435
  202. package/dist/hooks/index.js +14 -1138
  203. package/dist/hq/index.js +114 -5139
  204. package/dist/hq/persistence/event-log.d.ts +0 -1
  205. package/dist/hq/persistence.d.ts +4 -4
  206. package/dist/hq/protocol.js +21 -668
  207. package/dist/hq/publisher.d.ts +2 -0
  208. package/dist/index.d.ts +14 -11
  209. package/dist/index.js +1502 -92655
  210. package/dist/infrastructure/index.d.ts +4 -4
  211. package/dist/infrastructure/index.js +504 -5230
  212. package/dist/infrastructure/token-counter.d.ts +9 -0
  213. package/dist/kernel/events/agent-events.d.ts +77 -3
  214. package/dist/kernel/events/brain-events.d.ts +12 -0
  215. package/dist/kernel/events/provider-events.d.ts +22 -1
  216. package/dist/kernel/events/session-events.d.ts +14 -0
  217. package/dist/kernel/events/tool-events.d.ts +13 -0
  218. package/dist/kernel/index.js +14 -992
  219. package/dist/mailbox-attach.d.ts +1 -1
  220. package/dist/models/index.js +41 -1117
  221. package/dist/notifications/index.js +3 -108
  222. package/dist/observability/event-bridge.d.ts +25 -5
  223. package/dist/observability/index.d.ts +9 -8
  224. package/dist/observability/index.js +477 -631
  225. package/dist/observability/tool-usage-source.d.ts +65 -0
  226. package/dist/plugin/index.d.ts +5 -0
  227. package/dist/plugin/index.js +600 -14835
  228. package/dist/plugins/auto-review-plugin.d.ts +3 -2
  229. package/dist/plugins/review-finding-commands.d.ts +0 -8
  230. package/dist/plugins/review-finding-store.js +22 -0
  231. package/dist/plugins/review-finding-types.js +19 -0
  232. package/dist/plugins/review-report-integration.js +21 -0
  233. package/dist/plugins/review-report-store.js +20 -0
  234. package/dist/plugins/review-report-types.js +13 -0
  235. package/dist/prompts/index.js +14 -948
  236. package/dist/registry/index.js +9 -822
  237. package/dist/registry/tool-registry.d.ts +59 -9
  238. package/dist/registry-7N4O3E7W.js +14 -0
  239. package/dist/replay/index.js +6 -84
  240. package/dist/security/capabilities.d.ts +6 -0
  241. package/dist/security/file-permissions.d.ts +1 -1
  242. package/dist/security/index.js +161 -2235
  243. package/dist/security/permission-policy.d.ts +12 -1
  244. package/dist/security/secret-scrubber.d.ts +15 -0
  245. package/dist/session-catalog/index.d.ts +1 -0
  246. package/dist/session-catalog/index.js +41 -2103
  247. package/dist/session-catalog/project-server.js +59 -1435
  248. package/dist/session-catalog/protocol.d.ts +32 -1
  249. package/dist/session-catalog/registry.d.ts +17 -1
  250. package/dist/session-catalog/session-agents.d.ts +56 -0
  251. package/dist/session-catalog/store-rebuild.d.ts +14 -0
  252. package/dist/session-catalog/store-schema.d.ts +26 -0
  253. package/dist/session-catalog/store.d.ts +27 -1
  254. package/dist/session-note-attach.d.ts +9 -0
  255. package/dist/skills/index.js +35 -1578
  256. package/dist/statusline/index.d.ts +43 -0
  257. package/dist/statusline/index.js +102 -0
  258. package/dist/storage/board-store-port.d.ts +2 -2
  259. package/dist/storage/config-loader/in-project-policy.d.ts +29 -0
  260. package/dist/storage/config-loader.d.ts +3 -2
  261. package/dist/storage/file-session-writer.d.ts +4 -2
  262. package/dist/storage/goal-coordination.d.ts +6 -1
  263. package/dist/storage/goal-kanban.d.ts +4 -1
  264. package/dist/storage/index.d.ts +12 -4
  265. package/dist/storage/index.js +198 -15601
  266. package/dist/storage/input-history-store.d.ts +2 -4
  267. package/dist/storage/memory-curator.d.ts +133 -0
  268. package/dist/storage/session-agent-attribution.d.ts +39 -0
  269. package/dist/storage/session-doctor.d.ts +109 -0
  270. package/dist/storage/session-event-bridge.d.ts +5 -7
  271. package/dist/storage/session-outcome.d.ts +42 -0
  272. package/dist/storage/session-recovery.d.ts +55 -0
  273. package/dist/storage/session-store/load-session-data.d.ts +11 -0
  274. package/dist/storage/session-store/prune-helpers.d.ts +1 -1
  275. package/dist/storage/session-store/resume-session.d.ts +0 -2
  276. package/dist/storage/session-store/types.d.ts +8 -0
  277. package/dist/storage/session-store.d.ts +3 -3
  278. package/dist/storage/session-summary-tracker.d.ts +8 -1
  279. package/dist/storage/session-write-buffer.d.ts +18 -0
  280. package/dist/storage/session-writer-truncate.d.ts +2 -0
  281. package/dist/tasking/index.js +10 -676
  282. package/dist/tools/fallback-manage-tools.d.ts +6 -4
  283. package/dist/tools/index.js +52 -9590
  284. package/dist/tools/model-tier-set-tool.d.ts +66 -0
  285. package/dist/types/agent-bridge.d.ts +2 -1
  286. package/dist/types/config/autonomy.d.ts +5 -0
  287. package/dist/types/config/mcp-features.d.ts +7 -0
  288. package/dist/types/config/model-tiers.d.ts +148 -0
  289. package/dist/types/config/root.d.ts +9 -0
  290. package/dist/types/config/tools.d.ts +73 -0
  291. package/dist/types/config/ui.d.ts +1 -1
  292. package/dist/types/config.d.ts +1 -0
  293. package/dist/types/context.d.ts +2 -0
  294. package/dist/types/default-config.d.ts +6 -0
  295. package/dist/types/errors.d.ts +20 -1
  296. package/dist/types/index.d.ts +11 -9
  297. package/dist/types/index.js +131 -1342
  298. package/dist/types/multi-agent.d.ts +43 -0
  299. package/dist/types/plugin.d.ts +1 -1
  300. package/dist/types/provider-runner.d.ts +8 -0
  301. package/dist/types/provider.d.ts +15 -0
  302. package/dist/types/runtime-capability-manifest.d.ts +1 -1
  303. package/dist/types/secret-scrubber.d.ts +15 -0
  304. package/dist/types/session-markers.d.ts +37 -10
  305. package/dist/types/session-markers.js +8 -144
  306. package/dist/types/session-timeline.d.ts +197 -0
  307. package/dist/types/session-timeline.js +12 -0
  308. package/dist/types/session.d.ts +172 -11
  309. package/dist/types/system-prompt.d.ts +27 -0
  310. package/dist/utils/config-backup.d.ts +9 -1
  311. package/dist/utils/error.js +3 -4
  312. package/dist/utils/expect-defined.js +3 -9
  313. package/dist/utils/heap-watchdog.js +6 -706
  314. package/dist/utils/index.js +271 -5685
  315. package/dist/utils/message-invariants.d.ts +4 -1
  316. package/dist/utils/regex-guard.d.ts +1 -1
  317. package/dist/utils/sage-output-block.js +5 -42
  318. package/dist/utils/socket-path.d.ts +1 -1
  319. package/dist/utils/token-estimate.d.ts +6 -2
  320. package/dist/utils/wstack-paths.d.ts +2 -0
  321. package/dist/wiring/proxy-rewrite.d.ts +46 -0
  322. package/dist/wiring/proxy-rewrite.js +24 -121
  323. package/dist/worktree/index.js +6 -887
  324. package/instructions/agents/explore-companion.md +45 -18
  325. package/instructions/agents/memory-curator.md +34 -22
  326. package/instructions/coordination/director-preamble.md +12 -7
  327. package/instructions/coordination/subagent-baseline.md +26 -5
  328. package/instructions/leader-after-task.md +4 -1
  329. package/instructions/llm/chimera-review.md +30 -9
  330. package/instructions/llm/memory-curator.md +31 -0
  331. package/instructions/sections/tool/delegation-compact.md +2 -0
  332. package/instructions/sections/tool/delegation-full.md +5 -1
  333. package/instructions/sections/tool/mailbox-compact.md +5 -1
  334. package/instructions/sections/tool/mailbox-full.md +3 -0
  335. package/instructions/sections/tool/session-note-compact.md +3 -0
  336. package/instructions/sections/tool/session-note-full.md +15 -0
  337. package/instructions/system-lite.md +9 -4
  338. package/instructions/system-pro.md +66 -143
  339. package/instructions/system.md +73 -175
  340. package/package.json +32 -4
  341. package/dist/coordination/agents.d.ts +0 -8
  342. package/dist/coordination/transport.d.ts +0 -2
  343. package/dist/storage/session-writer/session-writer-summary-tracker.d.ts +0 -28
@@ -0,0 +1,43 @@
1
+ /**
2
+ * Framework-free statusline chip contract.
3
+ *
4
+ * Single source of truth shared by the CLI persistence layer
5
+ * (`packages/cli/src/services/statusline-config.ts`, which writes the
6
+ * per-profile `statusline.json`) and the TUI renderer
7
+ * (`packages/tui/src/components/statusline-picker.tsx` +
8
+ * `status-line-registry.tsx`). Must stay free of React/Ink/Node imports so
9
+ * both packages can depend on it.
10
+ */
11
+ /** All possible statusline chip keys (canonical set).
12
+ *
13
+ * Stale keys still present in a saved `statusline.json` (including
14
+ * long-removed phantoms like 'cpu', 'memory', 'time', 'sage') are silently
15
+ * ignored by downstream consumers; the canonical key set is exactly the
16
+ * union below. */
17
+ export type StatuslineItem = 'state' | 'model' | 'tokens' | 'cache' | 'queue' | 'hint' | 'index' | 'breaker' | 'todos' | 'plan' | 'tasks' | 'fleet' | 'fleet_agents' | 'git' | 'elapsed' | 'context' | 'cost' | 'processes' | 'working_dir' | 'project' | 'yolo' | 'autonomy' | 'eternal_stage' | 'goal' | 'mode' | 'auto_proceed' | 'sessions' | 'tools' | 'theme' | 'token_saving' | 'brain' | 'mailbox' | 'enhance' | 'debug_stream' | 'next_steps' | 'memory_context' | 'side_effects' | 'version' | 'dropped_tools' | 'prompt_variant';
18
+ /** Physical status bar line a chip renders on (1-based, detailed mode). */
19
+ export type StatuslineLine = 1 | 2 | 3 | 4;
20
+ /**
21
+ * Sparse per-chip line overrides (chip key → assigned line). Absent keys
22
+ * fall back to `DEFAULT_LINES`. Values outside 1–4 are invalid and must be
23
+ * clamped/dropped by the persistence layer before reaching the renderer.
24
+ */
25
+ export type StatuslineLines = Partial<Record<StatuslineItem, StatuslineLine>>;
26
+ /**
27
+ * Ordered list of statusline items — grouped by display line, then in
28
+ * RENDER order within each line so consumers iterate the statusline
29
+ * top-to-bottom, left-to-right. Within a line this order is also the
30
+ * overflow drop order (later entries drop first).
31
+ */
32
+ export declare const STATUSLINE_ITEMS: StatuslineItem[];
33
+ /**
34
+ * Default status bar line per chip. MUST mirror the actual rail composition
35
+ * in the TUI's rail builders — `statusline-navigation-order.test.ts` and the
36
+ * `status-bar-rail-order` suite pin the rendered order, and the CLI's
37
+ * `STATUSLINE_CONFIG_KEYS` must stay set-equal with `STATUSLINE_ITEMS`
38
+ * (drift-guarded in `packages/cli/tests`).
39
+ */
40
+ export declare const DEFAULT_LINES: Record<StatuslineItem, StatuslineLine>;
41
+ /** Total number of statusline chips in the contract. */
42
+ export declare const STATUSLINE_FIELD_COUNT: number;
43
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,102 @@
1
+ // src/statusline/index.ts
2
+ var STATUSLINE_ITEMS = [
3
+ // Line 1 — workspace & identity
4
+ "project",
5
+ "working_dir",
6
+ "git",
7
+ "model",
8
+ "mode",
9
+ "prompt_variant",
10
+ "theme",
11
+ "sessions",
12
+ "tools",
13
+ "version",
14
+ // Line 2 — run state, safety & vitals
15
+ "state",
16
+ "yolo",
17
+ "autonomy",
18
+ "eternal_stage",
19
+ "breaker",
20
+ "context",
21
+ "tokens",
22
+ "cost",
23
+ "cache",
24
+ "queue",
25
+ "processes",
26
+ "elapsed",
27
+ "token_saving",
28
+ "side_effects",
29
+ "hint",
30
+ // Line 3 — active work & countdowns
31
+ "goal",
32
+ "todos",
33
+ "plan",
34
+ "tasks",
35
+ "next_steps",
36
+ "auto_proceed",
37
+ "enhance",
38
+ "dropped_tools",
39
+ // Line 4 — fleet, connectivity & background services
40
+ "fleet",
41
+ "fleet_agents",
42
+ "mailbox",
43
+ "brain",
44
+ "debug_stream",
45
+ "memory_context",
46
+ "index"
47
+ ];
48
+ var DEFAULT_LINES = {
49
+ // Line 1 — workspace & identity: static session header (rarely changes).
50
+ // theme/sessions/tools are the tail so overflow drops them first.
51
+ project: 1,
52
+ working_dir: 1,
53
+ git: 1,
54
+ model: 1,
55
+ mode: 1,
56
+ prompt_variant: 1,
57
+ theme: 1,
58
+ sessions: 1,
59
+ tools: 1,
60
+ version: 1,
61
+ // Line 2 — run state, safety & vitals: breaker leads the dynamic block
62
+ // (urgency), hint is last (ephemeral, first dropped on overflow).
63
+ state: 2,
64
+ yolo: 2,
65
+ autonomy: 2,
66
+ eternal_stage: 2,
67
+ breaker: 2,
68
+ context: 2,
69
+ tokens: 2,
70
+ cost: 2,
71
+ cache: 2,
72
+ queue: 2,
73
+ processes: 2,
74
+ elapsed: 2,
75
+ token_saving: 2,
76
+ side_effects: 2,
77
+ hint: 2,
78
+ // Line 3 — active work & countdowns (conditional)
79
+ goal: 3,
80
+ todos: 3,
81
+ plan: 3,
82
+ tasks: 3,
83
+ next_steps: 3,
84
+ auto_proceed: 3,
85
+ enhance: 3,
86
+ dropped_tools: 3,
87
+ // Line 4 — fleet, connectivity & background services (conditional)
88
+ fleet: 4,
89
+ fleet_agents: 4,
90
+ mailbox: 4,
91
+ brain: 4,
92
+ debug_stream: 4,
93
+ memory_context: 4,
94
+ index: 4
95
+ };
96
+ var STATUSLINE_FIELD_COUNT = STATUSLINE_ITEMS.length;
97
+ export {
98
+ DEFAULT_LINES,
99
+ STATUSLINE_FIELD_COUNT,
100
+ STATUSLINE_ITEMS
101
+ };
102
+ //# sourceMappingURL=index.js.map
@@ -22,11 +22,11 @@ export interface BoardStorePort {
22
22
  listBoards(projectRoot: string): Promise<KanbanBoardSummary[]>;
23
23
  getBoard(projectRoot: string, boardId: string): Promise<KanbanBoard | null>;
24
24
  removeBoard(projectRoot: string, boardId: string): Promise<boolean>;
25
- addTask(projectRoot: string, boardId: string, input: CreateKanbanTaskInput, eventContext?: KanbanEventContext): Promise<{
25
+ addTask(projectRoot: string, boardId: string, input: CreateKanbanTaskInput, eventContext: KanbanEventContext): Promise<{
26
26
  board: KanbanBoard;
27
27
  task: KanbanTask;
28
28
  } | null>;
29
- updateTask(projectRoot: string, boardId: string, taskId: string, input: UpdateKanbanTaskInput, eventContext?: KanbanEventContext): Promise<KanbanBoard | null>;
29
+ updateTask(projectRoot: string, boardId: string, taskId: string, input: UpdateKanbanTaskInput, eventContext: KanbanEventContext): Promise<KanbanBoard | null>;
30
30
  }
31
31
  /** Composition-root hook: register the real kanban-backed implementation. */
32
32
  export declare function setBoardStorePort(impl: BoardStorePort): void;
@@ -1,4 +1,33 @@
1
+ import type { Config } from '../../types/config.js';
1
2
  import type { PartialConfig } from './env-overrides.js';
3
+ /**
4
+ * Every top-level `Config` field, as literals. Kept exhaustive by
5
+ * `ConfigFieldRegistryCoverage` below rather than by hand: this registry is
6
+ * what `assertInProjectAllowListComplete` iterates, so a field missing HERE
7
+ * is a field the allow/deny drift guard never looks at. That is not
8
+ * hypothetical — it is exactly how `fallbackMaxLastResortCandidates` slipped
9
+ * past (see its deny entry above), and five more had followed it in
10
+ * (`systemPrompt`, `themePreset`, `modelTiers`, `chronicle`,
11
+ * `fallbackGateSeconds`) before the compile gate was added.
12
+ */
13
+ declare const KNOWN_CONFIG_TOP_LEVEL_KEY_LIST: readonly ['version', 'activeProfile', 'provider', 'model', 'apiKey', 'baseUrl', 'maxConcurrent', 'uiLocale', 'providers', 'models', 'modelMatrix', 'context', 'tools', 'mcpServers', 'fallbackModels', 'fallbackBridge', 'fallbackProfiles', 'fallbackProfile', 'favoriteModels', 'favoriteModelsOnly', 'modelAvailabilitySchedule', 'fallbackAuto', 'fallbackStickiness', 'fallbackMaxLastResortCandidates', 'hooks', 'plugins', 'pluginManager', 'log', 'features', 'Sage', 'skills', 'yolo', 'nextPrediction', 'cwd', 'autonomy', 'hints', 'debugStream', 'configScope', 'indexing', 'circuitBreaker', 'adaptiveConcurrency', 'launch', 'session', 'modelRuntime', 'hq', 'sync', 'cloudSync', 'extensions', 'acp', 'fleet', 'brain', 'git', 'themePreset', 'modelTiers', 'fallbackGateSeconds', 'chronicle', 'systemPrompt'];
14
+ /** Compile-time `never` assertion; the TS error names the offending keys. */
15
+ type AssertNever<T extends never> = T;
16
+ /** `Config` fields the registry above forgot. Must be `never`. */
17
+ type UnregisteredConfigField = Exclude<keyof Config, (typeof KNOWN_CONFIG_TOP_LEVEL_KEY_LIST)[number]>;
18
+ /** Registry entries `Config` no longer has. Must be `never`. */
19
+ type StaleRegistryField = Exclude<(typeof KNOWN_CONFIG_TOP_LEVEL_KEY_LIST)[number], keyof Config>;
20
+ /**
21
+ * The gate that makes `assertInProjectAllowListComplete` trustworthy.
22
+ *
23
+ * That function is a runtime check, and a runtime check cannot see
24
+ * `keyof Config` — it can only iterate the registry it is handed. So the
25
+ * registry itself has to be verified at compile time, or "every Config field
26
+ * is classified" quietly degrades into "every field someone remembered to
27
+ * list is classified".
28
+ */
29
+ export type ConfigFieldRegistryCoverage = AssertNever<UnregisteredConfigField> | AssertNever<StaleRegistryField>;
2
30
  export declare function assertInProjectAllowListComplete(): void;
3
31
  export declare function stripUnsafeInProjectFields(inProject: PartialConfig, sourcePath: string, warn?: (msg: string) => void): PartialConfig;
32
+ export {};
4
33
  //# sourceMappingURL=in-project-policy.d.ts.map
@@ -1,9 +1,10 @@
1
1
  import type { Config, ConfigLoader, SyncConfig } from '../types/config.js';
2
2
  import type { ConfigLoaderOptions } from './config-loader/types.js';
3
- export { type ConfigDefaultRepair, type ConfigDefaultRepairReport, fillMissingDefaults, repairConfigDefaults, } from './config-loader/default-repair.js';
3
+ export { fillMissingDefaults, repairConfigDefaults } from './config-loader/default-repair.js';
4
4
  export { CONFIG_BEHAVIOR_DEFAULTS } from './config-loader/defaults.js';
5
5
  export { assertInProjectAllowListComplete, stripUnsafeInProjectFields, } from './config-loader/in-project-policy.js';
6
- export type { ConfigLoaderOptions, ConfigSource, MemoizedConfigSource, } from './config-loader/types.js';
6
+ export type { ConfigLoaderOptions, ConfigSource } from './config-loader/types.js';
7
+ export type { ConfigDefaultRepair, ConfigDefaultRepairReport } from './config-loader/default-repair.js';
7
8
  export declare class DefaultConfigLoader implements ConfigLoader {
8
9
  private readonly paths;
9
10
  private readonly strict;
@@ -1,7 +1,7 @@
1
1
  import * as fsp from 'node:fs/promises';
2
- import type { EventBus } from './event-bus-port.js';
3
2
  import type { SecretScrubber } from '../types/secret-scrubber.js';
4
3
  import type { FileSnapshot, SessionEvent, SessionMetadata, SessionSummary, SessionWriter } from '../types/session.js';
4
+ import type { EventBus } from './event-bus-port.js';
5
5
  import type { SessionCheckpointCas } from './session-checkpoint-cas.js';
6
6
  /**
7
7
  * Append-mode JSONL session writer with batched writes, write serialization,
@@ -14,7 +14,7 @@ import type { SessionCheckpointCas } from './session-checkpoint-cas.js';
14
14
  export declare class FileSessionWriter implements SessionWriter {
15
15
  readonly id: string;
16
16
  private handle;
17
- private readonly startedAt;
17
+ readonly startedAt: string;
18
18
  private readonly meta;
19
19
  private readonly events?;
20
20
  private closed;
@@ -33,6 +33,7 @@ export declare class FileSessionWriter implements SessionWriter {
33
33
  private initPromise;
34
34
  private ensureInit;
35
35
  private readonly resumed;
36
+ private readonly lifecyclePreambleTs;
36
37
  private readonly secretScrubber?;
37
38
  private readonly checkpointCas?;
38
39
  /** Mutable slot for onAppend callback — constructor opts seed it, setOnAppend replaces it. */
@@ -180,6 +181,7 @@ export declare class FileSessionWriter implements SessionWriter {
180
181
  * of O(N) JSON.parse calls over the full file.
181
182
  */
182
183
  truncateToCheckpoint(targetPromptIndex: number, revertedFiles?: readonly string[]): Promise<number>;
184
+ private deleteRewoundSubagentTranscripts;
183
185
  clearSession(): Promise<void>;
184
186
  /**
185
187
  * Write an in-flight marker. The agent loop should call
@@ -16,7 +16,12 @@ export interface CoordinateGoalIterationOptions {
16
16
  goalPath: string;
17
17
  finalText: string;
18
18
  brain?: BrainArbiter | undefined;
19
- sessionId?: string | undefined;
19
+ /**
20
+ * Session running this autonomy iteration. Required: closing a deliverable
21
+ * writes durable Kanban events, and those are attributed to the session that
22
+ * produced the `[DONE:]` marker.
23
+ */
24
+ sessionId: string;
20
25
  events?: EventBus | undefined;
21
26
  now?: (() => Date) | undefined;
22
27
  }
@@ -23,8 +23,11 @@ import type { GoalFile } from './goal-store.js';
23
23
  * deliverable. The board id is stored on `goalFile.kanbanBoardId`.
24
24
  *
25
25
  * Returns the board id. Returns null when the project root is unavailable.
26
+ *
27
+ * `sessionId` is the session that set the goal: the deliverable tasks it seeds
28
+ * are durable board events, and they belong to that session.
26
29
  */
27
- export declare function createGoalKanbanBoard(projectRoot: string, goalFile: GoalFile): Promise<string | null>;
30
+ export declare function createGoalKanbanBoard(projectRoot: string, goalFile: GoalFile, sessionId: string): Promise<string | null>;
28
31
  /**
29
32
  * Find a kanban board by id. Returns null when the board doesn't exist
30
33
  * (e.g. manually deleted). The caller should handle this gracefully.
@@ -1,13 +1,18 @@
1
- export { type BoardStorePort, boardStore, setBoardStorePort, } from './board-store-port.js';
2
1
  export { type CatalogSessionRecord, type MaintenanceLease, type ResumeReservation, type SessionCatalogHealth, SessionCatalogProjectClient, type SessionCatalogProjectClientOptions, type SessionLeaseCredential, type SessionResumeClaim, } from '../session-catalog/index.js';
3
2
  export { getProjectSessionRegistry as getSessionRegistry, hasProjectSessionRegistry as hasSessionRegistry, ProjectSessionRegistry as SessionRegistry, } from '../session-catalog/registry.js';
3
+ export { deriveSessionAgents, type SessionAgentRecord, type SessionAgentStatus, } from '../session-catalog/session-agents.js';
4
4
  export type { AgentEntry, AgentLiveStatus, SessionLiveStatus, SessionRegistryEntry, SessionWebUIEndpointHint, } from '../session-catalog/session-registry.js';
5
- /** @deprecated Test/migration adapter; production ownership uses SessionRegistry above. */
5
+ /**
6
+ * @deprecated Test/migration adapter; production ownership uses SessionRegistry
7
+ * above. Remove once `packages/webui-server/tests/standalone-session-identity.test.ts`
8
+ * migrates to the canonical subpath import (tracked for the 0.320 major).
9
+ */
6
10
  export { SessionRegistry as LegacySessionRegistry } from '../session-catalog/session-registry.js';
7
11
  export type { SyncCategory, SyncConfig } from '../types/config.js';
8
12
  export type { DefaultSessionReaderOptions, SessionReader } from '../types/session-reader.js';
9
13
  export { type Annotation, AnnotationsStore, type AnnotationsStoreOptions, } from './annotations-store.js';
10
14
  export { type AttachmentStoreOptions, DefaultAttachmentStore, } from './attachment-store.js';
15
+ export { type BoardStorePort, boardStore, setBoardStorePort, } from './board-store-port.js';
11
16
  export { applyNamespacePayload, buildNamespacePayloads, CLOUD_SYNC_CONTRACT, CLOUD_SYNC_NAMESPACES, CloudConfigSync, type CloudConfigSyncDeps, type CloudConfigSyncSettings, type CloudSyncPassSummary, LOCAL_ONLY_TOP_LEVEL, NAMESPACE_SCHEMA_VERSIONS, stripSecretMaterial, } from './cloud-config-sync.js';
12
17
  export { ALL_SYNC_CATEGORIES, CloudSync, type SyncResult, } from './cloud-sync.js';
13
18
  export { type CompletedWorkCheckpointFile, loadCompletedWorkCheckpoint, saveCompletedWorkCheckpoint, } from './completed-work-checkpoint.js';
@@ -21,7 +26,9 @@ export { appendJournal, emptyGoal, formatGoal, type GoalFile, goalFilePath, type
21
26
  export { INPUT_HISTORY_DEFAULT_MAX, InputHistoryStore, } from './input-history-store.js';
22
27
  export { FileMemoryBackend, type FileMemoryBackendOptions, type MemoryBackend, parseEntries, } from './memory-backend.js';
23
28
  export { type ConsolidationOp, type ConsolidatorSage, type MemoryConsolidatorOptions, SessionMemoryConsolidator, } from './memory-consolidator.js';
29
+ export { type CuratorOperation, type CuratorSage, type CuratorSageCandidate, type CuratorSageRecord, SessionMemoryCurator, type SessionMemoryCuratorOptions, } from './memory-curator.js';
24
30
  export { GraphMemoryBackend, type GraphMemoryBackendOptions, } from './memory-graph-backend.js';
31
+ export { cleanOrphanLocks, type OrphanLockCleanResult, } from './orphan-lock-cleaner.js';
25
32
  export { addPlanItem, attachPlanCheckpoint, clearPlan, deriveTodosFromPlanItem, emptyPlan, formatPlan, loadPlan, mutatePlan, type PlanFile, type PlanItem, removePlanItem, savePlan, setPlanItemStatus, } from './plan-store.js';
26
33
  export { formatPlanTemplates, getPlanTemplate, listPlanTemplates, type PlanTemplate, } from './plan-templates.js';
27
34
  export { DefaultPromptStore, migratePromptEntry, type PromptEntry, type PromptStore, promptChecksum, } from './prompt-store.js';
@@ -29,16 +36,17 @@ export { type PromptUsage, PromptUsageStore } from './prompt-usage-store.js';
29
36
  export { type ProviderConfigSnapshot, readProviderSnapshot, type WatchProviderConfigOptions, watchProviderConfig, } from './provider-config-watcher.js';
30
37
  export { type PersistedQueueItem, QUEUE_MAX_BYTES, QUEUE_MAX_ITEM_BYTES, QUEUE_MAX_ITEMS, QueueStore, retainPersistedQueueItems, } from './queue-store.js';
31
38
  export { type AbandonedSession, RecoveryLock, type RecoveryLockOptions, } from './recovery-lock.js';
32
- export { cleanOrphanLocks, type OrphanLockCleanResult, } from './orphan-lock-cleaner.js';
33
39
  export { type ReplayEntry, ReplayLogStore, type ReplayLogStoreOptions, } from './replay-log-store.js';
40
+ export { stampAgentId, withAgentAttribution } from './session-agent-attribution.js';
34
41
  export { SessionAnalyzer } from './session-analyzer.js';
35
42
  export { type CheckpointGitResult, SessionCheckpointCas, type SessionCheckpointCasOptions, } from './session-checkpoint-cas.js';
43
+ export { type DiagnoseSessionsOptions, diagnoseSessions, repairSessionSummaries, type SessionDiagnosis, type SessionDoctorReport, type SessionDoctorTotals, type SessionFinding, type SessionFindingCode, type SessionLifecycleBoundary, type SummaryRepairResult, } from './session-doctor.js';
36
44
  export { type AuditLevel, CORE_RECONSTRUCT_EVENTS, createSessionEventBridge, resolveAuditLevel, resolveSessionLoggingConfig, type SessionEventBridge, type SessionEventBridgeOptions, type SessionSamplingOptions, STANDARD_AUDIT_EVENTS, type ToolProgressSamplingOptions, } from './session-event-bridge.js';
37
45
  export { generateSessionId, sanitizeModel } from './session-id.js';
38
46
  export { resolveSessionId, type SessionIdResolution, sessionIdResolutionError, } from './session-id-resolver.js';
39
47
  export { scrubPersistedSessionData, scrubPersistedSessionEvent, scrubPersistedSessionSummary, } from './session-read-scrubber.js';
40
48
  export { DefaultSessionReader } from './session-reader.js';
41
- export { extractInterruptedTools, type InterruptedToolDetail, type RecoveryPlan, SessionRecovery, type StaleSession, } from './session-recovery.js';
49
+ export { extractInterruptedTools, type InterruptedToolDetail, type RecoveryPlan, SessionRecovery, type StaleSession, type UnclosedSession, } from './session-recovery.js';
42
50
  export { type ApplyRewindOptions, type ApplyRewindResult, applyRewindToConversation, type RewindableConversation, } from './session-rewind-apply.js';
43
51
  export { DefaultSessionRewinder, type SessionRewinderOptions, } from './session-rewinder.js';
44
52
  export { DefaultSessionStore, type SessionStoreOptions, } from './session-store.js';