agentera 3.0.0-dev.4 → 3.0.0-dev.41

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 (840) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +79 -22
  3. package/bundle/.agentera-npx-bundle.json +1 -1
  4. package/bundle/CHANGELOG.md +1261 -0
  5. package/bundle/DESIGN.md +229 -0
  6. package/bundle/LICENSE +201 -0
  7. package/bundle/README.md +136 -0
  8. package/bundle/UPGRADE.md +201 -0
  9. package/bundle/extract-corpus-parity.json +21 -0
  10. package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
  11. package/bundle/references/adapters/package-manifest-interface-model.yaml +42 -252
  12. package/bundle/references/adapters/package-publication.json +43 -0
  13. package/bundle/references/adapters/package-registry.yaml +20 -188
  14. package/bundle/references/adapters/package-surface-characterization.md +59 -48
  15. package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +74 -0
  16. package/bundle/references/adapters/runtime-lifecycle-authority.yaml +62 -0
  17. package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +84 -0
  18. package/bundle/references/adapters/runtime-retired-resources.yaml +97 -0
  19. package/bundle/references/analysis/benchmark.md +10 -6
  20. package/bundle/references/analysis/evidence-tier-authority.yaml +518 -0
  21. package/bundle/references/analysis/startup-measurement-contract.yaml +37 -26
  22. package/bundle/references/analysis/verification-policy.yaml +143 -0
  23. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +20 -10
  24. package/bundle/references/artifacts/glossary-entry-contract.yaml +1254 -0
  25. package/bundle/references/artifacts/state-storage-authority.yaml +2930 -0
  26. package/bundle/references/artifacts/verbosity-budget-authority.yaml +42 -0
  27. package/bundle/references/cli/agent-ready-state-contract.yaml +133 -71
  28. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +7 -8
  29. package/bundle/references/cli/audience-namespace-cli-migration.yaml +73 -33
  30. package/bundle/references/cli/bundle-skill-vocabulary.yaml +12 -49
  31. package/bundle/references/cli/capability-instruction-contract.yaml +96 -58
  32. package/bundle/references/cli/capability-instruction-structure.md +144 -0
  33. package/bundle/references/cli/capability-tool-classification.yaml +14 -14
  34. package/bundle/references/cli/coexistence-probe.yaml +13 -0
  35. package/bundle/references/cli/hybrid-route-contract.yaml +416 -0
  36. package/bundle/references/cli/parity-expected-actual-template.md +30 -0
  37. package/bundle/references/cli/prime-consumer-compatibility.yaml +701 -0
  38. package/bundle/references/cli/routing-execution-vocabulary.yaml +16 -38
  39. package/bundle/references/cli/routing-model.md +139 -0
  40. package/bundle/references/cli/single-name-protocol.yaml +42 -0
  41. package/bundle/references/cli/trigger-schema-enrichment.md +140 -0
  42. package/bundle/references/cli/update-channels.yaml +35 -2
  43. package/bundle/references/cli/upgrade-repair-wording.md +25 -0
  44. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +97 -0
  45. package/bundle/references/cli/vocabulary-index.yaml +23 -18
  46. package/bundle/references/cli/vocabulary.md +341 -328
  47. package/bundle/references/meta/documentation-inventory.md +10 -3
  48. package/bundle/registry.json +14 -14
  49. package/bundle/skills/agentera/SKILL.md +202 -408
  50. package/bundle/skills/agentera/capabilities/audit/schemas/artifacts.yaml +84 -0
  51. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/exit.yaml +2 -2
  52. package/bundle/skills/agentera/capabilities/audit/schemas/triggers.yaml +25 -0
  53. package/bundle/skills/agentera/capabilities/{inspektera → audit}/schemas/validation.yaml +37 -18
  54. package/bundle/skills/agentera/capabilities/build/schemas/artifacts.yaml +102 -0
  55. package/bundle/skills/agentera/capabilities/{realisera → build}/schemas/exit.yaml +6 -5
  56. package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +27 -0
  57. package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +176 -0
  58. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/artifacts.yaml +12 -12
  59. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/exit.yaml +5 -5
  60. package/bundle/skills/agentera/capabilities/design/schemas/triggers.yaml +16 -0
  61. package/bundle/skills/agentera/capabilities/{visualisera → design}/schemas/validation.yaml +7 -7
  62. package/bundle/skills/agentera/capabilities/discuss/schemas/artifacts.yaml +51 -0
  63. package/bundle/skills/agentera/capabilities/{resonera → discuss}/schemas/exit.yaml +2 -2
  64. package/bundle/skills/agentera/capabilities/discuss/schemas/triggers.yaml +20 -0
  65. package/bundle/skills/agentera/capabilities/discuss/schemas/validation.yaml +144 -0
  66. package/bundle/skills/agentera/capabilities/document/schemas/artifacts.yaml +80 -0
  67. package/bundle/skills/agentera/capabilities/document/schemas/triggers.yaml +16 -0
  68. package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/validation.yaml +18 -18
  69. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/artifacts.yaml +17 -17
  70. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/exit.yaml +2 -2
  71. package/bundle/skills/agentera/capabilities/optimize/schemas/triggers.yaml +16 -0
  72. package/bundle/skills/agentera/capabilities/{optimera → optimize}/schemas/validation.yaml +9 -9
  73. package/bundle/skills/agentera/capabilities/orchestrate/schemas/artifacts.yaml +76 -0
  74. package/bundle/skills/agentera/capabilities/{orkestrera → orchestrate}/schemas/exit.yaml +9 -7
  75. package/bundle/skills/agentera/capabilities/orchestrate/schemas/triggers.yaml +23 -0
  76. package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +121 -0
  77. package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +66 -0
  78. package/bundle/skills/agentera/capabilities/{planera → plan}/schemas/exit.yaml +2 -2
  79. package/bundle/skills/agentera/capabilities/plan/schemas/triggers.yaml +23 -0
  80. package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +121 -0
  81. package/bundle/skills/agentera/capabilities/profile/schemas/artifacts.yaml +23 -0
  82. package/bundle/skills/agentera/capabilities/{profilera → profile}/schemas/exit.yaml +6 -5
  83. package/bundle/skills/agentera/capabilities/profile/schemas/triggers.yaml +20 -0
  84. package/bundle/skills/agentera/capabilities/profile/schemas/validation.yaml +115 -0
  85. package/bundle/skills/agentera/capabilities/research/schemas/artifacts.yaml +24 -0
  86. package/bundle/skills/agentera/capabilities/research/schemas/triggers.yaml +16 -0
  87. package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/validation.yaml +2 -2
  88. package/bundle/skills/agentera/capabilities/status/schemas/artifacts.yaml +73 -0
  89. package/bundle/skills/agentera/capabilities/status/schemas/triggers.yaml +22 -0
  90. package/bundle/skills/agentera/capabilities/{hej → status}/schemas/validation.yaml +5 -5
  91. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/artifacts.yaml +16 -16
  92. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/exit.yaml +7 -6
  93. package/bundle/skills/agentera/capabilities/vision/schemas/triggers.yaml +23 -0
  94. package/bundle/skills/agentera/capabilities/{visionera → vision}/schemas/validation.yaml +18 -20
  95. package/bundle/skills/agentera/capability_schema_contract.yaml +200 -37
  96. package/bundle/skills/agentera/protocol.yaml +31 -31
  97. package/bundle/skills/agentera/references/contract.md +387 -329
  98. package/bundle/skills/agentera/route-phrases.yaml +81 -0
  99. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +5 -4
  100. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +40 -22
  101. package/bundle/skills/agentera/schemas/artifacts/design.yaml +5 -4
  102. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +15 -19
  103. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +145 -14
  104. package/bundle/skills/agentera/schemas/artifacts/glossary.yaml +82 -0
  105. package/bundle/skills/agentera/schemas/artifacts/health.yaml +58 -21
  106. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +22 -8
  107. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +419 -33
  108. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +143 -53
  109. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +343 -31
  110. package/bundle/skills/agentera/schemas/artifacts/vision.yaml +3 -3
  111. package/dist/analytics/extractCorpus/cli.js +191 -0
  112. package/dist/analytics/extractCorpus/cli.js.map +1 -0
  113. package/dist/analytics/extractCorpus/copilotSessions.js +276 -0
  114. package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
  115. package/dist/analytics/extractCorpus/core.js +393 -0
  116. package/dist/analytics/extractCorpus/core.js.map +1 -0
  117. package/dist/analytics/extractCorpus/corpus.js +168 -0
  118. package/dist/analytics/extractCorpus/corpus.js.map +1 -0
  119. package/dist/analytics/extractCorpus/coverageAudit.js +261 -0
  120. package/dist/analytics/extractCorpus/coverageAudit.js.map +1 -0
  121. package/dist/analytics/extractCorpus/cursorSessions.js +426 -0
  122. package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
  123. package/dist/analytics/extractCorpus/evidenceTiers.js +604 -0
  124. package/dist/analytics/extractCorpus/evidenceTiers.js.map +1 -0
  125. package/dist/analytics/extractCorpus/extractCorpusParity.js +106 -0
  126. package/dist/analytics/extractCorpus/extractCorpusParity.js.map +1 -0
  127. package/dist/analytics/extractCorpus/filesystemSources.js +119 -0
  128. package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
  129. package/dist/analytics/extractCorpus/index.js +15 -0
  130. package/dist/analytics/extractCorpus/index.js.map +1 -0
  131. package/dist/analytics/extractCorpus/jsonlSessions.js +205 -0
  132. package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
  133. package/dist/analytics/extractCorpus/sqliteCaps.js +44 -0
  134. package/dist/analytics/extractCorpus/sqliteCaps.js.map +1 -0
  135. package/dist/analytics/extractCorpus/sqliteSessions.js +368 -0
  136. package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
  137. package/dist/analytics/extractCorpus/tierReader.js +109 -0
  138. package/dist/analytics/extractCorpus/tierReader.js.map +1 -0
  139. package/dist/analytics/extractCorpus.js +2 -1790
  140. package/dist/analytics/extractCorpus.js.map +1 -1
  141. package/dist/analytics/glossaryAdviceResolution.js +167 -0
  142. package/dist/analytics/glossaryAdviceResolution.js.map +1 -0
  143. package/dist/analytics/glossaryInputAcquisition.js +320 -0
  144. package/dist/analytics/glossaryInputAcquisition.js.map +1 -0
  145. package/dist/analytics/personalGlossaryAdmission.js +134 -0
  146. package/dist/analytics/personalGlossaryAdmission.js.map +1 -0
  147. package/dist/analytics/personalGlossaryProfile.js +220 -0
  148. package/dist/analytics/personalGlossaryProfile.js.map +1 -0
  149. package/dist/analytics/profileSignals.js +212 -0
  150. package/dist/analytics/profileSignals.js.map +1 -0
  151. package/dist/analytics/usageStats.js +169 -41
  152. package/dist/analytics/usageStats.js.map +1 -1
  153. package/dist/audit/terminologyDrift.js +282 -0
  154. package/dist/audit/terminologyDrift.js.map +1 -0
  155. package/dist/bin/agentera.js +3 -1
  156. package/dist/bin/agentera.js.map +1 -1
  157. package/dist/capabilities/audit/instructions.js +17 -0
  158. package/dist/capabilities/audit/instructions.js.map +1 -0
  159. package/dist/capabilities/build/instructions.js +57 -0
  160. package/dist/capabilities/build/instructions.js.map +1 -0
  161. package/dist/capabilities/design/instructions.js +5 -0
  162. package/dist/capabilities/design/instructions.js.map +1 -0
  163. package/dist/capabilities/discuss/instructions.js +30 -0
  164. package/dist/capabilities/discuss/instructions.js.map +1 -0
  165. package/dist/capabilities/document/instructions.js +12 -0
  166. package/dist/capabilities/document/instructions.js.map +1 -0
  167. package/dist/capabilities/index.js +39 -0
  168. package/dist/capabilities/index.js.map +1 -0
  169. package/dist/capabilities/optimize/instructions.js +15 -0
  170. package/dist/capabilities/optimize/instructions.js.map +1 -0
  171. package/dist/capabilities/orchestrate/instructions.js +41 -0
  172. package/dist/capabilities/orchestrate/instructions.js.map +1 -0
  173. package/dist/capabilities/plan/instructions.js +33 -0
  174. package/dist/capabilities/plan/instructions.js.map +1 -0
  175. package/dist/capabilities/profile/instructions.js +71 -0
  176. package/dist/capabilities/profile/instructions.js.map +1 -0
  177. package/dist/capabilities/research/instructions.js +6 -0
  178. package/dist/capabilities/research/instructions.js.map +1 -0
  179. package/dist/capabilities/status/instructions.js +12 -0
  180. package/dist/capabilities/status/instructions.js.map +1 -0
  181. package/dist/capabilities/status/startupInstructions.js +39 -0
  182. package/dist/capabilities/status/startupInstructions.js.map +1 -0
  183. package/dist/capabilities/vision/instructions.js +5 -0
  184. package/dist/capabilities/vision/instructions.js.map +1 -0
  185. package/dist/cli/appContext.js +30 -23
  186. package/dist/cli/appContext.js.map +1 -1
  187. package/dist/cli/argvalidate.js.map +1 -1
  188. package/dist/cli/capabilityContext/benchmark.js +565 -0
  189. package/dist/cli/capabilityContext/benchmark.js.map +1 -0
  190. package/dist/cli/capabilityContext/bespoke.js +45 -0
  191. package/dist/cli/capabilityContext/bespoke.js.map +1 -0
  192. package/dist/cli/capabilityContext/build.js +244 -0
  193. package/dist/cli/capabilityContext/build.js.map +1 -0
  194. package/dist/cli/capabilityContext/closeout.js +235 -0
  195. package/dist/cli/capabilityContext/closeout.js.map +1 -0
  196. package/dist/cli/capabilityContext/contract.js +214 -0
  197. package/dist/cli/capabilityContext/contract.js.map +1 -0
  198. package/dist/cli/capabilityContext/evidence.js +465 -0
  199. package/dist/cli/capabilityContext/evidence.js.map +1 -0
  200. package/dist/cli/capabilityContext/index.js +4 -0
  201. package/dist/cli/capabilityContext/index.js.map +1 -0
  202. package/dist/cli/capabilityContext/orchestration.js +133 -0
  203. package/dist/cli/capabilityContext/orchestration.js.map +1 -0
  204. package/dist/cli/capabilityContext/planState.js +261 -0
  205. package/dist/cli/capabilityContext/planState.js.map +1 -0
  206. package/dist/cli/capabilityContext/progress.js +143 -0
  207. package/dist/cli/capabilityContext/progress.js.map +1 -0
  208. package/dist/cli/capabilityContext/projectVerification.js +410 -0
  209. package/dist/cli/capabilityContext/projectVerification.js.map +1 -0
  210. package/dist/cli/capabilityContext/shared.js +100 -0
  211. package/dist/cli/capabilityContext/shared.js.map +1 -0
  212. package/dist/cli/capabilityContext/slim.js +153 -0
  213. package/dist/cli/capabilityContext/slim.js.map +1 -0
  214. package/dist/cli/capabilityContext/startup.js +278 -0
  215. package/dist/cli/capabilityContext/startup.js.map +1 -0
  216. package/dist/cli/capabilityContext/types.js +56 -0
  217. package/dist/cli/capabilityContext/types.js.map +1 -0
  218. package/dist/cli/capabilityContext.js +1 -2420
  219. package/dist/cli/capabilityContext.js.map +1 -1
  220. package/dist/cli/commands/appHome.js +23 -0
  221. package/dist/cli/commands/appHome.js.map +1 -0
  222. package/dist/cli/commands/capability.js +3 -10
  223. package/dist/cli/commands/capability.js.map +1 -1
  224. package/dist/cli/commands/compact.js +41 -12
  225. package/dist/cli/commands/compact.js.map +1 -1
  226. package/dist/cli/commands/doctor.js +34 -99
  227. package/dist/cli/commands/doctor.js.map +1 -1
  228. package/dist/cli/commands/durability.js +82 -0
  229. package/dist/cli/commands/durability.js.map +1 -0
  230. package/dist/cli/commands/entityMigrate.js +132 -0
  231. package/dist/cli/commands/entityMigrate.js.map +1 -0
  232. package/dist/cli/commands/glossaryAdvice.js +139 -0
  233. package/dist/cli/commands/glossaryAdvice.js.map +1 -0
  234. package/dist/cli/commands/lint.js +26 -43
  235. package/dist/cli/commands/lint.js.map +1 -1
  236. package/dist/cli/commands/personalGlossary.js +177 -0
  237. package/dist/cli/commands/personalGlossary.js.map +1 -0
  238. package/dist/cli/commands/prime/briefOrientation.js +808 -0
  239. package/dist/cli/commands/prime/briefOrientation.js.map +1 -0
  240. package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
  241. package/dist/cli/commands/prime/buildExecutionRequest.js.map +1 -0
  242. package/dist/cli/commands/prime/bundleStatus.js +191 -0
  243. package/dist/cli/commands/prime/bundleStatus.js.map +1 -0
  244. package/dist/cli/commands/prime/collectEntityOrientation.js +291 -0
  245. package/dist/cli/commands/prime/collectEntityOrientation.js.map +1 -0
  246. package/dist/cli/commands/prime/collectOrientationState.js +178 -0
  247. package/dist/cli/commands/prime/collectOrientationState.js.map +1 -0
  248. package/dist/cli/commands/prime/orientationOutput.js +377 -0
  249. package/dist/cli/commands/prime/orientationOutput.js.map +1 -0
  250. package/dist/cli/commands/prime/types.js +2 -0
  251. package/dist/cli/commands/prime/types.js.map +1 -0
  252. package/dist/cli/commands/prime/v1Migration.js +39 -0
  253. package/dist/cli/commands/prime/v1Migration.js.map +1 -0
  254. package/dist/cli/commands/prime.js +96 -556
  255. package/dist/cli/commands/prime.js.map +1 -1
  256. package/dist/cli/commands/profileGrounding.js +56 -0
  257. package/dist/cli/commands/profileGrounding.js.map +1 -0
  258. package/dist/cli/commands/query.js +77 -52
  259. package/dist/cli/commands/query.js.map +1 -1
  260. package/dist/cli/commands/report.js +96 -24
  261. package/dist/cli/commands/report.js.map +1 -1
  262. package/dist/cli/commands/route.js +142 -0
  263. package/dist/cli/commands/route.js.map +1 -0
  264. package/dist/cli/commands/schema.js +258 -105
  265. package/dist/cli/commands/schema.js.map +1 -1
  266. package/dist/cli/commands/state/decisions.js +388 -0
  267. package/dist/cli/commands/state/decisions.js.map +1 -0
  268. package/dist/cli/commands/state/docs.js +71 -0
  269. package/dist/cli/commands/state/docs.js.map +1 -0
  270. package/dist/cli/commands/state/experimentRecords.js +152 -0
  271. package/dist/cli/commands/state/experimentRecords.js.map +1 -0
  272. package/dist/cli/commands/state/experiments.js +15 -0
  273. package/dist/cli/commands/state/experiments.js.map +1 -0
  274. package/dist/cli/commands/state/get.js +130 -0
  275. package/dist/cli/commands/state/get.js.map +1 -0
  276. package/dist/cli/commands/state/health.js +15 -0
  277. package/dist/cli/commands/state/health.js.map +1 -0
  278. package/dist/cli/commands/state/index.js +17 -0
  279. package/dist/cli/commands/state/index.js.map +1 -0
  280. package/dist/cli/commands/state/list.js +195 -0
  281. package/dist/cli/commands/state/list.js.map +1 -0
  282. package/dist/cli/commands/state/objective.js +26 -0
  283. package/dist/cli/commands/state/objective.js.map +1 -0
  284. package/dist/cli/commands/state/plan.js +15 -0
  285. package/dist/cli/commands/state/plan.js.map +1 -0
  286. package/dist/cli/commands/state/planTasks.js +155 -0
  287. package/dist/cli/commands/state/planTasks.js.map +1 -0
  288. package/dist/cli/commands/state/plans.js +155 -0
  289. package/dist/cli/commands/state/plans.js.map +1 -0
  290. package/dist/cli/commands/state/progress.js +14 -0
  291. package/dist/cli/commands/state/progress.js.map +1 -0
  292. package/dist/cli/commands/state/shared.js +15 -0
  293. package/dist/cli/commands/state/shared.js.map +1 -0
  294. package/dist/cli/commands/state/todo.js +43 -0
  295. package/dist/cli/commands/state/todo.js.map +1 -0
  296. package/dist/cli/commands/state/write.js +425 -0
  297. package/dist/cli/commands/state/write.js.map +1 -0
  298. package/dist/cli/commands/upgrade.js +146 -4
  299. package/dist/cli/commands/upgrade.js.map +1 -1
  300. package/dist/cli/commands/upgradeVerify.js +119 -0
  301. package/dist/cli/commands/upgradeVerify.js.map +1 -0
  302. package/dist/cli/commands/validate.js +173 -210
  303. package/dist/cli/commands/validate.js.map +1 -1
  304. package/dist/cli/commands/verify.js +24 -8
  305. package/dist/cli/commands/verify.js.map +1 -1
  306. package/dist/cli/contracts/bundleStatus.js +2 -0
  307. package/dist/cli/contracts/bundleStatus.js.map +1 -0
  308. package/dist/cli/contracts/orientationState.js +2 -0
  309. package/dist/cli/contracts/orientationState.js.map +1 -0
  310. package/dist/cli/dispatch/argvParser.js +33 -0
  311. package/dist/cli/dispatch/argvParser.js.map +1 -0
  312. package/dist/cli/dispatch/check.js +390 -0
  313. package/dist/cli/dispatch/check.js.map +1 -0
  314. package/dist/cli/dispatch/commands.js +27 -0
  315. package/dist/cli/dispatch/commands.js.map +1 -0
  316. package/dist/cli/dispatch/index.js +234 -0
  317. package/dist/cli/dispatch/index.js.map +1 -0
  318. package/dist/cli/dispatch/lifecycle.js +698 -0
  319. package/dist/cli/dispatch/lifecycle.js.map +1 -0
  320. package/dist/cli/dispatch/prime.js +140 -0
  321. package/dist/cli/dispatch/prime.js.map +1 -0
  322. package/dist/cli/dispatch/shared.js +64 -0
  323. package/dist/cli/dispatch/shared.js.map +1 -0
  324. package/dist/cli/dispatch/state.js +141 -0
  325. package/dist/cli/dispatch/state.js.map +1 -0
  326. package/dist/cli/dispatch.js +1 -995
  327. package/dist/cli/dispatch.js.map +1 -1
  328. package/dist/cli/errors.js +53 -0
  329. package/dist/cli/errors.js.map +1 -0
  330. package/dist/cli/help.js +356 -30
  331. package/dist/cli/help.js.map +1 -1
  332. package/dist/cli/migrationRequired.js +89 -0
  333. package/dist/cli/migrationRequired.js.map +1 -0
  334. package/dist/cli/orientation/attention.js +72 -0
  335. package/dist/cli/orientation/attention.js.map +1 -0
  336. package/dist/cli/orientation/corpusCoverage.js +103 -0
  337. package/dist/cli/orientation/corpusCoverage.js.map +1 -0
  338. package/dist/cli/orientation.js +443 -172
  339. package/dist/cli/orientation.js.map +1 -1
  340. package/dist/cli/planArtifacts.js +351 -0
  341. package/dist/cli/planArtifacts.js.map +1 -0
  342. package/dist/cli/planEvidence.js +158 -0
  343. package/dist/cli/planEvidence.js.map +1 -0
  344. package/dist/cli/planLifecycleState.js +36 -0
  345. package/dist/cli/planLifecycleState.js.map +1 -0
  346. package/dist/cli/planTaskIndex.js +12 -0
  347. package/dist/cli/planTaskIndex.js.map +1 -0
  348. package/dist/cli/prime-blob.js +70 -2
  349. package/dist/cli/prime-blob.js.map +1 -1
  350. package/dist/cli/profileAcquisition.js +168 -0
  351. package/dist/cli/profileAcquisition.js.map +1 -0
  352. package/dist/cli/startupCompletenessContract.js +60 -0
  353. package/dist/cli/startupCompletenessContract.js.map +1 -0
  354. package/dist/cli/stateQuery.js +63 -10
  355. package/dist/cli/stateQuery.js.map +1 -1
  356. package/dist/cli/structured.js.map +1 -1
  357. package/dist/cli/todoMarkdown.js +47 -0
  358. package/dist/cli/todoMarkdown.js.map +1 -0
  359. package/dist/cli/todoReadinessSelection.js +192 -0
  360. package/dist/cli/todoReadinessSelection.js.map +1 -0
  361. package/dist/cli/todoSeverity.js +19 -0
  362. package/dist/cli/todoSeverity.js.map +1 -0
  363. package/dist/core/atomicWriter.js +21 -0
  364. package/dist/core/atomicWriter.js.map +1 -0
  365. package/dist/core/difflib.js.map +1 -1
  366. package/dist/core/envPaths.js +21 -0
  367. package/dist/core/envPaths.js.map +1 -0
  368. package/dist/core/jsonValue.js +6 -0
  369. package/dist/core/jsonValue.js.map +1 -0
  370. package/dist/core/paths.js.map +1 -1
  371. package/dist/core/pyjson.js +67 -2
  372. package/dist/core/pyjson.js.map +1 -1
  373. package/dist/core/shell.js +5 -0
  374. package/dist/core/shell.js.map +1 -0
  375. package/dist/core/skillIdentity.js +24 -0
  376. package/dist/core/skillIdentity.js.map +1 -0
  377. package/dist/core/sourceRoot.js.map +1 -1
  378. package/dist/core/text.js +11 -0
  379. package/dist/core/text.js.map +1 -0
  380. package/dist/core/toml.js.map +1 -1
  381. package/dist/core/yaml.js +8 -0
  382. package/dist/core/yaml.js.map +1 -1
  383. package/dist/eval/evalSkills.js +30 -25
  384. package/dist/eval/evalSkills.js.map +1 -1
  385. package/dist/eval/hybridRouteEvaluation.js +156 -0
  386. package/dist/eval/hybridRouteEvaluation.js.map +1 -0
  387. package/dist/eval/semanticEval.js +43 -19
  388. package/dist/eval/semanticEval.js.map +1 -1
  389. package/dist/eval/semanticFixtures.js +16 -4
  390. package/dist/eval/semanticFixtures.js.map +1 -1
  391. package/dist/hooks/common.js +10 -27
  392. package/dist/hooks/common.js.map +1 -1
  393. package/dist/hooks/compaction/apply.js +447 -0
  394. package/dist/hooks/compaction/apply.js.map +1 -0
  395. package/dist/hooks/compaction/dryRun.js +185 -0
  396. package/dist/hooks/compaction/dryRun.js.map +1 -0
  397. package/dist/hooks/compaction/index.js +23 -0
  398. package/dist/hooks/compaction/index.js.map +1 -0
  399. package/dist/hooks/compaction/parse.js +326 -0
  400. package/dist/hooks/compaction/parse.js.map +1 -0
  401. package/dist/hooks/compaction/retention.js +203 -0
  402. package/dist/hooks/compaction/retention.js.map +1 -0
  403. package/dist/hooks/compaction/status.js +361 -0
  404. package/dist/hooks/compaction/status.js.map +1 -0
  405. package/dist/hooks/compaction/types.js +6 -0
  406. package/dist/hooks/compaction/types.js.map +1 -0
  407. package/dist/hooks/cursorPreToolUse.js +1 -1
  408. package/dist/hooks/cursorPreToolUse.js.map +1 -1
  409. package/dist/hooks/cursorSessionStart.js +14 -21
  410. package/dist/hooks/cursorSessionStart.js.map +1 -1
  411. package/dist/hooks/projectHookInput.js +26 -0
  412. package/dist/hooks/projectHookInput.js.map +1 -0
  413. package/dist/hooks/sessionStart.js +55 -170
  414. package/dist/hooks/sessionStart.js.map +1 -1
  415. package/dist/hooks/sessionStop.js +12 -26
  416. package/dist/hooks/sessionStop.js.map +1 -1
  417. package/dist/hooks/validateArtifact/agentFacing.js +10 -0
  418. package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
  419. package/dist/hooks/validateArtifact/index.js +151 -0
  420. package/dist/hooks/validateArtifact/index.js.map +1 -0
  421. package/dist/hooks/validateArtifact/markdown.js +146 -0
  422. package/dist/hooks/validateArtifact/markdown.js.map +1 -0
  423. package/dist/hooks/validateArtifact/runtime.js +86 -0
  424. package/dist/hooks/validateArtifact/runtime.js.map +1 -0
  425. package/dist/hooks/validateArtifact/schema.js +547 -0
  426. package/dist/hooks/validateArtifact/schema.js.map +1 -0
  427. package/dist/hooks/validateArtifact/traversal.js +108 -0
  428. package/dist/hooks/validateArtifact/traversal.js.map +1 -0
  429. package/dist/hooks/validateArtifact/violations.js +108 -0
  430. package/dist/hooks/validateArtifact/violations.js.map +1 -0
  431. package/dist/migrate/v2HandoffManifest.js +455 -0
  432. package/dist/migrate/v2HandoffManifest.js.map +1 -0
  433. package/dist/registries/artifactProtocolIds.js +79 -0
  434. package/dist/registries/artifactProtocolIds.js.map +1 -0
  435. package/dist/registries/artifactRegistry.js +224 -62
  436. package/dist/registries/artifactRegistry.js.map +1 -1
  437. package/dist/registries/artifactSchemaProjection.js +46 -0
  438. package/dist/registries/artifactSchemaProjection.js.map +1 -0
  439. package/dist/registries/capabilityContract.js +141 -12
  440. package/dist/registries/capabilityContract.js.map +1 -1
  441. package/dist/registries/evaluatorHandoffContract.js +171 -0
  442. package/dist/registries/evaluatorHandoffContract.js.map +1 -0
  443. package/dist/registries/evidenceTierContract.js +372 -0
  444. package/dist/registries/evidenceTierContract.js.map +1 -0
  445. package/dist/registries/glossaryAdviceContract.js +79 -0
  446. package/dist/registries/glossaryAdviceContract.js.map +1 -0
  447. package/dist/registries/glossaryCaveatContract.js +68 -0
  448. package/dist/registries/glossaryCaveatContract.js.map +1 -0
  449. package/dist/registries/glossaryConsumerContractValidation.js +788 -0
  450. package/dist/registries/glossaryConsumerContractValidation.js.map +1 -0
  451. package/dist/registries/glossaryEntryContract.js +757 -0
  452. package/dist/registries/glossaryEntryContract.js.map +1 -0
  453. package/dist/registries/glossaryTermIdentity.js +18 -0
  454. package/dist/registries/glossaryTermIdentity.js.map +1 -0
  455. package/dist/registries/glossaryTermOccurrence.js +21 -0
  456. package/dist/registries/glossaryTermOccurrence.js.map +1 -0
  457. package/dist/registries/hybridRoute.js +203 -0
  458. package/dist/registries/hybridRoute.js.map +1 -0
  459. package/dist/registries/hybridRouteReceipt.js +221 -0
  460. package/dist/registries/hybridRouteReceipt.js.map +1 -0
  461. package/dist/registries/packageRegistry.js +90 -230
  462. package/dist/registries/packageRegistry.js.map +1 -1
  463. package/dist/registries/todoReadinessContract.js +449 -0
  464. package/dist/registries/todoReadinessContract.js.map +1 -0
  465. package/dist/registries/triggerLoader.js +175 -0
  466. package/dist/registries/triggerLoader.js.map +1 -0
  467. package/dist/registries/verbosityBudgetContract.js +206 -0
  468. package/dist/registries/verbosityBudgetContract.js.map +1 -0
  469. package/dist/release/releaseMetadata.js +319 -0
  470. package/dist/release/releaseMetadata.js.map +1 -0
  471. package/dist/runtime/lifecycleAdapterContract.js +458 -0
  472. package/dist/runtime/lifecycleAdapterContract.js.map +1 -0
  473. package/dist/runtime/lifecycleAdapters.js +778 -0
  474. package/dist/runtime/lifecycleAdapters.js.map +1 -0
  475. package/dist/runtime/lifecycleAuthority.js +454 -0
  476. package/dist/runtime/lifecycleAuthority.js.map +1 -0
  477. package/dist/runtime/lifecycleOperationContract.js +114 -0
  478. package/dist/runtime/lifecycleOperationContract.js.map +1 -0
  479. package/dist/runtime/lifecycleOperations.js +635 -0
  480. package/dist/runtime/lifecycleOperations.js.map +1 -0
  481. package/dist/runtime/lifecycleOwnershipJournal.js +623 -0
  482. package/dist/runtime/lifecycleOwnershipJournal.js.map +1 -0
  483. package/dist/runtime/lifecyclePublication.js +416 -0
  484. package/dist/runtime/lifecyclePublication.js.map +1 -0
  485. package/dist/runtime/lifecycleSnapshot.js +439 -0
  486. package/dist/runtime/lifecycleSnapshot.js.map +1 -0
  487. package/dist/runtime/nativeResourceCleanup.js +317 -0
  488. package/dist/runtime/nativeResourceCleanup.js.map +1 -0
  489. package/dist/setup/codex/cli.js +130 -0
  490. package/dist/setup/codex/cli.js.map +1 -0
  491. package/dist/setup/codex/configToml.js +558 -0
  492. package/dist/setup/codex/configToml.js.map +1 -0
  493. package/dist/setup/codex/constants.js +14 -0
  494. package/dist/setup/codex/constants.js.map +1 -0
  495. package/dist/setup/codex/installRoot.js +64 -0
  496. package/dist/setup/codex/installRoot.js.map +1 -0
  497. package/dist/setup/codex/state.js +252 -0
  498. package/dist/setup/codex/state.js.map +1 -0
  499. package/dist/setup/codex.js +9 -1055
  500. package/dist/setup/codex.js.map +1 -1
  501. package/dist/setup/opencode.js +21 -0
  502. package/dist/setup/opencode.js.map +1 -0
  503. package/dist/setup/opencodeConstants.js +2 -0
  504. package/dist/setup/opencodeConstants.js.map +1 -0
  505. package/dist/setup/sharedSkill.js +46 -0
  506. package/dist/setup/sharedSkill.js.map +1 -0
  507. package/dist/setup/smokeChecks.js +24 -53
  508. package/dist/setup/smokeChecks.js.map +1 -1
  509. package/dist/state/archiveDiscovery.js +581 -0
  510. package/dist/state/archiveDiscovery.js.map +1 -0
  511. package/dist/state/archivePublication.js +226 -0
  512. package/dist/state/archivePublication.js.map +1 -0
  513. package/dist/state/archiveRecovery.js +238 -0
  514. package/dist/state/archiveRecovery.js.map +1 -0
  515. package/dist/state/archiveReplay.js +54 -0
  516. package/dist/state/archiveReplay.js.map +1 -0
  517. package/dist/state/canonicalMigrationRecord.js +37 -0
  518. package/dist/state/canonicalMigrationRecord.js.map +1 -0
  519. package/dist/state/changelog.js +222 -0
  520. package/dist/state/changelog.js.map +1 -0
  521. package/dist/state/decisionEntities.js +368 -0
  522. package/dist/state/decisionEntities.js.map +1 -0
  523. package/dist/state/decisionLegacyValidation.js +216 -0
  524. package/dist/state/decisionLegacyValidation.js.map +1 -0
  525. package/dist/state/decisionMigrationProvenance.js +200 -0
  526. package/dist/state/decisionMigrationProvenance.js.map +1 -0
  527. package/dist/state/decisionOverlay.js +255 -0
  528. package/dist/state/decisionOverlay.js.map +1 -0
  529. package/dist/state/decisionRevision.js +257 -0
  530. package/dist/state/decisionRevision.js.map +1 -0
  531. package/dist/state/decisionRevisionMigration.js +90 -0
  532. package/dist/state/decisionRevisionMigration.js.map +1 -0
  533. package/dist/state/directRetrieval.js +324 -0
  534. package/dist/state/directRetrieval.js.map +1 -0
  535. package/dist/state/durability.js +325 -0
  536. package/dist/state/durability.js.map +1 -0
  537. package/dist/state/entityCutover.js +294 -0
  538. package/dist/state/entityCutover.js.map +1 -0
  539. package/dist/state/entityCutoverGit.js +128 -0
  540. package/dist/state/entityCutoverGit.js.map +1 -0
  541. package/dist/state/entityGlossaryAuthority.js +14 -0
  542. package/dist/state/entityGlossaryAuthority.js.map +1 -0
  543. package/dist/state/entityListProjection.js +188 -0
  544. package/dist/state/entityListProjection.js.map +1 -0
  545. package/dist/state/entityListRuntimeRegistry.js +50 -0
  546. package/dist/state/entityListRuntimeRegistry.js.map +1 -0
  547. package/dist/state/entityMigrationCausality.js +99 -0
  548. package/dist/state/entityMigrationCausality.js.map +1 -0
  549. package/dist/state/entityMigrationIdentity.js +6 -0
  550. package/dist/state/entityMigrationIdentity.js.map +1 -0
  551. package/dist/state/entityMigrationPreview.js +884 -0
  552. package/dist/state/entityMigrationPreview.js.map +1 -0
  553. package/dist/state/entityPublicationContext.js +807 -0
  554. package/dist/state/entityPublicationContext.js.map +1 -0
  555. package/dist/state/entityRetrievalHelp.js +476 -0
  556. package/dist/state/entityRetrievalHelp.js.map +1 -0
  557. package/dist/state/entityStorage.js +897 -0
  558. package/dist/state/entityStorage.js.map +1 -0
  559. package/dist/state/exactReplacementRecovery.js +19 -0
  560. package/dist/state/exactReplacementRecovery.js.map +1 -0
  561. package/dist/state/experimentArchive.js +64 -0
  562. package/dist/state/experimentArchive.js.map +1 -0
  563. package/dist/state/experimentIdentity.js +203 -0
  564. package/dist/state/experimentIdentity.js.map +1 -0
  565. package/dist/state/healthEntities.js +263 -0
  566. package/dist/state/healthEntities.js.map +1 -0
  567. package/dist/state/healthEntityValidation.js +19 -0
  568. package/dist/state/healthEntityValidation.js.map +1 -0
  569. package/dist/state/healthRepair.js +70 -0
  570. package/dist/state/healthRepair.js.map +1 -0
  571. package/dist/state/installRoot.js +64 -24
  572. package/dist/state/installRoot.js.map +1 -1
  573. package/dist/state/legacyEntityCutoverEvidence.js +66 -0
  574. package/dist/state/legacyEntityCutoverEvidence.js.map +1 -0
  575. package/dist/state/legacyIdentity.js +48 -0
  576. package/dist/state/legacyIdentity.js.map +1 -0
  577. package/dist/state/legacySummaryRecord.js +7 -0
  578. package/dist/state/legacySummaryRecord.js.map +1 -0
  579. package/dist/state/listAccounting.js +55 -0
  580. package/dist/state/listAccounting.js.map +1 -0
  581. package/dist/state/listClassification.js +18 -0
  582. package/dist/state/listClassification.js.map +1 -0
  583. package/dist/state/listCursor.js +43 -0
  584. package/dist/state/listCursor.js.map +1 -0
  585. package/dist/state/listRetrieval.js +782 -0
  586. package/dist/state/listRetrieval.js.map +1 -0
  587. package/dist/state/migrationSourceBinding.js +31 -0
  588. package/dist/state/migrationSourceBinding.js.map +1 -0
  589. package/dist/state/objectiveExperimentEntities.js +323 -0
  590. package/dist/state/objectiveExperimentEntities.js.map +1 -0
  591. package/dist/state/planEntities.js +531 -0
  592. package/dist/state/planEntities.js.map +1 -0
  593. package/dist/state/planIdentity.js +48 -0
  594. package/dist/state/planIdentity.js.map +1 -0
  595. package/dist/state/planRetrieval.js +314 -0
  596. package/dist/state/planRetrieval.js.map +1 -0
  597. package/dist/state/planTaskRetrieval.js +295 -0
  598. package/dist/state/planTaskRetrieval.js.map +1 -0
  599. package/dist/state/progressEntities.js +513 -0
  600. package/dist/state/progressEntities.js.map +1 -0
  601. package/dist/state/progressGlossaryCaveat.js +169 -0
  602. package/dist/state/progressGlossaryCaveat.js.map +1 -0
  603. package/dist/state/progressPublicationOrder.js +20 -0
  604. package/dist/state/progressPublicationOrder.js.map +1 -0
  605. package/dist/state/projectRoot.js +63 -0
  606. package/dist/state/projectRoot.js.map +1 -0
  607. package/dist/state/projectionPolicy.js +191 -0
  608. package/dist/state/projectionPolicy.js.map +1 -0
  609. package/dist/state/retrievalAuthority.js +157 -0
  610. package/dist/state/retrievalAuthority.js.map +1 -0
  611. package/dist/state/safeProjectFile.js +156 -0
  612. package/dist/state/safeProjectFile.js.map +1 -0
  613. package/dist/state/startupAnalysis/benchmark.js +433 -0
  614. package/dist/state/startupAnalysis/benchmark.js.map +1 -0
  615. package/dist/state/startupAnalysis/contract.js +126 -0
  616. package/dist/state/startupAnalysis/contract.js.map +1 -0
  617. package/dist/state/startupAnalysis/helpers.js +287 -0
  618. package/dist/state/startupAnalysis/helpers.js.map +1 -0
  619. package/dist/state/startupAnalysis/index.js +7 -0
  620. package/dist/state/startupAnalysis/index.js.map +1 -0
  621. package/dist/state/startupAnalysis/metrics.js +341 -0
  622. package/dist/state/startupAnalysis/metrics.js.map +1 -0
  623. package/dist/state/startupAnalysis/records.js +199 -0
  624. package/dist/state/startupAnalysis/records.js.map +1 -0
  625. package/dist/state/startupAnalysis/report.js +112 -0
  626. package/dist/state/startupAnalysis/report.js.map +1 -0
  627. package/dist/state/startupAnalysis/threshold.js +513 -0
  628. package/dist/state/startupAnalysis/threshold.js.map +1 -0
  629. package/dist/state/startupAnalysis.js +2 -1952
  630. package/dist/state/startupAnalysis.js.map +1 -1
  631. package/dist/state/startupProjection.js +499 -0
  632. package/dist/state/startupProjection.js.map +1 -0
  633. package/dist/state/stateMode.js +86 -0
  634. package/dist/state/stateMode.js.map +1 -0
  635. package/dist/state/stateStorageAuthority.js +48 -0
  636. package/dist/state/stateStorageAuthority.js.map +1 -0
  637. package/dist/state/summaryEntityRead.js +26 -0
  638. package/dist/state/summaryEntityRead.js.map +1 -0
  639. package/dist/state/summaryMigrationProvenance.js +67 -0
  640. package/dist/state/summaryMigrationProvenance.js.map +1 -0
  641. package/dist/state/summarySourceRowAuthority.js +37 -0
  642. package/dist/state/summarySourceRowAuthority.js.map +1 -0
  643. package/dist/state/todoDocsEntities.js +986 -0
  644. package/dist/state/todoDocsEntities.js.map +1 -0
  645. package/dist/state/todoDocsEntityValidation.js +159 -0
  646. package/dist/state/todoDocsEntityValidation.js.map +1 -0
  647. package/dist/state/todoReconciliationActivation.js +63 -0
  648. package/dist/state/todoReconciliationActivation.js.map +1 -0
  649. package/dist/state/todoReconciliationTransaction.js +554 -0
  650. package/dist/state/todoReconciliationTransaction.js.map +1 -0
  651. package/dist/state/write/assign.js +21 -0
  652. package/dist/state/write/assign.js.map +1 -0
  653. package/dist/state/write/candidateMutation.js +270 -0
  654. package/dist/state/write/candidateMutation.js.map +1 -0
  655. package/dist/state/write/errors.js +12 -0
  656. package/dist/state/write/errors.js.map +1 -0
  657. package/dist/state/write/experimentPublication.js +193 -0
  658. package/dist/state/write/experimentPublication.js.map +1 -0
  659. package/dist/state/write/explain.js +333 -0
  660. package/dist/state/write/explain.js.map +1 -0
  661. package/dist/state/write/fields.js +62 -0
  662. package/dist/state/write/fields.js.map +1 -0
  663. package/dist/state/write/glossaryPublication.js +264 -0
  664. package/dist/state/write/glossaryPublication.js.map +1 -0
  665. package/dist/state/write/grammar.js +271 -0
  666. package/dist/state/write/grammar.js.map +1 -0
  667. package/dist/state/write/helpers.js +30 -0
  668. package/dist/state/write/helpers.js.map +1 -0
  669. package/dist/state/write/index.js +13 -0
  670. package/dist/state/write/index.js.map +1 -0
  671. package/dist/state/write/input.js +368 -0
  672. package/dist/state/write/input.js.map +1 -0
  673. package/dist/state/write/lock.js +838 -0
  674. package/dist/state/write/lock.js.map +1 -0
  675. package/dist/state/write/mutation.js +235 -0
  676. package/dist/state/write/mutation.js.map +1 -0
  677. package/dist/state/write/operations.js +170 -0
  678. package/dist/state/write/operations.js.map +1 -0
  679. package/dist/state/write/planEvaluation.js +129 -0
  680. package/dist/state/write/planEvaluation.js.map +1 -0
  681. package/dist/state/write/planPublication.js +180 -0
  682. package/dist/state/write/planPublication.js.map +1 -0
  683. package/dist/state/write/runtimeOperations.js +65 -0
  684. package/dist/state/write/runtimeOperations.js.map +1 -0
  685. package/dist/state/write/serialize.js +2 -0
  686. package/dist/state/write/serialize.js.map +1 -0
  687. package/dist/state/write/transaction.js +53 -0
  688. package/dist/state/write/transaction.js.map +1 -0
  689. package/dist/state/write/validate.js +8 -0
  690. package/dist/state/write/validate.js.map +1 -0
  691. package/dist/upgrade/appContentRefresh.js +384 -0
  692. package/dist/upgrade/appContentRefresh.js.map +1 -0
  693. package/dist/upgrade/appModel.js +8 -6
  694. package/dist/upgrade/appModel.js.map +1 -1
  695. package/dist/upgrade/atomicWriter.js +2 -0
  696. package/dist/upgrade/atomicWriter.js.map +1 -0
  697. package/dist/upgrade/bundleEvidence.js +34 -0
  698. package/dist/upgrade/bundleEvidence.js.map +1 -0
  699. package/dist/upgrade/channels.js +12 -7
  700. package/dist/upgrade/channels.js.map +1 -1
  701. package/dist/upgrade/coexistenceProbe.js +105 -0
  702. package/dist/upgrade/coexistenceProbe.js.map +1 -0
  703. package/dist/upgrade/compatibility.js +56 -20
  704. package/dist/upgrade/compatibility.js.map +1 -1
  705. package/dist/upgrade/doctor.js +197 -191
  706. package/dist/upgrade/doctor.js.map +1 -1
  707. package/dist/upgrade/doctorClassifier.js +188 -0
  708. package/dist/upgrade/doctorClassifier.js.map +1 -0
  709. package/dist/upgrade/installedHooksRetirement.js +197 -0
  710. package/dist/upgrade/installedHooksRetirement.js.map +1 -0
  711. package/dist/upgrade/legacyAgentCleanup.js +283 -0
  712. package/dist/upgrade/legacyAgentCleanup.js.map +1 -0
  713. package/dist/upgrade/lifecycleUpgrade.js +114 -0
  714. package/dist/upgrade/lifecycleUpgrade.js.map +1 -0
  715. package/dist/upgrade/migrateArtifactsV2ToV3.js +363 -137
  716. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  717. package/dist/upgrade/migrationPublication.js +123 -0
  718. package/dist/upgrade/migrationPublication.js.map +1 -0
  719. package/dist/upgrade/nextMajorDoctor.js +156 -0
  720. package/dist/upgrade/nextMajorDoctor.js.map +1 -0
  721. package/dist/upgrade/npxPlatformStatus.js +23 -0
  722. package/dist/upgrade/npxPlatformStatus.js.map +1 -0
  723. package/dist/upgrade/projectIntegration.js +142 -171
  724. package/dist/upgrade/projectIntegration.js.map +1 -1
  725. package/dist/upgrade/projectIntegrationDecision.js +51 -0
  726. package/dist/upgrade/projectIntegrationDecision.js.map +1 -0
  727. package/dist/upgrade/runtimeMigration.js +336 -281
  728. package/dist/upgrade/runtimeMigration.js.map +1 -1
  729. package/dist/upgrade/upgradeCommands.js +9 -0
  730. package/dist/upgrade/upgradeCommands.js.map +1 -1
  731. package/dist/upgrade/upgradeLock.js +86 -0
  732. package/dist/upgrade/upgradeLock.js.map +1 -0
  733. package/dist/upgrade/upgradeOrchestrator.js +217 -56
  734. package/dist/upgrade/upgradeOrchestrator.js.map +1 -1
  735. package/dist/upgrade/v3CapabilitySurface.js +15 -0
  736. package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
  737. package/dist/upgrade/versionResolution.js +12 -4
  738. package/dist/upgrade/versionResolution.js.map +1 -1
  739. package/dist/validate/appHomeContract.js +5 -9
  740. package/dist/validate/appHomeContract.js.map +1 -1
  741. package/dist/validate/capability.js +144 -14
  742. package/dist/validate/capability.js.map +1 -1
  743. package/dist/validate/crossCapability.js +15 -9
  744. package/dist/validate/crossCapability.js.map +1 -1
  745. package/dist/validate/selfAudit.js +73 -36
  746. package/dist/validate/selfAudit.js.map +1 -1
  747. package/dist/validate/v1LegacyCruft.js +141 -0
  748. package/dist/validate/v1LegacyCruft.js.map +1 -0
  749. package/dist/validate/vocabularyAuthority.js +305 -0
  750. package/dist/validate/vocabularyAuthority.js.map +1 -0
  751. package/package.json +46 -27
  752. package/bundle/references/adapters/cursor.md +0 -213
  753. package/bundle/references/adapters/opencode.md +0 -530
  754. package/bundle/references/adapters/runtime-adapter-characterization.md +0 -79
  755. package/bundle/references/adapters/runtime-adapter-interface-model.yaml +0 -200
  756. package/bundle/references/adapters/runtime-adapter-registry.yaml +0 -548
  757. package/bundle/references/adapters/runtime-feature-parity.md +0 -189
  758. package/bundle/references/v1-section-mapping.md +0 -47
  759. package/bundle/skills/agentera/.claude-plugin/plugin.json +0 -27
  760. package/bundle/skills/agentera/agents/dokumentera.toml +0 -6
  761. package/bundle/skills/agentera/agents/hej.toml +0 -6
  762. package/bundle/skills/agentera/agents/inspektera.toml +0 -6
  763. package/bundle/skills/agentera/agents/inspirera.toml +0 -6
  764. package/bundle/skills/agentera/agents/optimera.toml +0 -6
  765. package/bundle/skills/agentera/agents/orkestrera.toml +0 -6
  766. package/bundle/skills/agentera/agents/planera.toml +0 -6
  767. package/bundle/skills/agentera/agents/profilera.toml +0 -6
  768. package/bundle/skills/agentera/agents/realisera.toml +0 -6
  769. package/bundle/skills/agentera/agents/resonera.toml +0 -6
  770. package/bundle/skills/agentera/agents/visionera.toml +0 -6
  771. package/bundle/skills/agentera/agents/visualisera.toml +0 -6
  772. package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
  773. package/bundle/skills/agentera/capabilities/dokumentera/schemas/artifacts.yaml +0 -73
  774. package/bundle/skills/agentera/capabilities/dokumentera/schemas/triggers.yaml +0 -35
  775. package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
  776. package/bundle/skills/agentera/capabilities/hej/schemas/artifacts.yaml +0 -69
  777. package/bundle/skills/agentera/capabilities/hej/schemas/triggers.yaml +0 -58
  778. package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
  779. package/bundle/skills/agentera/capabilities/inspektera/schemas/artifacts.yaml +0 -76
  780. package/bundle/skills/agentera/capabilities/inspektera/schemas/triggers.yaml +0 -38
  781. package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
  782. package/bundle/skills/agentera/capabilities/inspirera/schemas/artifacts.yaml +0 -24
  783. package/bundle/skills/agentera/capabilities/inspirera/schemas/triggers.yaml +0 -34
  784. package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
  785. package/bundle/skills/agentera/capabilities/optimera/schemas/triggers.yaml +0 -39
  786. package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
  787. package/bundle/skills/agentera/capabilities/orkestrera/schemas/artifacts.yaml +0 -64
  788. package/bundle/skills/agentera/capabilities/orkestrera/schemas/triggers.yaml +0 -42
  789. package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +0 -107
  790. package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
  791. package/bundle/skills/agentera/capabilities/planera/schemas/artifacts.yaml +0 -62
  792. package/bundle/skills/agentera/capabilities/planera/schemas/triggers.yaml +0 -34
  793. package/bundle/skills/agentera/capabilities/planera/schemas/validation.yaml +0 -61
  794. package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
  795. package/bundle/skills/agentera/capabilities/profilera/schemas/artifacts.yaml +0 -18
  796. package/bundle/skills/agentera/capabilities/profilera/schemas/triggers.yaml +0 -45
  797. package/bundle/skills/agentera/capabilities/profilera/schemas/validation.yaml +0 -57
  798. package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
  799. package/bundle/skills/agentera/capabilities/realisera/schemas/artifacts.yaml +0 -80
  800. package/bundle/skills/agentera/capabilities/realisera/schemas/triggers.yaml +0 -39
  801. package/bundle/skills/agentera/capabilities/realisera/schemas/validation.yaml +0 -110
  802. package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
  803. package/bundle/skills/agentera/capabilities/resonera/schemas/artifacts.yaml +0 -47
  804. package/bundle/skills/agentera/capabilities/resonera/schemas/triggers.yaml +0 -46
  805. package/bundle/skills/agentera/capabilities/resonera/schemas/validation.yaml +0 -77
  806. package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
  807. package/bundle/skills/agentera/capabilities/visionera/schemas/triggers.yaml +0 -41
  808. package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
  809. package/bundle/skills/agentera/capabilities/visualisera/schemas/triggers.yaml +0 -33
  810. package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
  811. package/bundle/skills/hej/SKILL.md +0 -69
  812. package/bundle/skills/hej/agents/hej.toml +0 -11
  813. package/bundle/skills/hej/agents/openai.yaml +0 -8
  814. package/dist/cli/commands/backfill.js +0 -84
  815. package/dist/cli/commands/backfill.js.map +0 -1
  816. package/dist/cli/commands/state.js +0 -1012
  817. package/dist/cli/commands/state.js.map +0 -1
  818. package/dist/core/git.js +0 -43
  819. package/dist/core/git.js.map +0 -1
  820. package/dist/hooks/compaction.js +0 -935
  821. package/dist/hooks/compaction.js.map +0 -1
  822. package/dist/hooks/validateArtifact.js +0 -933
  823. package/dist/hooks/validateArtifact.js.map +0 -1
  824. package/dist/registries/runtimeAdapterRegistry.js +0 -315
  825. package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
  826. package/dist/setup/copilot.js +0 -227
  827. package/dist/setup/copilot.js.map +0 -1
  828. package/dist/setup/cursor.js +0 -127
  829. package/dist/setup/cursor.js.map +0 -1
  830. package/dist/setup/doctor.js +0 -1297
  831. package/dist/setup/doctor.js.map +0 -1
  832. package/dist/state/progressCommit.js +0 -289
  833. package/dist/state/progressCommit.js.map +0 -1
  834. package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -571
  835. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
  836. package/dist/validate/lifecycleAdapters.js +0 -772
  837. package/dist/validate/lifecycleAdapters.js.map +0 -1
  838. /package/bundle/skills/agentera/capabilities/{dokumentera → document}/schemas/exit.yaml +0 -0
  839. /package/bundle/skills/agentera/capabilities/{inspirera → research}/schemas/exit.yaml +0 -0
  840. /package/bundle/skills/agentera/capabilities/{hej → status}/schemas/exit.yaml +0 -0
