agentera 3.0.0-dev.7 → 3.0.0-dev.74

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 (763) hide show
  1. package/LICENSE +201 -0
  2. package/README.md +229 -22
  3. package/bundle/.agentera-build-source.json +8 -0
  4. package/bundle/CHANGELOG.md +1361 -0
  5. package/bundle/DESIGN.md +229 -0
  6. package/bundle/LICENSE +201 -0
  7. package/bundle/README.md +143 -0
  8. package/bundle/UPGRADE.md +252 -0
  9. package/bundle/extract-corpus-parity.json +2 -4
  10. package/bundle/fixtures/routing/hybrid-corpus.yaml +154 -0
  11. package/bundle/references/adapters/package-publication.json +484 -0
  12. package/bundle/references/adapters/package-registry.yaml +439 -188
  13. package/bundle/references/adapters/package-surface-characterization.md +68 -34
  14. package/bundle/references/adapters/runtime-lifecycle-adapters.yaml +74 -0
  15. package/bundle/references/adapters/runtime-lifecycle-authority.yaml +62 -0
  16. package/bundle/references/adapters/runtime-lifecycle-operation-contract.yaml +84 -0
  17. package/bundle/references/adapters/runtime-retired-resources.yaml +333 -0
  18. package/bundle/references/analysis/evidence-tier-authority.yaml +559 -0
  19. package/bundle/references/analysis/personal-glossary-evaluation-authority.yaml +175 -0
  20. package/bundle/references/analysis/personal-glossary-evaluation-corpus.yaml +291 -0
  21. package/bundle/references/analysis/personal-glossary-holdout.yaml +192 -0
  22. package/bundle/references/analysis/verification-policy.yaml +266 -0
  23. package/bundle/references/artifacts/artifact-registry-interface-model.yaml +17 -8
  24. package/bundle/references/artifacts/glossary-entry-contract.yaml +2752 -0
  25. package/bundle/references/artifacts/state-storage-authority.yaml +3061 -0
  26. package/bundle/references/artifacts/verbosity-budget-authority.yaml +42 -0
  27. package/bundle/references/cli/app-lifecycle-vocabulary.yaml +3 -4
  28. package/bundle/references/cli/capability-instruction-contract.yaml +11 -14
  29. package/bundle/references/cli/hybrid-route-contract.yaml +438 -0
  30. package/bundle/references/cli/routing-model.md +152 -93
  31. package/bundle/references/cli/trigger-schema-enrichment.md +57 -46
  32. package/bundle/references/cli/update-channels.yaml +6 -4
  33. package/bundle/references/cli/vocabulary-index.yaml +5 -7
  34. package/bundle/references/cli/vocabulary.md +52 -94
  35. package/bundle/references/meta/retained-reference-authority.yaml +166 -0
  36. package/bundle/skills/agentera/SKILL.md +183 -63
  37. package/bundle/skills/agentera/capabilities/audit/schemas/artifacts.yaml +27 -19
  38. package/bundle/skills/agentera/capabilities/audit/schemas/exit.yaml +2 -2
  39. package/bundle/skills/agentera/capabilities/audit/schemas/triggers.yaml +13 -35
  40. package/bundle/skills/agentera/capabilities/audit/schemas/validation.yaml +30 -11
  41. package/bundle/skills/agentera/capabilities/build/schemas/artifacts.yaml +44 -21
  42. package/bundle/skills/agentera/capabilities/build/schemas/exit.yaml +8 -6
  43. package/bundle/skills/agentera/capabilities/build/schemas/triggers.yaml +14 -36
  44. package/bundle/skills/agentera/capabilities/build/schemas/validation.yaml +95 -21
  45. package/bundle/skills/agentera/capabilities/design/schemas/artifacts.yaml +6 -6
  46. package/bundle/skills/agentera/capabilities/design/schemas/exit.yaml +5 -5
  47. package/bundle/skills/agentera/capabilities/design/schemas/triggers.yaml +5 -34
  48. package/bundle/skills/agentera/capabilities/design/schemas/validation.yaml +2 -2
  49. package/bundle/skills/agentera/capabilities/discuss/schemas/artifacts.yaml +17 -13
  50. package/bundle/skills/agentera/capabilities/discuss/schemas/exit.yaml +2 -2
  51. package/bundle/skills/agentera/capabilities/discuss/schemas/triggers.yaml +6 -40
  52. package/bundle/skills/agentera/capabilities/discuss/schemas/validation.yaml +72 -5
  53. package/bundle/skills/agentera/capabilities/document/schemas/artifacts.yaml +24 -17
  54. package/bundle/skills/agentera/capabilities/document/schemas/triggers.yaml +5 -35
  55. package/bundle/skills/agentera/capabilities/document/schemas/validation.yaml +13 -13
  56. package/bundle/skills/agentera/capabilities/optimize/schemas/artifacts.yaml +10 -10
  57. package/bundle/skills/agentera/capabilities/optimize/schemas/exit.yaml +2 -2
  58. package/bundle/skills/agentera/capabilities/optimize/schemas/triggers.yaml +4 -35
  59. package/bundle/skills/agentera/capabilities/optimize/schemas/validation.yaml +3 -3
  60. package/bundle/skills/agentera/capabilities/orchestrate/schemas/artifacts.yaml +34 -22
  61. package/bundle/skills/agentera/capabilities/orchestrate/schemas/exit.yaml +9 -7
  62. package/bundle/skills/agentera/capabilities/orchestrate/schemas/triggers.yaml +5 -37
  63. package/bundle/skills/agentera/capabilities/orchestrate/schemas/validation.yaml +38 -37
  64. package/bundle/skills/agentera/capabilities/plan/schemas/artifacts.yaml +20 -16
  65. package/bundle/skills/agentera/capabilities/plan/schemas/triggers.yaml +8 -31
  66. package/bundle/skills/agentera/capabilities/plan/schemas/validation.yaml +66 -6
  67. package/bundle/skills/agentera/capabilities/profile/schemas/artifacts.yaml +13 -4
  68. package/bundle/skills/agentera/capabilities/profile/schemas/exit.yaml +8 -5
  69. package/bundle/skills/agentera/capabilities/profile/schemas/triggers.yaml +8 -37
  70. package/bundle/skills/agentera/capabilities/profile/schemas/validation.yaml +67 -3
  71. package/bundle/skills/agentera/capabilities/research/schemas/artifacts.yaml +6 -6
  72. package/bundle/skills/agentera/capabilities/research/schemas/triggers.yaml +5 -29
  73. package/bundle/skills/agentera/capabilities/status/schemas/artifacts.yaml +13 -12
  74. package/bundle/skills/agentera/capabilities/status/schemas/triggers.yaml +7 -49
  75. package/bundle/skills/agentera/capabilities/vision/schemas/artifacts.yaml +8 -8
  76. package/bundle/skills/agentera/capabilities/vision/schemas/exit.yaml +7 -6
  77. package/bundle/skills/agentera/capabilities/vision/schemas/triggers.yaml +7 -39
  78. package/bundle/skills/agentera/capabilities/vision/schemas/validation.yaml +14 -16
  79. package/bundle/skills/agentera/capability_schema_contract.yaml +32 -32
  80. package/bundle/skills/agentera/protocol.yaml +4 -4
  81. package/bundle/skills/agentera/route-phrases.yaml +81 -0
  82. package/bundle/skills/agentera/schemas/artifacts/changelog.yaml +1 -0
  83. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +30 -12
  84. package/bundle/skills/agentera/schemas/artifacts/design.yaml +1 -0
  85. package/bundle/skills/agentera/schemas/artifacts/docs.yaml +7 -12
  86. package/bundle/skills/agentera/schemas/artifacts/experiments.yaml +140 -9
  87. package/bundle/skills/agentera/schemas/artifacts/glossary.yaml +87 -0
  88. package/bundle/skills/agentera/schemas/artifacts/health.yaml +56 -19
  89. package/bundle/skills/agentera/schemas/artifacts/objective.yaml +18 -4
  90. package/bundle/skills/agentera/schemas/artifacts/plan.yaml +464 -32
  91. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +131 -18
  92. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +302 -7
  93. package/dist/.agentera-build-source.json +8 -0
  94. package/dist/analytics/extractCorpus/cli.js +52 -11
  95. package/dist/analytics/extractCorpus/copilotSessions.js +19 -8
  96. package/dist/analytics/extractCorpus/core.js +262 -14
  97. package/dist/analytics/extractCorpus/corpus.js +57 -18
  98. package/dist/analytics/extractCorpus/coverageAudit.js +44 -45
  99. package/dist/analytics/extractCorpus/cursorSessions.js +28 -8
  100. package/dist/analytics/extractCorpus/evidenceTiers.js +709 -0
  101. package/dist/analytics/extractCorpus/extractCorpusParity.js +4 -4
  102. package/dist/analytics/extractCorpus/filesystemSources.js +5 -5
  103. package/dist/analytics/extractCorpus/index.js +4 -2
  104. package/dist/analytics/extractCorpus/jsonlSessions.js +76 -8
  105. package/dist/analytics/extractCorpus/sqliteCaps.js +0 -1
  106. package/dist/analytics/extractCorpus/sqliteSessions.js +12 -4
  107. package/dist/analytics/extractCorpus/tierReader.js +108 -0
  108. package/dist/analytics/extractCorpus.js +0 -1
  109. package/dist/analytics/glossaryAdviceResolution.js +166 -0
  110. package/dist/analytics/glossaryInputAcquisition.js +319 -0
  111. package/dist/analytics/personalGlossaryAdmission.js +113 -0
  112. package/dist/analytics/personalGlossaryCandidateProjection.js +692 -0
  113. package/dist/analytics/personalGlossaryCandidateProjectionExcerpts.js +144 -0
  114. package/dist/analytics/personalGlossaryCandidateReadView.js +23 -0
  115. package/dist/analytics/personalGlossaryCurrentGeneration.js +25 -0
  116. package/dist/analytics/personalGlossaryDecision.js +203 -0
  117. package/dist/analytics/personalGlossaryExplicit.js +788 -0
  118. package/dist/analytics/personalGlossaryExplicitMining.js +285 -0
  119. package/dist/analytics/personalGlossaryExplicitScope.js +41 -0
  120. package/dist/analytics/personalGlossaryExplicitSegments.js +418 -0
  121. package/dist/analytics/personalGlossaryExplicitTypes.js +26 -0
  122. package/dist/analytics/personalGlossaryLexicalClassifier.js +175 -0
  123. package/dist/analytics/personalGlossaryProfile.js +229 -0
  124. package/dist/analytics/personalGlossaryRecurrence.js +618 -0
  125. package/dist/analytics/personalGlossaryReviewRecordStorage.js +428 -0
  126. package/dist/analytics/personalGlossaryReviewRecords.js +332 -0
  127. package/dist/analytics/profileSignals.js +211 -0
  128. package/dist/analytics/usageStats.js +150 -23
  129. package/dist/audit/terminologyDrift.js +281 -0
  130. package/dist/bin/agentera.js +3 -2
  131. package/dist/capabilities/audit/instructions.js +16 -6
  132. package/dist/capabilities/build/instructions.js +59 -6
  133. package/dist/capabilities/design/instructions.js +3 -4
  134. package/dist/capabilities/discuss/instructions.js +29 -6
  135. package/dist/capabilities/document/instructions.js +11 -6
  136. package/dist/capabilities/index.js +20 -14
  137. package/dist/capabilities/optimize/instructions.js +14 -6
  138. package/dist/capabilities/orchestrate/instructions.js +42 -6
  139. package/dist/capabilities/plan/instructions.js +30 -3
  140. package/dist/capabilities/profile/instructions.js +104 -5
  141. package/dist/capabilities/research/instructions.js +4 -5
  142. package/dist/capabilities/status/instructions.js +15 -6
  143. package/dist/capabilities/status/startupInstructions.js +34 -0
  144. package/dist/capabilities/vision/instructions.js +3 -5
  145. package/dist/cli/appContext.js +14 -7
  146. package/dist/cli/argvalidate.js +0 -1
  147. package/dist/cli/capabilityContext/benchmark.js +5 -4
  148. package/dist/cli/capabilityContext/bespoke.js +14 -6
  149. package/dist/cli/capabilityContext/build.js +116 -42
  150. package/dist/cli/capabilityContext/closeout.js +30 -27
  151. package/dist/cli/capabilityContext/contract.js +18 -27
  152. package/dist/cli/capabilityContext/evidence.js +84 -77
  153. package/dist/cli/capabilityContext/index.js +0 -1
  154. package/dist/cli/capabilityContext/orchestration.js +42 -18
  155. package/dist/cli/capabilityContext/planState.js +89 -96
  156. package/dist/cli/capabilityContext/progress.js +51 -12
  157. package/dist/cli/capabilityContext/projectVerification.js +409 -0
  158. package/dist/cli/capabilityContext/shared.js +9 -20
  159. package/dist/cli/capabilityContext/slim.js +52 -8
  160. package/dist/cli/capabilityContext/startup.js +51 -114
  161. package/dist/cli/capabilityContext/startupAggregation.js +68 -0
  162. package/dist/cli/capabilityContext/types.js +26 -10
  163. package/dist/cli/capabilityContext.js +0 -1
  164. package/dist/cli/commands/appHome.js +0 -1
  165. package/dist/cli/commands/capability.js +2 -2
  166. package/dist/cli/commands/compact.js +163 -13
  167. package/dist/cli/commands/doctor.js +117 -11
  168. package/dist/cli/commands/durability.js +81 -0
  169. package/dist/cli/commands/glossaryAdvice.js +138 -0
  170. package/dist/cli/commands/lint.js +22 -8
  171. package/dist/cli/commands/personalGlossaryCandidateReads.js +744 -0
  172. package/dist/cli/commands/personalGlossaryDecision.js +349 -0
  173. package/dist/cli/commands/personalGlossaryPublish.js +484 -0
  174. package/dist/cli/commands/personalGlossaryReviewRecordReads.js +209 -0
  175. package/dist/cli/commands/personalGlossaryReviewRecords.js +623 -0
  176. package/dist/cli/commands/prime/briefOrientation.js +845 -0
  177. package/dist/cli/commands/prime/buildExecutionRequest.js +165 -0
  178. package/dist/cli/commands/prime/bundleStatus.js +54 -4
  179. package/dist/cli/commands/prime/collectEntityOrientation.js +326 -0
  180. package/dist/cli/commands/prime/collectOrientationState.js +126 -63
  181. package/dist/cli/commands/prime/orientationOutput.js +267 -56
  182. package/dist/cli/commands/prime/types.js +0 -1
  183. package/dist/cli/commands/prime/v1Migration.js +0 -1
  184. package/dist/cli/commands/prime.js +76 -11
  185. package/dist/cli/commands/profileGrounding.js +55 -0
  186. package/dist/cli/commands/query.js +74 -52
  187. package/dist/cli/commands/report.js +91 -21
  188. package/dist/cli/commands/route.js +142 -0
  189. package/dist/cli/commands/schema.js +436 -138
  190. package/dist/cli/commands/state/decisions.js +40 -56
  191. package/dist/cli/commands/state/docs.js +58 -85
  192. package/dist/cli/commands/state/experimentRecords.js +151 -0
  193. package/dist/cli/commands/state/experiments.js +11 -65
  194. package/dist/cli/commands/state/get.js +129 -0
  195. package/dist/cli/commands/state/health.js +11 -113
  196. package/dist/cli/commands/state/index.js +6 -41
  197. package/dist/cli/commands/state/list.js +194 -0
  198. package/dist/cli/commands/state/objective.js +21 -65
  199. package/dist/cli/commands/state/plan.js +11 -170
  200. package/dist/cli/commands/state/planTasks.js +154 -0
  201. package/dist/cli/commands/state/plans.js +154 -0
  202. package/dist/cli/commands/state/progress.js +11 -45
  203. package/dist/cli/commands/state/shared.js +0 -1
  204. package/dist/cli/commands/state/todo.js +28 -107
  205. package/dist/cli/commands/state/write.js +433 -0
  206. package/dist/cli/commands/upgrade.js +146 -5
  207. package/dist/cli/commands/upgradeVerify.js +118 -0
  208. package/dist/cli/commands/validate.js +235 -136
  209. package/dist/cli/commands/verify.js +73 -16
  210. package/dist/cli/contracts/bundleStatus.js +0 -1
  211. package/dist/cli/contracts/orientationState.js +0 -1
  212. package/dist/cli/dispatch/argvParser.js +0 -1
  213. package/dist/cli/dispatch/check.js +84 -40
  214. package/dist/cli/dispatch/commands.js +3 -3
  215. package/dist/cli/dispatch/index.js +77 -52
  216. package/dist/cli/dispatch/lifecycle.js +162 -62
  217. package/dist/cli/dispatch/prime.js +37 -2
  218. package/dist/cli/dispatch/projections.js +17 -0
  219. package/dist/cli/dispatch/shared.js +1 -2
  220. package/dist/cli/dispatch/state.js +62 -66
  221. package/dist/cli/dispatch.js +0 -1
  222. package/dist/cli/errors.js +16 -17
  223. package/dist/cli/help.js +404 -39
  224. package/dist/cli/migrationRequired.js +125 -0
  225. package/dist/cli/orientation/attention.js +19 -19
  226. package/dist/cli/orientation/corpusCoverage.js +32 -1
  227. package/dist/cli/orientation.js +346 -129
  228. package/dist/cli/planArtifacts.js +350 -0
  229. package/dist/cli/planEvidence.js +157 -0
  230. package/dist/cli/planLifecycleState.js +36 -0
  231. package/dist/cli/planTaskIndex.js +11 -0
  232. package/dist/cli/preCutoverCommand.js +32 -0
  233. package/dist/cli/prime-blob.js +71 -3
  234. package/dist/cli/profileAcquisition.js +167 -0
  235. package/dist/cli/startupCompletenessContract.js +11 -8
  236. package/dist/cli/stateQuery.js +47 -12
  237. package/dist/cli/structured.js +0 -1
  238. package/dist/cli/todoMarkdown.js +25 -12
  239. package/dist/cli/todoReadinessSelection.js +192 -0
  240. package/dist/cli/todoSeverity.js +0 -1
  241. package/dist/core/atomicWriter.js +23 -0
  242. package/dist/core/developmentChannel.js +1 -0
  243. package/dist/core/developmentInvocation.js +377 -0
  244. package/dist/core/difflib.js +0 -1
  245. package/dist/core/envPaths.js +0 -1
  246. package/dist/core/jsonValue.js +0 -1
  247. package/dist/core/paths.js +0 -1
  248. package/dist/core/pyjson.js +0 -1
  249. package/dist/core/shell.js +4 -0
  250. package/dist/core/skillIdentity.js +23 -0
  251. package/dist/core/sourceRoot.js +9 -12
  252. package/dist/core/text.js +10 -0
  253. package/dist/core/toml.js +0 -1
  254. package/dist/core/yaml.js +61 -2
  255. package/dist/eval/evalSkills.js +13 -14
  256. package/dist/eval/glossaryEvaluation.js +751 -0
  257. package/dist/eval/glossaryEvaluationProcess.js +29 -0
  258. package/dist/eval/glossaryEvaluationRunner.js +571 -0
  259. package/dist/eval/glossaryEvaluationSuccessReport.js +297 -0
  260. package/dist/eval/hybridRouteEvaluation.js +155 -0
  261. package/dist/eval/semanticEval.js +0 -1
  262. package/dist/eval/semanticFixtures.js +0 -1
  263. package/dist/hooks/common.js +3 -56
  264. package/dist/hooks/compaction/apply.js +224 -47
  265. package/dist/hooks/compaction/dryRun.js +2 -1
  266. package/dist/hooks/compaction/index.js +5 -6
  267. package/dist/hooks/compaction/parse.js +73 -6
  268. package/dist/hooks/compaction/retention.js +28 -25
  269. package/dist/hooks/compaction/status.js +145 -26
  270. package/dist/hooks/compaction/types.js +0 -1
  271. package/dist/hooks/validateArtifact/agentFacing.js +0 -1
  272. package/dist/hooks/validateArtifact/index.js +6 -65
  273. package/dist/hooks/validateArtifact/markdown.js +9 -10
  274. package/dist/hooks/validateArtifact/schema.js +96 -9
  275. package/dist/hooks/validateArtifact/traversal.js +12 -11
  276. package/dist/hooks/validateArtifact/violations.js +5 -3
  277. package/dist/migrate/v2HandoffManifest.js +8 -3
  278. package/dist/registries/activationContract.js +2 -0
  279. package/dist/registries/activationTuples.js +136 -0
  280. package/dist/registries/artifactProtocolIds.js +2 -1
  281. package/dist/registries/artifactRegistry.js +207 -60
  282. package/dist/registries/artifactSchemaProjection.js +45 -0
  283. package/dist/registries/capabilityContract.js +5 -21
  284. package/dist/registries/evaluatorHandoffContract.js +0 -1
  285. package/dist/registries/evidenceTierContract.js +375 -0
  286. package/dist/registries/explicitSegmentGrammarContract.js +619 -0
  287. package/dist/registries/glossaryAdviceContract.js +79 -0
  288. package/dist/registries/glossaryCandidateContractPaths.js +6 -0
  289. package/dist/registries/glossaryCandidateContracts.js +820 -0
  290. package/dist/registries/glossaryCandidateDecisionAuthority.js +119 -0
  291. package/dist/registries/glossaryCandidateDecisionContract.js +62 -0
  292. package/dist/registries/glossaryCandidateProjectionAuthority.js +197 -0
  293. package/dist/registries/glossaryCandidateProjectionContract.js +104 -0
  294. package/dist/registries/glossaryCaveatContract.js +67 -0
  295. package/dist/registries/glossaryConsumerContractValidation.js +787 -0
  296. package/dist/registries/glossaryEntryContract.js +759 -0
  297. package/dist/registries/glossaryEntryTemporal.js +12 -0
  298. package/dist/registries/glossaryMiningAuthority.js +764 -0
  299. package/dist/registries/glossaryProfileFullContract.js +24 -0
  300. package/dist/registries/glossaryReviewRecordsAuthority.js +426 -0
  301. package/dist/registries/glossaryReviewRecordsContract.js +129 -0
  302. package/dist/registries/glossaryTermIdentity.js +139 -0
  303. package/dist/registries/glossaryTermOccurrence.js +20 -0
  304. package/dist/registries/hybridRoute.js +274 -0
  305. package/dist/registries/hybridRouteReceipt.js +221 -0
  306. package/dist/registries/packagePublication.js +273 -0
  307. package/dist/registries/packageRegistry.js +184 -209
  308. package/dist/registries/personalGlossaryContracts.js +1 -0
  309. package/dist/registries/todoReadinessContract.js +448 -0
  310. package/dist/registries/triggerLoader.js +7 -44
  311. package/dist/registries/verbosityBudgetContract.js +205 -0
  312. package/dist/release/releaseMetadata.js +167 -10
  313. package/dist/runtime/lifecycleAdapterContract.js +457 -0
  314. package/dist/runtime/lifecycleAdapters.js +777 -0
  315. package/dist/runtime/lifecycleAuthority.js +453 -0
  316. package/dist/runtime/lifecycleOperationContract.js +123 -0
  317. package/dist/runtime/lifecycleOperations.js +634 -0
  318. package/dist/runtime/lifecycleOwnershipJournal.js +622 -0
  319. package/dist/runtime/lifecyclePublication.js +415 -0
  320. package/dist/runtime/lifecycleSnapshot.js +438 -0
  321. package/dist/runtime/nativeResourceCleanup.js +502 -0
  322. package/dist/setup/opencode.js +20 -13
  323. package/dist/setup/opencodeConstants.js +1 -0
  324. package/dist/setup/sharedSkill.js +45 -0
  325. package/dist/setup/smokeChecks.js +14 -75
  326. package/dist/state/archiveDiscovery.js +580 -0
  327. package/dist/state/archivePublication.js +225 -0
  328. package/dist/state/archiveRecovery.js +237 -0
  329. package/dist/state/archiveReplay.js +53 -0
  330. package/dist/state/canonicalMigrationRecord.js +36 -0
  331. package/dist/state/changelog.js +221 -0
  332. package/dist/state/decisionEntities.js +367 -0
  333. package/dist/state/decisionLegacyValidation.js +215 -0
  334. package/dist/state/decisionMigrationProvenance.js +199 -0
  335. package/dist/state/decisionOverlay.js +254 -0
  336. package/dist/state/decisionRevision.js +256 -0
  337. package/dist/state/decisionRevisionMigration.js +89 -0
  338. package/dist/state/directRetrieval.js +323 -0
  339. package/dist/state/durability.js +324 -0
  340. package/dist/state/entityCutover.js +459 -0
  341. package/dist/state/entityCutoverGit.js +127 -0
  342. package/dist/state/entityGlossaryAuthority.js +13 -0
  343. package/dist/state/entityListProjection.js +187 -0
  344. package/dist/state/entityListRuntimeRegistry.js +85 -0
  345. package/dist/state/entityMigrationCausality.js +97 -0
  346. package/dist/state/entityMigrationIdentity.js +5 -0
  347. package/dist/state/entityMigrationPreview.js +840 -0
  348. package/dist/state/entityMigrationTodo.js +133 -0
  349. package/dist/state/entityPublicationContext.js +859 -0
  350. package/dist/state/entityRetrievalHelp.js +506 -0
  351. package/dist/state/entityStorage.js +899 -0
  352. package/dist/state/exactReplacementRecovery.js +18 -0
  353. package/dist/state/experimentArchive.js +63 -0
  354. package/dist/state/experimentIdentity.js +202 -0
  355. package/dist/state/healthEntities.js +262 -0
  356. package/dist/state/healthEntityValidation.js +18 -0
  357. package/dist/state/healthRepair.js +69 -0
  358. package/dist/state/installRoot.js +15 -7
  359. package/dist/state/legacyEntityCutoverEvidence.js +65 -0
  360. package/dist/state/legacyIdentity.js +47 -0
  361. package/dist/state/legacySummaryRecord.js +6 -0
  362. package/dist/state/listAccounting.js +54 -0
  363. package/dist/state/listClassification.js +17 -0
  364. package/dist/state/listCursor.js +42 -0
  365. package/dist/state/listRetrieval.js +781 -0
  366. package/dist/state/migrationSourceBinding.js +30 -0
  367. package/dist/state/objectiveExperimentEntities.js +322 -0
  368. package/dist/state/planEntities.js +1027 -0
  369. package/dist/state/planIdentity.js +47 -0
  370. package/dist/state/planLineageValidation.js +52 -0
  371. package/dist/state/planReplacementTransaction.js +475 -0
  372. package/dist/state/planRetrieval.js +313 -0
  373. package/dist/state/planTaskRetrieval.js +294 -0
  374. package/dist/state/progressEntities.js +512 -0
  375. package/dist/state/progressGlossaryCaveat.js +168 -0
  376. package/dist/state/progressPublicationOrder.js +19 -0
  377. package/dist/state/progressWritePolicy.js +33 -0
  378. package/dist/state/projectRoot.js +62 -0
  379. package/dist/state/projectionPolicy.js +190 -0
  380. package/dist/state/retrievalAuthority.js +156 -0
  381. package/dist/state/safeProjectFile.js +155 -0
  382. package/dist/state/startupAnalysis/benchmark.js +70 -9
  383. package/dist/state/startupAnalysis/contract.js +44 -10
  384. package/dist/state/startupAnalysis/helpers.js +1 -2
  385. package/dist/state/startupAnalysis/index.js +0 -1
  386. package/dist/state/startupAnalysis/metrics.js +0 -1
  387. package/dist/state/startupAnalysis/records.js +0 -1
  388. package/dist/state/startupAnalysis/report.js +0 -1
  389. package/dist/state/startupAnalysis/threshold.js +13 -1
  390. package/dist/state/startupAnalysis.js +0 -1
  391. package/dist/state/startupProjection.js +499 -0
  392. package/dist/state/stateMode.js +222 -0
  393. package/dist/state/stateStorageAuthority.js +47 -0
  394. package/dist/state/summaryEntityRead.js +25 -0
  395. package/dist/state/summaryMigrationProvenance.js +66 -0
  396. package/dist/state/summarySourceRowAuthority.js +36 -0
  397. package/dist/state/todoActivationSafety.js +58 -0
  398. package/dist/state/todoDocsEntities.js +1124 -0
  399. package/dist/state/todoDocsEntityValidation.js +158 -0
  400. package/dist/state/todoMarkdownProjection.js +51 -0
  401. package/dist/state/todoReconciliationActivation.js +182 -0
  402. package/dist/state/todoReconciliationInspection.js +171 -0
  403. package/dist/state/todoReconciliationRepair.js +318 -0
  404. package/dist/state/todoReconciliationTransaction.js +595 -0
  405. package/dist/state/write/assign.js +20 -0
  406. package/dist/state/write/candidateMutation.js +269 -0
  407. package/dist/state/write/errors.js +11 -0
  408. package/dist/state/write/experimentPublication.js +192 -0
  409. package/dist/state/write/explain.js +377 -0
  410. package/dist/state/write/fields.js +61 -0
  411. package/dist/state/write/glossaryPublication.js +263 -0
  412. package/dist/state/write/grammar.js +285 -0
  413. package/dist/state/write/helpers.js +29 -0
  414. package/dist/state/write/index.js +12 -0
  415. package/dist/state/write/input.js +391 -0
  416. package/dist/state/write/lock.js +837 -0
  417. package/dist/state/write/mutation.js +234 -0
  418. package/dist/state/write/operations.js +170 -0
  419. package/dist/state/write/planEvaluation.js +128 -0
  420. package/dist/state/write/planPublication.js +179 -0
  421. package/dist/state/write/runtimeOperations.js +146 -0
  422. package/dist/state/write/serialize.js +1 -0
  423. package/dist/state/write/transaction.js +57 -0
  424. package/dist/state/write/validate.js +7 -0
  425. package/dist/upgrade/appContentRefresh.js +77 -36
  426. package/dist/upgrade/appModel.js +0 -1
  427. package/dist/upgrade/atomicWriter.js +1 -0
  428. package/dist/upgrade/bundleEvidence.js +0 -1
  429. package/dist/upgrade/channels.js +6 -9
  430. package/dist/upgrade/compatibility.js +43 -17
  431. package/dist/upgrade/doctor.js +55 -32
  432. package/dist/upgrade/doctorClassifier.js +11 -1
  433. package/dist/upgrade/installedHooksRetirement.js +46 -40
  434. package/dist/upgrade/legacyAgentCleanup.js +187 -21
  435. package/dist/upgrade/lifecycleUpgrade.js +113 -0
  436. package/dist/upgrade/migrateArtifactsV2ToV3.js +334 -64
  437. package/dist/upgrade/migrationPublication.js +122 -0
  438. package/dist/upgrade/nextMajorDoctor.js +0 -1
  439. package/dist/upgrade/npxPlatformStatus.js +2 -2
  440. package/dist/upgrade/projectIntegration.js +128 -160
  441. package/dist/upgrade/projectIntegrationDecision.js +42 -85
  442. package/dist/upgrade/retiredResourceDiagnostics.js +117 -0
  443. package/dist/upgrade/runtimeMigration.js +262 -453
  444. package/dist/upgrade/upgradeCommands.js +14 -1
  445. package/dist/upgrade/upgradeLock.js +85 -0
  446. package/dist/upgrade/upgradeOrchestrator.js +263 -59
  447. package/dist/upgrade/v3CapabilitySurface.js +2 -3
  448. package/dist/upgrade/versionResolution.js +0 -1
  449. package/dist/validate/activationArtifactEvidence.js +866 -0
  450. package/dist/validate/activationArtifactEvidenceTypes.js +12 -0
  451. package/dist/validate/activationConjunction.js +816 -0
  452. package/dist/validate/activationEvidenceManifest.js +610 -0
  453. package/dist/validate/activationPackageSemantics.js +29 -0
  454. package/dist/validate/appHomeContract.js +1 -7
  455. package/dist/validate/bootstrapAuthority.js +44 -0
  456. package/dist/validate/capability.js +11 -3
  457. package/dist/validate/crossCapability.js +14 -9
  458. package/dist/validate/retainedReferenceAuthority.js +879 -0
  459. package/dist/validate/selfAudit.js +39 -45
  460. package/dist/validate/v1LegacyCruft.js +131 -0
  461. package/dist/validate/vocabularyAuthority.js +8 -8
  462. package/package.json +39 -13
  463. package/bundle/references/adapters/cursor.md +0 -214
  464. package/bundle/references/adapters/opencode.md +0 -530
  465. package/bundle/references/adapters/package-manifest-interface-model.yaml +0 -337
  466. package/bundle/references/adapters/runtime-adapter-characterization.md +0 -79
  467. package/bundle/references/adapters/runtime-adapter-interface-model.yaml +0 -200
  468. package/bundle/references/adapters/runtime-adapter-registry.yaml +0 -554
  469. package/bundle/references/adapters/runtime-feature-parity.md +0 -189
  470. package/bundle/references/analysis/benchmark.md +0 -267
  471. package/bundle/references/analysis/startup-measurement-contract.yaml +0 -424
  472. package/bundle/references/cli/agent-ready-state-contract.yaml +0 -953
  473. package/bundle/references/cli/audience-namespace-cli-migration.yaml +0 -369
  474. package/bundle/references/cli/bundle-skill-vocabulary.yaml +0 -250
  475. package/bundle/references/cli/capability-tool-classification.yaml +0 -53
  476. package/bundle/references/cli/coexistence-probe.yaml +0 -13
  477. package/bundle/references/cli/parity-expected-actual-template.md +0 -30
  478. package/bundle/references/cli/routing-execution-vocabulary.yaml +0 -281
  479. package/bundle/references/cli/single-name-protocol.yaml +0 -42
  480. package/bundle/references/cli/upgrade-repair-wording.md +0 -45
  481. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +0 -98
  482. package/bundle/references/meta/documentation-inventory.md +0 -49
  483. package/bundle/skills/agentera/.claude-plugin/plugin.json +0 -27
  484. package/bundle/skills/agentera/agents/audit.toml +0 -6
  485. package/bundle/skills/agentera/agents/build.toml +0 -6
  486. package/bundle/skills/agentera/agents/design.toml +0 -6
  487. package/bundle/skills/agentera/agents/discuss.toml +0 -6
  488. package/bundle/skills/agentera/agents/document.toml +0 -6
  489. package/bundle/skills/agentera/agents/optimize.toml +0 -6
  490. package/bundle/skills/agentera/agents/orchestrate.toml +0 -6
  491. package/bundle/skills/agentera/agents/plan.toml +0 -6
  492. package/bundle/skills/agentera/agents/profile.toml +0 -6
  493. package/bundle/skills/agentera/agents/research.toml +0 -6
  494. package/bundle/skills/agentera/agents/status.toml +0 -6
  495. package/bundle/skills/agentera/agents/vision.toml +0 -6
  496. package/bundle/skills/agentera/references/contract.md +0 -1048
  497. package/dist/analytics/extractCorpus/cli.js.map +0 -1
  498. package/dist/analytics/extractCorpus/copilotSessions.js.map +0 -1
  499. package/dist/analytics/extractCorpus/core.js.map +0 -1
  500. package/dist/analytics/extractCorpus/corpus.js.map +0 -1
  501. package/dist/analytics/extractCorpus/coverageAudit.js.map +0 -1
  502. package/dist/analytics/extractCorpus/cursorSessions.js.map +0 -1
  503. package/dist/analytics/extractCorpus/extractCorpusParity.js.map +0 -1
  504. package/dist/analytics/extractCorpus/filesystemSources.js.map +0 -1
  505. package/dist/analytics/extractCorpus/index.js.map +0 -1
  506. package/dist/analytics/extractCorpus/jsonlSessions.js.map +0 -1
  507. package/dist/analytics/extractCorpus/sqliteCaps.js.map +0 -1
  508. package/dist/analytics/extractCorpus/sqliteSessions.js.map +0 -1
  509. package/dist/analytics/extractCorpus.js.map +0 -1
  510. package/dist/analytics/usageStats.js.map +0 -1
  511. package/dist/bin/agentera.js.map +0 -1
  512. package/dist/capabilities/audit/instructions.js.map +0 -1
  513. package/dist/capabilities/build/instructions.js.map +0 -1
  514. package/dist/capabilities/design/instructions.js.map +0 -1
  515. package/dist/capabilities/discuss/instructions.js.map +0 -1
  516. package/dist/capabilities/document/instructions.js.map +0 -1
  517. package/dist/capabilities/dokumentera/instructions.js +0 -6
  518. package/dist/capabilities/dokumentera/instructions.js.map +0 -1
  519. package/dist/capabilities/hej/instructions.js +0 -6
  520. package/dist/capabilities/hej/instructions.js.map +0 -1
  521. package/dist/capabilities/index.js.map +0 -1
  522. package/dist/capabilities/inspektera/instructions.js +0 -6
  523. package/dist/capabilities/inspektera/instructions.js.map +0 -1
  524. package/dist/capabilities/inspirera/instructions.js +0 -6
  525. package/dist/capabilities/inspirera/instructions.js.map +0 -1
  526. package/dist/capabilities/optimera/instructions.js +0 -6
  527. package/dist/capabilities/optimera/instructions.js.map +0 -1
  528. package/dist/capabilities/optimize/instructions.js.map +0 -1
  529. package/dist/capabilities/orchestrate/instructions.js.map +0 -1
  530. package/dist/capabilities/orkestrera/instructions.js +0 -6
  531. package/dist/capabilities/orkestrera/instructions.js.map +0 -1
  532. package/dist/capabilities/plan/instructions.js.map +0 -1
  533. package/dist/capabilities/planera/instructions.js +0 -6
  534. package/dist/capabilities/planera/instructions.js.map +0 -1
  535. package/dist/capabilities/profile/instructions.js.map +0 -1
  536. package/dist/capabilities/profilera/instructions.js +0 -6
  537. package/dist/capabilities/profilera/instructions.js.map +0 -1
  538. package/dist/capabilities/realisera/instructions.js +0 -6
  539. package/dist/capabilities/realisera/instructions.js.map +0 -1
  540. package/dist/capabilities/research/instructions.js.map +0 -1
  541. package/dist/capabilities/resonera/instructions.js +0 -6
  542. package/dist/capabilities/resonera/instructions.js.map +0 -1
  543. package/dist/capabilities/status/instructions.js.map +0 -1
  544. package/dist/capabilities/vision/instructions.js.map +0 -1
  545. package/dist/capabilities/visionera/instructions.js +0 -6
  546. package/dist/capabilities/visionera/instructions.js.map +0 -1
  547. package/dist/capabilities/visualisera/instructions.js +0 -5
  548. package/dist/capabilities/visualisera/instructions.js.map +0 -1
  549. package/dist/cli/appContext.js.map +0 -1
  550. package/dist/cli/argvalidate.js.map +0 -1
  551. package/dist/cli/capabilityContext/benchmark.js.map +0 -1
  552. package/dist/cli/capabilityContext/bespoke.js.map +0 -1
  553. package/dist/cli/capabilityContext/build.js.map +0 -1
  554. package/dist/cli/capabilityContext/closeout.js.map +0 -1
  555. package/dist/cli/capabilityContext/contract.js.map +0 -1
  556. package/dist/cli/capabilityContext/evidence.js.map +0 -1
  557. package/dist/cli/capabilityContext/index.js.map +0 -1
  558. package/dist/cli/capabilityContext/orchestration.js.map +0 -1
  559. package/dist/cli/capabilityContext/planState.js.map +0 -1
  560. package/dist/cli/capabilityContext/progress.js.map +0 -1
  561. package/dist/cli/capabilityContext/realisera.js +0 -174
  562. package/dist/cli/capabilityContext/realisera.js.map +0 -1
  563. package/dist/cli/capabilityContext/shared.js.map +0 -1
  564. package/dist/cli/capabilityContext/slim.js.map +0 -1
  565. package/dist/cli/capabilityContext/startup.js.map +0 -1
  566. package/dist/cli/capabilityContext/types.js.map +0 -1
  567. package/dist/cli/capabilityContext.js.map +0 -1
  568. package/dist/cli/commands/appHome.js.map +0 -1
  569. package/dist/cli/commands/backfill.js +0 -84
  570. package/dist/cli/commands/backfill.js.map +0 -1
  571. package/dist/cli/commands/capability.js.map +0 -1
  572. package/dist/cli/commands/compact.js.map +0 -1
  573. package/dist/cli/commands/doctor.js.map +0 -1
  574. package/dist/cli/commands/lint.js.map +0 -1
  575. package/dist/cli/commands/prime/bundleStatus.js.map +0 -1
  576. package/dist/cli/commands/prime/collectOrientationState.js.map +0 -1
  577. package/dist/cli/commands/prime/orientationOutput.js.map +0 -1
  578. package/dist/cli/commands/prime/routeOutput.js +0 -50
  579. package/dist/cli/commands/prime/routeOutput.js.map +0 -1
  580. package/dist/cli/commands/prime/types.js.map +0 -1
  581. package/dist/cli/commands/prime/v1Migration.js.map +0 -1
  582. package/dist/cli/commands/prime.js.map +0 -1
  583. package/dist/cli/commands/query.js.map +0 -1
  584. package/dist/cli/commands/report.js.map +0 -1
  585. package/dist/cli/commands/schema.js.map +0 -1
  586. package/dist/cli/commands/state/decisions.js.map +0 -1
  587. package/dist/cli/commands/state/docs.js.map +0 -1
  588. package/dist/cli/commands/state/experiments.js.map +0 -1
  589. package/dist/cli/commands/state/health.js.map +0 -1
  590. package/dist/cli/commands/state/index.js.map +0 -1
  591. package/dist/cli/commands/state/objective.js.map +0 -1
  592. package/dist/cli/commands/state/plan.js.map +0 -1
  593. package/dist/cli/commands/state/progress.js.map +0 -1
  594. package/dist/cli/commands/state/shared.js.map +0 -1
  595. package/dist/cli/commands/state/todo.js.map +0 -1
  596. package/dist/cli/commands/state.js +0 -1023
  597. package/dist/cli/commands/state.js.map +0 -1
  598. package/dist/cli/commands/upgrade.js.map +0 -1
  599. package/dist/cli/commands/validate.js.map +0 -1
  600. package/dist/cli/commands/verify.js.map +0 -1
  601. package/dist/cli/contracts/bundleStatus.js.map +0 -1
  602. package/dist/cli/contracts/orientationState.js.map +0 -1
  603. package/dist/cli/dispatch/argvParser.js.map +0 -1
  604. package/dist/cli/dispatch/check.js.map +0 -1
  605. package/dist/cli/dispatch/commands.js.map +0 -1
  606. package/dist/cli/dispatch/index.js.map +0 -1
  607. package/dist/cli/dispatch/lifecycle.js.map +0 -1
  608. package/dist/cli/dispatch/prime.js.map +0 -1
  609. package/dist/cli/dispatch/shared.js.map +0 -1
  610. package/dist/cli/dispatch/state.js.map +0 -1
  611. package/dist/cli/dispatch.js.map +0 -1
  612. package/dist/cli/errors.js.map +0 -1
  613. package/dist/cli/help.js.map +0 -1
  614. package/dist/cli/orientation/attention.js.map +0 -1
  615. package/dist/cli/orientation/corpusCoverage.js.map +0 -1
  616. package/dist/cli/orientation.js.map +0 -1
  617. package/dist/cli/prime-blob.js.map +0 -1
  618. package/dist/cli/startupCompletenessContract.js.map +0 -1
  619. package/dist/cli/stateQuery.js.map +0 -1
  620. package/dist/cli/structured.js.map +0 -1
  621. package/dist/cli/todoMarkdown.js.map +0 -1
  622. package/dist/cli/todoSeverity.js.map +0 -1
  623. package/dist/core/difflib.js.map +0 -1
  624. package/dist/core/envPaths.js.map +0 -1
  625. package/dist/core/git.js +0 -43
  626. package/dist/core/git.js.map +0 -1
  627. package/dist/core/jsonValue.js.map +0 -1
  628. package/dist/core/paths.js.map +0 -1
  629. package/dist/core/pyjson.js.map +0 -1
  630. package/dist/core/sourceRoot.js.map +0 -1
  631. package/dist/core/toml.js.map +0 -1
  632. package/dist/core/yaml.js.map +0 -1
  633. package/dist/eval/evalSkills.js.map +0 -1
  634. package/dist/eval/semanticEval.js.map +0 -1
  635. package/dist/eval/semanticFixtures.js.map +0 -1
  636. package/dist/hooks/common.js.map +0 -1
  637. package/dist/hooks/compaction/apply.js.map +0 -1
  638. package/dist/hooks/compaction/dryRun.js.map +0 -1
  639. package/dist/hooks/compaction/index.js.map +0 -1
  640. package/dist/hooks/compaction/parse.js.map +0 -1
  641. package/dist/hooks/compaction/retention.js.map +0 -1
  642. package/dist/hooks/compaction/status.js.map +0 -1
  643. package/dist/hooks/compaction/todoResolved.js +0 -137
  644. package/dist/hooks/compaction/todoResolved.js.map +0 -1
  645. package/dist/hooks/compaction/types.js.map +0 -1
  646. package/dist/hooks/compaction.js +0 -935
  647. package/dist/hooks/compaction.js.map +0 -1
  648. package/dist/hooks/cursorPreToolUse.js +0 -19
  649. package/dist/hooks/cursorPreToolUse.js.map +0 -1
  650. package/dist/hooks/cursorSessionStart.js +0 -79
  651. package/dist/hooks/cursorSessionStart.js.map +0 -1
  652. package/dist/hooks/sessionStart.js +0 -216
  653. package/dist/hooks/sessionStart.js.map +0 -1
  654. package/dist/hooks/sessionStop.js +0 -206
  655. package/dist/hooks/sessionStop.js.map +0 -1
  656. package/dist/hooks/todoLayout.js +0 -177
  657. package/dist/hooks/todoLayout.js.map +0 -1
  658. package/dist/hooks/validateArtifact/agentFacing.js.map +0 -1
  659. package/dist/hooks/validateArtifact/index.js.map +0 -1
  660. package/dist/hooks/validateArtifact/markdown.js.map +0 -1
  661. package/dist/hooks/validateArtifact/runtime.js +0 -86
  662. package/dist/hooks/validateArtifact/runtime.js.map +0 -1
  663. package/dist/hooks/validateArtifact/schema.js.map +0 -1
  664. package/dist/hooks/validateArtifact/traversal.js.map +0 -1
  665. package/dist/hooks/validateArtifact/violations.js.map +0 -1
  666. package/dist/hooks/validateArtifact.js +0 -924
  667. package/dist/hooks/validateArtifact.js.map +0 -1
  668. package/dist/migrate/v2HandoffManifest.js.map +0 -1
  669. package/dist/registries/artifactProtocolIds.js.map +0 -1
  670. package/dist/registries/artifactRegistry.js.map +0 -1
  671. package/dist/registries/capabilityContract.js.map +0 -1
  672. package/dist/registries/evaluatorHandoffContract.js.map +0 -1
  673. package/dist/registries/packageRegistry.js.map +0 -1
  674. package/dist/registries/runtimeAdapterRegistry.js +0 -316
  675. package/dist/registries/runtimeAdapterRegistry.js.map +0 -1
  676. package/dist/registries/triggerLoader.js.map +0 -1
  677. package/dist/release/releaseMetadata.js.map +0 -1
  678. package/dist/routing/index.js +0 -2
  679. package/dist/routing/index.js.map +0 -1
  680. package/dist/routing/routeEngine.js +0 -189
  681. package/dist/routing/routeEngine.js.map +0 -1
  682. package/dist/setup/codex/agents.js +0 -96
  683. package/dist/setup/codex/agents.js.map +0 -1
  684. package/dist/setup/codex/cli.js +0 -161
  685. package/dist/setup/codex/cli.js.map +0 -1
  686. package/dist/setup/codex/configToml.js +0 -639
  687. package/dist/setup/codex/configToml.js.map +0 -1
  688. package/dist/setup/codex/constants.js +0 -29
  689. package/dist/setup/codex/constants.js.map +0 -1
  690. package/dist/setup/codex/installRoot.js +0 -64
  691. package/dist/setup/codex/installRoot.js.map +0 -1
  692. package/dist/setup/codex/state.js +0 -270
  693. package/dist/setup/codex/state.js.map +0 -1
  694. package/dist/setup/codex.js +0 -12
  695. package/dist/setup/codex.js.map +0 -1
  696. package/dist/setup/copilot.js +0 -227
  697. package/dist/setup/copilot.js.map +0 -1
  698. package/dist/setup/cursor.js +0 -129
  699. package/dist/setup/cursor.js.map +0 -1
  700. package/dist/setup/cursorSurfaces.js +0 -67
  701. package/dist/setup/cursorSurfaces.js.map +0 -1
  702. package/dist/setup/doctor/core.js +0 -300
  703. package/dist/setup/doctor/core.js.map +0 -1
  704. package/dist/setup/doctor/diagnostics.js +0 -240
  705. package/dist/setup/doctor/diagnostics.js.map +0 -1
  706. package/dist/setup/doctor/opencode.js +0 -313
  707. package/dist/setup/doctor/opencode.js.map +0 -1
  708. package/dist/setup/doctor/report.js +0 -425
  709. package/dist/setup/doctor/report.js.map +0 -1
  710. package/dist/setup/doctor.js +0 -10
  711. package/dist/setup/doctor.js.map +0 -1
  712. package/dist/setup/opencode.js.map +0 -1
  713. package/dist/setup/smokeChecks.js.map +0 -1
  714. package/dist/state/installRoot.js.map +0 -1
  715. package/dist/state/progressCommit.js +0 -289
  716. package/dist/state/progressCommit.js.map +0 -1
  717. package/dist/state/startupAnalysis/benchmark.js.map +0 -1
  718. package/dist/state/startupAnalysis/contract.js.map +0 -1
  719. package/dist/state/startupAnalysis/helpers.js.map +0 -1
  720. package/dist/state/startupAnalysis/index.js.map +0 -1
  721. package/dist/state/startupAnalysis/metrics.js.map +0 -1
  722. package/dist/state/startupAnalysis/records.js.map +0 -1
  723. package/dist/state/startupAnalysis/report.js.map +0 -1
  724. package/dist/state/startupAnalysis/threshold.js.map +0 -1
  725. package/dist/state/startupAnalysis.js.map +0 -1
  726. package/dist/upgrade/appContentRefresh.js.map +0 -1
  727. package/dist/upgrade/appModel.js.map +0 -1
  728. package/dist/upgrade/bundleEvidence.js.map +0 -1
  729. package/dist/upgrade/channels.js.map +0 -1
  730. package/dist/upgrade/cliProbe.js +0 -22
  731. package/dist/upgrade/cliProbe.js.map +0 -1
  732. package/dist/upgrade/coexistenceProbe.js +0 -107
  733. package/dist/upgrade/coexistenceProbe.js.map +0 -1
  734. package/dist/upgrade/compatibility.js.map +0 -1
  735. package/dist/upgrade/doctor.js.map +0 -1
  736. package/dist/upgrade/doctorClassifier.js.map +0 -1
  737. package/dist/upgrade/installedHooksRetirement.js.map +0 -1
  738. package/dist/upgrade/legacyAgentCleanup.js.map +0 -1
  739. package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -570
  740. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +0 -1
  741. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +0 -1
  742. package/dist/upgrade/nextMajorDoctor.js.map +0 -1
  743. package/dist/upgrade/npxPlatformStatus.js.map +0 -1
  744. package/dist/upgrade/projectIntegration.js.map +0 -1
  745. package/dist/upgrade/projectIntegrationDecision.js.map +0 -1
  746. package/dist/upgrade/runtimeMigration.js.map +0 -1
  747. package/dist/upgrade/upgradeCommands.js.map +0 -1
  748. package/dist/upgrade/upgradeOrchestrator.js.map +0 -1
  749. package/dist/upgrade/v3CapabilitySurface.js.map +0 -1
  750. package/dist/upgrade/versionResolution.js.map +0 -1
  751. package/dist/validate/appHomeContract.js.map +0 -1
  752. package/dist/validate/capability.js.map +0 -1
  753. package/dist/validate/crossCapability.js.map +0 -1
  754. package/dist/validate/lifecycleAdapters/legacyPythonParity.js +0 -93
  755. package/dist/validate/lifecycleAdapters/legacyPythonParity.js.map +0 -1
  756. package/dist/validate/lifecycleAdapters/nodeFormChecks.js +0 -488
  757. package/dist/validate/lifecycleAdapters/nodeFormChecks.js.map +0 -1
  758. package/dist/validate/lifecycleAdapters/shared.js +0 -198
  759. package/dist/validate/lifecycleAdapters/shared.js.map +0 -1
  760. package/dist/validate/lifecycleAdapters.js +0 -62
  761. package/dist/validate/lifecycleAdapters.js.map +0 -1
  762. package/dist/validate/selfAudit.js.map +0 -1
  763. package/dist/validate/vocabularyAuthority.js.map +0 -1
