dorfl 0.0.0 → 0.1.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 (619) hide show
  1. package/dist/advance-ci-template.d.ts +73 -0
  2. package/dist/advance-ci-template.d.ts.map +1 -0
  3. package/dist/advance-ci-template.js +104 -0
  4. package/dist/advance-ci-template.js.map +1 -0
  5. package/dist/advance-classify.d.ts +132 -0
  6. package/dist/advance-classify.d.ts.map +1 -0
  7. package/dist/advance-classify.js +120 -0
  8. package/dist/advance-classify.js.map +1 -0
  9. package/dist/advance-drivers.d.ts +182 -0
  10. package/dist/advance-drivers.d.ts.map +1 -0
  11. package/dist/advance-drivers.js +231 -0
  12. package/dist/advance-drivers.js.map +1 -0
  13. package/dist/advance-isolated.d.ts +156 -0
  14. package/dist/advance-isolated.d.ts.map +1 -0
  15. package/dist/advance-isolated.js +256 -0
  16. package/dist/advance-isolated.js.map +1 -0
  17. package/dist/advance-lifecycle-template.d.ts +107 -0
  18. package/dist/advance-lifecycle-template.d.ts.map +1 -0
  19. package/dist/advance-lifecycle-template.js +668 -0
  20. package/dist/advance-lifecycle-template.js.map +1 -0
  21. package/dist/advance-loop-driver.d.ts +325 -0
  22. package/dist/advance-loop-driver.d.ts.map +1 -0
  23. package/dist/advance-loop-driver.js +437 -0
  24. package/dist/advance-loop-driver.js.map +1 -0
  25. package/dist/advance-treeless-publish.d.ts +108 -0
  26. package/dist/advance-treeless-publish.d.ts.map +1 -0
  27. package/dist/advance-treeless-publish.js +71 -0
  28. package/dist/advance-treeless-publish.js.map +1 -0
  29. package/dist/advance.d.ts +340 -0
  30. package/dist/advance.d.ts.map +1 -0
  31. package/dist/advance.js +1122 -0
  32. package/dist/advance.js.map +1 -0
  33. package/dist/advancing-lock.d.ts +294 -0
  34. package/dist/advancing-lock.d.ts.map +1 -0
  35. package/dist/advancing-lock.js +594 -0
  36. package/dist/advancing-lock.js.map +1 -0
  37. package/dist/agent-launch.d.ts +79 -0
  38. package/dist/agent-launch.d.ts.map +1 -0
  39. package/dist/agent-launch.js +61 -0
  40. package/dist/agent-launch.js.map +1 -0
  41. package/dist/agent-stop.d.ts +149 -0
  42. package/dist/agent-stop.d.ts.map +1 -0
  43. package/dist/agent-stop.js +307 -0
  44. package/dist/agent-stop.js.map +1 -0
  45. package/dist/apply-decide.d.ts +127 -0
  46. package/dist/apply-decide.d.ts.map +1 -0
  47. package/dist/apply-decide.js +176 -0
  48. package/dist/apply-decide.js.map +1 -0
  49. package/dist/apply-merge-action.d.ts +206 -0
  50. package/dist/apply-merge-action.d.ts.map +1 -0
  51. package/dist/apply-merge-action.js +307 -0
  52. package/dist/apply-merge-action.js.map +1 -0
  53. package/dist/apply-persist.d.ts +174 -0
  54. package/dist/apply-persist.d.ts.map +1 -0
  55. package/dist/apply-persist.js +359 -0
  56. package/dist/apply-persist.js.map +1 -0
  57. package/dist/arbiter.d.ts +120 -0
  58. package/dist/arbiter.d.ts.map +1 -0
  59. package/dist/arbiter.js +255 -0
  60. package/dist/arbiter.js.map +1 -0
  61. package/dist/brand.d.ts +70 -0
  62. package/dist/brand.d.ts.map +1 -0
  63. package/dist/brand.js +84 -0
  64. package/dist/brand.js.map +1 -0
  65. package/dist/buildable-body.d.ts +132 -0
  66. package/dist/buildable-body.d.ts.map +1 -0
  67. package/dist/buildable-body.js +131 -0
  68. package/dist/buildable-body.js.map +1 -0
  69. package/dist/categorise.d.ts +66 -0
  70. package/dist/categorise.d.ts.map +1 -0
  71. package/dist/categorise.js +106 -0
  72. package/dist/categorise.js.map +1 -0
  73. package/dist/claim-cas.d.ts +117 -0
  74. package/dist/claim-cas.d.ts.map +1 -0
  75. package/dist/claim-cas.js +312 -0
  76. package/dist/claim-cas.js.map +1 -0
  77. package/dist/cli-spinner.d.ts +112 -0
  78. package/dist/cli-spinner.d.ts.map +1 -0
  79. package/dist/cli-spinner.js +157 -0
  80. package/dist/cli-spinner.js.map +1 -0
  81. package/dist/cli.d.ts +11 -0
  82. package/dist/cli.d.ts.map +1 -0
  83. package/dist/cli.js +3094 -0
  84. package/dist/cli.js.map +1 -0
  85. package/dist/close-job-template.d.ts +70 -0
  86. package/dist/close-job-template.d.ts.map +1 -0
  87. package/dist/close-job-template.js +180 -0
  88. package/dist/close-job-template.js.map +1 -0
  89. package/dist/close-job.d.ts +95 -0
  90. package/dist/close-job.d.ts.map +1 -0
  91. package/dist/close-job.js +226 -0
  92. package/dist/close-job.js.map +1 -0
  93. package/dist/complete.d.ts +361 -0
  94. package/dist/complete.d.ts.map +1 -0
  95. package/dist/complete.js +885 -0
  96. package/dist/complete.js.map +1 -0
  97. package/dist/concurrency.d.ts +68 -0
  98. package/dist/concurrency.d.ts.map +1 -0
  99. package/dist/concurrency.js +112 -0
  100. package/dist/concurrency.js.map +1 -0
  101. package/dist/config-override.d.ts +76 -0
  102. package/dist/config-override.d.ts.map +1 -0
  103. package/dist/config-override.js +50 -0
  104. package/dist/config-override.js.map +1 -0
  105. package/dist/config.d.ts +668 -0
  106. package/dist/config.d.ts.map +1 -0
  107. package/dist/config.js +241 -0
  108. package/dist/config.js.map +1 -0
  109. package/dist/continue-branch.d.ts +249 -0
  110. package/dist/continue-branch.d.ts.map +1 -0
  111. package/dist/continue-branch.js +389 -0
  112. package/dist/continue-branch.js.map +1 -0
  113. package/dist/cwd-section.d.ts +186 -0
  114. package/dist/cwd-section.d.ts.map +1 -0
  115. package/dist/cwd-section.js +209 -0
  116. package/dist/cwd-section.js.map +1 -0
  117. package/dist/decision-engine.d.ts +170 -0
  118. package/dist/decision-engine.d.ts.map +1 -0
  119. package/dist/decision-engine.js +136 -0
  120. package/dist/decision-engine.js.map +1 -0
  121. package/dist/detect.d.ts +17 -0
  122. package/dist/detect.d.ts.map +1 -0
  123. package/dist/detect.js +118 -0
  124. package/dist/detect.js.map +1 -0
  125. package/dist/do-autopick.d.ts +85 -0
  126. package/dist/do-autopick.d.ts.map +1 -0
  127. package/dist/do-autopick.js +112 -0
  128. package/dist/do-autopick.js.map +1 -0
  129. package/dist/do-config.d.ts +312 -0
  130. package/dist/do-config.d.ts.map +1 -0
  131. package/dist/do-config.js +358 -0
  132. package/dist/do-config.js.map +1 -0
  133. package/dist/do-remote-auto.d.ts +75 -0
  134. package/dist/do-remote-auto.d.ts.map +1 -0
  135. package/dist/do-remote-auto.js +111 -0
  136. package/dist/do-remote-auto.js.map +1 -0
  137. package/dist/do.d.ts +621 -0
  138. package/dist/do.d.ts.map +1 -0
  139. package/dist/do.js +1882 -0
  140. package/dist/do.js.map +1 -0
  141. package/dist/drop-source.d.ts +96 -0
  142. package/dist/drop-source.d.ts.map +1 -0
  143. package/dist/drop-source.js +91 -0
  144. package/dist/drop-source.js.map +1 -0
  145. package/dist/eligibility.d.ts +46 -0
  146. package/dist/eligibility.d.ts.map +1 -0
  147. package/dist/eligibility.js +34 -0
  148. package/dist/eligibility.js.map +1 -0
  149. package/dist/env-config.d.ts +51 -0
  150. package/dist/env-config.d.ts.map +1 -0
  151. package/dist/env-config.js +272 -0
  152. package/dist/env-config.js.map +1 -0
  153. package/dist/failure-cause.d.ts +70 -0
  154. package/dist/failure-cause.d.ts.map +1 -0
  155. package/dist/failure-cause.js +126 -0
  156. package/dist/failure-cause.js.map +1 -0
  157. package/dist/format.d.ts +43 -0
  158. package/dist/format.d.ts.map +1 -0
  159. package/dist/format.js +256 -0
  160. package/dist/format.js.map +1 -0
  161. package/dist/frontmatter.d.ts +215 -0
  162. package/dist/frontmatter.d.ts.map +1 -0
  163. package/dist/frontmatter.js +345 -0
  164. package/dist/frontmatter.js.map +1 -0
  165. package/dist/gate-readiness.d.ts +84 -0
  166. package/dist/gate-readiness.d.ts.map +1 -0
  167. package/dist/gate-readiness.js +103 -0
  168. package/dist/gate-readiness.js.map +1 -0
  169. package/dist/gc.d.ts +165 -0
  170. package/dist/gc.d.ts.map +1 -0
  171. package/dist/gc.js +313 -0
  172. package/dist/gc.js.map +1 -0
  173. package/dist/gh-failure.d.ts +42 -0
  174. package/dist/gh-failure.d.ts.map +1 -0
  175. package/dist/gh-failure.js +49 -0
  176. package/dist/gh-failure.js.map +1 -0
  177. package/dist/git.d.ts +75 -0
  178. package/dist/git.d.ts.map +1 -0
  179. package/dist/git.js +130 -0
  180. package/dist/git.js.map +1 -0
  181. package/dist/github.d.ts +187 -0
  182. package/dist/github.d.ts.map +1 -0
  183. package/dist/github.js +343 -0
  184. package/dist/github.js.map +1 -0
  185. package/dist/harness.d.ts +242 -0
  186. package/dist/harness.d.ts.map +1 -0
  187. package/dist/harness.js +157 -0
  188. package/dist/harness.js.map +1 -0
  189. package/dist/identity.d.ts +167 -0
  190. package/dist/identity.d.ts.map +1 -0
  191. package/dist/identity.js +231 -0
  192. package/dist/identity.js.map +1 -0
  193. package/dist/index.d.ts +147 -0
  194. package/dist/index.d.ts.map +1 -0
  195. package/dist/index.js +76 -0
  196. package/dist/index.js.map +1 -0
  197. package/dist/install-ci-branch-protection.d.ts +147 -0
  198. package/dist/install-ci-branch-protection.d.ts.map +1 -0
  199. package/dist/install-ci-branch-protection.js +166 -0
  200. package/dist/install-ci-branch-protection.js.map +1 -0
  201. package/dist/install-ci-capabilities/advance-lifecycle.d.ts +15 -0
  202. package/dist/install-ci-capabilities/advance-lifecycle.d.ts.map +1 -0
  203. package/dist/install-ci-capabilities/advance-lifecycle.js +28 -0
  204. package/dist/install-ci-capabilities/advance-lifecycle.js.map +1 -0
  205. package/dist/install-ci-capabilities/close-job.d.ts +13 -0
  206. package/dist/install-ci-capabilities/close-job.d.ts.map +1 -0
  207. package/dist/install-ci-capabilities/close-job.js +26 -0
  208. package/dist/install-ci-capabilities/close-job.js.map +1 -0
  209. package/dist/install-ci-capabilities/example-noop.d.ts +16 -0
  210. package/dist/install-ci-capabilities/example-noop.d.ts.map +1 -0
  211. package/dist/install-ci-capabilities/example-noop.js +23 -0
  212. package/dist/install-ci-capabilities/example-noop.js.map +1 -0
  213. package/dist/install-ci-capabilities/intake.d.ts +15 -0
  214. package/dist/install-ci-capabilities/intake.d.ts.map +1 -0
  215. package/dist/install-ci-capabilities/intake.js +28 -0
  216. package/dist/install-ci-capabilities/intake.js.map +1 -0
  217. package/dist/install-ci-capabilities/verify.d.ts +14 -0
  218. package/dist/install-ci-capabilities/verify.d.ts.map +1 -0
  219. package/dist/install-ci-capabilities/verify.js +27 -0
  220. package/dist/install-ci-capabilities/verify.js.map +1 -0
  221. package/dist/install-ci-core.d.ts +446 -0
  222. package/dist/install-ci-core.d.ts.map +1 -0
  223. package/dist/install-ci-core.js +760 -0
  224. package/dist/install-ci-core.js.map +1 -0
  225. package/dist/install-ci-github.d.ts +167 -0
  226. package/dist/install-ci-github.d.ts.map +1 -0
  227. package/dist/install-ci-github.js +315 -0
  228. package/dist/install-ci-github.js.map +1 -0
  229. package/dist/install-ci.d.ts +105 -0
  230. package/dist/install-ci.d.ts.map +1 -0
  231. package/dist/install-ci.js +363 -0
  232. package/dist/install-ci.js.map +1 -0
  233. package/dist/intake-event.d.ts +88 -0
  234. package/dist/intake-event.d.ts.map +1 -0
  235. package/dist/intake-event.js +66 -0
  236. package/dist/intake-event.js.map +1 -0
  237. package/dist/intake-marker.d.ts +95 -0
  238. package/dist/intake-marker.d.ts.map +1 -0
  239. package/dist/intake-marker.js +127 -0
  240. package/dist/intake-marker.js.map +1 -0
  241. package/dist/intake-triage.d.ts +48 -0
  242. package/dist/intake-triage.d.ts.map +1 -0
  243. package/dist/intake-triage.js +95 -0
  244. package/dist/intake-triage.js.map +1 -0
  245. package/dist/intake-trigger-template.d.ts +185 -0
  246. package/dist/intake-trigger-template.d.ts.map +1 -0
  247. package/dist/intake-trigger-template.js +449 -0
  248. package/dist/intake-trigger-template.js.map +1 -0
  249. package/dist/intake.d.ts +569 -0
  250. package/dist/intake.d.ts.map +1 -0
  251. package/dist/intake.js +1628 -0
  252. package/dist/intake.js.map +1 -0
  253. package/dist/integration-core.d.ts +539 -0
  254. package/dist/integration-core.d.ts.map +1 -0
  255. package/dist/integration-core.js +2195 -0
  256. package/dist/integration-core.js.map +1 -0
  257. package/dist/integrator.d.ts +343 -0
  258. package/dist/integrator.d.ts.map +1 -0
  259. package/dist/integrator.js +400 -0
  260. package/dist/integrator.js.map +1 -0
  261. package/dist/isolation.d.ts +219 -0
  262. package/dist/isolation.d.ts.map +1 -0
  263. package/dist/isolation.js +261 -0
  264. package/dist/isolation.js.map +1 -0
  265. package/dist/issue-provider.d.ts +349 -0
  266. package/dist/issue-provider.d.ts.map +1 -0
  267. package/dist/issue-provider.js +360 -0
  268. package/dist/issue-provider.js.map +1 -0
  269. package/dist/item-lock.d.ts +626 -0
  270. package/dist/item-lock.d.ts.map +1 -0
  271. package/dist/item-lock.js +1381 -0
  272. package/dist/item-lock.js.map +1 -0
  273. package/dist/item-path.d.ts +49 -0
  274. package/dist/item-path.d.ts.map +1 -0
  275. package/dist/item-path.js +66 -0
  276. package/dist/item-path.js.map +1 -0
  277. package/dist/ledger-lint.d.ts +129 -0
  278. package/dist/ledger-lint.d.ts.map +1 -0
  279. package/dist/ledger-lint.js +249 -0
  280. package/dist/ledger-lint.js.map +1 -0
  281. package/dist/ledger-read.d.ts +357 -0
  282. package/dist/ledger-read.d.ts.map +1 -0
  283. package/dist/ledger-read.js +442 -0
  284. package/dist/ledger-read.js.map +1 -0
  285. package/dist/ledger-write.d.ts +330 -0
  286. package/dist/ledger-write.d.ts.map +1 -0
  287. package/dist/ledger-write.js +411 -0
  288. package/dist/ledger-write.js.map +1 -0
  289. package/dist/lifecycle-gather.d.ts +30 -0
  290. package/dist/lifecycle-gather.d.ts.map +1 -0
  291. package/dist/lifecycle-gather.js +205 -0
  292. package/dist/lifecycle-gather.js.map +1 -0
  293. package/dist/lifecycle-pools.d.ts +180 -0
  294. package/dist/lifecycle-pools.d.ts.map +1 -0
  295. package/dist/lifecycle-pools.js +78 -0
  296. package/dist/lifecycle-pools.js.map +1 -0
  297. package/dist/merge-question-surfacer.d.ts +166 -0
  298. package/dist/merge-question-surfacer.d.ts.map +1 -0
  299. package/dist/merge-question-surfacer.js +297 -0
  300. package/dist/merge-question-surfacer.js.map +1 -0
  301. package/dist/mint-adr.d.ts +126 -0
  302. package/dist/mint-adr.d.ts.map +1 -0
  303. package/dist/mint-adr.js +257 -0
  304. package/dist/mint-adr.js.map +1 -0
  305. package/dist/mirror-pool-scan.d.ts +125 -0
  306. package/dist/mirror-pool-scan.d.ts.map +1 -0
  307. package/dist/mirror-pool-scan.js +104 -0
  308. package/dist/mirror-pool-scan.js.map +1 -0
  309. package/dist/needs-attention.d.ts +341 -0
  310. package/dist/needs-attention.d.ts.map +1 -0
  311. package/dist/needs-attention.js +900 -0
  312. package/dist/needs-attention.js.map +1 -0
  313. package/dist/orphan-sidecar.d.ts +79 -0
  314. package/dist/orphan-sidecar.d.ts.map +1 -0
  315. package/dist/orphan-sidecar.js +71 -0
  316. package/dist/orphan-sidecar.js.map +1 -0
  317. package/dist/output.d.ts +48 -0
  318. package/dist/output.d.ts.map +1 -0
  319. package/dist/output.js +66 -0
  320. package/dist/output.js.map +1 -0
  321. package/dist/pi-harness.d.ts +179 -0
  322. package/dist/pi-harness.d.ts.map +1 -0
  323. package/dist/pi-harness.js +342 -0
  324. package/dist/pi-harness.js.map +1 -0
  325. package/dist/placement.d.ts +99 -0
  326. package/dist/placement.d.ts.map +1 -0
  327. package/dist/placement.js +67 -0
  328. package/dist/placement.js.map +1 -0
  329. package/dist/prd-to-spec.d.ts +315 -0
  330. package/dist/prd-to-spec.d.ts.map +1 -0
  331. package/dist/prd-to-spec.js +684 -0
  332. package/dist/prd-to-spec.js.map +1 -0
  333. package/dist/prepare.d.ts +121 -0
  334. package/dist/prepare.d.ts.map +1 -0
  335. package/dist/prepare.js +140 -0
  336. package/dist/prepare.js.map +1 -0
  337. package/dist/prompt.d.ts +360 -0
  338. package/dist/prompt.d.ts.map +1 -0
  339. package/dist/prompt.js +499 -0
  340. package/dist/prompt.js.map +1 -0
  341. package/dist/protocol/ADR-FORMAT.md +47 -0
  342. package/dist/protocol/CLAIM-PROTOCOL.md +217 -0
  343. package/dist/protocol/REVIEW-PROTOCOL.md +119 -0
  344. package/dist/protocol/SURFACE-PROTOCOL.md +121 -0
  345. package/dist/protocol/TASKING-PROTOCOL.md +122 -0
  346. package/dist/protocol/WORK-CONTRACT.md +276 -0
  347. package/dist/protocol/spec-template.md +71 -0
  348. package/dist/protocol/task-template.md +65 -0
  349. package/dist/readiness.d.ts +66 -0
  350. package/dist/readiness.d.ts.map +1 -0
  351. package/dist/readiness.js +36 -0
  352. package/dist/readiness.js.map +1 -0
  353. package/dist/reap-branches.d.ts +102 -0
  354. package/dist/reap-branches.d.ts.map +1 -0
  355. package/dist/reap-branches.js +149 -0
  356. package/dist/reap-branches.js.map +1 -0
  357. package/dist/recover-isolated.d.ts +72 -0
  358. package/dist/recover-isolated.d.ts.map +1 -0
  359. package/dist/recover-isolated.js +188 -0
  360. package/dist/recover-isolated.js.map +1 -0
  361. package/dist/registry.d.ts +172 -0
  362. package/dist/registry.d.ts.map +1 -0
  363. package/dist/registry.js +296 -0
  364. package/dist/registry.js.map +1 -0
  365. package/dist/repo-config.d.ts +201 -0
  366. package/dist/repo-config.d.ts.map +1 -0
  367. package/dist/repo-config.js +414 -0
  368. package/dist/repo-config.js.map +1 -0
  369. package/dist/repo-key.d.ts +20 -0
  370. package/dist/repo-key.d.ts.map +1 -0
  371. package/dist/repo-key.js +68 -0
  372. package/dist/repo-key.js.map +1 -0
  373. package/dist/repo-mirror.d.ts +177 -0
  374. package/dist/repo-mirror.d.ts.map +1 -0
  375. package/dist/repo-mirror.js +271 -0
  376. package/dist/repo-mirror.js.map +1 -0
  377. package/dist/retry-backoff.d.ts +90 -0
  378. package/dist/retry-backoff.d.ts.map +1 -0
  379. package/dist/retry-backoff.js +98 -0
  380. package/dist/retry-backoff.js.map +1 -0
  381. package/dist/review-gate.d.ts +173 -0
  382. package/dist/review-gate.d.ts.map +1 -0
  383. package/dist/review-gate.js +261 -0
  384. package/dist/review-gate.js.map +1 -0
  385. package/dist/review-verdict.d.ts +149 -0
  386. package/dist/review-verdict.d.ts.map +1 -0
  387. package/dist/review-verdict.js +332 -0
  388. package/dist/review-verdict.js.map +1 -0
  389. package/dist/run.d.ts +221 -0
  390. package/dist/run.d.ts.map +1 -0
  391. package/dist/run.js +963 -0
  392. package/dist/run.js.map +1 -0
  393. package/dist/scan.d.ts +308 -0
  394. package/dist/scan.d.ts.map +1 -0
  395. package/dist/scan.js +374 -0
  396. package/dist/scan.js.map +1 -0
  397. package/dist/select-order.d.ts +75 -0
  398. package/dist/select-order.d.ts.map +1 -0
  399. package/dist/select-order.js +108 -0
  400. package/dist/select-order.js.map +1 -0
  401. package/dist/select-priority.d.ts +188 -0
  402. package/dist/select-priority.d.ts.map +1 -0
  403. package/dist/select-priority.js +80 -0
  404. package/dist/select-priority.js.map +1 -0
  405. package/dist/select.d.ts +25 -0
  406. package/dist/select.d.ts.map +1 -0
  407. package/dist/select.js +43 -0
  408. package/dist/select.js.map +1 -0
  409. package/dist/session-path.d.ts +36 -0
  410. package/dist/session-path.d.ts.map +1 -0
  411. package/dist/session-path.js +129 -0
  412. package/dist/session-path.js.map +1 -0
  413. package/dist/sidecar-apply.d.ts +83 -0
  414. package/dist/sidecar-apply.d.ts.map +1 -0
  415. package/dist/sidecar-apply.js +111 -0
  416. package/dist/sidecar-apply.js.map +1 -0
  417. package/dist/sidecar.d.ts +245 -0
  418. package/dist/sidecar.d.ts.map +1 -0
  419. package/dist/sidecar.js +481 -0
  420. package/dist/sidecar.js.map +1 -0
  421. package/dist/slug-namespace.d.ts +204 -0
  422. package/dist/slug-namespace.d.ts.map +1 -0
  423. package/dist/slug-namespace.js +229 -0
  424. package/dist/slug-namespace.js.map +1 -0
  425. package/dist/spec-complete.d.ts +44 -0
  426. package/dist/spec-complete.d.ts.map +1 -0
  427. package/dist/spec-complete.js +69 -0
  428. package/dist/spec-complete.js.map +1 -0
  429. package/dist/start.d.ts +97 -0
  430. package/dist/start.d.ts.map +1 -0
  431. package/dist/start.js +633 -0
  432. package/dist/start.js.map +1 -0
  433. package/dist/status.d.ts +199 -0
  434. package/dist/status.d.ts.map +1 -0
  435. package/dist/status.js +228 -0
  436. package/dist/status.js.map +1 -0
  437. package/dist/surface-gate.d.ts +162 -0
  438. package/dist/surface-gate.d.ts.map +1 -0
  439. package/dist/surface-gate.js +206 -0
  440. package/dist/surface-gate.js.map +1 -0
  441. package/dist/surface-persist.d.ts +86 -0
  442. package/dist/surface-persist.d.ts.map +1 -0
  443. package/dist/surface-persist.js +129 -0
  444. package/dist/surface-persist.js.map +1 -0
  445. package/dist/tasker-review-loop.d.ts +249 -0
  446. package/dist/tasker-review-loop.d.ts.map +1 -0
  447. package/dist/tasker-review-loop.js +369 -0
  448. package/dist/tasker-review-loop.js.map +1 -0
  449. package/dist/tasking-eligibility.d.ts +74 -0
  450. package/dist/tasking-eligibility.d.ts.map +1 -0
  451. package/dist/tasking-eligibility.js +52 -0
  452. package/dist/tasking-eligibility.js.map +1 -0
  453. package/dist/tasking-lock.d.ts +111 -0
  454. package/dist/tasking-lock.d.ts.map +1 -0
  455. package/dist/tasking-lock.js +256 -0
  456. package/dist/tasking-lock.js.map +1 -0
  457. package/dist/tasking.d.ts +275 -0
  458. package/dist/tasking.d.ts.map +1 -0
  459. package/dist/tasking.js +952 -0
  460. package/dist/tasking.js.map +1 -0
  461. package/dist/triage-gate.d.ts +127 -0
  462. package/dist/triage-gate.d.ts.map +1 -0
  463. package/dist/triage-gate.js +139 -0
  464. package/dist/triage-gate.js.map +1 -0
  465. package/dist/triage-persist.d.ts +163 -0
  466. package/dist/triage-persist.d.ts.map +1 -0
  467. package/dist/triage-persist.js +387 -0
  468. package/dist/triage-persist.js.map +1 -0
  469. package/dist/verdict-json.d.ts +32 -0
  470. package/dist/verdict-json.d.ts.map +1 -0
  471. package/dist/verdict-json.js +74 -0
  472. package/dist/verdict-json.js.map +1 -0
  473. package/dist/verify-workflow-template.d.ts +60 -0
  474. package/dist/verify-workflow-template.d.ts.map +1 -0
  475. package/dist/verify-workflow-template.js +126 -0
  476. package/dist/verify-workflow-template.js.map +1 -0
  477. package/dist/verify.d.ts +60 -0
  478. package/dist/verify.d.ts.map +1 -0
  479. package/dist/verify.js +62 -0
  480. package/dist/verify.js.map +1 -0
  481. package/dist/watch-session.d.ts +112 -0
  482. package/dist/watch-session.d.ts.map +1 -0
  483. package/dist/watch-session.js +347 -0
  484. package/dist/watch-session.js.map +1 -0
  485. package/dist/work-layout.d.ts +198 -0
  486. package/dist/work-layout.d.ts.map +1 -0
  487. package/dist/work-layout.js +217 -0
  488. package/dist/work-layout.js.map +1 -0
  489. package/dist/work-on.d.ts +154 -0
  490. package/dist/work-on.d.ts.map +1 -0
  491. package/dist/work-on.js +387 -0
  492. package/dist/work-on.js.map +1 -0
  493. package/dist/workspace.d.ts +224 -0
  494. package/dist/workspace.d.ts.map +1 -0
  495. package/dist/workspace.js +325 -0
  496. package/dist/workspace.js.map +1 -0
  497. package/package.json +46 -2
  498. package/src/advance-ci-template.ts +203 -0
  499. package/src/advance-classify.ts +197 -0
  500. package/src/advance-drivers.ts +414 -0
  501. package/src/advance-isolated.ts +432 -0
  502. package/src/advance-lifecycle-template.ts +791 -0
  503. package/src/advance-loop-driver.ts +745 -0
  504. package/src/advance-treeless-publish.ts +177 -0
  505. package/src/advance.ts +1564 -0
  506. package/src/advancing-lock.ts +988 -0
  507. package/src/agent-launch.ts +137 -0
  508. package/src/agent-stop.ts +361 -0
  509. package/src/apply-decide.ts +242 -0
  510. package/src/apply-merge-action.ts +502 -0
  511. package/src/apply-persist.ts +518 -0
  512. package/src/arbiter.ts +372 -0
  513. package/src/brand.ts +111 -0
  514. package/src/buildable-body.ts +196 -0
  515. package/src/categorise.ts +158 -0
  516. package/src/claim-cas.ts +513 -0
  517. package/src/cli-spinner.ts +225 -0
  518. package/src/cli.ts +4369 -0
  519. package/src/close-job-template.ts +236 -0
  520. package/src/close-job.ts +319 -0
  521. package/src/complete.ts +1379 -0
  522. package/src/concurrency.ts +151 -0
  523. package/src/config-override.ts +116 -0
  524. package/src/config.ts +883 -0
  525. package/src/continue-branch.ts +542 -0
  526. package/src/cwd-section.ts +392 -0
  527. package/src/decision-engine.ts +272 -0
  528. package/src/detect.ts +124 -0
  529. package/src/do-autopick.ts +223 -0
  530. package/src/do-config.ts +589 -0
  531. package/src/do-remote-auto.ts +197 -0
  532. package/src/do.ts +2623 -0
  533. package/src/drop-source.ts +194 -0
  534. package/src/eligibility.ts +79 -0
  535. package/src/env-config.ts +305 -0
  536. package/src/failure-cause.ts +142 -0
  537. package/src/format.ts +313 -0
  538. package/src/frontmatter.ts +485 -0
  539. package/src/gate-readiness.ts +147 -0
  540. package/src/gc.ts +510 -0
  541. package/src/gh-failure.ts +53 -0
  542. package/src/git.ts +186 -0
  543. package/src/github.ts +468 -0
  544. package/src/harness.ts +355 -0
  545. package/src/identity.ts +322 -0
  546. package/src/index.ts +785 -0
  547. package/src/install-ci-branch-protection.ts +255 -0
  548. package/src/install-ci-capabilities/advance-lifecycle.ts +34 -0
  549. package/src/install-ci-capabilities/close-job.ts +32 -0
  550. package/src/install-ci-capabilities/example-noop.ts +24 -0
  551. package/src/install-ci-capabilities/intake.ts +34 -0
  552. package/src/install-ci-capabilities/verify.ts +33 -0
  553. package/src/install-ci-core.ts +1088 -0
  554. package/src/install-ci-github.ts +376 -0
  555. package/src/install-ci.ts +552 -0
  556. package/src/intake-event.ts +102 -0
  557. package/src/intake-marker.ts +195 -0
  558. package/src/intake-triage.ts +138 -0
  559. package/src/intake-trigger-template.ts +591 -0
  560. package/src/intake.ts +2445 -0
  561. package/src/integration-core.ts +3065 -0
  562. package/src/integrator.ts +771 -0
  563. package/src/isolation.ts +484 -0
  564. package/src/issue-provider.ts +733 -0
  565. package/src/item-lock.ts +1858 -0
  566. package/src/item-path.ts +75 -0
  567. package/src/ledger-lint.ts +332 -0
  568. package/src/ledger-read.ts +924 -0
  569. package/src/ledger-write.ts +865 -0
  570. package/src/lifecycle-gather.ts +298 -0
  571. package/src/lifecycle-pools.ts +250 -0
  572. package/src/merge-question-surfacer.ts +496 -0
  573. package/src/mint-adr.ts +362 -0
  574. package/src/mirror-pool-scan.ts +240 -0
  575. package/src/needs-attention.ts +1506 -0
  576. package/src/orphan-sidecar.ts +150 -0
  577. package/src/output.ts +89 -0
  578. package/src/pi-harness.ts +403 -0
  579. package/src/placement.ts +131 -0
  580. package/src/prd-to-spec.ts +1023 -0
  581. package/src/prepare.ts +230 -0
  582. package/src/prompt.ts +760 -0
  583. package/src/readiness.ts +98 -0
  584. package/src/reap-branches.ts +278 -0
  585. package/src/recover-isolated.ts +276 -0
  586. package/src/registry.ts +475 -0
  587. package/src/repo-config.ts +550 -0
  588. package/src/repo-key.ts +74 -0
  589. package/src/repo-mirror.ts +367 -0
  590. package/src/retry-backoff.ts +130 -0
  591. package/src/review-gate.ts +389 -0
  592. package/src/review-verdict.ts +422 -0
  593. package/src/run.ts +1430 -0
  594. package/src/scan.ts +611 -0
  595. package/src/select-order.ts +143 -0
  596. package/src/select-priority.ts +266 -0
  597. package/src/select.ts +62 -0
  598. package/src/session-path.ts +153 -0
  599. package/src/sidecar-apply.ts +216 -0
  600. package/src/sidecar.ts +700 -0
  601. package/src/slug-namespace.ts +367 -0
  602. package/src/spec-complete.ts +118 -0
  603. package/src/start.ts +974 -0
  604. package/src/status.ts +441 -0
  605. package/src/surface-gate.ts +337 -0
  606. package/src/surface-persist.ts +241 -0
  607. package/src/tasker-review-loop.ts +671 -0
  608. package/src/tasking-eligibility.ts +114 -0
  609. package/src/tasking-lock.ts +416 -0
  610. package/src/tasking.ts +1438 -0
  611. package/src/triage-gate.ts +248 -0
  612. package/src/triage-persist.ts +570 -0
  613. package/src/verdict-json.ts +73 -0
  614. package/src/verify-workflow-template.ts +159 -0
  615. package/src/verify.ts +123 -0
  616. package/src/watch-session.ts +397 -0
  617. package/src/work-layout.ts +262 -0
  618. package/src/work-on.ts +660 -0
  619. package/src/workspace.ts +502 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-lock.js","sourceRoot":"","sources":["../src/item-lock.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,aAAa,CAAC;AACvC,OAAO,EAAC,QAAQ,EAAiB,MAAM,UAAU,CAAC;AAClD,OAAO,EAAC,sBAAsB,EAAmB,MAAM,cAAc,CAAC;AACtE,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAE7C;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+CG;AAEH;;;yBAGyB;AACzB,MAAM,CAAC,MAAM,eAAe,GAAG,iBAAiB,CAAC;AAEjD;;;;;;;;GAQG;AACH,MAAM,UAAU,YAAY,CAAC,IAAY;IACxC,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAClD,OAAO,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC;AAC1B,CAAC;AAED,mEAAmE;AACnE,MAAM,UAAU,WAAW,CAAC,KAAa;IACxC,OAAO,GAAG,eAAe,IAAI,KAAK,EAAE,CAAC;AACtC,CAAC;AAuFD,SAAS,OAAO,CACf,IAAc,EACd,GAAW,EACX,GAAkC;IAElC,OAAO,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,GAAG,EAAC,CAAC,CAAC;AAC1C,CAAC;AACD,KAAK,UAAU,OAAO,CACrB,IAAc,EACd,GAAW,EACX,GAAkC;IAElC,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,GAAG,EAAC,CAAC,CAAC;IAClD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACd,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CACrE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC;AAED,gFAAgF;AAChF,MAAM,mBAAmB,GAAG,WAAW,CAAC;AACxC,qEAAqE;AACrE,MAAM,sBAAsB,GAAG,cAAc,CAAC;AAE9C;;;;;;;;;GASG;AACH,MAAM,UAAU,kBAAkB,CAAC,CAAY;IAC9C,MAAM,KAAK,GAAG;QACb,KAAK;QACL,UAAU,CAAC,CAAC,KAAK,EAAE;QACnB,WAAW,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,CAAC,CAAC,KAAK,EAAE;QACnB,WAAW,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,CAAC,CAAC,KAAK,EAAE;QACnB,KAAK;QACL,EAAE;QACF,mBAAmB,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,MAAM,IAAI,CAAC,CAAC,KAAK,IAAI;KACxD,CAAC;IACF,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;QACrC,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,mBAAmB,EAAE,EAAE,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;IAClE,CAAC;IACD,IAAI,CAAC,CAAC,KAAK,KAAK,OAAO,IAAI,CAAC,CAAC,SAAS,IAAI,CAAC,CAAC,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAClE,KAAK,CAAC,IAAI,CAAC,EAAE,EAAE,sBAAsB,EAAE,EAAE,CAAC,CAAC;QAC3C,KAAK,MAAM,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,CAAC;YAC7B,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;QACtB,CAAC;IACF,CAAC;IACD,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACf,OAAO,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACzB,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,eAAe,CAC7B,KAAgB,EAChB,GAAW,EACX,GAAkC;IAElC,MAAM,IAAI,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,CACZ,MAAM,YAAY,CAAC,CAAC,aAAa,EAAE,IAAI,EAAE,SAAS,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,IAAI,CAAC,CACpE,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,wCAAwC;IACxC,MAAM,SAAS,GAAG,eAAe,IAAI,aAAa,CAAC;IACnD,MAAM,IAAI,GAAG,CACZ,MAAM,YAAY,CAAC,CAAC,QAAQ,CAAC,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,CAAC,CACnD,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,MAAM,OAAO,GAAG,SAAS,KAAK,CAAC,KAAK,KAAK,KAAK,CAAC,MAAM,IAAI,KAAK,CAAC,KAAK,GAAG,CAAC;IACxE,wEAAwE;IACxE,MAAM,MAAM,GAAG,CACd,MAAM,OAAO,CAAC,CAAC,aAAa,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAC7D,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAChB,OAAO,MAAM,CAAC;AACf,CAAC;AAED,8EAA8E;AAC9E,KAAK,UAAU,YAAY,CAC1B,IAAc,EACd,GAAW,EACX,GAAkC,EAClC,KAAa;IAEb,MAAM,CAAC,GAAG,MAAM,QAAQ,CAAC,KAAK,EAAE,IAAI,EAAE,GAAG,EAAE,EAAC,GAAG,EAAE,KAAK,EAAC,CAAC,CAAC;IACzD,IAAI,CAAC,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpB,MAAM,IAAI,KAAK,CACd,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC,MAAM,MAAM,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CACrE,CAAC;IACH,CAAC;IACD,OAAO,CAAC,CAAC;AACV,CAAC;AAeD;;;;;;;GAOG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,gEAAgE;QAChE,MAAM,OAAO,CACZ;YACC,OAAO;YACP,SAAS;YACT,OAAO;YACP,IAAI,eAAe,MAAM,eAAe,IAAI;SAC5C,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,IAAI,CAAC,MAAM,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC;QAC9D,MAAM,MAAM,GAAG,MAAM,eAAe,CACnC;YACC,KAAK;YACL,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,KAAK,EAAE,QAAQ;YACf,MAAM;YACN,KAAK,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;SAC/B,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,+EAA+E;QAC/E,MAAM,IAAI,GAAG,MAAM,OAAO,CACzB,CAAC,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,IAAI,GAAG,EAAE,EAAE,sBAAsB,GAAG,GAAG,CAAC,EACnE,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACvB,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,UAAU,KAAK,EAAE,EAAC,CAAC;QACtE,CAAC;QACD,wEAAwE;QACxE,OAAO;YACN,OAAO,EAAE,MAAM;YACf,KAAK;YACL,GAAG;YACH,OAAO,EAAE,IAAI,KAAK,kDAAkD;SACpE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAUD;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,MAAM,OAAO,CACZ;YACC,OAAO;YACP,SAAS;YACT,OAAO;YACP,IAAI,eAAe,MAAM,eAAe,IAAI;SAC5C,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,MAAM,IAAI,GACT,CAAC,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aAClE,MAAM,KAAK,CAAC,CAAC;QAChB,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,UAAU;gBACnB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,cAAc;aAChC,CAAC;QACH,CAAC;QACD,6EAA6E;QAC7E,sDAAsD;QACtD,MAAM,GAAG,GAAG,CAAC,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;QACxE,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB,CAAC,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,sBAAsB,GAAG,IAAI,GAAG,EAAE,CAAC,EACtE,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,oDAAoD;YACpD,MAAM,OAAO,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACnD,OAAO,EAAC,OAAO,EAAE,UAAU,EAAE,KAAK,EAAE,GAAG,EAAE,OAAO,EAAE,YAAY,KAAK,EAAE,EAAC,CAAC;QACxE,CAAC;QACD,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,0BAA0B,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE;SACtD,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAeD;;;;;;;;;;;;;;;;;;GAkBG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,IAAoB;IAEpB,MAAM,GAAG,GAAG,MAAM,eAAe,CAAC,IAAI,CAAC,CAAC;IACxC,IAAI,GAAG,CAAC,OAAO,KAAK,UAAU,EAAE,CAAC;QAChC,OAAO;YACN,OAAO,EAAE,UAAU;YACnB,KAAK,EAAE,GAAG,CAAC,KAAK;YAChB,GAAG,EAAE,GAAG,CAAC,GAAG;YACZ,OAAO,EAAE,IAAI,GAAG,CAAC,KAAK,iJAAiJ;SACvK,CAAC;IACH,CAAC;IACD,OAAO;QACN,OAAO,EAAE,GAAG,CAAC,OAAO;QACpB,KAAK,EAAE,GAAG,CAAC,KAAK;QAChB,GAAG,EAAE,GAAG,CAAC,GAAG;QACZ,OAAO,EAAE,GAAG,CAAC,OAAO;KACpB,CAAC;AACH,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,cAAc,CAC5B,KAAa,EACb,GAAW,EACX,GAAW,EACX,OAAe,EACf,GAAkC;IAElC,MAAM,OAAO,CACZ,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,eAAe,MAAM,eAAe,IAAI,CAAC,EAC3E,GAAG,EACH,GAAG,CACH,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB,CAAC,WAAW,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,CAAC,EACzC,GAAG,EACH,GAAG,CACH,CAAC;IACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,IAAI,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAClD,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,GAAG,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC9B,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACjE,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;IACzE,IAAI,CAAC,IAAI,EAAE,CAAC;QACX,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,EAAC,IAAI,EAAE,GAAG,EAAC,CAAC;AACpB,CAAC;AAED;;;;;;GAMG;AACH,KAAK,UAAU,cAAc,CAC5B,IAAe,EACf,GAAW,EACX,WAAmB,EACnB,GAAW,EACX,OAAe,EACf,GAAkC;IAElC,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACrD,MAAM,IAAI,GAAG,MAAM,OAAO,CACzB;QACC,MAAM;QACN,OAAO;QACP,GAAG,MAAM,IAAI,GAAG,EAAE;QAClB,sBAAsB,GAAG,IAAI,WAAW,EAAE;KAC1C,EACD,GAAG,EACH,GAAG,CACH,CAAC;IACF,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,0EAA0E;QAC1E,mEAAmE;QACnE,MAAM,OAAO,CAAC,CAAC,YAAY,EAAE,GAAG,EAAE,MAAM,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACrD,OAAO;YACN,OAAO,EAAE,cAAc;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,GAAG;YACH,OAAO,EAAE,GAAG,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,EAAE;YACvD,IAAI,EAAE,IAAI;SACV,CAAC;IACH,CAAC;IACD,OAAO;QACN,OAAO,EAAE,MAAM;QACf,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,GAAG;QACH,OAAO,EAAE,IAAI,IAAI,CAAC,KAAK,mDAAmD;KAC1E,CAAC;AACH,CAAC;AAOD;;;;;;;;;;GAUG;AACH,KAAK,UAAU,mBAAmB,CACjC,GAAW,EACX,WAAmB,EACnB,GAAW,EACX,OAAe,EACf,GAAkC;IAElC,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB;QACC,MAAM;QACN,OAAO;QACP,UAAU;QACV,GAAG;QACH,sBAAsB,GAAG,IAAI,WAAW,EAAE;KAC1C,EACD,GAAG,EACH,GAAG,CACH,CAAC;IACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,MAAM,CAAC;IACf,CAAC;IACD,+EAA+E;IAC/E,gDAAgD;IAChD,MAAM,OAAO,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACnD,OAAO,SAAS,CAAC;AAClB,CAAC;AAmBD;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACtC,IAAsB;IAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QAC/C,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,iDAAiD;SAC1D,CAAC;IACH,CAAC;IACD,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,UAAU;gBACnB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,cAAc;aAChC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,QAAQ,EAAE,CAAC;YAClC,OAAO;gBACN,OAAO,EAAE,aAAa;gBACtB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,iCAAiC;aAC1E,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAc;YACvB,GAAG,IAAI,CAAC,IAAI;YACZ,KAAK,EAAE,OAAO;YACd,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE;SAC1B,CAAC;QACF,MAAM,SAAS,GAAG,CAAC,IAAI,CAAC,SAAS,IAAI,EAAE,CAAC;aACtC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,EAAE,CAAC,CAAC;QAC1B,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC1B,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC5B,CAAC;aAAM,CAAC;YACP,OAAO,IAAI,CAAC,SAAS,CAAC;QACvB,CAAC;QACD,OAAO,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAYD;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,cAAc,CACnC,IAAmB;IAEnB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,UAAU;gBACnB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,cAAc;aAChC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO;gBACN,OAAO,EAAE,aAAa;gBACtB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,gCAAgC;aACzE,CAAC;QACH,CAAC;QACD,MAAM,IAAI,GAAc;YACvB,GAAG,IAAI,CAAC,IAAI;YACZ,KAAK,EAAE,QAAQ;YACf,MAAM,EAAE,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM;SACvC,CAAC;QACF,4EAA4E;QAC5E,OAAO,IAAI,CAAC,MAAM,CAAC;QACnB,OAAO,IAAI,CAAC,SAAS,CAAC;QACtB,OAAO,MAAM,cAAc,CAAC,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACrE,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO,EAAC,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,EAAE,EAAE,GAAG,EAAE,EAAE,EAAE,OAAO,EAAE,cAAc,EAAC,CAAC;IACxE,CAAC;IACD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,UAAU;gBACnB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,cAAc;aAChC,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO;gBACN,OAAO,EAAE,aAAa;gBACtB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,IAAI,KAAK,QAAQ,IAAI,CAAC,IAAI,CAAC,KAAK,kDAAkD;aAC3F,CAAC;QACH,CAAC;QACD,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB;YACC,MAAM;YACN,OAAO;YACP,UAAU;YACV,GAAG;YACH,sBAAsB,GAAG,IAAI,IAAI,CAAC,GAAG,EAAE;SACvC,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,MAAM,OAAO,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACnD,OAAO;gBACN,OAAO,EAAE,cAAc;gBACvB,KAAK;gBACL,GAAG;gBACH,OAAO,EAAE,YAAY,KAAK,sCAAsC;aAChE,CAAC;QACH,CAAC;QACD,OAAO;YACN,OAAO,EAAE,MAAM;YACf,KAAK;YACL,GAAG;YACH,OAAO,EAAE,IAAI,KAAK,mDAAmD;SACrE,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;GAIG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CACjC,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,WAAW,CAAC,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACjD,MAAM,OAAO,CACZ,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,eAAe,MAAM,eAAe,IAAI,CAAC,EAC3E,GAAG,EACH,GAAG,CACH,CAAC;IACF,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IACjE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACvB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,OAAO,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;AACpC,CAAC;AAED;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAAiB,EAAE,IAAY;IAChE,MAAM,IAAI,GAAG,GAAG,IAAI,KAAK,CAAC;IAC1B,QAAQ,IAAI,EAAE,CAAC;QACd,KAAK,MAAM;YACV,OAAO,CAAC,WAAW,CAAC,MAAM,EAAE,IAAI,CAAC,EAAE,WAAW,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC,CAAC;QACpE,qEAAqE;QACrE,0EAA0E;QAC1E,0BAA0B;QAC1B,KAAK,MAAM;YACV,OAAO;gBACN,WAAW,CAAC,cAAc,EAAE,IAAI,CAAC;gBACjC,WAAW,CAAC,eAAe,EAAE,IAAI,CAAC;aAClC,CAAC;QACH,KAAK,aAAa;YACjB,OAAO,EAAE,CAAC;IACZ,CAAC;AACF,CAAC;AAuBD;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAoDG;AACH,MAAM,CAAC,KAAK,UAAU,4BAA4B,CACjD,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,EAAE;YACP,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE,cAAc;SACvB,CAAC;IACH,CAAC;IACD,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,8EAA8E;QAC9E,mEAAmE;QACnE,MAAM,OAAO,CACZ;YACC,OAAO;YACP,SAAS;YACT,OAAO;YACP,IAAI,eAAe,MAAM,eAAe,IAAI;SAC5C,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,MAAM,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QAEvD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAC5C,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,SAAS;gBAClB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,4BAA4B;aAC9C,CAAC;QACH,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,qEAAqE;YACrE,OAAO;gBACN,OAAO,EAAE,gBAAgB;gBACzB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,yCAAyC,OAAO,QAAQ;aAC1E,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YACjC,uEAAuE;YACvE,uEAAuE;YACvE,OAAO;gBACN,OAAO,EAAE,YAAY;gBACrB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,oBAAoB,OAAO,0EAA0E;aACvH,CAAC;QACH,CAAC;QACD,4EAA4E;QAC5E,6EAA6E;QAC7E,mEAAmE;QACnE,8CAA8C;QAC9C,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QAC5E,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO;gBACN,OAAO,EAAE,eAAe;gBACxB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,+BAA+B,KAAK,kBAAkB,OAAO,6CAA6C;aACnH,CAAC;QACH,CAAC;QACD,4EAA4E;QAC5E,+DAA+D;QAC/D,8EAA8E;QAC9E,0EAA0E;QAC1E,+EAA+E;QAC/E,0EAA0E;QAC1E,6EAA6E;QAC7E,wEAAwE;QACxE,MAAM,MAAM,GAAG,MAAM,OAAO,CAAC,CAAC,WAAW,EAAE,OAAO,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACpE,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,KAAK,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,CAAC;QACvE,IAAI,WAAW,EAAE,CAAC;YACjB,0EAA0E;YAC1E,yEAAyE;YACzE,oCAAoC;YACpC,MAAM,OAAO,CAAC,CAAC,YAAY,EAAE,IAAI,EAAE,GAAG,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACnD,OAAO;gBACN,OAAO,EAAE,SAAS;gBAClB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,yFAAyF;aAC3G,CAAC;QACH,CAAC;QACD,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,cAAc;YACd,OAAO,EAAE,yBAAyB,KAAK,mHAAmH;SAC1J,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,MAAM,CAAC,KAAK,UAAU,2BAA2B,CAChD,IAAoB;IAEpB,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,IAAI,QAAQ,CAAC;IACzC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC;IACrB,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;QAChB,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK,EAAE,EAAE;YACT,GAAG,EAAE,EAAE;YACP,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE,cAAc;SACvB,CAAC;IACH,CAAC;IACD,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACvD,MAAM,KAAK,GAAG,YAAY,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;IACtC,MAAM,GAAG,GAAG,WAAW,CAAC,KAAK,CAAC,CAAC;IAC/B,IAAI,CAAC;QACJ,MAAM,OAAO,CACZ;YACC,OAAO;YACP,SAAS;YACT,OAAO;YACP,IAAI,eAAe,MAAM,eAAe,IAAI;SAC5C,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,MAAM,OAAO,CAAC,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;QACvD,MAAM,IAAI,GAAG,MAAM,cAAc,CAAC,KAAK,EAAE,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;QACjE,MAAM,cAAc,GAAG,MAAM,gBAAgB,CAC5C,IAAI,EACJ,IAAI,EACJ,OAAO,EACP,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,CAAC,IAAI,EAAE,CAAC;YACX,OAAO;gBACN,OAAO,EAAE,SAAS;gBAClB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,4BAA4B;aAC9C,CAAC;QACH,CAAC;QACD,IAAI,CAAC,cAAc,EAAE,CAAC;YACrB,OAAO;gBACN,OAAO,EAAE,gBAAgB;gBACzB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,yCAAyC,OAAO,QAAQ;aAC1E,CAAC;QACH,CAAC;QACD,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO;gBACN,OAAO,EAAE,YAAY;gBACrB,KAAK;gBACL,GAAG;gBACH,cAAc;gBACd,OAAO,EAAE,IAAI,KAAK,oBAAoB,OAAO,0EAA0E;aACvH,CAAC;QACH,CAAC;QACD,+DAA+D;QAC/D,2EAA2E;QAC3E,yEAAyE;QACzE,OAAO;YACN,OAAO,EAAE,eAAe;YACxB,KAAK;YACL,GAAG;YACH,cAAc;YACd,OAAO,EAAE,IAAI,KAAK,oBAAoB,OAAO,gHAAgH;SAC7J,CAAC;IACH,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACd,OAAO;YACN,OAAO,EAAE,OAAO;YAChB,KAAK;YACL,GAAG;YACH,cAAc,EAAE,KAAK;YACrB,OAAO,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,GAAG,CAAC;SACzD,CAAC;IACH,CAAC;AACF,CAAC;AAiCD;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,MAAM,CAAC,KAAK,UAAU,eAAe,CACpC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,MAAM,OAAO,GAAG,MAAM,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IAC7D,MAAM,KAAK,GAAsB,EAAE,CAAC;IACpC,KAAK,MAAM,IAAI,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,GAAG,GAAG,WAAW,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QACpC,wEAAwE;QACxE,2DAA2D;QAC3D,MAAM,OAAO,GAAG,MAAM,2BAA2B,CAAC;YACjD,IAAI,EAAE,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC;YACnC,GAAG;YACH,OAAO;YACP,GAAG;SACH,CAAC,CAAC;QACH,KAAK,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAE,OAAO,CAAC,OAAO,EAAC,CAAC,CAAC;IACrD,CAAC;IACD,OAAO,EAAC,KAAK,EAAC,CAAC;AAChB,CAAC;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;GAWG;AACH,MAAM,UAAU,4BAA4B,CAAC,MAAsB;IAClE,OAAO,MAAM,CAAC,KAAK,CAAC,IAAI,CACvB,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,SAAS,KAAK,YAAY,IAAI,CAAC,CAAC,SAAS,KAAK,eAAe,CACtE,CAAC;AACH,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,MAAsB;IAC1D,IAAI,MAAM,CAAC,KAAK,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC/B,OAAO,EAAE,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG;QACb,mBAAmB,MAAM,CAAC,KAAK,CAAC,MAAM,+BAA+B;YACpE,4EAA4E;YAC5E,iEAAiE;KAClE,CAAC;IACF,KAAK,MAAM,EAAC,IAAI,EAAE,SAAS,EAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QAC9C,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC;QAC9D,KAAK,CAAC,IAAI,CACT,eAAe,IAAI,CAAC,MAAM,IAAI,WAAW,YAAY,IAAI,CAAC,KAAK,IAAI,WAAW,EAAE,CAChF,CAAC;QACF,IAAI,IAAI,CAAC,KAAK,KAAK,OAAO,IAAI,IAAI,CAAC,MAAM,EAAE,CAAC;YAC3C,KAAK,CAAC,IAAI,CAAC,eAAe,IAAI,CAAC,MAAM,EAAE,CAAC,CAAC;QAC1C,CAAC;QACD,KAAK,CAAC,IAAI,CAAC,OAAO,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC,CAAC;QAC9C,KAAK,CAAC,IAAI,CACT,2DAA2D,IAAI,qBAAqB,CACpF,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,oFAAoF;AACpF,SAAS,aAAa,CAAC,SAA2B;IACjD,QAAQ,SAAS,EAAE,CAAC;QACnB,KAAK,gBAAgB;YACpB,OAAO,kEAAkE,CAAC;QAC3E,KAAK,YAAY;YAChB,OAAO,4EAA4E,CAAC;QACrF,KAAK,eAAe;YACnB,OAAO,yFAAyF,CAAC;QAClG,KAAK,SAAS;YACb,OAAO,4BAA4B,CAAC;QACrC,KAAK,OAAO;YACX,OAAO,4FAA4F,CAAC;IACtG,CAAC;AACF,CAAC;AAoDD;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,MAAM,CAAC,KAAK,UAAU,kBAAkB,CACvC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,MAAM,MAAM,GAAG,MAAM,eAAe,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACxD,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,IAAI,MAAM,GAAG,CAAC,CAAC;IACf,IAAI,aAAa,GAAG,CAAC,CAAC;IACtB,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,IAAI,IAAI,GAAG,CAAC,CAAC;IACb,KAAK,MAAM,EAAC,IAAI,EAAE,GAAG,EAAE,SAAS,EAAC,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;QACnD,MAAM,IAAI,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,SAAS,KAAK,eAAe,EAAE,CAAC;YACnC,0EAA0E;YAC1E,yEAAyE;YACzE,6EAA6E;YAC7E,MAAM,GAAG,GAAG,MAAM,4BAA4B,CAAC;gBAC9C,IAAI;gBACJ,GAAG;gBACH,OAAO;gBACP,GAAG;aACH,CAAC,CAAC;YACH,IAAI,GAAG,CAAC,OAAO,KAAK,eAAe,EAAE,CAAC;gBACrC,MAAM,EAAE,CAAC;gBACT,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAC,CAAC,CAAC;YACpE,CAAC;iBAAM,IAAI,GAAG,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;gBACtC,wEAAwE;gBACxE,uEAAuE;gBACvE,sEAAsE;gBACtE,uEAAuE;gBACvE,uEAAuE;gBACvE,mEAAmE;gBACnE,mDAAmD;gBACnD,aAAa,EAAE,CAAC;gBAChB,OAAO,CAAC,IAAI,CAAC;oBACZ,IAAI;oBACJ,GAAG;oBACH,OAAO,EAAE,gBAAgB;oBACzB,OAAO,EAAE,GAAG,CAAC,OAAO;iBACpB,CAAC,CAAC;YACJ,CAAC;iBAAM,IACN,GAAG,CAAC,OAAO,KAAK,YAAY;gBAC5B,GAAG,CAAC,OAAO,KAAK,gBAAgB,EAC/B,CAAC;gBACF,uEAAuE;gBACvE,IAAI,EAAE,CAAC;gBACP,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAC,CAAC,CAAC;YACvE,CAAC;iBAAM,CAAC;gBACP,wEAAwE;gBACxE,mEAAmE;gBACnE,+CAA+C;gBAC/C,IAAI,EAAE,CAAC;gBACP,OAAO,CAAC,IAAI,CAAC,EAAC,IAAI,EAAE,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAC,CAAC,CAAC;YAClE,CAAC;YACD,SAAS;QACV,CAAC;QACD,2EAA2E;QAC3E,mCAAmC;QACnC,IAAI,SAAS,KAAK,YAAY,IAAI,SAAS,KAAK,gBAAgB,EAAE,CAAC;YAClE,IAAI,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,CAAC;gBACZ,IAAI;gBACJ,GAAG;gBACH,OAAO,EAAE,SAAS;gBAClB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;aACjC,CAAC,CAAC;QACJ,CAAC;aAAM,CAAC;YACP,2EAA2E;YAC3E,IAAI,EAAE,CAAC;YACP,OAAO,CAAC,IAAI,CAAC;gBACZ,IAAI;gBACJ,GAAG;gBACH,OAAO,EAAE,OAAO;gBAChB,OAAO,EAAE,aAAa,CAAC,SAAS,CAAC;aACjC,CAAC,CAAC;QACJ,CAAC;IACF,CAAC;IACD,OAAO,EAAC,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,IAAI,EAAC,CAAC;AACrD,CAAC;AAED;;;;;;;;GAQG;AACH,MAAM,UAAU,wBAAwB,CAAC,MAAkB;IAC1D,+EAA+E;IAC/E,2EAA2E;IAC3E,6EAA6E;IAC7E,8EAA8E;IAC9E,6EAA6E;IAC7E,mBAAmB;IACnB,OAAO,MAAM,CAAC,OAAO,CAAC,IAAI,CACzB,CAAC,CAAC,EAAE,EAAE,CACL,CAAC,CAAC,OAAO,KAAK,YAAY;QAC1B,CAAC,CAAC,OAAO,KAAK,MAAM;QACpB,CAAC,CAAC,OAAO,KAAK,OAAO,CACtB,CAAC;AACH,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,MAAkB;IAClD,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACjC,OAAO,EAAE,CAAC;IACX,CAAC;IACD,MAAM,KAAK,GAAG;QACb,oDAAoD,MAAM,CAAC,MAAM,SAAS;YACzE,0BAA0B,MAAM,CAAC,IAAI,kCAAkC;YACvE,CAAC,MAAM,CAAC,aAAa,GAAG,CAAC;gBACxB,CAAC,CAAC,KAAK,MAAM,CAAC,aAAa,4EAA4E;gBACvG,CAAC,CAAC,EAAE,CAAC;YACN,CAAC,MAAM,CAAC,IAAI,GAAG,CAAC;gBACf,CAAC,CAAC,KAAK,MAAM,CAAC,IAAI,qEAAqE;gBACvF,CAAC,CAAC,EAAE,CAAC;YACN,GAAG;KACJ,CAAC;IACF,KAAK,MAAM,EAAC,IAAI,EAAE,OAAO,EAAE,OAAO,EAAC,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;QACvD,MAAM,GAAG,GACR,OAAO,KAAK,QAAQ;YACnB,CAAC,CAAC,YAAY;YACd,CAAC,CAAC,OAAO,KAAK,gBAAgB;gBAC7B,CAAC,CAAC,YAAY;gBACd,CAAC,CAAC,OAAO,KAAK,MAAM;oBACnB,CAAC,CAAC,YAAY;oBACd,CAAC,CAAC,OAAO,KAAK,OAAO;wBACpB,CAAC,CAAC,YAAY;wBACd,CAAC,CAAC,YAAY,CAAC;QACpB,KAAK,CAAC,IAAI,CACT,KAAK,GAAG,IAAI,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,MAAM,IAAI,IAAI,CAAC,KAAK,MAAM,OAAO,EAAE,CACpE,CAAC;IACH,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,iBAAiB,CAAC,KAAa;IAC9C,4EAA4E;IAC5E,6EAA6E;IAC7E,wEAAwE;IACxE,kCAAkC;IAClC,KAAK,MAAM,MAAM,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,aAAa,CAAU,EAAE,CAAC;QAC/D,MAAM,GAAG,GAAG,GAAG,MAAM,GAAG,CAAC;QACzB,IAAI,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3B,OAAO,GAAG,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC;QAC/C,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;mEACmE;AACnE,KAAK,UAAU,gBAAgB,CAC9B,IAAiB,EACjB,IAAY,EACZ,OAAe,EACf,GAAW,EACX,GAAkC;IAElC,KAAK,MAAM,IAAI,IAAI,iBAAiB,CAAC,IAAI,EAAE,IAAI,CAAC,EAAE,CAAC;QAClD,MAAM,MAAM,GACX,CAAC,MAAM,OAAO,CAAC,CAAC,UAAU,EAAE,IAAI,EAAE,GAAG,OAAO,SAAS,IAAI,EAAE,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;aACtE,MAAM,KAAK,CAAC,CAAC;QAChB,IAAI,MAAM,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACb,CAAC;IACF,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED;8CAC8C;AAC9C,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,MAAM,OAAO,CACZ,CAAC,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,IAAI,eAAe,MAAM,eAAe,IAAI,CAAC,EAC3E,GAAG,EACH,GAAG,CACH,CAAC;IACF,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB,CAAC,cAAc,EAAE,qBAAqB,EAAE,GAAG,eAAe,IAAI,CAAC,EAC/D,GAAG,EACH,GAAG,CACH,CAAC;IACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,EAAE,CAAC;IACX,CAAC;IACD,OAAO,GAAG,CAAC,MAAM;SACf,KAAK,CAAC,IAAI,CAAC;SACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;SACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,eAAe,GAAG,CAAC,CAAC;SAClD,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,eAAe,GAAG,CAAC,MAAM,CAAC,CAAC;SACjD,IAAI,EAAE,CAAC;AACV,CAAC;AAED;;;;;;;;;;GAUG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,IAAI,CAAC;QACJ,MAAM,OAAO,CACZ;YACC,OAAO;YACP,SAAS;YACT,OAAO;YACP,IAAI,eAAe,MAAM,eAAe,IAAI;SAC5C,EACD,GAAG,EACH,GAAG,CACH,CAAC;QACF,MAAM,GAAG,GAAG,MAAM,OAAO,CACxB,CAAC,cAAc,EAAE,qBAAqB,EAAE,GAAG,eAAe,IAAI,CAAC,EAC/D,GAAG,EACH,GAAG,CACH,CAAC;QACF,IAAI,GAAG,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YACtB,OAAO,EAAE,CAAC;QACX,CAAC;QACD,MAAM,IAAI,GAAG,GAAG,CAAC,MAAM;aACrB,KAAK,CAAC,IAAI,CAAC;aACX,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;aACpB,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,GAAG,eAAe,GAAG,CAAC,CAAC;aAClD,IAAI,EAAE,CAAC;QACT,MAAM,OAAO,GAAgB,EAAE,CAAC;QAChC,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;YACxB,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,MAAM,EAAE,GAAG,GAAG,UAAU,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACjE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,SAAS;YACV,CAAC;YACD,MAAM,IAAI,GAAG,cAAc,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;YACzC,IAAI,IAAI,EAAE,CAAC;gBACV,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YACpB,CAAC;QACF,CAAC;QACD,OAAO,OAAO,CAAC;IAChB,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,EAAE,CAAC;IACX,CAAC;AACF,CAAC;AAED;;;;;;;;;;;;;;;;;;;;;;GAsBG;AACH,MAAM,CAAC,KAAK,UAAU,aAAa,CAClC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,IAAI,CAAC;QACJ,OAAO,MAAM,mBAAmB,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACrD,CAAC;IAAC,MAAM,CAAC;QACR,OAAO,IAAI,GAAG,EAAE,CAAC;IAClB,CAAC;AACF,CAAC;AAED;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,KAAK,UAAU,mBAAmB,CACxC,GAAW,EACX,OAAO,GAAG,QAAQ,EAClB,GAAuB;IAEvB,2EAA2E;IAC3E,0EAA0E;IAC1E,MAAM,OAAO,GAAG,MAAM,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,GAAG,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,OAAO,CAAC;IACvB,OAAO,IAAI,GAAG,CACb,OAAO;SACL,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;SACnC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CACpC,CAAC;AACH,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,cAAc,CAAC,IAAY;IAC1C,MAAM,UAAU,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;IAC/C,MAAM,EAAE,GAAG,uBAAuB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;IACpD,IAAI,CAAC,EAAE,EAAE,CAAC;QACT,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,MAAM,GAA2B,EAAE,CAAC;IAC1C,KAAK,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACtC,MAAM,CAAC,GAAG,uBAAuB,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC;YACP,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACrB,CAAC;IACF,CAAC;IACD,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;QACtD,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,QAAQ,GAAG,UAAU,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IAChD,MAAM,MAAM,GAAG,iBAAiB,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,MAAM,CAAC;IAC5D,MAAM,SAAS,GAAG,oBAAoB,CAAC,QAAQ,CAAC,CAAC;IACjD,MAAM,KAAK,GAAc;QACxB,KAAK,EAAE,MAAM,CAAC,KAAK;QACnB,MAAM,EAAE,MAAM,CAAC,MAAoB;QACnC,KAAK,EAAE,MAAM,CAAC,KAAkB;QAChC,MAAM,EAAE,MAAM,CAAC,MAAM,IAAI,EAAE;QAC3B,KAAK,EAAE,MAAM,CAAC,KAAK,IAAI,EAAE;KACzB,CAAC;IACF,IAAI,MAAM,KAAK,SAAS,IAAI,MAAM,KAAK,EAAE,EAAE,CAAC;QAC3C,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IACD,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC1B,KAAK,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;IACD,OAAO,KAAK,CAAC;AACd,CAAC;AAED,+EAA+E;AAC/E,SAAS,iBAAiB,CAAC,QAAgB;IAC1C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,mBAAmB,CAAC,CAAC;IACvE,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QAClB,OAAO,SAAS,CAAC;IAClB,CAAC;IACD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,MAAM;QACP,CAAC;QACD,SAAS,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC1B,CAAC;IACD,iFAAiF;IACjF,MAAM,IAAI,GAAG,SAAS,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;IAC1E,OAAO,IAAI,KAAK,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC;AACvC,CAAC;AAED,2EAA2E;AAC3E,SAAS,oBAAoB,CAAC,QAAgB;IAC7C,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;IACnC,MAAM,KAAK,GAAG,KAAK,CAAC,SAAS,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,KAAK,sBAAsB,CAAC,CAAC;IAC1E,IAAI,KAAK,KAAK,CAAC,CAAC,EAAE,CAAC;QAClB,OAAO,EAAE,CAAC;IACX,CAAC;IACD,MAAM,SAAS,GAAa,EAAE,CAAC;IAC/B,KAAK,IAAI,CAAC,GAAG,KAAK,GAAG,CAAC,EAAE,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QAC/C,IAAI,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC5B,MAAM;QACP,CAAC;QACD,MAAM,CAAC,GAAG,YAAY,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QAC7C,IAAI,CAAC,EAAE,CAAC;YACP,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QACtB,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC;AAED;;;;;GAKG;AACH,MAAM,CAAC,KAAK,UAAU,iBAAiB,CACtC,GAAW,EACX,GAAuB;IAEvB,OAAO,aAAa,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC;AAChC,CAAC;AAED,2EAA2E;AAC3E,KAAK,UAAU,aAAa,CAC3B,GAAW,EACX,GAAkC;IAElC,MAAM,IAAI,GAAG,MAAM,OAAO,CAAC,CAAC,QAAQ,EAAE,WAAW,CAAC,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;IAC9D,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;QACpD,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;IAC3B,CAAC;IACD,MAAM,CAAC,GAAG,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAC7B,OAAO,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,QAAQ,IAAI,UAAU,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AACzD,CAAC"}