@@ -1,32 +1,25 @@
1
1
  # Todo Artifact Schema
2
2
  #
3
- # Open issues and tasks maintained by realisera and inspektera. Severity-ranked
4
- # checklist of work to be done, resolved items, and deferred work.
3
+ # Open issues and tasks maintained by build and audit. Severity-ranked
4
+ # checklist of work to be done, resolved items, and deferred work. New writes
5
+ # use the typed record below; the legacy description form remains readable only
6
+ # through the explicit compatibility boundary used by entity migration.
5
7
  #
6
- # Note: TODO.md is a human-facing Markdown artifact. It remains at the
7
- # project root and is not migrated to YAML. This schema exists for validation
8
- # and CLI discovery consistency.
8
+ # Marker-absent projects retain TODO.md as legacy authority. After durable
9
+ # entity cutover, each item is authoritative in one shared-contract entity
10
+ # file and `agentera state todo list` renders the bounded human-facing view.
9
11
 
10
12
  meta:
11
13
  name: todo
12
14
  version: "1.0.0"
13
15
  description: >-
14
16
  Open issues and tasks. Produced by capabilities that file work or findings.
15
- Human-facing: remains Markdown at project root.
17
+ Human-facing legacy aggregate before cutover; bounded entity view after cutover.
16
18
  artifact_type: human_facing
