@wazir-dev/cli 1.0.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 (629) hide show
  1. package/AGENTS.md +111 -0
  2. package/CHANGELOG.md +14 -0
  3. package/CONTRIBUTING.md +101 -0
  4. package/LICENSE +21 -0
  5. package/README.md +314 -0
  6. package/assets/composition-engine.mmd +34 -0
  7. package/assets/demo-script.sh +17 -0
  8. package/assets/logo-dark.svg +14 -0
  9. package/assets/logo.svg +14 -0
  10. package/assets/pipeline.mmd +39 -0
  11. package/assets/record-demo.sh +51 -0
  12. package/docs/README.md +51 -0
  13. package/docs/adapters/context-mode.md +60 -0
  14. package/docs/concepts/architecture.md +87 -0
  15. package/docs/concepts/artifact-model.md +60 -0
  16. package/docs/concepts/composition-engine.md +36 -0
  17. package/docs/concepts/indexing-and-recall.md +160 -0
  18. package/docs/concepts/observability.md +41 -0
  19. package/docs/concepts/roles-and-workflows.md +59 -0
  20. package/docs/concepts/terminology-policy.md +27 -0
  21. package/docs/getting-started/01-installation.md +78 -0
  22. package/docs/getting-started/02-first-run.md +102 -0
  23. package/docs/getting-started/03-adding-to-project.md +15 -0
  24. package/docs/getting-started/04-host-setup.md +15 -0
  25. package/docs/guides/ci-integration.md +15 -0
  26. package/docs/guides/creating-skills.md +15 -0
  27. package/docs/guides/expertise-module-authoring.md +15 -0
  28. package/docs/guides/hook-development.md +15 -0
  29. package/docs/guides/memory-and-learnings.md +34 -0
  30. package/docs/guides/multi-host-export.md +15 -0
  31. package/docs/guides/troubleshooting.md +101 -0
  32. package/docs/guides/writing-custom-roles.md +15 -0
  33. package/docs/plans/2026-03-15-cli-pipeline-integration-design.md +592 -0
  34. package/docs/plans/2026-03-15-cli-pipeline-integration-plan.md +598 -0
  35. package/docs/plans/2026-03-15-docs-enforcement-plan.md +238 -0
  36. package/docs/readmes/INDEX.md +99 -0
  37. package/docs/readmes/features/expertise/README.md +171 -0
  38. package/docs/readmes/features/exports/README.md +222 -0
  39. package/docs/readmes/features/hooks/README.md +103 -0
  40. package/docs/readmes/features/hooks/loop-cap-guard.md +133 -0
  41. package/docs/readmes/features/hooks/post-tool-capture.md +121 -0
  42. package/docs/readmes/features/hooks/post-tool-lint.md +130 -0
  43. package/docs/readmes/features/hooks/pre-compact-summary.md +122 -0
  44. package/docs/readmes/features/hooks/pre-tool-capture-route.md +100 -0
  45. package/docs/readmes/features/hooks/protected-path-write-guard.md +128 -0
  46. package/docs/readmes/features/hooks/session-start.md +119 -0
  47. package/docs/readmes/features/hooks/stop-handoff-harvest.md +125 -0
  48. package/docs/readmes/features/roles/README.md +157 -0
  49. package/docs/readmes/features/roles/clarifier.md +152 -0
  50. package/docs/readmes/features/roles/content-author.md +190 -0
  51. package/docs/readmes/features/roles/designer.md +193 -0
  52. package/docs/readmes/features/roles/executor.md +184 -0
  53. package/docs/readmes/features/roles/learner.md +210 -0
  54. package/docs/readmes/features/roles/planner.md +182 -0
  55. package/docs/readmes/features/roles/researcher.md +164 -0
  56. package/docs/readmes/features/roles/reviewer.md +184 -0
  57. package/docs/readmes/features/roles/specifier.md +162 -0
  58. package/docs/readmes/features/roles/verifier.md +215 -0
  59. package/docs/readmes/features/schemas/README.md +178 -0
  60. package/docs/readmes/features/skills/README.md +63 -0
  61. package/docs/readmes/features/skills/brainstorming.md +96 -0
  62. package/docs/readmes/features/skills/debugging.md +148 -0
  63. package/docs/readmes/features/skills/design.md +120 -0
  64. package/docs/readmes/features/skills/prepare-next.md +109 -0
  65. package/docs/readmes/features/skills/run-audit.md +159 -0
  66. package/docs/readmes/features/skills/scan-project.md +109 -0
  67. package/docs/readmes/features/skills/self-audit.md +176 -0
  68. package/docs/readmes/features/skills/tdd.md +137 -0
  69. package/docs/readmes/features/skills/using-skills.md +92 -0
  70. package/docs/readmes/features/skills/verification.md +120 -0
  71. package/docs/readmes/features/skills/writing-plans.md +104 -0
  72. package/docs/readmes/features/tooling/README.md +320 -0
  73. package/docs/readmes/features/workflows/README.md +186 -0
  74. package/docs/readmes/features/workflows/author.md +181 -0
  75. package/docs/readmes/features/workflows/clarify.md +154 -0
  76. package/docs/readmes/features/workflows/design-review.md +171 -0
  77. package/docs/readmes/features/workflows/design.md +169 -0
  78. package/docs/readmes/features/workflows/discover.md +162 -0
  79. package/docs/readmes/features/workflows/execute.md +173 -0
  80. package/docs/readmes/features/workflows/learn.md +167 -0
  81. package/docs/readmes/features/workflows/plan-review.md +165 -0
  82. package/docs/readmes/features/workflows/plan.md +170 -0
  83. package/docs/readmes/features/workflows/prepare-next.md +167 -0
  84. package/docs/readmes/features/workflows/review.md +169 -0
  85. package/docs/readmes/features/workflows/run-audit.md +191 -0
  86. package/docs/readmes/features/workflows/spec-challenge.md +159 -0
  87. package/docs/readmes/features/workflows/specify.md +160 -0
  88. package/docs/readmes/features/workflows/verify.md +177 -0
  89. package/docs/readmes/packages/README.md +50 -0
  90. package/docs/readmes/packages/ajv.md +117 -0
  91. package/docs/readmes/packages/context-mode.md +118 -0
  92. package/docs/readmes/packages/gray-matter.md +116 -0
  93. package/docs/readmes/packages/node-test.md +137 -0
  94. package/docs/readmes/packages/yaml.md +112 -0
  95. package/docs/reference/configuration-reference.md +159 -0
  96. package/docs/reference/expertise-index.md +52 -0
  97. package/docs/reference/git-flow.md +43 -0
  98. package/docs/reference/hooks.md +87 -0
  99. package/docs/reference/host-exports.md +50 -0
  100. package/docs/reference/launch-checklist.md +172 -0
  101. package/docs/reference/marketplace-listings.md +76 -0
  102. package/docs/reference/release-process.md +34 -0
  103. package/docs/reference/roles-reference.md +77 -0
  104. package/docs/reference/skills.md +33 -0
  105. package/docs/reference/templates.md +29 -0
  106. package/docs/reference/tooling-cli.md +94 -0
  107. package/docs/truth-claims.yaml +222 -0
  108. package/expertise/PROGRESS.md +63 -0
  109. package/expertise/README.md +18 -0
  110. package/expertise/antipatterns/PROGRESS.md +56 -0
  111. package/expertise/antipatterns/backend/api-design-antipatterns.md +1271 -0
  112. package/expertise/antipatterns/backend/auth-antipatterns.md +1195 -0
  113. package/expertise/antipatterns/backend/caching-antipatterns.md +622 -0
  114. package/expertise/antipatterns/backend/database-antipatterns.md +1038 -0
  115. package/expertise/antipatterns/backend/index.md +24 -0
  116. package/expertise/antipatterns/backend/microservices-antipatterns.md +850 -0
  117. package/expertise/antipatterns/code/architecture-antipatterns.md +919 -0
  118. package/expertise/antipatterns/code/async-antipatterns.md +622 -0
  119. package/expertise/antipatterns/code/code-smells.md +1186 -0
  120. package/expertise/antipatterns/code/dependency-antipatterns.md +1209 -0
  121. package/expertise/antipatterns/code/error-handling-antipatterns.md +1360 -0
  122. package/expertise/antipatterns/code/index.md +27 -0
  123. package/expertise/antipatterns/code/naming-and-abstraction.md +1118 -0
  124. package/expertise/antipatterns/code/state-management-antipatterns.md +1076 -0
  125. package/expertise/antipatterns/code/testing-antipatterns.md +1053 -0
  126. package/expertise/antipatterns/design/accessibility-antipatterns.md +1136 -0
  127. package/expertise/antipatterns/design/dark-patterns.md +1121 -0
  128. package/expertise/antipatterns/design/index.md +22 -0
  129. package/expertise/antipatterns/design/ui-antipatterns.md +1202 -0
  130. package/expertise/antipatterns/design/ux-antipatterns.md +680 -0
  131. package/expertise/antipatterns/frontend/css-layout-antipatterns.md +691 -0
  132. package/expertise/antipatterns/frontend/flutter-antipatterns.md +1827 -0
  133. package/expertise/antipatterns/frontend/index.md +23 -0
  134. package/expertise/antipatterns/frontend/mobile-antipatterns.md +573 -0
  135. package/expertise/antipatterns/frontend/react-antipatterns.md +1128 -0
  136. package/expertise/antipatterns/frontend/spa-antipatterns.md +1235 -0
  137. package/expertise/antipatterns/index.md +31 -0
  138. package/expertise/antipatterns/performance/index.md +20 -0
  139. package/expertise/antipatterns/performance/performance-antipatterns.md +1013 -0
  140. package/expertise/antipatterns/performance/premature-optimization.md +623 -0
  141. package/expertise/antipatterns/performance/scaling-antipatterns.md +785 -0
  142. package/expertise/antipatterns/process/ai-coding-antipatterns.md +853 -0
  143. package/expertise/antipatterns/process/code-review-antipatterns.md +656 -0
  144. package/expertise/antipatterns/process/deployment-antipatterns.md +920 -0
  145. package/expertise/antipatterns/process/index.md +23 -0
  146. package/expertise/antipatterns/process/technical-debt-antipatterns.md +647 -0
  147. package/expertise/antipatterns/security/index.md +20 -0
  148. package/expertise/antipatterns/security/secrets-antipatterns.md +849 -0
  149. package/expertise/antipatterns/security/security-theater.md +843 -0
  150. package/expertise/antipatterns/security/vulnerability-patterns.md +801 -0
  151. package/expertise/architecture/PROGRESS.md +70 -0
  152. package/expertise/architecture/data/caching-architecture.md +671 -0
  153. package/expertise/architecture/data/data-consistency.md +574 -0
  154. package/expertise/architecture/data/data-modeling.md +536 -0
  155. package/expertise/architecture/data/event-streams-and-queues.md +634 -0
  156. package/expertise/architecture/data/index.md +25 -0
  157. package/expertise/architecture/data/search-architecture.md +663 -0
  158. package/expertise/architecture/data/sql-vs-nosql.md +708 -0
  159. package/expertise/architecture/decisions/architecture-decision-records.md +640 -0
  160. package/expertise/architecture/decisions/build-vs-buy.md +616 -0
  161. package/expertise/architecture/decisions/index.md +23 -0
  162. package/expertise/architecture/decisions/monolith-to-microservices.md +790 -0
  163. package/expertise/architecture/decisions/technology-selection.md +616 -0
  164. package/expertise/architecture/distributed/cap-theorem-and-tradeoffs.md +800 -0
  165. package/expertise/architecture/distributed/circuit-breaker-bulkhead.md +741 -0
  166. package/expertise/architecture/distributed/consensus-and-coordination.md +796 -0
  167. package/expertise/architecture/distributed/distributed-systems-fundamentals.md +564 -0
  168. package/expertise/architecture/distributed/idempotency-and-retry.md +796 -0
  169. package/expertise/architecture/distributed/index.md +25 -0
  170. package/expertise/architecture/distributed/saga-pattern.md +797 -0
  171. package/expertise/architecture/foundations/architectural-thinking.md +460 -0
  172. package/expertise/architecture/foundations/coupling-and-cohesion.md +770 -0
  173. package/expertise/architecture/foundations/design-principles-solid.md +649 -0
  174. package/expertise/architecture/foundations/domain-driven-design.md +719 -0
  175. package/expertise/architecture/foundations/index.md +25 -0
  176. package/expertise/architecture/foundations/separation-of-concerns.md +472 -0
  177. package/expertise/architecture/foundations/twelve-factor-app.md +797 -0
  178. package/expertise/architecture/index.md +34 -0
  179. package/expertise/architecture/integration/api-design-graphql.md +638 -0
  180. package/expertise/architecture/integration/api-design-grpc.md +804 -0
  181. package/expertise/architecture/integration/api-design-rest.md +892 -0
  182. package/expertise/architecture/integration/index.md +25 -0
  183. package/expertise/architecture/integration/third-party-integration.md +795 -0
  184. package/expertise/architecture/integration/webhooks-and-callbacks.md +1152 -0
  185. package/expertise/architecture/integration/websockets-realtime.md +791 -0
  186. package/expertise/architecture/mobile-architecture/index.md +22 -0
  187. package/expertise/architecture/mobile-architecture/mobile-app-architecture.md +780 -0
  188. package/expertise/architecture/mobile-architecture/mobile-backend-for-frontend.md +670 -0
  189. package/expertise/architecture/mobile-architecture/offline-first.md +719 -0
  190. package/expertise/architecture/mobile-architecture/push-and-sync.md +782 -0
  191. package/expertise/architecture/patterns/cqrs-event-sourcing.md +717 -0
  192. package/expertise/architecture/patterns/event-driven.md +797 -0
  193. package/expertise/architecture/patterns/hexagonal-clean-architecture.md +870 -0
  194. package/expertise/architecture/patterns/index.md +27 -0
  195. package/expertise/architecture/patterns/layered-architecture.md +736 -0
  196. package/expertise/architecture/patterns/microservices.md +753 -0
  197. package/expertise/architecture/patterns/modular-monolith.md +692 -0
  198. package/expertise/architecture/patterns/monolith.md +626 -0
  199. package/expertise/architecture/patterns/plugin-architecture.md +735 -0
  200. package/expertise/architecture/patterns/serverless.md +780 -0
  201. package/expertise/architecture/scaling/database-scaling.md +615 -0
  202. package/expertise/architecture/scaling/feature-flags-and-rollouts.md +757 -0
  203. package/expertise/architecture/scaling/horizontal-vs-vertical.md +606 -0
  204. package/expertise/architecture/scaling/index.md +24 -0
  205. package/expertise/architecture/scaling/multi-tenancy.md +800 -0
  206. package/expertise/architecture/scaling/stateless-design.md +787 -0
  207. package/expertise/backend/embedded-firmware.md +625 -0
  208. package/expertise/backend/go.md +853 -0
  209. package/expertise/backend/index.md +24 -0
  210. package/expertise/backend/java-spring.md +448 -0
  211. package/expertise/backend/node-typescript.md +625 -0
  212. package/expertise/backend/python-fastapi.md +724 -0
  213. package/expertise/backend/rust.md +458 -0
  214. package/expertise/backend/solidity.md +711 -0
  215. package/expertise/composition-map.yaml +443 -0
  216. package/expertise/content/foundations/content-modeling.md +395 -0
  217. package/expertise/content/foundations/editorial-standards.md +449 -0
  218. package/expertise/content/foundations/index.md +24 -0
  219. package/expertise/content/foundations/microcopy.md +455 -0
  220. package/expertise/content/foundations/terminology-governance.md +509 -0
  221. package/expertise/content/index.md +34 -0
  222. package/expertise/content/patterns/accessibility-copy.md +518 -0
  223. package/expertise/content/patterns/index.md +24 -0
  224. package/expertise/content/patterns/notification-content.md +433 -0
  225. package/expertise/content/patterns/sample-content.md +486 -0
  226. package/expertise/content/patterns/state-copy.md +439 -0
  227. package/expertise/design/PROGRESS.md +58 -0
  228. package/expertise/design/disciplines/dark-mode-theming.md +577 -0
  229. package/expertise/design/disciplines/design-systems.md +595 -0
  230. package/expertise/design/disciplines/index.md +25 -0
  231. package/expertise/design/disciplines/information-architecture.md +800 -0
  232. package/expertise/design/disciplines/interaction-design.md +788 -0
  233. package/expertise/design/disciplines/responsive-design.md +552 -0
  234. package/expertise/design/disciplines/usability-testing.md +516 -0
  235. package/expertise/design/disciplines/user-research.md +792 -0
  236. package/expertise/design/foundations/accessibility-design.md +796 -0
  237. package/expertise/design/foundations/color-theory.md +797 -0
  238. package/expertise/design/foundations/iconography.md +795 -0
  239. package/expertise/design/foundations/index.md +26 -0
  240. package/expertise/design/foundations/motion-and-animation.md +653 -0
  241. package/expertise/design/foundations/rtl-design.md +585 -0
  242. package/expertise/design/foundations/spacing-and-layout.md +607 -0
  243. package/expertise/design/foundations/typography.md +800 -0
  244. package/expertise/design/foundations/visual-hierarchy.md +761 -0
  245. package/expertise/design/index.md +32 -0
  246. package/expertise/design/patterns/authentication-flows.md +474 -0
  247. package/expertise/design/patterns/content-consumption.md +789 -0
  248. package/expertise/design/patterns/data-display.md +618 -0
  249. package/expertise/design/patterns/e-commerce.md +1494 -0
  250. package/expertise/design/patterns/feedback-and-states.md +642 -0
  251. package/expertise/design/patterns/forms-and-input.md +819 -0
  252. package/expertise/design/patterns/gamification.md +801 -0
  253. package/expertise/design/patterns/index.md +31 -0
  254. package/expertise/design/patterns/microinteractions.md +449 -0
  255. package/expertise/design/patterns/navigation.md +800 -0
  256. package/expertise/design/patterns/notifications.md +705 -0
  257. package/expertise/design/patterns/onboarding.md +700 -0
  258. package/expertise/design/patterns/search-and-filter.md +601 -0
  259. package/expertise/design/patterns/settings-and-preferences.md +768 -0
  260. package/expertise/design/patterns/social-and-community.md +748 -0
  261. package/expertise/design/platforms/desktop-native.md +612 -0
  262. package/expertise/design/platforms/index.md +25 -0
  263. package/expertise/design/platforms/mobile-android.md +825 -0
  264. package/expertise/design/platforms/mobile-cross-platform.md +983 -0
  265. package/expertise/design/platforms/mobile-ios.md +699 -0
  266. package/expertise/design/platforms/tablet.md +794 -0
  267. package/expertise/design/platforms/web-dashboard.md +790 -0
  268. package/expertise/design/platforms/web-responsive.md +550 -0
  269. package/expertise/design/psychology/behavioral-nudges.md +449 -0
  270. package/expertise/design/psychology/cognitive-load.md +1191 -0
  271. package/expertise/design/psychology/error-psychology.md +778 -0
  272. package/expertise/design/psychology/index.md +22 -0
  273. package/expertise/design/psychology/persuasive-design.md +736 -0
  274. package/expertise/design/psychology/user-mental-models.md +623 -0
  275. package/expertise/design/tooling/open-pencil.md +266 -0
  276. package/expertise/frontend/angular.md +1073 -0
  277. package/expertise/frontend/desktop-electron.md +546 -0
  278. package/expertise/frontend/flutter.md +782 -0
  279. package/expertise/frontend/index.md +27 -0
  280. package/expertise/frontend/native-android.md +409 -0
  281. package/expertise/frontend/native-ios.md +490 -0
  282. package/expertise/frontend/react-native.md +1160 -0
  283. package/expertise/frontend/react.md +808 -0
  284. package/expertise/frontend/vue.md +1089 -0
  285. package/expertise/humanize/domain-rules-code.md +79 -0
  286. package/expertise/humanize/domain-rules-content.md +67 -0
  287. package/expertise/humanize/domain-rules-technical-docs.md +56 -0
  288. package/expertise/humanize/index.md +35 -0
  289. package/expertise/humanize/self-audit-checklist.md +87 -0
  290. package/expertise/humanize/sentence-patterns.md +218 -0
  291. package/expertise/humanize/vocabulary-blacklist.md +105 -0
  292. package/expertise/i18n/PROGRESS.md +65 -0
  293. package/expertise/i18n/advanced/accessibility-and-i18n.md +28 -0
  294. package/expertise/i18n/advanced/bidirectional-text-algorithm.md +38 -0
  295. package/expertise/i18n/advanced/complex-scripts.md +30 -0
  296. package/expertise/i18n/advanced/performance-and-i18n.md +27 -0
  297. package/expertise/i18n/advanced/testing-i18n.md +28 -0
  298. package/expertise/i18n/content/content-adaptation.md +23 -0
  299. package/expertise/i18n/content/locale-specific-formatting.md +23 -0
  300. package/expertise/i18n/content/machine-translation-integration.md +28 -0
  301. package/expertise/i18n/content/translation-management.md +29 -0
  302. package/expertise/i18n/foundations/date-time-calendars.md +67 -0
  303. package/expertise/i18n/foundations/i18n-architecture.md +272 -0
  304. package/expertise/i18n/foundations/locale-and-language-tags.md +79 -0
  305. package/expertise/i18n/foundations/numbers-currency-units.md +61 -0
  306. package/expertise/i18n/foundations/pluralization-and-gender.md +109 -0
  307. package/expertise/i18n/foundations/string-externalization.md +236 -0
  308. package/expertise/i18n/foundations/text-direction-bidi.md +241 -0
  309. package/expertise/i18n/foundations/unicode-and-encoding.md +86 -0
  310. package/expertise/i18n/index.md +38 -0
  311. package/expertise/i18n/platform/backend-i18n.md +31 -0
  312. package/expertise/i18n/platform/flutter-i18n.md +148 -0
  313. package/expertise/i18n/platform/native-android-i18n.md +36 -0
  314. package/expertise/i18n/platform/native-ios-i18n.md +36 -0
  315. package/expertise/i18n/platform/react-i18n.md +103 -0
  316. package/expertise/i18n/platform/web-css-i18n.md +81 -0
  317. package/expertise/i18n/rtl/arabic-specific.md +175 -0
  318. package/expertise/i18n/rtl/hebrew-specific.md +149 -0
  319. package/expertise/i18n/rtl/rtl-animations-and-transitions.md +111 -0
  320. package/expertise/i18n/rtl/rtl-forms-and-input.md +161 -0
  321. package/expertise/i18n/rtl/rtl-fundamentals.md +211 -0
  322. package/expertise/i18n/rtl/rtl-icons-and-images.md +181 -0
  323. package/expertise/i18n/rtl/rtl-layout-mirroring.md +252 -0
  324. package/expertise/i18n/rtl/rtl-navigation-and-gestures.md +107 -0
  325. package/expertise/i18n/rtl/rtl-testing-and-qa.md +147 -0
  326. package/expertise/i18n/rtl/rtl-typography.md +160 -0
  327. package/expertise/index.md +113 -0
  328. package/expertise/index.yaml +216 -0
  329. package/expertise/infrastructure/cloud-aws.md +597 -0
  330. package/expertise/infrastructure/cloud-gcp.md +599 -0
  331. package/expertise/infrastructure/cybersecurity.md +816 -0
  332. package/expertise/infrastructure/database-mongodb.md +447 -0
  333. package/expertise/infrastructure/database-postgres.md +400 -0
  334. package/expertise/infrastructure/devops-cicd.md +787 -0
  335. package/expertise/infrastructure/index.md +27 -0
  336. package/expertise/performance/PROGRESS.md +50 -0
  337. package/expertise/performance/backend/api-latency.md +1204 -0
  338. package/expertise/performance/backend/background-jobs.md +506 -0
  339. package/expertise/performance/backend/connection-pooling.md +1209 -0
  340. package/expertise/performance/backend/database-query-optimization.md +515 -0
  341. package/expertise/performance/backend/index.md +23 -0
  342. package/expertise/performance/backend/rate-limiting-and-throttling.md +971 -0
  343. package/expertise/performance/foundations/algorithmic-complexity.md +954 -0
  344. package/expertise/performance/foundations/caching-strategies.md +489 -0
  345. package/expertise/performance/foundations/concurrency-and-parallelism.md +847 -0
  346. package/expertise/performance/foundations/index.md +24 -0
  347. package/expertise/performance/foundations/measuring-and-profiling.md +440 -0
  348. package/expertise/performance/foundations/memory-management.md +964 -0
  349. package/expertise/performance/foundations/performance-budgets.md +1314 -0
  350. package/expertise/performance/index.md +31 -0
  351. package/expertise/performance/infrastructure/auto-scaling.md +1059 -0
  352. package/expertise/performance/infrastructure/cdn-and-edge.md +1081 -0
  353. package/expertise/performance/infrastructure/index.md +22 -0
  354. package/expertise/performance/infrastructure/load-balancing.md +1081 -0
  355. package/expertise/performance/infrastructure/observability.md +1079 -0
  356. package/expertise/performance/mobile/index.md +23 -0
  357. package/expertise/performance/mobile/mobile-animations.md +544 -0
  358. package/expertise/performance/mobile/mobile-memory-battery.md +416 -0
  359. package/expertise/performance/mobile/mobile-network.md +452 -0
  360. package/expertise/performance/mobile/mobile-rendering.md +599 -0
  361. package/expertise/performance/mobile/mobile-startup-time.md +505 -0
  362. package/expertise/performance/platform-specific/flutter-performance.md +647 -0
  363. package/expertise/performance/platform-specific/index.md +22 -0
  364. package/expertise/performance/platform-specific/node-performance.md +1307 -0
  365. package/expertise/performance/platform-specific/postgres-performance.md +1366 -0
  366. package/expertise/performance/platform-specific/react-performance.md +1403 -0
  367. package/expertise/performance/web/bundle-optimization.md +1239 -0
  368. package/expertise/performance/web/image-and-media.md +636 -0
  369. package/expertise/performance/web/index.md +24 -0
  370. package/expertise/performance/web/network-optimization.md +1133 -0
  371. package/expertise/performance/web/rendering-performance.md +1098 -0
  372. package/expertise/performance/web/ssr-and-hydration.md +918 -0
  373. package/expertise/performance/web/web-vitals.md +1374 -0
  374. package/expertise/quality/accessibility.md +985 -0
  375. package/expertise/quality/evidence-based-verification.md +499 -0
  376. package/expertise/quality/index.md +24 -0
  377. package/expertise/quality/ml-model-audit.md +614 -0
  378. package/expertise/quality/performance.md +600 -0
  379. package/expertise/quality/testing-api.md +891 -0
  380. package/expertise/quality/testing-mobile.md +496 -0
  381. package/expertise/quality/testing-web.md +849 -0
  382. package/expertise/security/PROGRESS.md +54 -0
  383. package/expertise/security/agentic-identity.md +540 -0
  384. package/expertise/security/compliance-frameworks.md +601 -0
  385. package/expertise/security/data/data-encryption.md +364 -0
  386. package/expertise/security/data/data-privacy-gdpr.md +692 -0
  387. package/expertise/security/data/database-security.md +1171 -0
  388. package/expertise/security/data/index.md +22 -0
  389. package/expertise/security/data/pii-handling.md +531 -0
  390. package/expertise/security/foundations/authentication.md +1041 -0
  391. package/expertise/security/foundations/authorization.md +603 -0
  392. package/expertise/security/foundations/cryptography.md +1001 -0
  393. package/expertise/security/foundations/index.md +25 -0
  394. package/expertise/security/foundations/owasp-top-10.md +1354 -0
  395. package/expertise/security/foundations/secrets-management.md +1217 -0
  396. package/expertise/security/foundations/secure-sdlc.md +700 -0
  397. package/expertise/security/foundations/supply-chain-security.md +698 -0
  398. package/expertise/security/index.md +31 -0
  399. package/expertise/security/infrastructure/cloud-security-aws.md +1296 -0
  400. package/expertise/security/infrastructure/cloud-security-gcp.md +1376 -0
  401. package/expertise/security/infrastructure/container-security.md +721 -0
  402. package/expertise/security/infrastructure/incident-response.md +1295 -0
  403. package/expertise/security/infrastructure/index.md +24 -0
  404. package/expertise/security/infrastructure/logging-and-monitoring.md +1618 -0
  405. package/expertise/security/infrastructure/network-security.md +1337 -0
  406. package/expertise/security/mobile/index.md +23 -0
  407. package/expertise/security/mobile/mobile-android-security.md +1218 -0
  408. package/expertise/security/mobile/mobile-binary-protection.md +1229 -0
  409. package/expertise/security/mobile/mobile-data-storage.md +1265 -0
  410. package/expertise/security/mobile/mobile-ios-security.md +1401 -0
  411. package/expertise/security/mobile/mobile-network-security.md +1520 -0
  412. package/expertise/security/smart-contract-security.md +594 -0
  413. package/expertise/security/testing/index.md +22 -0
  414. package/expertise/security/testing/penetration-testing.md +1258 -0
  415. package/expertise/security/testing/security-code-review.md +1765 -0
  416. package/expertise/security/testing/threat-modeling.md +1074 -0
  417. package/expertise/security/testing/vulnerability-scanning.md +1062 -0
  418. package/expertise/security/web/api-security.md +586 -0
  419. package/expertise/security/web/cors-and-headers.md +433 -0
  420. package/expertise/security/web/csrf.md +562 -0
  421. package/expertise/security/web/file-upload.md +1477 -0
  422. package/expertise/security/web/index.md +25 -0
  423. package/expertise/security/web/injection.md +1375 -0
  424. package/expertise/security/web/session-management.md +1101 -0
  425. package/expertise/security/web/xss.md +1158 -0
  426. package/exports/README.md +17 -0
  427. package/exports/hosts/claude/.claude/agents/clarifier.md +42 -0
  428. package/exports/hosts/claude/.claude/agents/content-author.md +63 -0
  429. package/exports/hosts/claude/.claude/agents/designer.md +55 -0
  430. package/exports/hosts/claude/.claude/agents/executor.md +55 -0
  431. package/exports/hosts/claude/.claude/agents/learner.md +51 -0
  432. package/exports/hosts/claude/.claude/agents/planner.md +53 -0
  433. package/exports/hosts/claude/.claude/agents/researcher.md +43 -0
  434. package/exports/hosts/claude/.claude/agents/reviewer.md +54 -0
  435. package/exports/hosts/claude/.claude/agents/specifier.md +47 -0
  436. package/exports/hosts/claude/.claude/agents/verifier.md +71 -0
  437. package/exports/hosts/claude/.claude/commands/author.md +42 -0
  438. package/exports/hosts/claude/.claude/commands/clarify.md +38 -0
  439. package/exports/hosts/claude/.claude/commands/design-review.md +46 -0
  440. package/exports/hosts/claude/.claude/commands/design.md +44 -0
  441. package/exports/hosts/claude/.claude/commands/discover.md +37 -0
  442. package/exports/hosts/claude/.claude/commands/execute.md +48 -0
  443. package/exports/hosts/claude/.claude/commands/learn.md +38 -0
  444. package/exports/hosts/claude/.claude/commands/plan-review.md +42 -0
  445. package/exports/hosts/claude/.claude/commands/plan.md +39 -0
  446. package/exports/hosts/claude/.claude/commands/prepare-next.md +37 -0
  447. package/exports/hosts/claude/.claude/commands/review.md +40 -0
  448. package/exports/hosts/claude/.claude/commands/run-audit.md +41 -0
  449. package/exports/hosts/claude/.claude/commands/spec-challenge.md +41 -0
  450. package/exports/hosts/claude/.claude/commands/specify.md +38 -0
  451. package/exports/hosts/claude/.claude/commands/verify.md +37 -0
  452. package/exports/hosts/claude/.claude/settings.json +34 -0
  453. package/exports/hosts/claude/CLAUDE.md +19 -0
  454. package/exports/hosts/claude/export.manifest.json +38 -0
  455. package/exports/hosts/claude/host-package.json +67 -0
  456. package/exports/hosts/codex/AGENTS.md +19 -0
  457. package/exports/hosts/codex/export.manifest.json +38 -0
  458. package/exports/hosts/codex/host-package.json +41 -0
  459. package/exports/hosts/cursor/.cursor/hooks.json +16 -0
  460. package/exports/hosts/cursor/.cursor/rules/wazir-core.mdc +19 -0
  461. package/exports/hosts/cursor/export.manifest.json +38 -0
  462. package/exports/hosts/cursor/host-package.json +42 -0
  463. package/exports/hosts/gemini/GEMINI.md +19 -0
  464. package/exports/hosts/gemini/export.manifest.json +38 -0
  465. package/exports/hosts/gemini/host-package.json +41 -0
  466. package/hooks/README.md +18 -0
  467. package/hooks/definitions/loop_cap_guard.yaml +21 -0
  468. package/hooks/definitions/post_tool_capture.yaml +24 -0
  469. package/hooks/definitions/pre_compact_summary.yaml +19 -0
  470. package/hooks/definitions/pre_tool_capture_route.yaml +19 -0
  471. package/hooks/definitions/protected_path_write_guard.yaml +19 -0
  472. package/hooks/definitions/session_start.yaml +19 -0
  473. package/hooks/definitions/stop_handoff_harvest.yaml +20 -0
  474. package/hooks/loop-cap-guard +17 -0
  475. package/hooks/post-tool-lint +36 -0
  476. package/hooks/protected-path-write-guard +17 -0
  477. package/hooks/session-start +41 -0
  478. package/llms-full.txt +2355 -0
  479. package/llms.txt +43 -0
  480. package/package.json +79 -0
  481. package/roles/README.md +20 -0
  482. package/roles/clarifier.md +42 -0
  483. package/roles/content-author.md +63 -0
  484. package/roles/designer.md +55 -0
  485. package/roles/executor.md +55 -0
  486. package/roles/learner.md +51 -0
  487. package/roles/planner.md +53 -0
  488. package/roles/researcher.md +43 -0
  489. package/roles/reviewer.md +54 -0
  490. package/roles/specifier.md +47 -0
  491. package/roles/verifier.md +71 -0
  492. package/schemas/README.md +24 -0
  493. package/schemas/accepted-learning.schema.json +20 -0
  494. package/schemas/author-artifact.schema.json +156 -0
  495. package/schemas/clarification.schema.json +19 -0
  496. package/schemas/design-artifact.schema.json +80 -0
  497. package/schemas/docs-claim.schema.json +18 -0
  498. package/schemas/export-manifest.schema.json +20 -0
  499. package/schemas/hook.schema.json +67 -0
  500. package/schemas/host-export-package.schema.json +18 -0
  501. package/schemas/implementation-plan.schema.json +19 -0
  502. package/schemas/proposed-learning.schema.json +19 -0
  503. package/schemas/research.schema.json +18 -0
  504. package/schemas/review.schema.json +29 -0
  505. package/schemas/run-manifest.schema.json +18 -0
  506. package/schemas/spec-challenge.schema.json +18 -0
  507. package/schemas/spec.schema.json +20 -0
  508. package/schemas/usage.schema.json +102 -0
  509. package/schemas/verification-proof.schema.json +29 -0
  510. package/schemas/wazir-manifest.schema.json +173 -0
  511. package/skills/README.md +40 -0
  512. package/skills/brainstorming/SKILL.md +77 -0
  513. package/skills/debugging/SKILL.md +50 -0
  514. package/skills/design/SKILL.md +61 -0
  515. package/skills/dispatching-parallel-agents/SKILL.md +128 -0
  516. package/skills/executing-plans/SKILL.md +70 -0
  517. package/skills/finishing-a-development-branch/SKILL.md +169 -0
  518. package/skills/humanize/SKILL.md +123 -0
  519. package/skills/init-pipeline/SKILL.md +124 -0
  520. package/skills/prepare-next/SKILL.md +20 -0
  521. package/skills/receiving-code-review/SKILL.md +123 -0
  522. package/skills/requesting-code-review/SKILL.md +105 -0
  523. package/skills/requesting-code-review/code-reviewer.md +108 -0
  524. package/skills/run-audit/SKILL.md +197 -0
  525. package/skills/scan-project/SKILL.md +41 -0
  526. package/skills/self-audit/SKILL.md +153 -0
  527. package/skills/subagent-driven-development/SKILL.md +154 -0
  528. package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
  529. package/skills/subagent-driven-development/implementer-prompt.md +102 -0
  530. package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
  531. package/skills/tdd/SKILL.md +23 -0
  532. package/skills/using-git-worktrees/SKILL.md +163 -0
  533. package/skills/using-skills/SKILL.md +95 -0
  534. package/skills/verification/SKILL.md +22 -0
  535. package/skills/wazir/SKILL.md +463 -0
  536. package/skills/writing-plans/SKILL.md +30 -0
  537. package/skills/writing-skills/SKILL.md +157 -0
  538. package/skills/writing-skills/anthropic-best-practices.md +122 -0
  539. package/skills/writing-skills/persuasion-principles.md +50 -0
  540. package/templates/README.md +20 -0
  541. package/templates/artifacts/README.md +10 -0
  542. package/templates/artifacts/accepted-learning.md +19 -0
  543. package/templates/artifacts/accepted-learning.template.json +12 -0
  544. package/templates/artifacts/author.md +74 -0
  545. package/templates/artifacts/author.template.json +19 -0
  546. package/templates/artifacts/clarification.md +21 -0
  547. package/templates/artifacts/clarification.template.json +12 -0
  548. package/templates/artifacts/execute-notes.md +19 -0
  549. package/templates/artifacts/implementation-plan.md +21 -0
  550. package/templates/artifacts/implementation-plan.template.json +11 -0
  551. package/templates/artifacts/learning-proposal.md +19 -0
  552. package/templates/artifacts/next-run-handoff.md +21 -0
  553. package/templates/artifacts/plan-review.md +19 -0
  554. package/templates/artifacts/proposed-learning.template.json +12 -0
  555. package/templates/artifacts/research.md +21 -0
  556. package/templates/artifacts/research.template.json +12 -0
  557. package/templates/artifacts/review-findings.md +19 -0
  558. package/templates/artifacts/review.template.json +11 -0
  559. package/templates/artifacts/run-manifest.template.json +8 -0
  560. package/templates/artifacts/spec-challenge.md +19 -0
  561. package/templates/artifacts/spec-challenge.template.json +11 -0
  562. package/templates/artifacts/spec.md +21 -0
  563. package/templates/artifacts/spec.template.json +12 -0
  564. package/templates/artifacts/verification-proof.md +19 -0
  565. package/templates/artifacts/verification-proof.template.json +11 -0
  566. package/templates/examples/accepted-learning.example.json +14 -0
  567. package/templates/examples/author.example.json +152 -0
  568. package/templates/examples/clarification.example.json +15 -0
  569. package/templates/examples/docs-claim.example.json +8 -0
  570. package/templates/examples/export-manifest.example.json +7 -0
  571. package/templates/examples/host-export-package.example.json +11 -0
  572. package/templates/examples/implementation-plan.example.json +17 -0
  573. package/templates/examples/proposed-learning.example.json +13 -0
  574. package/templates/examples/research.example.json +15 -0
  575. package/templates/examples/research.example.md +6 -0
  576. package/templates/examples/review.example.json +17 -0
  577. package/templates/examples/run-manifest.example.json +9 -0
  578. package/templates/examples/spec-challenge.example.json +14 -0
  579. package/templates/examples/spec.example.json +21 -0
  580. package/templates/examples/verification-proof.example.json +21 -0
  581. package/templates/examples/wazir-manifest.example.yaml +65 -0
  582. package/templates/task-definition-schema.md +99 -0
  583. package/tooling/README.md +20 -0
  584. package/tooling/src/adapters/context-mode.js +50 -0
  585. package/tooling/src/capture/command.js +376 -0
  586. package/tooling/src/capture/store.js +99 -0
  587. package/tooling/src/capture/usage.js +270 -0
  588. package/tooling/src/checks/branches.js +50 -0
  589. package/tooling/src/checks/brand-truth.js +110 -0
  590. package/tooling/src/checks/changelog.js +231 -0
  591. package/tooling/src/checks/command-registry.js +36 -0
  592. package/tooling/src/checks/commits.js +102 -0
  593. package/tooling/src/checks/docs-drift.js +103 -0
  594. package/tooling/src/checks/docs-truth.js +201 -0
  595. package/tooling/src/checks/runtime-surface.js +156 -0
  596. package/tooling/src/cli.js +116 -0
  597. package/tooling/src/command-options.js +56 -0
  598. package/tooling/src/commands/validate.js +320 -0
  599. package/tooling/src/doctor/command.js +91 -0
  600. package/tooling/src/export/command.js +77 -0
  601. package/tooling/src/export/compiler.js +498 -0
  602. package/tooling/src/guards/loop-cap-guard.js +52 -0
  603. package/tooling/src/guards/protected-path-write-guard.js +67 -0
  604. package/tooling/src/index/command.js +152 -0
  605. package/tooling/src/index/storage.js +1061 -0
  606. package/tooling/src/index/summarizers.js +261 -0
  607. package/tooling/src/loaders.js +18 -0
  608. package/tooling/src/project-root.js +22 -0
  609. package/tooling/src/recall/command.js +225 -0
  610. package/tooling/src/schema-validator.js +30 -0
  611. package/tooling/src/state-root.js +40 -0
  612. package/tooling/src/status/command.js +71 -0
  613. package/wazir.manifest.yaml +135 -0
  614. package/workflows/README.md +19 -0
  615. package/workflows/author.md +42 -0
  616. package/workflows/clarify.md +38 -0
  617. package/workflows/design-review.md +46 -0
  618. package/workflows/design.md +44 -0
  619. package/workflows/discover.md +37 -0
  620. package/workflows/execute.md +48 -0
  621. package/workflows/learn.md +38 -0
  622. package/workflows/plan-review.md +42 -0
  623. package/workflows/plan.md +39 -0
  624. package/workflows/prepare-next.md +37 -0
  625. package/workflows/review.md +40 -0
  626. package/workflows/run-audit.md +41 -0
  627. package/workflows/spec-challenge.md +41 -0
  628. package/workflows/specify.md +38 -0
  629. package/workflows/verify.md +37 -0
