agentera 3.0.0-dev.4 → 3.0.0-dev.6

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 (321) hide show
  1. package/README.md +4 -3
  2. package/bundle/.agentera-npx-bundle.json +1 -1
  3. package/bundle/references/adapters/opencode.md +1 -1
  4. package/bundle/references/adapters/package-registry.yaml +0 -1
  5. package/bundle/references/adapters/package-surface-characterization.md +1 -2
  6. package/bundle/references/analysis/startup-measurement-contract.yaml +11 -11
  7. package/bundle/references/cli/agent-ready-state-contract.yaml +5 -5
  8. package/bundle/references/cli/audience-namespace-cli-migration.yaml +40 -26
  9. package/bundle/references/cli/bundle-skill-vocabulary.yaml +2 -30
  10. package/bundle/references/cli/capability-instruction-contract.yaml +98 -57
  11. package/bundle/references/cli/coexistence-probe.yaml +9 -0
  12. package/bundle/references/cli/routing-execution-vocabulary.yaml +6 -6
  13. package/bundle/references/cli/single-name-protocol.yaml +42 -0
  14. package/bundle/references/cli/update-channels.yaml +18 -2
  15. package/bundle/references/cli/upgrade-repair-wording.md +31 -0
  16. package/bundle/references/cli/v3-handoff-manifest.schema.yaml +98 -0
  17. package/bundle/references/cli/vocabulary-index.yaml +3 -3
  18. package/bundle/references/cli/vocabulary.md +34 -26
  19. package/bundle/references/meta/documentation-inventory.md +9 -3
  20. package/bundle/registry.json +1 -1
  21. package/bundle/skills/agentera/SKILL.md +50 -33
  22. package/bundle/skills/agentera/agents/dokumentera.toml +1 -1
  23. package/bundle/skills/agentera/agents/hej.toml +1 -1
  24. package/bundle/skills/agentera/agents/inspektera.toml +1 -1
  25. package/bundle/skills/agentera/agents/inspirera.toml +1 -1
  26. package/bundle/skills/agentera/agents/optimera.toml +1 -1
  27. package/bundle/skills/agentera/agents/orkestrera.toml +1 -1
  28. package/bundle/skills/agentera/agents/planera.toml +1 -1
  29. package/bundle/skills/agentera/agents/profilera.toml +1 -1
  30. package/bundle/skills/agentera/agents/realisera.toml +1 -1
  31. package/bundle/skills/agentera/agents/resonera.toml +1 -1
  32. package/bundle/skills/agentera/agents/visionera.toml +1 -1
  33. package/bundle/skills/agentera/agents/visualisera.toml +1 -1
  34. package/bundle/skills/agentera/capabilities/orkestrera/schemas/validation.yaml +26 -13
  35. package/bundle/skills/agentera/capability_schema_contract.yaml +33 -14
  36. package/bundle/skills/agentera/references/contract.md +2 -2
  37. package/bundle/skills/agentera/schemas/artifacts/decisions.yaml +1 -1
  38. package/bundle/skills/agentera/schemas/artifacts/progress.yaml +15 -36
  39. package/bundle/skills/agentera/schemas/artifacts/todo.yaml +14 -0
  40. package/dist/analytics/extractCorpus/cli.js +101 -0
  41. package/dist/analytics/extractCorpus/cli.js.map +1 -0
  42. package/dist/analytics/extractCorpus/copilotSessions.js +231 -0
  43. package/dist/analytics/extractCorpus/copilotSessions.js.map +1 -0
  44. package/dist/analytics/extractCorpus/core.js +357 -0
  45. package/dist/analytics/extractCorpus/core.js.map +1 -0
  46. package/dist/analytics/extractCorpus/corpus.js +132 -0
  47. package/dist/analytics/extractCorpus/corpus.js.map +1 -0
  48. package/dist/analytics/extractCorpus/cursorSessions.js +420 -0
  49. package/dist/analytics/extractCorpus/cursorSessions.js.map +1 -0
  50. package/dist/analytics/extractCorpus/filesystemSources.js +122 -0
  51. package/dist/analytics/extractCorpus/filesystemSources.js.map +1 -0
  52. package/dist/analytics/extractCorpus/index.js +9 -0
  53. package/dist/analytics/extractCorpus/index.js.map +1 -0
  54. package/dist/analytics/extractCorpus/jsonlSessions.js +185 -0
  55. package/dist/analytics/extractCorpus/jsonlSessions.js.map +1 -0
  56. package/dist/analytics/extractCorpus/sqliteSessions.js +275 -0
  57. package/dist/analytics/extractCorpus/sqliteSessions.js.map +1 -0
  58. package/dist/analytics/extractCorpus.js +2 -1790
  59. package/dist/analytics/extractCorpus.js.map +1 -1
  60. package/dist/analytics/usageStats.js +1 -1
  61. package/dist/analytics/usageStats.js.map +1 -1
  62. package/dist/capabilities/dokumentera/instructions.js +6 -0
  63. package/dist/capabilities/dokumentera/instructions.js.map +1 -0
  64. package/dist/capabilities/hej/instructions.js +6 -0
  65. package/dist/capabilities/hej/instructions.js.map +1 -0
  66. package/dist/capabilities/index.js +38 -0
  67. package/dist/capabilities/index.js.map +1 -0
  68. package/dist/capabilities/inspektera/instructions.js +6 -0
  69. package/dist/capabilities/inspektera/instructions.js.map +1 -0
  70. package/dist/capabilities/inspirera/instructions.js +6 -0
  71. package/dist/capabilities/inspirera/instructions.js.map +1 -0
  72. package/dist/capabilities/optimera/instructions.js +6 -0
  73. package/dist/capabilities/optimera/instructions.js.map +1 -0
  74. package/dist/capabilities/orkestrera/instructions.js +6 -0
  75. package/dist/capabilities/orkestrera/instructions.js.map +1 -0
  76. package/dist/capabilities/planera/instructions.js +6 -0
  77. package/dist/capabilities/planera/instructions.js.map +1 -0
  78. package/dist/capabilities/profilera/instructions.js +6 -0
  79. package/dist/capabilities/profilera/instructions.js.map +1 -0
  80. package/dist/capabilities/realisera/instructions.js +6 -0
  81. package/dist/capabilities/realisera/instructions.js.map +1 -0
  82. package/dist/capabilities/resonera/instructions.js +6 -0
  83. package/dist/capabilities/resonera/instructions.js.map +1 -0
  84. package/dist/capabilities/visionera/instructions.js +6 -0
  85. package/dist/capabilities/visionera/instructions.js.map +1 -0
  86. package/dist/capabilities/visualisera/instructions.js +6 -0
  87. package/dist/capabilities/visualisera/instructions.js.map +1 -0
  88. package/dist/cli/capabilityContext/benchmark.js +557 -0
  89. package/dist/cli/capabilityContext/benchmark.js.map +1 -0
  90. package/dist/cli/capabilityContext/bespoke.js +25 -0
  91. package/dist/cli/capabilityContext/bespoke.js.map +1 -0
  92. package/dist/cli/capabilityContext/closeout.js +230 -0
  93. package/dist/cli/capabilityContext/closeout.js.map +1 -0
  94. package/dist/cli/capabilityContext/contract.js +186 -0
  95. package/dist/cli/capabilityContext/contract.js.map +1 -0
  96. package/dist/cli/capabilityContext/evidence.js +446 -0
  97. package/dist/cli/capabilityContext/evidence.js.map +1 -0
  98. package/dist/cli/capabilityContext/index.js +4 -0
  99. package/dist/cli/capabilityContext/index.js.map +1 -0
  100. package/dist/cli/capabilityContext/orchestration.js +107 -0
  101. package/dist/cli/capabilityContext/orchestration.js.map +1 -0
  102. package/dist/cli/capabilityContext/planState.js +271 -0
  103. package/dist/cli/capabilityContext/planState.js.map +1 -0
  104. package/dist/cli/capabilityContext/progress.js +96 -0
  105. package/dist/cli/capabilityContext/progress.js.map +1 -0
  106. package/dist/cli/capabilityContext/realisera.js +174 -0
  107. package/dist/cli/capabilityContext/realisera.js.map +1 -0
  108. package/dist/cli/capabilityContext/shared.js +94 -0
  109. package/dist/cli/capabilityContext/shared.js.map +1 -0
  110. package/dist/cli/capabilityContext/slim.js +106 -0
  111. package/dist/cli/capabilityContext/slim.js.map +1 -0
  112. package/dist/cli/capabilityContext/startup.js +208 -0
  113. package/dist/cli/capabilityContext/startup.js.map +1 -0
  114. package/dist/cli/capabilityContext/types.js +43 -0
  115. package/dist/cli/capabilityContext/types.js.map +1 -0
  116. package/dist/cli/capabilityContext.js +1 -2420
  117. package/dist/cli/capabilityContext.js.map +1 -1
  118. package/dist/cli/commands/capability.js +1 -8
  119. package/dist/cli/commands/capability.js.map +1 -1
  120. package/dist/cli/commands/compact.js +1 -1
  121. package/dist/cli/commands/compact.js.map +1 -1
  122. package/dist/cli/commands/doctor.js +35 -6
  123. package/dist/cli/commands/doctor.js.map +1 -1
  124. package/dist/cli/commands/lint.js +4 -36
  125. package/dist/cli/commands/lint.js.map +1 -1
  126. package/dist/cli/commands/query.js +1 -1
  127. package/dist/cli/commands/query.js.map +1 -1
  128. package/dist/cli/commands/report.js +11 -2
  129. package/dist/cli/commands/report.js.map +1 -1
  130. package/dist/cli/commands/schema.js +1 -2
  131. package/dist/cli/commands/schema.js.map +1 -1
  132. package/dist/cli/commands/state/decisions.js +397 -0
  133. package/dist/cli/commands/state/decisions.js.map +1 -0
  134. package/dist/cli/commands/state/docs.js +93 -0
  135. package/dist/cli/commands/state/docs.js.map +1 -0
  136. package/dist/cli/commands/state/experiments.js +67 -0
  137. package/dist/cli/commands/state/experiments.js.map +1 -0
  138. package/dist/cli/commands/state/health.js +114 -0
  139. package/dist/cli/commands/state/health.js.map +1 -0
  140. package/dist/cli/commands/state/index.js +51 -0
  141. package/dist/cli/commands/state/index.js.map +1 -0
  142. package/dist/cli/commands/state/objective.js +68 -0
  143. package/dist/cli/commands/state/objective.js.map +1 -0
  144. package/dist/cli/commands/state/plan.js +172 -0
  145. package/dist/cli/commands/state/plan.js.map +1 -0
  146. package/dist/cli/commands/state/progress.js +47 -0
  147. package/dist/cli/commands/state/progress.js.map +1 -0
  148. package/dist/cli/commands/state/shared.js +15 -0
  149. package/dist/cli/commands/state/shared.js.map +1 -0
  150. package/dist/cli/commands/state/todo.js +121 -0
  151. package/dist/cli/commands/state/todo.js.map +1 -0
  152. package/dist/cli/commands/state.js +29 -18
  153. package/dist/cli/commands/state.js.map +1 -1
  154. package/dist/cli/commands/validate.js +44 -20
  155. package/dist/cli/commands/validate.js.map +1 -1
  156. package/dist/cli/dispatch/check.js +328 -0
  157. package/dist/cli/dispatch/check.js.map +1 -0
  158. package/dist/cli/dispatch/index.js +177 -0
  159. package/dist/cli/dispatch/index.js.map +1 -0
  160. package/dist/cli/dispatch/lifecycle.js +492 -0
  161. package/dist/cli/dispatch/lifecycle.js.map +1 -0
  162. package/dist/cli/dispatch/prime.js +100 -0
  163. package/dist/cli/dispatch/prime.js.map +1 -0
  164. package/dist/cli/dispatch/shared.js +64 -0
  165. package/dist/cli/dispatch/shared.js.map +1 -0
  166. package/dist/cli/dispatch/state.js +149 -0
  167. package/dist/cli/dispatch/state.js.map +1 -0
  168. package/dist/cli/dispatch.js +1 -995
  169. package/dist/cli/dispatch.js.map +1 -1
  170. package/dist/cli/errors.js +53 -0
  171. package/dist/cli/errors.js.map +1 -0
  172. package/dist/cli/help.js +1 -3
  173. package/dist/cli/help.js.map +1 -1
  174. package/dist/cli/orientation.js +10 -7
  175. package/dist/cli/orientation.js.map +1 -1
  176. package/dist/cli/stateQuery.js +7 -0
  177. package/dist/cli/stateQuery.js.map +1 -1
  178. package/dist/cli/todoMarkdown.js +33 -0
  179. package/dist/cli/todoMarkdown.js.map +1 -0
  180. package/dist/hooks/common.js +8 -25
  181. package/dist/hooks/common.js.map +1 -1
  182. package/dist/hooks/compaction/apply.js +244 -0
  183. package/dist/hooks/compaction/apply.js.map +1 -0
  184. package/dist/hooks/compaction/dryRun.js +181 -0
  185. package/dist/hooks/compaction/dryRun.js.map +1 -0
  186. package/dist/hooks/compaction/index.js +23 -0
  187. package/dist/hooks/compaction/index.js.map +1 -0
  188. package/dist/hooks/compaction/parse.js +129 -0
  189. package/dist/hooks/compaction/parse.js.map +1 -0
  190. package/dist/hooks/compaction/retention.js +197 -0
  191. package/dist/hooks/compaction/retention.js.map +1 -0
  192. package/dist/hooks/compaction/status.js +243 -0
  193. package/dist/hooks/compaction/status.js.map +1 -0
  194. package/dist/hooks/compaction/types.js +6 -0
  195. package/dist/hooks/compaction/types.js.map +1 -0
  196. package/dist/hooks/compaction.js +20 -20
  197. package/dist/hooks/compaction.js.map +1 -1
  198. package/dist/hooks/cursorPreToolUse.js +1 -1
  199. package/dist/hooks/cursorPreToolUse.js.map +1 -1
  200. package/dist/hooks/sessionStart.js +4 -4
  201. package/dist/hooks/sessionStart.js.map +1 -1
  202. package/dist/hooks/sessionStop.js +3 -12
  203. package/dist/hooks/sessionStop.js.map +1 -1
  204. package/dist/hooks/validateArtifact/agentFacing.js +10 -0
  205. package/dist/hooks/validateArtifact/agentFacing.js.map +1 -0
  206. package/dist/hooks/validateArtifact/index.js +149 -0
  207. package/dist/hooks/validateArtifact/index.js.map +1 -0
  208. package/dist/hooks/validateArtifact/markdown.js +95 -0
  209. package/dist/hooks/validateArtifact/markdown.js.map +1 -0
  210. package/dist/hooks/validateArtifact/runtime.js +83 -0
  211. package/dist/hooks/validateArtifact/runtime.js.map +1 -0
  212. package/dist/hooks/validateArtifact/schema.js +455 -0
  213. package/dist/hooks/validateArtifact/schema.js.map +1 -0
  214. package/dist/hooks/validateArtifact/traversal.js +105 -0
  215. package/dist/hooks/validateArtifact/traversal.js.map +1 -0
  216. package/dist/hooks/validateArtifact/violations.js +105 -0
  217. package/dist/hooks/validateArtifact/violations.js.map +1 -0
  218. package/dist/hooks/validateArtifact.js +40 -49
  219. package/dist/hooks/validateArtifact.js.map +1 -1
  220. package/dist/migrate/v2HandoffManifest.js +333 -0
  221. package/dist/migrate/v2HandoffManifest.js.map +1 -0
  222. package/dist/registries/artifactProtocolIds.js +77 -0
  223. package/dist/registries/artifactProtocolIds.js.map +1 -0
  224. package/dist/registries/capabilityContract.js +12 -11
  225. package/dist/registries/capabilityContract.js.map +1 -1
  226. package/dist/registries/evaluatorHandoffContract.js +171 -0
  227. package/dist/registries/evaluatorHandoffContract.js.map +1 -0
  228. package/dist/release/releaseMetadata.js +235 -0
  229. package/dist/release/releaseMetadata.js.map +1 -0
  230. package/dist/setup/codex/agents.js +96 -0
  231. package/dist/setup/codex/agents.js.map +1 -0
  232. package/dist/setup/codex/cli.js +161 -0
  233. package/dist/setup/codex/cli.js.map +1 -0
  234. package/dist/setup/codex/configToml.js +644 -0
  235. package/dist/setup/codex/configToml.js.map +1 -0
  236. package/dist/setup/codex/constants.js +29 -0
  237. package/dist/setup/codex/constants.js.map +1 -0
  238. package/dist/setup/codex/installRoot.js +64 -0
  239. package/dist/setup/codex/installRoot.js.map +1 -0
  240. package/dist/setup/codex/state.js +270 -0
  241. package/dist/setup/codex/state.js.map +1 -0
  242. package/dist/setup/codex.js +11 -1055
  243. package/dist/setup/codex.js.map +1 -1
  244. package/dist/setup/doctor/core.js +300 -0
  245. package/dist/setup/doctor/core.js.map +1 -0
  246. package/dist/setup/doctor/diagnostics.js +247 -0
  247. package/dist/setup/doctor/diagnostics.js.map +1 -0
  248. package/dist/setup/doctor/opencode.js +281 -0
  249. package/dist/setup/doctor/opencode.js.map +1 -0
  250. package/dist/setup/doctor/report.js +474 -0
  251. package/dist/setup/doctor/report.js.map +1 -0
  252. package/dist/setup/doctor.js +9 -1296
  253. package/dist/setup/doctor.js.map +1 -1
  254. package/dist/setup/opencode.js +13 -0
  255. package/dist/setup/opencode.js.map +1 -0
  256. package/dist/setup/smokeChecks.js +1 -1
  257. package/dist/setup/smokeChecks.js.map +1 -1
  258. package/dist/state/progressCommit.js +1 -1
  259. package/dist/state/progressCommit.js.map +1 -1
  260. package/dist/state/startupAnalysis/benchmark.js +367 -0
  261. package/dist/state/startupAnalysis/benchmark.js.map +1 -0
  262. package/dist/state/startupAnalysis/contract.js +122 -0
  263. package/dist/state/startupAnalysis/contract.js.map +1 -0
  264. package/dist/state/startupAnalysis/helpers.js +332 -0
  265. package/dist/state/startupAnalysis/helpers.js.map +1 -0
  266. package/dist/state/startupAnalysis/index.js +7 -0
  267. package/dist/state/startupAnalysis/index.js.map +1 -0
  268. package/dist/state/startupAnalysis/metrics.js +334 -0
  269. package/dist/state/startupAnalysis/metrics.js.map +1 -0
  270. package/dist/state/startupAnalysis/records.js +195 -0
  271. package/dist/state/startupAnalysis/records.js.map +1 -0
  272. package/dist/state/startupAnalysis/report.js +123 -0
  273. package/dist/state/startupAnalysis/report.js.map +1 -0
  274. package/dist/state/startupAnalysis/threshold.js +500 -0
  275. package/dist/state/startupAnalysis/threshold.js.map +1 -0
  276. package/dist/state/startupAnalysis.js +2 -1952
  277. package/dist/state/startupAnalysis.js.map +1 -1
  278. package/dist/upgrade/coexistenceProbe.js +83 -0
  279. package/dist/upgrade/coexistenceProbe.js.map +1 -0
  280. package/dist/upgrade/doctor.js +41 -2
  281. package/dist/upgrade/doctor.js.map +1 -1
  282. package/dist/upgrade/migrateArtifactsV1ToV2.js +0 -1
  283. package/dist/upgrade/migrateArtifactsV1ToV2.js.map +1 -1
  284. package/dist/upgrade/migrateArtifactsV2ToV3.js +5 -83
  285. package/dist/upgrade/migrateArtifactsV2ToV3.js.map +1 -1
  286. package/dist/upgrade/nextMajorDoctor.js +136 -0
  287. package/dist/upgrade/nextMajorDoctor.js.map +1 -0
  288. package/dist/upgrade/projectIntegration.js +3 -1
  289. package/dist/upgrade/projectIntegration.js.map +1 -1
  290. package/dist/upgrade/runtimeMigration.js +32 -5
  291. package/dist/upgrade/runtimeMigration.js.map +1 -1
  292. package/dist/upgrade/v3CapabilitySurface.js +15 -0
  293. package/dist/upgrade/v3CapabilitySurface.js.map +1 -0
  294. package/dist/upgrade/versionResolution.js +12 -4
  295. package/dist/upgrade/versionResolution.js.map +1 -1
  296. package/dist/validate/appHomeContract.js +4 -4
  297. package/dist/validate/appHomeContract.js.map +1 -1
  298. package/dist/validate/capability.js +11 -3
  299. package/dist/validate/capability.js.map +1 -1
  300. package/dist/validate/selfAudit.js +62 -20
  301. package/dist/validate/selfAudit.js.map +1 -1
  302. package/dist/validate/vocabularyAuthority.js +298 -0
  303. package/dist/validate/vocabularyAuthority.js.map +1 -0
  304. package/package.json +4 -4
  305. package/bundle/references/v1-section-mapping.md +0 -47
  306. package/bundle/skills/agentera/capabilities/dokumentera/instructions.md +0 -428
  307. package/bundle/skills/agentera/capabilities/hej/instructions.md +0 -331
  308. package/bundle/skills/agentera/capabilities/inspektera/instructions.md +0 -514
  309. package/bundle/skills/agentera/capabilities/inspirera/instructions.md +0 -280
  310. package/bundle/skills/agentera/capabilities/optimera/instructions.md +0 -437
  311. package/bundle/skills/agentera/capabilities/orkestrera/instructions.md +0 -433
  312. package/bundle/skills/agentera/capabilities/planera/instructions.md +0 -368
  313. package/bundle/skills/agentera/capabilities/profilera/instructions.md +0 -419
  314. package/bundle/skills/agentera/capabilities/realisera/instructions.md +0 -403
  315. package/bundle/skills/agentera/capabilities/resonera/instructions.md +0 -329
  316. package/bundle/skills/agentera/capabilities/visionera/instructions.md +0 -309
  317. package/bundle/skills/agentera/capabilities/visualisera/instructions.md +0 -400
  318. package/bundle/skills/hej/.claude-plugin/plugin.json +0 -6
  319. package/bundle/skills/hej/SKILL.md +0 -69
  320. package/bundle/skills/hej/agents/hej.toml +0 -11
  321. package/bundle/skills/hej/agents/openai.yaml +0 -8