17
19
  path: "TODO.md"
18
20
  producer:
19
- [
20
- dokumentera,
21
- inspektera,
22
- inspirera,
23
- optimera,
24
- orkestrera,
25
- realisera,
26
- resonera,
27
- visualisera,
28
- ]
29
- consumers: [hej, all_skills]
21
+ [document, audit, research, optimize, orchestrate, build, discuss, design]
22
+ consumers: [status, all_skills]
30
23
  format: markdown
31
24
 
32
25
  GROUP_PREFIXES:
@@ -38,6 +31,7 @@ GROUP_PREFIXES:
38
31
  BUDGET:
39
32
  1:
40
33
  id: TB1
34
+ scope: full_file
41
35
  token_budget: 5000
42
36
  description: >-
43
37
  Maximum tokens for TODO.md content. Exceeding triggers compaction.
@@ -55,13 +49,58 @@ ITEM:
55
49
  - "Must be one of: critical, degraded, normal, annoying"
56
50
  2:
57
51
  id: TI2
58
- field: description
52
+ field: kind
59
53
  type: string
60
54
  required: true
61
55
  description: >-
62
- Brief description of the task or issue.
56
+ Work kind rendered as the public `[kind:target]` marker. It is not
57
+ severity; severity describes immediate impact.
63
58
  3:
64
59
  id: TI3
60
+ field: target_version
61
+ type: string_or_null
62
+ required: true
63
+ clearable: true
64
+ description: >-
65
+ Release target used with release_blocker; stable-cut dependencies need
66
+ not be critical.
67
+ 4:
68
+ id: TI4
69
+ field: title
70
+ type: string
71
+ required: true
72
+ description: Short public TODO title, owned by TODO.md.
73
+ 5:
74
+ id: TI5
75
+ field: requirements
76
+ type: string_list
77
+ required: true
78
+ clearable: true
79
+ description: Typed public requirements; an empty list is an explicit clear.
80
+ 6:
81
+ id: TI6
82
+ field: acceptance
83
+ type: string_list
84
+ required: true
85
+ clearable: true
86
+ description: Typed public acceptance criteria; an empty list is an explicit clear.
87
+ 7:
88
+ id: TI7
89
+ field: release_blocker
90
+ type: boolean
91
+ required: true
92
+ description: Release-gate state. Do not infer it from severity.
93
+ 8:
94
+ id: TI8
95
+ field: description
96
+ type: string
97
+ required: false
98
+ compatibility: legacy_only
99
+ description: >-
100
+ Legacy public prose retained for existing entities. New typed records
101
+ use title and never store the `[kind:target]` marker in prose.
102
+ 9:
103
+ id: TI9
65
104
  field: status
