@zigrivers/scaffold 3.27.0 → 3.29.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 (698) hide show
  1. package/README.md +5 -1
  2. package/content/guides/.gitkeep +0 -0
  3. package/content/guides/index.html +1188 -0
  4. package/content/guides/mmr/.diagrams/diagram-0.svg +1 -0
  5. package/content/guides/mmr/.diagrams/manifest.json +3 -0
  6. package/content/guides/mmr/index.html +1728 -0
  7. package/content/guides/mmr/index.md +403 -0
  8. package/content/knowledge/VERSION +1 -0
  9. package/content/knowledge/backend/backend-api-design.md +8 -0
  10. package/content/knowledge/backend/backend-architecture.md +8 -0
  11. package/content/knowledge/backend/backend-async-patterns.md +7 -0
  12. package/content/knowledge/backend/backend-auth-patterns.md +9 -0
  13. package/content/knowledge/backend/backend-conventions.md +6 -0
  14. package/content/knowledge/backend/backend-data-modeling.md +7 -0
  15. package/content/knowledge/backend/backend-deployment.md +8 -0
  16. package/content/knowledge/backend/backend-dev-environment.md +5 -0
  17. package/content/knowledge/backend/backend-fintech-broker-integration.md +6 -0
  18. package/content/knowledge/backend/backend-fintech-compliance.md +10 -2
  19. package/content/knowledge/backend/backend-fintech-data-modeling.md +6 -0
  20. package/content/knowledge/backend/backend-fintech-ledger.md +6 -0
  21. package/content/knowledge/backend/backend-fintech-observability.md +6 -0
  22. package/content/knowledge/backend/backend-fintech-order-lifecycle.md +6 -0
  23. package/content/knowledge/backend/backend-fintech-risk-management.md +6 -0
  24. package/content/knowledge/backend/backend-fintech-testing.md +6 -0
  25. package/content/knowledge/backend/backend-observability.md +7 -0
  26. package/content/knowledge/backend/backend-project-structure.md +6 -0
  27. package/content/knowledge/backend/backend-requirements.md +6 -0
  28. package/content/knowledge/backend/backend-security.md +7 -0
  29. package/content/knowledge/backend/backend-testing.md +7 -0
  30. package/content/knowledge/backend/backend-worker-patterns.md +6 -0
  31. package/content/knowledge/browser-extension/browser-extension-architecture.md +6 -0
  32. package/content/knowledge/browser-extension/browser-extension-content-scripts.md +6 -0
  33. package/content/knowledge/browser-extension/browser-extension-conventions.md +6 -0
  34. package/content/knowledge/browser-extension/browser-extension-cross-browser.md +6 -0
  35. package/content/knowledge/browser-extension/browser-extension-dev-environment.md +6 -0
  36. package/content/knowledge/browser-extension/browser-extension-manifest.md +6 -0
  37. package/content/knowledge/browser-extension/browser-extension-project-structure.md +6 -0
  38. package/content/knowledge/browser-extension/browser-extension-requirements.md +6 -0
  39. package/content/knowledge/browser-extension/browser-extension-security.md +7 -0
  40. package/content/knowledge/browser-extension/browser-extension-service-workers.md +6 -0
  41. package/content/knowledge/browser-extension/browser-extension-store-submission.md +6 -0
  42. package/content/knowledge/browser-extension/browser-extension-testing.md +6 -0
  43. package/content/knowledge/cli/cli-architecture.md +4 -0
  44. package/content/knowledge/cli/cli-conventions.md +4 -0
  45. package/content/knowledge/cli/cli-dev-environment.md +5 -0
  46. package/content/knowledge/cli/cli-distribution-patterns.md +5 -0
  47. package/content/knowledge/cli/cli-interactivity-patterns.md +4 -0
  48. package/content/knowledge/cli/cli-output-patterns.md +4 -0
  49. package/content/knowledge/cli/cli-project-structure.md +4 -0
  50. package/content/knowledge/cli/cli-requirements.md +4 -0
  51. package/content/knowledge/cli/cli-shell-integration.md +4 -0
  52. package/content/knowledge/cli/cli-testing.md +4 -0
  53. package/content/knowledge/core/adr-craft.md +8 -0
  54. package/content/knowledge/core/ai-memory-management.md +23 -0
  55. package/content/knowledge/core/api-design.md +6 -0
  56. package/content/knowledge/core/automated-review-tooling.md +8 -0
  57. package/content/knowledge/core/claude-md-patterns.md +10 -2
  58. package/content/knowledge/core/coding-conventions.md +10 -2
  59. package/content/knowledge/core/database-design.md +8 -0
  60. package/content/knowledge/core/design-system-tokens.md +8 -0
  61. package/content/knowledge/core/dev-environment.md +4 -0
  62. package/content/knowledge/core/domain-modeling.md +6 -0
  63. package/content/knowledge/core/eval-craft.md +6 -0
  64. package/content/knowledge/core/git-workflow-patterns.md +8 -0
  65. package/content/knowledge/core/multi-model-research-dispatch.md +6 -0
  66. package/content/knowledge/core/multi-model-review-dispatch.md +6 -0
  67. package/content/knowledge/core/multi-service-api-contracts.md +5 -0
  68. package/content/knowledge/core/multi-service-architecture.md +5 -0
  69. package/content/knowledge/core/multi-service-auth.md +6 -0
  70. package/content/knowledge/core/multi-service-data-ownership.md +8 -0
  71. package/content/knowledge/core/multi-service-observability.md +8 -0
  72. package/content/knowledge/core/multi-service-resilience.md +5 -0
  73. package/content/knowledge/core/multi-service-task-decomposition.md +8 -0
  74. package/content/knowledge/core/multi-service-testing.md +5 -0
  75. package/content/knowledge/core/operations-runbook.md +8 -0
  76. package/content/knowledge/core/project-structure-patterns.md +4 -0
  77. package/content/knowledge/core/review-step-template.md +4 -0
  78. package/content/knowledge/core/security-best-practices.md +6 -0
  79. package/content/knowledge/core/system-architecture.md +6 -0
  80. package/content/knowledge/core/task-decomposition.md +9 -4
  81. package/content/knowledge/core/task-tracking.md +128 -29
  82. package/content/knowledge/core/tech-stack-selection.md +8 -0
  83. package/content/knowledge/core/test-skeleton-generation.md +4 -0
  84. package/content/knowledge/core/testing-strategy.md +8 -0
  85. package/content/knowledge/core/user-stories.md +9 -1
  86. package/content/knowledge/core/user-story-innovation.md +4 -0
  87. package/content/knowledge/core/ux-specification.md +5 -0
  88. package/content/knowledge/data-pipeline/data-pipeline-architecture.md +5 -0
  89. package/content/knowledge/data-pipeline/data-pipeline-batch-patterns.md +4 -0
  90. package/content/knowledge/data-pipeline/data-pipeline-conventions.md +4 -0
  91. package/content/knowledge/data-pipeline/data-pipeline-dev-environment.md +4 -0
  92. package/content/knowledge/data-pipeline/data-pipeline-orchestration.md +4 -0
  93. package/content/knowledge/data-pipeline/data-pipeline-project-structure.md +4 -0
  94. package/content/knowledge/data-pipeline/data-pipeline-quality.md +4 -0
  95. package/content/knowledge/data-pipeline/data-pipeline-requirements.md +4 -0
  96. package/content/knowledge/data-pipeline/data-pipeline-schema-management.md +4 -0
  97. package/content/knowledge/data-pipeline/data-pipeline-security.md +4 -0
  98. package/content/knowledge/data-pipeline/data-pipeline-streaming-patterns.md +4 -0
  99. package/content/knowledge/data-pipeline/data-pipeline-testing.md +4 -0
  100. package/content/knowledge/data-science/data-science-architecture.md +5 -0
  101. package/content/knowledge/data-science/data-science-conventions.md +6 -0
  102. package/content/knowledge/data-science/data-science-data-versioning.md +6 -0
  103. package/content/knowledge/data-science/data-science-dev-environment.md +6 -0
  104. package/content/knowledge/data-science/data-science-experiment-tracking.md +8 -0
  105. package/content/knowledge/data-science/data-science-model-evaluation.md +5 -0
  106. package/content/knowledge/data-science/data-science-notebook-discipline.md +5 -0
  107. package/content/knowledge/data-science/data-science-observability.md +6 -0
  108. package/content/knowledge/data-science/data-science-project-structure.md +5 -0
  109. package/content/knowledge/data-science/data-science-reproducibility.md +8 -0
  110. package/content/knowledge/data-science/data-science-requirements.md +5 -0
  111. package/content/knowledge/data-science/data-science-security.md +8 -0
  112. package/content/knowledge/data-science/data-science-testing.md +5 -0
  113. package/content/knowledge/execution/enhancement-workflow.md +4 -0
  114. package/content/knowledge/execution/multi-agent-coordination.md +129 -0
  115. package/content/knowledge/execution/task-claiming-strategy.md +19 -3
  116. package/content/knowledge/execution/tdd-execution-loop.md +5 -0
  117. package/content/knowledge/execution/worktree-management.md +10 -3
  118. package/content/knowledge/finalization/apply-fixes-and-freeze.md +4 -0
  119. package/content/knowledge/finalization/developer-onboarding.md +4 -0
  120. package/content/knowledge/finalization/implementation-playbook.md +4 -0
  121. package/content/knowledge/game/game-accessibility.md +4 -0
  122. package/content/knowledge/game/game-ai-patterns.md +4 -0
  123. package/content/knowledge/game/game-asset-pipeline.md +4 -0
  124. package/content/knowledge/game/game-audio-design.md +4 -0
  125. package/content/knowledge/game/game-binary-vcs-strategy.md +5 -0
  126. package/content/knowledge/game/game-design-document.md +4 -0
  127. package/content/knowledge/game/game-domain-patterns.md +4 -0
  128. package/content/knowledge/game/game-economy-design.md +4 -0
  129. package/content/knowledge/game/game-engine-selection.md +4 -0
  130. package/content/knowledge/game/game-ideation.md +4 -0
  131. package/content/knowledge/game/game-input-systems.md +4 -0
  132. package/content/knowledge/game/game-level-content-design.md +4 -0
  133. package/content/knowledge/game/game-liveops-analytics.md +4 -0
  134. package/content/knowledge/game/game-localization.md +4 -0
  135. package/content/knowledge/game/game-milestone-definitions.md +4 -0
  136. package/content/knowledge/game/game-modding-ugc.md +4 -0
  137. package/content/knowledge/game/game-narrative-design.md +4 -0
  138. package/content/knowledge/game/game-networking.md +4 -0
  139. package/content/knowledge/game/game-performance-budgeting.md +4 -0
  140. package/content/knowledge/game/game-platform-certification.md +6 -0
  141. package/content/knowledge/game/game-project-structure.md +4 -0
  142. package/content/knowledge/game/game-save-systems.md +4 -0
  143. package/content/knowledge/game/game-testing-strategy.md +4 -0
  144. package/content/knowledge/game/game-ui-patterns.md +4 -0
  145. package/content/knowledge/game/game-vr-ar-design.md +6 -0
  146. package/content/knowledge/library/library-api-design.md +4 -0
  147. package/content/knowledge/library/library-architecture.md +4 -0
  148. package/content/knowledge/library/library-bundling.md +4 -0
  149. package/content/knowledge/library/library-conventions.md +5 -0
  150. package/content/knowledge/library/library-dev-environment.md +4 -0
  151. package/content/knowledge/library/library-documentation.md +4 -0
  152. package/content/knowledge/library/library-project-structure.md +4 -0
  153. package/content/knowledge/library/library-requirements.md +4 -0
  154. package/content/knowledge/library/library-security.md +4 -0
  155. package/content/knowledge/library/library-testing.md +4 -0
  156. package/content/knowledge/library/library-type-definitions.md +4 -0
  157. package/content/knowledge/library/library-versioning.md +5 -0
  158. package/content/knowledge/ml/ml-architecture.md +4 -0
  159. package/content/knowledge/ml/ml-conventions.md +4 -0
  160. package/content/knowledge/ml/ml-dev-environment.md +4 -0
  161. package/content/knowledge/ml/ml-experiment-tracking.md +6 -0
  162. package/content/knowledge/ml/ml-model-evaluation.md +4 -0
  163. package/content/knowledge/ml/ml-observability.md +5 -0
  164. package/content/knowledge/ml/ml-project-structure.md +4 -0
  165. package/content/knowledge/ml/ml-requirements.md +4 -0
  166. package/content/knowledge/ml/ml-security.md +5 -0
  167. package/content/knowledge/ml/ml-serving-patterns.md +4 -0
  168. package/content/knowledge/ml/ml-testing.md +4 -0
  169. package/content/knowledge/ml/ml-training-patterns.md +4 -0
  170. package/content/knowledge/mobile-app/mobile-app-architecture.md +6 -0
  171. package/content/knowledge/mobile-app/mobile-app-conventions.md +6 -0
  172. package/content/knowledge/mobile-app/mobile-app-deployment.md +6 -0
  173. package/content/knowledge/mobile-app/mobile-app-dev-environment.md +6 -0
  174. package/content/knowledge/mobile-app/mobile-app-distribution.md +6 -0
  175. package/content/knowledge/mobile-app/mobile-app-observability.md +7 -0
  176. package/content/knowledge/mobile-app/mobile-app-offline-patterns.md +7 -0
  177. package/content/knowledge/mobile-app/mobile-app-project-structure.md +6 -0
  178. package/content/knowledge/mobile-app/mobile-app-push-notifications.md +6 -0
  179. package/content/knowledge/mobile-app/mobile-app-requirements.md +7 -0
  180. package/content/knowledge/mobile-app/mobile-app-security.md +8 -0
  181. package/content/knowledge/mobile-app/mobile-app-testing.md +6 -0
  182. package/content/knowledge/product/gap-analysis.md +4 -0
  183. package/content/knowledge/product/ideation-craft.md +4 -0
  184. package/content/knowledge/product/prd-craft.md +4 -0
  185. package/content/knowledge/product/prd-innovation.md +4 -0
  186. package/content/knowledge/product/vision-craft.md +4 -0
  187. package/content/knowledge/product/vision-innovation.md +4 -0
  188. package/content/knowledge/research/research-architecture.md +4 -0
  189. package/content/knowledge/research/research-conventions.md +6 -0
  190. package/content/knowledge/research/research-dev-environment.md +6 -0
  191. package/content/knowledge/research/research-experiment-loop.md +4 -0
  192. package/content/knowledge/research/research-experiment-tracking.md +6 -0
  193. package/content/knowledge/research/research-ml-architecture-search.md +4 -0
  194. package/content/knowledge/research/research-ml-evaluation.md +4 -0
  195. package/content/knowledge/research/research-ml-experiment-tracking.md +6 -0
  196. package/content/knowledge/research/research-ml-training-patterns.md +4 -0
  197. package/content/knowledge/research/research-observability.md +5 -0
  198. package/content/knowledge/research/research-overfitting-prevention.md +5 -0
  199. package/content/knowledge/research/research-project-structure.md +5 -0
  200. package/content/knowledge/research/research-quant-backtesting.md +4 -0
  201. package/content/knowledge/research/research-quant-market-data.md +4 -0
  202. package/content/knowledge/research/research-quant-metrics.md +4 -0
  203. package/content/knowledge/research/research-quant-requirements.md +4 -0
  204. package/content/knowledge/research/research-quant-risk.md +4 -0
  205. package/content/knowledge/research/research-quant-strategy-patterns.md +4 -0
  206. package/content/knowledge/research/research-requirements.md +5 -0
  207. package/content/knowledge/research/research-security.md +5 -0
  208. package/content/knowledge/research/research-sim-compute-management.md +4 -0
  209. package/content/knowledge/research/research-sim-engine-patterns.md +4 -0
  210. package/content/knowledge/research/research-sim-parameter-spaces.md +4 -0
  211. package/content/knowledge/research/research-sim-validation.md +4 -0
  212. package/content/knowledge/research/research-testing.md +5 -0
  213. package/content/knowledge/review/review-adr.md +6 -0
  214. package/content/knowledge/review/review-api-design.md +6 -0
  215. package/content/knowledge/review/review-art-bible.md +4 -0
  216. package/content/knowledge/review/review-database-design.md +5 -0
  217. package/content/knowledge/review/review-domain-modeling.md +5 -0
  218. package/content/knowledge/review/review-game-design.md +4 -0
  219. package/content/knowledge/review/review-game-economy.md +4 -0
  220. package/content/knowledge/review/review-game-ui.md +5 -0
  221. package/content/knowledge/review/review-implementation-tasks.md +5 -0
  222. package/content/knowledge/review/review-methodology.md +4 -0
  223. package/content/knowledge/review/review-netcode.md +4 -0
  224. package/content/knowledge/review/review-operations.md +6 -0
  225. package/content/knowledge/review/review-platform-cert.md +4 -0
  226. package/content/knowledge/review/review-prd.md +4 -0
  227. package/content/knowledge/review/review-security.md +7 -0
  228. package/content/knowledge/review/review-system-architecture.md +6 -0
  229. package/content/knowledge/review/review-testing-strategy.md +6 -0
  230. package/content/knowledge/review/review-user-stories.md +5 -0
  231. package/content/knowledge/review/review-ux-specification.md +6 -0
  232. package/content/knowledge/review/review-vision.md +4 -0
  233. package/content/knowledge/tools/post-implementation-review-methodology.md +4 -0
  234. package/content/knowledge/tools/release-management.md +5 -0
  235. package/content/knowledge/tools/session-analysis.md +4 -0
  236. package/content/knowledge/tools/version-strategy.md +4 -0
  237. package/content/knowledge/validation/critical-path-analysis.md +4 -0
  238. package/content/knowledge/validation/cross-phase-consistency.md +4 -0
  239. package/content/knowledge/validation/decision-completeness.md +5 -0
  240. package/content/knowledge/validation/dependency-validation.md +4 -0
  241. package/content/knowledge/validation/implementability-review.md +4 -0
  242. package/content/knowledge/validation/scope-management.md +4 -0
  243. package/content/knowledge/validation/traceability.md +4 -0
  244. package/content/knowledge/web-app/web-app-api-patterns.md +6 -0
  245. package/content/knowledge/web-app/web-app-architecture.md +6 -0
  246. package/content/knowledge/web-app/web-app-auth-patterns.md +9 -0
  247. package/content/knowledge/web-app/web-app-conventions.md +5 -0
  248. package/content/knowledge/web-app/web-app-data-patterns.md +6 -0
  249. package/content/knowledge/web-app/web-app-deployment-workflow.md +6 -0
  250. package/content/knowledge/web-app/web-app-deployment.md +6 -0
  251. package/content/knowledge/web-app/web-app-design-system.md +6 -0
  252. package/content/knowledge/web-app/web-app-dev-environment.md +6 -0
  253. package/content/knowledge/web-app/web-app-observability.md +6 -0
  254. package/content/knowledge/web-app/web-app-project-structure.md +5 -0
  255. package/content/knowledge/web-app/web-app-rendering-strategies.md +6 -0
  256. package/content/knowledge/web-app/web-app-requirements.md +6 -0
  257. package/content/knowledge/web-app/web-app-security.md +8 -0
  258. package/content/knowledge/web-app/web-app-session-patterns.md +7 -0
  259. package/content/knowledge/web-app/web-app-testing.md +6 -0
  260. package/content/knowledge/web-app/web-app-ux-patterns.md +6 -0
  261. package/content/knowledge/web3/web3-access-control.md +8 -0
  262. package/content/knowledge/web3/web3-architecture.md +7 -0
  263. package/content/knowledge/web3/web3-audit-workflow.md +7 -0
  264. package/content/knowledge/web3/web3-common-vulnerabilities.md +8 -0
  265. package/content/knowledge/web3/web3-conventions.md +6 -0
  266. package/content/knowledge/web3/web3-deployment-and-verification.md +7 -0
  267. package/content/knowledge/web3/web3-dev-environment.md +6 -0
  268. package/content/knowledge/web3/web3-gas-optimization.md +7 -0
  269. package/content/knowledge/web3/web3-oracles-and-external-data.md +7 -0
  270. package/content/knowledge/web3/web3-project-structure.md +6 -0
  271. package/content/knowledge/web3/web3-requirements.md +6 -0
  272. package/content/knowledge/web3/web3-security.md +8 -0
  273. package/content/knowledge/web3/web3-testing.md +6 -0
  274. package/content/knowledge/web3/web3-upgradeability.md +7 -0
  275. package/content/pipeline/build/multi-agent-resume.md +27 -7
  276. package/content/pipeline/build/multi-agent-start.md +35 -7
  277. package/content/pipeline/build/new-enhancement.md +8 -1
  278. package/content/pipeline/build/quick-task.md +9 -0
  279. package/content/pipeline/build/single-agent-resume.md +11 -4
  280. package/content/pipeline/build/single-agent-start.md +13 -4
  281. package/content/pipeline/consolidation/workflow-audit.md +1 -1
  282. package/content/pipeline/environment/git-workflow.md +2 -2
  283. package/content/pipeline/foundation/beads.md +148 -22
  284. package/content/pipeline/foundation/coding-standards.md +1 -1
  285. package/content/tools/knowledge-audit-entry.md +79 -0
  286. package/content/tools/post-implementation-review.md +6 -6
  287. package/content/tools/prompt-pipeline.md +1 -1
  288. package/content/tools/release.md +5 -5
  289. package/content/tools/review-code.md +388 -17
  290. package/content/tools/review-pr.md +381 -21
  291. package/content/tools/version-bump.md +5 -5
  292. package/dist/cli/commands/dashboard.d.ts +1 -1
  293. package/dist/cli/commands/dashboard.d.ts.map +1 -1
  294. package/dist/cli/commands/dashboard.js +10 -10
  295. package/dist/cli/commands/dashboard.js.map +1 -1
  296. package/dist/cli/commands/dashboard.test.js +1 -1
  297. package/dist/cli/commands/dashboard.test.js.map +1 -1
  298. package/dist/cli/commands/guides.d.ts +24 -0
  299. package/dist/cli/commands/guides.d.ts.map +1 -0
  300. package/dist/cli/commands/guides.js +103 -0
  301. package/dist/cli/commands/guides.js.map +1 -0
  302. package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.d.ts +9 -0
  303. package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.d.ts.map +1 -0
  304. package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.js +112 -0
  305. package/dist/cli/commands/knowledge-freshness-anti-over-rewrite.js.map +1 -0
  306. package/dist/cli/commands/knowledge-freshness-audit-apply.d.ts +8 -0
  307. package/dist/cli/commands/knowledge-freshness-audit-apply.d.ts.map +1 -0
  308. package/dist/cli/commands/knowledge-freshness-audit-apply.js +96 -0
  309. package/dist/cli/commands/knowledge-freshness-audit-apply.js.map +1 -0
  310. package/dist/cli/commands/knowledge-freshness-audit-prefilter.d.ts +7 -0
  311. package/dist/cli/commands/knowledge-freshness-audit-prefilter.d.ts.map +1 -0
  312. package/dist/cli/commands/knowledge-freshness-audit-prefilter.js +42 -0
  313. package/dist/cli/commands/knowledge-freshness-audit-prefilter.js.map +1 -0
  314. package/dist/cli/commands/knowledge-freshness-audit-run-entry.d.ts +9 -0
  315. package/dist/cli/commands/knowledge-freshness-audit-run-entry.d.ts.map +1 -0
  316. package/dist/cli/commands/knowledge-freshness-audit-run-entry.js +63 -0
  317. package/dist/cli/commands/knowledge-freshness-audit-run-entry.js.map +1 -0
  318. package/dist/cli/commands/knowledge-freshness-bump-version.d.ts +8 -0
  319. package/dist/cli/commands/knowledge-freshness-bump-version.d.ts.map +1 -0
  320. package/dist/cli/commands/knowledge-freshness-bump-version.js +34 -0
  321. package/dist/cli/commands/knowledge-freshness-bump-version.js.map +1 -0
  322. package/dist/cli/commands/knowledge-freshness-deep-guidance-check.d.ts +7 -0
  323. package/dist/cli/commands/knowledge-freshness-deep-guidance-check.d.ts.map +1 -0
  324. package/dist/cli/commands/knowledge-freshness-deep-guidance-check.js +51 -0
  325. package/dist/cli/commands/knowledge-freshness-deep-guidance-check.js.map +1 -0
  326. package/dist/cli/commands/knowledge-freshness-link-check.d.ts +7 -0
  327. package/dist/cli/commands/knowledge-freshness-link-check.d.ts.map +1 -0
  328. package/dist/cli/commands/knowledge-freshness-link-check.js +57 -0
  329. package/dist/cli/commands/knowledge-freshness-link-check.js.map +1 -0
  330. package/dist/cli/commands/knowledge-freshness-lint-unsourced.d.ts +8 -0
  331. package/dist/cli/commands/knowledge-freshness-lint-unsourced.d.ts.map +1 -0
  332. package/dist/cli/commands/knowledge-freshness-lint-unsourced.js +58 -0
  333. package/dist/cli/commands/knowledge-freshness-lint-unsourced.js.map +1 -0
  334. package/dist/cli/commands/knowledge-freshness.d.ts +4 -0
  335. package/dist/cli/commands/knowledge-freshness.d.ts.map +1 -0
  336. package/dist/cli/commands/knowledge-freshness.js +25 -0
  337. package/dist/cli/commands/knowledge-freshness.js.map +1 -0
  338. package/dist/cli/commands/observe.d.ts +6 -0
  339. package/dist/cli/commands/observe.d.ts.map +1 -1
  340. package/dist/cli/commands/observe.js +22 -1
  341. package/dist/cli/commands/observe.js.map +1 -1
  342. package/dist/cli/commands/observe.test.js +82 -0
  343. package/dist/cli/commands/observe.test.js.map +1 -1
  344. package/dist/cli/commands/validate-knowledge.d.ts +4 -0
  345. package/dist/cli/commands/validate-knowledge.d.ts.map +1 -0
  346. package/dist/cli/commands/validate-knowledge.js +32 -0
  347. package/dist/cli/commands/validate-knowledge.js.map +1 -0
  348. package/dist/cli/index.d.ts.map +1 -1
  349. package/dist/cli/index.js +6 -0
  350. package/dist/cli/index.js.map +1 -1
  351. package/dist/core/adapters/claude-code.d.ts.map +1 -1
  352. package/dist/core/adapters/claude-code.js +6 -3
  353. package/dist/core/adapters/claude-code.js.map +1 -1
  354. package/dist/core/adapters/claude-code.test.js +45 -1
  355. package/dist/core/adapters/claude-code.test.js.map +1 -1
  356. package/dist/core/assembly/engine.d.ts.map +1 -1
  357. package/dist/core/assembly/engine.js +7 -3
  358. package/dist/core/assembly/engine.js.map +1 -1
  359. package/dist/core/assembly/engine.test.js +45 -1
  360. package/dist/core/assembly/engine.test.js.map +1 -1
  361. package/dist/core/assembly/gap-signal-tail.d.ts +18 -0
  362. package/dist/core/assembly/gap-signal-tail.d.ts.map +1 -0
  363. package/dist/core/assembly/gap-signal-tail.js +43 -0
  364. package/dist/core/assembly/gap-signal-tail.js.map +1 -0
  365. package/dist/core/assembly/gap-signal-tail.test.d.ts +2 -0
  366. package/dist/core/assembly/gap-signal-tail.test.d.ts.map +1 -0
  367. package/dist/core/assembly/gap-signal-tail.test.js +49 -0
  368. package/dist/core/assembly/gap-signal-tail.test.js.map +1 -0
  369. package/dist/core/assembly/knowledge-loader.d.ts +11 -0
  370. package/dist/core/assembly/knowledge-loader.d.ts.map +1 -1
  371. package/dist/core/assembly/knowledge-loader.js +54 -1
  372. package/dist/core/assembly/knowledge-loader.js.map +1 -1
  373. package/dist/core/assembly/knowledge-loader.test.js +73 -0
  374. package/dist/core/assembly/knowledge-loader.test.js.map +1 -1
  375. package/dist/guides/build.d.ts +12 -0
  376. package/dist/guides/build.d.ts.map +1 -0
  377. package/dist/guides/build.js +50 -0
  378. package/dist/guides/build.js.map +1 -0
  379. package/dist/guides/build.test.d.ts +2 -0
  380. package/dist/guides/build.test.d.ts.map +1 -0
  381. package/dist/guides/build.test.js +74 -0
  382. package/dist/guides/build.test.js.map +1 -0
  383. package/dist/guides/chrome.d.ts +24 -0
  384. package/dist/guides/chrome.d.ts.map +1 -0
  385. package/dist/guides/chrome.js +118 -0
  386. package/dist/guides/chrome.js.map +1 -0
  387. package/dist/guides/cli-guides.test.d.ts +2 -0
  388. package/dist/guides/cli-guides.test.d.ts.map +1 -0
  389. package/dist/guides/cli-guides.test.js +41 -0
  390. package/dist/guides/cli-guides.test.js.map +1 -0
  391. package/dist/guides/dashboard-theme.css +1073 -0
  392. package/dist/guides/directives-callout.test.d.ts +2 -0
  393. package/dist/guides/directives-callout.test.d.ts.map +1 -0
  394. package/dist/guides/directives-callout.test.js +22 -0
  395. package/dist/guides/directives-callout.test.js.map +1 -0
  396. package/dist/guides/directives-chart.test.d.ts +2 -0
  397. package/dist/guides/directives-chart.test.d.ts.map +1 -0
  398. package/dist/guides/directives-chart.test.js +25 -0
  399. package/dist/guides/directives-chart.test.js.map +1 -0
  400. package/dist/guides/directives-filter-table.test.d.ts +2 -0
  401. package/dist/guides/directives-filter-table.test.d.ts.map +1 -0
  402. package/dist/guides/directives-filter-table.test.js +22 -0
  403. package/dist/guides/directives-filter-table.test.js.map +1 -0
  404. package/dist/guides/directives-sev.test.d.ts +2 -0
  405. package/dist/guides/directives-sev.test.d.ts.map +1 -0
  406. package/dist/guides/directives-sev.test.js +15 -0
  407. package/dist/guides/directives-sev.test.js.map +1 -0
  408. package/dist/guides/directives-tabs.test.d.ts +2 -0
  409. package/dist/guides/directives-tabs.test.d.ts.map +1 -0
  410. package/dist/guides/directives-tabs.test.js +52 -0
  411. package/dist/guides/directives-tabs.test.js.map +1 -0
  412. package/dist/guides/directives.d.ts +7 -0
  413. package/dist/guides/directives.d.ts.map +1 -0
  414. package/dist/guides/directives.js +158 -0
  415. package/dist/guides/directives.js.map +1 -0
  416. package/dist/guides/fs-guides.test.d.ts +2 -0
  417. package/dist/guides/fs-guides.test.d.ts.map +1 -0
  418. package/dist/guides/fs-guides.test.js +14 -0
  419. package/dist/guides/fs-guides.test.js.map +1 -0
  420. package/dist/guides/index-page.d.ts +3 -0
  421. package/dist/guides/index-page.d.ts.map +1 -0
  422. package/dist/guides/index-page.js +14 -0
  423. package/dist/guides/index-page.js.map +1 -0
  424. package/dist/guides/lint.d.ts +6 -0
  425. package/dist/guides/lint.d.ts.map +1 -0
  426. package/dist/guides/lint.js +27 -0
  427. package/dist/guides/lint.js.map +1 -0
  428. package/dist/guides/lint.test.d.ts +2 -0
  429. package/dist/guides/lint.test.d.ts.map +1 -0
  430. package/dist/guides/lint.test.js +24 -0
  431. package/dist/guides/lint.test.js.map +1 -0
  432. package/dist/guides/loader.d.ts +4 -0
  433. package/dist/guides/loader.d.ts.map +1 -0
  434. package/dist/guides/loader.js +63 -0
  435. package/dist/guides/loader.js.map +1 -0
  436. package/dist/guides/loader.test.d.ts +2 -0
  437. package/dist/guides/loader.test.d.ts.map +1 -0
  438. package/dist/guides/loader.test.js +85 -0
  439. package/dist/guides/loader.test.js.map +1 -0
  440. package/dist/guides/mermaid-sanitize.test.d.ts +2 -0
  441. package/dist/guides/mermaid-sanitize.test.d.ts.map +1 -0
  442. package/dist/guides/mermaid-sanitize.test.js +57 -0
  443. package/dist/guides/mermaid-sanitize.test.js.map +1 -0
  444. package/dist/guides/mermaid.d.ts +18 -0
  445. package/dist/guides/mermaid.d.ts.map +1 -0
  446. package/dist/guides/mermaid.js +137 -0
  447. package/dist/guides/mermaid.js.map +1 -0
  448. package/dist/guides/mermaid.test.d.ts +2 -0
  449. package/dist/guides/mermaid.test.d.ts.map +1 -0
  450. package/dist/guides/mermaid.test.js +105 -0
  451. package/dist/guides/mermaid.test.js.map +1 -0
  452. package/dist/guides/render.d.ts +12 -0
  453. package/dist/guides/render.d.ts.map +1 -0
  454. package/dist/guides/render.js +58 -0
  455. package/dist/guides/render.js.map +1 -0
  456. package/dist/guides/render.test.d.ts +2 -0
  457. package/dist/guides/render.test.d.ts.map +1 -0
  458. package/dist/guides/render.test.js +46 -0
  459. package/dist/guides/render.test.js.map +1 -0
  460. package/dist/guides/sanitize.d.ts +3 -0
  461. package/dist/guides/sanitize.d.ts.map +1 -0
  462. package/dist/guides/sanitize.js +76 -0
  463. package/dist/guides/sanitize.js.map +1 -0
  464. package/dist/guides/sanitize.test.d.ts +2 -0
  465. package/dist/guides/sanitize.test.d.ts.map +1 -0
  466. package/dist/guides/sanitize.test.js +45 -0
  467. package/dist/guides/sanitize.test.js.map +1 -0
  468. package/dist/guides/template.d.ts +11 -0
  469. package/dist/guides/template.d.ts.map +1 -0
  470. package/dist/guides/template.js +38 -0
  471. package/dist/guides/template.js.map +1 -0
  472. package/dist/guides/template.test.d.ts +2 -0
  473. package/dist/guides/template.test.d.ts.map +1 -0
  474. package/dist/guides/template.test.js +41 -0
  475. package/dist/guides/template.test.js.map +1 -0
  476. package/dist/guides/types.d.ts +20 -0
  477. package/dist/guides/types.d.ts.map +1 -0
  478. package/dist/guides/types.js +2 -0
  479. package/dist/guides/types.js.map +1 -0
  480. package/dist/knowledge-freshness/audit-apply-pr.d.ts +64 -0
  481. package/dist/knowledge-freshness/audit-apply-pr.d.ts.map +1 -0
  482. package/dist/knowledge-freshness/audit-apply-pr.js +309 -0
  483. package/dist/knowledge-freshness/audit-apply-pr.js.map +1 -0
  484. package/dist/knowledge-freshness/audit-apply-pr.test.d.ts +2 -0
  485. package/dist/knowledge-freshness/audit-apply-pr.test.d.ts.map +1 -0
  486. package/dist/knowledge-freshness/audit-apply-pr.test.js +211 -0
  487. package/dist/knowledge-freshness/audit-apply-pr.test.js.map +1 -0
  488. package/dist/knowledge-freshness/audit-apply.d.ts +16 -0
  489. package/dist/knowledge-freshness/audit-apply.d.ts.map +1 -0
  490. package/dist/knowledge-freshness/audit-apply.js +193 -0
  491. package/dist/knowledge-freshness/audit-apply.js.map +1 -0
  492. package/dist/knowledge-freshness/audit-apply.test.d.ts +2 -0
  493. package/dist/knowledge-freshness/audit-apply.test.d.ts.map +1 -0
  494. package/dist/knowledge-freshness/audit-apply.test.js +482 -0
  495. package/dist/knowledge-freshness/audit-apply.test.js.map +1 -0
  496. package/dist/knowledge-freshness/audit-prefilter.d.ts +12 -0
  497. package/dist/knowledge-freshness/audit-prefilter.d.ts.map +1 -0
  498. package/dist/knowledge-freshness/audit-prefilter.js +74 -0
  499. package/dist/knowledge-freshness/audit-prefilter.js.map +1 -0
  500. package/dist/knowledge-freshness/audit-prefilter.test.d.ts +2 -0
  501. package/dist/knowledge-freshness/audit-prefilter.test.d.ts.map +1 -0
  502. package/dist/knowledge-freshness/audit-prefilter.test.js +78 -0
  503. package/dist/knowledge-freshness/audit-prefilter.test.js.map +1 -0
  504. package/dist/knowledge-freshness/audit-runner.d.ts +135 -0
  505. package/dist/knowledge-freshness/audit-runner.d.ts.map +1 -0
  506. package/dist/knowledge-freshness/audit-runner.js +168 -0
  507. package/dist/knowledge-freshness/audit-runner.js.map +1 -0
  508. package/dist/knowledge-freshness/audit-runner.test.d.ts +2 -0
  509. package/dist/knowledge-freshness/audit-runner.test.d.ts.map +1 -0
  510. package/dist/knowledge-freshness/audit-runner.test.js +130 -0
  511. package/dist/knowledge-freshness/audit-runner.test.js.map +1 -0
  512. package/dist/knowledge-freshness/bump-version.d.ts +24 -0
  513. package/dist/knowledge-freshness/bump-version.d.ts.map +1 -0
  514. package/dist/knowledge-freshness/bump-version.js +69 -0
  515. package/dist/knowledge-freshness/bump-version.js.map +1 -0
  516. package/dist/knowledge-freshness/bump-version.test.d.ts +2 -0
  517. package/dist/knowledge-freshness/bump-version.test.d.ts.map +1 -0
  518. package/dist/knowledge-freshness/bump-version.test.js +82 -0
  519. package/dist/knowledge-freshness/bump-version.test.js.map +1 -0
  520. package/dist/knowledge-freshness/gates/anti-over-rewrite.d.ts +86 -0
  521. package/dist/knowledge-freshness/gates/anti-over-rewrite.d.ts.map +1 -0
  522. package/dist/knowledge-freshness/gates/anti-over-rewrite.js +210 -0
  523. package/dist/knowledge-freshness/gates/anti-over-rewrite.js.map +1 -0
  524. package/dist/knowledge-freshness/gates/anti-over-rewrite.test.d.ts +2 -0
  525. package/dist/knowledge-freshness/gates/anti-over-rewrite.test.d.ts.map +1 -0
  526. package/dist/knowledge-freshness/gates/anti-over-rewrite.test.js +115 -0
  527. package/dist/knowledge-freshness/gates/anti-over-rewrite.test.js.map +1 -0
  528. package/dist/knowledge-freshness/gates/changed-files.d.ts +53 -0
  529. package/dist/knowledge-freshness/gates/changed-files.d.ts.map +1 -0
  530. package/dist/knowledge-freshness/gates/changed-files.js +128 -0
  531. package/dist/knowledge-freshness/gates/changed-files.js.map +1 -0
  532. package/dist/knowledge-freshness/gates/deep-guidance-check.d.ts +23 -0
  533. package/dist/knowledge-freshness/gates/deep-guidance-check.d.ts.map +1 -0
  534. package/dist/knowledge-freshness/gates/deep-guidance-check.js +27 -0
  535. package/dist/knowledge-freshness/gates/deep-guidance-check.js.map +1 -0
  536. package/dist/knowledge-freshness/gates/deep-guidance-check.test.d.ts +2 -0
  537. package/dist/knowledge-freshness/gates/deep-guidance-check.test.d.ts.map +1 -0
  538. package/dist/knowledge-freshness/gates/deep-guidance-check.test.js +23 -0
  539. package/dist/knowledge-freshness/gates/deep-guidance-check.test.js.map +1 -0
  540. package/dist/knowledge-freshness/gates/link-check.d.ts +55 -0
  541. package/dist/knowledge-freshness/gates/link-check.d.ts.map +1 -0
  542. package/dist/knowledge-freshness/gates/link-check.js +161 -0
  543. package/dist/knowledge-freshness/gates/link-check.js.map +1 -0
  544. package/dist/knowledge-freshness/gates/link-check.test.d.ts +2 -0
  545. package/dist/knowledge-freshness/gates/link-check.test.d.ts.map +1 -0
  546. package/dist/knowledge-freshness/gates/link-check.test.js +76 -0
  547. package/dist/knowledge-freshness/gates/link-check.test.js.map +1 -0
  548. package/dist/knowledge-freshness/gates/lint-unsourced.d.ts +40 -0
  549. package/dist/knowledge-freshness/gates/lint-unsourced.d.ts.map +1 -0
  550. package/dist/knowledge-freshness/gates/lint-unsourced.js +143 -0
  551. package/dist/knowledge-freshness/gates/lint-unsourced.js.map +1 -0
  552. package/dist/knowledge-freshness/gates/lint-unsourced.test.d.ts +2 -0
  553. package/dist/knowledge-freshness/gates/lint-unsourced.test.d.ts.map +1 -0
  554. package/dist/knowledge-freshness/gates/lint-unsourced.test.js +68 -0
  555. package/dist/knowledge-freshness/gates/lint-unsourced.test.js.map +1 -0
  556. package/dist/knowledge-freshness/gates/parse-entry.d.ts +25 -0
  557. package/dist/knowledge-freshness/gates/parse-entry.d.ts.map +1 -0
  558. package/dist/knowledge-freshness/gates/parse-entry.js +41 -0
  559. package/dist/knowledge-freshness/gates/parse-entry.js.map +1 -0
  560. package/dist/knowledge-freshness/gates/parse-entry.test.d.ts +2 -0
  561. package/dist/knowledge-freshness/gates/parse-entry.test.d.ts.map +1 -0
  562. package/dist/knowledge-freshness/gates/parse-entry.test.js +34 -0
  563. package/dist/knowledge-freshness/gates/parse-entry.test.js.map +1 -0
  564. package/dist/knowledge-freshness/providers/anthropic.d.ts +33 -0
  565. package/dist/knowledge-freshness/providers/anthropic.d.ts.map +1 -0
  566. package/dist/knowledge-freshness/providers/anthropic.js +36 -0
  567. package/dist/knowledge-freshness/providers/anthropic.js.map +1 -0
  568. package/dist/knowledge-freshness/providers/anthropic.test.d.ts +2 -0
  569. package/dist/knowledge-freshness/providers/anthropic.test.d.ts.map +1 -0
  570. package/dist/knowledge-freshness/providers/anthropic.test.js +32 -0
  571. package/dist/knowledge-freshness/providers/anthropic.test.js.map +1 -0
  572. package/dist/knowledge-freshness/providers/deepseek.d.ts +33 -0
  573. package/dist/knowledge-freshness/providers/deepseek.d.ts.map +1 -0
  574. package/dist/knowledge-freshness/providers/deepseek.js +157 -0
  575. package/dist/knowledge-freshness/providers/deepseek.js.map +1 -0
  576. package/dist/knowledge-freshness/providers/deepseek.test.d.ts +2 -0
  577. package/dist/knowledge-freshness/providers/deepseek.test.d.ts.map +1 -0
  578. package/dist/knowledge-freshness/providers/deepseek.test.js +142 -0
  579. package/dist/knowledge-freshness/providers/deepseek.test.js.map +1 -0
  580. package/dist/knowledge-freshness/providers/index.d.ts +41 -0
  581. package/dist/knowledge-freshness/providers/index.d.ts.map +1 -0
  582. package/dist/knowledge-freshness/providers/index.js +108 -0
  583. package/dist/knowledge-freshness/providers/index.js.map +1 -0
  584. package/dist/knowledge-freshness/providers/index.test.d.ts +2 -0
  585. package/dist/knowledge-freshness/providers/index.test.d.ts.map +1 -0
  586. package/dist/knowledge-freshness/providers/index.test.js +97 -0
  587. package/dist/knowledge-freshness/providers/index.test.js.map +1 -0
  588. package/dist/knowledge-freshness/source-hash.d.ts +39 -0
  589. package/dist/knowledge-freshness/source-hash.d.ts.map +1 -0
  590. package/dist/knowledge-freshness/source-hash.js +180 -0
  591. package/dist/knowledge-freshness/source-hash.js.map +1 -0
  592. package/dist/knowledge-freshness/source-hash.test.d.ts +2 -0
  593. package/dist/knowledge-freshness/source-hash.test.d.ts.map +1 -0
  594. package/dist/knowledge-freshness/source-hash.test.js +63 -0
  595. package/dist/knowledge-freshness/source-hash.test.js.map +1 -0
  596. package/dist/knowledge-freshness/source-url-validator.d.ts +57 -0
  597. package/dist/knowledge-freshness/source-url-validator.d.ts.map +1 -0
  598. package/dist/knowledge-freshness/source-url-validator.js +304 -0
  599. package/dist/knowledge-freshness/source-url-validator.js.map +1 -0
  600. package/dist/knowledge-freshness/source-url-validator.test.d.ts +2 -0
  601. package/dist/knowledge-freshness/source-url-validator.test.d.ts.map +1 -0
  602. package/dist/knowledge-freshness/source-url-validator.test.js +167 -0
  603. package/dist/knowledge-freshness/source-url-validator.test.js.map +1 -0
  604. package/dist/observability/adapters/beads.d.ts +4 -0
  605. package/dist/observability/adapters/beads.d.ts.map +1 -1
  606. package/dist/observability/adapters/beads.js +25 -2
  607. package/dist/observability/adapters/beads.js.map +1 -1
  608. package/dist/observability/adapters/beads.test.js +40 -2
  609. package/dist/observability/adapters/beads.test.js.map +1 -1
  610. package/dist/observability/checks/lens-i-knowledge-gaps.d.ts +3 -0
  611. package/dist/observability/checks/lens-i-knowledge-gaps.d.ts.map +1 -0
  612. package/dist/observability/checks/lens-i-knowledge-gaps.js +165 -0
  613. package/dist/observability/checks/lens-i-knowledge-gaps.js.map +1 -0
  614. package/dist/observability/checks/lens-i-knowledge-gaps.test.d.ts +2 -0
  615. package/dist/observability/checks/lens-i-knowledge-gaps.test.d.ts.map +1 -0
  616. package/dist/observability/checks/lens-i-knowledge-gaps.test.js +421 -0
  617. package/dist/observability/checks/lens-i-knowledge-gaps.test.js.map +1 -0
  618. package/dist/observability/checks/lens-i-lessons-scanner.d.ts +16 -0
  619. package/dist/observability/checks/lens-i-lessons-scanner.d.ts.map +1 -0
  620. package/dist/observability/checks/lens-i-lessons-scanner.js +106 -0
  621. package/dist/observability/checks/lens-i-lessons-scanner.js.map +1 -0
  622. package/dist/observability/checks/lens-i-lessons-scanner.test.d.ts +2 -0
  623. package/dist/observability/checks/lens-i-lessons-scanner.test.d.ts.map +1 -0
  624. package/dist/observability/checks/lens-i-lessons-scanner.test.js +174 -0
  625. package/dist/observability/checks/lens-i-lessons-scanner.test.js.map +1 -0
  626. package/dist/observability/engine/api.d.ts +4 -0
  627. package/dist/observability/engine/api.d.ts.map +1 -1
  628. package/dist/observability/engine/api.js +17 -1
  629. package/dist/observability/engine/api.js.map +1 -1
  630. package/dist/observability/engine/checks/observability-config.d.ts +4 -0
  631. package/dist/observability/engine/checks/observability-config.d.ts.map +1 -1
  632. package/dist/observability/engine/checks/observability-config.js +1 -0
  633. package/dist/observability/engine/checks/observability-config.js.map +1 -1
  634. package/dist/observability/engine/checks/registry.d.ts.map +1 -1
  635. package/dist/observability/engine/checks/registry.js +7 -0
  636. package/dist/observability/engine/checks/registry.js.map +1 -1
  637. package/dist/observability/engine/checks/registry.test.js +3 -2
  638. package/dist/observability/engine/checks/registry.test.js.map +1 -1
  639. package/dist/observability/engine/checks/runner.d.ts +30 -0
  640. package/dist/observability/engine/checks/runner.d.ts.map +1 -1
  641. package/dist/observability/engine/checks/runner.js +8 -1
  642. package/dist/observability/engine/checks/runner.js.map +1 -1
  643. package/dist/observability/engine/checks/runner.test.js +74 -0
  644. package/dist/observability/engine/checks/runner.test.js.map +1 -1
  645. package/dist/observability/engine/event-schemas.d.ts.map +1 -1
  646. package/dist/observability/engine/event-schemas.js +41 -3
  647. package/dist/observability/engine/event-schemas.js.map +1 -1
  648. package/dist/observability/engine/event-schemas.test.js +105 -0
  649. package/dist/observability/engine/event-schemas.test.js.map +1 -1
  650. package/dist/observability/engine/fix-flow.d.ts +7 -0
  651. package/dist/observability/engine/fix-flow.d.ts.map +1 -1
  652. package/dist/observability/engine/fix-flow.js +5 -3
  653. package/dist/observability/engine/fix-flow.js.map +1 -1
  654. package/dist/observability/engine/knowledge-root-integration.test.d.ts +2 -0
  655. package/dist/observability/engine/knowledge-root-integration.test.d.ts.map +1 -0
  656. package/dist/observability/engine/knowledge-root-integration.test.js +103 -0
  657. package/dist/observability/engine/knowledge-root-integration.test.js.map +1 -0
  658. package/dist/observability/engine/ledger-writer.d.ts +11 -1
  659. package/dist/observability/engine/ledger-writer.d.ts.map +1 -1
  660. package/dist/observability/engine/ledger-writer.js +6 -0
  661. package/dist/observability/engine/ledger-writer.js.map +1 -1
  662. package/dist/observability/engine/llm-dispatcher.d.ts.map +1 -1
  663. package/dist/observability/engine/llm-dispatcher.js +36 -5
  664. package/dist/observability/engine/llm-dispatcher.js.map +1 -1
  665. package/dist/observability/engine/llm-dispatcher.test.js +23 -0
  666. package/dist/observability/engine/llm-dispatcher.test.js.map +1 -1
  667. package/dist/observability/engine/types.d.ts +20 -1
  668. package/dist/observability/engine/types.d.ts.map +1 -1
  669. package/dist/observability/engine/types.test.js +1 -1
  670. package/dist/observability/engine/types.test.js.map +1 -1
  671. package/dist/observability/knowledge-index.d.ts +145 -0
  672. package/dist/observability/knowledge-index.d.ts.map +1 -0
  673. package/dist/observability/knowledge-index.js +353 -0
  674. package/dist/observability/knowledge-index.js.map +1 -0
  675. package/dist/observability/knowledge-index.test.d.ts +2 -0
  676. package/dist/observability/knowledge-index.test.d.ts.map +1 -0
  677. package/dist/observability/knowledge-index.test.js +364 -0
  678. package/dist/observability/knowledge-index.test.js.map +1 -0
  679. package/dist/observability/renderers/markdown.d.ts.map +1 -1
  680. package/dist/observability/renderers/markdown.js +14 -0
  681. package/dist/observability/renderers/markdown.js.map +1 -1
  682. package/dist/observability/renderers/markdown.test.js +30 -0
  683. package/dist/observability/renderers/markdown.test.js.map +1 -1
  684. package/dist/types/assembly.d.ts +10 -0
  685. package/dist/types/assembly.d.ts.map +1 -1
  686. package/dist/utils/fs.d.ts +6 -0
  687. package/dist/utils/fs.d.ts.map +1 -1
  688. package/dist/utils/fs.js +13 -0
  689. package/dist/utils/fs.js.map +1 -1
  690. package/dist/validation/knowledge-frontmatter-validator.d.ts +15 -0
  691. package/dist/validation/knowledge-frontmatter-validator.d.ts.map +1 -0
  692. package/dist/validation/knowledge-frontmatter-validator.js +131 -0
  693. package/dist/validation/knowledge-frontmatter-validator.js.map +1 -0
  694. package/dist/validation/knowledge-frontmatter-validator.test.d.ts +2 -0
  695. package/dist/validation/knowledge-frontmatter-validator.test.d.ts.map +1 -0
  696. package/dist/validation/knowledge-frontmatter-validator.test.js +66 -0
  697. package/dist/validation/knowledge-frontmatter-validator.test.js.map +1 -0
  698. package/package.json +13 -4
