mewkit 1.14.1 → 1.16.0

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 (739) hide show
  1. package/NOTICE +24 -0
  2. package/README.md +36 -70
  3. package/dist/commands/capabilities.d.ts +13 -0
  4. package/dist/commands/capabilities.d.ts.map +1 -0
  5. package/dist/commands/capabilities.js +230 -0
  6. package/dist/commands/capabilities.js.map +1 -0
  7. package/dist/commands/context.d.ts +10 -0
  8. package/dist/commands/context.d.ts.map +1 -0
  9. package/dist/commands/context.js +125 -0
  10. package/dist/commands/context.js.map +1 -0
  11. package/dist/commands/doctor.d.ts +27 -0
  12. package/dist/commands/doctor.d.ts.map +1 -1
  13. package/dist/commands/doctor.js +123 -0
  14. package/dist/commands/doctor.js.map +1 -1
  15. package/dist/commands/providers.d.ts +2 -0
  16. package/dist/commands/providers.d.ts.map +1 -1
  17. package/dist/commands/providers.js +77 -0
  18. package/dist/commands/providers.js.map +1 -1
  19. package/dist/commands/task-state.d.ts +13 -0
  20. package/dist/commands/task-state.d.ts.map +1 -0
  21. package/dist/commands/task-state.js +106 -0
  22. package/dist/commands/task-state.js.map +1 -0
  23. package/dist/commands/validate.d.ts +48 -1
  24. package/dist/commands/validate.d.ts.map +1 -1
  25. package/dist/commands/validate.js +97 -24
  26. package/dist/commands/validate.js.map +1 -1
  27. package/dist/commands/visual-plan.d.ts +23 -0
  28. package/dist/commands/visual-plan.d.ts.map +1 -0
  29. package/dist/commands/visual-plan.js +26 -0
  30. package/dist/commands/visual-plan.js.map +1 -0
  31. package/dist/core/availability.d.ts +40 -0
  32. package/dist/core/availability.d.ts.map +1 -0
  33. package/dist/core/availability.js +47 -0
  34. package/dist/core/availability.js.map +1 -0
  35. package/dist/core/bootstrap.d.ts +19 -0
  36. package/dist/core/bootstrap.d.ts.map +1 -0
  37. package/dist/core/bootstrap.js +42 -0
  38. package/dist/core/bootstrap.js.map +1 -0
  39. package/dist/core/build-capabilities.d.ts +9 -0
  40. package/dist/core/build-capabilities.d.ts.map +1 -0
  41. package/dist/core/build-capabilities.js +123 -0
  42. package/dist/core/build-capabilities.js.map +1 -0
  43. package/dist/core/build-inventory.d.ts +2 -0
  44. package/dist/core/build-inventory.d.ts.map +1 -1
  45. package/dist/core/build-inventory.js +1 -1
  46. package/dist/core/build-inventory.js.map +1 -1
  47. package/dist/core/capability-authored.d.ts +26 -0
  48. package/dist/core/capability-authored.d.ts.map +1 -0
  49. package/dist/core/capability-authored.js +117 -0
  50. package/dist/core/capability-authored.js.map +1 -0
  51. package/dist/core/capability-snapshot.d.ts +13 -0
  52. package/dist/core/capability-snapshot.d.ts.map +1 -0
  53. package/dist/core/capability-snapshot.js +53 -0
  54. package/dist/core/capability-snapshot.js.map +1 -0
  55. package/dist/core/capability.d.ts +519 -0
  56. package/dist/core/capability.d.ts.map +1 -0
  57. package/dist/core/capability.js +114 -0
  58. package/dist/core/capability.js.map +1 -0
  59. package/dist/core/compute-checksums.d.ts.map +1 -1
  60. package/dist/core/compute-checksums.js +8 -2
  61. package/dist/core/compute-checksums.js.map +1 -1
  62. package/dist/core/consolidation-ledger.d.ts +30 -0
  63. package/dist/core/consolidation-ledger.d.ts.map +1 -0
  64. package/dist/core/consolidation-ledger.js +147 -0
  65. package/dist/core/consolidation-ledger.js.map +1 -0
  66. package/dist/core/generate-capability-view.d.ts +21 -0
  67. package/dist/core/generate-capability-view.d.ts.map +1 -0
  68. package/dist/core/generate-capability-view.js +48 -0
  69. package/dist/core/generate-capability-view.js.map +1 -0
  70. package/dist/core/install-metadata.d.ts +20 -3
  71. package/dist/core/install-metadata.d.ts.map +1 -1
  72. package/dist/core/install-metadata.js +49 -9
  73. package/dist/core/install-metadata.js.map +1 -1
  74. package/dist/core/provider-adapter.d.ts +28 -0
  75. package/dist/core/provider-adapter.d.ts.map +1 -0
  76. package/dist/core/provider-adapter.js +31 -0
  77. package/dist/core/provider-adapter.js.map +1 -0
  78. package/dist/core/provider-invocation.d.ts +14 -0
  79. package/dist/core/provider-invocation.d.ts.map +1 -0
  80. package/dist/core/provider-invocation.js +56 -0
  81. package/dist/core/provider-invocation.js.map +1 -0
  82. package/dist/core/provider-lifecycle.d.ts +35 -0
  83. package/dist/core/provider-lifecycle.d.ts.map +1 -0
  84. package/dist/core/provider-lifecycle.js +101 -0
  85. package/dist/core/provider-lifecycle.js.map +1 -0
  86. package/dist/core/provider-projection.d.ts +29 -0
  87. package/dist/core/provider-projection.d.ts.map +1 -0
  88. package/dist/core/provider-projection.js +47 -0
  89. package/dist/core/provider-projection.js.map +1 -0
  90. package/dist/core/release-metadata.d.ts +7 -0
  91. package/dist/core/release-metadata.d.ts.map +1 -1
  92. package/dist/core/release-metadata.js +13 -0
  93. package/dist/core/release-metadata.js.map +1 -1
  94. package/dist/core/repo-context-adapter.d.ts +23 -0
  95. package/dist/core/repo-context-adapter.d.ts.map +1 -0
  96. package/dist/core/repo-context-adapter.js +44 -0
  97. package/dist/core/repo-context-adapter.js.map +1 -0
  98. package/dist/core/repo-context.d.ts +147 -0
  99. package/dist/core/repo-context.d.ts.map +1 -0
  100. package/dist/core/repo-context.js +204 -0
  101. package/dist/core/repo-context.js.map +1 -0
  102. package/dist/core/resolve-capabilities.d.ts +70 -0
  103. package/dist/core/resolve-capabilities.d.ts.map +1 -0
  104. package/dist/core/resolve-capabilities.js +124 -0
  105. package/dist/core/resolve-capabilities.js.map +1 -0
  106. package/dist/core/smart-update.d.ts.map +1 -1
  107. package/dist/core/smart-update.js +13 -12
  108. package/dist/core/smart-update.js.map +1 -1
  109. package/dist/core/task-record.d.ts +252 -0
  110. package/dist/core/task-record.d.ts.map +1 -0
  111. package/dist/core/task-record.js +252 -0
  112. package/dist/core/task-record.js.map +1 -0
  113. package/dist/core/validate-capabilities.d.ts +12 -0
  114. package/dist/core/validate-capabilities.d.ts.map +1 -0
  115. package/dist/core/validate-capabilities.js +138 -0
  116. package/dist/core/validate-capabilities.js.map +1 -0
  117. package/dist/index.js +99 -25
  118. package/dist/index.js.map +1 -1
  119. package/dist/local-web/atomic-write.d.ts +15 -0
  120. package/dist/local-web/atomic-write.d.ts.map +1 -0
  121. package/dist/local-web/atomic-write.js +69 -0
  122. package/dist/local-web/atomic-write.js.map +1 -0
  123. package/dist/local-web/constants.d.ts +13 -0
  124. package/dist/local-web/constants.d.ts.map +1 -0
  125. package/dist/local-web/constants.js +13 -0
  126. package/dist/local-web/constants.js.map +1 -0
  127. package/dist/local-web/etag.d.ts +19 -0
  128. package/dist/local-web/etag.d.ts.map +1 -0
  129. package/dist/local-web/etag.js +32 -0
  130. package/dist/local-web/etag.js.map +1 -0
  131. package/dist/local-web/host-guard.d.ts +12 -0
  132. package/dist/local-web/host-guard.d.ts.map +1 -0
  133. package/dist/local-web/host-guard.js +18 -0
  134. package/dist/local-web/host-guard.js.map +1 -0
  135. package/dist/local-web/index.d.ts +23 -0
  136. package/dist/local-web/index.d.ts.map +1 -0
  137. package/dist/local-web/index.js +23 -0
  138. package/dist/local-web/index.js.map +1 -0
  139. package/dist/local-web/local-server.d.ts +37 -0
  140. package/dist/local-web/local-server.d.ts.map +1 -0
  141. package/dist/local-web/local-server.js +85 -0
  142. package/dist/local-web/local-server.js.map +1 -0
  143. package/dist/local-web/open-browser.d.ts +12 -0
  144. package/dist/local-web/open-browser.d.ts.map +1 -0
  145. package/dist/{orchviz/open-url.js → local-web/open-browser.js} +9 -8
  146. package/dist/local-web/open-browser.js.map +1 -0
  147. package/dist/local-web/origin-guard.d.ts +11 -0
  148. package/dist/local-web/origin-guard.d.ts.map +1 -0
  149. package/dist/local-web/origin-guard.js +15 -0
  150. package/dist/local-web/origin-guard.js.map +1 -0
  151. package/dist/local-web/path-boundary.d.ts +20 -0
  152. package/dist/local-web/path-boundary.d.ts.map +1 -0
  153. package/dist/local-web/path-boundary.js +39 -0
  154. package/dist/local-web/path-boundary.js.map +1 -0
  155. package/dist/local-web/request-body.d.ts +24 -0
  156. package/dist/local-web/request-body.d.ts.map +1 -0
  157. package/dist/local-web/request-body.js +68 -0
  158. package/dist/local-web/request-body.js.map +1 -0
  159. package/dist/local-web/static-handler.d.ts +14 -0
  160. package/dist/local-web/static-handler.d.ts.map +1 -0
  161. package/dist/{orchviz/server → local-web}/static-handler.js +11 -6
  162. package/dist/local-web/static-handler.js.map +1 -0
  163. package/dist/migrate/capability-bootstrap-projection.d.ts +11 -0
  164. package/dist/migrate/capability-bootstrap-projection.d.ts.map +1 -0
  165. package/dist/migrate/capability-bootstrap-projection.js +48 -0
  166. package/dist/migrate/capability-bootstrap-projection.js.map +1 -0
  167. package/dist/migrate/migrate-orchestrator.d.ts.map +1 -1
  168. package/dist/migrate/migrate-orchestrator.js +22 -0
  169. package/dist/migrate/migrate-orchestrator.js.map +1 -1
  170. package/dist/migrate/reconcile/portable-manifest.d.ts +12 -12
  171. package/dist/migrate/reconcile/portable-registry.d.ts +30 -30
  172. package/dist/migrate/types.d.ts +10 -10
  173. package/dist/{orchviz/token-estimator.d.ts → token-estimator/index.d.ts} +6 -1
  174. package/dist/token-estimator/index.d.ts.map +1 -0
  175. package/dist/{orchviz/token-estimator.js → token-estimator/index.js} +11 -2
  176. package/dist/token-estimator/index.js.map +1 -0
  177. package/dist/visual-plan/__fixtures__/valid-plan.d.ts +15 -0
  178. package/dist/visual-plan/__fixtures__/valid-plan.d.ts.map +1 -0
  179. package/dist/visual-plan/__fixtures__/valid-plan.js +79 -0
  180. package/dist/visual-plan/__fixtures__/valid-plan.js.map +1 -0
  181. package/dist/visual-plan/application/apply-feedback.d.ts +31 -0
  182. package/dist/visual-plan/application/apply-feedback.d.ts.map +1 -0
  183. package/dist/visual-plan/application/apply-feedback.js +85 -0
  184. package/dist/visual-plan/application/apply-feedback.js.map +1 -0
  185. package/dist/visual-plan/application/apply-patch-op.d.ts +13 -0
  186. package/dist/visual-plan/application/apply-patch-op.d.ts.map +1 -0
  187. package/dist/visual-plan/application/apply-patch-op.js +72 -0
  188. package/dist/visual-plan/application/apply-patch-op.js.map +1 -0
  189. package/dist/visual-plan/application/approve.d.ts +24 -0
  190. package/dist/visual-plan/application/approve.d.ts.map +1 -0
  191. package/dist/visual-plan/application/approve.js +53 -0
  192. package/dist/visual-plan/application/approve.js.map +1 -0
  193. package/dist/visual-plan/application/clock.d.ts +8 -0
  194. package/dist/visual-plan/application/clock.d.ts.map +1 -0
  195. package/dist/visual-plan/application/clock.js +10 -0
  196. package/dist/visual-plan/application/clock.js.map +1 -0
  197. package/dist/visual-plan/application/export-plan.d.ts +19 -0
  198. package/dist/visual-plan/application/export-plan.d.ts.map +1 -0
  199. package/dist/visual-plan/application/export-plan.js +59 -0
  200. package/dist/visual-plan/application/export-plan.js.map +1 -0
  201. package/dist/visual-plan/application/patch-plan.d.ts +26 -0
  202. package/dist/visual-plan/application/patch-plan.d.ts.map +1 -0
  203. package/dist/visual-plan/application/patch-plan.js +48 -0
  204. package/dist/visual-plan/application/patch-plan.js.map +1 -0
  205. package/dist/visual-plan/application/prepare-feedback.d.ts +24 -0
  206. package/dist/visual-plan/application/prepare-feedback.d.ts.map +1 -0
  207. package/dist/visual-plan/application/prepare-feedback.js +70 -0
  208. package/dist/visual-plan/application/prepare-feedback.js.map +1 -0
  209. package/dist/visual-plan/application/rehash.d.ts +19 -0
  210. package/dist/visual-plan/application/rehash.d.ts.map +1 -0
  211. package/dist/visual-plan/application/rehash.js +43 -0
  212. package/dist/visual-plan/application/rehash.js.map +1 -0
  213. package/dist/visual-plan/application/status.d.ts +20 -0
  214. package/dist/visual-plan/application/status.d.ts.map +1 -0
  215. package/dist/visual-plan/application/status.js +27 -0
  216. package/dist/visual-plan/application/status.js.map +1 -0
  217. package/dist/visual-plan/application/validate-plan.d.ts +30 -0
  218. package/dist/visual-plan/application/validate-plan.d.ts.map +1 -0
  219. package/dist/visual-plan/application/validate-plan.js +59 -0
  220. package/dist/visual-plan/application/validate-plan.js.map +1 -0
  221. package/dist/visual-plan/domain/coverage.d.ts +35 -0
  222. package/dist/visual-plan/domain/coverage.d.ts.map +1 -0
  223. package/dist/visual-plan/domain/coverage.js +99 -0
  224. package/dist/visual-plan/domain/coverage.js.map +1 -0
  225. package/dist/visual-plan/domain/cross-refs.d.ts +20 -0
  226. package/dist/visual-plan/domain/cross-refs.d.ts.map +1 -0
  227. package/dist/visual-plan/domain/cross-refs.js +92 -0
  228. package/dist/visual-plan/domain/cross-refs.js.map +1 -0
  229. package/dist/visual-plan/domain/errors.d.ts +43 -0
  230. package/dist/visual-plan/domain/errors.d.ts.map +1 -0
  231. package/dist/visual-plan/domain/errors.js +33 -0
  232. package/dist/visual-plan/domain/errors.js.map +1 -0
  233. package/dist/visual-plan/domain/feedback-schemas.d.ts +160 -0
  234. package/dist/visual-plan/domain/feedback-schemas.d.ts.map +1 -0
  235. package/dist/visual-plan/domain/feedback-schemas.js +71 -0
  236. package/dist/visual-plan/domain/feedback-schemas.js.map +1 -0
  237. package/dist/visual-plan/domain/ids.d.ts +21 -0
  238. package/dist/visual-plan/domain/ids.d.ts.map +1 -0
  239. package/dist/visual-plan/domain/ids.js +25 -0
  240. package/dist/visual-plan/domain/ids.js.map +1 -0
  241. package/dist/visual-plan/domain/patches.d.ts +176 -0
  242. package/dist/visual-plan/domain/patches.d.ts.map +1 -0
  243. package/dist/visual-plan/domain/patches.js +41 -0
  244. package/dist/visual-plan/domain/patches.js.map +1 -0
  245. package/dist/visual-plan/domain/sanitizer-config.d.ts +61 -0
  246. package/dist/visual-plan/domain/sanitizer-config.d.ts.map +1 -0
  247. package/dist/visual-plan/domain/sanitizer-config.js +70 -0
  248. package/dist/visual-plan/domain/sanitizer-config.js.map +1 -0
  249. package/dist/visual-plan/domain/schemas.d.ts +1492 -0
  250. package/dist/visual-plan/domain/schemas.d.ts.map +1 -0
  251. package/dist/visual-plan/domain/schemas.js +166 -0
  252. package/dist/visual-plan/domain/schemas.js.map +1 -0
  253. package/dist/visual-plan/infrastructure/atomic-write.d.ts +11 -0
  254. package/dist/visual-plan/infrastructure/atomic-write.d.ts.map +1 -0
  255. package/dist/visual-plan/infrastructure/atomic-write.js +44 -0
  256. package/dist/visual-plan/infrastructure/atomic-write.js.map +1 -0
  257. package/dist/visual-plan/infrastructure/feedback-repository.d.ts +18 -0
  258. package/dist/visual-plan/infrastructure/feedback-repository.d.ts.map +1 -0
  259. package/dist/visual-plan/infrastructure/feedback-repository.js +59 -0
  260. package/dist/visual-plan/infrastructure/feedback-repository.js.map +1 -0
  261. package/dist/visual-plan/infrastructure/hashing.d.ts +37 -0
  262. package/dist/visual-plan/infrastructure/hashing.d.ts.map +1 -0
  263. package/dist/visual-plan/infrastructure/hashing.js +81 -0
  264. package/dist/visual-plan/infrastructure/hashing.js.map +1 -0
  265. package/dist/visual-plan/infrastructure/plan-state.d.ts +32 -0
  266. package/dist/visual-plan/infrastructure/plan-state.d.ts.map +1 -0
  267. package/dist/visual-plan/infrastructure/plan-state.js +58 -0
  268. package/dist/visual-plan/infrastructure/plan-state.js.map +1 -0
  269. package/dist/visual-plan/infrastructure/receipt-repository.d.ts +17 -0
  270. package/dist/visual-plan/infrastructure/receipt-repository.d.ts.map +1 -0
  271. package/dist/visual-plan/infrastructure/receipt-repository.js +59 -0
  272. package/dist/visual-plan/infrastructure/receipt-repository.js.map +1 -0
  273. package/dist/visual-plan/infrastructure/visual-plan-repository.d.ts +38 -0
  274. package/dist/visual-plan/infrastructure/visual-plan-repository.d.ts.map +1 -0
  275. package/dist/visual-plan/infrastructure/visual-plan-repository.js +97 -0
  276. package/dist/visual-plan/infrastructure/visual-plan-repository.js.map +1 -0
  277. package/dist/visual-plan/infrastructure/wireframe-sanitizer.d.ts +41 -0
  278. package/dist/visual-plan/infrastructure/wireframe-sanitizer.d.ts.map +1 -0
  279. package/dist/visual-plan/infrastructure/wireframe-sanitizer.js +72 -0
  280. package/dist/visual-plan/infrastructure/wireframe-sanitizer.js.map +1 -0
  281. package/dist/visual-plan/interface/cli.d.ts +29 -0
  282. package/dist/visual-plan/interface/cli.d.ts.map +1 -0
  283. package/dist/visual-plan/interface/cli.js +280 -0
  284. package/dist/visual-plan/interface/cli.js.map +1 -0
  285. package/dist/visual-plan/interface/studio.d.ts +20 -0
  286. package/dist/visual-plan/interface/studio.d.ts.map +1 -0
  287. package/dist/visual-plan/interface/studio.js +74 -0
  288. package/dist/visual-plan/interface/studio.js.map +1 -0
  289. package/dist/visual-plan/server/csp.d.ts +13 -0
  290. package/dist/visual-plan/server/csp.d.ts.map +1 -0
  291. package/dist/visual-plan/server/csp.js +17 -0
  292. package/dist/visual-plan/server/csp.js.map +1 -0
  293. package/dist/visual-plan/server/edit-lock.d.ts +28 -0
  294. package/dist/visual-plan/server/edit-lock.d.ts.map +1 -0
  295. package/dist/visual-plan/server/edit-lock.js +71 -0
  296. package/dist/visual-plan/server/edit-lock.js.map +1 -0
  297. package/dist/visual-plan/server/routes/feedback.d.ts +12 -0
  298. package/dist/visual-plan/server/routes/feedback.d.ts.map +1 -0
  299. package/dist/visual-plan/server/routes/feedback.js +63 -0
  300. package/dist/visual-plan/server/routes/feedback.js.map +1 -0
  301. package/dist/visual-plan/server/routes/get-plan.d.ts +14 -0
  302. package/dist/visual-plan/server/routes/get-plan.d.ts.map +1 -0
  303. package/dist/visual-plan/server/routes/get-plan.js +38 -0
  304. package/dist/visual-plan/server/routes/get-plan.js.map +1 -0
  305. package/dist/visual-plan/server/routes/patch.d.ts +10 -0
  306. package/dist/visual-plan/server/routes/patch.d.ts.map +1 -0
  307. package/dist/visual-plan/server/routes/patch.js +66 -0
  308. package/dist/visual-plan/server/routes/patch.js.map +1 -0
  309. package/dist/visual-plan/server/visual-plan-server.d.ts +30 -0
  310. package/dist/visual-plan/server/visual-plan-server.d.ts.map +1 -0
  311. package/dist/visual-plan/server/visual-plan-server.js +79 -0
  312. package/dist/visual-plan/server/visual-plan-server.js.map +1 -0
  313. package/dist/visual-plan-web/architects-daughter-latin-400-normal.woff +0 -0
  314. package/dist/visual-plan-web/architects-daughter-latin-400-normal.woff2 +0 -0
  315. package/dist/visual-plan-web/architects-daughter-latin-ext-400-normal.woff +0 -0
  316. package/dist/visual-plan-web/architects-daughter-latin-ext-400-normal.woff2 +0 -0
  317. package/dist/visual-plan-web/index.css +1 -0
  318. package/dist/visual-plan-web/index.html +17 -0
  319. package/dist/visual-plan-web/index.js +51 -0
  320. package/package.json +14 -17
  321. package/dist/commands/evolve.d.ts +0 -11
  322. package/dist/commands/evolve.d.ts.map +0 -1
  323. package/dist/commands/evolve.js +0 -63
  324. package/dist/commands/evolve.js.map +0 -1
  325. package/dist/commands/health.d.ts +0 -14
  326. package/dist/commands/health.d.ts.map +0 -1
  327. package/dist/commands/health.js +0 -193
  328. package/dist/commands/health.js.map +0 -1
  329. package/dist/commands/orchviz.d.ts +0 -12
  330. package/dist/commands/orchviz.d.ts.map +0 -1
  331. package/dist/commands/orchviz.js +0 -157
  332. package/dist/commands/orchviz.js.map +0 -1
  333. package/dist/commands/policy.d.ts +0 -8
  334. package/dist/commands/policy.d.ts.map +0 -1
  335. package/dist/commands/policy.js +0 -65
  336. package/dist/commands/policy.js.map +0 -1
  337. package/dist/commands/portability.d.ts +0 -7
  338. package/dist/commands/portability.d.ts.map +0 -1
  339. package/dist/commands/portability.js +0 -50
  340. package/dist/commands/portability.js.map +0 -1
  341. package/dist/commands/reflect.d.ts +0 -14
  342. package/dist/commands/reflect.d.ts.map +0 -1
  343. package/dist/commands/reflect.js +0 -135
  344. package/dist/commands/reflect.js.map +0 -1
  345. package/dist/commands/simulate.d.ts +0 -14
  346. package/dist/commands/simulate.d.ts.map +0 -1
  347. package/dist/commands/simulate.js +0 -86
  348. package/dist/commands/simulate.js.map +0 -1
  349. package/dist/core/event-log.d.ts +0 -44
  350. package/dist/core/event-log.d.ts.map +0 -1
  351. package/dist/core/event-log.js +0 -169
  352. package/dist/core/event-log.js.map +0 -1
  353. package/dist/core/evolution/event-clusters.d.ts +0 -4
  354. package/dist/core/evolution/event-clusters.d.ts.map +0 -1
  355. package/dist/core/evolution/event-clusters.js +0 -82
  356. package/dist/core/evolution/event-clusters.js.map +0 -1
  357. package/dist/core/evolution/recommendation-renderer.d.ts +0 -3
  358. package/dist/core/evolution/recommendation-renderer.d.ts.map +0 -1
  359. package/dist/core/evolution/recommendation-renderer.js +0 -24
  360. package/dist/core/evolution/recommendation-renderer.js.map +0 -1
  361. package/dist/core/evolution/review-failure-clusters.d.ts +0 -10
  362. package/dist/core/evolution/review-failure-clusters.d.ts.map +0 -1
  363. package/dist/core/evolution/review-failure-clusters.js +0 -30
  364. package/dist/core/evolution/review-failure-clusters.js.map +0 -1
  365. package/dist/core/evolution/suggestions.d.ts +0 -24
  366. package/dist/core/evolution/suggestions.d.ts.map +0 -1
  367. package/dist/core/evolution/suggestions.js +0 -11
  368. package/dist/core/evolution/suggestions.js.map +0 -1
  369. package/dist/core/gate-policy.d.ts +0 -20
  370. package/dist/core/gate-policy.d.ts.map +0 -1
  371. package/dist/core/gate-policy.js +0 -64
  372. package/dist/core/gate-policy.js.map +0 -1
  373. package/dist/core/portability-matrix.d.ts +0 -17
  374. package/dist/core/portability-matrix.d.ts.map +0 -1
  375. package/dist/core/portability-matrix.js +0 -31
  376. package/dist/core/portability-matrix.js.map +0 -1
  377. package/dist/core/simulation-runner.d.ts +0 -93
  378. package/dist/core/simulation-runner.d.ts.map +0 -1
  379. package/dist/core/simulation-runner.js +0 -161
  380. package/dist/core/simulation-runner.js.map +0 -1
  381. package/dist/core/usage/usage-analyzer.d.ts +0 -18
  382. package/dist/core/usage/usage-analyzer.d.ts.map +0 -1
  383. package/dist/core/usage/usage-analyzer.js +0 -41
  384. package/dist/core/usage/usage-analyzer.js.map +0 -1
  385. package/dist/memory/archive.d.ts +0 -9
  386. package/dist/memory/archive.d.ts.map +0 -1
  387. package/dist/memory/archive.js +0 -42
  388. package/dist/memory/archive.js.map +0 -1
  389. package/dist/memory/compact.d.ts +0 -9
  390. package/dist/memory/compact.d.ts.map +0 -1
  391. package/dist/memory/compact.js +0 -33
  392. package/dist/memory/compact.js.map +0 -1
  393. package/dist/memory/conflicts.d.ts +0 -8
  394. package/dist/memory/conflicts.d.ts.map +0 -1
  395. package/dist/memory/conflicts.js +0 -28
  396. package/dist/memory/conflicts.js.map +0 -1
  397. package/dist/memory/promote.d.ts +0 -8
  398. package/dist/memory/promote.d.ts.map +0 -1
  399. package/dist/memory/promote.js +0 -10
  400. package/dist/memory/promote.js.map +0 -1
  401. package/dist/memory/store-utils.d.ts +0 -14
  402. package/dist/memory/store-utils.d.ts.map +0 -1
  403. package/dist/memory/store-utils.js +0 -44
  404. package/dist/memory/store-utils.js.map +0 -1
  405. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts +0 -2
  406. package/dist/migrate/__tests__/frontmatter-parser.test.d.ts.map +0 -1
  407. package/dist/migrate/__tests__/frontmatter-parser.test.js +0 -73
  408. package/dist/migrate/__tests__/frontmatter-parser.test.js.map +0 -1
  409. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts +0 -2
  410. package/dist/migrate/__tests__/md-strip-mewkit.test.d.ts.map +0 -1
  411. package/dist/migrate/__tests__/md-strip-mewkit.test.js +0 -55
  412. package/dist/migrate/__tests__/md-strip-mewkit.test.js.map +0 -1
  413. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts +0 -2
  414. package/dist/migrate/__tests__/migrate-scope-resolver.test.d.ts.map +0 -1
  415. package/dist/migrate/__tests__/migrate-scope-resolver.test.js +0 -53
  416. package/dist/migrate/__tests__/migrate-scope-resolver.test.js.map +0 -1
  417. package/dist/migrate/__tests__/process-lock.test.d.ts +0 -2
  418. package/dist/migrate/__tests__/process-lock.test.d.ts.map +0 -1
  419. package/dist/migrate/__tests__/process-lock.test.js +0 -63
  420. package/dist/migrate/__tests__/process-lock.test.js.map +0 -1
  421. package/dist/migrate/__tests__/provider-registry.test.d.ts +0 -2
  422. package/dist/migrate/__tests__/provider-registry.test.d.ts.map +0 -1
  423. package/dist/migrate/__tests__/provider-registry.test.js +0 -53
  424. package/dist/migrate/__tests__/provider-registry.test.js.map +0 -1
  425. package/dist/migrate/__tests__/reconciler.test.d.ts +0 -2
  426. package/dist/migrate/__tests__/reconciler.test.d.ts.map +0 -1
  427. package/dist/migrate/__tests__/reconciler.test.js +0 -180
  428. package/dist/migrate/__tests__/reconciler.test.js.map +0 -1
  429. package/dist/migrate/__tests__/skill-id-utils.test.d.ts +0 -2
  430. package/dist/migrate/__tests__/skill-id-utils.test.d.ts.map +0 -1
  431. package/dist/migrate/__tests__/skill-id-utils.test.js +0 -78
  432. package/dist/migrate/__tests__/skill-id-utils.test.js.map +0 -1
  433. package/dist/migrate/converters/md-to-codex-rules.d.ts +0 -10
  434. package/dist/migrate/converters/md-to-codex-rules.d.ts.map +0 -1
  435. package/dist/migrate/converters/md-to-codex-rules.js +0 -133
  436. package/dist/migrate/converters/md-to-codex-rules.js.map +0 -1
  437. package/dist/orchviz/constants.d.ts +0 -72
  438. package/dist/orchviz/constants.d.ts.map +0 -1
  439. package/dist/orchviz/constants.js +0 -105
  440. package/dist/orchviz/constants.js.map +0 -1
  441. package/dist/orchviz/fs-utils.d.ts +0 -24
  442. package/dist/orchviz/fs-utils.d.ts.map +0 -1
  443. package/dist/orchviz/fs-utils.js +0 -49
  444. package/dist/orchviz/fs-utils.js.map +0 -1
  445. package/dist/orchviz/index.d.ts +0 -29
  446. package/dist/orchviz/index.d.ts.map +0 -1
  447. package/dist/orchviz/index.js +0 -28
  448. package/dist/orchviz/index.js.map +0 -1
  449. package/dist/orchviz/log-persister.d.ts +0 -22
  450. package/dist/orchviz/log-persister.d.ts.map +0 -1
  451. package/dist/orchviz/log-persister.js +0 -96
  452. package/dist/orchviz/log-persister.js.map +0 -1
  453. package/dist/orchviz/logger.d.ts +0 -13
  454. package/dist/orchviz/logger.d.ts.map +0 -1
  455. package/dist/orchviz/logger.js +0 -47
  456. package/dist/orchviz/logger.js.map +0 -1
  457. package/dist/orchviz/open-url.d.ts +0 -11
  458. package/dist/orchviz/open-url.d.ts.map +0 -1
  459. package/dist/orchviz/open-url.js.map +0 -1
  460. package/dist/orchviz/overlay/collector.d.ts +0 -29
  461. package/dist/orchviz/overlay/collector.d.ts.map +0 -1
  462. package/dist/orchviz/overlay/collector.js +0 -38
  463. package/dist/orchviz/overlay/collector.js.map +0 -1
  464. package/dist/orchviz/overlay/gate-readers.d.ts +0 -18
  465. package/dist/orchviz/overlay/gate-readers.d.ts.map +0 -1
  466. package/dist/orchviz/overlay/gate-readers.js +0 -111
  467. package/dist/orchviz/overlay/gate-readers.js.map +0 -1
  468. package/dist/orchviz/overlay/session-state-readers.d.ts +0 -18
  469. package/dist/orchviz/overlay/session-state-readers.d.ts.map +0 -1
  470. package/dist/orchviz/overlay/session-state-readers.js +0 -78
  471. package/dist/orchviz/overlay/session-state-readers.js.map +0 -1
  472. package/dist/orchviz/parser/handle-progress.d.ts +0 -9
  473. package/dist/orchviz/parser/handle-progress.d.ts.map +0 -1
  474. package/dist/orchviz/parser/handle-progress.js +0 -38
  475. package/dist/orchviz/parser/handle-progress.js.map +0 -1
  476. package/dist/orchviz/parser/handle-system.d.ts +0 -22
  477. package/dist/orchviz/parser/handle-system.d.ts.map +0 -1
  478. package/dist/orchviz/parser/handle-system.js +0 -99
  479. package/dist/orchviz/parser/handle-system.js.map +0 -1
  480. package/dist/orchviz/parser/handle-text.d.ts +0 -10
  481. package/dist/orchviz/parser/handle-text.d.ts.map +0 -1
  482. package/dist/orchviz/parser/handle-text.js +0 -83
  483. package/dist/orchviz/parser/handle-text.js.map +0 -1
  484. package/dist/orchviz/parser/handle-thinking.d.ts +0 -10
  485. package/dist/orchviz/parser/handle-thinking.d.ts.map +0 -1
  486. package/dist/orchviz/parser/handle-thinking.js +0 -35
  487. package/dist/orchviz/parser/handle-thinking.js.map +0 -1
  488. package/dist/orchviz/parser/handle-tool-result.d.ts +0 -10
  489. package/dist/orchviz/parser/handle-tool-result.d.ts.map +0 -1
  490. package/dist/orchviz/parser/handle-tool-result.js +0 -130
  491. package/dist/orchviz/parser/handle-tool-result.js.map +0 -1
  492. package/dist/orchviz/parser/handle-tool-use.d.ts +0 -11
  493. package/dist/orchviz/parser/handle-tool-use.d.ts.map +0 -1
  494. package/dist/orchviz/parser/handle-tool-use.js +0 -120
  495. package/dist/orchviz/parser/handle-tool-use.js.map +0 -1
  496. package/dist/orchviz/parser/index.d.ts +0 -38
  497. package/dist/orchviz/parser/index.d.ts.map +0 -1
  498. package/dist/orchviz/parser/index.js +0 -144
  499. package/dist/orchviz/parser/index.js.map +0 -1
  500. package/dist/orchviz/parser/label-helpers.d.ts +0 -9
  501. package/dist/orchviz/parser/label-helpers.d.ts.map +0 -1
  502. package/dist/orchviz/parser/label-helpers.js +0 -44
  503. package/dist/orchviz/parser/label-helpers.js.map +0 -1
  504. package/dist/orchviz/parser/strip-ansi.d.ts +0 -6
  505. package/dist/orchviz/parser/strip-ansi.d.ts.map +0 -1
  506. package/dist/orchviz/parser/strip-ansi.js +0 -14
  507. package/dist/orchviz/parser/strip-ansi.js.map +0 -1
  508. package/dist/orchviz/parser/utils.d.ts +0 -20
  509. package/dist/orchviz/parser/utils.d.ts.map +0 -1
  510. package/dist/orchviz/parser/utils.js +0 -54
  511. package/dist/orchviz/parser/utils.js.map +0 -1
  512. package/dist/orchviz/permission-detection.d.ts +0 -32
  513. package/dist/orchviz/permission-detection.d.ts.map +0 -1
  514. package/dist/orchviz/permission-detection.js +0 -104
  515. package/dist/orchviz/permission-detection.js.map +0 -1
  516. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts +0 -15
  517. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.d.ts.map +0 -1
  518. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js +0 -165
  519. package/dist/orchviz/plan/__tests__/apply-todo-toggle.test.js.map +0 -1
  520. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts +0 -11
  521. package/dist/orchviz/plan/__tests__/atomic-write.test.d.ts.map +0 -1
  522. package/dist/orchviz/plan/__tests__/atomic-write.test.js +0 -89
  523. package/dist/orchviz/plan/__tests__/atomic-write.test.js.map +0 -1
  524. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts +0 -10
  525. package/dist/orchviz/plan/__tests__/end-to-end.test.d.ts.map +0 -1
  526. package/dist/orchviz/plan/__tests__/end-to-end.test.js +0 -132
  527. package/dist/orchviz/plan/__tests__/end-to-end.test.js.map +0 -1
  528. package/dist/orchviz/plan/__tests__/etag.test.d.ts +0 -11
  529. package/dist/orchviz/plan/__tests__/etag.test.d.ts.map +0 -1
  530. package/dist/orchviz/plan/__tests__/etag.test.js +0 -92
  531. package/dist/orchviz/plan/__tests__/etag.test.js.map +0 -1
  532. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts +0 -14
  533. package/dist/orchviz/plan/__tests__/list-plans.test.d.ts.map +0 -1
  534. package/dist/orchviz/plan/__tests__/list-plans.test.js +0 -154
  535. package/dist/orchviz/plan/__tests__/list-plans.test.js.map +0 -1
  536. package/dist/orchviz/plan/apply-todo-toggle.d.ts +0 -29
  537. package/dist/orchviz/plan/apply-todo-toggle.d.ts.map +0 -1
  538. package/dist/orchviz/plan/apply-todo-toggle.js +0 -129
  539. package/dist/orchviz/plan/apply-todo-toggle.js.map +0 -1
  540. package/dist/orchviz/plan/atomic-write.d.ts +0 -25
  541. package/dist/orchviz/plan/atomic-write.d.ts.map +0 -1
  542. package/dist/orchviz/plan/atomic-write.js +0 -85
  543. package/dist/orchviz/plan/atomic-write.js.map +0 -1
  544. package/dist/orchviz/plan/collector.d.ts +0 -49
  545. package/dist/orchviz/plan/collector.d.ts.map +0 -1
  546. package/dist/orchviz/plan/collector.js +0 -169
  547. package/dist/orchviz/plan/collector.js.map +0 -1
  548. package/dist/orchviz/plan/etag.d.ts +0 -24
  549. package/dist/orchviz/plan/etag.d.ts.map +0 -1
  550. package/dist/orchviz/plan/etag.js +0 -58
  551. package/dist/orchviz/plan/etag.js.map +0 -1
  552. package/dist/orchviz/plan/find-active-plan.d.ts +0 -9
  553. package/dist/orchviz/plan/find-active-plan.d.ts.map +0 -1
  554. package/dist/orchviz/plan/find-active-plan.js +0 -90
  555. package/dist/orchviz/plan/find-active-plan.js.map +0 -1
  556. package/dist/orchviz/plan/index.d.ts +0 -23
  557. package/dist/orchviz/plan/index.d.ts.map +0 -1
  558. package/dist/orchviz/plan/index.js +0 -91
  559. package/dist/orchviz/plan/index.js.map +0 -1
  560. package/dist/orchviz/plan/list-plans.d.ts +0 -19
  561. package/dist/orchviz/plan/list-plans.d.ts.map +0 -1
  562. package/dist/orchviz/plan/list-plans.js +0 -143
  563. package/dist/orchviz/plan/list-plans.js.map +0 -1
  564. package/dist/orchviz/plan/parse-phase-file.d.ts +0 -13
  565. package/dist/orchviz/plan/parse-phase-file.d.ts.map +0 -1
  566. package/dist/orchviz/plan/parse-phase-file.js +0 -134
  567. package/dist/orchviz/plan/parse-phase-file.js.map +0 -1
  568. package/dist/orchviz/plan/parse-plan-file.d.ts +0 -19
  569. package/dist/orchviz/plan/parse-plan-file.d.ts.map +0 -1
  570. package/dist/orchviz/plan/parse-plan-file.js +0 -62
  571. package/dist/orchviz/plan/parse-plan-file.js.map +0 -1
  572. package/dist/orchviz/plan/plan-constants.d.ts +0 -17
  573. package/dist/orchviz/plan/plan-constants.d.ts.map +0 -1
  574. package/dist/orchviz/plan/plan-constants.js +0 -19
  575. package/dist/orchviz/plan/plan-constants.js.map +0 -1
  576. package/dist/orchviz/plan/plan-lifecycle.d.ts +0 -17
  577. package/dist/orchviz/plan/plan-lifecycle.d.ts.map +0 -1
  578. package/dist/orchviz/plan/plan-lifecycle.js +0 -97
  579. package/dist/orchviz/plan/plan-lifecycle.js.map +0 -1
  580. package/dist/orchviz/plan/types.d.ts +0 -46
  581. package/dist/orchviz/plan/types.d.ts.map +0 -1
  582. package/dist/orchviz/plan/types.js +0 -6
  583. package/dist/orchviz/plan/types.js.map +0 -1
  584. package/dist/orchviz/protocol.d.ts +0 -171
  585. package/dist/orchviz/protocol.d.ts.map +0 -1
  586. package/dist/orchviz/protocol.js +0 -23
  587. package/dist/orchviz/protocol.js.map +0 -1
  588. package/dist/orchviz/redact.d.ts +0 -10
  589. package/dist/orchviz/redact.d.ts.map +0 -1
  590. package/dist/orchviz/redact.js +0 -38
  591. package/dist/orchviz/redact.js.map +0 -1
  592. package/dist/orchviz/sanitize.d.ts +0 -11
  593. package/dist/orchviz/sanitize.d.ts.map +0 -1
  594. package/dist/orchviz/sanitize.js +0 -38
  595. package/dist/orchviz/sanitize.js.map +0 -1
  596. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts +0 -13
  597. package/dist/orchviz/server/__tests__/security-smoke.test.d.ts.map +0 -1
  598. package/dist/orchviz/server/__tests__/security-smoke.test.js +0 -207
  599. package/dist/orchviz/server/__tests__/security-smoke.test.js.map +0 -1
  600. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts +0 -24
  601. package/dist/orchviz/server/__tests__/write-handlers.test.d.ts.map +0 -1
  602. package/dist/orchviz/server/__tests__/write-handlers.test.js +0 -347
  603. package/dist/orchviz/server/__tests__/write-handlers.test.js.map +0 -1
  604. package/dist/orchviz/server/api-handlers.d.ts +0 -55
  605. package/dist/orchviz/server/api-handlers.d.ts.map +0 -1
  606. package/dist/orchviz/server/api-handlers.js +0 -112
  607. package/dist/orchviz/server/api-handlers.js.map +0 -1
  608. package/dist/orchviz/server/index.d.ts +0 -36
  609. package/dist/orchviz/server/index.d.ts.map +0 -1
  610. package/dist/orchviz/server/index.js +0 -144
  611. package/dist/orchviz/server/index.js.map +0 -1
  612. package/dist/orchviz/server/sse-handler.d.ts +0 -28
  613. package/dist/orchviz/server/sse-handler.d.ts.map +0 -1
  614. package/dist/orchviz/server/sse-handler.js +0 -217
  615. package/dist/orchviz/server/sse-handler.js.map +0 -1
  616. package/dist/orchviz/server/static-handler.d.ts +0 -9
  617. package/dist/orchviz/server/static-handler.d.ts.map +0 -1
  618. package/dist/orchviz/server/static-handler.js.map +0 -1
  619. package/dist/orchviz/server/write-handlers.d.ts +0 -20
  620. package/dist/orchviz/server/write-handlers.d.ts.map +0 -1
  621. package/dist/orchviz/server/write-handlers.js +0 -184
  622. package/dist/orchviz/server/write-handlers.js.map +0 -1
  623. package/dist/orchviz/server/write-utils.d.ts +0 -59
  624. package/dist/orchviz/server/write-utils.d.ts.map +0 -1
  625. package/dist/orchviz/server/write-utils.js +0 -161
  626. package/dist/orchviz/server/write-utils.js.map +0 -1
  627. package/dist/orchviz/session-discovery.d.ts +0 -19
  628. package/dist/orchviz/session-discovery.d.ts.map +0 -1
  629. package/dist/orchviz/session-discovery.js +0 -104
  630. package/dist/orchviz/session-discovery.js.map +0 -1
  631. package/dist/orchviz/session-manager.d.ts +0 -17
  632. package/dist/orchviz/session-manager.d.ts.map +0 -1
  633. package/dist/orchviz/session-manager.js +0 -63
  634. package/dist/orchviz/session-manager.js.map +0 -1
  635. package/dist/orchviz/session-runtime.d.ts +0 -21
  636. package/dist/orchviz/session-runtime.d.ts.map +0 -1
  637. package/dist/orchviz/session-runtime.js +0 -135
  638. package/dist/orchviz/session-runtime.js.map +0 -1
  639. package/dist/orchviz/session-watcher.d.ts +0 -33
  640. package/dist/orchviz/session-watcher.d.ts.map +0 -1
  641. package/dist/orchviz/session-watcher.js +0 -135
  642. package/dist/orchviz/session-watcher.js.map +0 -1
  643. package/dist/orchviz/subagent-meta.d.ts +0 -12
  644. package/dist/orchviz/subagent-meta.d.ts.map +0 -1
  645. package/dist/orchviz/subagent-meta.js +0 -34
  646. package/dist/orchviz/subagent-meta.js.map +0 -1
  647. package/dist/orchviz/subagent-scanner.d.ts +0 -15
  648. package/dist/orchviz/subagent-scanner.d.ts.map +0 -1
  649. package/dist/orchviz/subagent-scanner.js +0 -27
  650. package/dist/orchviz/subagent-scanner.js.map +0 -1
  651. package/dist/orchviz/subagent-watcher.d.ts +0 -20
  652. package/dist/orchviz/subagent-watcher.d.ts.map +0 -1
  653. package/dist/orchviz/subagent-watcher.js +0 -160
  654. package/dist/orchviz/subagent-watcher.js.map +0 -1
  655. package/dist/orchviz/test-server-boot.d.ts +0 -28
  656. package/dist/orchviz/test-server-boot.d.ts.map +0 -1
  657. package/dist/orchviz/test-server-boot.js +0 -64
  658. package/dist/orchviz/test-server-boot.js.map +0 -1
  659. package/dist/orchviz/token-estimator.d.ts.map +0 -1
  660. package/dist/orchviz/token-estimator.js.map +0 -1
  661. package/dist/orchviz/tool-input-data.d.ts +0 -11
  662. package/dist/orchviz/tool-input-data.d.ts.map +0 -1
  663. package/dist/orchviz/tool-input-data.js +0 -74
  664. package/dist/orchviz/tool-input-data.js.map +0 -1
  665. package/dist/orchviz/tool-summarizer.d.ts +0 -16
  666. package/dist/orchviz/tool-summarizer.d.ts.map +0 -1
  667. package/dist/orchviz/tool-summarizer.js +0 -129
  668. package/dist/orchviz/tool-summarizer.js.map +0 -1
  669. package/dist/orchviz-web/fira-code-cyrillic-400-normal.woff +0 -0
  670. package/dist/orchviz-web/fira-code-cyrillic-400-normal.woff2 +0 -0
  671. package/dist/orchviz-web/fira-code-cyrillic-500-normal.woff +0 -0
  672. package/dist/orchviz-web/fira-code-cyrillic-500-normal.woff2 +0 -0
  673. package/dist/orchviz-web/fira-code-cyrillic-ext-400-normal.woff +0 -0
  674. package/dist/orchviz-web/fira-code-cyrillic-ext-400-normal.woff2 +0 -0
  675. package/dist/orchviz-web/fira-code-cyrillic-ext-500-normal.woff +0 -0
  676. package/dist/orchviz-web/fira-code-cyrillic-ext-500-normal.woff2 +0 -0
  677. package/dist/orchviz-web/fira-code-greek-400-normal.woff +0 -0
  678. package/dist/orchviz-web/fira-code-greek-400-normal.woff2 +0 -0
  679. package/dist/orchviz-web/fira-code-greek-500-normal.woff +0 -0
  680. package/dist/orchviz-web/fira-code-greek-500-normal.woff2 +0 -0
  681. package/dist/orchviz-web/fira-code-greek-ext-400-normal.woff +0 -0
  682. package/dist/orchviz-web/fira-code-greek-ext-400-normal.woff2 +0 -0
  683. package/dist/orchviz-web/fira-code-greek-ext-500-normal.woff +0 -0
  684. package/dist/orchviz-web/fira-code-greek-ext-500-normal.woff2 +0 -0
  685. package/dist/orchviz-web/fira-code-latin-400-normal.woff +0 -0
  686. package/dist/orchviz-web/fira-code-latin-400-normal.woff2 +0 -0
  687. package/dist/orchviz-web/fira-code-latin-500-normal.woff +0 -0
  688. package/dist/orchviz-web/fira-code-latin-500-normal.woff2 +0 -0
  689. package/dist/orchviz-web/fira-code-latin-ext-400-normal.woff +0 -0
  690. package/dist/orchviz-web/fira-code-latin-ext-400-normal.woff2 +0 -0
  691. package/dist/orchviz-web/fira-code-latin-ext-500-normal.woff +0 -0
  692. package/dist/orchviz-web/fira-code-latin-ext-500-normal.woff2 +0 -0
  693. package/dist/orchviz-web/fira-code-symbols2-400-normal.woff +0 -0
  694. package/dist/orchviz-web/fira-code-symbols2-500-normal.woff +0 -0
  695. package/dist/orchviz-web/index.css +0 -1
  696. package/dist/orchviz-web/index.html +0 -18
  697. package/dist/orchviz-web/index.js +0 -53
  698. package/dist/orchviz-web/inter-cyrillic-400-normal.woff +0 -0
  699. package/dist/orchviz-web/inter-cyrillic-400-normal.woff2 +0 -0
  700. package/dist/orchviz-web/inter-cyrillic-500-normal.woff +0 -0
  701. package/dist/orchviz-web/inter-cyrillic-500-normal.woff2 +0 -0
  702. package/dist/orchviz-web/inter-cyrillic-600-normal.woff +0 -0
  703. package/dist/orchviz-web/inter-cyrillic-600-normal.woff2 +0 -0
  704. package/dist/orchviz-web/inter-cyrillic-ext-400-normal.woff +0 -0
  705. package/dist/orchviz-web/inter-cyrillic-ext-400-normal.woff2 +0 -0
  706. package/dist/orchviz-web/inter-cyrillic-ext-500-normal.woff +0 -0
  707. package/dist/orchviz-web/inter-cyrillic-ext-500-normal.woff2 +0 -0
  708. package/dist/orchviz-web/inter-cyrillic-ext-600-normal.woff +0 -0
  709. package/dist/orchviz-web/inter-cyrillic-ext-600-normal.woff2 +0 -0
  710. package/dist/orchviz-web/inter-greek-400-normal.woff +0 -0
  711. package/dist/orchviz-web/inter-greek-400-normal.woff2 +0 -0
  712. package/dist/orchviz-web/inter-greek-500-normal.woff +0 -0
  713. package/dist/orchviz-web/inter-greek-500-normal.woff2 +0 -0
  714. package/dist/orchviz-web/inter-greek-600-normal.woff +0 -0
  715. package/dist/orchviz-web/inter-greek-600-normal.woff2 +0 -0
  716. package/dist/orchviz-web/inter-greek-ext-400-normal.woff +0 -0
  717. package/dist/orchviz-web/inter-greek-ext-400-normal.woff2 +0 -0
  718. package/dist/orchviz-web/inter-greek-ext-500-normal.woff +0 -0
  719. package/dist/orchviz-web/inter-greek-ext-500-normal.woff2 +0 -0
  720. package/dist/orchviz-web/inter-greek-ext-600-normal.woff +0 -0
  721. package/dist/orchviz-web/inter-greek-ext-600-normal.woff2 +0 -0
  722. package/dist/orchviz-web/inter-latin-400-normal.woff +0 -0
  723. package/dist/orchviz-web/inter-latin-400-normal.woff2 +0 -0
  724. package/dist/orchviz-web/inter-latin-500-normal.woff +0 -0
  725. package/dist/orchviz-web/inter-latin-500-normal.woff2 +0 -0
  726. package/dist/orchviz-web/inter-latin-600-normal.woff +0 -0
  727. package/dist/orchviz-web/inter-latin-600-normal.woff2 +0 -0
  728. package/dist/orchviz-web/inter-latin-ext-400-normal.woff +0 -0
  729. package/dist/orchviz-web/inter-latin-ext-400-normal.woff2 +0 -0
  730. package/dist/orchviz-web/inter-latin-ext-500-normal.woff +0 -0
  731. package/dist/orchviz-web/inter-latin-ext-500-normal.woff2 +0 -0
  732. package/dist/orchviz-web/inter-latin-ext-600-normal.woff +0 -0
  733. package/dist/orchviz-web/inter-latin-ext-600-normal.woff2 +0 -0
  734. package/dist/orchviz-web/inter-vietnamese-400-normal.woff +0 -0
  735. package/dist/orchviz-web/inter-vietnamese-400-normal.woff2 +0 -0
  736. package/dist/orchviz-web/inter-vietnamese-500-normal.woff +0 -0
  737. package/dist/orchviz-web/inter-vietnamese-500-normal.woff2 +0 -0
  738. package/dist/orchviz-web/inter-vietnamese-600-normal.woff +0 -0
  739. package/dist/orchviz-web/inter-vietnamese-600-normal.woff2 +0 -0