66
105
  type: string
67
106
  required: true
@@ -69,6 +108,217 @@ ITEM:
69
108
  Current status: open or resolved.
70
109
  validation:
71
110
  - "Must be one of: open, resolved"
111
+ 10:
112
+ id: TI10
113
+ field: readiness
114
+ type: mapping
115
+ required: false
116
+ description: >-
117
+ Reviewer-declared state readiness. Absence means needs-triage and MUST
118
+ NOT be interpreted from description prose. When present, the complete
119
+ nested shape is owned by READINESS below.
120
+
121
+ PUBLIC_OWNERSHIP:
122
+ description: >-
123
+ TODO.md owns public kind, target version, title, requirements, acceptance,
124
+ release blocker, severity, checkbox status, and within-severity order.
125
+ Agentera owns readiness, dependencies, gates, evidence, and lifecycle
126
+ transition metadata. A public disagreement is a conflict, never a silent
127
+ winner.
128
+ render: "[kind:target] title"
129
+ severity: >-
130
+ Immediate impact only. Release gating is release_blocker plus target_version;
131
+ a stable-cut dependency does not need critical severity.
132
+
133
+ LIFECYCLE:
134
+ description: >-
135
+ set-severity, supersede, resolve, and reopen are flag-only typed transitions.
136
+ Each requires a reason and date; supersede additionally requires a distinct
137
+ existing replacement ID. Lifecycle operations are never accepted as
138
+ structured record content and never encoded as Markdown strikethrough.
139
+ clearable_patch_fields: [target_version, requirements, acceptance, readiness]
140
+ cli_owned_fields: [id, artifact, status, public_order, lifecycle]
141
+ transition_fields: [reason, date, replacement]
142
+
143
+ READINESS:
144
+ schema_version: agentera.todoReadiness.v1
145
+ description: >-
146
+ Single authority for a TODO item's intended destination, eligibility,
147
+ attention, recovery, and ordering semantics. Request routing remains
148
+ separate and open-ended language remains host-owned.
149
+ destination:
150
+ phase_authority: protocol.yaml#PHASES[*].capabilities
151
+ description: >-
152
+ The exact allowed destination set is the union of capabilities in the
153
+ canonical PHASES entries. A capability's containing PHASES entry is its
154
+ phase; TODO does not repeat either list or mapping.
155
+ excluded_capabilities:
156
+ status: >-
157
+ Orientation consumes readiness but is not work a TODO can request.
158
+ orchestrate: >-
159
+ Execution mode selects plan tasks but is not a TODO's work intent.
160
+ fields:
161
+ capability:
162
+ type: string
163
+ required: true
164
+ enum_source: protocol.yaml#PHASES[*].capabilities
165
+ description: Reviewer-approved capability that owns the next action.
166
+ reason:
167
+ type: string
168
+ required: true
169
+ non_empty: true
170
+ description: Durable intent explaining why the destination is correct.
171
+ dependencies:
172
+ type: list
173
+ required: true
174
+ description: >-
175
+ Zero or more TODO prerequisites. Only canonical TODO entity IDs are
176
+ valid; artifact-qualified references make cross-artifact mistakes
177
+ explicit instead of guessing identity.
178
+ entries:
179
+ artifact:
180
+ type: string
181
+ required: true
182
+ const: todo
183
+ id:
184
+ type: string
185
+ required: true
186
+ pattern: "^[a-z]{10}$"
187
+ blocked:
188
+ type: [mapping, "null"]
189
+ required: true
190
+ description: Explicit blocker, or null when no blocker is declared.
191
+ fields:
192
+ reason: {type: string, required: true, non_empty: true}
193
+ recovery: {type: string, required: true, non_empty: true}
194
+ gate:
195
+ type: [mapping, "null"]
196
+ required: true
197
+ description: Explicit external or approval gate, or null when ungated.
198
+ fields:
199
+ state: {type: string, required: true, enum: [pending, satisfied]}
200
+ reason: {type: string, required: true, non_empty: true}
201
+ recovery: {type: string, required: true, non_empty: true}
202
+ queue_rank:
203
+ type: integer
204
+ required: true
205
+ minimum: 1
206
+ description: >-
207
+ Reviewer-assigned durable intent order for nonprojected queues and for
208
+ projected entities intentionally absent from managed Markdown. Managed
209
+ projected rows use Markdown order instead. Lower values run first when
210
+ queue rank applies; the number is priority, not time.
211
+ order_reason:
212
+ type: string
213
+ required: true
214
+ non_empty: true
215
+ description: Durable reason for the queue_rank assignment.
216
+ evaluation:
217
+ precedence:
218
+ - todo_resolved
219
+ - readiness_absent
220
+ - blocked
221
+ - gate_pending
222
+ - dependency_cross_artifact
223
+ - dependency_missing
224
+ - dependency_cycle
225
+ - dependency_open
226
+ - ordering_conflict
227
+ - actionable
228
+ description: >-
229
+ Evaluate once in this order against complete entity state. The first
230
+ matching item result is final; bounded output projection happens afterward.
231
+ ordering_conflict applies only in nonprojected ordering mode.
232
+ outcomes:
233
+ todo_resolved:
234
+ result: resolved
235
+ eligible: false
236
+ attention: none
237
+ recovery: null
238
+ readiness_absent:
239
+ result: needs-triage
240
+ eligible: false
241
+ attention: item
242
+ recovery: Review the item and declare readiness through the typed TODO writer.
243
+ blocked:
244
+ result: blocked
245
+ eligible: false
246
+ attention: item
247
+ recovery: Emit only the declared bounded blocked.recovery action.
248
+ gate_pending:
249
+ result: gated
250
+ eligible: false
251
+ attention: none
252
+ recovery: Emit only the declared bounded gate.recovery action; re-evaluate after the gate is satisfied.
253
+ dependency_cross_artifact:
254
+ result: needs-triage
255
+ eligible: false
256
+ attention: item
257
+ recovery: Replace the reference with a canonical TODO dependency or remove it after review.
258
+ dependency_missing:
259
+ result: needs-triage
260
+ eligible: false
261
+ attention: item
262
+ recovery: Restore the referenced TODO or remove the stale dependency after review.
263
+ dependency_cycle:
264
+ result: needs-triage
265
+ eligible: false
266
+ attention: item
267
+ recovery: Break the cycle by reviewing and updating at least one TODO dependency.
268
+ dependency_open:
269
+ result: waiting
270
+ eligible: false
271
+ attention: none
272
+ recovery: Resolve the canonical TODO dependency, then re-evaluate this item.
273
+ dependency_resolved:
274
+ result: satisfied
275
+ eligible: null
276
+ attention: none
277
+ recovery: null
278
+ ordering_conflict:
279
+ result: needs-triage
280
+ eligible: false
281
+ attention: item
282
+ recovery: Assign distinct queue_rank values to same-severity actionable items after review.
283
+ actionable:
284
+ result: actionable
285
+ eligible: true
286
+ attention: none
287
+ recovery: null
288
+ queue_outcomes:
289
+ mixed_actionable_and_triage:
290
+ selection: highest_ordered_actionable
291
+ attention: bounded_triage_summary
292
+ recovery: Review unannotated or invalid items separately; do not displace actionable work.
293
+ all_non_actionable:
294
+ selection: abstain
295
+ attention: bounded_highest_severity_summary
296
+ recovery: Emit the first matching contract-owned item recovery; never infer plan or build from prose.
297
+ ordering:
298
+ primary: protocol.yaml#SEVERITY_ISSUE
299
+ modes:
300
+ nonprojected:
301
+ within_severity: queue_rank_ascending
302
+ duplicate_rank: ordering_conflict
303
+ prohibited_tiebreakers:
304
+ - entity_id
305
+ - file_order
306
+ - filesystem_time
307
+ - created_or_modified_time
308
+ - description_text
309
+ projected_startup:
310
+ entity_annotation: required_for_every_entity
311
+ eligibility: before_order
312
+ managed_before_absent: true
313
+ managed_within_severity: markdown_order_ascending
314
+ managed_duplicate_rank: ignored
315
+ absent_within_severity: queue_rank_then_id
316
+ absent_duplicate_rank: entity_id_ascending
317
+ description: >-
318
+ Severity remains primary. Nonprojected callers retain reviewed queue-rank
319
+ conflict behavior. Projected startup declares one order annotation for
320
+ every entity, filters operationally ineligible items first, then orders
321
+ managed rows by Markdown and absent rows by queue rank and ID.
72
322
 