@@ -2,6 +2,12 @@
2
2
  name: web3-conventions
3
3
  description: Solidity style and convention discipline for smart-contract teams — forge fmt as single formatter, NatSpec on public functions, pinned pragma, custom errors over string reverts, naming and ordering rules
4
4
  topics: [web3, conventions, solidity, forge-fmt, natspec]
5
+ volatility: stable
6
+ last-reviewed: null
7
+ version-pin: 'Solidity 0.8.x'
8
+ sources:
9
+ - url: https://ethereum.org/en/developers/docs/smart-contracts/languages/
10
+ - url: https://consensys.github.io/smart-contract-best-practices/
5
11
  ---
6
12
 
7
13
  Solidity is brittle. The compiler is fast and unforgiving, the gas model rewards terseness, and the deployment surface is immutable — every style drift you tolerate during development eventually becomes a bytecode-determinism question, an audit comment, or a bug nobody can patch. The conventions below are the ones enforced by `forge fmt` and code review at every serious shop; encode them as CI gates and they stop being judgment calls.
@@ -2,6 +2,13 @@
2
2
  name: web3-deployment-and-verification
3
3
  description: Deploying smart contracts with forge script — broadcast artifacts as provenance, Etherscan verification, multi-chain flows, testnet rehearsals, mainnet pre-flight, post-deploy role hardening, and CREATE2 deterministic deploys