@@ -1,4 +1,3 @@
1
- import fsForHooks from "node:fs";
2
1
  import fs from "node:fs";
3
2
  import path from "node:path";
4
3
  import { fileURLToPath } from "node:url";
@@ -8,29 +7,34 @@ import { cmdUpgrade } from "../commands/upgrade.js";
8
7
  import { cmdVerify } from "../commands/verify.js";
9
8
  import { cmdGate } from "../commands/compact.js";
10
9
  import { cmdReport } from "../commands/report.js";
11
- import { runSessionStart } from "../../hooks/sessionStart.js";
12
- import { runSessionStop } from "../../hooks/sessionStop.js";
13
- import { runCursorSessionStart } from "../../hooks/cursorSessionStart.js";
14
- import { runCursorPreToolUse } from "../../hooks/cursorPreToolUse.js";
15
- import { HookCliAdapter } from "../../hooks/validateArtifact/index.js";
10
+ import { runGlossaryAdviceCommand } from "../commands/glossaryAdvice.js";
11
+ import { runPersonalGlossaryPublishCommand } from "../commands/personalGlossaryPublish.js";
12
+ import { runPersonalGlossaryCandidateReadsCommand } from "../commands/personalGlossaryCandidateReads.js";
13
+ import { runPersonalGlossaryDecisionCommand } from "../commands/personalGlossaryDecision.js";
14
+ import { runPersonalGlossaryReviewRecordsCommand } from "../commands/personalGlossaryReviewRecords.js";
15
+ import { runProfileGroundingCommand } from "../commands/profileGrounding.js";
16
+ import { preCutoverCommand } from "../preCutoverCommand.js";
16
17
  import { usageMain } from "../../analytics/usageStats.js";