73
323
  CONVENTION:
74
324
  1:
@@ -76,16 +326,17 @@ CONVENTION:
76
326
  field: type_tag
77
327
  level: advisory
78
328
  description: >-
79
- Each item should carry a type tag such as [fix], [feat], [chore],
80
- [test], [perf], or [docs] for commit-scope alignment and scan
81
- discoverability.
329
+ Each item should carry a type tag such as [fix], [feat], [refactor],
330
+ [chore], [test], [perf], or [docs] for commit-scope alignment and
331
+ scan discoverability.
82
332
  2:
83
333
  id: TC2
84
334
  field: version_suffix
85
335
  level: advisory
86
336
  description: >-
87
- Feature and fix items should include a version scope like [fix:2.4.x]
88
- or [feat:2.3.x] when the work targets a specific release train.
337
+ Optional train scope in `[type:train]` form, e.g. `[fix:train]`, when
338
+ the work targets a specific release train; most common on feat and fix
339
+ items. Omit the train suffix when the item is not train-scoped.
89
340
  3:
90
341
  id: TC3
91
342
  field: title_format
@@ -95,16 +346,77 @@ CONVENTION:
95
346
  either all plain prose or all "**BoldTitle**: description".
96
347
  4:
97
348
  id: TC4
98
- field: resolved_summary
349
+ field: resolved_checkbox
99
350
  level: advisory
100
351
  description: >-
101
- Resolved items should end with resolved by ..." to distinguish
102
- completed work from open or deferred items at a glance.
352
+ Resolved items should use a checked GitHub task-list checkbox
353
+ (`- [x]`) before the task text. Open items use `- [ ]`. The
354
+ checkbox state is the canonical completion marker; do not wrap
355
+ resolved text in Markdown strikethrough.
103
356
  5:
104
357
  id: TC5
105
- field: resolved_strikethrough
358
+ field: severity_band_policy
359
+ level: required
360
+ description: >-
361
+ Severity band policy: all four severity bands (⇶ Critical, ⇉
362
+ Degraded, → Normal, ⇢ Annoying) may be header-only when they
363
+ have no open work. Open items use `- [ ]` only. Resolved items
364
+ must not appear in severity bands (see TC6). Executable checks
365
+ live in packages/cli/src/hooks/validateArtifact/markdown.ts
366
+ `validateMdItems` and packages/cli/src/hooks/compaction/parse.ts.
367
+ 6:
368
+ id: TC6
369
+ field: resolved_section_placement
370
+ level: required
371
+ description: >-
372
+ Resolved ledger policy: completed items live only under
373
+ `## ✓ Resolved` as `- [x] [type:train]` checkboxes. Severity
374
+ bands must not contain `- [x]` or legacy `~~` strikethrough
375
+ resolved rows. The compaction gate counts every resolved row
376
+ (including mis-placed rows until migrated) against the uniform
377
+ 10/40/50 retention cap. `compact --mode fix` migrates mis-placed
378
+ rows into `## ✓ Resolved` before applying retention.
379
+ 7:
380
+ id: TC7
381
+ field: resolved_line_provenance
106
382
  level: advisory
107
383
  description: >-