4
4
  topics: [web3, deployment, verification, forge-script, etherscan]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: null
8
+ sources:
9
+ - url: https://ethereum.org/en/developers/docs/smart-contracts/deploying/
10
+ - url: https://docs.openzeppelin.com/contracts/5.x/
11
+ - url: https://docs.safe.global/
5
12
  ---
6
13
 
7
14
  Shipping a contract to mainnet is the most irreversible thing a smart-contract team ever does. There is no rollback, no patch deploy, no `kubectl rollout undo` — once the bytecode is live and users start interacting with it, you live with what you wrote. The instinct from web2 — "deploy fast, fix forward" — produces drained protocols on-chain. Treat deployment as a release event: every privileged operation scripted (not hand-called), every artifact archived (not transient), every step rehearsed on a testnet that mirrors mainnet, and every contract verified on Etherscan before you tell anyone the address. The cost of the discipline is half a day of process; the cost of skipping it is the entire protocol.
@@ -2,6 +2,12 @@
2
2
  name: web3-dev-environment
3
3
  description: Reproducible local Foundry environment for smart-contract teams — pinned solc, pinned forge, anvil, forge-std, direnv, and CI parity
4
4
  topics: [web3, dev-environment, foundry, forge, anvil]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: 'Solidity 0.8.x'