@@ -1,129 +0,0 @@
1
- /**
2
- * apply-todo-toggle — pure function that flips a single checkbox marker
3
- * inside the ## Todo List section of a phase file's content string.
4
- *
5
- * Contract:
6
- * - No fs, no http, no side effects. Pure transformation only.
7
- * - Mirrors extractTodos fence-aware walk exactly (per red-team C1).
8
- * - CRLF preserved: majority-EOL detection applied to full content.
9
- * - Idempotent: marker already matches desired → {changed: false}.
10
- * - Error tags are static strings, NEVER interpolated content (R2-14).
11
- */
12
- const TODO_RE = /^(\s*-\s*\[)(\s|x|X|~|✓)(\]\s+.+?)\s*$/;
13
- const FENCE_RE = /^```/;
14
- /**
15
- * Detect the dominant line ending character.
16
- * Returns "\r\n" if CRLF count > LF-only count, else "\n".
17
- */
18
- function detectEol(content) {
19
- const crlfCount = (content.match(/\r\n/g) ?? []).length;
20
- const lfCount = (content.match(/(?<!\r)\n/g) ?? []).length;
21
- // Detect mixed-EOL (meaningful mix: both > 0 and neither dominates by 2:1)
22
- if (crlfCount > 0 && lfCount > 0) {
23
- // Accept minor contamination (≤20% minority) as "effectively uniform"
24
- const total = crlfCount + lfCount;
25
- const minority = Math.min(crlfCount, lfCount);
26
- if (minority / total > 0.2) {
27
- // Genuinely mixed — caller may want to warn, but we proceed with majority
28
- // and let the eol-mixed error tag be used if the caller needs it.
29
- }
30
- }
31
- return crlfCount >= lfCount ? "\r\n" : "\n";
32
- }
33
- /**
34
- * Flip the Nth (0-based) checkbox marker in ## Todo List section.
35
- *
36
- * Fence-aware walk matches extractTodos in parse-phase-file.ts exactly:
37
- * - Lines matching /^```/ toggle fenceDepth 0→1 or 1→0.
38
- * - Checkbox lines inside fences (fenceDepth > 0) are skipped/not counted.
39
- * - Only `^phase-` regex used in server, NOT here — caller decides glob.
40
- */
41
- export function applyTodoToggle(content, todoIdx, checked) {
42
- // Split preserving original EOL on each line for later reassembly.
43
- // We split on \n and check if each line ends with \r (for CRLF lines).
44
- const eol = detectEol(content);
45
- // Split into raw lines (without any EOL); we'll reassemble with detected eol.
46
- // Handle CRLF: split on \n, strip trailing \r from each line for processing,
47
- // then reattach the correct EOL on reassembly.
48
- const rawLines = content.split("\n");
49
- const lines = rawLines.map((l) => (l.endsWith("\r") ? l.slice(0, -1) : l));
50
- // Locate ## Todo List section start
51
- const todoSectionRe = /^##\s+Todo\s+List\s*$/i;
52
- const nextSectionRe = /^##?\s/;
53
- let sectionStart = -1;
54
- let sectionEnd = lines.length;
55
- for (let i = 0; i < lines.length; i++) {
56
- if (todoSectionRe.test(lines[i])) {
57
- sectionStart = i + 1;
58
- continue;
59
- }
60
- if (sectionStart !== -1 && i > sectionStart && nextSectionRe.test(lines[i])) {
61
- sectionEnd = i;
62
- break;
63
- }
64
- }
65
- if (sectionStart === -1) {
66
- return { error: "section-missing" };
67
- }
68
- // Walk todo section with fence tracker (must match extractTodos exactly)
69
- let fenceDepth = 0;
70
- let count = 0;
71
- let targetLineIdx = -1;
72
- for (let i = sectionStart; i < sectionEnd; i++) {
73
- const line = lines[i];
74
- if (FENCE_RE.test(line)) {
75
- fenceDepth = fenceDepth === 0 ? 1 : 0;
76
- continue;
77
- }
78
- if (fenceDepth > 0)
79
- continue;
80
- const m = line.match(TODO_RE);
81
- if (!m)
82
- continue;
83
- if (count === todoIdx) {
84
- targetLineIdx = i;
85
- break;
86
- }
87
- count++;
88
- }
89
- // Fence depth not closed: error (malformed doc)
90
- if (fenceDepth > 0) {
91
- return { error: "fence-overflow" };
92
- }
93
- if (targetLineIdx === -1) {
94
- return { error: "out-of-range" };
95
- }
96
- // Check idempotency: does current marker already match desired state?
97
- const m = lines[targetLineIdx].match(TODO_RE);
98
- if (!m) {
99
- // Shouldn't happen since we matched above, but guard defensively
100
- return { error: "out-of-range" };
101
- }
102
- const currentMarker = m[2];
103
- const currentChecked = currentMarker !== " " && currentMarker !== "";
104
- if (currentChecked === checked) {
105
- // Already in desired state — idempotent no-op
106
- return { content, changed: false };
107
- }
108
- // Flip: replace marker char
109
- const newMarker = checked ? "x" : " ";
110
- const newLine = m[1] + newMarker + m[3];
111
- lines[targetLineIdx] = newLine;
112
- // Reassemble with original EOL type
113
- // If original was CRLF, rawLines had \r on each line; we stripped them above.
114
- // Now rebuild: join with detected EOL. Last line may or may not have trailing EOL.
115
- const hasTrailingNewline = content.endsWith("\n") || content.endsWith("\r\n");
116
- let newContent;
117
- if (eol === "\r\n") {
118
- newContent = lines.join("\r\n");
119
- }
120
- else {
121
- newContent = lines.join("\n");
122
- }
123
- // Preserve trailing newline if original had one
124
- if (hasTrailingNewline && !newContent.endsWith("\n")) {
125
- newContent += eol;
126
- }
127
- return { content: newContent, changed: true };
128
- }
129
- //# sourceMappingURL=apply-todo-toggle.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apply-todo-toggle.js","sourceRoot":"","sources":["../../../src/orchviz/plan/apply-todo-toggle.ts"],"names":[],"mappings":"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"}
@@ -1,25 +0,0 @@
1
- /**
2
- * atomic-write — same-dir tmp + renameSync for crash-safe file writes.
3
- *
4
- * Security: tmp filename uses .orchviz-tmp- prefix so phase-glob regex
5
- * (/^phase-0*N-.*\.md$/i) never matches orphaned temps (R2-1, R2-13).
6
- *
7
- * Reliability:
8
- * - renameSync is atomic on POSIX (same filesystem guaranteed by same-dir tmp).
9
- * - Windows EPERM (file open in another process) → single 50ms retry.
10
- * - try/finally unlinks tmp on every error path — no orphan on throw.
11
- *
12
- * Orphan cleanup: cleanOrphanedTmps(planDir) removes .orchviz-tmp-* files
13
- * older than 5 minutes. Called on first write per slug (R2-13).
14
- */
15
- /**
16
- * Write `content` to `targetPath` atomically via a same-directory temp file.
17
- * Throws on persistent failure (after Windows EPERM retry).
18
- */
19
- export declare function atomicWriteFileSync(targetPath: string, content: string): void;
20
- /**
21
- * Remove .orchviz-tmp-* files older than ORPHAN_AGE_MS in planDir.
22
- * Silently skips if dir doesn't exist or entry stat fails (R2-13).
23
- */
24
- export declare function cleanOrphanedTmps(planDir: string): void;
25
- //# sourceMappingURL=atomic-write.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"atomic-write.d.ts","sourceRoot":"","sources":["../../../src/orchviz/plan/atomic-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AASH;;;GAGG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CA6B7E;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAoBvD"}
@@ -1,85 +0,0 @@
1
- /**
2
- * atomic-write — same-dir tmp + renameSync for crash-safe file writes.
3
- *
4
- * Security: tmp filename uses .orchviz-tmp- prefix so phase-glob regex
5
- * (/^phase-0*N-.*\.md$/i) never matches orphaned temps (R2-1, R2-13).
6
- *
7
- * Reliability:
8
- * - renameSync is atomic on POSIX (same filesystem guaranteed by same-dir tmp).
9
- * - Windows EPERM (file open in another process) → single 50ms retry.
10
- * - try/finally unlinks tmp on every error path — no orphan on throw.
11
- *
12
- * Orphan cleanup: cleanOrphanedTmps(planDir) removes .orchviz-tmp-* files
13
- * older than 5 minutes. Called on first write per slug (R2-13).
14
- */
15
- import * as fs from "node:fs";
16
- import * as path from "node:path";
17
- import * as crypto from "node:crypto";
18
- const TMP_PREFIX = ".orchviz-tmp-";
19
- const ORPHAN_AGE_MS = 5 * 60 * 1000; // 5 minutes
20
- /**
21
- * Write `content` to `targetPath` atomically via a same-directory temp file.
22
- * Throws on persistent failure (after Windows EPERM retry).
23
- */
24
- export function atomicWriteFileSync(targetPath, content) {
25
- const dir = path.dirname(targetPath);
26
- const rand = crypto.randomBytes(6).toString("hex");
27
- const tmpPath = path.join(dir, `${TMP_PREFIX}${rand}`);
28
- fs.writeFileSync(tmpPath, content, "utf-8");
29
- try {
30
- try {
31
- fs.renameSync(tmpPath, targetPath);
32
- }
33
- catch (err) {
34
- const e = err;
35
- if (e.code === "EPERM") {
36
- // Windows: file may be open in another process. Single 50ms retry.
37
- Atomics.wait(new Int32Array(new SharedArrayBuffer(4)), 0, 0, 50);
38
- fs.renameSync(tmpPath, targetPath);
39
- }
40
- else {
41
- throw err;
42
- }
43
- }
44
- }
45
- catch (err) {
46
- // Clean up tmp on any rename failure
47
- try {
48
- fs.unlinkSync(tmpPath);
49
- }
50
- catch {
51
- // Best-effort; suppress secondary error
52
- }
53
- throw err;
54
- }
55
- // renameSync succeeded — tmp no longer exists (renamed to target), nothing to unlink.
56
- }
57
- /**
58
- * Remove .orchviz-tmp-* files older than ORPHAN_AGE_MS in planDir.
59
- * Silently skips if dir doesn't exist or entry stat fails (R2-13).
60
- */
61
- export function cleanOrphanedTmps(planDir) {
62
- let entries;
63
- try {
64
- entries = fs.readdirSync(planDir);
65
- }
66
- catch {
67
- return;
68
- }
69
- const now = Date.now();
70
- for (const name of entries) {
71
- if (!name.startsWith(TMP_PREFIX))
72
- continue;
73
- const fullPath = path.join(planDir, name);
74
- try {
75
- const stat = fs.statSync(fullPath);
76
- if (now - stat.mtimeMs > ORPHAN_AGE_MS) {
77
- fs.unlinkSync(fullPath);
78
- }
79
- }
80
- catch {
81
- // Skip — file may already be gone or inaccessible
82
- }
83
- }
84
- }
85
- //# sourceMappingURL=atomic-write.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"atomic-write.js","sourceRoot":"","sources":["../../../src/orchviz/plan/atomic-write.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AAEtC,MAAM,UAAU,GAAG,eAAe,CAAC;AACnC,MAAM,aAAa,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;AAEjD;;;GAGG;AACH,MAAM,UAAU,mBAAmB,CAAC,UAAkB,EAAE,OAAe;IACtE,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;IACrC,MAAM,IAAI,GAAG,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACnD,MAAM,OAAO,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,UAAU,GAAG,IAAI,EAAE,CAAC,CAAC;IAEvD,EAAE,CAAC,aAAa,CAAC,OAAO,EAAE,OAAO,EAAE,OAAO,CAAC,CAAC;IAC5C,IAAI,CAAC;QACJ,IAAI,CAAC;YACJ,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;QACpC,CAAC;QAAC,OAAO,GAAG,EAAE,CAAC;YACd,MAAM,CAAC,GAAG,GAA4B,CAAC;YACvC,IAAI,CAAC,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;gBACxB,mEAAmE;gBACnE,OAAO,CAAC,IAAI,CAAC,IAAI,UAAU,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,CAAC;gBACjE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC;YACpC,CAAC;iBAAM,CAAC;gBACP,MAAM,GAAG,CAAC;YACX,CAAC;QACF,CAAC;IACF,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,qCAAqC;QACrC,IAAI,CAAC;YACJ,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QAAC,MAAM,CAAC;YACR,wCAAwC;QACzC,CAAC;QACD,MAAM,GAAG,CAAC;IACX,CAAC;IACD,sFAAsF;AACvF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB,CAAC,OAAe;IAChD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO;IACR,CAAC;IACD,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5B,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC;YAAE,SAAS;QAC3C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC;YACJ,MAAM,IAAI,GAAG,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;YACnC,IAAI,GAAG,GAAG,IAAI,CAAC,OAAO,GAAG,aAAa,EAAE,CAAC;gBACxC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;YACzB,CAAC;QACF,CAAC;QAAC,MAAM,CAAC;YACR,kDAAkD;QACnD,CAAC;IACF,CAAC;AACF,CAAC"}
@@ -1,49 +0,0 @@
1
- /**
2
- * PlanCollector — read the active plan (or a slug-targeted plan) with mtime-keyed cache.
3
- *
4
- * Per red-team H3 (orchviz redesign): cache key is `(planDirMtime, max(phaseFileMtime))`.
5
- * Cache invalidates the moment any plan file is touched on disk — no stale window.
6
- * A 60s time-based fallback exists for paranoia (e.g., filesystems with broken mtime).
7
- *
8
- * Per R2-3: cache is plain Map<string, CacheEntry> keyed by slug-or-"__active".
9
- * Soft-reset if map.size > 50. NO LRU, NO 16-entry cap, NO evict-oldest.
10
- *
11
- * Per R2-8: PlanSnapshot shape includes phaseEtags (not etag) and error tag.
12
- * Read-only is the default behavior. Set MEOWKIT_ORCHVIZ_WRITABLE=1 to opt
13
- * into write mode. Legacy MEOWKIT_ORCHVIZ_READONLY=0 continues to enable
14
- * writes for backwards compatibility with existing user setups.
15
- */
16
- import type { PlanState } from "./types.js";
17
- /**
18
- * Read-only is the default. Precedence (highest first):
19
- * 1. MEOWKIT_ORCHVIZ_READONLY=1 forces readonly (defensive lock)
20
- * 2. MEOWKIT_ORCHVIZ_WRITABLE=1 opts into writes (preferred opt-in)
21
- * 3. MEOWKIT_ORCHVIZ_READONLY=0 opts into writes (legacy compat)
22
- * 4. otherwise readonly
23
- */
24
- export declare function isOrchvizReadonly(): boolean;
25
- /** Error tags for PlanSnapshot failure cases (R2-8). */
26
- export type PlanSnapshotError = "invalid-slug" | "forbidden-path" | "not-found";
27
- export interface PlanSnapshot {
28
- plan: PlanState | null;
29
- /** Per-phase etags keyed by phase number. null on error. */
30
- phaseEtags: Record<number, string> | null;
31
- /** Whether the server is in read-only mode (default true; see isOrchvizReadonly). */
32
- readonly: boolean;
33
- generatedAt: string;
34
- error?: PlanSnapshotError;
35
- }
36
- export declare class PlanCollector {
37
- private readonly projectRoot;
38
- private readonly cache;
39
- /** Cached `realpathSync(plansDir)` — constant per-projectRoot, avoids syscall per slug poll. */
40
- private resolvedPlansDir;
41
- constructor(projectRoot: string);
42
- snapshot(slug?: string): PlanSnapshot;
43
- private snapshotActive;
44
- private snapshotBySlug;
45
- /** Soft-reset the cache if it grows too large, then insert the new entry (R2-3). */
46
- private writeCache;
47
- invalidate(): void;
48
- }
49
- //# sourceMappingURL=collector.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collector.d.ts","sourceRoot":"","sources":["../../../src/orchviz/plan/collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAQH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,YAAY,CAAC;AAS5C;;;;;;GAMG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAK3C;AAED,wDAAwD;AACxD,MAAM,MAAM,iBAAiB,GAAG,cAAc,GAAG,gBAAgB,GAAG,WAAW,CAAC;AAEhF,MAAM,WAAW,YAAY;IAC5B,IAAI,EAAE,SAAS,GAAG,IAAI,CAAC;IACvB,4DAA4D;IAC5D,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAAC;IAC1C,qFAAqF;IACrF,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,CAAC,EAAE,iBAAiB,CAAC;CAC1B;AAQD,qBAAa,aAAa;IAKb,OAAO,CAAC,QAAQ,CAAC,WAAW;IAJxC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IACvD,gGAAgG;IAChG,OAAO,CAAC,gBAAgB,CAAuB;gBAElB,WAAW,EAAE,MAAM;IAEhD,QAAQ,CAAC,IAAI,CAAC,EAAE,MAAM,GAAG,YAAY;IAUrC,OAAO,CAAC,cAAc;IAsBtB,OAAO,CAAC,cAAc;IAmFtB,oFAAoF;IACpF,OAAO,CAAC,UAAU;IAOlB,UAAU,IAAI,IAAI;CAIlB"}
@@ -1,169 +0,0 @@
1
- /**
2
- * PlanCollector — read the active plan (or a slug-targeted plan) with mtime-keyed cache.
3
- *
4
- * Per red-team H3 (orchviz redesign): cache key is `(planDirMtime, max(phaseFileMtime))`.
5
- * Cache invalidates the moment any plan file is touched on disk — no stale window.
6
- * A 60s time-based fallback exists for paranoia (e.g., filesystems with broken mtime).
7
- *
8
- * Per R2-3: cache is plain Map<string, CacheEntry> keyed by slug-or-"__active".
9
- * Soft-reset if map.size > 50. NO LRU, NO 16-entry cap, NO evict-oldest.
10
- *
11
- * Per R2-8: PlanSnapshot shape includes phaseEtags (not etag) and error tag.
12
- * Read-only is the default behavior. Set MEOWKIT_ORCHVIZ_WRITABLE=1 to opt
13
- * into write mode. Legacy MEOWKIT_ORCHVIZ_READONLY=0 continues to enable
14
- * writes for backwards compatibility with existing user setups.
15
- */
16
- import * as path from "node:path";
17
- import * as fs from "node:fs";
18
- import { findActivePlan } from "./find-active-plan.js";
19
- import { planMtimeKey, readPlan } from "./index.js";
20
- import { computeAllPhaseEtags } from "./etag.js";
21
- import { SLUG_RE } from "./plan-constants.js";
22
- import { createLogger } from "../logger.js";
23
- const log = createLogger("PlanCollector");
24
- const FALLBACK_TIMEOUT_MS = 60_000;
25
- const CACHE_SOFT_RESET_THRESHOLD = 50;
26
- const ACTIVE_KEY = "__active";
27
- /**
28
- * Read-only is the default. Precedence (highest first):
29
- * 1. MEOWKIT_ORCHVIZ_READONLY=1 forces readonly (defensive lock)
30
- * 2. MEOWKIT_ORCHVIZ_WRITABLE=1 opts into writes (preferred opt-in)
31
- * 3. MEOWKIT_ORCHVIZ_READONLY=0 opts into writes (legacy compat)
32
- * 4. otherwise readonly
33
- */
34
- export function isOrchvizReadonly() {
35
- if (process.env.MEOWKIT_ORCHVIZ_READONLY === "1")
36
- return true;
37
- if (process.env.MEOWKIT_ORCHVIZ_WRITABLE === "1")
38
- return false;
39
- if (process.env.MEOWKIT_ORCHVIZ_READONLY === "0")
40
- return false;
41
- return true;
42
- }
43
- export class PlanCollector {
44
- projectRoot;
45
- cache = new Map();
46
- /** Cached `realpathSync(plansDir)` — constant per-projectRoot, avoids syscall per slug poll. */
47
- resolvedPlansDir = null;
48
- constructor(projectRoot) {
49
- this.projectRoot = projectRoot;
50
- }
51
- snapshot(slug) {
52
- const isReadonly = isOrchvizReadonly();
53
- const generatedAt = new Date().toISOString();
54
- if (slug !== undefined) {
55
- return this.snapshotBySlug(slug, isReadonly, generatedAt);
56
- }
57
- return this.snapshotActive(isReadonly, generatedAt);
58
- }
59
- snapshotActive(isReadonly, generatedAt) {
60
- const planDir = findActivePlan(this.projectRoot);
61
- const mtimeKey = planDir ? planMtimeKey(planDir) : null;
62
- const now = Date.now();
63
- const cached = this.cache.get(ACTIVE_KEY);
64
- if (cached && cached.mtimeKey === mtimeKey && now - cached.at < FALLBACK_TIMEOUT_MS) {
65
- return { ...cached.snapshot, readonly: isReadonly, generatedAt };
66
- }
67
- const plan = planDir ? readPlan(planDir) : null;
68
- const phaseEtags = planDir ? computeAllPhaseEtags(planDir) : null;
69
- const snapshot = {
70
- plan,
71
- phaseEtags,
72
- readonly: isReadonly,
73
- generatedAt,
74
- };
75
- this.writeCache(ACTIVE_KEY, snapshot, mtimeKey, now);
76
- return snapshot;
77
- }
78
- snapshotBySlug(slug, isReadonly, generatedAt) {
79
- // Validate slug regex BEFORE any path resolution (defense vs traversal)
80
- if (!SLUG_RE.test(slug)) {
81
- return {
82
- plan: null,
83
- phaseEtags: null,
84
- readonly: isReadonly,
85
- generatedAt,
86
- error: "invalid-slug",
87
- };
88
- }
89
- const plansDir = path.join(this.projectRoot, "tasks", "plans");
90
- const planDir = path.join(plansDir, slug);
91
- // Boundary check via realpath — cached per-process (constant per projectRoot).
92
- // macOS /var→/private/var symlink resolves once.
93
- if (this.resolvedPlansDir === null) {
94
- try {
95
- this.resolvedPlansDir = fs.realpathSync(plansDir);
96
- }
97
- catch {
98
- return {
99
- plan: null,
100
- phaseEtags: null,
101
- readonly: isReadonly,
102
- generatedAt,
103
- error: "not-found",
104
- };
105
- }
106
- }
107
- const boundary = this.resolvedPlansDir + path.sep;
108
- let resolved;
109
- try {
110
- resolved = fs.realpathSync(planDir);
111
- }
112
- catch {
113
- return {
114
- plan: null,
115
- phaseEtags: null,
116
- readonly: isReadonly,
117
- generatedAt,
118
- error: "not-found",
119
- };
120
- }
121
- if (!(resolved + path.sep).startsWith(boundary)) {
122
- log.warn(`slug boundary violation: ${slug} -> ${resolved}`);
123
- return {
124
- plan: null,
125
- phaseEtags: null,
126
- readonly: isReadonly,
127
- generatedAt,
128
- error: "forbidden-path",
129
- };
130
- }
131
- const mtimeKey = planMtimeKey(planDir);
132
- const now = Date.now();
133
- const cached = this.cache.get(slug);
134
- if (cached && cached.mtimeKey === mtimeKey && now - cached.at < FALLBACK_TIMEOUT_MS) {
135
- return { ...cached.snapshot, readonly: isReadonly, generatedAt };
136
- }
137
- const plan = readPlan(planDir);
138
- if (!plan) {
139
- return {
140
- plan: null,
141
- phaseEtags: null,
142
- readonly: isReadonly,
143
- generatedAt,
144
- error: "not-found",
145
- };
146
- }
147
- const phaseEtags = computeAllPhaseEtags(planDir);
148
- const snapshot = {
149
- plan,
150
- phaseEtags,
151
- readonly: isReadonly,
152
- generatedAt,
153
- };
154
- this.writeCache(slug, snapshot, mtimeKey, now);
155
- return snapshot;
156
- }
157
- /** Soft-reset the cache if it grows too large, then insert the new entry (R2-3). */
158
- writeCache(key, snapshot, mtimeKey, now) {
159
- if (this.cache.size >= CACHE_SOFT_RESET_THRESHOLD) {
160
- this.cache.clear();
161
- }
162
- this.cache.set(key, { snapshot, mtimeKey, at: now });
163
- }
164
- invalidate() {
165
- this.cache.clear();
166
- // resolvedPlansDir is per-projectRoot and never changes; do NOT clear.
167
- }
168
- }
169
- //# sourceMappingURL=collector.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"collector.js","sourceRoot":"","sources":["../../../src/orchviz/plan/collector.ts"],"names":[],"mappings":"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"}
@@ -1,24 +0,0 @@
1
- /**
2
- * ETag helpers — per-phase-file sha256 hash.
3
- *
4
- * Per red-team H2 / R2-2: ETag scope is per-FILE, NOT a bundle hash.
5
- * Concurrent writes to different phases do not produce false 409s.
6
- *
7
- * computePhaseFileEtag(phaseFilePath) → 64-char lowercase hex sha256.
8
- * Missing file → "" (not an error; caller decides how to handle absent files).
9
- *
10
- * computeAllPhaseEtags(planDir) → Record<phaseNumber, hex64>
11
- * for every phase-NN-*.md in the directory.
12
- */
13
- /**
14
- * Compute sha256 of a single phase file's bytes.
15
- * Returns 64-char lowercase hex, or "" if the file cannot be read.
16
- */
17
- export declare function computePhaseFileEtag(phaseFilePath: string): string;
18
- /**
19
- * Compute etags for every phase-NN-*.md file in planDir.
20
- * Returns a Record keyed by phase number (integer).
21
- * Missing or unreadable files are omitted.
22
- */
23
- export declare function computeAllPhaseEtags(planDir: string): Record<number, string>;
24
- //# sourceMappingURL=etag.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"etag.d.ts","sourceRoot":"","sources":["../../../src/orchviz/plan/etag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAOH;;;GAGG;AACH,wBAAgB,oBAAoB,CAAC,aAAa,EAAE,MAAM,GAAG,MAAM,CAQlE;AAED;;;;GAIG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAmB5E"}
@@ -1,58 +0,0 @@
1
- /**
2
- * ETag helpers — per-phase-file sha256 hash.
3
- *
4
- * Per red-team H2 / R2-2: ETag scope is per-FILE, NOT a bundle hash.
5
- * Concurrent writes to different phases do not produce false 409s.
6
- *
7
- * computePhaseFileEtag(phaseFilePath) → 64-char lowercase hex sha256.
8
- * Missing file → "" (not an error; caller decides how to handle absent files).
9
- *
10
- * computeAllPhaseEtags(planDir) → Record<phaseNumber, hex64>
11
- * for every phase-NN-*.md in the directory.
12
- */
13
- import * as crypto from "node:crypto";
14
- import * as fs from "node:fs";
15
- import * as path from "node:path";
16
- import { PHASE_FILE_NUM_RE } from "./plan-constants.js";
17
- /**
18
- * Compute sha256 of a single phase file's bytes.
19
- * Returns 64-char lowercase hex, or "" if the file cannot be read.
20
- */
21
- export function computePhaseFileEtag(phaseFilePath) {
22
- let buf;
23
- try {
24
- buf = fs.readFileSync(phaseFilePath);
25
- }
26
- catch {
27
- return "";
28
- }
29
- return crypto.createHash("sha256").update(buf).digest("hex");
30
- }
31
- /**
32
- * Compute etags for every phase-NN-*.md file in planDir.
33
- * Returns a Record keyed by phase number (integer).
34
- * Missing or unreadable files are omitted.
35
- */
36
- export function computeAllPhaseEtags(planDir) {
37
- let entries;
38
- try {
39
- entries = fs.readdirSync(planDir);
40
- }
41
- catch {
42
- return {};
43
- }
44
- const out = {};
45
- for (const name of entries) {
46
- const m = name.match(PHASE_FILE_NUM_RE);
47
- if (!m)
48
- continue;
49
- const phaseNum = parseInt(m[1], 10);
50
- const filePath = path.join(planDir, name);
51
- const etag = computePhaseFileEtag(filePath);
52
- if (etag !== "") {
53
- out[phaseNum] = etag;
54
- }
55
- }
56
- return out;
57
- }
58
- //# sourceMappingURL=etag.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"etag.js","sourceRoot":"","sources":["../../../src/orchviz/plan/etag.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,KAAK,MAAM,MAAM,aAAa,CAAC;AACtC,OAAO,KAAK,EAAE,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;AAClC,OAAO,EAAE,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AAExD;;;GAGG;AACH,MAAM,UAAU,oBAAoB,CAAC,aAAqB;IACzD,IAAI,GAAW,CAAC;IAChB,IAAI,CAAC;QACJ,GAAG,GAAG,EAAE,CAAC,YAAY,CAAC,aAAa,CAAC,CAAC;IACtC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC9D,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,oBAAoB,CAAC,OAAe;IACnD,IAAI,OAAiB,CAAC;IACtB,IAAI,CAAC;QACJ,OAAO,GAAG,EAAE,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IACnC,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,CAAC;IACX,CAAC;IACD,MAAM,GAAG,GAA2B,EAAE,CAAC;IACvC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACxC,IAAI,CAAC,CAAC;YAAE,SAAS;QACjB,MAAM,QAAQ,GAAG,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACpC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAC1C,MAAM,IAAI,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;QAC5C,IAAI,IAAI,KAAK,EAAE,EAAE,CAAC;YACjB,GAAG,CAAC,QAAQ,CAAC,GAAG,IAAI,CAAC;QACtB,CAAC;IACF,CAAC;IACD,OAAO,GAAG,CAAC;AACZ,CAAC"}
@@ -1,9 +0,0 @@
1
- /**
2
- * findActivePlan — discover the most-recent non-archived plan dir.
3
- *
4
- * Per red-team C1 (orchviz redesign plan): every candidate path is realpath-resolved
5
- * and asserted to live inside `${projectRoot}/tasks/plans/`. Symlinks pointing
6
- * outside the boundary are rejected to prevent path-disclosure via /api/plan.
7
- */
8
- export declare function findActivePlan(projectRoot: string): string | null;
9
- //# sourceMappingURL=find-active-plan.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"find-active-plan.d.ts","sourceRoot":"","sources":["../../../src/orchviz/plan/find-active-plan.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAeH,wBAAgB,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAiDjE"}