108
- Resolved items should wrap the original task text in Markdown
109
- strikethrough (~~text~~) before the resolution summary, keeping
110
- the original intent readable while visually marking it closed.
384
+ Resolved provenance uses `resolved YYYY-MM-DD` or `resolved @
385
+ <semver>` after the item description. Do not use `resolved on
386
+ feat/v3 @ <hash>` or dual-branch hash reconciliation; git history
387
+ is the archaeology source. Fold the Resolved move into the
388
+ implementation commit — no follow-up hash-backfill commit.
389
+ 8:
390
+ id: TC8
391
+ field: single_resolved_section
392
+ level: required
393
+ description: >-
394
+ Exactly one `## ✓ Resolved` section is permitted. Two or more
395
+ `## ✓ Resolved` sections hide the trailing entries from parsing
396
+ (which processes only the first) and from the compaction budget
397
+ gate. Validation (`validateTodoResolvedPlacement`) and compaction
398
+ (status + apply) refuse with an actionable diagnostic when more
399
+ than one is present; merge the duplicates into a single section
400
+ before compacting. See TC6 for placement and TC9 for recovery.
401
+ 9:
402
+ id: TC9
403
+ field: bounded_queue_not_lossless_archive
404
+ level: required
405
+ description: >-
406
+ TODO.md is a bounded human-facing queue, not a lossless numbered
407
+ archive. It is excluded from the lossless numbered-archive model
408
+ that governs progress, decisions, and health (those preserve
409
+ verified numbered archives; TODO does not). Older resolved
410
+ entries and their detail bodies may be summarized to one-line or
411
+ removed entirely to stay within the 10/40/50 retention cap;
412
+ removal is destructive in the working tree. The first ten
413
+ resolved rows are the recent/full-detail tier even when they have
414
+ no indented body; rows 11 through 50 are the summary tier; rows
415
+ beyond 50 are dropped. Git history is the designated archaeology
416
+ source for dropped resolved entries, and only for previously
417
+ committed content: inspect prior versions with
418
+ `git log -p -- :/TODO.md` (the `:/` pathspec is project-root-safe
419
+ regardless of the current working directory). Non-Git projects
420
+ have no historical recovery for dropped entries. Compaction
421
+ diagnostics MUST report removed entries as `dropped` and MUST NOT
422
+ describe TODO compaction as a lossless projection.
@@ -35,13 +35,13 @@ meta:
35
35
  name: vision
36
36
  version: "1.0.0"
37
37
  description: >-
38
- Project vision. Produced by visionera and direction-shaping capabilities.
38
+ Project vision. Produced by vision and direction-shaping capabilities.
39
39
  Consumed by capabilities that need strategic alignment. No compaction:
40
40
  vision is not a growing artifact.
41
41
  artifact_type: agent_facing
42
42
  path: ".agentera/vision.yaml"
43
- producer: [inspirera, realisera, resonera, visionera]
44
- consumers: [dokumentera, hej, inspektera, orkestrera, planera, realisera, resonera, visionera, visualisera]
43
+ producer: [research, build, discuss, vision]
44
+ consumers: [document, status, audit, orchestrate, plan, build, discuss, vision, design]
45
45
  format: yaml
46
46
 
47
47
  GROUP_PREFIXES:
@@ -0,0 +1,191 @@
1
+ import os from "node:os";
2
+ import path from "node:path";
3
+ import { defaultOutputPath, } from "./core.js";
4
+ import { defaultTiersDir, publishEvidenceTiers } from "./evidenceTiers.js";
5
+ import { buildCorpus } from "./corpus.js";
6
+ import { COVERAGE_EXIT_FLAGGED, corpusEnvelopeCoverage, formatCoverageSummaryText, runCoverageAudit, } from "./coverageAudit.js";
7
+ import { formatTruncationWarnings, resolveSqliteCaps } from "./sqliteCaps.js";
8
+ import { resolveCopilotStorePath, resolveCursorChatsPath, resolveCursorProjectsPath, resolveOpencodeDbPath, } from "./cursorSessions.js";
9
+ export function parseExtractArgs(argv, env = process.env, platform = process.platform) {
10
+ const home = env.HOME || (platform === "win32" ? env.USERPROFILE : undefined) || os.homedir();
11
+ const args = {
12
+ output: defaultOutputPath(env, platform),
13
+ tierOutput: null,
14
+ projectRoot: [],
15
+ codexSessionsDir: path.join(home, ".codex", "sessions"),
16
+ claudeProjectsDir: path.join(home, ".claude", "projects"),
17
+ opencodeConversationsDir: null,
18
+ copilotConversationsDir: null,
19
+ cursorProjectsDir: null,
20
+ cursorChatsDir: null,
21
+ noCodex: false,
22
+ importSources: [],
23
+ noOpencode: false,
24
+ noCopilot: false,
25
+ noCursor: false,
26
+ acceptCoverageGap: false,
27
+ coverageAuditOnly: false,
28
+ format: "text",
29
+ };
30
+ let claudeProjectsDirExplicit = false;
31
+ for (let i = 0; i < argv.length; i++) {
32
+ const a = argv[i];
33
+ const val = (name) => {
34
+ if (a === name)
35
+ return argv[++i] ?? null;
36
+ if (a.startsWith(name + "="))
37
+ return a.slice(name.length + 1);
38
+ return null;
39
+ };
40
+ let v;
41
+ // `--output` is a deprecated no-op for back-compat: it targeted the
42
+ // eliminated monolithic corpus.json write. Refresh now publishes bounded
43
+ // tiers via `--tier-output` (default: `defaultTiersDir`). `--output` is
44
+ // accepted to keep older callers from hard-crashing but has no effect.
45
+ if ((v = val("--output")) !== null)
46
+ args.output = v;
47
+ else if ((v = val("--tier-output")) !== null)
48
+ args.tierOutput = v;
49
+ else if ((v = val("--project-root")) !== null)
50
+ args.projectRoot.push(v);
51
+ else if ((v = val("--codex-sessions-dir")) !== null)
52
+ args.codexSessionsDir = v;
53
+ else if ((v = val("--claude-projects-dir")) !== null) {
54
+ args.claudeProjectsDir = v;
55
+ claudeProjectsDirExplicit = true;
56
+ }
57
+ else if ((v = val("--import-source")) !== null) {
58
+ if (v !== "claude")
59
+ throw new Error(`extract-corpus: unsupported historical import source '${v}'; valid source: claude`);
60
+ if (!args.importSources.includes(v))
61
+ args.importSources.push(v);
62
+ }
63
+ else if ((v = val("--opencode-conversations-dir")) !== null)
64
+ args.opencodeConversationsDir = v;
65
+ else if ((v = val("--copilot-conversations-dir")) !== null)
66
+ args.copilotConversationsDir = v;
67
+ else if ((v = val("--cursor-projects-dir")) !== null)
68
+ args.cursorProjectsDir = v;
69
+ else if ((v = val("--cursor-chats-dir")) !== null)
70
+ args.cursorChatsDir = v;
71
+ else if (a === "--no-codex")
72
+ args.noCodex = true;
73
+ else if (a === "--no-opencode")
74
+ args.noOpencode = true;
75
+ else if (a === "--no-copilot")
76
+ args.noCopilot = true;
77
+ else if (a === "--no-cursor")
78
+ args.noCursor = true;
79
+ else if (a === "--accept-coverage-gap")
80
+ args.acceptCoverageGap = true;
81
+ else if (a === "--coverage-audit-only")
82
+ args.coverageAuditOnly = true;
83
+ else if ((v = val("--max-sqlite-sessions")) !== null) {
84
+ args.maxSqliteSessions = Number.parseInt(v, 10);
85
+ if (!Number.isFinite(args.maxSqliteSessions) || args.maxSqliteSessions < 1) {
86
+ throw new Error(`extract-corpus: invalid --max-sqlite-sessions: ${v}`);
87
+ }
88
+ }
89
+ else if ((v = val("--max-sqlite-rows")) !== null) {
90
+ args.maxSqliteRows = Number.parseInt(v, 10);
91
+ if (!Number.isFinite(args.maxSqliteRows) || args.maxSqliteRows < 1) {
92
+ throw new Error(`extract-corpus: invalid --max-sqlite-rows: ${v}`);
93
+ }
94
+ }
95
+ else if ((v = val("--format")) !== null) {
96
+ if (v !== "text" && v !== "json")
97
+ throw new Error(`extract-corpus: unsupported format '${v}'`);
98
+ args.format = v;
99
+ }
100
+ else
101
+ throw new Error(`extract-corpus: unrecognized argument: ${a}`);
102
+ }
103
+ if (claudeProjectsDirExplicit && !args.importSources.includes("claude")) {
104
+ throw new Error("extract-corpus: --claude-projects-dir requires explicit --import-source claude");
105
+ }
106
+ return args;
107
+ }
108
+ /** Engine entry point mirroring scripts/extract_corpus.py main(). */
109
+ export function extractCorpusMain(argv, io = {}) {
110
+ const out = io.out ?? ((t) => process.stdout.write(t + "\n"));
111
+ const err = io.err ?? ((t) => process.stderr.write(t + "\n"));
112
+ const env = io.env ?? process.env;
113
+ const platform = io.platform ?? process.platform;
114
+ const cwd = io.cwd ?? process.cwd();
115
+ let args;
116
+ try {
117
+ args = parseExtractArgs(argv, env, platform);
118
+ }
119
+ catch (exc) {
120
+ err(exc.message);
121
+ return 2;
122
+ }
123
+ const projectRoots = args.projectRoot.length > 0 ? args.projectRoot : [cwd];
124
+ if (args.importSources.includes("claude")) {
125
+ err("Historical import warning: Claude transcripts can contain secrets, file contents, and command output. " +
126
+ "Import is local and read-only; records are labeled historical_import and excluded from active-runtime analytics.");
127
+ }
128
+ const audit = runCoverageAudit(args, env, platform, args.acceptCoverageGap);
129
+ if (args.format === "json") {
130
+ out(JSON.stringify({ coverage_audit: audit }, null, 2));
131
+ }
132
+ else {
133
+ out(formatCoverageSummaryText(audit));
134
+ }
135
+ if (audit.coverage_gap_flagged) {
136
+ err("coverage gap flagged (EX2): available runtime(s) skipped; pass --accept-coverage-gap to proceed");
137
+ return COVERAGE_EXIT_FLAGGED;
138
+ }
139
+ if (args.coverageAuditOnly)
140
+ return 0;
141
+ const sqliteCaps = resolveSqliteCaps(env, {
142
+ maxSessions: args.maxSqliteSessions,
143
+ maxRows: args.maxSqliteRows,
144
+ });
145
+ const skipCursor = args.noCursor;
146
+ const corpus = buildCorpus({
147
+ projectRoots,
148
+ codexSessionsDir: args.noCodex ? null : args.codexSessionsDir,
149
+ claudeProjectsDir: args.importSources.includes("claude") ? args.claudeProjectsDir : null,
150
+ opencodeConversationsDir: args.noOpencode ? null : args.opencodeConversationsDir || resolveOpencodeDbPath(env),
151
+ copilotConversationsDir: args.noCopilot ? null : args.copilotConversationsDir || resolveCopilotStorePath(env),
152
+ cursorProjectsDir: skipCursor ? null : args.cursorProjectsDir || resolveCursorProjectsPath(env),
153
+ cursorChatsDir: skipCursor ? null : args.cursorChatsDir || resolveCursorChatsPath(env),
154
+ coverage: corpusEnvelopeCoverage(audit),
155
+ sqliteCaps,
156
+ });
157
+ const truncationWarning = formatTruncationWarnings(corpus.metadata.runtime_statuses);
158
+ if (truncationWarning)
159
+ err(truncationWarning);
160
+ const total = corpus.metadata.total_records;
161
+ const familyBits = Object.entries(corpus.metadata.families)
162
+ .map(([name, summary]) => `${name}=${summary.count}`)
163
+ .join(", ");
164
+ // Publish bounded evidence tiers as the canonical bounded publication output.
165
+ // The monolithic corpus envelope write is eliminated: all bounded consumers
166
+ // (usage, report, prime coverage, startup analysis, profile synthesis) read
167
+ // the signal tier and full-evidence shards directly. Legacy monolithic state
168
+ // receives deterministic refresh guidance rather than read compatibility.
169
+ const tiersDir = args.tierOutput ?? defaultTiersDir(env, platform);
170
+ const publication = publishEvidenceTiers(corpus.records, {
171
+ tiersDir,
172
+ adapterVersion: corpus.metadata.adapter_version,
173
+ runtimeStatuses: corpus.metadata.runtime_statuses,
174
+ env,
175
+ platform,
176
+ corpusMetadata: {
177
+ extracted_at: corpus.metadata.extracted_at,
178
+ runtime_statuses: corpus.metadata.runtime_statuses,
179
+ coverage_envelope: {
180
+ available_runtimes: corpus.metadata.available_runtimes,
181
+ selected_runtimes: corpus.metadata.selected_runtimes,
182
+ available_but_not_selected: corpus.metadata.available_but_not_selected,
183
+ },
184
+ },
185
+ });
186
+ out(`published tiers: ${tiersDir} (generation ${publication.generation}; ` +
187
+ `${publication.shard_count} shards; ${publication.signal_count} signals; ` +
188
+ `${publication.signal_bytes} bytes${publication.signal_selection.capped ? "; selection applied" : ""}) [${total} records; ${familyBits}]`);
189
+ return 0;
190
+ }
191
+ //# sourceMappingURL=cli.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../../../../../../home/jgabor/git/agentera.release-publish-dev40/packages/cli/src/analytics/extractCorpus/cli.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAE7B,OAAO,EAEL,iBAAiB,GAClB,MAAM,WAAW,CAAC;AACnB,OAAO,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,oBAAoB,CAAC;AAE3E,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EACL,qBAAqB,EACrB,sBAAsB,EACtB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,oBAAoB,CAAC;AAC5B,OAAO,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EACL,uBAAuB,EACvB,sBAAsB,EACtB,yBAAyB,EACzB,qBAAqB,GACtB,MAAM,qBAAqB,CAAC;AAwB7B,MAAM,UAAU,gBAAgB,CAAC,IAAc,EAAE,MAAW,OAAO,CAAC,GAAG,EAAE,WAA4B,OAAO,CAAC,QAAQ;IACnH,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,IAAI,CAAC,QAAQ,KAAK,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,SAAS,CAAC,IAAI,EAAE,CAAC,OAAO,EAAE,CAAC;IAC9F,MAAM,IAAI,GAAgB;QACxB,MAAM,EAAE,iBAAiB,CAAC,GAAG,EAAE,QAAQ,CAAC;QACxC,UAAU,EAAE,IAAI;QAChB,WAAW,EAAE,EAAE;QACf,gBAAgB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,EAAE,UAAU,CAAC;QACvD,iBAAiB,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,SAAS,EAAE,UAAU,CAAC;QACzD,wBAAwB,EAAE,IAAI;QAC9B,uBAAuB,EAAE,IAAI;QAC7B,iBAAiB,EAAE,IAAI;QACvB,cAAc,EAAE,IAAI;QACpB,OAAO,EAAE,KAAK;QACd,aAAa,EAAE,EAAE;QACjB,UAAU,EAAE,KAAK;QACjB,SAAS,EAAE,KAAK;QAChB,QAAQ,EAAE,KAAK;QACf,iBAAiB,EAAE,KAAK;QACxB,iBAAiB,EAAE,KAAK;QACxB,MAAM,EAAE,MAAM;KACf,CAAC;IACF,IAAI,yBAAyB,GAAG,KAAK,CAAC;IACtC,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC,CAAC;QAClB,MAAM,GAAG,GAAG,CAAC,IAAY,EAAiB,EAAE;YAC1C,IAAI,CAAC,KAAK,IAAI;gBAAE,OAAO,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,IAAI,CAAC;YACzC,IAAI,CAAC,CAAC,UAAU,CAAC,IAAI,GAAG,GAAG,CAAC;gBAAE,OAAO,CAAC,CAAC,KAAK,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;YAC9D,OAAO,IAAI,CAAC;QACd,CAAC,CAAC;QACF,IAAI,CAAgB,CAAC;QACrB,oEAAoE;QACpE,yEAAyE;QACzE,wEAAwE;QACxE,uEAAuE;QACvE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;aAC/C,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,eAAe,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,UAAU,GAAG,CAAC,CAAC;aAC7D,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,gBAAgB,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;aACnE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,sBAAsB,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,gBAAgB,GAAG,CAAC,CAAC;aAC1E,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrD,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;YAC3B,yBAAyB,GAAG,IAAI,CAAC;QACnC,CAAC;aACI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,iBAAiB,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC/C,IAAI,CAAC,KAAK,QAAQ;gBAAE,MAAM,IAAI,KAAK,CAAC,yDAAyD,CAAC,yBAAyB,CAAC,CAAC;YACzH,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,CAAC,CAAC;gBAAE,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QAClE,CAAC;aACI,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,8BAA8B,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,wBAAwB,GAAG,CAAC,CAAC;aAC1F,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,6BAA6B,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,uBAAuB,GAAG,CAAC,CAAC;aACxF,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,iBAAiB,GAAG,CAAC,CAAC;aAC5E,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,oBAAoB,CAAC,CAAC,KAAK,IAAI;YAAE,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;aACtE,IAAI,CAAC,KAAK,YAAY;YAAE,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;aAC5C,IAAI,CAAC,KAAK,eAAe;YAAE,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC;aAClD,IAAI,CAAC,KAAK,cAAc;YAAE,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC;aAChD,IAAI,CAAC,KAAK,aAAa;YAAE,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aAC9C,IAAI,CAAC,KAAK,uBAAuB;YAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;aACjE,IAAI,CAAC,KAAK,uBAAuB;YAAE,IAAI,CAAC,iBAAiB,GAAG,IAAI,CAAC;aACjE,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,uBAAuB,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACrD,IAAI,CAAC,iBAAiB,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,IAAI,IAAI,CAAC,iBAAiB,GAAG,CAAC,EAAE,CAAC;gBAC3E,MAAM,IAAI,KAAK,CAAC,kDAAkD,CAAC,EAAE,CAAC,CAAC;YACzE,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,mBAAmB,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YACnD,IAAI,CAAC,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;YAC5C,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,aAAa,CAAC,IAAI,IAAI,CAAC,aAAa,GAAG,CAAC,EAAE,CAAC;gBACnE,MAAM,IAAI,KAAK,CAAC,8CAA8C,CAAC,EAAE,CAAC,CAAC;YACrE,CAAC;QACH,CAAC;aAAM,IAAI,CAAC,CAAC,GAAG,GAAG,CAAC,UAAU,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;YAC1C,IAAI,CAAC,KAAK,MAAM,IAAI,CAAC,KAAK,MAAM;gBAAE,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,GAAG,CAAC,CAAC;YAC/F,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC;QAClB,CAAC;;YAAM,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,EAAE,CAAC,CAAC;IACxE,CAAC;IACD,IAAI,yBAAyB,IAAI,CAAC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QACxE,MAAM,IAAI,KAAK,CAAC,gFAAgF,CAAC,CAAC;IACpG,CAAC;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAUD,qEAAqE;AACrE,MAAM,UAAU,iBAAiB,CAAC,IAAc,EAAE,KAAoB,EAAE;IACtE,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACtE,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,CAAC,CAAC,CAAS,EAAE,EAAE,CAAC,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;IACtE,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC;IAClC,MAAM,QAAQ,GAAG,EAAE,CAAC,QAAQ,IAAI,OAAO,CAAC,QAAQ,CAAC;IACjD,MAAM,GAAG,GAAG,EAAE,CAAC,GAAG,IAAI,OAAO,CAAC,GAAG,EAAE,CAAC;IACpC,IAAI,IAAiB,CAAC;IACtB,IAAI,CAAC;QACH,IAAI,GAAG,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;IAAC,OAAO,GAAG,EAAE,CAAC;QACb,GAAG,CAAE,GAAa,CAAC,OAAO,CAAC,CAAC;QAC5B,OAAO,CAAC,CAAC;IACX,CAAC;IACD,MAAM,YAAY,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC;IAC5E,IAAI,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;QAC1C,GAAG,CACD,wGAAwG;YACxG,kHAAkH,CACnH,CAAC;IACJ,CAAC;IACD,MAAM,KAAK,GAAG,gBAAgB,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ,EAAE,IAAI,CAAC,iBAAiB,CAAC,CAAC;IAC5E,IAAI,IAAI,CAAC,MAAM,KAAK,MAAM,EAAE,CAAC;QAC3B,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,cAAc,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;IAC1D,CAAC;SAAM,CAAC;QACN,GAAG,CAAC,yBAAyB,CAAC,KAAK,CAAC,CAAC,CAAC;IACxC,CAAC;IACD,IAAI,KAAK,CAAC,oBAAoB,EAAE,CAAC;QAC/B,GAAG,CAAC,iGAAiG,CAAC,CAAC;QACvG,OAAO,qBAAqB,CAAC;IAC/B,CAAC;IACD,IAAI,IAAI,CAAC,iBAAiB;QAAE,OAAO,CAAC,CAAC;IACrC,MAAM,UAAU,GAAG,iBAAiB,CAAC,GAAG,EAAE;QACxC,WAAW,EAAE,IAAI,CAAC,iBAAiB;QACnC,OAAO,EAAE,IAAI,CAAC,aAAa;KAC5B,CAAC,CAAC;IACH,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ,CAAC;IACjC,MAAM,MAAM,GAAG,WAAW,CAAC;QACzB,YAAY;QACZ,gBAAgB,EAAE,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,gBAAgB;QAC7D,iBAAiB,EAAE,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,CAAC,CAAC,CAAC,IAAI;QACxF,wBAAwB,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,wBAAwB,IAAI,qBAAqB,CAAC,GAAG,CAAC;QAC9G,uBAAuB,EAAE,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,uBAAuB,IAAI,uBAAuB,CAAC,GAAG,CAAC;QAC7G,iBAAiB,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,iBAAiB,IAAI,yBAAyB,CAAC,GAAG,CAAC;QAC/F,cAAc,EAAE,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,cAAc,IAAI,sBAAsB,CAAC,GAAG,CAAC;QACtF,QAAQ,EAAE,sBAAsB,CAAC,KAAK,CAAC;QACvC,UAAU;KACX,CAAC,CAAC;IACH,MAAM,iBAAiB,GAAG,wBAAwB,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgC,CAAC,CAAC;IACrG,IAAI,iBAAiB;QAAE,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAC9C,MAAM,KAAK,GAAG,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAC;IAC5C,MAAM,UAAU,GAAG,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAAC;SACxD,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,GAAG,IAAI,IAAK,OAAsB,CAAC,KAAK,EAAE,CAAC;SACpE,IAAI,CAAC,IAAI,CAAC,CAAC;IAEd,8EAA8E;IAC9E,4EAA4E;IAC5E,4EAA4E;IAC5E,6EAA6E;IAC7E,0EAA0E;IAC1E,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,IAAI,eAAe,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACnE,MAAM,WAAW,GAAG,oBAAoB,CAAC,MAAM,CAAC,OAAuB,EAAE;QACvE,QAAQ;QACR,cAAc,EAAE,MAAM,CAAC,QAAQ,CAAC,eAAe;QAC/C,eAAe,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgC;QACjE,GAAG;QACH,QAAQ;QACR,cAAc,EAAE;YACd,YAAY,EAAE,MAAM,CAAC,QAAQ,CAAC,YAAY;YAC1C,gBAAgB,EAAE,MAAM,CAAC,QAAQ,CAAC,gBAAgC;YAClE,iBAAiB,EAAE;gBACjB,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB;gBACtD,iBAAiB,EAAE,MAAM,CAAC,QAAQ,CAAC,iBAAiB;gBACpD,0BAA0B,EAAE,MAAM,CAAC,QAAQ,CAAC,0BAA0B;aACvE;SACF;KACF,CAAC,CAAC;IACH,GAAG,CACD,oBAAoB,QAAQ,gBAAgB,WAAW,CAAC,UAAU,IAAI;QACpE,GAAG,WAAW,CAAC,WAAW,YAAY,WAAW,CAAC,YAAY,YAAY;QAC1E,GAAG,WAAW,CAAC,YAAY,SAAS,WAAW,CAAC,gBAAgB,CAAC,MAAM,CAAC,CAAC,CAAC,qBAAqB,CAAC,CAAC,CAAC,EAAE,MAAM,KAAK,aAAa,UAAU,GAAG,CAC5I,CAAC;IACF,OAAO,CAAC,CAAC;AACX,CAAC"}