aether-colony 3.1.17 → 5.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (378) hide show
  1. package/.aether/aether-utils.sh +5354 -0
  2. package/.aether/agents-claude/aether-ambassador.md +265 -0
  3. package/.aether/agents-claude/aether-archaeologist.md +327 -0
  4. package/.aether/agents-claude/aether-architect.md +236 -0
  5. package/.aether/agents-claude/aether-auditor.md +271 -0
  6. package/.aether/agents-claude/aether-builder.md +224 -0
  7. package/.aether/agents-claude/aether-chaos.md +269 -0
  8. package/.aether/agents-claude/aether-chronicler.md +305 -0
  9. package/.aether/agents-claude/aether-gatekeeper.md +330 -0
  10. package/.aether/agents-claude/aether-includer.md +374 -0
  11. package/.aether/agents-claude/aether-keeper.md +272 -0
  12. package/.aether/agents-claude/aether-measurer.md +322 -0
  13. package/.aether/agents-claude/aether-oracle.md +237 -0
  14. package/.aether/agents-claude/aether-probe.md +211 -0
  15. package/.aether/agents-claude/aether-queen.md +330 -0
  16. package/.aether/agents-claude/aether-route-setter.md +178 -0
  17. package/.aether/agents-claude/aether-sage.md +418 -0
  18. package/.aether/agents-claude/aether-scout.md +179 -0
  19. package/.aether/agents-claude/aether-surveyor-disciplines.md +417 -0
  20. package/.aether/agents-claude/aether-surveyor-nest.md +355 -0
  21. package/.aether/agents-claude/aether-surveyor-pathogens.md +289 -0
  22. package/.aether/agents-claude/aether-surveyor-provisions.md +360 -0
  23. package/.aether/agents-claude/aether-tracker.md +270 -0
  24. package/.aether/agents-claude/aether-watcher.md +280 -0
  25. package/.aether/agents-claude/aether-weaver.md +248 -0
  26. package/.aether/commands/archaeology.yaml +653 -0
  27. package/.aether/commands/build.yaml +1221 -0
  28. package/.aether/commands/chaos.yaml +653 -0
  29. package/.aether/commands/colonize.yaml +438 -0
  30. package/.aether/commands/continue.yaml +1484 -0
  31. package/.aether/commands/council.yaml +304 -0
  32. package/.aether/commands/data-clean.yaml +80 -0
  33. package/.aether/commands/dream.yaml +275 -0
  34. package/.aether/commands/entomb.yaml +863 -0
  35. package/.aether/commands/export-signals.yaml +64 -0
  36. package/.aether/commands/feedback.yaml +158 -0
  37. package/.aether/commands/flag.yaml +160 -0
  38. package/.aether/commands/flags.yaml +177 -0
  39. package/.aether/commands/focus.yaml +112 -0
  40. package/.aether/commands/help.yaml +167 -0
  41. package/.aether/commands/history.yaml +137 -0
  42. package/.aether/commands/import-signals.yaml +79 -0
  43. package/.aether/commands/init.yaml +469 -0
  44. package/.aether/commands/insert-phase.yaml +98 -0
  45. package/.aether/commands/interpret.yaml +285 -0
  46. package/.aether/commands/lay-eggs.yaml +224 -0
  47. package/.aether/commands/maturity.yaml +122 -0
  48. package/.aether/commands/memory-details.yaml +74 -0
  49. package/.aether/commands/migrate-state.yaml +174 -0
  50. package/.aether/commands/oracle.yaml +1224 -0
  51. package/.aether/commands/organize.yaml +446 -0
  52. package/.aether/commands/patrol.yaml +621 -0
  53. package/.aether/commands/pause-colony.yaml +424 -0
  54. package/.aether/commands/phase.yaml +124 -0
  55. package/.aether/commands/pheromones.yaml +153 -0
  56. package/.aether/commands/plan.yaml +1313 -0
  57. package/.aether/commands/preferences.yaml +63 -0
  58. package/.aether/commands/redirect.yaml +123 -0
  59. package/.aether/commands/resume-colony.yaml +373 -0
  60. package/.aether/commands/resume.yaml +398 -0
  61. package/.aether/commands/run.yaml +193 -0
  62. package/.aether/commands/seal.yaml +1205 -0
  63. package/.aether/commands/skill-create.yaml +337 -0
  64. package/.aether/commands/status.yaml +364 -0
  65. package/.aether/commands/swarm.yaml +352 -0
  66. package/.aether/commands/tunnels.yaml +814 -0
  67. package/.aether/commands/update.yaml +131 -0
  68. package/.aether/commands/verify-castes.yaml +159 -0
  69. package/.aether/commands/watch.yaml +454 -0
  70. package/.aether/docs/INCIDENT_TEMPLATE.md +32 -0
  71. package/.aether/docs/QUEEN-SYSTEM.md +211 -0
  72. package/.aether/docs/README.md +98 -0
  73. package/.aether/docs/caste-system.md +48 -0
  74. package/.aether/docs/command-playbooks/README.md +23 -0
  75. package/.aether/docs/command-playbooks/build-complete.md +349 -0
  76. package/.aether/docs/command-playbooks/build-context.md +282 -0
  77. package/.aether/docs/command-playbooks/build-full.md +1682 -0
  78. package/.aether/docs/command-playbooks/build-prep.md +283 -0
  79. package/.aether/docs/command-playbooks/build-verify.md +405 -0
  80. package/.aether/docs/command-playbooks/build-wave.md +749 -0
  81. package/.aether/docs/command-playbooks/continue-advance.md +524 -0
  82. package/.aether/docs/command-playbooks/continue-finalize.md +447 -0
  83. package/.aether/docs/command-playbooks/continue-full.md +1724 -0
  84. package/.aether/docs/command-playbooks/continue-gates.md +686 -0
  85. package/.aether/docs/command-playbooks/continue-verify.md +406 -0
  86. package/.aether/docs/context-continuity.md +84 -0
  87. package/{runtime → .aether/docs/disciplines}/DISCIPLINES.md +13 -11
  88. package/.aether/docs/error-codes.md +268 -0
  89. package/.aether/docs/known-issues.md +94 -0
  90. package/{runtime → .aether}/docs/pheromones.md +86 -6
  91. package/.aether/docs/plans/pheromone-display-plan.md +257 -0
  92. package/.aether/docs/queen-commands.md +98 -0
  93. package/.aether/docs/source-of-truth-map.md +132 -0
  94. package/.aether/docs/xml-utilities.md +47 -0
  95. package/{runtime → .aether}/exchange/pheromone-xml.sh +2 -1
  96. package/{runtime → .aether}/exchange/registry-xml.sh +7 -3
  97. package/{runtime → .aether}/exchange/wisdom-xml.sh +11 -4
  98. package/.aether/rules/aether-colony.md +144 -0
  99. package/.aether/schemas/example-prompt-builder.xml +234 -0
  100. package/.aether/scripts/incident-test-add.sh +47 -0
  101. package/.aether/scripts/weekly-audit.sh +79 -0
  102. package/.aether/skills/.index.json +649 -0
  103. package/.aether/skills/colony/.manifest.json +16 -0
  104. package/.aether/skills/colony/build-discipline/SKILL.md +78 -0
  105. package/.aether/skills/colony/colony-interaction/SKILL.md +56 -0
  106. package/.aether/skills/colony/colony-lifecycle/SKILL.md +77 -0
  107. package/.aether/skills/colony/colony-visuals/SKILL.md +112 -0
  108. package/.aether/skills/colony/context-management/SKILL.md +80 -0
  109. package/.aether/skills/colony/error-presentation/SKILL.md +99 -0
  110. package/.aether/skills/colony/pheromone-protocol/SKILL.md +79 -0
  111. package/.aether/skills/colony/pheromone-visibility/SKILL.md +81 -0
  112. package/.aether/skills/colony/state-safety/SKILL.md +84 -0
  113. package/.aether/skills/colony/worker-priming/SKILL.md +82 -0
  114. package/.aether/skills/domain/.manifest.json +24 -0
  115. package/.aether/skills/domain/README.md +33 -0
  116. package/.aether/skills/domain/django/SKILL.md +49 -0
  117. package/.aether/skills/domain/docker/SKILL.md +52 -0
  118. package/.aether/skills/domain/golang/SKILL.md +52 -0
  119. package/.aether/skills/domain/graphql/SKILL.md +51 -0
  120. package/.aether/skills/domain/html-css/SKILL.md +48 -0
  121. package/.aether/skills/domain/nextjs/SKILL.md +45 -0
  122. package/.aether/skills/domain/nodejs/SKILL.md +53 -0
  123. package/.aether/skills/domain/postgresql/SKILL.md +53 -0
  124. package/.aether/skills/domain/prisma/SKILL.md +59 -0
  125. package/.aether/skills/domain/python/SKILL.md +50 -0
  126. package/.aether/skills/domain/rails/SKILL.md +52 -0
  127. package/.aether/skills/domain/react/SKILL.md +45 -0
  128. package/.aether/skills/domain/rest-api/SKILL.md +58 -0
  129. package/.aether/skills/domain/svelte/SKILL.md +47 -0
  130. package/.aether/skills/domain/tailwind/SKILL.md +45 -0
  131. package/.aether/skills/domain/testing/SKILL.md +53 -0
  132. package/.aether/skills/domain/typescript/SKILL.md +58 -0
  133. package/.aether/skills/domain/vue/SKILL.md +49 -0
  134. package/.aether/templates/QUEEN.md.template +61 -0
  135. package/.aether/templates/colony-state-reset.jq.template +23 -0
  136. package/.aether/templates/colony-state.template.json +39 -0
  137. package/.aether/templates/constraints.template.json +9 -0
  138. package/.aether/templates/crowned-anthill.template.md +36 -0
  139. package/.aether/templates/handoff-build-error.template.md +30 -0
  140. package/.aether/templates/handoff-build-success.template.md +39 -0
  141. package/.aether/templates/handoff.template.md +40 -0
  142. package/.aether/templates/learning-observations.template.json +6 -0
  143. package/.aether/templates/midden.template.json +13 -0
  144. package/.aether/templates/pheromones.template.json +6 -0
  145. package/.aether/templates/session.template.json +9 -0
  146. package/{runtime → .aether}/utils/atomic-write.sh +68 -22
  147. package/{runtime → .aether}/utils/chamber-compare.sh +23 -10
  148. package/.aether/utils/chamber-utils.sh +440 -0
  149. package/.aether/utils/emoji-audit.sh +166 -0
  150. package/{runtime → .aether}/utils/error-handler.sh +34 -8
  151. package/.aether/utils/file-lock.sh +313 -0
  152. package/.aether/utils/flag.sh +267 -0
  153. package/.aether/utils/hive.sh +572 -0
  154. package/.aether/utils/learning.sh +1928 -0
  155. package/.aether/utils/midden.sh +342 -0
  156. package/.aether/utils/oracle/oracle.md +168 -0
  157. package/.aether/utils/oracle/oracle.sh +1023 -0
  158. package/.aether/utils/pheromone.sh +2029 -0
  159. package/.aether/utils/queen.sh +1698 -0
  160. package/.aether/utils/scan.sh +860 -0
  161. package/.aether/utils/semantic-cli.sh +415 -0
  162. package/.aether/utils/session.sh +552 -0
  163. package/.aether/utils/skills.sh +509 -0
  164. package/.aether/utils/spawn-tree.sh +260 -0
  165. package/.aether/utils/spawn.sh +260 -0
  166. package/.aether/utils/state-api.sh +199 -0
  167. package/{runtime → .aether}/utils/state-loader.sh +8 -6
  168. package/.aether/utils/suggest.sh +611 -0
  169. package/{runtime → .aether}/utils/swarm-display.sh +10 -1
  170. package/.aether/utils/swarm.sh +1004 -0
  171. package/{runtime → .aether}/utils/watch-spawn-tree.sh +11 -2
  172. package/{runtime → .aether}/utils/xml-compose.sh +9 -3
  173. package/.aether/utils/xml-convert.sh +277 -0
  174. package/{runtime → .aether}/utils/xml-core.sh +5 -9
  175. package/.aether/utils/xml-query.sh +201 -0
  176. package/.aether/utils/xml-utils.sh +110 -0
  177. package/{runtime → .aether}/workers.md +97 -81
  178. package/.claude/agents/ant/aether-ambassador.md +265 -0
  179. package/.claude/agents/ant/aether-archaeologist.md +327 -0
  180. package/.claude/agents/ant/aether-architect.md +236 -0
  181. package/.claude/agents/ant/aether-auditor.md +271 -0
  182. package/.claude/agents/ant/aether-builder.md +224 -0
  183. package/.claude/agents/ant/aether-chaos.md +269 -0
  184. package/.claude/agents/ant/aether-chronicler.md +305 -0
  185. package/.claude/agents/ant/aether-gatekeeper.md +330 -0
  186. package/.claude/agents/ant/aether-includer.md +374 -0
  187. package/.claude/agents/ant/aether-keeper.md +272 -0
  188. package/.claude/agents/ant/aether-measurer.md +322 -0
  189. package/.claude/agents/ant/aether-oracle.md +237 -0
  190. package/.claude/agents/ant/aether-probe.md +211 -0
  191. package/.claude/agents/ant/aether-queen.md +330 -0
  192. package/.claude/agents/ant/aether-route-setter.md +178 -0
  193. package/.claude/agents/ant/aether-sage.md +418 -0
  194. package/.claude/agents/ant/aether-scout.md +179 -0
  195. package/.claude/agents/ant/aether-surveyor-disciplines.md +417 -0
  196. package/.claude/agents/ant/aether-surveyor-nest.md +355 -0
  197. package/.claude/agents/ant/aether-surveyor-pathogens.md +289 -0
  198. package/.claude/agents/ant/aether-surveyor-provisions.md +360 -0
  199. package/.claude/agents/ant/aether-tracker.md +270 -0
  200. package/.claude/agents/ant/aether-watcher.md +280 -0
  201. package/.claude/agents/ant/aether-weaver.md +248 -0
  202. package/.claude/commands/ant/archaeology.md +16 -14
  203. package/.claude/commands/ant/build.md +43 -1028
  204. package/.claude/commands/ant/chaos.md +19 -23
  205. package/.claude/commands/ant/colonize.md +52 -31
  206. package/.claude/commands/ant/continue.md +40 -1016
  207. package/.claude/commands/ant/council.md +21 -18
  208. package/.claude/commands/ant/data-clean.md +81 -0
  209. package/.claude/commands/ant/dream.md +27 -15
  210. package/.claude/commands/ant/entomb.md +317 -225
  211. package/.claude/commands/ant/export-signals.md +57 -0
  212. package/.claude/commands/ant/feedback.md +48 -26
  213. package/.claude/commands/ant/flag.md +30 -10
  214. package/.claude/commands/ant/flags.md +34 -12
  215. package/.claude/commands/ant/focus.md +45 -19
  216. package/.claude/commands/ant/help.md +50 -8
  217. package/.claude/commands/ant/history.md +13 -0
  218. package/.claude/commands/ant/import-signals.md +71 -0
  219. package/.claude/commands/ant/init.md +345 -194
  220. package/.claude/commands/ant/insert-phase.md +101 -0
  221. package/.claude/commands/ant/interpret.md +26 -4
  222. package/.claude/commands/ant/lay-eggs.md +184 -127
  223. package/.claude/commands/ant/maturity.md +32 -11
  224. package/.claude/commands/ant/memory-details.md +77 -0
  225. package/.claude/commands/ant/migrate-state.md +20 -2
  226. package/.claude/commands/ant/oracle.md +337 -74
  227. package/.claude/commands/ant/organize.md +39 -25
  228. package/.claude/commands/ant/patrol.md +620 -0
  229. package/.claude/commands/ant/pause-colony.md +23 -27
  230. package/.claude/commands/ant/phase.md +40 -42
  231. package/.claude/commands/ant/pheromones.md +156 -0
  232. package/.claude/commands/ant/plan.md +185 -51
  233. package/.claude/commands/ant/preferences.md +65 -0
  234. package/.claude/commands/ant/redirect.md +45 -30
  235. package/.claude/commands/ant/resume-colony.md +51 -27
  236. package/.claude/commands/ant/resume.md +314 -94
  237. package/.claude/commands/ant/run.md +195 -0
  238. package/.claude/commands/ant/seal.md +650 -221
  239. package/.claude/commands/ant/skill-create.md +286 -0
  240. package/.claude/commands/ant/status.md +196 -31
  241. package/.claude/commands/ant/swarm.md +16 -46
  242. package/.claude/commands/ant/tunnels.md +280 -105
  243. package/.claude/commands/ant/update.md +73 -89
  244. package/.claude/commands/ant/verify-castes.md +100 -42
  245. package/.claude/commands/ant/watch.md +14 -12
  246. package/.opencode/agents/aether-ambassador.md +63 -20
  247. package/.opencode/agents/aether-archaeologist.md +29 -12
  248. package/.opencode/agents/aether-architect.md +103 -36
  249. package/.opencode/agents/aether-auditor.md +51 -18
  250. package/.opencode/agents/aether-builder.md +70 -20
  251. package/.opencode/agents/aether-chaos.md +29 -12
  252. package/.opencode/agents/aether-chronicler.md +60 -18
  253. package/.opencode/agents/aether-gatekeeper.md +27 -18
  254. package/.opencode/agents/aether-includer.md +27 -18
  255. package/.opencode/agents/aether-keeper.md +89 -18
  256. package/.opencode/agents/aether-measurer.md +27 -18
  257. package/.opencode/agents/aether-oracle.md +137 -0
  258. package/.opencode/agents/aether-probe.md +60 -18
  259. package/.opencode/agents/aether-queen.md +172 -24
  260. package/.opencode/agents/aether-route-setter.md +57 -12
  261. package/.opencode/agents/aether-sage.md +26 -18
  262. package/.opencode/agents/aether-scout.md +28 -20
  263. package/.opencode/agents/aether-surveyor-disciplines.md +59 -2
  264. package/.opencode/agents/aether-surveyor-nest.md +59 -2
  265. package/.opencode/agents/aether-surveyor-pathogens.md +57 -2
  266. package/.opencode/agents/aether-surveyor-provisions.md +59 -2
  267. package/.opencode/agents/aether-tracker.md +64 -18
  268. package/.opencode/agents/aether-watcher.md +66 -19
  269. package/.opencode/agents/aether-weaver.md +61 -18
  270. package/.opencode/commands/ant/archaeology.md +7 -14
  271. package/.opencode/commands/ant/build.md +437 -257
  272. package/.opencode/commands/ant/chaos.md +7 -24
  273. package/.opencode/commands/ant/colonize.md +8 -17
  274. package/.opencode/commands/ant/continue.md +661 -142
  275. package/.opencode/commands/ant/council.md +11 -22
  276. package/.opencode/commands/ant/data-clean.md +77 -0
  277. package/.opencode/commands/ant/dream.md +15 -17
  278. package/.opencode/commands/ant/entomb.md +133 -62
  279. package/.opencode/commands/ant/export-signals.md +54 -0
  280. package/.opencode/commands/ant/feedback.md +24 -5
  281. package/.opencode/commands/ant/flag.md +16 -4
  282. package/.opencode/commands/ant/flags.md +24 -10
  283. package/.opencode/commands/ant/focus.md +22 -5
  284. package/.opencode/commands/ant/help.md +41 -8
  285. package/.opencode/commands/ant/history.md +9 -0
  286. package/.opencode/commands/ant/import-signals.md +68 -0
  287. package/.opencode/commands/ant/init.md +374 -167
  288. package/.opencode/commands/ant/insert-phase.md +107 -0
  289. package/.opencode/commands/ant/interpret.md +16 -0
  290. package/.opencode/commands/ant/lay-eggs.md +184 -112
  291. package/.opencode/commands/ant/maturity.md +18 -2
  292. package/.opencode/commands/ant/memory-details.md +83 -0
  293. package/.opencode/commands/ant/migrate-state.md +12 -0
  294. package/.opencode/commands/ant/oracle.md +322 -67
  295. package/.opencode/commands/ant/organize.md +18 -16
  296. package/.opencode/commands/ant/patrol.md +626 -0
  297. package/.opencode/commands/ant/pause-colony.md +12 -29
  298. package/.opencode/commands/ant/phase.md +30 -40
  299. package/.opencode/commands/ant/pheromones.md +162 -0
  300. package/.opencode/commands/ant/plan.md +184 -56
  301. package/.opencode/commands/ant/preferences.md +71 -0
  302. package/.opencode/commands/ant/redirect.md +22 -5
  303. package/.opencode/commands/ant/resume-colony.md +38 -27
  304. package/.opencode/commands/ant/resume.md +385 -0
  305. package/.opencode/commands/ant/run.md +201 -0
  306. package/.opencode/commands/ant/seal.md +259 -45
  307. package/.opencode/commands/ant/skill-create.md +63 -0
  308. package/.opencode/commands/ant/status.md +135 -31
  309. package/.opencode/commands/ant/swarm.md +3 -345
  310. package/.opencode/commands/ant/tunnels.md +152 -9
  311. package/.opencode/commands/ant/update.md +70 -91
  312. package/.opencode/commands/ant/verify-castes.md +96 -42
  313. package/.opencode/commands/ant/watch.md +7 -0
  314. package/CHANGELOG.md +356 -0
  315. package/README.md +203 -573
  316. package/bin/cli.js +455 -527
  317. package/bin/generate-commands.js +186 -0
  318. package/bin/generate-commands.sh +127 -88
  319. package/bin/lib/init.js +13 -3
  320. package/bin/lib/spawn-logger.js +0 -15
  321. package/bin/lib/update-transaction.js +392 -140
  322. package/bin/npx-install.js +178 -0
  323. package/bin/sync-to-runtime.sh +5 -137
  324. package/bin/validate-package.sh +166 -0
  325. package/package.json +14 -7
  326. package/.opencode/agents/aether-guardian.md +0 -107
  327. package/.opencode/agents/workers.md +0 -1034
  328. package/bin/lib/model-profiles.js +0 -445
  329. package/bin/lib/model-verify.js +0 -288
  330. package/bin/lib/proxy-health.js +0 -253
  331. package/bin/lib/telemetry.js +0 -441
  332. package/runtime/CONTEXT.md +0 -160
  333. package/runtime/QUEEN_ANT_ARCHITECTURE.md +0 -402
  334. package/runtime/aether-utils.sh +0 -3879
  335. package/runtime/data/signatures.json +0 -41
  336. package/runtime/docs/AETHER-2.0-IMPLEMENTATION-PLAN.md +0 -1343
  337. package/runtime/docs/AETHER-PHEROMONE-SYSTEM-MASTER-SPEC.md +0 -2642
  338. package/runtime/docs/PHEROMONE-INJECTION.md +0 -240
  339. package/runtime/docs/PHEROMONE-INTEGRATION.md +0 -192
  340. package/runtime/docs/PHEROMONE-SYSTEM-DESIGN.md +0 -426
  341. package/runtime/docs/README.md +0 -94
  342. package/runtime/docs/VISUAL-OUTPUT-SPEC.md +0 -219
  343. package/runtime/docs/biological-reference.md +0 -272
  344. package/runtime/docs/codebase-review.md +0 -399
  345. package/runtime/docs/command-sync.md +0 -164
  346. package/runtime/docs/constraints.md +0 -116
  347. package/runtime/docs/implementation-learnings.md +0 -89
  348. package/runtime/docs/known-issues.md +0 -217
  349. package/runtime/docs/namespace.md +0 -148
  350. package/runtime/docs/pathogen-schema-example.json +0 -36
  351. package/runtime/docs/pathogen-schema.md +0 -111
  352. package/runtime/docs/planning-discipline.md +0 -159
  353. package/runtime/docs/progressive-disclosure.md +0 -184
  354. package/runtime/lib/queen-utils.sh +0 -729
  355. package/runtime/model-profiles.yaml +0 -100
  356. package/runtime/planning.md +0 -159
  357. package/runtime/recover.sh +0 -136
  358. package/runtime/templates/QUEEN.md.template +0 -79
  359. package/runtime/utils/chamber-utils.sh +0 -285
  360. package/runtime/utils/file-lock.sh +0 -122
  361. package/runtime/utils/spawn-tree.sh +0 -428
  362. package/runtime/utils/spawn-with-model.sh +0 -56
  363. package/runtime/utils/xml-utils.sh +0 -2196
  364. package/runtime/workers-new-castes.md +0 -516
  365. /package/{runtime → .aether/docs/disciplines}/coding-standards.md +0 -0
  366. /package/{runtime → .aether/docs/disciplines}/debugging.md +0 -0
  367. /package/{runtime → .aether/docs/disciplines}/learning.md +0 -0
  368. /package/{runtime → .aether/docs/disciplines}/tdd.md +0 -0
  369. /package/{runtime → .aether/docs/disciplines}/verification-loop.md +0 -0
  370. /package/{runtime → .aether/docs/disciplines}/verification.md +0 -0
  371. /package/{runtime → .aether}/schemas/aether-types.xsd +0 -0
  372. /package/{runtime → .aether}/schemas/colony-registry.xsd +0 -0
  373. /package/{runtime → .aether}/schemas/pheromone.xsd +0 -0
  374. /package/{runtime → .aether}/schemas/prompt.xsd +0 -0
  375. /package/{runtime → .aether}/schemas/queen-wisdom.xsd +0 -0
  376. /package/{runtime → .aether}/schemas/worker-priming.xsd +0 -0
  377. /package/{runtime → .aether}/utils/colorize-log.sh +0 -0
  378. /package/{runtime → .aether}/utils/queen-to-md.xsl +0 -0