8
+ sources:
9
+ - url: https://ethereum.org/en/developers/docs/programming-languages/
10
+ - url: https://docs.openzeppelin.com/contracts/5.x/
5
11
  ---
6
12
 
7
13
  A reproducible Foundry environment is what lets every developer (and CI) get the same compile output, the same gas snapshots, and the same fork-test results. The pieces are not exotic: install Foundry through the official channel, pin the toolchain and the Solidity compiler, lean on `forge-std` for tests, push secrets out of your global shell with `direnv`, and mirror the same versions in CI. Skip any one of these and "works on my machine" creeps back in — usually as a gas-snapshot diff that nobody can reproduce.
@@ -2,6 +2,13 @@
2
2
  name: web3-gas-optimization
3
3
  description: Practical EVM gas optimization — measure first with forge snapshot, storage packing, unchecked loops, calldata vs memory, immutable, external-call discipline, and CI regression checks
4
4
  topics: [web3, gas-optimization, solidity, foundry]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: 'Solidity 0.8.x'
8
+ sources:
9
+ - url: https://ethereum.org/en/developers/docs/gas/
10
+ - url: https://ethereum.org/en/developers/docs/evm/opcodes/
11
+ - url: https://consensys.github.io/smart-contract-best-practices/
5
12
  ---