17
18
  import { validatePathValue } from "../argvalidate.js";
18
19
  import { printAppHomeHelp, printDoctorHelp, printUpgradeHelp, wantsHelp } from "../help.js";
19
20
  import { makeArgvValueReader } from "./argvParser.js";
20
21
  import { parseCompactArgs } from "./check.js";
21
- import { asEnvelopeFormat, classifyParseError, emitDeprecationAlias } from "./shared.js";
22
+ import { asEnvelopeFormat, classifyParseError, detectTopLevelFormat, emitDeprecationAlias } from "./shared.js";
22
23
  import { emitInvalidInput } from "../errors.js";
23
- function rejectUnsupportedUpgradeFlag(io, format, message) {
24
+ import { migrationProject } from "../migrationRequired.js";
25
+ import { fullEntityUpgradeCommand } from "../../upgrade/upgradeCommands.js";
26
+ import { nativeResourceCleanupIds, resolveNativeResourceCleanupId } from "../../runtime/nativeResourceCleanup.js";
27
+ function rejectUnsupportedUpgradeFlag(io, format, message, recovery) {
24
28
  return emitInvalidInput(io, {
25
29
  format: asEnvelopeFormat(format),
26
- body: { class: "unsupported_target", message },
30
+ body: { class: "unsupported_target", message, recovery },
27
31
  });
28
32
  }
29
33
  export function runGate(argv, io, prog) {
30
34
  const parsed = parseCompactArgs(argv);
31
35
  if ("error" in parsed) {
32
36
  return emitInvalidInput(io, {
33
- format: "text",
37
+ format: detectTopLevelFormat(argv),
34
38
  body: classifyParseError(parsed.error),
35
39
  });
36
40
  }
@@ -109,6 +113,7 @@ export function runDoctor(argv, io, prog) {
109
113
  project: null,
110
114
  expectedVersion: null,
111
115
  expectCommand: [],
116
+ retiredResource: null,
112
117
  smoke: false,
113
118
  allowLiveModel: false,
114
119
  format: "text",
@@ -131,6 +136,8 @@ export function runDoctor(argv, io, prog) {
131
136
  args.expectedVersion = v;
132
137
  else if ((v = value("--expect-command")) !== null)
133
138
  args.expectCommand.push(v);
139
+ else if ((v = value("--retired-resource")) !== null)
140
+ args.retiredResource = v;
134
141
  else if ((v = value("--format")) !== null) {
135
142
  if (v !== "text" && v !== "json") {
136
143
  return emitInvalidInput(io, {
@@ -171,50 +178,6 @@ export function runDoctor(argv, io, prog) {
171
178
  });
172
179
  }
173
180
  }
174
- export function readStdin() {
175
- try {
176
- return fsForHooks.readFileSync(0, "utf8");
177
- }
178
- catch {
179
- return "";
180
- }
181
- }
182
- export function runHook(name, argv, io) {
183
- const err = io.err ?? ((t) => process.stderr.write(t));
184
- const raw = io.stdin ? io.stdin() : readStdin();
185
- // Each hook owns its own stdout newline convention; do not wrap stdout here.
186
- switch (name) {
187
- case "session-start":
188
- return runSessionStart(raw);
189
- case "session-stop":
190
- return runSessionStop(raw);
191
- case "cursor-session-start":
192
- return runCursorSessionStart(raw);
193
- case "cursor-pre-tool-use":
194
- return runCursorPreToolUse(raw);
195
- case "validate-artifact": {
196
- const [rc, violations] = new HookCliAdapter().run(raw, null);
197
- for (const v of violations)
198
- err(`${v}\n`);
199
- return rc;
200
- }
201
- default:
202
- return emitInvalidInput(io, {
203
- format: "text",
204
- body: {
205
- class: "unsupported_target",
206
- message: `unknown hook '${name}'`,
207
- valid_values: [
208
- "session-start",
209
- "session-stop",
210
- "cursor-session-start",
211
- "cursor-pre-tool-use",
212
- "validate-artifact",
213
- ],
214
- },
215
- });
216
- }
217
- }
218
181
  export function runUsage(argv, io, prog) {
219
182
  const realOut = io.out ?? ((t) => process.stdout.write(t));
220
183
  const realErr = io.err ?? ((t) => process.stderr.write(t));
@@ -296,6 +259,9 @@ export function runUpgrade(argv, io, prog) {
296
259
  dryRun: false,
297
260
  only: [],
298
261
  force: false,
262
+ verify: false,
263
+ runtime: null,
264
+ legacyCleanup: null,
299
265
  format: "text",
300
266
  };
301
267
  let jsonFlag = false;
@@ -317,10 +283,33 @@ export function runUpgrade(argv, io, prog) {
317
283
  else if ((v = value("--channel")) !== null)
318
284
  args.channel = v;
319
285
  else if ((v = value("--target-major")) !== null) {
320
- return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", "--target-major was removed; use --channel with dry-run preview then --yes");
286
+ return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", "--target-major was removed; use --channel with dry-run preview then --yes", fullEntityUpgradeCommand(migrationProject(argv)));
321
287
  }
322
288
  else if ((v = value("--runtime")) !== null) {
323
- return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", "--runtime is not yet supported by the TypeScript upgrade command; use --only runtime for migration phases");
289
+ return emitInvalidInput(io, {
290
+ format: detectTopLevelFormat(argv),
291
+ body: {
292
+ class: "invalid_choice",
293
+ message: `argument --runtime ${v} is retired; Agentera now uses the shared skill at ` +
294
+ "~/.agents/skills/agentera plus the CLI. Remove --runtime and rerun the app/project upgrade. " +
295
+ "For explicit Agentera-owned native resource cleanup, use --legacy-cleanup RESOURCE_ID.",
296
+ },
297
+ });
298
+ }
299
+ else if ((v = value("--legacy-cleanup")) !== null) {
300
+ const validValues = nativeResourceCleanupIds();
301
+ const selectedResource = resolveNativeResourceCleanupId(v);
302
+ if (!selectedResource) {
303
+ return emitInvalidInput(io, {
304
+ format: asEnvelopeFormat(args.format),
305
+ body: {
306
+ class: "invalid_choice",
307
+ message: `argument --legacy-cleanup: invalid choice: '${v}' (choose from ${validValues.map((id) => `'${id}'`).join(", ")})`,
308
+ valid_values: validValues,
309
+ },
310
+ });
311
+ }
312
+ args.legacyCleanup = selectedResource.id;
324
313
  }
325
314
  else if ((v = value("--only")) !== null) {
326
315
  if (v !== "artifacts" && v !== "runtime" && v !== "cleanup") {
@@ -344,8 +333,13 @@ export function runUpgrade(argv, io, prog) {
344
333
  args.dryRun = true;
345
334
  else if (a === "--force")
346
335
  args.force = true;
336
+ else if (a === "--verify")
337
+ args.verify = true;
347
338
  else if (a === "--update-packages") {
348
- return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", "--update-packages is not yet supported by the TypeScript upgrade command; external package refresh is deferred for the 3.x channel model");
339
+ return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", "--update-packages is retired; Agentera does not manage host package installation or updates");
340
+ }
341
+ else if (["--restore", "--rollback", "--downgrade"].includes(a)) {
342
+ return rejectUnsupportedUpgradeFlag(io, args.format ?? "text", `${a} was removed; v2-to-v3 upgrade is one-way and apply must run as one full upgrade --yes`, fullEntityUpgradeCommand(migrationProject(argv)));
349
343
  }
350
344
  else if (a === "--json")
351
345
  jsonFlag = true;
@@ -429,7 +423,7 @@ export function runVerify(argv, io, prog) {
429
423
  args.dryRun = true;
430
424
  else if (a.startsWith("--")) {
431
425
  return emitInvalidInput(io, {
432
- format: asEnvelopeFormat(args.format),
426
+ format: detectTopLevelFormat(argv),
433
427
  body: { class: "unrecognized_argument", message: `unrecognized arguments: ${a}` },
434
428
  });
435
429
  }
@@ -451,13 +445,99 @@ export function runVerify(argv, io, prog) {
451
445
  }
452
446
  }
453
447
  export function runReport(argv, io, prog) {
448
+ if (argv[0] === "personal-glossary-decision") {
449
+ if (prog !== "agentera report") {
450
+ return emitInvalidInput(io, {
451
+ format: "json",
452
+ body: {
453
+ class: "unsupported_target",
454
+ message: "personal-glossary-decision has no stats alias",
455
+ valid_values: ["report personal-glossary-decision"],
456
+ recovery: `Run ${preCutoverCommand("report personal-glossary-decision --input - --format json")}; no bytes were changed.`,
457
+ },
458
+ });
459
+ }
460
+ return runPersonalGlossaryDecisionCommand(argv.slice(1), io);
461
+ }
462
+ if (argv[0] === "personal-glossary-candidates") {
463
+ if (prog !== "agentera report") {
464
+ return emitInvalidInput(io, {
465
+ format: "json",
466
+ body: {
467
+ class: "unsupported_target",
468
+ message: "personal-glossary-candidates has no stats alias",
469
+ valid_values: ["report personal-glossary-candidates"],
470
+ recovery: `Run ${preCutoverCommand("report personal-glossary-candidates list --limit 20 --format json")}; no projection bytes were changed.`,
471
+ },
472
+ });
473
+ }
474
+ return runPersonalGlossaryCandidateReadsCommand(argv.slice(1), io);
475
+ }
476
+ if (argv[0] === "personal-glossary-reviews") {
477
+ if (prog !== "agentera report") {
478
+ return emitInvalidInput(io, {
479
+ format: "json",
480
+ body: {
481
+ class: "unsupported_target",
482
+ message: "personal-glossary-reviews has no stats alias",
483
+ valid_values: ["report personal-glossary-reviews"],
484
+ recovery: `Run ${preCutoverCommand("report personal-glossary-reviews list --limit 20 --format json")}; no review metadata was changed.`,
485
+ },
486
+ });
487
+ }
488
+ return runPersonalGlossaryReviewRecordsCommand(argv.slice(1), io);
489
+ }
490
+ if (argv[0] === "glossary-advice") {
491
+ if (prog !== "agentera report") {
492
+ return emitInvalidInput(io, {
493
+ format: "json",
494
+ body: {
495
+ class: "unsupported_target",
496
+ message: "glossary-advice has no stats alias",
497
+ valid_values: ["report glossary-advice"],
498
+ recovery: `Run ${preCutoverCommand("report glossary-advice --input - --format json")}; no state was changed.`,
499
+ },
500
+ });
501
+ }
502
+ return runGlossaryAdviceCommand(argv.slice(1), io);
503
+ }
504
+ if (argv[0] === "profile-grounding") {
505
+ if (prog !== "agentera report") {
506
+ return emitInvalidInput(io, {
507
+ format: "json",
508
+ body: {
509
+ class: "unsupported_target",
510
+ message: "profile-grounding has no stats alias",
511
+ valid_values: ["report profile-grounding"],
512
+ recovery: `Run ${preCutoverCommand("report profile-grounding --format json")}; no profile bytes were changed.`,
513
+ },
514
+ });
515
+ }
516
+ return runProfileGroundingCommand(argv.slice(1), io);
517
+ }
518
+ if (argv[0] === "personal-glossary-publish") {
519
+ if (prog !== "agentera report") {
520
+ return emitInvalidInput(io, {
521
+ format: "json",
522
+ body: {
523
+ class: "unsupported_target",
524
+ message: "personal-glossary-publish has no stats alias",
525
+ valid_values: ["report personal-glossary-publish"],
526
+ recovery: `Run ${preCutoverCommand("report personal-glossary-publish --input - --format json")}; no profile bytes were changed.`,
527
+ },
528
+ });
529
+ }
530
+ return runPersonalGlossaryPublishCommand(argv.slice(1), io);
531
+ }
454
532
  const args = {
455
533
  action: null,
456
534
  format: "text",
457
535
  project: null,
536
+ sources: "active",
458
537
  dryRun: false,
459
538
  consent: null,
460
539
  projectRoot: [],
540
+ importSources: [],
461
541
  };
462
542
  const positionals = [];
463
543
  let i = 0;
@@ -471,6 +551,15 @@ export function runReport(argv, io, prog) {
471
551
  args.format = v;
472
552
  else if ((v = value("--project")) !== null)
473
553
  args.project = v;
554
+ else if ((v = value("--sources")) !== null) {
555
+ if (v !== "active" && v !== "all") {
556
+ return emitInvalidInput(io, {
557
+ format: asEnvelopeFormat(args.format),
558
+ body: { class: "invalid_choice", message: `argument --sources: invalid choice: '${v}' (choose from 'active', 'all')`, valid_values: ["active", "all"] },
559
+ });
560
+ }
561
+ args.sources = v;
562
+ }
474
563
  else if ((v = value("--consent")) !== null) {
475
564
  if (v !== "local-history") {
476
565
  return emitInvalidInput(io, {
@@ -492,6 +581,20 @@ export function runReport(argv, io, prog) {
492
581
  args.codexSessionsDir = v;
493
582
  else if ((v = value("--claude-projects-dir")) !== null)
494
583
  args.claudeProjectsDir = v;
584
+ else if ((v = value("--import-source")) !== null) {
585
+ if (v !== "claude") {
586
+ return emitInvalidInput(io, {
587
+ format: asEnvelopeFormat(args.format),
588
+ body: {
589
+ class: "invalid_choice",
590
+ message: `argument --import-source: invalid choice: '${v}' (choose from 'claude')`,
591
+ valid_values: ["claude"],
592
+ },
593
+ });
594
+ }
595
+ if (!args.importSources.includes(v))
596
+ args.importSources.push(v);
597
+ }
495
598
  else if ((v = value("--opencode-conversations-dir")) !== null)
496
599
  args.opencodeConversationsDir = v;
497
600
  else if ((v = value("--copilot-conversations-dir")) !== null)
@@ -502,8 +605,6 @@ export function runReport(argv, io, prog) {
502
605
  args.cursorChatsDir = v;
503
606
  else if (a === "--no-codex")
504
607
  args.noCodex = true;
505
- else if (a === "--no-claude")
506
- args.noClaude = true;
507
608
  else if (a === "--no-opencode")
508
609
  args.noOpencode = true;
509
610
  else if (a === "--no-copilot")
@@ -518,7 +619,7 @@ export function runReport(argv, io, prog) {
518
619
  args.dryRun = true;
519
620
  else if (a.startsWith("--")) {
520
621
  return emitInvalidInput(io, {
521
- format: asEnvelopeFormat(args.format),
622
+ format: detectTopLevelFormat(argv),
522
623
  body: { class: "unrecognized_argument", message: `unrecognized arguments: ${a}` },
523
624
  });
524
625
  }
@@ -594,4 +695,3 @@ export function runVersion(argv, io) {
594
695
  }
595
696
  return 0;
596
697
  }
597
- //# sourceMappingURL=lifecycle.js.map
@@ -3,6 +3,17 @@ import { cmdCapability } from "../commands/capability.js";
3
3
  import { makeArgvValueReader } from "./argvParser.js";
4
4
  import { asEnvelopeFormat } from "./shared.js";
5
5
  import { emitInvalidInput } from "../errors.js";
6
+ import { StateRetrievalFailure } from "../../state/directRetrieval.js";
7
+ import { emitStructured } from "../structured.js";
8
+ function emitStateFailure(error, format, io) {
9
+ const output = io.out ?? ((text) => process.stdout.write(text));
10
+ const diagnostic = io.err ?? ((text) => process.stderr.write(text));
11
+ if (format === "json" || format === "yaml")
12
+ emitStructured(error.body, format, output);
13
+ else
14
+ diagnostic(`Error: ${error.body.error.message}\nRecovery: ${error.body.error.recovery}\n`);
15
+ return error.exitCode;
16
+ }
6
17
  export function runCapability(command, argv, io, prog) {
7
18
  let format = "text";
8
19
  let i = 0;
@@ -45,6 +56,8 @@ export function runCapability(command, argv, io, prog) {
45
56
  return cmdCapability(command, { format }, io);
46
57
  }
47
58
  catch (exc) {
59
+ if (exc instanceof StateRetrievalFailure)
60
+ return emitStateFailure(exc, format, io);
48
61
  return emitInvalidInput(io, {
49
62
  format: asEnvelopeFormat(format),
50
63
  body: { class: "unsupported_target", message: exc.message },
@@ -52,7 +65,7 @@ export function runCapability(command, argv, io, prog) {
52
65
  }
53
66
  }
54
67
  export function runPrime(command, argv, io, prog) {
55
- const args = { command, guidance: false, context: null, dashboard: false, orientation: false, format: "text" };
68
+ const args = { command, guidance: false, context: null, dashboard: false, orientation: false, format: "text", input: null };
56
69
  let i = 0;
57
70
  const value = makeArgvValueReader(argv, () => i, (n) => {
58
71
  i = n;
@@ -68,6 +81,27 @@ export function runPrime(command, argv, io, prog) {
68
81
  args.orientation = true;
69
82
  else if ((v = value("--context")) !== null)
70
83
  args.context = v;
84
+ else if (a === "--input" && (!argv[i + 1] || argv[i + 1].startsWith("--"))) {
85
+ return emitInvalidInput(io, {
86
+ format: asEnvelopeFormat(args.format),
87
+ body: { class: "missing_argument", message: "--input requires a file path or -", syntax: "--input <file|->" },
88
+ });
89
+ }
90
+ else if ((v = value("--input")) !== null) {
91
+ if (v.length === 0) {
92
+ return emitInvalidInput(io, {
93
+ format: asEnvelopeFormat(args.format),
94
+ body: { class: "missing_argument", message: "--input requires a file path or -", syntax: "--input <file|->" },
95
+ });
96
+ }
97
+ if (args.input !== null) {
98
+ return emitInvalidInput(io, {
99
+ format: asEnvelopeFormat(args.format),
100
+ body: { class: "mutually_exclusive", message: "--input may only be supplied once" },
101
+ });
102
+ }
103
+ args.input = v;
104
+ }
71
105
  else if ((v = value("--format")) !== null) {
72
106
  if (v !== "text" && v !== "json" && v !== "yaml") {
73
107
  return emitInvalidInput(io, {
@@ -95,10 +129,11 @@ export function runPrime(command, argv, io, prog) {
95
129
  return cmdPrime(args, io);
96
130
  }
97
131
  catch (exc) {
132
+ if (exc instanceof StateRetrievalFailure)
133
+ return emitStateFailure(exc, args.format, io);
98
134
  return emitInvalidInput(io, {
99
135
  format: asEnvelopeFormat(args.format),
100
136
  body: { class: "unsupported_target", message: exc.message },
101
137
  });
102
138
  }
103
139
  }
104
- //# sourceMappingURL=prime.js.map
@@ -0,0 +1,17 @@
1
+ /**
2
+ * Independent production projections of the accepted top-level command set.
3
+ * They intentionally do not import the dispatcher inventory: activation must
4
+ * detect drift in diagnostics, packaged schema, or public instructions.
5
+ */
6
+ export const DIAGNOSTIC_TOP_LEVEL_COMMANDS = Object.freeze([
7
+ "prime", "app-home", "doctor", "usage", "upgrade", "verify", "report", "stats", "schema", "lint", "check", "state", "query", "compact", "validate", "route",
8
+ "vision", "discuss", "research", "plan", "build", "optimize", "audit", "document", "profile", "design", "orchestrate",
9
+ ]);
10
+ export const SCHEMA_TOP_LEVEL_COMMANDS = Object.freeze([
11
+ "prime", "app-home", "doctor", "usage", "upgrade", "verify", "report", "stats", "schema", "lint", "check", "state", "query", "compact", "validate", "route",
12
+ "vision", "discuss", "research", "plan", "build", "optimize", "audit", "document", "profile", "design", "orchestrate",
13
+ ]);
14
+ export const HELP_TOP_LEVEL_COMMANDS = Object.freeze([
15
+ "prime", "app-home", "doctor", "usage", "upgrade", "verify", "report", "stats", "schema", "lint", "check", "state", "query", "compact", "validate", "route",
16
+ "vision", "discuss", "research", "plan", "build", "optimize", "audit", "document", "profile", "design", "orchestrate",
17
+ ]);
@@ -37,7 +37,7 @@ export function classifyParseError(raw) {
37
37
  }
38
38
  /** Coerce the loose `string` format field on parsed args to the literal union. */
39
39
  export function asEnvelopeFormat(format) {
40
- return format === "json" ? "json" : "text";
40
+ return format === "json" || format === "yaml" ? format : "text";
41
41
  }
42
42
  /**
43
43
  * Scan a top-level argv slice for `--format json` (or `--format=json`) so
@@ -61,4 +61,3 @@ export function detectTopLevelFormat(args) {
61
61
  }
62
62
  return "text";
63
63
  }
64
- //# sourceMappingURL=shared.js.map
@@ -1,75 +1,72 @@
1
- import { cmdState } from "../commands/state/index.js";
2
- import { COMMAND_FILTERS } from "../stateQuery.js";
3
1
  import { cmdQuery } from "../commands/query.js";
4
2
  import { makeArgvValueReader } from "./argvParser.js";
5
- import { asEnvelopeFormat, classifyParseError } from "./shared.js";
3
+ import { asEnvelopeFormat, classifyParseError, detectTopLevelFormat } from "./shared.js";
6
4
  import { emitInvalidInput } from "../errors.js";
7
- export function parseStateArgs(command, argv) {
8
- const args = {
9
- command,
10
- topic: null,
11
- status: null,
12
- dimension: null,
13
- severity: null,
14
- limit: 5,
15
- format: "text",
16
- fields: null,
5
+ import { runStateWrite } from "../commands/state/write.js";
6
+ import { runStateGet } from "../commands/state/get.js";
7
+ import { runStateList } from "../commands/state/list.js";
8
+ import { runPlanTasks } from "../commands/state/planTasks.js";
9
+ import { runPlans } from "../commands/state/plans.js";
10
+ import { runExperimentRecords } from "../commands/state/experimentRecords.js";
11
+ import { runtimeEntityFamilyForStateCommand } from "../../state/entityListRuntimeRegistry.js";
12
+ import { entityListFamily, entityListValidValues } from "../../state/entityRetrievalHelp.js";
13
+ import { emitStructured } from "../structured.js";
14
+ import { verbsForArtifact } from "../../state/write/operations.js";
15
+ function canonicalReadCorrection(familyKey, argv, io) {
16
+ const family = entityListFamily(familyKey);
17
+ const recoveryCommand = family.bareRecovery ?? family.example;
18
+ const format = argv.some((token, index) => token === "--format=yaml" || (token === "--format" && argv[index + 1] === "yaml"))
19
+ ? "yaml"
20
+ : detectTopLevelFormat(argv);
21
+ const body = {
22
+ schemaVersion: "agentera.stateFailure.v1",
23
+ status: "fail",
24
+ error: {
25
+ class: "invalid_request",
26
+ message: `bare state ${family.commandTokens.join(" ")} is not a canonical record-family read`,
27
+ syntax: `${family.syntax} | ${family.get}`,
28
+ valid_values: ["list", "get", ...entityListValidValues(family)],
29
+ example: recoveryCommand,
30
+ recovery: `Run \`${recoveryCommand}\`; no state was changed.`,
31
+ artifact: family.key,
32
+ },
17
33
  };
18
- const allowed = new Set([...(COMMAND_FILTERS[command] ?? []), "format", "fields"]);
19
- let i = 0;
20
- const value = makeArgvValueReader(argv, () => i, (n) => {
21
- i = n;
22
- });
23
- for (; i < argv.length; i++) {
24
- const a = argv[i];
25
- const named = (flag, key) => allowed.has(key) && (a === flag || a.startsWith(flag + "="));
26
- let v;
27
- if (named("--topic", "topic"))
28
- args.topic = value("--topic");
29
- else if (named("--status", "status"))
30
- args.status = value("--status");
31
- else if (named("--dimension", "dimension"))
32
- args.dimension = value("--dimension");
33
- else if (named("--severity", "severity"))
34
- args.severity = value("--severity");
35
- else if (named("--limit", "limit")) {
36
- v = value("--limit");
37
- const n = Number(v);
38
- if (!Number.isInteger(n))
39
- return { error: `argument --limit: invalid int value: '${v}'` };
40
- args.limit = n;
41
- }
42
- else if (a === "--format" || a.startsWith("--format=")) {
43
- v = value("--format");
44
- if (v !== "text" && v !== "json" && v !== "yaml") {
45
- return { error: `argument --format: invalid choice: '${v}' (choose from 'text', 'json', 'yaml')` };
46
- }
47
- args.format = v;
48
- }
49
- else if (a === "--fields" || a.startsWith("--fields="))
50
- args.fields = value("--fields");
51
- else
52
- return { error: `unrecognized arguments: ${a}` };
53
- }
54
- return args;
34
+ if (format === "json" || format === "yaml")
35
+ emitStructured(body, format, io.out ?? ((text) => process.stdout.write(text)));
36
+ else
37
+ (io.err ?? ((text) => process.stderr.write(text)))(`Error: ${body.error.message}\nSyntax: ${body.error.syntax}\nExample: ${body.error.example}\nRecovery: ${body.error.recovery}\n`);
38
+ return 2;
55
39
  }
56
40
  export function runState(command, argv, io, prog) {
57
- const parsed = parseStateArgs(command, argv);
58
- if ("error" in parsed) {
59
- return emitInvalidInput(io, {
60
- format: "text",
61
- body: classifyParseError(parsed.error),
62
- });
63
- }
64
- try {
65
- return cmdState(parsed, io);
41
+ const runtime = runtimeEntityFamilyForStateCommand(command, argv);
42
+ if (runtime) {
43
+ const offset = runtime.commandTokens.length - 1;
44
+ const familyArgv = argv.slice(offset);
45
+ const verb = familyArgv[0];
46
+ if (verb === "list" || verb === "get") {
47
+ if (runtime.parser === "generic")
48
+ return verb === "list" ? runStateList(command, familyArgv.slice(1), io) : runStateGet(command, familyArgv.slice(1), io);
49
+ if (runtime.parser === "plans")
50
+ return runPlans(familyArgv, io);
51
+ if (runtime.parser === "plan_tasks")
52
+ return runPlanTasks(familyArgv, io);
53
+ return runExperimentRecords(familyArgv, io);
54
+ }
55
+ const family = entityListFamily(runtime.key);
56
+ const writeVerb = verb !== undefined && verbsForArtifact(command).some((candidate) => candidate === verb);
57
+ if (writeVerb && runtime.commandTokens.length === 1)
58
+ return runStateWrite(command, argv, io);
59
+ if (family.bareRead === "alias")
60
+ return runStateList(command, familyArgv, io);
61
+ return canonicalReadCorrection(family.key, familyArgv, io);
66
62
  }
67
- catch (exc) {
68
- return emitInvalidInput(io, {
69
- format: asEnvelopeFormat(parsed.format),
70
- body: { class: "unsupported_target", message: exc.message },
71
- });
63
+ if (argv[0] && verbsForArtifact(command).some((candidate) => candidate === argv[0])) {
64
+ return runStateWrite(command, argv, io);
72
65
  }
66
+ return emitInvalidInput(io, {
67
+ format: detectTopLevelFormat(argv),
68
+ body: { class: "unsupported_target", message: `unsupported state artifact or operation '${command} ${argv[0] ?? ""}'`.trim() },
69
+ });
73
70
  }
74
71
  export function parseQueryArgs(argv) {
75
72
  const args = {
@@ -127,7 +124,7 @@ export function runQuery(argv, io, prog) {
127
124
  const parsed = parseQueryArgs(argv);
128
125
  if ("error" in parsed) {
129
126
  return emitInvalidInput(io, {
130
- format: "text",
127
+ format: detectTopLevelFormat(argv),
131
128
  body: classifyParseError(parsed.error),
132
129
  });
133
130
  }
@@ -141,4 +138,3 @@ export function runQuery(argv, io, prog) {
141
138
  });
142
139
  }
143
140
  }
144
- //# sourceMappingURL=state.js.map
@@ -1,2 +1 @@
1
1
  export { main } from "./dispatch/index.js";
2
- //# sourceMappingURL=dispatch.js.map
@@ -1,15 +1,6 @@
1
- /**
2
- * Canonical invalid-input error envelope for all CLI surfaces.
3
- *
4
- * Two output modes:
5
- * - json: writes the canonical envelope to stdout, returns rc 2.
6
- * - text: writes the four-question guidance template to stderr, returns rc 2.
7
- *
8
- * Exit code 2 is reserved for invalid input (per existing CLI convention).
9
- * Engine failures (rc 1) and pass (rc 0) are handled by the command functions
10
- * themselves; this helper is for parse-time and run-time input rejection only.
11
- */
1
+ import YAML from "yaml";
12
2
  export const INVALID_INPUT_EXIT_CODE = 2;
3
+ const DEFAULT_RECOVERY = "Correct the input and retry; no state was changed.";
13
4
  const TEXT_GUIDANCE_LINES = [
14
5
  "What happened: {message}",
15
6
  "What the preview did: nothing; only the input was rejected.",
@@ -19,13 +10,20 @@ const TEXT_GUIDANCE_LINES = [
19
10
  export function emitInvalidInput(io, opts) {
20
11
  const out = io.out ?? ((t) => process.stdout.write(t));
21
12
  const err = io.err ?? ((t) => process.stderr.write(t));
22
- if (opts.format === "json") {
13
+ if (opts.format === "json" || opts.format === "yaml") {
23
14
  const envelope = {
15
+ schemaVersion: "agentera.invalidInputEnvelope.v2",
24
16
  status: "fail",
25
- error: opts.body,
17
+ error: {
18
+ ...opts.body,
19
+ recovery: opts.body.recovery ?? DEFAULT_RECOVERY,
20
+ },
26
21
  };
27
- out(JSON.stringify(envelope) + "\n");
28
- return INVALID_INPUT_EXIT_CODE;
22
+ if (opts.format === "json")
23
+ out(JSON.stringify(envelope) + "\n");
24
+ else
25
+ out(YAML.stringify(envelope));
26
+ return opts.exitCode ?? INVALID_INPUT_EXIT_CODE;
29
27
  }
30
28
  const lines = [];
31
29
  for (const tmpl of TEXT_GUIDANCE_LINES) {
@@ -47,7 +45,8 @@ export function emitInvalidInput(io, opts) {
47
45
  lines.push("Example:");
48
46
  lines.push(` ${opts.body.example}`);
49
47
  }
48
+ lines.push("");
49
+ lines.push(`Recovery: ${opts.body.recovery ?? DEFAULT_RECOVERY}`);
50
50
  err(lines.join("\n") + "\n");
51
- return INVALID_INPUT_EXIT_CODE;
51
+ return opts.exitCode ?? INVALID_INPUT_EXIT_CODE;
52
52
  }
53
- //# sourceMappingURL=errors.js.map