@@ -0,0 +1,98 @@
1
+ # Aether Documentation
2
+
3
+ This directory contains actively maintained documentation for the Aether colony system.
4
+
5
+ Runtime/behavior authority remains in:
6
+ - `.aether/aether-utils.sh` (execution)
7
+ - `.claude/commands/ant/*.md` (command flow)
8
+
9
+ Docs in this directory are explanatory references and should not override runtime behavior.
10
+
11
+ Distribution note:
12
+ - `aether update` does not sync repo-local session files like `.aether/CONTEXT.md` and `.aether/HANDOFF.md`.
13
+
14
+ ---
15
+
16
+ ## User-Facing Docs
17
+
18
+ Distributed to target repos via `aether update` (update allowlist):
19
+
20
+ | File | Purpose |
21
+ |------|---------|
22
+ | `pheromones.md` | Pheromone system guide (FOCUS/REDIRECT/FEEDBACK signals) |
23
+ | `source-of-truth-map.md` | Authority map and docs/runtime drift tracking |
24
+ | `context-continuity.md` | Context retention architecture (capsules, compact priming, rolling summary) |
25
+
26
+ ---
27
+
28
+ ## Colony System Docs
29
+
30
+ Packaged in npm, available to all Aether installations:
31
+
32
+ | File | Purpose |
33
+ |------|---------|
34
+ | `caste-system.md` | Worker caste definitions and emoji assignments |
35
+ | `QUEEN-SYSTEM.md` | Queen wisdom promotion system |
36
+ | `queen-commands.md` | Queen command documentation |
37
+ | `xml-utilities.md` | XML utility/runtime integration reference |
38
+ | `.aether/QUEEN.md` | Generated Queen wisdom file (repo-specific, auto-updated) |
39
+ | `error-codes.md` | Error code reference (E_* constants) |
40
+
41
+ ---
42
+
43
+ ## Development Docs
44
+
45
+ Packaged in npm, documents active issues:
46
+
47
+ | File | Purpose |
48
+ |------|---------|
49
+ | `known-issues.md` | Active known issues and workarounds |
50
+
51
+ ---
52
+
53
+ ## Worker Disciplines
54
+
55
+ Training protocols that govern worker behavior (in `disciplines/` subdirectory):
56
+
57
+ | File | Purpose |
58
+ |------|---------|
59
+ | `disciplines/DISCIPLINES.md` | Discipline index and overview |
60
+ | `disciplines/verification.md` | No completion claims without evidence |
61
+ | `disciplines/verification-loop.md` | 6-phase quality gate before advancement |
62
+ | `disciplines/debugging.md` | Systematic root cause investigation |
63
+ | `disciplines/tdd.md` | Test-first development |
64
+ | `disciplines/learning.md` | Pattern detection with validation |
65
+ | `disciplines/coding-standards.md` | Universal code quality rules |
66
+
67
+ ---
68
+
69
+ ## Command Playbooks
70
+
71
+ Split playbooks used by orchestrator commands:
72
+
73
+ | File | Purpose |
74
+ |------|---------|
75
+ | `command-playbooks/build-prep.md` | Build preparation and validation |
76
+ | `command-playbooks/build-context.md` | Context and survey loading |
77
+ | `command-playbooks/build-wave.md` | Worker wave orchestration |
78
+ | `command-playbooks/build-verify.md` | Watcher/measurer/chaos verification |
79
+ | `command-playbooks/build-complete.md` | Build synthesis and session updates |
80
+ | `command-playbooks/continue-verify.md` | Continue verification setup |
81
+ | `command-playbooks/continue-gates.md` | Continue quality/security gates |
82
+ | `command-playbooks/continue-advance.md` | State advancement and pheromone/learning steps |
83
+ | `command-playbooks/continue-finalize.md` | Handoff/changelog/session finalization |
84
+
85
+ ---
86
+
87
+ ## Archived Docs
88
+
89
+ Historical documentation moved to `archive/` subdirectory:
90
+
91
+ - `QUEEN_ANT_ARCHITECTURE.md` - superseded by agent files
92
+ - `implementation-learnings.md` - historical findings
93
+ - `constraints.md` - content now in agent definitions
94
+ - `pathogen-schema.md` - specialized use case
95
+ - `pathogen-schema-example.json` - example for schema
96
+ - `progressive-disclosure.md` - design philosophy
97
+
98
+ Archived docs remain available for reference but are not actively maintained.
@@ -0,0 +1,48 @@
1
+ # Caste System Reference
2
+
3
+ This is the **canonical source** for Aether caste emoji definitions.
4
+
5
+ - All commands and documentation should reference this file
6
+ - The `get_caste_emoji()` function in `aether-utils.sh` implements these mappings
7
+ - To add a new caste: update this file AND the function
8
+
9
+ ## Display Format
10
+
11
+ Workers are displayed as: `{caste_emoji} {worker_name}`
12
+ Example: `🔨🐜 Hammer-42` (not "Hammer-42 (Builder)")
13
+
14
+ ## Caste Table
15
+
16
+ | Caste | Emoji | Role | Name Patterns |
17
+ |-------|-------|------|---------------|
18
+ | queen | 👑🐜 | Colony coordinator | Queen, QUEEN, queen |
19
+ | builder | 🔨🐜 | Implementation work | Builder, Bolt, Hammer, Forge, Mason, Brick, Anvil, Weld |
20
+ | watcher | 👁️🐜 | Monitoring, observation | Watcher, Vigil, Sentinel, Guard, Keen, Sharp, Hawk, Alert |
21
+ | scout | 🔍🐜 | Research, discovery | Scout, Swift, Dash, Ranger, Track, Seek, Path, Roam, Quest |
22
+ | colonizer | 🗺️🐜 | New project setup | Colonizer, Pioneer, Map, Chart, Venture, Explore, Compass, Atlas, Trek |
23
+ | surveyor | 📊🐜 | Measurement, assessment | Surveyor, Chart, Plot, Survey, Measure, Assess, Gauge, Sound, Fathom |
24
+ | architect | 🏛️🐜 | Planning, design (merged into Keeper — no dedicated agent file) | Architect, Blueprint, Draft, Design, Plan, Schema, Frame, Sketch, Model |
25
+ | chaos | 🎲🐜 | Edge case testing | Chaos, Probe, Stress, Shake, Twist, Snap, Breach, Surge, Jolt |
26
+ | archaeologist | 🏺🐜 | Git history excavation | Archaeologist, Relic, Fossil, Dig, Shard, Epoch, Strata, Lore, Glyph |
27
+ | oracle | 🔮🐜 | Deep research (RALF loop) | Oracle, Sage, Seer, Vision, Augur, Mystic, Sibyl, Delph, Pythia |
28
+ | route_setter | 📋🐜 | Direction setting | Route, route |
29
+ | ambassador | 🔌🐜 | Third-party API integration | Ambassador, Bridge, Connect, Link, Diplomat, Network, Protocol |
30
+ | auditor | 👥🐜 | Code review, quality audits | Auditor, Review, Inspect, Examine, Scrutin, Critical, Verify |
31
+ | chronicler | 📝🐜 | Documentation generation | Chronicler, Document, Record, Write, Chronicle, Archive, Scribe |
32
+ | gatekeeper | 📦🐜 | Dependency management | Gatekeeper, Guard, Protect, Secure, Shield, Depend, Supply |
33
+ | guardian | 🛡️🐜 | Security audits (merged into Auditor — no dedicated agent file) | Guardian, Defend, Patrol, Secure, Vigil, Watch, Safety, Security |
34
+ | includer | ♿🐜 | Accessibility audits | Includer, Access, Inclusive, A11y, WCAG, Barrier, Universal |
35
+ | keeper | 📚🐜 | Knowledge curation | Keeper, Archive, Store, Curate, Preserve, Knowledge, Wisdom, Pattern |
36
+ | measurer | ⚡🐜 | Performance profiling | Measurer, Metric, Benchmark, Profile, Optimize, Performance, Speed |
37
+ | probe | 🧪🐜 | Test generation | Probe, Test, Excavat, Uncover, Edge, Case, Mutant |
38
+ | tracker | 🐛🐜 | Bug investigation | Tracker, Debug, Trace, Follow, Bug, Hunt, Root |
39
+ | weaver | 🔄🐜 | Code refactoring | Weaver, Refactor, Restruct, Transform, Clean, Pattern, Weave |
40
+ | dreamer | 💭🐜 | Creative ideation | Dreamer, Muse, Imagine, Wonder, Ponder, Reverie |
41
+
42
+ ## Notes
43
+
44
+ - The global `get_caste_emoji()` function matches by **name pattern** (e.g., a worker named "Hammer-42" matches the builder caste)
45
+ - Castes without dedicated patterns fall back to the generic ant emoji `🐜`
46
+ - The `colonizer` canonical emoji is `🗺️🐜` — older references using `🌱🐜` should be updated
47
+ - The `route_setter` canonical emoji is `📋🐜` — older references using `🧭🐜` should be updated
48
+ - The `architect` and `guardian` castes are **merged**: their capabilities were absorbed by Keeper and Auditor respectively (Phase 25). The caste emoji rows remain because workers named after those patterns (e.g., "Blueprint-3", "Patrol-7") still resolve to the correct emojis via `get_caste_emoji()`. There are no longer dedicated agent files for these castes.
@@ -0,0 +1,23 @@
1
+ # Command Playbooks
2
+
3
+ This directory contains split execution playbooks for high-complexity commands.
4
+
5
+ ## Build
6
+
7
+ - `build-prep.md` - Version/state checks, argument validation, checkpoint setup
8
+ - `build-context.md` - Colony context loading, survey, archaeology, suggestions
9
+ - `build-wave.md` - Swarm initialization, wave execution, result processing
10
+ - `build-verify.md` - Watcher/measurer/chaos verification and flag creation
11
+ - `build-complete.md` - Synthesis, handoff/context update, display, session update
12
+
13
+ ## Continue
14
+
15
+ - `continue-verify.md` - State loading and verification-loop setup
16
+ - `continue-gates.md` - Enforcement, anti-pattern, security, quality, runtime, flags gates
17
+ - `continue-advance.md` - State advancement, pheromone updates, learning proposal checks
18
+ - `continue-finalize.md` - Handoff/changelog/commit, completion display, session update
19
+
20
+ ## Canonical Sources
21
+
22
+ - `build-full.md` - Full original build command prior to split
23
+ - `continue-full.md` - Full original continue command prior to split
@@ -0,0 +1,349 @@
1
+ ### Step 5.9: Synthesize Results
2
+
3
+ **This step runs after all worker tasks have completed (Builders, Watcher, Chaos).**
4
+
5
+ Collect all worker outputs and create phase summary:
6
+
7
+ ```json
8
+ {
9
+ "status": "completed" | "failed" | "blocked",
10
+ "summary": "...",
11
+ "tasks_completed": [...],
12
+ "tasks_failed": [...],
13
+ "files_created": [...],
14
+ "files_modified": [...],
15
+ "spawn_metrics": {
16
+ "spawn_count": {total workers spawned, including archaeologist if Step 4.5 fired, measurer if Step 5.5.1 fired, ambassador if Step 5.1.1 fired},
17
+ "builder_count": {N},
18
+ "watcher_count": 1,
19
+ "chaos_count": 1,
20
+ "archaeologist_count": {0 or 1, conditional on Step 4.5},
21
+ "measurer_count": {0 or 1, conditional on Step 5.5.1},
22
+ "ambassador_count": {0 or 1, conditional on Step 5.1.1},
23
+ "parallel_batches": {number of waves}
24
+ },
25
+ "spawn_tree": {
26
+ "{Archaeologist-Name}": {"caste": "archaeologist", "task": "pre-build history scan", "status": "completed"},
27
+ "{Ambassador-Name}": {"caste": "ambassador", "task": "external integration design", "status": "completed"},
28
+ "{Builder-Name}": {"caste": "builder", "task": "...", "status": "completed"},
29
+ "{Watcher-Name}": {"caste": "watcher", "task": "verify", "status": "completed"},
30
+ "{Measurer-Name}": {"caste": "measurer", "task": "performance baseline", "status": "completed"},
31
+ "{Chaos-Name}": {"caste": "chaos", "task": "resilience testing", "status": "completed"}
32
+ },
33
+ "verification": {from Watcher output},
34
+ "performance": {from Measurer output, or null if Step 5.5.1 was skipped},
35
+ "resilience": {from Chaos Ant output},
36
+ "archaeology": {from Archaeologist output, or null if Step 4.5 was skipped},
37
+ "quality_notes": "..."
38
+ }
39
+ ```
40
+
41
+ **Graveyard Recording:**
42
+ For each worker that returned `status: "failed"`:
43
+ For each file in that worker's `files_modified` or `files_created`:
44
+ Run using the Bash tool with description "Recording failure grave...": `bash .aether/aether-utils.sh grave-add "{file}" "{ant_name}" "{task_id}" {phase} "{first blocker or summary}" && bash .aether/aether-utils.sh activity-log "GRAVE" "Queen" "Grave marker placed at {file} — {ant_name} failed: {summary}"`
45
+ Then display a user-visible confirmation line:
46
+ `⚰️ Grave recorded: {file} — {ant_name} failed ({summary})`
47
+
48
+ **Success capture: pattern synthesis (MEM-01):**
49
+
50
+ If `learning.patterns_observed` array in the synthesis JSON is non-empty, capture up to 2 patterns as success events:
51
+
52
+ Initialize a counter: `success_capture_count=0`
53
+
54
+ For each pattern in `learning.patterns_observed`:
55
+ - If `success_capture_count >= 2`, stop (cap reached)
56
+ - Run using the Bash tool with description "Capturing synthesis pattern success...":
57
+ ```bash
58
+ bash .aether/aether-utils.sh memory-capture \
59
+ "success" \
60
+ "${pattern.trigger}: ${pattern.action} (evidence: ${pattern.evidence})" \
61
+ "pattern" \
62
+ "worker:builder" 2>/dev/null || true
63
+ ```
64
+ - Increment `success_capture_count`
65
+
66
+ The cap of 2 prevents observation count inflation when builds produce many patterns. Each captured pattern enters learning-observations.json with a content hash for deduplication across builds.
67
+
68
+ ### Step 5.9.1: Persist Builder Claims (MANDATORY)
69
+
70
+ Write builder file claims to `.aether/data/last-build-claims.json` for verification during /ant:continue.
71
+
72
+ Collect from each builder worker's output:
73
+ - files_created: [...all files_created from all builders...]
74
+ - files_modified: [...all files_modified from all builders...]
75
+
76
+ Run using the Bash tool with description "Persisting builder claims...":
77
+ ```bash
78
+ echo '{"files_created":[...], "files_modified":[...], "build_phase": N, "timestamp": "ISO8601"}' > .aether/data/last-build-claims.json
79
+ ```
80
+
81
+ Replace the `[...]` placeholders with the actual arrays collected from builder outputs, `N` with the current phase number, and `ISO8601` with the current timestamp.
82
+
83
+ This file is consumed by verify-claims during /ant:continue.
84
+
85
+ **Error Handoff Update:**
86
+ If workers failed, update handoff with error context for recovery:
87
+
88
+ Resolve the build error handoff template path:
89
+ Check ~/.aether/system/templates/handoff-build-error.template.md first,
90
+ then .aether/templates/handoff-build-error.template.md.
91
+
92
+ If no template found: output "Template missing: handoff-build-error.template.md. Run aether update to fix." and stop.
93
+
94
+ Read the template file. Fill all {{PLACEHOLDER}} values:
95
+ - {{PHASE_NUMBER}} → current phase number
96
+ - {{PHASE_NAME}} → current phase name
97
+ - {{BUILD_TIMESTAMP}} → current ISO-8601 UTC timestamp
98
+ - {{FAILED_WORKERS}} → formatted list of failed workers (one "- {ant_name}: {failure_summary}" per line)
99
+ - {{GRAVE_MARKERS}} → formatted list of grave markers (one "- {file}: {caution_level} caution" per line)
100
+
101
+ Remove the HTML comment lines at the top of the template.
102
+ Write the result to .aether/HANDOFF.md using the Write tool.
103
+
104
+ Only fires when workers fail. Zero impact on successful builds.
105
+
106
+ --- SPAWN TRACKING ---
107
+
108
+ The spawn tree will be visible in `/ant:watch` because each spawn is logged.
109
+
110
+ --- OUTPUT FORMAT ---
111
+
112
+ Return JSON:
113
+ {
114
+ "status": "completed" | "failed" | "blocked",
115
+ "summary": "What the phase accomplished",
116
+ "tasks_completed": ["1.1", "1.2"],
117
+ "tasks_failed": [],
118
+ "files_created": ["path1", "path2"],
119
+ "files_modified": ["path3"],
120
+ "spawn_metrics": {
121
+ "spawn_count": 7,
122
+ "watcher_count": 1,
123
+ "chaos_count": 1,
124
+ "archaeologist_count": 1,
125
+ "measurer_count": 1,
126
+ "ambassador_count": 1,
127
+ "builder_count": 3,
128
+ "parallel_batches": 2,
129
+ "sequential_tasks": 1
130
+ },
131
+ "spawn_tree": {
132
+ "Relic-8": {"caste": "archaeologist", "task": "pre-build history scan", "status": "completed", "children": {}},
133
+ "Diplomat-7": {"caste": "ambassador", "task": "external integration design", "status": "completed", "children": {}},
134
+ "Hammer-42": {"caste": "builder", "task": "...", "status": "completed", "children": {}},
135
+ "Vigil-17": {"caste": "watcher", "task": "...", "status": "completed", "children": {}},
136
+ "Benchmark-3": {"caste": "measurer", "task": "performance baseline", "status": "completed", "children": {}},
137
+ "Entropy-9": {"caste": "chaos", "task": "resilience testing", "status": "completed", "children": {}}
138
+ },
139
+ "verification": {
140
+ "build": {"command": "npm run build", "exit_code": 0, "passed": true},
141
+ "tests": {"command": "npm test", "passed": 24, "failed": 0, "total": 24},
142
+ "success_criteria": [
143
+ {"criterion": "API endpoint exists", "evidence": "GET /api/users returns 200", "passed": true},
144
+ {"criterion": "Tests cover happy path", "evidence": "3 tests in users.test.ts", "passed": true}
145
+ ]
146
+ },
147
+ "debugging": {
148
+ "issues_encountered": 0,
149
+ "issues_resolved": 0,
150
+ "fix_attempts": 0,
151
+ "architectural_concerns": []
152
+ },
153
+ "tdd": {
154
+ "cycles_completed": 5,
155
+ "tests_added": 5,
156
+ "tests_total": 47,
157
+ "coverage_percent": 85,
158
+ "all_passing": true
159
+ },
160
+ "learning": {
161
+ "patterns_observed": [
162
+ {
163
+ "type": "success",
164
+ "trigger": "when implementing API endpoints",
165
+ "action": "use repository pattern with DI",
166
+ "evidence": "All tests passed first try"
167
+ }
168
+ ],
169
+ "instincts_applied": ["instinct_123"],
170
+ "instinct_outcomes": [
171
+ {"id": "instinct_123", "success": true}
172
+ ]
173
+ },
174
+ "quality_notes": "Any concerns or recommendations",
175
+ "ui_touched": true | false
176
+ }
177
+ ```
178
+
179
+ ### Step 6: Visual Checkpoint (if UI touched)
180
+
181
+ Parse synthesis result. If `ui_touched` is true:
182
+
183
+ ```
184
+ ━━━ 🖼️🐜 V I S U A L C H E C K P O I N T ━━━
185
+
186
+ UI changes detected. Verify appearance before continuing.
187
+
188
+ Files touched:
189
+ {list files from files_created + files_modified that match UI patterns}
190
+
191
+ Options:
192
+ 1. Approve - UI looks correct
193
+ 2. Reject - needs changes (describe issues)
194
+ 3. Skip - defer visual review
195
+ ```
196
+
197
+ Use AskUserQuestion to get approval. Record in events:
198
+ - If approved: `"<timestamp>|visual_approved|build|Phase {id} UI approved"`
199
+ - If rejected: `"<timestamp>|visual_rejected|build|Phase {id} UI rejected: {reason}"`
200
+
201
+ ### Step 6.5: Update Handoff Document
202
+
203
+ After synthesis is complete, update the handoff document with current state for session recovery:
204
+
205
+ ```bash
206
+ # Update handoff with build results
207
+ jq -n \
208
+ --arg timestamp "$(date -u +%Y-%m-%dT%H:%M:%SZ)" \
209
+ --arg goal "$(jq -r '.goal' .aether/data/COLONY_STATE.json)" \
210
+ --arg phase "$(jq -r '.current_phase' .aether/data/COLONY_STATE.json)" \
211
+ --arg phase_name "{phase_name}" \
212
+ --arg status "{synthesis.status}" \
213
+ --arg summary "{synthesis.summary}" \
214
+ --argjson tasks_completed '{synthesis.tasks_completed | length}' \
215
+ --argjson tasks_failed '{synthesis.tasks_failed | length}' \
216
+ --arg next_action "{if synthesis.status == "completed" then "/ant:continue" else "/ant:flags" end}" \
217
+ '{
218
+ "last_updated": $timestamp,
219
+ "goal": $goal,
220
+ "current_phase": $phase,
221
+ "phase_name": $phase_name,
222
+ "build_status": $status,
223
+ "summary": $summary,
224
+ "tasks_completed": $tasks_completed,
225
+ "tasks_failed": $tasks_failed,
226
+ "next_recommended_action": $next_action,
227
+ "can_resume": true,
228
+ "note": "Phase build completed. Run /ant:continue to advance if verification passed."
229
+ }' > .aether/data/last-build-result.json
230
+ ```
231
+
232
+ Resolve the build success handoff template path:
233
+ Check ~/.aether/system/templates/handoff-build-success.template.md first,
234
+ then .aether/templates/handoff-build-success.template.md.
235
+
236
+ If no template found: output "Template missing: handoff-build-success.template.md. Run aether update to fix." and stop.
237
+
238
+ Read the template file. Fill all {{PLACEHOLDER}} values:
239
+ - {{GOAL}} → colony goal (from COLONY_STATE.json)
240
+ - {{PHASE_NUMBER}} → current phase number
241
+ - {{PHASE_NAME}} → current phase name
242
+ - {{BUILD_STATUS}} → synthesis.status
243
+ - {{BUILD_TIMESTAMP}} → current ISO-8601 UTC timestamp
244
+ - {{BUILD_SUMMARY}} → synthesis summary
245
+ - {{TASKS_COMPLETED}} → count of completed tasks
246
+ - {{TASKS_FAILED}} → count of failed tasks
247
+ - {{FILES_CREATED}} → count of created files
248
+ - {{FILES_MODIFIED}} → count of modified files
249
+ - {{SESSION_NOTE}} → "Build succeeded — ready to advance." if status is completed, else "Build completed with issues — review before continuing."
250
+
251
+ Remove the HTML comment lines at the top of the template.
252
+ Write the result to .aether/HANDOFF.md using the Write tool.
253
+
254
+ This ensures the handoff always reflects the latest build state, even if the session crashes before explicit pause.
255
+
256
+ ### Step 6.5: Update Context Document
257
+
258
+ Log this build activity to `.aether/CONTEXT.md`:
259
+
260
+ Run using the Bash tool with description "Updating build context...": `bash .aether/aether-utils.sh context-update activity "build {phase_id}" "{synthesis.status}" "{files_created_count + files_modified_count}" && bash .aether/aether-utils.sh context-update build-complete "{synthesis.status}" "{synthesis.status == 'completed' ? 'success' : 'failed'}"`
261
+
262
+ Also update safe-to-clear status:
263
+ - If build completed successfully: `context-update safe-to-clear "YES" "Build complete, ready to continue"`
264
+ - If build failed: `context-update safe-to-clear "NO" "Build failed — run /ant:swarm or /ant:flags"`
265
+
266
+ ### Step 5.10: Check for Promotion Proposals
267
+
268
+ After build completion (success or failure), check if any observations have met promotion thresholds.
269
+
270
+ Run using the Bash tool with description "Checking for wisdom promotions...":
271
+ ```bash
272
+ proposals=$(bash .aether/aether-utils.sh learning-check-promotion 2>/dev/null || echo '{"proposals":[]}')
273
+ proposal_count=$(echo "$proposals" | jq '.proposals | length')
274
+ echo "{\"proposal_count\": $proposal_count}"
275
+ ```
276
+
277
+ Parse the result. If proposal_count > 0:
278
+ - Display: "📚 $proposal_count wisdom proposal(s) ready for review"
279
+ - Run: `bash .aether/aether-utils.sh learning-approve-proposals`
280
+ - This presents the one-at-a-time UI for user review
281
+
282
+ If proposal_count == 0:
283
+ - Silently continue (no output needed per user decision)
284
+
285
+ Note: This runs regardless of build success/failure. Failed builds may have recorded failure observations that are ready for promotion.
286
+
287
+ ### Step 7: Display Results
288
+
289
+ **This step runs ONLY after synthesis is complete. All values come from actual worker results.**
290
+
291
+ **Display BUILD SUMMARY (always shown, replaces compact/verbose split):**
292
+
293
+ Calculate `total_tools` by summing `tool_count` from all worker return JSONs (builders + watcher + chaos).
294
+ Calculate `elapsed` using `build_started_at_epoch` (epoch integer captured at Step 5 start by Plan 01): `$(( $(date +%s) - build_started_at_epoch ))` formatted as Xm Ys.
295
+
296
+ ```
297
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
298
+ B U I L D S U M M A R Y
299
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
300
+ Phase {id}: {name}
301
+ Pattern: {selected_pattern}
302
+
303
+ Workers: {pass_count} passed {fail_count} failed ({total} total)
304
+ Tools: {total_tools} calls across all workers
305
+ Duration: {elapsed}
306
+
307
+ {if measurer_ran:}
308
+ 📊 Measurer: {baseline_count} baselines established, {bottleneck_count} bottlenecks identified
309
+ {end if}
310
+
311
+ {if ambassador_ran:}
312
+ 🔌 Ambassador: Integration plan for {integration_plan.service_name} ready
313
+ {end if}
314
+
315
+ {if fail_count > 0:}
316
+ Failed:
317
+ {for each failed worker:}
318
+ {caste_emoji} {Ant-Name}: {task_description} ✗ ({failure_reason} after {tool_count} tools)
319
+ {end for}
320
+
321
+ Retry: /ant:swarm to auto-repair failed tasks, or /ant:flags to review blockers
322
+ {end if}
323
+ ```
324
+
325
+ **If verbose_mode is true**, additionally show the spawn tree and TDD details after the BUILD SUMMARY block (keep the existing verbose-only sections: Colony Work Tree, Tasks Completed, TDD, Patterns Learned, Debugging, Model Routing). Prepend with:
326
+ ```
327
+ ━━ Details (--verbose) ━━
328
+ ```
329
+
330
+ After displaying the BUILD SUMMARY (and optional verbose details), call the Next Up helper by running using the Bash tool with description "Displaying next steps...":
331
+ ```bash
332
+ state=$(jq -r '.state // "IDLE"' .aether/data/COLONY_STATE.json 2>/dev/null || echo "IDLE")
333
+ current_phase=$(jq -r '.current_phase // 0' .aether/data/COLONY_STATE.json 2>/dev/null || echo "0")
334
+ total_phases=$(jq -r '.plan.phases | length' .aether/data/COLONY_STATE.json 2>/dev/null || echo "0")
335
+ bash .aether/aether-utils.sh print-next-up "$state" "$current_phase" "$total_phases"
336
+ ```
337
+
338
+ **Routing Note:** The state-based Next Up block above routes based on colony state. If verification failed or blockers exist, review `/ant:flags` before continuing.
339
+
340
+ **IMPORTANT:** Build does NOT update task statuses or advance state. Run `/ant:continue` to:
341
+ - Mark tasks as completed
342
+ - Extract learnings
343
+ - Advance to next phase
344
+
345
+ ### Step 8: Update Session
346
+
347
+ Update the session tracking file to enable `/ant:resume` after context clear:
348
+
349
+ Run using the Bash tool with description "Saving build session...": `bash .aether/aether-utils.sh session-update "/ant:build {phase_id}" "/ant:continue" "Phase {phase_id} build completed: {synthesis.status}"`