@@ -0,0 +1,121 @@
1
+ /**
2
+ * `state todo` query (TODO.md).
3
+ *
4
+ * Reads TODO.md, partitions entries by severity band (using the
5
+ * protocol glyphs as the section heading), and reports each entry
6
+ * with its severity, status, and description. Supports both the
7
+ * legacy structured YAML shape and the current markdown layout.
8
+ */
9
+ import fs from "node:fs";
10
+ import { emitStateStructured, extractEntries, filterByFieldValue, formatEntry, loadArtifact, printStatusCounts, sourceMetadata, statusCounts, structuredState, } from "../../stateQuery.js";
11
+ import { artifactPath } from "../../appContext.js";
12
+ import { isResolvedTodoMarkdownStatus, parseTodoMarkdownListItem } from "../../todoMarkdown.js";
13
+ import { out, err } from "./shared.js";
14
+ const TODO_SEVERITY_ORDER_KEYS = ["critical", "degraded", "warning", "normal", "info", "annoying"];
15
+ const TODO_SEV_GLYPHS = {
16
+ critical: "⇶",
17
+ degraded: "⇉",
18
+ warning: "⇉",
19
+ normal: "→",
20
+ info: "⇢",
21
+ annoying: "⇢",
22
+ };
23
+ export function normalizeSeverity(value, deflt = "normal") {
24
+ const text = String(value || deflt).toLowerCase();
25
+ for (const key of TODO_SEVERITY_ORDER_KEYS) {
26
+ if (text.includes(key))
27
+ return key;
28
+ }
29
+ return deflt;
30
+ }
31
+ export function queryTodo(args, schemas, io, openOnly = false) {
32
+ const o = out(io);
33
+ const info = schemas.todo ?? { path: "TODO.md", record: undefined, schema: {}, fields: {} };
34
+ const todoPath = artifactPath(info, "todo");
35
+ const severity = args.severity ?? null;
36
+ const status = args.status ?? null;
37
+ const format = args.format ?? "text";
38
+ if (!fs.existsSync(todoPath)) {
39
+ if (format !== "text") {
40
+ return emitStateStructured("todo", structuredState("todo", [], sourceMetadata("todo", todoPath), {
41
+ filters: { severity, status },
42
+ }), format, args.fields, o, err(io));
43
+ }
44
+ return 0;
45
+ }
46
+ const data = loadArtifact(todoPath);
47
+ let entries = extractEntries(data);
48
+ if (entries.length > 0) {
49
+ if (severity)
50
+ entries = filterByFieldValue(entries, "severity", severity);
51
+ if (status)
52
+ entries = filterByFieldValue(entries, "status", status);
53
+ if (openOnly) {
54
+ entries = entries.filter((entry) => !["done", "closed", "resolved"].includes(String(entry.status ?? "open").toLowerCase()));
55
+ }
56
+ if (format !== "text") {
57
+ return emitStateStructured("todo", structuredState("todo", entries, sourceMetadata("todo", todoPath), {
58
+ filters: { severity, status, open_only: openOnly || null },
59
+ }), format, args.fields, o, err(io));
60
+ }
61
+ printStatusCounts("TODO status", statusCounts(entries), o);
62
+ for (const entry of entries) {
63
+ const line = formatEntry(entry, ["severity", "status", "description", "title"]);
64
+ if (line)
65
+ o(line + "\n");
66
+ }
67
+ return 0;
68
+ }
69
+ const text = fs.readFileSync(todoPath, "utf8");
70
+ const marker = severity ? TODO_SEV_GLYPHS[severity.toLowerCase()] ?? severity : null;
71
+ let currentSection = null;
72
+ const markdownEntries = [];
73
+ for (const rawLine of text.split(/\r\n|\r|\n/)) {
74
+ const sline = rawLine.trim();
75
+ if (sline.startsWith("## ")) {
76
+ const section = sline.slice(3).trim();
77
+ if (section.toLowerCase().includes("resolved")) {
78
+ currentSection = null;
79
+ continue;
80
+ }
81
+ currentSection = section;
82
+ continue;
83
+ }
84
+ if (currentSection === null)
85
+ continue;
86
+ const parsed = parseTodoMarkdownListItem(sline);
87
+ if (!parsed)
88
+ continue;
89
+ if (marker && !currentSection.includes(marker))
90
+ continue;
91
+ const itemStatus = parsed.status;
92
+ if (openOnly && isResolvedTodoMarkdownStatus(itemStatus))
93
+ continue;
94
+ if (status) {
95
+ const want = status.toLowerCase();
96
+ const have = itemStatus.toLowerCase();
97
+ if (want === "open" || want === "todo") {
98
+ if (isResolvedTodoMarkdownStatus(have))
99
+ continue;
100
+ }
101
+ else if (have !== want) {
102
+ continue;
103
+ }
104
+ }
105
+ markdownEntries.push({
106
+ severity: normalizeSeverity(currentSection),
107
+ status: itemStatus,
108
+ description: parsed.description,
109
+ section: currentSection,
110
+ });
111
+ if (format === "text")
112
+ o(`[${currentSection}] ${parsed.description}\n`);
113
+ }
114
+ if (format !== "text") {
115
+ return emitStateStructured("todo", structuredState("todo", markdownEntries, sourceMetadata("todo", todoPath), {
116
+ filters: { severity, status, open_only: openOnly || null },
117
+ }), format, args.fields, o, err(io));
118
+ }
119
+ return 0;
120
+ }
121
+ //# sourceMappingURL=todo.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"todo.js","sourceRoot":"","sources":["../../../../src/cli/commands/state/todo.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
1
  import fs from "node:fs";
