@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,215 @@
1
+ # Verifier
2
+
3
+ ![Role](https://img.shields.io/badge/role-verifier-blue) ![Phase](https://img.shields.io/badge/phase-11%20%E2%80%94%20verification-lightgrey) ![Status](https://img.shields.io/badge/status-stable-green)
4
+
5
+ **No proof, no pass. The verifier runs the tests, reads the output, and produces evidence — not opinions.**
6
+
7
+ ---
8
+
9
+ ## What is this?
10
+
11
+ The verifier produces proof. It runs deterministic checks — tests, builds, diffs, schema validation, branch and commit validation — and assembles the results into a verification proof artifact with an explicit pass/fail status.
12
+
13
+ The key word is **deterministic**. The verifier does not evaluate subjective quality, architectural merit, or code style. It runs commands and reports what happened. If the tests pass, that is evidence. If the build fails, that is evidence. If a claimed outcome has no deterministic verification path, that is an escalation.
14
+
15
+ This role exists because "the tests pass" is not evidence — a command output log is evidence. The distinction matters enormously when the reviewer, operator, or a future learner needs to understand whether something actually worked.
16
+
17
+ ---
18
+
19
+ ## Key Capabilities
20
+
21
+ - Runs the full test suite and captures complete output (not summaries)
22
+ - Executes build commands and captures results
23
+ - Performs diff inspection to verify that changes match the approved plan
24
+ - Validates artifact schemas for correctness
25
+ - Runs Wazir's own validation commands (branches, commits, changelog)
26
+ - Produces a proof bundle with explicit pass/fail status for every claimed outcome
27
+ - Escalates when no deterministic verification path exists for a claimed outcome
28
+
29
+ ---
30
+
31
+ ## How It Fits in the Pipeline
32
+
33
+ The verifier is **Phase 11**. It runs after execution is complete.
34
+
35
+ ```
36
+ [changed files]
37
+ [claimed outcomes from execution notes]
38
+ [verification commands from plan]
39
+ [acceptance criteria from spec]
40
+
41
+
42
+ [verifier]
43
+
44
+ ├──► verification proof artifact
45
+ ├──► command results (full output, not summaries)
46
+ └──► explicit pass/fail per claimed outcome
47
+
48
+
49
+ [reviewer]
50
+ ```
51
+
52
+ **Triggered by:** `verify` workflow.
53
+
54
+ **Feeds into:** reviewer.
55
+
56
+ ---
57
+
58
+ ## Input / Output Contract
59
+
60
+ | | Details |
61
+ |---|---|
62
+ | **Inputs** | Changed files, claimed outcomes, verification commands from plan, acceptance criteria from spec |
63
+ | **Allowed tools** | Test commands, build commands, diff inspection, schema validation |
64
+ | **Output: verification proof artifact** | Full proof bundle — every check, its command, and its result |
65
+ | **Output: command results** | Actual stdout/stderr output from every verification command |
66
+ | **Output: pass/fail status** | Explicit PASS or FAIL for every acceptance criterion and git-flow check |
67
+
68
+ ---
69
+
70
+ ## Example
71
+
72
+ **Verification proof artifact (excerpt):**
73
+
74
+ ```markdown
75
+ # Verification Proof: Per-User API Rate Limiting
76
+ Date: 2026-03-13
77
+ Branch: feature/rate-limiting
78
+ Commit: d7a2f91
79
+
80
+ ## Acceptance Criteria Results
81
+
82
+ ### AC1: 100 requests in 60s window — all HTTP 200
83
+ Status: PASS
84
+ Command: npm test src/middleware/rateLimit.test.ts -- --grep "allows 100 requests"
85
+ Output:
86
+ ✓ allows 100 requests within window (234ms)
87
+ 1 passing
88
+
89
+ ### AC2: 101st request — HTTP 429 + Retry-After
90
+ Status: PASS
91
+ Command: npm test src/middleware/rateLimit.test.ts -- --grep "blocks 101st request"
92
+ Output:
93
+ ✓ blocks 101st request with 429 (12ms)
94
+ 1 passing
95
+
96
+ ### AC3: Window reset — full quota restored
97
+ Status: PASS
98
+ Command: npm test src/middleware/rateLimit.test.ts -- --grep "restores quota"
99
+ Output:
100
+ ✓ restores full quota after window reset (1204ms)
101
+ 1 passing
102
+
103
+ ### AC5: Redis failure — fail-open + alert
104
+ Status: PASS
105
+ Command: npm test src/middleware/rateLimit.test.ts -- --grep "fail-open"
106
+ Output:
107
+ ✓ fail-open when Redis unavailable (45ms)
108
+ 1 passing
109
+
110
+ ### AC6: Existing integration tests unchanged
111
+ Status: PASS
112
+ Command: npm run test:integration
113
+ Output:
114
+ 43 passing (8.2s)
115
+ 0 failing
116
+
117
+ ## Git-Flow Checks
118
+
119
+ ### Branch Naming
120
+ Status: PASS
121
+ Command: wazir validate branches
122
+ Output: ✓ feature/rate-limiting — valid feature branch name
123
+
124
+ ### Commit Format
125
+ Status: PASS
126
+ Command: wazir validate commits
127
+ Output: ✓ 3/3 commits in conventional format
128
+
129
+ ### Changelog Entries
130
+ Status: PASS
131
+ Command: wazir validate changelog --require-entries
132
+ Output: ✓ 1 entry found under [Unreleased]
133
+
134
+ ## Build
135
+ Status: PASS
136
+ Command: npm run build
137
+ Output: Built in 4.2s, 0 errors, 0 warnings
138
+
139
+ ## Overall Status: PASS
140
+ All 6 acceptance criteria: PASS
141
+ All git-flow checks: PASS
142
+ Build: PASS
143
+ ```
144
+
145
+ ---
146
+
147
+ ## Git-Flow Responsibilities
148
+
149
+ The verifier runs four Wazir validation commands as mandatory checks:
150
+
151
+ ```bash
152
+ # Branch naming conventions
153
+ wazir validate branches
154
+
155
+ # Conventional commit format on all commits in branch
156
+ wazir validate commits
157
+
158
+ # Changelog format
159
+ wazir validate changelog
160
+
161
+ # Require at least one new entry on feature/codex/hotfix branches
162
+ wazir validate changelog --require-entries
163
+ ```
164
+
165
+ All four results must appear in the verification proof artifact.
166
+
167
+ ---
168
+
169
+ ## Configuration
170
+
171
+ | Setting | Location | Effect |
172
+ |---------|----------|--------|
173
+ | `verification-proof` validation check | `wazir.manifest.yaml` | Enforces that proof artifact exists before review |
174
+ | `review-loop` validation check | `wazir.manifest.yaml` | Tracks verification loop count |
175
+ | `loop_cap_guard` hook | `hooks/` | Caps re-verification iterations to prevent infinite loops |
176
+ | Acceptance criteria | spec artifact | Source of truth for what must be verified |
177
+ | Verification commands | plan artifact | Specifies exact commands to run |
178
+
179
+ ---
180
+
181
+ ## When to Use / When NOT to Use
182
+
183
+ **Use the verifier when:**
184
+ - Execution is complete and you need a proof bundle before review begins
185
+ - Re-running after the reviewer found failures that have been fixed
186
+ - You need a formal verification record for audit, compliance, or handoff
187
+
188
+ **Do NOT invoke the verifier when:**
189
+ - Execution is still in progress — verify after the full plan slice is complete
190
+ - You want to use it to check work-in-progress — run tests directly; the verifier produces a formal artifact
191
+ - You are tempted to write "PASS" based on partial runs — every criterion must be run fresh
192
+
193
+ > [!WARNING]
194
+ > **Stale verification is a failure condition.** If the verifier runs tests, then code is changed, and the proof artifact is not regenerated — the proof is stale and invalid. The reviewer will check commit timestamps against proof timestamps and flag it.
195
+
196
+ ---
197
+
198
+ ## Failure Conditions
199
+
200
+ | Condition | Why It Matters |
201
+ |-----------|----------------|
202
+ | Incomplete proof | Reviewer cannot make a defensible verdict; spec criteria go unvalidated |
203
+ | Stale verification | Proof does not reflect actual current state of the code |
204
+ | Claiming success without fresh evidence | The most critical failure — signs off on broken work |
205
+
206
+ ---
207
+
208
+ ## Related
209
+
210
+ - [Roles Overview](README.md)
211
+ - [executor](executor.md) — upstream role (produces the code to be verified)
212
+ - [reviewer](reviewer.md) — downstream role (consumes the proof bundle)
213
+ - [planner](planner.md) — defines verification commands per task
214
+ - [specifier](specifier.md) — defines acceptance criteria that verification must cover
215
+ - [Verify Workflow](../workflows/verify.md) _(coming soon)_
@@ -0,0 +1,178 @@
1
+ # Schema Validation System
2
+
3
+ Wazir enforces artifact quality through a suite of **JSON Schema Draft 2020-12**
4
+ schemas. Every phase output — from a clarification through a review — must satisfy its
5
+ schema before it can be used as a source for the next phase or included in a host export.
6
+
7
+ Schemas prevent fake-green states: an artifact that looks complete but is missing required
8
+ fields fails loudly at validation time rather than silently corrupting downstream phases.
9
+
10
+ ---
11
+
12
+ ## How It Works
13
+
14
+ ```
15
+ Canonical source file Schema file
16
+ (roles/*.md, artifacts, manifest) (schemas/*.schema.json)
17
+ │ │
18
+ └──────────────┬───────────────────────┘
19
+
20
+ schema-validator.js
21
+ (AJV, draft 2020-12)
22
+
23
+ ┌─────────────┴──────────────┐
24
+ ▼ ▼
25
+ PASS (exit 0) FAIL (exit 1)
26
+ artifact accepted actionable error output
27
+ with field path + message
28
+ ```
29
+
30
+ The validator is called by `wazir validate manifest`, `wazir export build`,
31
+ and individual `wazir validate *` checks. It is also exercised by the full test
32
+ suite via schema-backed example fixtures in `templates/examples/`.
33
+
34
+ ---
35
+
36
+ ## Schema Catalog
37
+
38
+ | Schema file | Title | Required by |
39
+ |---|---|---|
40
+ | `wazir-manifest.schema.json` | Wazir Manifest v2 | `validate manifest`, `export build` |
41
+ | `hook.schema.json` | Hook Definition | `validate hooks` |
42
+ | `spec.schema.json` | Spec Artifact | `specifier` role output |
43
+ | `implementation-plan.schema.json` | Implementation Plan Artifact | `planner` role output |
44
+ | `review.schema.json` | Review Artifact | `reviewer` role output |
45
+ | `verification-proof.schema.json` | Verification Proof | `verifier` role output |
46
+ | `design-artifact.schema.json` | Design Artifact | `designer` role output |
47
+ | `clarification.schema.json` | Clarification Artifact | `clarifier` role output |
48
+ | `research.schema.json` | Research Artifact | `researcher` role output |
49
+ | `spec-challenge.schema.json` | Spec Challenge Artifact | `spec_challenge` workflow |
50
+ | `run-manifest.schema.json` | Run Manifest | `capture init` |
51
+ | `export-manifest.schema.json` | Export Manifest | `export build` output |
52
+ | `host-export-package.schema.json` | Host Export Package | per-host `host-package.json` |
53
+ | `docs-claim.schema.json` | Docs Truth Claim | `validate docs` + `docs/truth-claims.yaml` |
54
+ | `proposed-learning.schema.json` | Proposed Learning | `learner` role output |
55
+ | `accepted-learning.schema.json` | Accepted Learning | `learn` workflow approval |
56
+
57
+ ---
58
+
59
+ ## Required Fields Pattern
60
+
61
+ All artifact schemas share a common envelope of required fields:
62
+
63
+ ```json
64
+ {
65
+ "phase": "specify", // must match exactly the declaring phase
66
+ "role": "specifier", // must match exactly the declaring role
67
+ "run_id": "abc-123", // ties the artifact to a specific run
68
+ "created_at": "2026-03-13T...", // ISO 8601 datetime
69
+ "sources": ["input/brief.md"], // files this artifact was derived from
70
+ "status": "approved", // current lifecycle state
71
+ "loop_number": 0 // tracks refinement iteration
72
+ }
73
+ ```
74
+
75
+ Phase-specific fields are added on top. For example, `spec.schema.json` also requires
76
+ `requirements`, `acceptance_criteria`, and `approval`. `review.schema.json` requires
77
+ a `findings` array where each entry carries a `severity` and `title`.
78
+
79
+ ---
80
+
81
+ ## Schema Rules
82
+
83
+ From `schemas/README.md` — these rules are enforced by convention and CI:
84
+
85
+ - **Additive changes** preserve existing valid artifacts and keep `manifest_version` stable.
86
+ - **Breaking changes** must update `manifest_version`, docs, templates, and verification
87
+ in the same change set.
88
+ - **Breaking manifest bumps** must ship explicit upgrade guidance so older manifests fail
89
+ with actionable errors rather than opaque schema-only messages.
90
+ - **Schema-backed examples** under `templates/examples/` must stay valid under automated
91
+ tests — they serve as both documentation and regression fixtures.
92
+ - **No prose-only contracts** — if a contract cannot be machine-validated, it does not
93
+ belong in `schemas/`.
94
+
95
+ ---
96
+
97
+ ## Validating Against a Schema
98
+
99
+ **Via CLI (recommended):**
100
+
101
+ ```bash
102
+ # Validate the project manifest
103
+ wazir validate manifest
104
+
105
+ # Validate canonical hook definitions
106
+ wazir validate hooks
107
+
108
+ # Validate docs truth claims and markdown links
109
+ wazir validate docs
110
+
111
+ # Run all checks at once
112
+ wazir doctor
113
+ ```
114
+
115
+ **Programmatic (Node.js):**
116
+
117
+ ```js
118
+ import { validateAgainstSchema } from './tooling/src/schema-validator.js';
119
+ import { readJsonFile } from './tooling/src/loaders.js';
120
+
121
+ const artifact = readJsonFile('path/to/my-spec.json');
122
+ const result = validateAgainstSchema(artifact, 'spec');
123
+ if (!result.valid) {
124
+ console.error(result.errors);
125
+ }
126
+ ```
127
+
128
+ **With a JSON Schema tool (standalone):**
129
+
130
+ ```bash
131
+ npx ajv validate \
132
+ -s schemas/spec.schema.json \
133
+ -d path/to/my-spec.json \
134
+ --spec=draft2020
135
+ ```
136
+
137
+ ---
138
+
139
+ ## Example Validation Workflow
140
+
141
+ ```
142
+ 1. specifier produces spec artifact (YAML/JSON)
143
+
144
+
145
+ 2. wazir validate manifest ← manifest gates export
146
+
147
+
148
+ 3. spec artifact validated against ← spec.schema.json
149
+ spec.schema.json on phase handoff
150
+
151
+
152
+ 4. planner reads approved spec,
153
+ produces implementation-plan artifact
154
+
155
+
156
+ 5. plan artifact validated against ← implementation-plan.schema.json
157
+ implementation-plan.schema.json
158
+
159
+
160
+ 6. wazir export build ← validates + hashes all canonical sources
161
+
162
+
163
+ 7. CI: wazir export --check ← fails if canonical sources changed since build
164
+ ```
165
+
166
+ ---
167
+
168
+ ## Adding a New Schema
169
+
170
+ 1. Create `schemas/<artifact-name>.schema.json` using JSON Schema Draft 2020-12.
171
+ 2. Include the common envelope fields (`phase`, `role`, `run_id`, `created_at`,
172
+ `sources`, `status`, `loop_number`) as required.
173
+ 3. Add a corresponding example fixture to `templates/examples/` and verify it passes
174
+ under `npm test`.
175
+ 4. Register any new `validate` sub-command in `tooling/src/checks/command-registry.js`
176
+ and document it in `docs/tooling-cli.md` + `docs/truth-claims.yaml`.
177
+ 5. If the change is breaking, bump `manifest_version` in `wazir-manifest.schema.json`
178
+ and write upgrade guidance in `docs/`.
@@ -0,0 +1,63 @@
1
+ # Skills
2
+
3
+ > Reusable in-host procedures that enforce disciplined engineering work across every AI agent session.
4
+
5
+ Skills are the **operational layer** of Wazir. Where roles define who acts and workflows define what phases exist, skills define exactly how work gets done — step by step, with explicit rules and required outputs.
6
+
7
+ ## Skill Roster
8
+
9
+ | Skill | ID | Type | Purpose |
10
+ |---|---|---|---|
11
+ | [Using Skills](using-skills.md) | `wz:using-skills` | Rigid | Skill discovery bootstrap — must fire before any response |
12
+ | [Brainstorming](brainstorming.md) | `wz:brainstorming` | Rigid | Turn briefings into approved designs before implementation |
13
+ | [Writing Plans](writing-plans.md) | `wz:writing-plans` | Rigid | Produce execution-grade implementation plans from approved designs |
14
+ | [TDD](tdd.md) | `wz:tdd` | Rigid | Enforce RED → GREEN → REFACTOR with evidence at each step |
15
+ | [Debugging](debugging.md) | `wz:debugging` | Rigid | Observe-hypothesize-test-fix loop instead of guesswork |
16
+ | [Verification](verification.md) | `wz:verification` | Rigid | Require fresh command evidence before any completion claim |
17
+ | [Design](design.md) | `wz:design` | Flexible | Guide designer role through open-pencil MCP visual design workflow |
18
+ | [Scan Project](scan-project.md) | `scan-project` | Flexible | Build an evidence-based project profile from repo surfaces |
19
+ | [Run Audit](run-audit.md) | `run-audit` | Flexible | Interactive structured codebase audit with report or fix-plan output |
20
+ | [Self-Audit](self-audit.md) | `self-audit` | Flexible | Worktree-isolated audit-fix loop — safe self-improvement |
21
+ | [Prepare Next](prepare-next.md) | `prepare-next` | Flexible | Produce a clean next-run handoff without stale context bleed |
22
+
23
+ ## Skill Types
24
+
25
+ | Type | Meaning |
26
+ |---|---|
27
+ | **Rigid** | Follow exactly. The discipline is the point — do not adapt away the structure. |
28
+ | **Flexible** | Adapt principles to context. The skill guides; judgment fills gaps. |
29
+
30
+ ## How Skills Work
31
+
32
+ Skills are invoked via the `Skill` tool in Claude Code. When invoked, the skill's content is loaded and presented to the agent, which then follows it directly. Skills are **never** read via the `Read` tool on skill files — that bypasses the invocation contract.
33
+
34
+ ```
35
+ User message received
36
+ → Check: might any skill apply? (even 1% chance = yes)
37
+ → Invoke Skill tool
38
+ → Announce: "Using [skill] to [purpose]"
39
+ → Follow skill exactly
40
+ → Respond
41
+ ```
42
+
43
+ ## Skill Priority
44
+
45
+ When multiple skills could apply:
46
+
47
+ 1. **Process skills first** — `wz:brainstorming`, `wz:debugging` determine HOW to approach the task.
48
+ 2. **Implementation skills second** — `wz:tdd`, `wz:design` guide execution.
49
+
50
+ ## Rules
51
+
52
+ - Skills must reference `input/`, canonical roles/workflows, or external state-root conventions.
53
+ - Skills must not instruct running background services outside the canonical workflow surface.
54
+ - When a skill contradicts the current operating model, it is removed — not left conflicting.
55
+ - Only active skills belong in `skills/`.
56
+
57
+ ## Integration with Workflows
58
+
59
+ ```
60
+ clarify → discover (scan-project) → specify → design (wz:design) → plan (wz:brainstorming + wz:writing-plans) → execute (wz:tdd) → verify (wz:verification) → review → learn → prepare-next
61
+ ```
62
+
63
+ Skills activate within phases. A phase entrypoint does not replace skill invocation — both operate simultaneously.
@@ -0,0 +1,96 @@
1
+ # wz:brainstorming
2
+
3
+ > Turn operator briefings into approved designs with explicit trade-offs — before a single line of implementation code is written.
4
+
5
+ | Property | Value |
6
+ |---|---|
7
+ | **ID** | `wz:brainstorming` |
8
+ | **Type** | Rigid |
9
+ | **Trigger** | "About to enter plan mode" OR any implementation request without an approved design |
10
+ | **Failure mode** | Coding without a reviewed design — produces unvalidated output |
11
+
12
+ ## Purpose
13
+
14
+ `wz:brainstorming` creates a mandatory design gate between "I want X" and "I'm building X". It forces the agent to surface trade-offs, resolve ambiguities that affect scope or architecture, and get operator approval before implementation starts. This prevents the most expensive failure mode in AI-assisted engineering: confident, well-executed work that solves the wrong problem.
15
+
16
+ ## When to Invoke
17
+
18
+ - Any time the agent is about to enter plan mode and no approved design exists.
19
+ - When an operator briefing describes a feature, change, or fix with architectural implications.
20
+ - When the task scope is unclear and the ambiguity could change what gets built.
21
+
22
+ > [!TIP]
23
+ > `wz:using-skills` will route you here automatically when "Let's build X" or similar phrases appear. If you find yourself reaching for an editor before a design doc exists, this skill has not fired.
24
+
25
+ ## When NOT to Invoke
26
+
27
+ - A trivial, fully-specified, single-file fix where no design decision exists (e.g., "fix the typo on line 14").
28
+ - The design has already been approved and written to `docs/plans/` — proceed to `wz:writing-plans`.
29
+ - Documentation-only changes with no behavioral implications.
30
+
31
+ > [!WARNING]
32
+ > Do not skip brainstorming because the implementation "feels obvious". The value is in surfacing the 20% of the problem that turns a clean solution into a rework cycle.
33
+
34
+ ## Phases
35
+
36
+ 1. **Read `input/`** — understand operator constraints, requirements, and context before touching the repo.
37
+ 2. **Inspect repo surfaces** — read only the minimum surfaces needed to understand the request (do not do a full scan).
38
+ 3. **Ask clarifying questions** — only for ambiguities that change scope, architecture, or acceptance criteria. One round only.
39
+ 4. **Propose 2-3 approaches** — each with trade-offs and a recommendation. Make the recommendation explicit.
40
+ 5. **Operator review** — wait for approval. Do not proceed past this point autonomously.
41
+ 6. **Write approved design** — to `docs/plans/YYYY-MM-DD-<topic>-design.md`.
42
+ 7. **Hand off** — invoke `wz:writing-plans` with the approved design as input.
43
+
44
+ ## Input
45
+
46
+ - `input/` directory — operator-supplied requirements, constraints, context
47
+ - Relevant repo surfaces (minimum necessary)
48
+
49
+ ## Output
50
+
51
+ | Artifact | Location | Required |
52
+ |---|---|---|
53
+ | Design document | `docs/plans/YYYY-MM-DD-<topic>-design.md` | Yes |
54
+ | Trade-off summary | Within design doc | Yes |
55
+ | Open questions / resolved assumptions | Within design doc | Yes |
56
+ | Explicit recommendation + rejected alternatives | Within design doc | Yes |
57
+
58
+ ## Example
59
+
60
+ **Scenario:** Operator says "Add rate limiting to the API."
61
+
62
+ ```
63
+ Agent: Invoking wz:brainstorming skill.
64
+ Agent: "Using wz:brainstorming to turn the rate limiting briefing into an approved design."
65
+
66
+ [Reads input/ — finds: target endpoint, expected traffic ~1k req/s, Redis available]
67
+ [Reads src/api/ — finds Express middleware pattern already in use]
68
+
69
+ Agent: "One clarifying question: should rate limiting apply per-IP, per-auth-token, or both?"
70
+ Operator: "Per-auth-token."
71
+
72
+ Agent proposes:
73
+ Option A: In-process sliding window (simple, no external dep, loses state on restart)
74
+ Option B: Redis token bucket (stateful, accurate, requires Redis client setup)
75
+ Option C: Upstream proxy-level (nginx, zero app code, loses per-token granularity)
76
+
77
+ Recommendation: Option B — Redis is already in the stack, token-based accuracy matches the stated need.
78
+
79
+ [Operator approves Option B]
80
+
81
+ Agent: Writing design to docs/plans/2026-03-13-rate-limiting-design.md
82
+ Agent: Invoking wz:writing-plans...
83
+ ```
84
+
85
+ ## Integration
86
+
87
+ `wz:brainstorming` is the mandatory first step in the plan → execute chain:
88
+
89
+ ```
90
+ wz:brainstorming (design approved)
91
+ → wz:writing-plans (implementation plan produced)
92
+ → wz:tdd (RED/GREEN/REFACTOR execution)
93
+ → wz:verification (completion proof)
94
+ ```
95
+
96
+ It also feeds `run-audit` in plan mode: when audit findings are approved by the operator, they become the equivalent of a brainstorming-approved design and flow directly into `wz:writing-plans`.