6
13
 
7
14
  Gas matters because every operation a user pays for on Ethereum mainnet is real dollars, and on L2s the calldata you post to L1 is the dominant cost driver — both directions are visible in your users' wallets. But most "optimizations" save under 1% of a transaction's gas and cost clarity in exchange; that trade is rarely worth it. The point of this doc is to give you the small set of techniques that do pay for themselves, the discipline to measure before applying them, and the CI plumbing that catches regressions before they ship. If a section here ever recommends a change that obscures the code without producing a measurable saving, ignore it.
@@ -2,6 +2,13 @@
2
2
  name: web3-oracles-and-external-data
3
3
  description: Oracle discipline for smart contracts — Chainlink price feeds with staleness/decimals/sign checks, TWAP for DEX prices, VRF for randomness, and fallback patterns that fail safe
4
4
  topics: [web3, oracles, chainlink, security]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: null
8
+ sources:
9
+ - url: https://consensys.github.io/smart-contract-best-practices/
10
+ - url: https://swcregistry.io/
11
+ - url: https://ethereum.org/en/developers/docs/oracles/
5
12
  ---
6
13
 
7
14
  A smart contract is a deterministic state machine in a closed universe. The real world — ETH/USD, the weather in Lagos, the winner of last night's match, a genuinely random number — is none of those things. Oracles are the bridge between the two, and every bridge is a new attack surface with its own trust assumptions, latency, and failure modes. The job is not to remove the trust assumption (you cannot) but to make the bridge robust enough that an exploit costs more than the protocol holds. Most "oracle hacks" are not novel cryptography either — they are missed standard patterns: an unchecked staleness, a spot price used where a TWAP belonged, a `block.timestamp` standing in for entropy.