@@ -0,0 +1,49 @@
1
+ import { type SidecarType } from './sidecar.js';
2
+ import type { WorkFolderKey } from './work-layout.js';
3
+ /**
4
+ * The NEUTRAL identity-keyed item-path resolver (task
5
+ * `agentic-apply-retire-disposition-vocabulary`) — extracted OUT of the hot
6
+ * `apply-persist.ts` so it is a STABLE, OWNED seam re-exported from the package
7
+ * index. The apply rung imports it from here; the sibling CLI verb
8
+ * (`direct-delete-question-cli-helper`) and the orphan-sidecar gc sweep
9
+ * (`orphan-sidecar-gc-sweep`) reuse the SAME resolver WITHOUT importing the
10
+ * rewritten hot file (the file-orthogonality fix: keeping it in `apply-persist.ts`
11
+ * would force those tasks into a stale-read coupling on a file this task rewrites).
12
+ *
13
+ * It is the symmetric twin of `sidecarPathFor`: where the sidecar path is derived
14
+ * from `(type, slug)`, the item path is RESOLVED by scanning the lifecycle folders
15
+ * the type may rest in (the identity is the source of truth; the folder is not).
16
+ */
17
+ /**
18
+ * The lifecycle folders an item may rest in at APPLY-write-time, BY TYPE — the
19
+ * scan set for {@link resolveItemPathByIdentity}. Includes the STAGING folders
20
+ * (`tasks-backlog`, `prds-proposed`) on purpose: a concurrent `promote` may have
21
+ * just `git mv`'d the item from staging into the pool between an apply's CAPTURE
22
+ * and WRITE, and the apply must resolve to the post-move path — the whole point of
23
+ * folder-agnostic apply (F3a of prd `staging-surface-and-apply-promote-safety`).
24
+ * Terminal-only folders (`cancelled`, `prds-dropped`, `needs-attention`) are NOT
25
+ * here — once an item has reached a terminal, the apply is OVER, and a re-resolve
26
+ * into a terminal would mean the item has effectively vanished from the active
27
+ * lifecycle (callers handle that as the clean-exit `vanished` outcome).
28
+ */
29
+ export declare const APPLY_LIFECYCLE_FOLDERS: Record<SidecarType, readonly WorkFolderKey[]>;
30
+ /**
31
+ * Resolve the item's CURRENT on-disk path by IDENTITY — the apply-side
32
+ * folder-agnostic resolver, the symmetric twin of `sidecarPathFor`. Mirrors the
33
+ * sidecar's identity-keyed resolution shape: the path is derived from the
34
+ * `(type, slug)` identity at WRITE-TIME, never from a captured `ItemPath`.
35
+ *
36
+ * Scans the lifecycle folders the type may rest in ({@link APPLY_LIFECYCLE_FOLDERS}),
37
+ * including STAGING, and returns the FIRST match (one slug per type, so there is at
38
+ * most one). Returns `undefined` when the item file is GONE between capture and
39
+ * write (a concurrent `promote` to a terminal, a human delete, or a sibling triage
40
+ * move) — the apply rung then exits CLEAN (no commit, no ghost file), routed as the
41
+ * `vanished` outcome.
42
+ *
43
+ * This is the F3a fix from prd `staging-surface-and-apply-promote-safety`: the
44
+ * sidecar is already identity-keyed and folder-agnostic; the item path is now the
45
+ * same. A concurrent `promote` that `git mv`'d the item out from under a captured
46
+ * path can no longer cause a stale-path write.
47
+ */
48
+ export declare function resolveItemPathByIdentity(cwd: string, item: string): string | undefined;
49
+ //# sourceMappingURL=item-path.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-path.d.ts","sourceRoot":"","sources":["../src/item-path.ts"],"names":[],"mappings":"AAGA,OAAO,EAAyB,KAAK,WAAW,EAAC,MAAM,cAAc,CAAC;AACtE,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAEpD;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;GAWG;AACH,eAAO,MAAM,uBAAuB,EAAE,MAAM,CAC3C,WAAW,EACX,SAAS,aAAa,EAAE,CAOxB,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,yBAAyB,CACxC,GAAG,EAAE,MAAM,EACX,IAAI,EAAE,MAAM,GACV,MAAM,GAAG,SAAS,CASpB"}
@@ -0,0 +1,66 @@
1
+ import { existsSync } from 'node:fs';
2
+ import { join } from 'node:path';
3
+ import { workItemRel } from './work-layout.js';
4
+ import { resolveSidecarIdentity } from './sidecar.js';
5
+ /**
6
+ * The NEUTRAL identity-keyed item-path resolver (task
7
+ * `agentic-apply-retire-disposition-vocabulary`) — extracted OUT of the hot
8
+ * `apply-persist.ts` so it is a STABLE, OWNED seam re-exported from the package
9
+ * index. The apply rung imports it from here; the sibling CLI verb
10
+ * (`direct-delete-question-cli-helper`) and the orphan-sidecar gc sweep
11
+ * (`orphan-sidecar-gc-sweep`) reuse the SAME resolver WITHOUT importing the
12
+ * rewritten hot file (the file-orthogonality fix: keeping it in `apply-persist.ts`
13
+ * would force those tasks into a stale-read coupling on a file this task rewrites).
14
+ *
15
+ * It is the symmetric twin of `sidecarPathFor`: where the sidecar path is derived
16
+ * from `(type, slug)`, the item path is RESOLVED by scanning the lifecycle folders
17
+ * the type may rest in (the identity is the source of truth; the folder is not).
18
+ */
19
+ /**
20
+ * The lifecycle folders an item may rest in at APPLY-write-time, BY TYPE — the
21
+ * scan set for {@link resolveItemPathByIdentity}. Includes the STAGING folders
22
+ * (`tasks-backlog`, `prds-proposed`) on purpose: a concurrent `promote` may have
23
+ * just `git mv`'d the item from staging into the pool between an apply's CAPTURE
24
+ * and WRITE, and the apply must resolve to the post-move path — the whole point of
25
+ * folder-agnostic apply (F3a of prd `staging-surface-and-apply-promote-safety`).
26
+ * Terminal-only folders (`cancelled`, `prds-dropped`, `needs-attention`) are NOT
27
+ * here — once an item has reached a terminal, the apply is OVER, and a re-resolve
28
+ * into a terminal would mean the item has effectively vanished from the active
29
+ * lifecycle (callers handle that as the clean-exit `vanished` outcome).
30
+ */
31
+ export const APPLY_LIFECYCLE_FOLDERS = {
32
+ task: ['tasks-backlog', 'tasks-ready', 'in-progress', 'done'],
33
+ // `spec` rests in the parent-spec regime folders (a `spec:<slug>` identity
34
+ // resolves against these).
35
+ spec: ['specs-proposed', 'specs-ready', 'specs-tasked'],
36
+ observation: ['observations'],
37
+ };
38
+ /**
39
+ * Resolve the item's CURRENT on-disk path by IDENTITY — the apply-side
40
+ * folder-agnostic resolver, the symmetric twin of `sidecarPathFor`. Mirrors the
41
+ * sidecar's identity-keyed resolution shape: the path is derived from the
42
+ * `(type, slug)` identity at WRITE-TIME, never from a captured `ItemPath`.
43
+ *
44
+ * Scans the lifecycle folders the type may rest in ({@link APPLY_LIFECYCLE_FOLDERS}),
45
+ * including STAGING, and returns the FIRST match (one slug per type, so there is at
46
+ * most one). Returns `undefined` when the item file is GONE between capture and
47
+ * write (a concurrent `promote` to a terminal, a human delete, or a sibling triage
48
+ * move) — the apply rung then exits CLEAN (no commit, no ghost file), routed as the
49
+ * `vanished` outcome.
50
+ *
51
+ * This is the F3a fix from prd `staging-surface-and-apply-promote-safety`: the
52
+ * sidecar is already identity-keyed and folder-agnostic; the item path is now the
53
+ * same. A concurrent `promote` that `git mv`'d the item out from under a captured
54
+ * path can no longer cause a stale-path write.
55
+ */
56
+ export function resolveItemPathByIdentity(cwd, item) {
57
+ const { type, slug } = resolveSidecarIdentity(item);
58
+ for (const folder of APPLY_LIFECYCLE_FOLDERS[type]) {
59
+ const rel = workItemRel(folder, `${slug}.md`);
60
+ if (existsSync(join(cwd, rel))) {
61
+ return rel;
62
+ }
63
+ }
64
+ return undefined;
65
+ }
66
+ //# sourceMappingURL=item-path.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"item-path.js","sourceRoot":"","sources":["../src/item-path.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,SAAS,CAAC;AACnC,OAAO,EAAC,IAAI,EAAC,MAAM,WAAW,CAAC;AAC/B,OAAO,EAAC,WAAW,EAAC,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAC,sBAAsB,EAAmB,MAAM,cAAc,CAAC;AAGtE;;;;;;;;;;;;;GAaG;AAEH;;;;;;;;;;;GAWG;AACH,MAAM,CAAC,MAAM,uBAAuB,GAGhC;IACH,IAAI,EAAE,CAAC,eAAe,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,CAAC;IAC7D,2EAA2E;IAC3E,2BAA2B;IAC3B,IAAI,EAAE,CAAC,gBAAgB,EAAE,aAAa,EAAE,cAAc,CAAC;IACvD,WAAW,EAAE,CAAC,cAAc,CAAC;CAC7B,CAAC;AAEF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,UAAU,yBAAyB,CACxC,GAAW,EACX,IAAY;IAEZ,MAAM,EAAC,IAAI,EAAE,IAAI,EAAC,GAAG,sBAAsB,CAAC,IAAI,CAAC,CAAC;IAClD,KAAK,MAAM,MAAM,IAAI,uBAAuB,CAAC,IAAI,CAAC,EAAE,CAAC;QACpD,MAAM,GAAG,GAAG,WAAW,CAAC,MAAM,EAAE,GAAG,IAAI,KAAK,CAAC,CAAC;QAC9C,IAAI,UAAU,CAAC,IAAI,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,EAAE,CAAC;YAChC,OAAO,GAAG,CAAC;QACZ,CAAC;IACF,CAAC;IACD,OAAO,SAAS,CAAC;AAClB,CAAC"}
@@ -0,0 +1,129 @@
1
+ import { type LedgerStatusFolder } from './work-layout.js';
2
+ /**
3
+ * The **one-slug-one-folder LINT** over the `work/` lifecycle ledger (prd
4
+ * `ledger-integrity`, story 3 — the READ-side belt-and-suspenders for defect 1).
5
+ *
6
+ * `work/` IS the ledger: a task's STATUS is the FOLDER its single `.md` lives in
7
+ * (WORK-CONTRACT.md rule "status = the folder", no index, one file per item). The
8
+ * invariant the integration core ENFORCES on every transition
9
+ * (`integration-core.ts` `readArbiterLedgerPlacement`, task
10
+ * `atomic-done-move-one-slug-one-folder`) is that a slug rests in EXACTLY ONE
11
+ * status folder. This module is its READER: a derived check that lists every
12
+ * status folder and surfaces any slug present in MORE THAN ONE — so a PRE-EXISTING
13
+ * orphan (e.g. the one hand-cleaned in `279b542`, PR #86) is DISCOVERABLE and a
14
+ * drive isn't misled into "recovering" an already-done task.
15
+ *
16
+ * It NEVER fixes the corruption: it WARNS (in `status`/`scan`) and REPORTS (the
17
+ * `gc`-style sweep, {@link sweepLedgerDuplicates}); a HUMAN resolves the
18
+ * duplicate (keep the canonical copy, delete the stale one). This mirrors the
19
+ * capture-bucket contract's "the agent never auto-deletes a signal" and the
20
+ * integration core's "fail loud over silent-clean where ambiguous".
21
+ *
22
+ * Consistent with the integration core's enforcement (which derives placement
23
+ * from the arbiter on demand, no index), the lint DERIVES the duplicate set by
24
+ * listing folder residence — there is no shared index to consult.
25
+ */
26
+ /**
27
+ * The `work/` STATUS folders a task's ledger file can rest in — the
28
+ * one-slug-one-folder set this lint is asserted over (WORK-CONTRACT.md
29
+ * "status = the folder"). After the capstone cut-over (task
30
+ * `cutover-retire-slicing-advancing-markers-and-trim-folder-sets`, prd
31
+ * `ledger-status-per-item-lock-refs`; ADR `ledger-status-on-per-item-lock-refs`)
32
+ * the ONLY `work/` moves on `main` are the DURABLE RESTING transitions, so a
33
+ * task's ledger file can rest only in the DURABLE set: the pool `backlog/`, the
34
+ * terminal `done/`, and the task regime's PER-REGIME "won't-proceed" terminal
35
+ * `tasks/cancelled/` (the per-regime split of the previous shared `dropped/`, prd
36
+ * `folder-taxonomy-reorg-and-rename` US #10; the specific REASON lives in the item
37
+ * BODY as a `reason:` value). The prd regime's terminal `prds/dropped/` is a
38
+ * SEPARATE namespace and is NOT a task-status folder. The transient
39
+ * `in-progress`/`needs-attention`/`tasking`/
40
+ * `advancing` are GONE from `main`'s tree — they are per-item lock-ref state
41
+ * (`in-progress` = lock held active, `needs-attention` = lock held stuck), read
42
+ * via `dorfl status` / `gc --ledger`'s lock report, NOT an `ls`-able folder.
43
+ *
44
+ * Shares `integration-core.ts`'s `LEDGER_STATUS_FOLDERS` (`backlog`/`done`/
45
+ * `cancelled`). A read-side lint surfaces a slug that ends up in `tasks/cancelled/`
46
+ * AND another status folder, so the lint covers all three.
47
+ *
48
+ * The capture buckets (`ideas`/`observations`/`findings`) and the prd-flow folders
49
+ * (`prds/ready`/`prds/tasked`) are NOT task-status folders (WORK-CONTRACT.md: the buckets
50
+ * are "exempt from status = folder"; the prd folders carry prds, a separate
51
+ * namespace) — they are deliberately EXCLUDED so a slug that legitimately has both
52
+ * a task and a same-named note/prd is never a false positive.
53
+ */
54
+ export { LEDGER_STATUS_FOLDERS, type LedgerStatusFolder } from './work-layout.js';
55
+ /** One slug found in more than one status folder — the corruption to surface. */
56
+ export interface DuplicateSlug {
57
+ /** The slug present in multiple status folders. */
58
+ slug: string;
59
+ /** The status folders it appears in (sorted, lifecycle order). */
60
+ folders: LedgerStatusFolder[];
61
+ /**
62
+ * The CANDIDATE canonical folder a human most likely wants to keep (the
63
+ * most-advanced lifecycle stage among {@link folders}). A SUGGESTION only — the
64
+ * lint never acts on it.
65
+ */
66
+ candidateCanonical: LedgerStatusFolder;
67
+ }
68
+ /**
69
+ * Detect every slug present in MORE THAN ONE status folder, from a per-folder map
70
+ * of the slugs each holds. PURE (no I/O) so it is trivially testable and shared by
71
+ * both the local-tree and ref-tree readers. Returns the duplicates sorted by slug,
72
+ * each carrying the folders it appears in (lifecycle-ordered) and the candidate
73
+ * canonical folder. An empty result ⇒ a clean ledger.
74
+ */
75
+ export declare function detectDuplicateSlugs(slugsByFolder: ReadonlyMap<LedgerStatusFolder, ReadonlySet<string>>): DuplicateSlug[];
76
+ /**
77
+ * Resolve the per-folder slug placement of a LOCAL working tree's `work/` ledger
78
+ * (offline `readdirSync`). The duplicate set is then {@link detectDuplicateSlugs}.
79
+ */
80
+ export declare function resolveLocalPlacement(repoPath: string): Map<LedgerStatusFolder, Set<string>>;
81
+ /** Detect duplicate slugs across the status folders of a LOCAL working tree. */
82
+ export declare function lintLocalLedger(repoPath: string): DuplicateSlug[];
83
+ /**
84
+ * Resolve the per-folder slug placement from a committed `work/` tree on a git REF
85
+ * (a BARE hub mirror's `main`, or any ref), via `git ls-tree` — the only mechanism
86
+ * that works against a bare repo (no working tree), the SAME one the read seam's
87
+ * mirror method uses. `cwd` is the repo the `git -C <cwd>` commands run in (the
88
+ * mirror itself).
89
+ */
90
+ export declare function resolveRefPlacement(ref: string, cwd: string, env: NodeJS.ProcessEnv | undefined): Map<LedgerStatusFolder, Set<string>>;
91
+ /** Detect duplicate slugs across the status folders of a committed ledger ref. */
92
+ export declare function lintRefLedger(ref: string, cwd: string, env: NodeJS.ProcessEnv | undefined): DuplicateSlug[];
93
+ /**
94
+ * Format the one-slug-one-folder WARNING lines for a set of duplicates — the LOUD
95
+ * surface `status`/`scan` print when the ledger is corrupt. Each line names the
96
+ * slug AND the folders it appears in (never a silent pass). Empty input ⇒ no
97
+ * lines (a clean ledger is silent here).
98
+ */
99
+ export declare function formatDuplicateWarnings(duplicates: readonly DuplicateSlug[]): string[];
100
+ /** The result of the `gc`-style ledger sweep — a REPORT, never a deletion. */
101
+ export interface LedgerSweepResult {
102
+ /** Every slug present in more than one status folder (empty ⇒ clean ledger). */
103
+ duplicates: DuplicateSlug[];
104
+ }
105
+ /**
106
+ * The `gc`-STYLE ledger SWEEP (prd story 3's belt-and-suspenders): on demand,
107
+ * REPORT every slug present in more than one status folder of a LOCAL `work/`
108
+ * ledger, naming the folders and the CANDIDATE canonical folder — and NEVER
109
+ * auto-delete. A human confirms the cleanup (keep the canonical copy, delete the
110
+ * stale one), exactly like the manual `279b542` cleanup. This is a `gc`-style
111
+ * sweep (it surveys + reports a hazard for a human to act on), but it is a
112
+ * SEPARATE surface from the worktree reaper `gc` (`gc.ts`), which reaps job
113
+ * worktrees under `<workspacesDir>/work/*` — a DIFFERENT `work/` (the execution
114
+ * substrate, not the lifecycle ledger). Mixing the two would conflate the two
115
+ * meanings of `work/`; the read seam already keeps the worktree `gc` out of the
116
+ * ledger read.
117
+ */
118
+ export declare function sweepLedgerDuplicates(repoPath: string): LedgerSweepResult;
119
+ /**
120
+ * Format the `gc`-style ledger sweep REPORT for the terminal: one block per
121
+ * duplicate (slug, the folders it appears in, the candidate canonical folder, and
122
+ * the explicit "resolved by a HUMAN, never auto-deleted" note), or a clean line
123
+ * when there is nothing to report. The transient lock surface (held/stuck/orphaned
124
+ * per-item locks, incl. the advance holds that used to be `work/advancing/`
125
+ * markers) is the SEPARATE unified-lock report (`reportItemLocks` /
126
+ * `formatItemLockReport`, cleared via `release-lock`), not this folder lint.
127
+ */
128
+ export declare function formatLedgerSweep(result: LedgerSweepResult): string;
129
+ //# sourceMappingURL=ledger-lint.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger-lint.d.ts","sourceRoot":"","sources":["../src/ledger-lint.ts"],"names":[],"mappings":"AAIA,OAAO,EAEN,KAAK,kBAAkB,EAKvB,MAAM,kBAAkB,CAAC;AAE1B;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AAEH;;;;;;;;;;;;;;;;;;;;;;;;;;;GA2BG;AACH,OAAO,EAAC,qBAAqB,EAAE,KAAK,kBAAkB,EAAC,MAAM,kBAAkB,CAAC;AAgBhF,iFAAiF;AACjF,MAAM,WAAW,aAAa;IAC7B,mDAAmD;IACnD,IAAI,EAAE,MAAM,CAAC;IACb,kEAAkE;IAClE,OAAO,EAAE,kBAAkB,EAAE,CAAC;IAC9B;;;;OAIG;IACH,kBAAkB,EAAE,kBAAkB,CAAC;CACvC;AAED;;;;;;GAMG;AACH,wBAAgB,oBAAoB,CACnC,aAAa,EAAE,WAAW,CAAC,kBAAkB,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC,GACjE,aAAa,EAAE,CA2BjB;AAqCD;;;GAGG;AACH,wBAAgB,qBAAqB,CACpC,QAAQ,EAAE,MAAM,GACd,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAMtC;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,EAAE,CAEjE;AAgCD;;;;;;GAMG;AACH,wBAAgB,mBAAmB,CAClC,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,GAChC,GAAG,CAAC,kBAAkB,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAMtC;AAED,kFAAkF;AAClF,wBAAgB,aAAa,CAC5B,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,EACX,GAAG,EAAE,MAAM,CAAC,UAAU,GAAG,SAAS,GAChC,aAAa,EAAE,CAEjB;AAID;;;;;GAKG;AACH,wBAAgB,uBAAuB,CACtC,UAAU,EAAE,SAAS,aAAa,EAAE,GAClC,MAAM,EAAE,CAgBV;AAED,8EAA8E;AAC9E,MAAM,WAAW,iBAAiB;IACjC,gFAAgF;IAChF,UAAU,EAAE,aAAa,EAAE,CAAC;CAC5B;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,iBAAiB,CAIzE;AAED;;;;;;;;GAQG;AACH,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,iBAAiB,GAAG,MAAM,CAuBnE"}
@@ -0,0 +1,249 @@
1
+ import { readdirSync, readFileSync } from 'node:fs';
2
+ import { basename, join } from 'node:path';
3
+ import { parseFrontmatter } from './frontmatter.js';
4
+ import { run } from './git.js';
5
+ import { LEDGER_STATUS_FOLDERS, workFolderName, workFolderPath, workFolderPrefix, isWorkItemFile, } from './work-layout.js';
6
+ /**
7
+ * The **one-slug-one-folder LINT** over the `work/` lifecycle ledger (prd
8
+ * `ledger-integrity`, story 3 — the READ-side belt-and-suspenders for defect 1).
9
+ *
10
+ * `work/` IS the ledger: a task's STATUS is the FOLDER its single `.md` lives in
11
+ * (WORK-CONTRACT.md rule "status = the folder", no index, one file per item). The
12
+ * invariant the integration core ENFORCES on every transition
13
+ * (`integration-core.ts` `readArbiterLedgerPlacement`, task
14
+ * `atomic-done-move-one-slug-one-folder`) is that a slug rests in EXACTLY ONE
15
+ * status folder. This module is its READER: a derived check that lists every
16
+ * status folder and surfaces any slug present in MORE THAN ONE — so a PRE-EXISTING
17
+ * orphan (e.g. the one hand-cleaned in `279b542`, PR #86) is DISCOVERABLE and a
18
+ * drive isn't misled into "recovering" an already-done task.
19
+ *
20
+ * It NEVER fixes the corruption: it WARNS (in `status`/`scan`) and REPORTS (the
21
+ * `gc`-style sweep, {@link sweepLedgerDuplicates}); a HUMAN resolves the
22
+ * duplicate (keep the canonical copy, delete the stale one). This mirrors the
23
+ * capture-bucket contract's "the agent never auto-deletes a signal" and the
24
+ * integration core's "fail loud over silent-clean where ambiguous".
25
+ *
26
+ * Consistent with the integration core's enforcement (which derives placement
27
+ * from the arbiter on demand, no index), the lint DERIVES the duplicate set by
28
+ * listing folder residence — there is no shared index to consult.
29
+ */
30
+ /**
31
+ * The `work/` STATUS folders a task's ledger file can rest in — the
32
+ * one-slug-one-folder set this lint is asserted over (WORK-CONTRACT.md
33
+ * "status = the folder"). After the capstone cut-over (task
34
+ * `cutover-retire-slicing-advancing-markers-and-trim-folder-sets`, prd
35
+ * `ledger-status-per-item-lock-refs`; ADR `ledger-status-on-per-item-lock-refs`)
36
+ * the ONLY `work/` moves on `main` are the DURABLE RESTING transitions, so a
37
+ * task's ledger file can rest only in the DURABLE set: the pool `backlog/`, the
38
+ * terminal `done/`, and the task regime's PER-REGIME "won't-proceed" terminal
39
+ * `tasks/cancelled/` (the per-regime split of the previous shared `dropped/`, prd
40
+ * `folder-taxonomy-reorg-and-rename` US #10; the specific REASON lives in the item
41
+ * BODY as a `reason:` value). The prd regime's terminal `prds/dropped/` is a
42
+ * SEPARATE namespace and is NOT a task-status folder. The transient
43
+ * `in-progress`/`needs-attention`/`tasking`/
44
+ * `advancing` are GONE from `main`'s tree — they are per-item lock-ref state
45
+ * (`in-progress` = lock held active, `needs-attention` = lock held stuck), read
46
+ * via `dorfl status` / `gc --ledger`'s lock report, NOT an `ls`-able folder.
47
+ *
48
+ * Shares `integration-core.ts`'s `LEDGER_STATUS_FOLDERS` (`backlog`/`done`/
49
+ * `cancelled`). A read-side lint surfaces a slug that ends up in `tasks/cancelled/`
50
+ * AND another status folder, so the lint covers all three.
51
+ *
52
+ * The capture buckets (`ideas`/`observations`/`findings`) and the prd-flow folders
53
+ * (`prds/ready`/`prds/tasked`) are NOT task-status folders (WORK-CONTRACT.md: the buckets
54
+ * are "exempt from status = folder"; the prd folders carry prds, a separate
55
+ * namespace) — they are deliberately EXCLUDED so a slug that legitimately has both
56
+ * a task and a same-named note/prd is never a false positive.
57
+ */
58
+ export { LEDGER_STATUS_FOLDERS } from './work-layout.js';
59
+ /**
60
+ * Lifecycle precedence used to pick the CANDIDATE CANONICAL folder of a duplicate
61
+ * (the one the human most likely wants to KEEP — the most-advanced lifecycle
62
+ * stage). `done/` is the canonical destination of the done-move (it wins, matching
63
+ * the integration core's "candidate `done/` destination"); the earlier stages
64
+ * rank below it. This is ONLY a suggestion for the human — the lint NEVER deletes
65
+ * the others; it just names the likely keeper.
66
+ */
67
+ const CANONICAL_PRECEDENCE = [
68
+ 'done',
69
+ 'cancelled',
70
+ 'tasks-ready',
71
+ ];
72
+ /**
73
+ * Detect every slug present in MORE THAN ONE status folder, from a per-folder map
74
+ * of the slugs each holds. PURE (no I/O) so it is trivially testable and shared by
75
+ * both the local-tree and ref-tree readers. Returns the duplicates sorted by slug,
76
+ * each carrying the folders it appears in (lifecycle-ordered) and the candidate
77
+ * canonical folder. An empty result ⇒ a clean ledger.
78
+ */
79
+ export function detectDuplicateSlugs(slugsByFolder) {
80
+ const foldersBySlug = new Map();
81
+ for (const folder of LEDGER_STATUS_FOLDERS) {
82
+ const slugs = slugsByFolder.get(folder);
83
+ if (slugs === undefined) {
84
+ continue;
85
+ }
86
+ for (const slug of slugs) {
87
+ const list = foldersBySlug.get(slug) ?? [];
88
+ list.push(folder);
89
+ foldersBySlug.set(slug, list);
90
+ }
91
+ }
92
+ const duplicates = [];
93
+ for (const [slug, folders] of foldersBySlug) {
94
+ if (folders.length < 2) {
95
+ continue;
96
+ }
97
+ const ordered = orderByLifecycle(folders);
98
+ duplicates.push({
99
+ slug,
100
+ folders: ordered,
101
+ candidateCanonical: ordered[0],
102
+ });
103
+ }
104
+ return duplicates.sort((a, b) => a.slug.localeCompare(b.slug));
105
+ }
106
+ /** Sort folders by lifecycle precedence (most-advanced stage first). */
107
+ function orderByLifecycle(folders) {
108
+ return [...folders].sort((a, b) => CANONICAL_PRECEDENCE.indexOf(a) - CANONICAL_PRECEDENCE.indexOf(b));
109
+ }
110
+ // --- Resolving slug→folder placement from the two real read sources ----------
111
+ /** List the `.md` slugs in `<repoPath>/work/<folder>/` (frontmatter `slug:`, else filename). */
112
+ function readLocalFolderSlugs(repoPath, folder) {
113
+ const dir = workFolderPath(repoPath, folder);
114
+ const slugs = new Set();
115
+ let entries;
116
+ try {
117
+ entries = readdirSync(dir);
118
+ }
119
+ catch {
120
+ return slugs; // missing folder ⇒ nothing there
121
+ }
122
+ for (const file of entries) {
123
+ if (!isWorkItemFile(file)) {
124
+ continue;
125
+ }
126
+ const content = readFileSync(join(dir, file), 'utf8');
127
+ const fm = parseFrontmatter(content);
128
+ slugs.add(fm.slug ?? basename(file, '.md'));
129
+ }
130
+ return slugs;
131
+ }
132
+ /**
133
+ * Resolve the per-folder slug placement of a LOCAL working tree's `work/` ledger
134
+ * (offline `readdirSync`). The duplicate set is then {@link detectDuplicateSlugs}.
135
+ */
136
+ export function resolveLocalPlacement(repoPath) {
137
+ const placement = new Map();
138
+ for (const folder of LEDGER_STATUS_FOLDERS) {
139
+ placement.set(folder, readLocalFolderSlugs(repoPath, folder));
140
+ }
141
+ return placement;
142
+ }
143
+ /** Detect duplicate slugs across the status folders of a LOCAL working tree. */
144
+ export function lintLocalLedger(repoPath) {
145
+ return detectDuplicateSlugs(resolveLocalPlacement(repoPath));
146
+ }
147
+ /** List the `.md` slugs in `<ref>:work/<folder>/` on a committed tree (bare-mirror or any ref). */
148
+ function readRefFolderSlugs(ref, cwd, folder, env) {
149
+ const slugs = new Set();
150
+ const tree = run('git', ['ls-tree', '--name-only', `${ref}:work/${workFolderName(folder)}`], cwd, { env });
151
+ if (tree.status !== 0) {
152
+ return slugs; // folder absent on this ref ⇒ nothing there
153
+ }
154
+ for (const name of tree.stdout.split('\n')) {
155
+ const file = name.trim();
156
+ if (!isWorkItemFile(file)) {
157
+ continue;
158
+ }
159
+ // The ledger names each file after its slug (claim/done moves do); reading
160
+ // the blob to confirm frontmatter `slug:` would cost an extra `git show` per
161
+ // file, and the duplicate set is keyed on the filename the transition wrote.
162
+ slugs.add(file.slice(0, -'.md'.length));
163
+ }
164
+ return slugs;
165
+ }
166
+ /**
167
+ * Resolve the per-folder slug placement from a committed `work/` tree on a git REF
168
+ * (a BARE hub mirror's `main`, or any ref), via `git ls-tree` — the only mechanism
169
+ * that works against a bare repo (no working tree), the SAME one the read seam's
170
+ * mirror method uses. `cwd` is the repo the `git -C <cwd>` commands run in (the
171
+ * mirror itself).
172
+ */
173
+ export function resolveRefPlacement(ref, cwd, env) {
174
+ const placement = new Map();
175
+ for (const folder of LEDGER_STATUS_FOLDERS) {
176
+ placement.set(folder, readRefFolderSlugs(ref, cwd, folder, env));
177
+ }
178
+ return placement;
179
+ }
180
+ /** Detect duplicate slugs across the status folders of a committed ledger ref. */
181
+ export function lintRefLedger(ref, cwd, env) {
182
+ return detectDuplicateSlugs(resolveRefPlacement(ref, cwd, env));
183
+ }
184
+ // --- Formatting (the loud WARNING + the gc-style REPORT) ---------------------
185
+ /**
186
+ * Format the one-slug-one-folder WARNING lines for a set of duplicates — the LOUD
187
+ * surface `status`/`scan` print when the ledger is corrupt. Each line names the
188
+ * slug AND the folders it appears in (never a silent pass). Empty input ⇒ no
189
+ * lines (a clean ledger is silent here).
190
+ */
191
+ export function formatDuplicateWarnings(duplicates) {
192
+ if (duplicates.length === 0) {
193
+ return [];
194
+ }
195
+ const lines = [
196
+ `!! one-slug-one-folder VIOLATED: ${duplicates.length} slug(s) in more than ` +
197
+ 'one work/ status folder (a corrupt ledger — a human must resolve each):',
198
+ ];
199
+ for (const dup of duplicates) {
200
+ const where = dup.folders.map((f) => workFolderPrefix(f)).join(', ');
201
+ lines.push(` ${dup.slug}: in ${where} ` +
202
+ `(candidate canonical: ${workFolderPrefix(dup.candidateCanonical)})`);
203
+ }
204
+ return lines;
205
+ }
206
+ /**
207
+ * The `gc`-STYLE ledger SWEEP (prd story 3's belt-and-suspenders): on demand,
208
+ * REPORT every slug present in more than one status folder of a LOCAL `work/`
209
+ * ledger, naming the folders and the CANDIDATE canonical folder — and NEVER
210
+ * auto-delete. A human confirms the cleanup (keep the canonical copy, delete the
211
+ * stale one), exactly like the manual `279b542` cleanup. This is a `gc`-style
212
+ * sweep (it surveys + reports a hazard for a human to act on), but it is a
213
+ * SEPARATE surface from the worktree reaper `gc` (`gc.ts`), which reaps job
214
+ * worktrees under `<workspacesDir>/work/*` — a DIFFERENT `work/` (the execution
215
+ * substrate, not the lifecycle ledger). Mixing the two would conflate the two
216
+ * meanings of `work/`; the read seam already keeps the worktree `gc` out of the
217
+ * ledger read.
218
+ */
219
+ export function sweepLedgerDuplicates(repoPath) {
220
+ return {
221
+ duplicates: lintLocalLedger(repoPath),
222
+ };
223
+ }
224
+ /**
225
+ * Format the `gc`-style ledger sweep REPORT for the terminal: one block per
226
+ * duplicate (slug, the folders it appears in, the candidate canonical folder, and
227
+ * the explicit "resolved by a HUMAN, never auto-deleted" note), or a clean line
228
+ * when there is nothing to report. The transient lock surface (held/stuck/orphaned
229
+ * per-item locks, incl. the advance holds that used to be `work/advancing/`
230
+ * markers) is the SEPARATE unified-lock report (`reportItemLocks` /
231
+ * `formatItemLockReport`, cleared via `release-lock`), not this folder lint.
232
+ */
233
+ export function formatLedgerSweep(result) {
234
+ const { duplicates } = result;
235
+ if (duplicates.length === 0) {
236
+ return 'Ledger clean: every slug is in exactly one work/ status folder.';
237
+ }
238
+ const lines = [];
239
+ lines.push(`Ledger SWEEP: ${duplicates.length} slug(s) present in more than one work/ ` +
240
+ 'status folder (REPORT only — a human resolves each; NEVER auto-deleted):');
241
+ for (const dup of duplicates) {
242
+ lines.push(` ${dup.slug}`);
243
+ lines.push(` in: ${dup.folders.map((f) => workFolderPrefix(f)).join(', ')}`);
244
+ lines.push(` candidate canonical: ${workFolderPrefix(dup.candidateCanonical)}`);
245
+ lines.push(' resolve: keep the canonical copy, delete the stale one(s), then re-run.');
246
+ }
247
+ return lines.join('\n');
248
+ }
249
+ //# sourceMappingURL=ledger-lint.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ledger-lint.js","sourceRoot":"","sources":["../src/ledger-lint.ts"],"names":[],"mappings":"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"}