@@ -0,0 +1,598 @@
1
+ # CLI Pipeline Integration -- Implementation Plan
2
+
3
+ > **Date:** 2026-03-15
4
+ > **Source:** Design doc v4, spec-hardener-reviewed task specs (004-016)
5
+ > **Total tasks:** 13 (tasks 004-016)
6
+ > **Total files modified:** ~34 (3 CLI source + 1 test config + 10 roles + 15 workflows + 2 hooks + 1 guard + test files + N regenerated exports)
7
+ > **Batches:** 3
8
+ > **Commit strategy:** Batch A = individual commits; Batch B = single atomic commit; Batch C = individual commits
9
+
10
+ ---
11
+
12
+ ## Executive Summary
13
+
14
+ Wire all 7 Wazir CLI command families into the agent pipeline so that roles, workflows, skills, and hooks leverage indexing, recall, validation, capture, doctor, status, and export drift detection. The implementation spans 13 tasks across 3 batches:
15
+
16
+ - **Batch A** (tasks 004-007): Fix CLI source gaps -- register missing test file, add missing command to registry, wire capture handlers to usage tracking functions, fix increment bug. Zero export drift risk.
17
+ - **Batch B** (tasks 008-014): Pipeline wiring -- add write guard approved flow, extend session-start hook, add context retrieval to 10 roles, add capture events to 15 workflows, extend verifier validation surface, add execute preconditions, rebuild exports. 25 files cause export drift, sealed by a single `export build` + commit.
18
+ - **Batch C** (tasks 015-016): Skill updates -- rewrite debugging OBSERVE phase, add index integration to scan-project. Zero export drift risk.
19
+
20
+ Batch C is independent and can run in parallel with A or B.
21
+
22
+ ---
23
+
24
+ ## Pre-Flight Checklist
25
+
26
+ Before starting any implementation, verify all of the following:
27
+
28
+ - [ ] **Working branch created:** `feat/cli-pipeline-integration` (or similar) from `main` (Article III)
29
+ - [ ] **Node.js >= 20.0.0** installed
30
+ - [ ] **`npm test` passes on the clean branch** with zero failures
31
+ - [ ] **`wazir export --check` passes** on the clean branch (no pre-existing drift)
32
+ - [ ] **All 13 task spec files reviewed** in `.agent-os/tasks/clarified/` (004-016)
33
+ - [ ] **`tooling/src/capture/command.js` imports confirmed:** `fs` (line 1) and `path` (line 2) are already imported -- no additional module imports needed for task 006
34
+ - [ ] **`tooling/test/capture.test.js` fixture pattern confirmed:** `createCaptureFixture()` provides `fixtureRoot`, `stateRoot`, and `cleanup()` -- new tests must use unique run IDs
35
+ - [ ] **`tooling/test/role-contracts.test.js` is in `test:active`** -- confirmed, so workflow and role structural tests can be added there without new test file registration
36
+
37
+ ---
38
+
39
+ ## Dependency Graph
40
+
41
+ ```
42
+ Batch A (parallel where possible):
43
+ 004 (register usage.test.js) ─┬─> 006 (wire capture handlers)
44
+ └─> 007 (fix increment bug)
45
+ 005 (add capture usage to registry) -- parallel with 004, no deps
46
+
47
+ Batch B (sequential after Batch A complete):
48
+ 008 (add pipeline_integration flow) ─┬─> 009 (hook updates)
49
+ ├─> 010 (role context retrieval)
50
+ └─> 011 (workflow capture events)
51
+ │ │
52
+ 010 + 011 ─> 012 (verifier extension)
53
+
54
+ 012 ─> 013 (execute preconditions)
55
+
56
+ 009 + 010 + 011 + 012 + 013 ─> 014 (export build + commit)
57
+
58
+ Batch C (independent, can parallel with any batch):
59
+ 015 (debugging skill rewrite)
60
+ 016 (scan-project index integration)
61
+ ```
62
+
63
+ ---
64
+
65
+ ## Batch A -- CLI Source Fixes
66
+
67
+ **Commit strategy:** Individual commits per task (or batch all 4 into one)
68
+ **Export drift:** None (CLI source and test files are not hashed)
69
+ **Estimated file count:** 5 files (package.json, command-registry.js, command.js, usage.js, usage.test.js) + capture.test.js = 6
70
+
71
+ ### Task 004 -- Register usage.test.js in test:active
72
+
73
+ **What:** Add `tooling/test/capture/usage.test.js` to the `test:active` script in `package.json`.
74
+
75
+ **Files to modify:**
76
+ - `package.json`
77
+
78
+ **TDD steps:**
79
+ 1. Run `npm test` and confirm usage.test.js output is absent (red baseline)
80
+ 2. Append `tooling/test/capture/usage.test.js` to the `test:active` script (idempotent -- check if already present)
81
+ 3. Run `npm test` and confirm usage test output now appears (green)
82
+
83
+ **Verification:**
84
+ ```bash
85
+ npm test
86
+ # Confirm usage.test.js appears in output
87
+ ```
88
+
89
+ **Commit:**
90
+ ```
91
+ test(capture): register usage.test.js in test:active suite
92
+ ```
93
+
94
+ ---
95
+
96
+ ### Task 005 -- Add 'capture usage' to command registry
97
+
98
+ **What:** Add `'wazir capture usage'` to `SUPPORTED_COMMAND_SUBJECTS` Set in `command-registry.js`.
99
+
100
+ **Files to modify:**
101
+ - `tooling/src/checks/command-registry.js`
102
+ - `tooling/test/cli.test.js` (add assertion)
103
+
104
+ **TDD steps:**
105
+ 1. Add test in `cli.test.js` asserting `capture usage` is a recognized command (red)
106
+ 2. Add `'wazir capture usage'` after `'wazir capture summary'` in the Set (green)
107
+ 3. Run `npm test`
108
+
109
+ **Verification:**
110
+ ```bash
111
+ npm test
112
+ ```
113
+
114
+ **Commit:**
115
+ ```
116
+ fix(capture): add capture usage to command registry
117
+ ```
118
+
119
+ ---
120
+
121
+ ### Task 006 -- Wire capture handlers
122
+
123
+ **What:** Wire `initUsage`, `recordCaptureSavings`, `recordPhaseUsage` into `handleInit`, `handleOutput`, `handleEvent` respectively. Write `latest` file in `handleInit`.
124
+
125
+ **Files to modify:**
126
+ - `tooling/src/capture/command.js` (update import line 19, add handler calls)
127
+ - `tooling/test/capture.test.js` (add tests A-D)
128
+
129
+ **TDD steps:**
130
+ 1. Add 4 tests (A: init creates usage.json + latest, B: output records savings, C: event records phase usage, D: non-phase event does NOT record phase usage) -- all should fail (red)
131
+ 2. Update import on line 19 to add `initUsage, recordCaptureSavings, recordPhaseUsage`
132
+ 3. Wire `handleInit`: call `initUsage(runPaths, options.run)` + write `latest` file with try/catch
133
+ 4. Wire `handleOutput`: call `recordCaptureSavings(runPaths, Buffer.byteLength(output), 0)` after `writeStatus`
134
+ 5. Wire `handleEvent`: call `recordPhaseUsage` only for `phase_enter`/`phase_exit` events
135
+ 6. Run `npm test` (green)
136
+
137
+ **Key detail:** `fs` and `path` are already imported at lines 1-2 of `command.js`. No additional module imports needed.
138
+
139
+ **Verification:**
140
+ ```bash
141
+ npm test
142
+ ```
143
+
144
+ **Commit:**
145
+ ```
146
+ feat(capture): wire initUsage, recordCaptureSavings, recordPhaseUsage into handlers
147
+ ```
148
+
149
+ ---
150
+
151
+ ### Task 007 -- Fix recordPhaseUsage increment bug
152
+
153
+ **What:** Change line 129 of `usage.js` from `=` (replace) to `+=` (increment) for `events_count`.
154
+
155
+ **Files to modify:**
156
+ - `tooling/src/capture/usage.js` (line 129)
157
+ - `tooling/test/capture/usage.test.js` (add multi-call test)
158
+
159
+ **TDD steps:**
160
+ 1. Add test: call `recordPhaseUsage` 3 times with `{events_count: 1}`, assert total is 3 (red -- currently returns 1)
161
+ 2. Change `existing.events_count = data.events_count ?? existing.events_count` to `existing.events_count += data.events_count ?? 0`
162
+ 3. Do NOT change lines 130-131 (bytes use replace semantics correctly)
163
+ 4. Run `npm test` (green)
164
+
165
+ **Verification:**
166
+ ```bash
167
+ node --test tooling/test/capture/usage.test.js
168
+ npm test
169
+ ```
170
+
171
+ **Commit:**
172
+ ```
173
+ fix(capture): use increment semantics for recordPhaseUsage events_count
174
+ ```
175
+
176
+ ---
177
+
178
+ ## Batch B -- Pipeline Wiring
179
+
180
+ **Commit strategy:** Single atomic commit after all tasks complete + export build
181
+ **Export drift:** Yes -- 25 of 27 modified files are hashed canonical sources
182
+ **Estimated file count:** 27 source files + test file modifications + N regenerated export files
183
+
184
+ > **CRITICAL:** All Batch B tasks stage but do NOT commit individually. Task 014 performs the single commit after `export build`.
185
+
186
+ ### Task 008 -- Add pipeline_integration approved flow
187
+
188
+ **What:** Add `'pipeline_integration'` to `APPROVED_FLOWS` in the write guard. This unblocks all subsequent Batch B writes to `roles/` and `workflows/`.
189
+
190
+ **Files to modify:**
191
+ - `tooling/src/guards/protected-path-write-guard.js` (add to Set)
192
+ - `tooling/test/guard-hooks.test.js` (add test)
193
+
194
+ **TDD steps:**
195
+ 1. Inspect existing `runGuard` helper and guard JSON output format in `guard-hooks.test.js`
196
+ 2. Add test: `pipeline_integration` flow allows writing to `roles/executor.md` (red)
197
+ 3. Add `'pipeline_integration'` to `APPROVED_FLOWS` Set (green)
198
+ 4. Run `npm test`
199
+
200
+ **Verification:**
201
+ ```bash
202
+ npm test
203
+ ```
204
+
205
+ **Stage only (do not commit):**
206
+ ```bash
207
+ git add tooling/src/guards/protected-path-write-guard.js tooling/test/guard-hooks.test.js
208
+ ```
209
+
210
+ ---
211
+
212
+ ### Task 009 -- Update session-start hook and contract
213
+
214
+ **What:** Extend `hooks/session-start` to inject CLI bootstrap guidance. Clean up stale `session_start.yaml` contract.
215
+
216
+ **Files to modify:**
217
+ - `hooks/session-start` (add CLI bootstrap block)
218
+ - `hooks/definitions/session_start.yaml` (full file replacement)
219
+
220
+ **TDD steps:**
221
+ 1. Add test in `guard-hooks.test.js`: hook output matches `/wazir doctor/`, `/wazir index refresh/`, `/wazir index build/`, `/wazir capture init/`, `/runs\/latest/` (red)
222
+ 2. Add CLI bootstrap block OUTSIDE the skill if/else in the hook script (always outputs)
223
+ 3. Replace `session_start.yaml` entirely (remove `run_id` from input, update output contract, empty `allowed_side_effects`)
224
+ 4. Verify hook still exits 0 (Article XIII)
225
+ 5. Run `npm test` (green)
226
+
227
+ **Verification:**
228
+ ```bash
229
+ npm test
230
+ ```
231
+
232
+ **Stage only.**
233
+
234
+ ---
235
+
236
+ ### Task 010 -- Add context retrieval to all 10 roles
237
+
238
+ **What:** Add `## Context retrieval` section to all 10 role files with tier-appropriate defaults. Update `## Allowed Tools` to mention CLI commands.
239
+
240
+ **Files to modify:**
241
+ - 10 `roles/*.md` files
242
+ - `tooling/test/role-contracts.test.js` (structural tests)
243
+
244
+ **TDD steps:**
245
+ 1. Add structural tests: (a) all roles have `## Context retrieval`, (b) section ordering (between Allowed Tools and Required Outputs), (c) Allowed Tools section mentions recall/index (red)
246
+ 2. For each role: add `- Wazir CLI recall and index commands (see Context retrieval)` to `## Allowed Tools`
247
+ 3. For each role: add `## Context retrieval` section between `## Allowed Tools` and `## Required Outputs` with tier-appropriate content:
248
+ - L1: clarifier, researcher, specifier, content-author, designer, planner
249
+ - Direct read: executor, verifier
250
+ - L1-to-direct-read: reviewer
251
+ - L0: learner
252
+ 4. Run `npm test` (green)
253
+
254
+ **Role-tier mapping:**
255
+
256
+ | Role | Default Tier | Fallback |
257
+ |------|-------------|----------|
258
+ | clarifier | L1 | L1 fails -> direct read |
259
+ | researcher | L1 | L1 fails -> direct read |
260
+ | specifier | L1 | L1 fails -> direct read |
261
+ | content-author | L1 | L1 fails -> direct read |
262
+ | designer | L1 | L1 fails -> direct read |
263
+ | planner | L1 | L1 fails -> direct read |
264
+ | executor | direct read | index search fails -> grep/file-tree |
265
+ | verifier | direct read | index search fails -> grep/file-tree |
266
+ | reviewer | L1, escalate to direct | recall fails -> direct read |
267
+ | learner | L0 | L0 fails -> L1 -> direct read |
268
+
269
+ **Verification:**
270
+ ```bash
271
+ npm test
272
+ ```
273
+
274
+ **Stage only.**
275
+
276
+ ---
277
+
278
+ ### Task 011 -- Add capture events to all 15 workflows
279
+
280
+ **What:** Add `## Phase entry` and `## Phase exit` sections to all 15 workflow files. Add `## Gate decision` to 3 gate workflows.
281
+
282
+ **Files to modify:**
283
+ - 15 `workflows/*.md` files (excluding README.md)
284
+ - `tooling/test/role-contracts.test.js` (workflow structural tests)
285
+
286
+ **TDD steps:**
287
+ 1. Add structural tests in `role-contracts.test.js` (already in `test:active` -- no new registration needed):
288
+ - All 15 workflows have Phase entry and Phase exit
289
+ - Phase entry is between Purpose and Inputs (ordering test)
290
+ - Phase exit is immediately before Failure Conditions (no H2 between)
291
+ - Gate workflows have Gate decision after Approval Gate
292
+ 2. Add `## Phase entry` immediately after `## Purpose` in all 15 files
293
+ 3. Add `## Phase exit` immediately before `## Failure Conditions` in all 15 files
294
+ 4. Add `## Gate decision` after `## Approval Gate` in spec-challenge.md, design-review.md, plan-review.md
295
+ 5. Run `npm test` (green)
296
+
297
+ **Placeholder note:** `<run-id>` and `<phase-name>` are runtime placeholders -- paste them literally. The agent substitutes actual values at runtime.
298
+
299
+ **Verification:**
300
+ ```bash
301
+ npm test
302
+ ```
303
+
304
+ **Stage only.**
305
+
306
+ ---
307
+
308
+ ### Task 012 -- Extend verifier validation surface
309
+
310
+ **What:** Add `## Post-execution validation` section to `roles/verifier.md` with all 9 validators and the export drift fix loop.
311
+
312
+ **Files to modify:**
313
+ - `roles/verifier.md`
314
+ - `tooling/test/role-contracts.test.js` (structural test)
315
+
316
+ **TDD steps:**
317
+ 1. Add structural test: verifier.md has `## Post-execution validation`, section is between Allowed Tools and Required Outputs, mentions `export --check` and drift fix loop (red)
318
+ 2. Add `## Post-execution validation` section between `## Context retrieval` (from task 010) and `## Required Outputs`, including:
319
+ - 9 validator commands
320
+ - Failure behavior per check category (structural, git-flow, export drift)
321
+ - Export drift fix loop with max 1 rebuild attempt
322
+ 3. Run `npm test` (green)
323
+
324
+ **Section order in verifier.md after tasks 010+012:**
325
+ `## Purpose` > `## Inputs` > `## Allowed Tools` > `## Context retrieval` > `## Post-execution validation` > `## Required Outputs` > `## Git-Flow Responsibilities` > `## Escalation Rules` > `## Failure Conditions`
326
+
327
+ **Verification:**
328
+ ```bash
329
+ npm test
330
+ ```
331
+
332
+ **Stage only.**
333
+
334
+ ---
335
+
336
+ ### Task 013 -- Add pre-execution validation to execute workflow
337
+
338
+ **What:** Add `## Pre-execution validation` section to `workflows/execute.md` with `validate manifest` and `validate hooks` instructions.
339
+
340
+ **Files to modify:**
341
+ - `workflows/execute.md`
342
+ - `tooling/test/role-contracts.test.js` (structural test)
343
+
344
+ **TDD steps:**
345
+ 1. Add structural test: execute.md contains `## Pre-execution validation`, mentions `validate manifest` and `validate hooks` (red)
346
+ 2. Add section after `## Phase entry` (from task 011) -- phase entry fires first to log execution attempt, then validation runs before implementation
347
+ 3. Run `npm test` (green)
348
+
349
+ **Verification:**
350
+ ```bash
351
+ npm test
352
+ ```
353
+
354
+ **Stage only.**
355
+
356
+ ---
357
+
358
+ ### Task 014 -- Export build, verification, and commit
359
+
360
+ **What:** Run `wazir export build`, verify zero drift, commit all Batch B changes as a single atomic commit.
361
+
362
+ **Files to modify:**
363
+ - 0 source files directly; N export files regenerated under `exports/`
364
+
365
+ **Steps:**
366
+ 1. Run `git status` to verify all Batch B files are staged
367
+ 2. Run `wazir export build`
368
+ 3. Run `wazir export --check` -- must report zero drift
369
+ 4. Run `npm test` -- all tests must pass
370
+ 5. Stage only known files (explicit list -- NO `git add -A`):
371
+ - `tooling/src/guards/protected-path-write-guard.js`, `tooling/test/guard-hooks.test.js`
372
+ - `hooks/session-start`, `hooks/definitions/session_start.yaml`
373
+ - `roles/*.md`, `tooling/test/role-contracts.test.js`
374
+ - `workflows/*.md`
375
+ - `exports/`
376
+ 6. Commit with conventional commit message
377
+
378
+ **Rollback plan:**
379
+ - If `export build` fails: identify offending canonical source, fix it, re-run. Max 2 fix attempts before escalating.
380
+ - If `export --check` still fails after successful build: re-run `export build`. Max 1 rebuild retry.
381
+ - If unrecoverable: `git reset HEAD` (preserves working tree), investigate root cause, report as blocker.
382
+
383
+ **Verification:**
384
+ ```bash
385
+ wazir export --check
386
+ npm test
387
+ ```
388
+
389
+ **Commit:**
390
+ ```
391
+ feat(pipeline): wire CLI commands into agent pipeline
392
+ ```
393
+
394
+ ---
395
+
396
+ ## Batch C -- Skill Updates
397
+
398
+ **Commit strategy:** Individual commits
399
+ **Export drift:** None (skills are not hashed)
400
+ **Estimated file count:** 2 skill files
401
+
402
+ > Batch C is independent and can run in parallel with Batch A or B.
403
+
404
+ ### Task 015 -- Rewrite debugging skill OBSERVE phase
405
+
406
+ **What:** Replace OBSERVE implementation in `skills/debugging/SKILL.md` with symbol-first protocol while preserving the 4-step loop structure.
407
+
408
+ **Files to modify:**
409
+ - `skills/debugging/SKILL.md`
410
+
411
+ **TDD steps:**
412
+ 1. Read current OBSERVE phase
413
+ 2. Replace OBSERVE internals with: search-symbols -> recall L1 -> hypothesis -> targeted read -> fallback to generic methodology
414
+ 3. Verify 4-step loop (Observe -> Hypothesize -> Test -> Fix) is intact
415
+ 4. Run `npm test`
416
+
417
+ **Verification:**
418
+ ```bash
419
+ npm test
420
+ ```
421
+
422
+ **Commit:**
423
+ ```
424
+ refactor(skills): rewrite debugging OBSERVE phase with symbol-first protocol
425
+ ```
426
+
427
+ ---
428
+
429
+ ### Task 016 -- Add index integration to scan-project skill
430
+
431
+ **What:** Add index build/refresh step to `skills/scan-project/SKILL.md`.
432
+
433
+ **Files to modify:**
434
+ - `skills/scan-project/SKILL.md`
435
+
436
+ **TDD steps:**
437
+ 1. Read current skill to determine last step number
438
+ 2. Add new step after existing steps: check `index stats`, build or refresh accordingly, include stats in profile output
439
+ 3. Distinguish between command failure (exit code non-zero) and successful report of 0 files
440
+ 4. Run `npm test`
441
+
442
+ **Verification:**
443
+ ```bash
444
+ npm test
445
+ ```
446
+
447
+ **Commit:**
448
+ ```
449
+ feat(skills): add index build/refresh step to scan-project skill
450
+ ```
451
+
452
+ ---
453
+
454
+ ## Risk Mitigation
455
+
456
+ ### Protected Path Write Guard (HIGH)
457
+
458
+ **Risk:** 25 of 27 Batch B files are in protected directories. Without mitigation, every write is blocked.
459
+
460
+ **Mitigation:** Task 008 adds `'pipeline_integration'` to `APPROVED_FLOWS` as the first Batch B step. This is:
461
+ - A one-line addition to the Set
462
+ - Fully reversible (can remove after implementation, but recommend keeping for future pipeline updates)
463
+ - Tested with a new guard-hooks test
464
+ - Consistent with existing `host_export_regeneration` pattern
465
+
466
+ **Fallback:** If the approved flow approach is rejected, the executor can work through interactive guard acceptance (user approves each blocked write). Viable but tedious for 27 files.
467
+
468
+ ### Export Drift (MEDIUM)
469
+
470
+ **Risk:** 25 canonical source files change in Batch B, causing export drift between tasks.
471
+
472
+ **Mitigation:**
473
+ - All Batch B tasks stage but do NOT commit individually
474
+ - Single `export build` at the end (task 014) regenerates all exports
475
+ - `export --check` verifies zero drift before committing
476
+ - If drift persists after rebuild: max 1 retry, then escalate
477
+
478
+ ### Increment Bug Visibility (MEDIUM)
479
+
480
+ **Risk:** The `recordPhaseUsage` increment bug is only observable with multi-call tests, and `usage.test.js` is not in CI.
481
+
482
+ **Mitigation:**
483
+ - Task 004 registers `usage.test.js` in `test:active` FIRST (before any CLI fixes)
484
+ - Task 007 adds a multi-call test that specifically catches the bug
485
+ - These are ordered: 004 before 007
486
+
487
+ ### Batch B Intermediate Test Failures (LOW)
488
+
489
+ **Risk:** TDD requires writing failing tests first, which means intermediate `npm test` failures during Batch B.
490
+
491
+ **Mitigation:** This is expected TDD behavior (red phase). Each task's "npm test passes" AC means "passes after all steps of THIS task are done." The intermediate red-phase failure between writing the test and making the change is correct.
492
+
493
+ ---
494
+
495
+ ## Export Drift Management Strategy
496
+
497
+ ### Which files cause export drift?
498
+
499
+ The export compiler hashes:
500
+ - `wazir.manifest.yaml` (not modified)
501
+ - 10 declared role files: `roles/*.md` (modified by task 010, 012)
502
+ - 14 declared workflow files: `workflows/*.md` except `run-audit.md` (modified by task 011, 013)
503
+ - Hook definition YAMLs: `hooks/definitions/*.yaml` (modified by task 009)
504
+
505
+ **Total:** 25 files that cause export drift
506
+
507
+ ### What does NOT cause drift?
508
+
509
+ - `workflows/run-audit.md` (undeclared in manifest)
510
+ - Skill files (`skills/`)
511
+ - Hook executables (`hooks/session-start`)
512
+ - CLI source files (`tooling/src/`)
513
+ - Test files (`tooling/test/`)
514
+ - Guard source (`tooling/src/guards/`)
515
+ - `package.json`
516
+
517
+ ### Strategy
518
+
519
+ 1. **Batch A:** No drift concern -- only CLI source and tests
520
+ 2. **Batch B:** All 25 drifting files modified, then sealed with single `export build` + `export --check` + single commit
521
+ 3. **Batch C:** No drift concern -- only skills (not hashed)
522
+
523
+ ### Drift detection during development
524
+
525
+ If you need to verify intermediate state during Batch B:
526
+ - `wazir export --check` will report drift (expected until task 014)
527
+ - Do NOT run `export build` until all Batch B source changes are complete
528
+ - Running `export build` mid-batch would create a partial export that becomes stale when subsequent tasks modify more canonical sources
529
+
530
+ ---
531
+
532
+ ## Success Verification Checklist
533
+
534
+ All 16 criteria from the design doc must pass after implementation:
535
+
536
+ | # | Criterion | Verified By | Task |
537
+ |---|-----------|-------------|------|
538
+ | 1 | `wazir doctor` guidance in session start bootstrap | Hook output test | 009 |
539
+ | 2 | Index exists and queryable before exploration phase | Bootstrap guidance instructs agent | 009, 016 |
540
+ | 3 | All 15 workflow files have capture event instructions | Structural test (15 files x 2 sections) | 011 |
541
+ | 4 | `capture usage` produces savings report at session end | Handler wiring tests | 005, 006 |
542
+ | 5 | Roles use assigned default tier with fallback chain | Structural test (10 roles x context retrieval) | 010 |
543
+ | 6 | `validate` + `export --check` run in verifier phase | Verifier role content test | 012 |
544
+ | 7 | `wz:debugging` OBSERVE uses symbol search with fallback | Manual review of SKILL.md | 015 |
545
+ | 8 | Reviewer uses L1 recall before reading full files | Reviewer context retrieval section | 010 |
546
+ | 9 | Run ID persists across compaction via `latest` file | Integration test (capture init writes latest) | 006 |
547
+ | 10 | No regression in existing hook behavior | Existing tests + new tests pass | 008, 009 |
548
+ | 11 | `export --check` passes after all changes | Export build + check in task 014 | 014 |
549
+ | 12 | `capture usage` registered in command registry | Registry test | 005 |
550
+ | 13 | `capture init` creates `usage.json` and writes `latest` | Integration test A | 006 |
551
+ | 14 | `session_start.yaml` contract fully cleaned up | YAML replacement + hook test | 009 |
552
+ | 15 | `recordPhaseUsage` uses increment semantics | Multi-call unit test | 007 |
553
+ | 16 | Role `## Allowed Tools` mentions CLI recall/index | Structural test (Allowed Tools section content) | 010 |
554
+
555
+ ### Final verification commands (run after all 3 batches):
556
+
557
+ ```bash
558
+ # Full test suite
559
+ npm test
560
+
561
+ # Export drift check
562
+ wazir export --check
563
+
564
+ # Full validation suite
565
+ wazir validate manifest
566
+ wazir validate hooks
567
+ wazir validate docs
568
+ wazir validate brand
569
+ wazir validate runtime
570
+ wazir validate branches
571
+ wazir validate commits
572
+ ```
573
+
574
+ ---
575
+
576
+ ## Estimated File Count Per Batch
577
+
578
+ | Batch | Source Files | Test Files | Config Files | Generated Files | Total |
579
+ |-------|-------------|------------|-------------|-----------------|-------|
580
+ | A | 3 (command-registry.js, command.js, usage.js) | 2 (capture.test.js, usage.test.js) | 1 (package.json) | 0 | 6 |
581
+ | B | 27 (1 guard + 2 hooks + 10 roles + 15 workflows) | 2 (guard-hooks.test.js, role-contracts.test.js) | 0 | N (exports/) | 29 + exports |
582
+ | C | 2 (debugging/SKILL.md, scan-project/SKILL.md) | 0 | 0 | 0 | 2 |
583
+ | **Total** | **32** | **4** | **1** | **N** | **37 + exports** |
584
+
585
+ ---
586
+
587
+ ## Execution Order Summary
588
+
589
+ ```
590
+ Phase 1 (can run in parallel):
591
+ ├── Batch A: 004 → 005 (parallel) → 006, 007 → commit(s)
592
+ └── Batch C: 015, 016 → commit(s)
593
+
594
+ Phase 2 (after Batch A):
595
+ └── Batch B: 008 → 009, 010, 011 (parallel after 008) → 012 → 013 → 014 (export build + commit)
596
+ ```
597
+
598
+ Total commits: 4-6 (Batch A) + 1 (Batch B) + 2 (Batch C) = 7-9 commits