@@ -2,6 +2,12 @@
2
2
  name: web3-project-structure
3
3
  description: Opinionated Foundry project layout for smart-contract teams — src, test, script, lib, broadcast, foundry.toml, remappings — covering test naming, deploy provenance, and what belongs in git
4
4
  topics: [web3, project-structure, foundry, solidity]
5
+ volatility: stable
6
+ last-reviewed: null
7
+ version-pin: null
8
+ sources:
9
+ - url: https://ethereum.org/en/developers/docs/smart-contracts/
10
+ - url: https://docs.openzeppelin.com/contracts/5.x/
5
11
  ---
6
12
 
7
13
  A smart-contract repository is read by more adversarial eyes than almost any other kind of codebase: auditors, MEV searchers, frontrunners, and the occasional regulator. Structure carries weight that goes beyond developer ergonomics. An auditor opening the repo for the first time should be able to find the contract under review, its tests, its deploy script, and its on-chain deployment receipts within thirty seconds. Gas snapshots and fuzz seeds need a fixed home so regressions are diffable. Broadcast logs are the audit trail tying a verified contract address back to a commit SHA — losing or muddling them turns "which version is mainnet running?" into a forensic exercise. Foundry's conventions answer most of these questions; this doc records the opinionated version a team should adopt before the first PR lands.
@@ -2,6 +2,12 @@
2
2
  name: web3-requirements
3
3
  description: Problem framing, invariants, threat model, trust assumptions, and success metrics for shipping smart contracts and protocols to EVM chains
4
4
  topics: [web3, requirements, invariants, threat-model, security]
5
+ volatility: stable
6
+ last-reviewed: null
7
+ version-pin: null
8
+ sources:
9
+ - url: https://consensys.github.io/smart-contract-best-practices/
10
+ - url: https://ethereum.org/en/developers/docs/smart-contracts/security/
5
11
  ---
6
12
 
7
13
  A smart contract shipped to an EVM chain without a written invariant set, a threat model, and an explicit list of trust assumptions is a guessing game with adversarial counterparties and irreversible state. This document defines the acceptance spec for a contract or protocol going to Ethereum mainnet, an L2 (Optimism, Arbitrum, Base), or a compatible sidechain. The audience is a senior Solidity engineer or protocol architect who can ship code but has not yet hardened it against funded adversaries. The goal is to force, in writing, the questions an auditor will ask on day one.
@@ -2,6 +2,14 @@
2
2
  name: web3-security
3
3
  description: Layered security practices for smart contracts heading to mainnet — defense-in-depth, Checks-Effects-Interactions, pull payments, OpenZeppelin primitives, pause + multisig, and input validation discipline
4
4
  topics: [web3, security, solidity, openzeppelin, defense-in-depth]
5
+ volatility: fast-moving
6
+ last-reviewed: null
7
+ version-pin: 'OpenZeppelin Contracts 5.x'
8
+ sources:
9
+ - url: https://docs.openzeppelin.com/contracts/5.x/
10
+ anchor: '#security'
11
+ - url: https://consensys.github.io/smart-contract-best-practices/
12
+ anchor: '#general-philosophy'
5
13
  ---
6
14
 