2
2
  import { artifactPath, discoverSchemasDir, loadSchemas } from "../appContext.js";
3
- import { asList, COMMAND_FILTERS, emitStateStructured, extractEntries, filterByFieldValue, filterByTopic, firstPresent, formatEntry, loadArtifact, missingSchemaError, printStatusCounts, recentCycles, sourceMetadata, statusCounts, stringFieldNames, structuredState, truncate, validateFilterValues, } from "../stateQuery.js";
3
+ import { asList, COMMAND_FILTERS, emitStateStructured, extractEntries, filterByFieldValue, filterByTopic, firstPresent, formatEntry, loadArtifact, missingSchemaError, printStatusCounts, progressEntriesForOutput, recentCycles, sourceMetadata, statusCounts, stringFieldNames, structuredState, truncate, validateFilterValues, } from "../stateQuery.js";
4
+ import { isResolvedTodoMarkdownStatus, parseTodoMarkdownListItem } from "../todoMarkdown.js";
4
5
  function out(io) {
5
6
  return io.out ?? ((t) => process.stdout.write(t));
6
7
  }
@@ -27,14 +28,14 @@ export function queryProgress(args, schemas, io) {
27
28
  const effectiveLimit = (args.limit ?? 5) || 5;
28
29
  entries = recentCycles(entries, effectiveLimit);
29
30
  if ((args.format ?? "text") !== "text") {
30
- return emitStateStructured("progress", structuredState("progress", entries, sourceMetadata("progress", p), {
31
+ return emitStateStructured("progress", structuredState("progress", progressEntriesForOutput(entries), sourceMetadata("progress", p), {
31
32
  filters: { topic, status: statusFilter, limit: effectiveLimit },
32
33
  }), args.format ?? "text", args.fields, o, e);
33
34
  }
34
35
  if (entries.length === 0)
35
36
  return 0;
36
37
  for (const entry of entries) {
37
- o(formatEntry(entry, ["number", "timestamp", "type", "phase", "commit"]) + "\n");
38
+ o(formatEntry(entry, ["number", "timestamp", "type", "phase"]) + "\n");
38
39
  for (const key of ["what", "verified", "next"]) {
39
40
  const value = entry[key];
40
41
  if (value)
@@ -70,19 +71,19 @@ function planSourceContract(source, summary) {
70
71
  const complete = Boolean(source.exists) && !legacyEntries;
71
72
  const missingState = [];
72
73
  if (!source.exists)
73
- missingState.push("PLAN.md artifact");
74
+ missingState.push("plan artifact");
74
75
  if (legacyEntries)
75
- missingState.push("current PLAN.md task artifact shape");
76
+ missingState.push("current plan task artifact shape");
76
77
  const summaryFields = Object.keys(summary).sort();
77
78
  const entryFields = ["number", "name", "depends_on", "status", "acceptance", "evidence", "blocked_reason"];
78
79
  return {
79
- artifact: "PLAN.md",
80
- canonical_artifact_label: "PLAN.md",
80
+ artifact: "plan",
81
+ canonical_artifact_label: "plan",
81
82
  persisted_artifact_path: source.path,
82
83
  complete_for_plan_artifact: complete,
83
84
  complete_for_normal_startup_evaluation: complete,
84
85
  raw_artifact_reads_required: false,
85
- raw_artifact_read_policy: "Use `agentera plan --format json` entries, summary, source, and source_contract before raw PLAN.md access. " +
86
+ raw_artifact_read_policy: "Use `agentera state plan --format json` entries, summary, source, and source_contract before raw plan access. " +
86
87
  "When complete_for_plan_artifact is true, skip defensive `.agentera/plan.yaml` reads during normal read-only " +
87
88
  "plan startup/evaluation; raw plan artifact access is reserved for writes, archival, validation, corruption " +
88
89
  "diagnostics, or unavailable/incomplete CLI state.",
@@ -502,7 +503,6 @@ export function queryExperiments(args, schemas, io) {
502
503
  return 0;
503
504
  }
504
505
  const TODO_SEVERITY_ORDER_KEYS = ["critical", "degraded", "warning", "normal", "info", "annoying"];
505
- const TODO_ITEM_RE = /^- \[([^\]]+)\]\s+(.*)/;
506
506
  const TODO_SEV_GLYPHS = {
507
507
  critical: "\u21f6",
508
508
  degraded: "\u21c9",
@@ -574,22 +574,33 @@ export function queryTodo(args, schemas, io, openOnly = false) {
574
574
  }
575
575
  if (currentSection === null)
576
576
  continue;
577
- const m = TODO_ITEM_RE.exec(sline);
578
- if (!m)
577
+ const parsed = parseTodoMarkdownListItem(sline);
578
+ if (!parsed)
579
579
  continue;
580
580
  if (marker && !currentSection.includes(marker))
581
581
  continue;
582
- const item = m[2].trim();
583
- if (status && !["open", "todo"].includes(status.toLowerCase()))
582
+ const itemStatus = parsed.status;
583
+ if (openOnly && isResolvedTodoMarkdownStatus(itemStatus))
584
584
  continue;
585
+ if (status) {
586
+ const want = status.toLowerCase();
587
+ const have = itemStatus.toLowerCase();
588
+ if (want === "open" || want === "todo") {
589
+ if (isResolvedTodoMarkdownStatus(have))
590
+ continue;
591
+ }
592
+ else if (have !== want) {
593
+ continue;
594
+ }
595
+ }
585
596
  markdownEntries.push({
586
597
  severity: normalizeSeverity(currentSection),
587
- status: "open",
588
- description: item,
598
+ status: itemStatus,
599
+ description: parsed.description,
589
600
  section: currentSection,
590
601
  });
591
602
  if (format === "text")
592
- o(`[${currentSection}] ${item}\n`);
603
+ o(`[${currentSection}] ${parsed.description}\n`);
593
604
  }
594
605
  if (format !== "text") {
595
606
  return emitStateStructured("todo", structuredState("todo", markdownEntries, sourceMetadata("todo", todoPath), {
@@ -804,8 +815,8 @@ export function decisionSourceContract(source, entries, filters) {
804
815
  if (entriesRequiringSatisfactionReview)
805
816
  caveats.push("One or more returned decisions require satisfaction review; satisfaction is never inferred from downstream references.");
806
817
  return {
807
- artifact: "DECISIONS.md",
808
- canonical_artifact_label: "DECISIONS.md",
818
+ artifact: "decisions",
819
+ canonical_artifact_label: "decisions",
809
820
  path: source.path,
810
821
  complete_for_returned_decisions: completeForReturned,
811
822
  complete_for_decision_context: completeForReturned,
@@ -1 +1 @@
1
- {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"state.js","sourceRoot":"","sources":["../../../src/cli/commands/state.ts"],"names":[],"mappings":"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"}
@@ -3,18 +3,25 @@ import { readdirSync as fsReaddirSync, readFileSync as fsReadFileSync, statSync
3
3
  import { resolvePath } from "../../core/paths.js";
4
4
  import { resolveSourceRoot } from "../../core/sourceRoot.js";
5
5
  import { validateAgentString, validatePathValue } from "../argvalidate.js";
6
- import { HookCliAdapter } from "../../hooks/validateArtifact.js";
6
+ import { HookCliAdapter } from "../../hooks/validateArtifact/index.js";
7
7
  import { validateCapability, validateContractSelf, validateProtocolSelf } from "../../validate/capability.js";
8
8
  import { loadYamlMapping } from "../../core/yaml.js";
9
9
  import { parseToml as parseTomlValidate } from "../../core/toml.js";
10
10
  import { validateGraph } from "../../validate/crossCapability.js";
11
11
  import { lifecycleMain } from "../../validate/lifecycleAdapters.js";
12
12
  import { validate as validateAppHome } from "../../validate/appHomeContract.js";
13
+ import { selfAuditMain } from "../../validate/selfAudit.js";
14
+ import { vocabularyAuthorityMain } from "../../validate/vocabularyAuthority.js";
15
+ import { releaseMetadataMain } from "../../release/releaseMetadata.js";
16
+ import { VALIDATE_ARTIFACT_PROTOCOL_IDS, normalizeArtifactProtocolId, } from "../../registries/artifactProtocolIds.js";
13
17
  import { emitStructured } from "../structured.js";
14
18
  const VALIDATE_DELEGATED_SCRIPTS = {
15
19
  "cross-capability": "validate_cross_capability.py",
16
20
  "lifecycle-adapters": "validate_lifecycle_adapters.py",
17
21
  "app-home-contract": "validate_app_home_contract.py",
22
+ vocabularyAuthority: "validate_vocabulary_authority.py",
23
+ selfAudit: "self_audit.py",
24
+ "release-metadata": "validate_release_metadata.py",
18
25
  };
19
26
  function pySplitlines(s) {
20
27
  if (!s)
@@ -47,6 +54,21 @@ function runAppHomeContract() {
47
54
  }
48
55
  return { stdout: "OK: app-home contract terminology is release-ready\n", stderr: "", returncode: 0 };
49
56
  }
57
+ function runVocabularyAuthority() {
58
+ const lines = [];
59
+ const rc = vocabularyAuthorityMain({ out: (line) => lines.push(line) });
60
+ return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
61
+ }
62
+ function runSelfAudit() {
63
+ const lines = [];
64
+ const rc = selfAuditMain({ out: (line) => lines.push(line) });
65
+ return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
66
+ }
67
+ function runReleaseMetadata() {
68
+ const lines = [];
69
+ const rc = releaseMetadataMain({ out: (line) => lines.push(line) });
70
+ return { stdout: lines.map((l) => l + "\n").join(""), stderr: "", returncode: rc };
71
+ }
50
72
  function repoRoot() {
51
73
  // appHomeContract.validate resolves its own default root; pass the source root.
52
74
  return process.cwd();
@@ -55,6 +77,9 @@ const DELEGATED_RUNNERS = {
55
77
  "cross-capability": runCrossCapability,
56
78
  "lifecycle-adapters": runLifecycleAdapters,
57
79
  "app-home-contract": runAppHomeContract,
80
+ vocabularyAuthority: runVocabularyAuthority,
81
+ selfAudit: runSelfAudit,
82
+ "release-metadata": runReleaseMetadata,
58
83
  };
59
84
  function validationProcessPayload(targetFamily, target, p, result) {
60
85
  const lines = pySplitlines(result.stderr).map((l) => l.trim());
@@ -85,7 +110,7 @@ export function cmdValidate(family, args, io) {
85
110
  const err = io.err ?? ((t) => process.stderr.write(t));
86
111
  if (!(family in DELEGATED_RUNNERS)) {
87
112
  throw new Error("unsupported validate target family; valid families: capability, artifact, descriptors, " +
88
- "cross-capability, lifecycle-adapters, app-home-contract, capability-contract.");
113
+ "cross-capability, lifecycle-adapters, app-home-contract, vocabularyAuthority, selfAudit, release-metadata, capability-contract.");
89
114
  }
90
115
  const result = DELEGATED_RUNNERS[family]();
91
116
  if ((args.format ?? "text") === "json") {
@@ -332,7 +357,8 @@ function descriptorValidationPayload() {
332
357
  checks.push(check);
333
358
  continue;
334
359
  }
335
- const expectedRef = `capabilities/${name}/instructions.md`;
360
+ const expectedRef = `agentera prime --context ${name} --format json`;
361
+ const legacyRef = `capabilities/${name}/instructions.md`;
336
362
  if (parsed.name !== name) {
337
363
  check = { ...check, status: "fail", message: "name field does not match capability" };
338
364
  violations.push(`codex ${name}: name field must be ${name}`);
@@ -345,6 +371,10 @@ function descriptorValidationPayload() {
345
371
  check = { ...check, status: "fail", message: "developer_instructions must reference capability instructions" };
346
372
  violations.push(`codex ${name}: developer_instructions must reference ${expectedRef}`);
347
373
  }
374
+ else if (typeof parsed.developer_instructions === "string" && parsed.developer_instructions.includes(legacyRef)) {
375
+ check = { ...check, status: "fail", message: "developer_instructions must not reference the retired on-disk instructions.md" };
376
+ violations.push(`codex ${name}: developer_instructions must not reference ${legacyRef} (use the prime --context command)`);
377
+ }
348
378
  else if (!pySplitlinesText(text).slice(0, 5).includes("# agentera_managed: true")) {
349
379
  check = { ...check, status: "fail", message: "managed marker is required" };
350
380
  violations.push(`codex ${name}: managed marker is required`);
@@ -397,7 +427,8 @@ function descriptorValidationPayload() {
397
427
  catch {
398
428
  frontmatter = {};
399
429
  }
400
- const expectedRefO = `capabilities/${name}/instructions.md`;
430
+ const expectedRefO = `agentera prime --context ${name} --format json`;
431
+ const legacyRefO = `capabilities/${name}/instructions.md`;
401
432
  const expectedPermission = (capPermissions[name] ?? {});
402
433
  const actualPermission = frontmatter.permission;
403
434
  if ("name" in frontmatter) {
@@ -433,6 +464,10 @@ function descriptorValidationPayload() {
433
464
  ocheck = { ...ocheck, status: "fail", message: "descriptor must reference capability instructions" };
434
465
  violations.push(`opencode ${name}: descriptor must reference ${expectedRefO}`);
435
466
  }
467
+ else if (otext.includes(legacyRefO)) {
468
+ ocheck = { ...ocheck, status: "fail", message: "descriptor must not reference the retired on-disk instructions.md" };
469
+ violations.push(`opencode ${name}: descriptor must not reference ${legacyRefO} (use the prime --context command)`);
470
+ }
436
471
  else if (otext.includes("Dispatch only through the runtime-native") || otext.includes(`\`@${name}\``)) {
437
472
  ocheck = { ...ocheck, status: "fail", message: "descriptor must not self-dispatch from a subagent" };
438
473
  violations.push(`opencode ${name}: descriptor must execute directly without self-dispatch`);
@@ -467,24 +502,13 @@ export function cmdValidateDescriptors(args, io) {
467
502
  return payload.status === "pass" ? 0 : 1;
468
503
  }
469
504
  // ── artifact family ─────────────────────────────────────────────────
470
- const VALIDATE_ARTIFACT_LABELS = [
471
- "CHANGELOG.md",
472
- "DECISIONS.md",
473
- "DESIGN.md",
474
- "DOCS.md",
475
- "HEALTH.md",
476
- "PLAN.md",
477
- "PROGRESS.md",
478
- "TODO.md",
479
- "VISION.md",
480
- ];
481
505
  function validateArtifactLabel(artifact) {
482
506
  validateAgentString(artifact, "artifact");
483
- if (!VALIDATE_ARTIFACT_LABELS.includes(artifact)) {
484
- const valid = VALIDATE_ARTIFACT_LABELS.join(", ");
485
- throw new Error(`unsupported artifact ${pyRepr(artifact)}; valid artifacts: ${valid}. ` +
486
- "Syntax: agentera validate artifact --artifact <ARTIFACT> [--file <PATH>] [--format text|json]. " +
487
- "Example: agentera validate artifact --artifact PLAN.md --file .agentera/plan.yaml --format json");
507
+ if (normalizeArtifactProtocolId(artifact) === null) {
508
+ const valid = VALIDATE_ARTIFACT_PROTOCOL_IDS.join(", ");
509
+ throw new Error(`unsupported artifact ${pyRepr(artifact)}; valid artifact_id values: ${valid}. ` +
510
+ "Syntax: agentera check validate artifact --artifact <ARTIFACT_ID> [--file <PATH>] [--format text|json]. " +
511
+ "Example: agentera check validate artifact --artifact plan --file .agentera/plan.yaml --format json");
488
512
  }
489
513
  }
490
514
  export function cmdValidateArtifact(args, io) {