@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.
- package/AGENTS.md +111 -0
- package/CHANGELOG.md +14 -0
- package/CONTRIBUTING.md +101 -0
- package/LICENSE +21 -0
- package/README.md +314 -0
- package/assets/composition-engine.mmd +34 -0
- package/assets/demo-script.sh +17 -0
- package/assets/logo-dark.svg +14 -0
- package/assets/logo.svg +14 -0
- package/assets/pipeline.mmd +39 -0
- package/assets/record-demo.sh +51 -0
- package/docs/README.md +51 -0
- package/docs/adapters/context-mode.md +60 -0
- package/docs/concepts/architecture.md +87 -0
- package/docs/concepts/artifact-model.md +60 -0
- package/docs/concepts/composition-engine.md +36 -0
- package/docs/concepts/indexing-and-recall.md +160 -0
- package/docs/concepts/observability.md +41 -0
- package/docs/concepts/roles-and-workflows.md +59 -0
- package/docs/concepts/terminology-policy.md +27 -0
- package/docs/getting-started/01-installation.md +78 -0
- package/docs/getting-started/02-first-run.md +102 -0
- package/docs/getting-started/03-adding-to-project.md +15 -0
- package/docs/getting-started/04-host-setup.md +15 -0
- package/docs/guides/ci-integration.md +15 -0
- package/docs/guides/creating-skills.md +15 -0
- package/docs/guides/expertise-module-authoring.md +15 -0
- package/docs/guides/hook-development.md +15 -0
- package/docs/guides/memory-and-learnings.md +34 -0
- package/docs/guides/multi-host-export.md +15 -0
- package/docs/guides/troubleshooting.md +101 -0
- package/docs/guides/writing-custom-roles.md +15 -0
- package/docs/plans/2026-03-15-cli-pipeline-integration-design.md +592 -0
- package/docs/plans/2026-03-15-cli-pipeline-integration-plan.md +598 -0
- package/docs/plans/2026-03-15-docs-enforcement-plan.md +238 -0
- package/docs/readmes/INDEX.md +99 -0
- package/docs/readmes/features/expertise/README.md +171 -0
- package/docs/readmes/features/exports/README.md +222 -0
- package/docs/readmes/features/hooks/README.md +103 -0
- package/docs/readmes/features/hooks/loop-cap-guard.md +133 -0
- package/docs/readmes/features/hooks/post-tool-capture.md +121 -0
- package/docs/readmes/features/hooks/post-tool-lint.md +130 -0
- package/docs/readmes/features/hooks/pre-compact-summary.md +122 -0
- package/docs/readmes/features/hooks/pre-tool-capture-route.md +100 -0
- package/docs/readmes/features/hooks/protected-path-write-guard.md +128 -0
- package/docs/readmes/features/hooks/session-start.md +119 -0
- package/docs/readmes/features/hooks/stop-handoff-harvest.md +125 -0
- package/docs/readmes/features/roles/README.md +157 -0
- package/docs/readmes/features/roles/clarifier.md +152 -0
- package/docs/readmes/features/roles/content-author.md +190 -0
- package/docs/readmes/features/roles/designer.md +193 -0
- package/docs/readmes/features/roles/executor.md +184 -0
- package/docs/readmes/features/roles/learner.md +210 -0
- package/docs/readmes/features/roles/planner.md +182 -0
- package/docs/readmes/features/roles/researcher.md +164 -0
- package/docs/readmes/features/roles/reviewer.md +184 -0
- package/docs/readmes/features/roles/specifier.md +162 -0
- package/docs/readmes/features/roles/verifier.md +215 -0
- package/docs/readmes/features/schemas/README.md +178 -0
- package/docs/readmes/features/skills/README.md +63 -0
- package/docs/readmes/features/skills/brainstorming.md +96 -0
- package/docs/readmes/features/skills/debugging.md +148 -0
- package/docs/readmes/features/skills/design.md +120 -0
- package/docs/readmes/features/skills/prepare-next.md +109 -0
- package/docs/readmes/features/skills/run-audit.md +159 -0
- package/docs/readmes/features/skills/scan-project.md +109 -0
- package/docs/readmes/features/skills/self-audit.md +176 -0
- package/docs/readmes/features/skills/tdd.md +137 -0
- package/docs/readmes/features/skills/using-skills.md +92 -0
- package/docs/readmes/features/skills/verification.md +120 -0
- package/docs/readmes/features/skills/writing-plans.md +104 -0
- package/docs/readmes/features/tooling/README.md +320 -0
- package/docs/readmes/features/workflows/README.md +186 -0
- package/docs/readmes/features/workflows/author.md +181 -0
- package/docs/readmes/features/workflows/clarify.md +154 -0
- package/docs/readmes/features/workflows/design-review.md +171 -0
- package/docs/readmes/features/workflows/design.md +169 -0
- package/docs/readmes/features/workflows/discover.md +162 -0
- package/docs/readmes/features/workflows/execute.md +173 -0
- package/docs/readmes/features/workflows/learn.md +167 -0
- package/docs/readmes/features/workflows/plan-review.md +165 -0
- package/docs/readmes/features/workflows/plan.md +170 -0
- package/docs/readmes/features/workflows/prepare-next.md +167 -0
- package/docs/readmes/features/workflows/review.md +169 -0
- package/docs/readmes/features/workflows/run-audit.md +191 -0
- package/docs/readmes/features/workflows/spec-challenge.md +159 -0
- package/docs/readmes/features/workflows/specify.md +160 -0
- package/docs/readmes/features/workflows/verify.md +177 -0
- package/docs/readmes/packages/README.md +50 -0
- package/docs/readmes/packages/ajv.md +117 -0
- package/docs/readmes/packages/context-mode.md +118 -0
- package/docs/readmes/packages/gray-matter.md +116 -0
- package/docs/readmes/packages/node-test.md +137 -0
- package/docs/readmes/packages/yaml.md +112 -0
- package/docs/reference/configuration-reference.md +159 -0
- package/docs/reference/expertise-index.md +52 -0
- package/docs/reference/git-flow.md +43 -0
- package/docs/reference/hooks.md +87 -0
- package/docs/reference/host-exports.md +50 -0
- package/docs/reference/launch-checklist.md +172 -0
- package/docs/reference/marketplace-listings.md +76 -0
- package/docs/reference/release-process.md +34 -0
- package/docs/reference/roles-reference.md +77 -0
- package/docs/reference/skills.md +33 -0
- package/docs/reference/templates.md +29 -0
- package/docs/reference/tooling-cli.md +94 -0
- package/docs/truth-claims.yaml +222 -0
- package/expertise/PROGRESS.md +63 -0
- package/expertise/README.md +18 -0
- package/expertise/antipatterns/PROGRESS.md +56 -0
- package/expertise/antipatterns/backend/api-design-antipatterns.md +1271 -0
- package/expertise/antipatterns/backend/auth-antipatterns.md +1195 -0
- package/expertise/antipatterns/backend/caching-antipatterns.md +622 -0
- package/expertise/antipatterns/backend/database-antipatterns.md +1038 -0
- package/expertise/antipatterns/backend/index.md +24 -0
- package/expertise/antipatterns/backend/microservices-antipatterns.md +850 -0
- package/expertise/antipatterns/code/architecture-antipatterns.md +919 -0
- package/expertise/antipatterns/code/async-antipatterns.md +622 -0
- package/expertise/antipatterns/code/code-smells.md +1186 -0
- package/expertise/antipatterns/code/dependency-antipatterns.md +1209 -0
- package/expertise/antipatterns/code/error-handling-antipatterns.md +1360 -0
- package/expertise/antipatterns/code/index.md +27 -0
- package/expertise/antipatterns/code/naming-and-abstraction.md +1118 -0
- package/expertise/antipatterns/code/state-management-antipatterns.md +1076 -0
- package/expertise/antipatterns/code/testing-antipatterns.md +1053 -0
- package/expertise/antipatterns/design/accessibility-antipatterns.md +1136 -0
- package/expertise/antipatterns/design/dark-patterns.md +1121 -0
- package/expertise/antipatterns/design/index.md +22 -0
- package/expertise/antipatterns/design/ui-antipatterns.md +1202 -0
- package/expertise/antipatterns/design/ux-antipatterns.md +680 -0
- package/expertise/antipatterns/frontend/css-layout-antipatterns.md +691 -0
- package/expertise/antipatterns/frontend/flutter-antipatterns.md +1827 -0
- package/expertise/antipatterns/frontend/index.md +23 -0
- package/expertise/antipatterns/frontend/mobile-antipatterns.md +573 -0
- package/expertise/antipatterns/frontend/react-antipatterns.md +1128 -0
- package/expertise/antipatterns/frontend/spa-antipatterns.md +1235 -0
- package/expertise/antipatterns/index.md +31 -0
- package/expertise/antipatterns/performance/index.md +20 -0
- package/expertise/antipatterns/performance/performance-antipatterns.md +1013 -0
- package/expertise/antipatterns/performance/premature-optimization.md +623 -0
- package/expertise/antipatterns/performance/scaling-antipatterns.md +785 -0
- package/expertise/antipatterns/process/ai-coding-antipatterns.md +853 -0
- package/expertise/antipatterns/process/code-review-antipatterns.md +656 -0
- package/expertise/antipatterns/process/deployment-antipatterns.md +920 -0
- package/expertise/antipatterns/process/index.md +23 -0
- package/expertise/antipatterns/process/technical-debt-antipatterns.md +647 -0
- package/expertise/antipatterns/security/index.md +20 -0
- package/expertise/antipatterns/security/secrets-antipatterns.md +849 -0
- package/expertise/antipatterns/security/security-theater.md +843 -0
- package/expertise/antipatterns/security/vulnerability-patterns.md +801 -0
- package/expertise/architecture/PROGRESS.md +70 -0
- package/expertise/architecture/data/caching-architecture.md +671 -0
- package/expertise/architecture/data/data-consistency.md +574 -0
- package/expertise/architecture/data/data-modeling.md +536 -0
- package/expertise/architecture/data/event-streams-and-queues.md +634 -0
- package/expertise/architecture/data/index.md +25 -0
- package/expertise/architecture/data/search-architecture.md +663 -0
- package/expertise/architecture/data/sql-vs-nosql.md +708 -0
- package/expertise/architecture/decisions/architecture-decision-records.md +640 -0
- package/expertise/architecture/decisions/build-vs-buy.md +616 -0
- package/expertise/architecture/decisions/index.md +23 -0
- package/expertise/architecture/decisions/monolith-to-microservices.md +790 -0
- package/expertise/architecture/decisions/technology-selection.md +616 -0
- package/expertise/architecture/distributed/cap-theorem-and-tradeoffs.md +800 -0
- package/expertise/architecture/distributed/circuit-breaker-bulkhead.md +741 -0
- package/expertise/architecture/distributed/consensus-and-coordination.md +796 -0
- package/expertise/architecture/distributed/distributed-systems-fundamentals.md +564 -0
- package/expertise/architecture/distributed/idempotency-and-retry.md +796 -0
- package/expertise/architecture/distributed/index.md +25 -0
- package/expertise/architecture/distributed/saga-pattern.md +797 -0
- package/expertise/architecture/foundations/architectural-thinking.md +460 -0
- package/expertise/architecture/foundations/coupling-and-cohesion.md +770 -0
- package/expertise/architecture/foundations/design-principles-solid.md +649 -0
- package/expertise/architecture/foundations/domain-driven-design.md +719 -0
- package/expertise/architecture/foundations/index.md +25 -0
- package/expertise/architecture/foundations/separation-of-concerns.md +472 -0
- package/expertise/architecture/foundations/twelve-factor-app.md +797 -0
- package/expertise/architecture/index.md +34 -0
- package/expertise/architecture/integration/api-design-graphql.md +638 -0
- package/expertise/architecture/integration/api-design-grpc.md +804 -0
- package/expertise/architecture/integration/api-design-rest.md +892 -0
- package/expertise/architecture/integration/index.md +25 -0
- package/expertise/architecture/integration/third-party-integration.md +795 -0
- package/expertise/architecture/integration/webhooks-and-callbacks.md +1152 -0
- package/expertise/architecture/integration/websockets-realtime.md +791 -0
- package/expertise/architecture/mobile-architecture/index.md +22 -0
- package/expertise/architecture/mobile-architecture/mobile-app-architecture.md +780 -0
- package/expertise/architecture/mobile-architecture/mobile-backend-for-frontend.md +670 -0
- package/expertise/architecture/mobile-architecture/offline-first.md +719 -0
- package/expertise/architecture/mobile-architecture/push-and-sync.md +782 -0
- package/expertise/architecture/patterns/cqrs-event-sourcing.md +717 -0
- package/expertise/architecture/patterns/event-driven.md +797 -0
- package/expertise/architecture/patterns/hexagonal-clean-architecture.md +870 -0
- package/expertise/architecture/patterns/index.md +27 -0
- package/expertise/architecture/patterns/layered-architecture.md +736 -0
- package/expertise/architecture/patterns/microservices.md +753 -0
- package/expertise/architecture/patterns/modular-monolith.md +692 -0
- package/expertise/architecture/patterns/monolith.md +626 -0
- package/expertise/architecture/patterns/plugin-architecture.md +735 -0
- package/expertise/architecture/patterns/serverless.md +780 -0
- package/expertise/architecture/scaling/database-scaling.md +615 -0
- package/expertise/architecture/scaling/feature-flags-and-rollouts.md +757 -0
- package/expertise/architecture/scaling/horizontal-vs-vertical.md +606 -0
- package/expertise/architecture/scaling/index.md +24 -0
- package/expertise/architecture/scaling/multi-tenancy.md +800 -0
- package/expertise/architecture/scaling/stateless-design.md +787 -0
- package/expertise/backend/embedded-firmware.md +625 -0
- package/expertise/backend/go.md +853 -0
- package/expertise/backend/index.md +24 -0
- package/expertise/backend/java-spring.md +448 -0
- package/expertise/backend/node-typescript.md +625 -0
- package/expertise/backend/python-fastapi.md +724 -0
- package/expertise/backend/rust.md +458 -0
- package/expertise/backend/solidity.md +711 -0
- package/expertise/composition-map.yaml +443 -0
- package/expertise/content/foundations/content-modeling.md +395 -0
- package/expertise/content/foundations/editorial-standards.md +449 -0
- package/expertise/content/foundations/index.md +24 -0
- package/expertise/content/foundations/microcopy.md +455 -0
- package/expertise/content/foundations/terminology-governance.md +509 -0
- package/expertise/content/index.md +34 -0
- package/expertise/content/patterns/accessibility-copy.md +518 -0
- package/expertise/content/patterns/index.md +24 -0
- package/expertise/content/patterns/notification-content.md +433 -0
- package/expertise/content/patterns/sample-content.md +486 -0
- package/expertise/content/patterns/state-copy.md +439 -0
- package/expertise/design/PROGRESS.md +58 -0
- package/expertise/design/disciplines/dark-mode-theming.md +577 -0
- package/expertise/design/disciplines/design-systems.md +595 -0
- package/expertise/design/disciplines/index.md +25 -0
- package/expertise/design/disciplines/information-architecture.md +800 -0
- package/expertise/design/disciplines/interaction-design.md +788 -0
- package/expertise/design/disciplines/responsive-design.md +552 -0
- package/expertise/design/disciplines/usability-testing.md +516 -0
- package/expertise/design/disciplines/user-research.md +792 -0
- package/expertise/design/foundations/accessibility-design.md +796 -0
- package/expertise/design/foundations/color-theory.md +797 -0
- package/expertise/design/foundations/iconography.md +795 -0
- package/expertise/design/foundations/index.md +26 -0
- package/expertise/design/foundations/motion-and-animation.md +653 -0
- package/expertise/design/foundations/rtl-design.md +585 -0
- package/expertise/design/foundations/spacing-and-layout.md +607 -0
- package/expertise/design/foundations/typography.md +800 -0
- package/expertise/design/foundations/visual-hierarchy.md +761 -0
- package/expertise/design/index.md +32 -0
- package/expertise/design/patterns/authentication-flows.md +474 -0
- package/expertise/design/patterns/content-consumption.md +789 -0
- package/expertise/design/patterns/data-display.md +618 -0
- package/expertise/design/patterns/e-commerce.md +1494 -0
- package/expertise/design/patterns/feedback-and-states.md +642 -0
- package/expertise/design/patterns/forms-and-input.md +819 -0
- package/expertise/design/patterns/gamification.md +801 -0
- package/expertise/design/patterns/index.md +31 -0
- package/expertise/design/patterns/microinteractions.md +449 -0
- package/expertise/design/patterns/navigation.md +800 -0
- package/expertise/design/patterns/notifications.md +705 -0
- package/expertise/design/patterns/onboarding.md +700 -0
- package/expertise/design/patterns/search-and-filter.md +601 -0
- package/expertise/design/patterns/settings-and-preferences.md +768 -0
- package/expertise/design/patterns/social-and-community.md +748 -0
- package/expertise/design/platforms/desktop-native.md +612 -0
- package/expertise/design/platforms/index.md +25 -0
- package/expertise/design/platforms/mobile-android.md +825 -0
- package/expertise/design/platforms/mobile-cross-platform.md +983 -0
- package/expertise/design/platforms/mobile-ios.md +699 -0
- package/expertise/design/platforms/tablet.md +794 -0
- package/expertise/design/platforms/web-dashboard.md +790 -0
- package/expertise/design/platforms/web-responsive.md +550 -0
- package/expertise/design/psychology/behavioral-nudges.md +449 -0
- package/expertise/design/psychology/cognitive-load.md +1191 -0
- package/expertise/design/psychology/error-psychology.md +778 -0
- package/expertise/design/psychology/index.md +22 -0
- package/expertise/design/psychology/persuasive-design.md +736 -0
- package/expertise/design/psychology/user-mental-models.md +623 -0
- package/expertise/design/tooling/open-pencil.md +266 -0
- package/expertise/frontend/angular.md +1073 -0
- package/expertise/frontend/desktop-electron.md +546 -0
- package/expertise/frontend/flutter.md +782 -0
- package/expertise/frontend/index.md +27 -0
- package/expertise/frontend/native-android.md +409 -0
- package/expertise/frontend/native-ios.md +490 -0
- package/expertise/frontend/react-native.md +1160 -0
- package/expertise/frontend/react.md +808 -0
- package/expertise/frontend/vue.md +1089 -0
- package/expertise/humanize/domain-rules-code.md +79 -0
- package/expertise/humanize/domain-rules-content.md +67 -0
- package/expertise/humanize/domain-rules-technical-docs.md +56 -0
- package/expertise/humanize/index.md +35 -0
- package/expertise/humanize/self-audit-checklist.md +87 -0
- package/expertise/humanize/sentence-patterns.md +218 -0
- package/expertise/humanize/vocabulary-blacklist.md +105 -0
- package/expertise/i18n/PROGRESS.md +65 -0
- package/expertise/i18n/advanced/accessibility-and-i18n.md +28 -0
- package/expertise/i18n/advanced/bidirectional-text-algorithm.md +38 -0
- package/expertise/i18n/advanced/complex-scripts.md +30 -0
- package/expertise/i18n/advanced/performance-and-i18n.md +27 -0
- package/expertise/i18n/advanced/testing-i18n.md +28 -0
- package/expertise/i18n/content/content-adaptation.md +23 -0
- package/expertise/i18n/content/locale-specific-formatting.md +23 -0
- package/expertise/i18n/content/machine-translation-integration.md +28 -0
- package/expertise/i18n/content/translation-management.md +29 -0
- package/expertise/i18n/foundations/date-time-calendars.md +67 -0
- package/expertise/i18n/foundations/i18n-architecture.md +272 -0
- package/expertise/i18n/foundations/locale-and-language-tags.md +79 -0
- package/expertise/i18n/foundations/numbers-currency-units.md +61 -0
- package/expertise/i18n/foundations/pluralization-and-gender.md +109 -0
- package/expertise/i18n/foundations/string-externalization.md +236 -0
- package/expertise/i18n/foundations/text-direction-bidi.md +241 -0
- package/expertise/i18n/foundations/unicode-and-encoding.md +86 -0
- package/expertise/i18n/index.md +38 -0
- package/expertise/i18n/platform/backend-i18n.md +31 -0
- package/expertise/i18n/platform/flutter-i18n.md +148 -0
- package/expertise/i18n/platform/native-android-i18n.md +36 -0
- package/expertise/i18n/platform/native-ios-i18n.md +36 -0
- package/expertise/i18n/platform/react-i18n.md +103 -0
- package/expertise/i18n/platform/web-css-i18n.md +81 -0
- package/expertise/i18n/rtl/arabic-specific.md +175 -0
- package/expertise/i18n/rtl/hebrew-specific.md +149 -0
- package/expertise/i18n/rtl/rtl-animations-and-transitions.md +111 -0
- package/expertise/i18n/rtl/rtl-forms-and-input.md +161 -0
- package/expertise/i18n/rtl/rtl-fundamentals.md +211 -0
- package/expertise/i18n/rtl/rtl-icons-and-images.md +181 -0
- package/expertise/i18n/rtl/rtl-layout-mirroring.md +252 -0
- package/expertise/i18n/rtl/rtl-navigation-and-gestures.md +107 -0
- package/expertise/i18n/rtl/rtl-testing-and-qa.md +147 -0
- package/expertise/i18n/rtl/rtl-typography.md +160 -0
- package/expertise/index.md +113 -0
- package/expertise/index.yaml +216 -0
- package/expertise/infrastructure/cloud-aws.md +597 -0
- package/expertise/infrastructure/cloud-gcp.md +599 -0
- package/expertise/infrastructure/cybersecurity.md +816 -0
- package/expertise/infrastructure/database-mongodb.md +447 -0
- package/expertise/infrastructure/database-postgres.md +400 -0
- package/expertise/infrastructure/devops-cicd.md +787 -0
- package/expertise/infrastructure/index.md +27 -0
- package/expertise/performance/PROGRESS.md +50 -0
- package/expertise/performance/backend/api-latency.md +1204 -0
- package/expertise/performance/backend/background-jobs.md +506 -0
- package/expertise/performance/backend/connection-pooling.md +1209 -0
- package/expertise/performance/backend/database-query-optimization.md +515 -0
- package/expertise/performance/backend/index.md +23 -0
- package/expertise/performance/backend/rate-limiting-and-throttling.md +971 -0
- package/expertise/performance/foundations/algorithmic-complexity.md +954 -0
- package/expertise/performance/foundations/caching-strategies.md +489 -0
- package/expertise/performance/foundations/concurrency-and-parallelism.md +847 -0
- package/expertise/performance/foundations/index.md +24 -0
- package/expertise/performance/foundations/measuring-and-profiling.md +440 -0
- package/expertise/performance/foundations/memory-management.md +964 -0
- package/expertise/performance/foundations/performance-budgets.md +1314 -0
- package/expertise/performance/index.md +31 -0
- package/expertise/performance/infrastructure/auto-scaling.md +1059 -0
- package/expertise/performance/infrastructure/cdn-and-edge.md +1081 -0
- package/expertise/performance/infrastructure/index.md +22 -0
- package/expertise/performance/infrastructure/load-balancing.md +1081 -0
- package/expertise/performance/infrastructure/observability.md +1079 -0
- package/expertise/performance/mobile/index.md +23 -0
- package/expertise/performance/mobile/mobile-animations.md +544 -0
- package/expertise/performance/mobile/mobile-memory-battery.md +416 -0
- package/expertise/performance/mobile/mobile-network.md +452 -0
- package/expertise/performance/mobile/mobile-rendering.md +599 -0
- package/expertise/performance/mobile/mobile-startup-time.md +505 -0
- package/expertise/performance/platform-specific/flutter-performance.md +647 -0
- package/expertise/performance/platform-specific/index.md +22 -0
- package/expertise/performance/platform-specific/node-performance.md +1307 -0
- package/expertise/performance/platform-specific/postgres-performance.md +1366 -0
- package/expertise/performance/platform-specific/react-performance.md +1403 -0
- package/expertise/performance/web/bundle-optimization.md +1239 -0
- package/expertise/performance/web/image-and-media.md +636 -0
- package/expertise/performance/web/index.md +24 -0
- package/expertise/performance/web/network-optimization.md +1133 -0
- package/expertise/performance/web/rendering-performance.md +1098 -0
- package/expertise/performance/web/ssr-and-hydration.md +918 -0
- package/expertise/performance/web/web-vitals.md +1374 -0
- package/expertise/quality/accessibility.md +985 -0
- package/expertise/quality/evidence-based-verification.md +499 -0
- package/expertise/quality/index.md +24 -0
- package/expertise/quality/ml-model-audit.md +614 -0
- package/expertise/quality/performance.md +600 -0
- package/expertise/quality/testing-api.md +891 -0
- package/expertise/quality/testing-mobile.md +496 -0
- package/expertise/quality/testing-web.md +849 -0
- package/expertise/security/PROGRESS.md +54 -0
- package/expertise/security/agentic-identity.md +540 -0
- package/expertise/security/compliance-frameworks.md +601 -0
- package/expertise/security/data/data-encryption.md +364 -0
- package/expertise/security/data/data-privacy-gdpr.md +692 -0
- package/expertise/security/data/database-security.md +1171 -0
- package/expertise/security/data/index.md +22 -0
- package/expertise/security/data/pii-handling.md +531 -0
- package/expertise/security/foundations/authentication.md +1041 -0
- package/expertise/security/foundations/authorization.md +603 -0
- package/expertise/security/foundations/cryptography.md +1001 -0
- package/expertise/security/foundations/index.md +25 -0
- package/expertise/security/foundations/owasp-top-10.md +1354 -0
- package/expertise/security/foundations/secrets-management.md +1217 -0
- package/expertise/security/foundations/secure-sdlc.md +700 -0
- package/expertise/security/foundations/supply-chain-security.md +698 -0
- package/expertise/security/index.md +31 -0
- package/expertise/security/infrastructure/cloud-security-aws.md +1296 -0
- package/expertise/security/infrastructure/cloud-security-gcp.md +1376 -0
- package/expertise/security/infrastructure/container-security.md +721 -0
- package/expertise/security/infrastructure/incident-response.md +1295 -0
- package/expertise/security/infrastructure/index.md +24 -0
- package/expertise/security/infrastructure/logging-and-monitoring.md +1618 -0
- package/expertise/security/infrastructure/network-security.md +1337 -0
- package/expertise/security/mobile/index.md +23 -0
- package/expertise/security/mobile/mobile-android-security.md +1218 -0
- package/expertise/security/mobile/mobile-binary-protection.md +1229 -0
- package/expertise/security/mobile/mobile-data-storage.md +1265 -0
- package/expertise/security/mobile/mobile-ios-security.md +1401 -0
- package/expertise/security/mobile/mobile-network-security.md +1520 -0
- package/expertise/security/smart-contract-security.md +594 -0
- package/expertise/security/testing/index.md +22 -0
- package/expertise/security/testing/penetration-testing.md +1258 -0
- package/expertise/security/testing/security-code-review.md +1765 -0
- package/expertise/security/testing/threat-modeling.md +1074 -0
- package/expertise/security/testing/vulnerability-scanning.md +1062 -0
- package/expertise/security/web/api-security.md +586 -0
- package/expertise/security/web/cors-and-headers.md +433 -0
- package/expertise/security/web/csrf.md +562 -0
- package/expertise/security/web/file-upload.md +1477 -0
- package/expertise/security/web/index.md +25 -0
- package/expertise/security/web/injection.md +1375 -0
- package/expertise/security/web/session-management.md +1101 -0
- package/expertise/security/web/xss.md +1158 -0
- package/exports/README.md +17 -0
- package/exports/hosts/claude/.claude/agents/clarifier.md +42 -0
- package/exports/hosts/claude/.claude/agents/content-author.md +63 -0
- package/exports/hosts/claude/.claude/agents/designer.md +55 -0
- package/exports/hosts/claude/.claude/agents/executor.md +55 -0
- package/exports/hosts/claude/.claude/agents/learner.md +51 -0
- package/exports/hosts/claude/.claude/agents/planner.md +53 -0
- package/exports/hosts/claude/.claude/agents/researcher.md +43 -0
- package/exports/hosts/claude/.claude/agents/reviewer.md +54 -0
- package/exports/hosts/claude/.claude/agents/specifier.md +47 -0
- package/exports/hosts/claude/.claude/agents/verifier.md +71 -0
- package/exports/hosts/claude/.claude/commands/author.md +42 -0
- package/exports/hosts/claude/.claude/commands/clarify.md +38 -0
- package/exports/hosts/claude/.claude/commands/design-review.md +46 -0
- package/exports/hosts/claude/.claude/commands/design.md +44 -0
- package/exports/hosts/claude/.claude/commands/discover.md +37 -0
- package/exports/hosts/claude/.claude/commands/execute.md +48 -0
- package/exports/hosts/claude/.claude/commands/learn.md +38 -0
- package/exports/hosts/claude/.claude/commands/plan-review.md +42 -0
- package/exports/hosts/claude/.claude/commands/plan.md +39 -0
- package/exports/hosts/claude/.claude/commands/prepare-next.md +37 -0
- package/exports/hosts/claude/.claude/commands/review.md +40 -0
- package/exports/hosts/claude/.claude/commands/run-audit.md +41 -0
- package/exports/hosts/claude/.claude/commands/spec-challenge.md +41 -0
- package/exports/hosts/claude/.claude/commands/specify.md +38 -0
- package/exports/hosts/claude/.claude/commands/verify.md +37 -0
- package/exports/hosts/claude/.claude/settings.json +34 -0
- package/exports/hosts/claude/CLAUDE.md +19 -0
- package/exports/hosts/claude/export.manifest.json +38 -0
- package/exports/hosts/claude/host-package.json +67 -0
- package/exports/hosts/codex/AGENTS.md +19 -0
- package/exports/hosts/codex/export.manifest.json +38 -0
- package/exports/hosts/codex/host-package.json +41 -0
- package/exports/hosts/cursor/.cursor/hooks.json +16 -0
- package/exports/hosts/cursor/.cursor/rules/wazir-core.mdc +19 -0
- package/exports/hosts/cursor/export.manifest.json +38 -0
- package/exports/hosts/cursor/host-package.json +42 -0
- package/exports/hosts/gemini/GEMINI.md +19 -0
- package/exports/hosts/gemini/export.manifest.json +38 -0
- package/exports/hosts/gemini/host-package.json +41 -0
- package/hooks/README.md +18 -0
- package/hooks/definitions/loop_cap_guard.yaml +21 -0
- package/hooks/definitions/post_tool_capture.yaml +24 -0
- package/hooks/definitions/pre_compact_summary.yaml +19 -0
- package/hooks/definitions/pre_tool_capture_route.yaml +19 -0
- package/hooks/definitions/protected_path_write_guard.yaml +19 -0
- package/hooks/definitions/session_start.yaml +19 -0
- package/hooks/definitions/stop_handoff_harvest.yaml +20 -0
- package/hooks/loop-cap-guard +17 -0
- package/hooks/post-tool-lint +36 -0
- package/hooks/protected-path-write-guard +17 -0
- package/hooks/session-start +41 -0
- package/llms-full.txt +2355 -0
- package/llms.txt +43 -0
- package/package.json +79 -0
- package/roles/README.md +20 -0
- package/roles/clarifier.md +42 -0
- package/roles/content-author.md +63 -0
- package/roles/designer.md +55 -0
- package/roles/executor.md +55 -0
- package/roles/learner.md +51 -0
- package/roles/planner.md +53 -0
- package/roles/researcher.md +43 -0
- package/roles/reviewer.md +54 -0
- package/roles/specifier.md +47 -0
- package/roles/verifier.md +71 -0
- package/schemas/README.md +24 -0
- package/schemas/accepted-learning.schema.json +20 -0
- package/schemas/author-artifact.schema.json +156 -0
- package/schemas/clarification.schema.json +19 -0
- package/schemas/design-artifact.schema.json +80 -0
- package/schemas/docs-claim.schema.json +18 -0
- package/schemas/export-manifest.schema.json +20 -0
- package/schemas/hook.schema.json +67 -0
- package/schemas/host-export-package.schema.json +18 -0
- package/schemas/implementation-plan.schema.json +19 -0
- package/schemas/proposed-learning.schema.json +19 -0
- package/schemas/research.schema.json +18 -0
- package/schemas/review.schema.json +29 -0
- package/schemas/run-manifest.schema.json +18 -0
- package/schemas/spec-challenge.schema.json +18 -0
- package/schemas/spec.schema.json +20 -0
- package/schemas/usage.schema.json +102 -0
- package/schemas/verification-proof.schema.json +29 -0
- package/schemas/wazir-manifest.schema.json +173 -0
- package/skills/README.md +40 -0
- package/skills/brainstorming/SKILL.md +77 -0
- package/skills/debugging/SKILL.md +50 -0
- package/skills/design/SKILL.md +61 -0
- package/skills/dispatching-parallel-agents/SKILL.md +128 -0
- package/skills/executing-plans/SKILL.md +70 -0
- package/skills/finishing-a-development-branch/SKILL.md +169 -0
- package/skills/humanize/SKILL.md +123 -0
- package/skills/init-pipeline/SKILL.md +124 -0
- package/skills/prepare-next/SKILL.md +20 -0
- package/skills/receiving-code-review/SKILL.md +123 -0
- package/skills/requesting-code-review/SKILL.md +105 -0
- package/skills/requesting-code-review/code-reviewer.md +108 -0
- package/skills/run-audit/SKILL.md +197 -0
- package/skills/scan-project/SKILL.md +41 -0
- package/skills/self-audit/SKILL.md +153 -0
- package/skills/subagent-driven-development/SKILL.md +154 -0
- package/skills/subagent-driven-development/code-quality-reviewer-prompt.md +26 -0
- package/skills/subagent-driven-development/implementer-prompt.md +102 -0
- package/skills/subagent-driven-development/spec-reviewer-prompt.md +61 -0
- package/skills/tdd/SKILL.md +23 -0
- package/skills/using-git-worktrees/SKILL.md +163 -0
- package/skills/using-skills/SKILL.md +95 -0
- package/skills/verification/SKILL.md +22 -0
- package/skills/wazir/SKILL.md +463 -0
- package/skills/writing-plans/SKILL.md +30 -0
- package/skills/writing-skills/SKILL.md +157 -0
- package/skills/writing-skills/anthropic-best-practices.md +122 -0
- package/skills/writing-skills/persuasion-principles.md +50 -0
- package/templates/README.md +20 -0
- package/templates/artifacts/README.md +10 -0
- package/templates/artifacts/accepted-learning.md +19 -0
- package/templates/artifacts/accepted-learning.template.json +12 -0
- package/templates/artifacts/author.md +74 -0
- package/templates/artifacts/author.template.json +19 -0
- package/templates/artifacts/clarification.md +21 -0
- package/templates/artifacts/clarification.template.json +12 -0
- package/templates/artifacts/execute-notes.md +19 -0
- package/templates/artifacts/implementation-plan.md +21 -0
- package/templates/artifacts/implementation-plan.template.json +11 -0
- package/templates/artifacts/learning-proposal.md +19 -0
- package/templates/artifacts/next-run-handoff.md +21 -0
- package/templates/artifacts/plan-review.md +19 -0
- package/templates/artifacts/proposed-learning.template.json +12 -0
- package/templates/artifacts/research.md +21 -0
- package/templates/artifacts/research.template.json +12 -0
- package/templates/artifacts/review-findings.md +19 -0
- package/templates/artifacts/review.template.json +11 -0
- package/templates/artifacts/run-manifest.template.json +8 -0
- package/templates/artifacts/spec-challenge.md +19 -0
- package/templates/artifacts/spec-challenge.template.json +11 -0
- package/templates/artifacts/spec.md +21 -0
- package/templates/artifacts/spec.template.json +12 -0
- package/templates/artifacts/verification-proof.md +19 -0
- package/templates/artifacts/verification-proof.template.json +11 -0
- package/templates/examples/accepted-learning.example.json +14 -0
- package/templates/examples/author.example.json +152 -0
- package/templates/examples/clarification.example.json +15 -0
- package/templates/examples/docs-claim.example.json +8 -0
- package/templates/examples/export-manifest.example.json +7 -0
- package/templates/examples/host-export-package.example.json +11 -0
- package/templates/examples/implementation-plan.example.json +17 -0
- package/templates/examples/proposed-learning.example.json +13 -0
- package/templates/examples/research.example.json +15 -0
- package/templates/examples/research.example.md +6 -0
- package/templates/examples/review.example.json +17 -0
- package/templates/examples/run-manifest.example.json +9 -0
- package/templates/examples/spec-challenge.example.json +14 -0
- package/templates/examples/spec.example.json +21 -0
- package/templates/examples/verification-proof.example.json +21 -0
- package/templates/examples/wazir-manifest.example.yaml +65 -0
- package/templates/task-definition-schema.md +99 -0
- package/tooling/README.md +20 -0
- package/tooling/src/adapters/context-mode.js +50 -0
- package/tooling/src/capture/command.js +376 -0
- package/tooling/src/capture/store.js +99 -0
- package/tooling/src/capture/usage.js +270 -0
- package/tooling/src/checks/branches.js +50 -0
- package/tooling/src/checks/brand-truth.js +110 -0
- package/tooling/src/checks/changelog.js +231 -0
- package/tooling/src/checks/command-registry.js +36 -0
- package/tooling/src/checks/commits.js +102 -0
- package/tooling/src/checks/docs-drift.js +103 -0
- package/tooling/src/checks/docs-truth.js +201 -0
- package/tooling/src/checks/runtime-surface.js +156 -0
- package/tooling/src/cli.js +116 -0
- package/tooling/src/command-options.js +56 -0
- package/tooling/src/commands/validate.js +320 -0
- package/tooling/src/doctor/command.js +91 -0
- package/tooling/src/export/command.js +77 -0
- package/tooling/src/export/compiler.js +498 -0
- package/tooling/src/guards/loop-cap-guard.js +52 -0
- package/tooling/src/guards/protected-path-write-guard.js +67 -0
- package/tooling/src/index/command.js +152 -0
- package/tooling/src/index/storage.js +1061 -0
- package/tooling/src/index/summarizers.js +261 -0
- package/tooling/src/loaders.js +18 -0
- package/tooling/src/project-root.js +22 -0
- package/tooling/src/recall/command.js +225 -0
- package/tooling/src/schema-validator.js +30 -0
- package/tooling/src/state-root.js +40 -0
- package/tooling/src/status/command.js +71 -0
- package/wazir.manifest.yaml +135 -0
- package/workflows/README.md +19 -0
- package/workflows/author.md +42 -0
- package/workflows/clarify.md +38 -0
- package/workflows/design-review.md +46 -0
- package/workflows/design.md +44 -0
- package/workflows/discover.md +37 -0
- package/workflows/execute.md +48 -0
- package/workflows/learn.md +38 -0
- package/workflows/plan-review.md +42 -0
- package/workflows/plan.md +39 -0
- package/workflows/prepare-next.md +37 -0
- package/workflows/review.md +40 -0
- package/workflows/run-audit.md +41 -0
- package/workflows/spec-challenge.md +41 -0
- package/workflows/specify.md +38 -0
- package/workflows/verify.md +37 -0
|
@@ -0,0 +1,215 @@
|
|
|
1
|
+
# Verifier
|
|
2
|
+
|
|
3
|
+
  
|
|
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`.
|