7
15
  A smart contract is a public, immutable bank vault that anyone on the planet can call. The mempool is hostile, the bytecode is permanent, and the only patch deployment is a redeploy + migration that your users may or may not follow. Most exploits aren't novel cryptography — they're missed standard patterns: a state update after an external call, a `tx.origin` check that a phishing contract bypassed, a `transfer` to a contract that reverts and bricks an auction. Layered defense beats clever one-off mitigations, every time.
@@ -2,6 +2,12 @@
2
2
  name: web3-testing
3
3
  description: Testing discipline for Foundry smart contracts — unit, fuzz, invariant, and fork tests with coverage and gas snapshots wired into CI
4
4
  topics: [web3, testing, foundry, fuzz, invariants, fork-tests]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: null
8
+ sources:
9
+ - url: https://consensys.github.io/smart-contract-best-practices/
10
+ - url: https://ethereum.org/en/developers/docs/smart-contracts/testing/
5
11
  ---
6
12
 
7
13
  Smart contracts must work the first time. Once deployed, a bug is a bounty for the next adversary who reads your storage layout, and "we'll patch it next sprint" is not an option when the only patch path is a migration to a brand-new address. Foundry's `forge test` runner makes property-level confidence cheap: unit tests pin known behavior, fuzz tests stress the boundaries you forgot, invariants assert the laws that must hold across every state sequence, and fork tests replay against real mainnet state. Use all four — none of them substitutes for any of the others.
@@ -2,6 +2,13 @@
2
2
  name: web3-upgradeability
3
3
  description: Upgradeable contracts — when not to upgrade, UUPS vs Transparent vs Beacon, OpenZeppelin Upgrades with the Foundry plugin, storage gaps, ERC-7201, initializers, timelocked authorization
4
4
  topics: [web3, upgradeability, proxy, openzeppelin, storage]
5
+ volatility: evolving
6
+ last-reviewed: null
7
+ version-pin: 'OpenZeppelin Contracts Upgradeable 5.x'
8
+ sources:
9
+ - url: https://docs.openzeppelin.com/contracts/5.x/upgradeable
10
+ - url: https://docs.openzeppelin.com/contracts/5.x/api/proxy
11
+ - url: https://docs.safe.global/
5
12
  ---
6
13
 
7
14
  Upgradeable contracts trade simplicity for the ability to fix bugs after deployment. The cost is real: a new threat surface (the upgrade key itself), a class of storage-layout bugs that do not exist in immutable contracts, and a permanent dependency on whoever holds upgrade rights. An "upgradeable" protocol is one whose trust assumptions include a future action by an admin — every user of the protocol is implicitly trusting that admin to behave, in perpetuity. The honest default for most protocols is: do not upgrade unless you have to.
@@ -9,7 +9,7 @@ outputs: []
9
9
  conditional: null
10
10
  stateless: true
11
11
  category: pipeline
12
- knowledge-base: [tdd-execution-loop, task-claiming-strategy, worktree-management]
12
+ knowledge-base: [tdd-execution-loop, task-claiming-strategy, worktree-management, multi-agent-coordination]
13
13
  reads: [coding-standards, tdd, git-workflow]
14
14
  argument-hint: "<agent-name>"
15
15
  ---
@@ -85,7 +85,7 @@ Before doing anything else, confirm the environment:
85
85
  - If NOT in a worktree, stop and instruct the user to set one up or navigate to the correct directory
86
86
 
87
87
  2. **Beads identity** (if `.beads/` exists)
88
- - `echo $BD_ACTOR` — should show `$ARGUMENTS`
88
+ - `echo $BEADS_ACTOR` — should show `$ARGUMENTS`
89
89
  - If not set, the worktree setup may be incomplete
90
90
 
91
91
  ### State Recovery
@@ -114,14 +114,14 @@ Recover your context by checking the current state of work:
114
114
  ### Beads Recovery
115
115
 
116
116
  **If Beads is configured** (`.beads/` exists):
117
- - `bd list --actor $ARGUMENTS` — check for tasks with `in_progress` status owned by this agent
118
- - If a PR shows as merged, close the corresponding task: `bd close <id> && bd sync`
117
+ - `bd list --assignee $ARGUMENTS` — check for tasks with `in_progress` status owned by this agent
118
+ - If a PR shows as merged, close the corresponding task: `bd close <id>`
119
119
  - If there is in-progress work, finish it (see "Resume In-Progress Work" below)
120
120
  - Otherwise, clean up and start fresh:
121
121
  - `git fetch origin --prune && git clean -fd`
122
122
  - Run the install command from CLAUDE.md Key Commands
123
- - `bd ready` to find the next available task
124
- - Continue working until `bd ready` shows no available tasks
123
+ - Atomically claim the next ready task: `TASK=$(bd ready --claim --json | jq -r '.id')` (sets `assignee=$BEADS_ACTOR` + `status=in_progress`; no race window between agents).
124
+ - Continue working until `bd ready --claim --json` returns no task.
125
125
 
126
126
  **Without Beads:**
127
127
  - Read `docs/implementation-playbook.md` as the primary task reference.
@@ -171,8 +171,28 @@ Once in-progress work is complete (or if there was none):
171
171
  - Fix any findings at or above `fix_threshold` before proceeding
172
172
 
173
173
  3. **Create PR** (if not already created for in-progress work)
174
+ - If Beads is configured, run the PR-readiness checklist first:
175
+ ```bash
176
+ if [ -d .beads ]; then
177
+ bd preflight
178
+ fi
179
+ ```
180
+ Fix any issues `bd preflight` flags before proceeding.
181
+ - **For 3+ parallel agents**, acquire the project's merge slot to serialize merge-time conflicts:
182
+ ```bash
183
+ if [ -d .beads ]; then
184
+ bd merge-slot acquire --wait # blocks if held; queues you in priority order
185
+ fi
186
+ ```
187
+ There is one merge slot per project; `--wait` blocks until you have it. Skip for single-agent or two-agent runs. See `content/knowledge/execution/multi-agent-coordination.md`.
174
188
  - Push the branch: `git push -u origin HEAD`
175
189
  - Create a pull request: `gh pr create`
190
+ - After the PR merges (or if you abandon the work), release the slot:
191
+ ```bash
192
+ if [ -d .beads ]; then
193
+ bd merge-slot release # holder verified via $BEADS_ACTOR
194
+ fi
195
+ ```
176
196
  - Include agent name in PR description for traceability
177
197
 
178
198
  4. **Run code reviews (MANDATORY)**
@@ -219,7 +239,7 @@ Once in-progress work is complete (or if there was none):
219
239
  - Push updates and re-request review
220
240
 
221
241
  **Task was completed by another agent:**
222
- - If Beads: `bd sync` will show updated task states
242
+ - If Beads: A `git pull` (and `bd dolt pull` if a Dolt remote is configured) brings the local DB current; run `bd doctor --fix` if anything looks stale.
223
243
  - Without Beads: check the plan/playbook for recently completed tasks and open PRs
224
244
  - Skip to the next available task
225
245
 
@@ -9,7 +9,7 @@ outputs: []
9
9
  conditional: null
10
10
  stateless: true
11
11
  category: pipeline
12
- knowledge-base: [tdd-execution-loop, task-claiming-strategy, worktree-management]
12
+ knowledge-base: [tdd-execution-loop, task-claiming-strategy, worktree-management, multi-agent-coordination]
13
13
  reads: [coding-standards, tdd, git-workflow]
14
14
  argument-hint: "<agent-name>"
15
15
  ---
@@ -90,7 +90,7 @@ Before writing any code, verify the worktree environment:
90
90
  - If on a feature branch with changes, redirect to `/scaffold:multi-agent-resume $ARGUMENTS`
91
91
 
92
92
  3. **Beads identity** (if `.beads/` exists)
93
- - `echo $BD_ACTOR` — should show `$ARGUMENTS`
93
+ - `echo $BEADS_ACTOR` — should show `$ARGUMENTS`
94
94
  - If not set, the worktree setup may be incomplete
95
95
 
96
96
  4. **Dependency check**
@@ -119,11 +119,13 @@ These rules are critical for multi-agent operation:
119
119
 
120
120
  **If Beads is configured** (`.beads/` exists):
121
121
  - Branch naming: `bd-<id>/<desc>`
122
- - Run `bd ready` to see available tasks
123
- - Pick the lowest-ID unblocked task
122
+ - Verify `$BEADS_ACTOR` is set per agent (echo it; bail if empty).
123
+ - Atomically claim the next ready task: `TASK=$(bd ready --claim --json | jq -r '.id')`
124
+ - This sets `assignee=$BEADS_ACTOR` and `status=in_progress` in a single round-trip — eliminates the race window where two agents both see the same "ready" task.
125
+ - If `bd ready --claim` returns no task, you're done — exit the loop.
124
126
  - Implement following the TDD workflow below
125
- - After PR is merged: `bd close <id> && bd sync`
126
- - Repeat with `bd ready` until no tasks remain
127
+ - After PR is merged: `bd close <id>`
128
+ - Repeat (`bd ready --claim --json`) until no tasks remain
127
129
 
128
130
  **Without Beads:**
129
131
  - Branch naming: `<type>/<desc>` (e.g., `feat/add-auth`)
@@ -174,8 +176,28 @@ For each task:
174
176
  - Fix any findings at or above `fix_threshold` before proceeding
175
177
 
176
178
  7. **Create PR**
179
+ - If Beads is configured, run the PR-readiness checklist first:
180
+ ```bash
181
+ if [ -d .beads ]; then
182
+ bd preflight
183
+ fi
184
+ ```
185
+ Fix any issues `bd preflight` flags before proceeding.
186
+ - **For 3+ parallel agents**, acquire the project's merge slot to serialize merge-time conflicts:
187
+ ```bash
188
+ if [ -d .beads ]; then
189
+ bd merge-slot acquire --wait # blocks if held; queues you in priority order
190
+ fi
191
+ ```
192
+ There is one merge slot per project; `--wait` blocks until you have it. Skip for single-agent or two-agent runs. See `content/knowledge/execution/multi-agent-coordination.md`.
177
193
  - Push the branch: `git push -u origin HEAD`
178
194
  - Create a pull request: `gh pr create`
195
+ - After the PR merges (or if you abandon the work), release the slot:
196
+ ```bash
197
+ if [ -d .beads ]; then
198
+ bd merge-slot release # holder verified via $BEADS_ACTOR
199
+ fi
200
+ ```
179
201
  - Include in the PR description: what was implemented, key decisions, files changed, agent name
180
202
  - Follow the PR workflow from `docs/git-workflow.md` or CLAUDE.md
181
203
 
@@ -210,10 +232,16 @@ For each task:
210
232
  - Resolve conflicts, re-run tests, force-push the branch
211
233
 
212
234
  **Another agent claimed the same task:**
213
- - If Beads: `bd sync` will reveal the conflict pick a different task
235
+ - If Beads: A `git pull` (and `bd dolt pull` if a Dolt remote is configured) brings the local DB current; run `bd doctor --fix` if anything looks stale.
214
236
  - Without Beads: check open PRs (`gh pr list`) for overlapping work
215
237
  - Move to the next available unblocked task
216
238
 
239
+ **A downstream task is blocked on a specific async condition (PR merge, workflow run, timer, human decision):**
240
+ - If Beads: create a gate that blocks the downstream task. The gate has an auto-generated ID. For a PR-merge blocker: `bd gate create --type=gh:pr --blocks <task-id> --await-id=<pr-number> --reason "..."`. For a human-resolved blocker: `bd gate create --blocks <task-id> --reason "..."` (defaults to `--type=human`). Capture the gate ID via `--json | jq -r '.id'` if you need to resolve manually later.
241
+ - The gated task disappears from `bd ready` until the gate resolves. `gh:pr` / `gh:run` / `timer` gates auto-resolve via watchers; `human` gates resolve via `bd gate resolve <gate-id>`.
242
+ - If multiple downstream tasks share one underlying blocker, create one gate per blocked task pointing at the same `--await-id`. For dependency-style blocking ("this task can't start until that task finishes"), use `bd dep add --blocks` instead.
243
+ - See `content/knowledge/execution/multi-agent-coordination.md` for the full pattern.
244
+
217
245
  **Dependency install fails after cleanup:**
218
246
  - `git clean -fd` may have removed generated files — re-run the full install sequence
219
247
  - If persistent, check if another agent's merge changed the dependency file
@@ -263,9 +263,16 @@ For each user story (or logical grouping of small stories):
263
263
  **If Beads:**
264
264
  ```bash
265
265
  bd create "US-XXX: <imperative title>" -p <priority>
266
- # Priority: 0=blocking release, 1=must-have, 2=should-have, 3=nice-to-have
266
+ # Priority: 0=blocking release, 1=must-have, 2=should-have, 3=nice-to-have, 4=backlog
267
267
  ```
268
268
 
269
+ For architectural decisions (ADRs), use the built-in `decision` type:
270
+ ```bash
271
+ bd create "Use Postgres over MySQL for X" -t decision -p 1
272
+ ```
273
+
274
+ If your project enables custom types via `bd config set types.custom '["story","milestone","spike"]'`, you can also use `-t story` for user-story-sized work and `-t milestone` for releases.
275
+
269
276
  **Without Beads:** Document tasks as a structured list in `docs/implementation-plan.md` with title, priority, dependencies, and description.
270
277
 
271
278
  #### Task Titles and Descriptions
@@ -157,6 +157,7 @@ Assign priority using Beads conventions:
157
157
  - **P1** — Must-have for current milestone
158
158
  - **P2** — Should-have (default for most quick tasks)
159
159
  - **P3** — Nice-to-have, backlog
160
+ - **P4** — Backlog / future-consideration (lowest priority; effectively deferred)
160
161
 
161
162
  #### Acceptance Criteria
162
163
  Write 2-5 testable acceptance criteria in Given/When/Then format:
@@ -202,6 +203,14 @@ bd create "type(scope): description" -p <priority>
202
203
  # Example: bd create "fix(auth): prevent duplicate session creation on rapid re-login" -p 2
203
204
  ```
204
205
 
206
+ If this task was discovered while doing other work, link the lineage with `discovered-from`:
207
+ ```bash
208
+ bd create "fix(parser): handle empty input edge case" \
209
+ --type bug -p 2 \
210
+ --deps discovered-from:$CURRENT_TASK_ID
211
+ ```
212
+ The new task appears in `bd ready` normally; `discovered-from` is metadata for traceability and does NOT block readiness.
213
+
205
214
  **Without Beads:** Document the task inline and proceed directly to implementation.
206
215
 
207
216
  Then set the task description with the full context from Phase 2. Include all of:
@@ -98,10 +98,10 @@ Recover your context by checking the current state of work:
98
98
 
99
99
  **If Beads is configured** (`.beads/` exists):
100
100
  - `bd list` — check for tasks with `in_progress` status
101
- - If a PR shows as merged, close the corresponding task: `bd close <id> && bd sync`
101
+ - If a PR shows as merged, close the corresponding task: `bd close <id>`
102
102
  - If there is in-progress work, finish it (see "Resume In-Progress Work" below)
103
- - Otherwise, start fresh with `bd ready` to find the next available task
104
- - Continue working until `bd ready` shows no available tasks
103
+ - Otherwise, atomically claim the next ready task: `TASK=$(bd ready --claim --json | jq -r '.id')` (sets `assignee=$BEADS_ACTOR` + `status=in_progress`; no race window).
104
+ - Continue working until `bd ready --claim --json` returns no task.
105
105
 
106
106
  **Without Beads:**
107
107
  - Read `docs/implementation-playbook.md` as the primary task reference.
@@ -148,6 +148,13 @@ Once in-progress work is complete (or if there was none):
148
148
  - Fix any findings at or above `fix_threshold` before proceeding
149
149
 
150
150
  3. **Create PR** (if not already created for in-progress work)
151
+ - If Beads is configured, run the PR-readiness checklist first:
152
+ ```bash
153
+ if [ -d .beads ]; then
154
+ bd preflight
155
+ fi
156
+ ```
157
+ Fix any issues `bd preflight` flags before proceeding.
151
158
  - Push the branch: `git push -u origin HEAD`
152
159
  - Create a pull request: `gh pr create`
153
160
  - Follow the PR workflow from `docs/git-workflow.md` or CLAUDE.md
@@ -187,7 +194,7 @@ Once in-progress work is complete (or if there was none):
187
194
  - Push updates and re-request review
188
195
 
189
196
  **Task was completed by another agent (multi-agent overlap):**
190
- - If Beads: `bd sync` will show updated task states
197
+ - If Beads: A `git pull` (and `bd dolt pull` if a Dolt remote is configured) brings the local DB current; run `bd doctor --fix` if anything looks stale.
191
198
  - Without Beads: check the plan/playbook for recently completed tasks
192
199
  - Skip to the next available task
193
200
 
@@ -101,11 +101,13 @@ Before writing any code, verify the environment is ready:
101
101
  Check if `.beads/` directory exists.
102
102
 
103
103
  **If Beads is configured:**
104
- - Run `bd ready` to see available tasks
105
- - Pick the lowest-ID unblocked task
104
+ - Atomically claim the next ready task: `TASK=$(bd ready --claim --json | jq -r '.id')`
105
+ - This sets `assignee=$BEADS_ACTOR` (or your git user.name) and `status=in_progress` in a single round-trip no race window vs other agents.
106
+ - If you need a specific task by ID instead, use `bd update <id> --claim`.
107
+ - If `bd ready --claim` returns no task, you're done — exit the loop.
106
108
  - Implement following the TDD workflow below
107
- - After PR is merged, run `bd close <id> && bd sync`
108
- - Repeat with `bd ready` until no tasks remain
109
+ - After PR is merged, run `bd close <id>`
110
+ - Repeat (`bd ready --claim --json`) until no tasks remain
109
111
 
110
112
  **Without Beads:**
111
113
  1. Read `docs/implementation-playbook.md` as the primary task execution reference.
@@ -153,6 +155,13 @@ For each task:
153
155
  - Fix any findings at or above `fix_threshold` before proceeding
154
156
 
155
157
  7. **Create PR**
158
+ - If Beads is configured, run the PR-readiness checklist first:
159
+ ```bash
160
+ if [ -d .beads ]; then
161
+ bd preflight
162
+ fi
163
+ ```
164
+ Fix any issues `bd preflight` flags before proceeding. (Note: do NOT use `[ -d .beads ] && bd preflight` — that returns exit-1 when `.beads/` is absent and breaks any caller running under `set -e`.)
156
165
  - Push the branch: `git push -u origin HEAD`
157
166
  - Create a pull request: `gh pr create`
158
167
  - Include in the PR description: what was implemented, key decisions, files changed
@@ -37,7 +37,7 @@ inconsistent command formats. Fix all issues found.
37
37
 
38
38
  ## Quality Criteria
39
39
  - (mvp) CLAUDE.md contains complete workflow (9 steps + AI review step 4.5)
40
- - (mvp) Commit format is consistent everywhere (If Beads: [BD-<id>] type(scope): description. Without Beads: type(scope): description)
40
+ - (mvp) Commit format is consistent everywhere (If Beads: [bd-<id>] type(scope): description. Without Beads: type(scope): description)
41
41
  - (mvp) Branch naming is consistent everywhere (If Beads: bd-<task-id>/<short-desc>. Without Beads: <type>/<short-desc>)
42
42
  - (mvp) PR workflow includes all 8 sub-steps with --delete-branch flag
43
43
  - (mvp) If Beads: task closure uses bd close (not bd update --status completed)
@@ -34,11 +34,11 @@ parallel agents, CI pipeline, branch protection, and conflict prevention rules.
34
34
 
35
35
  ## Quality Criteria
36
36
  - (mvp) Branch naming format is consistent (Beads: bd-<task-id>/<desc>. Non-Beads: <type>/<desc>)
37
- - (mvp) Commit format is consistent (Beads: [BD-<id>] type(scope): desc. Non-Beads: type(scope): desc)
37
+ - (mvp) Commit format is consistent (Beads: [bd-<id>] type(scope): desc. Non-Beads: type(scope): desc)
38
38
  - (deep) PR workflow includes all 8 sub-steps (commit, AI review, rebase, push, create,
39
39
  auto-merge with --delete-branch, watch CI, confirm merge)
40
40
  - (deep) Worktree script creates permanent worktrees with workspace branches
41
- - (deep) If Beads: BD_ACTOR environment variable documented for agent identity
41
+ - (deep) If Beads: BEADS_ACTOR environment variable documented for agent identity
42
42
  - (deep) CI workflow job name matches branch protection context
43
43
  - (mvp) Branch cleanup documented for both single-agent and worktree-agent variants
44
44
  - (deep) Agent crash recovery procedure documented