@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,598 @@
|
|
|
1
|
+
# CLI Pipeline Integration -- Implementation Plan
|
|
2
|
+
|
|
3
|
+
> **Date:** 2026-03-15
|
|
4
|
+
> **Source:** Design doc v4, spec-hardener-reviewed task specs (004-016)
|
|
5
|
+
> **Total tasks:** 13 (tasks 004-016)
|
|
6
|
+
> **Total files modified:** ~34 (3 CLI source + 1 test config + 10 roles + 15 workflows + 2 hooks + 1 guard + test files + N regenerated exports)
|
|
7
|
+
> **Batches:** 3
|
|
8
|
+
> **Commit strategy:** Batch A = individual commits; Batch B = single atomic commit; Batch C = individual commits
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## Executive Summary
|
|
13
|
+
|
|
14
|
+
Wire all 7 Wazir CLI command families into the agent pipeline so that roles, workflows, skills, and hooks leverage indexing, recall, validation, capture, doctor, status, and export drift detection. The implementation spans 13 tasks across 3 batches:
|
|
15
|
+
|
|
16
|
+
- **Batch A** (tasks 004-007): Fix CLI source gaps -- register missing test file, add missing command to registry, wire capture handlers to usage tracking functions, fix increment bug. Zero export drift risk.
|
|
17
|
+
- **Batch B** (tasks 008-014): Pipeline wiring -- add write guard approved flow, extend session-start hook, add context retrieval to 10 roles, add capture events to 15 workflows, extend verifier validation surface, add execute preconditions, rebuild exports. 25 files cause export drift, sealed by a single `export build` + commit.
|
|
18
|
+
- **Batch C** (tasks 015-016): Skill updates -- rewrite debugging OBSERVE phase, add index integration to scan-project. Zero export drift risk.
|
|
19
|
+
|
|
20
|
+
Batch C is independent and can run in parallel with A or B.
|
|
21
|
+
|
|
22
|
+
---
|
|
23
|
+
|
|
24
|
+
## Pre-Flight Checklist
|
|
25
|
+
|
|
26
|
+
Before starting any implementation, verify all of the following:
|
|
27
|
+
|
|
28
|
+
- [ ] **Working branch created:** `feat/cli-pipeline-integration` (or similar) from `main` (Article III)
|
|
29
|
+
- [ ] **Node.js >= 20.0.0** installed
|
|
30
|
+
- [ ] **`npm test` passes on the clean branch** with zero failures
|
|
31
|
+
- [ ] **`wazir export --check` passes** on the clean branch (no pre-existing drift)
|
|
32
|
+
- [ ] **All 13 task spec files reviewed** in `.agent-os/tasks/clarified/` (004-016)
|
|
33
|
+
- [ ] **`tooling/src/capture/command.js` imports confirmed:** `fs` (line 1) and `path` (line 2) are already imported -- no additional module imports needed for task 006
|
|
34
|
+
- [ ] **`tooling/test/capture.test.js` fixture pattern confirmed:** `createCaptureFixture()` provides `fixtureRoot`, `stateRoot`, and `cleanup()` -- new tests must use unique run IDs
|
|
35
|
+
- [ ] **`tooling/test/role-contracts.test.js` is in `test:active`** -- confirmed, so workflow and role structural tests can be added there without new test file registration
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
## Dependency Graph
|
|
40
|
+
|
|
41
|
+
```
|
|
42
|
+
Batch A (parallel where possible):
|
|
43
|
+
004 (register usage.test.js) ─┬─> 006 (wire capture handlers)
|
|
44
|
+
└─> 007 (fix increment bug)
|
|
45
|
+
005 (add capture usage to registry) -- parallel with 004, no deps
|
|
46
|
+
|
|
47
|
+
Batch B (sequential after Batch A complete):
|
|
48
|
+
008 (add pipeline_integration flow) ─┬─> 009 (hook updates)
|
|
49
|
+
├─> 010 (role context retrieval)
|
|
50
|
+
└─> 011 (workflow capture events)
|
|
51
|
+
│ │
|
|
52
|
+
010 + 011 ─> 012 (verifier extension)
|
|
53
|
+
│
|
|
54
|
+
012 ─> 013 (execute preconditions)
|
|
55
|
+
│
|
|
56
|
+
009 + 010 + 011 + 012 + 013 ─> 014 (export build + commit)
|
|
57
|
+
|
|
58
|
+
Batch C (independent, can parallel with any batch):
|
|
59
|
+
015 (debugging skill rewrite)
|
|
60
|
+
016 (scan-project index integration)
|
|
61
|
+
```
|
|
62
|
+
|
|
63
|
+
---
|
|
64
|
+
|
|
65
|
+
## Batch A -- CLI Source Fixes
|
|
66
|
+
|
|
67
|
+
**Commit strategy:** Individual commits per task (or batch all 4 into one)
|
|
68
|
+
**Export drift:** None (CLI source and test files are not hashed)
|
|
69
|
+
**Estimated file count:** 5 files (package.json, command-registry.js, command.js, usage.js, usage.test.js) + capture.test.js = 6
|
|
70
|
+
|
|
71
|
+
### Task 004 -- Register usage.test.js in test:active
|
|
72
|
+
|
|
73
|
+
**What:** Add `tooling/test/capture/usage.test.js` to the `test:active` script in `package.json`.
|
|
74
|
+
|
|
75
|
+
**Files to modify:**
|
|
76
|
+
- `package.json`
|
|
77
|
+
|
|
78
|
+
**TDD steps:**
|
|
79
|
+
1. Run `npm test` and confirm usage.test.js output is absent (red baseline)
|
|
80
|
+
2. Append `tooling/test/capture/usage.test.js` to the `test:active` script (idempotent -- check if already present)
|
|
81
|
+
3. Run `npm test` and confirm usage test output now appears (green)
|
|
82
|
+
|
|
83
|
+
**Verification:**
|
|
84
|
+
```bash
|
|
85
|
+
npm test
|
|
86
|
+
# Confirm usage.test.js appears in output
|
|
87
|
+
```
|
|
88
|
+
|
|
89
|
+
**Commit:**
|
|
90
|
+
```
|
|
91
|
+
test(capture): register usage.test.js in test:active suite
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
---
|
|
95
|
+
|
|
96
|
+
### Task 005 -- Add 'capture usage' to command registry
|
|
97
|
+
|
|
98
|
+
**What:** Add `'wazir capture usage'` to `SUPPORTED_COMMAND_SUBJECTS` Set in `command-registry.js`.
|
|
99
|
+
|
|
100
|
+
**Files to modify:**
|
|
101
|
+
- `tooling/src/checks/command-registry.js`
|
|
102
|
+
- `tooling/test/cli.test.js` (add assertion)
|
|
103
|
+
|
|
104
|
+
**TDD steps:**
|
|
105
|
+
1. Add test in `cli.test.js` asserting `capture usage` is a recognized command (red)
|
|
106
|
+
2. Add `'wazir capture usage'` after `'wazir capture summary'` in the Set (green)
|
|
107
|
+
3. Run `npm test`
|
|
108
|
+
|
|
109
|
+
**Verification:**
|
|
110
|
+
```bash
|
|
111
|
+
npm test
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
**Commit:**
|
|
115
|
+
```
|
|
116
|
+
fix(capture): add capture usage to command registry
|
|
117
|
+
```
|
|
118
|
+
|
|
119
|
+
---
|
|
120
|
+
|
|
121
|
+
### Task 006 -- Wire capture handlers
|
|
122
|
+
|
|
123
|
+
**What:** Wire `initUsage`, `recordCaptureSavings`, `recordPhaseUsage` into `handleInit`, `handleOutput`, `handleEvent` respectively. Write `latest` file in `handleInit`.
|
|
124
|
+
|
|
125
|
+
**Files to modify:**
|
|
126
|
+
- `tooling/src/capture/command.js` (update import line 19, add handler calls)
|
|
127
|
+
- `tooling/test/capture.test.js` (add tests A-D)
|
|
128
|
+
|
|
129
|
+
**TDD steps:**
|
|
130
|
+
1. Add 4 tests (A: init creates usage.json + latest, B: output records savings, C: event records phase usage, D: non-phase event does NOT record phase usage) -- all should fail (red)
|
|
131
|
+
2. Update import on line 19 to add `initUsage, recordCaptureSavings, recordPhaseUsage`
|
|
132
|
+
3. Wire `handleInit`: call `initUsage(runPaths, options.run)` + write `latest` file with try/catch
|
|
133
|
+
4. Wire `handleOutput`: call `recordCaptureSavings(runPaths, Buffer.byteLength(output), 0)` after `writeStatus`
|
|
134
|
+
5. Wire `handleEvent`: call `recordPhaseUsage` only for `phase_enter`/`phase_exit` events
|
|
135
|
+
6. Run `npm test` (green)
|
|
136
|
+
|
|
137
|
+
**Key detail:** `fs` and `path` are already imported at lines 1-2 of `command.js`. No additional module imports needed.
|
|
138
|
+
|
|
139
|
+
**Verification:**
|
|
140
|
+
```bash
|
|
141
|
+
npm test
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
**Commit:**
|
|
145
|
+
```
|
|
146
|
+
feat(capture): wire initUsage, recordCaptureSavings, recordPhaseUsage into handlers
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
### Task 007 -- Fix recordPhaseUsage increment bug
|
|
152
|
+
|
|
153
|
+
**What:** Change line 129 of `usage.js` from `=` (replace) to `+=` (increment) for `events_count`.
|
|
154
|
+
|
|
155
|
+
**Files to modify:**
|
|
156
|
+
- `tooling/src/capture/usage.js` (line 129)
|
|
157
|
+
- `tooling/test/capture/usage.test.js` (add multi-call test)
|
|
158
|
+
|
|
159
|
+
**TDD steps:**
|
|
160
|
+
1. Add test: call `recordPhaseUsage` 3 times with `{events_count: 1}`, assert total is 3 (red -- currently returns 1)
|
|
161
|
+
2. Change `existing.events_count = data.events_count ?? existing.events_count` to `existing.events_count += data.events_count ?? 0`
|
|
162
|
+
3. Do NOT change lines 130-131 (bytes use replace semantics correctly)
|
|
163
|
+
4. Run `npm test` (green)
|
|
164
|
+
|
|
165
|
+
**Verification:**
|
|
166
|
+
```bash
|
|
167
|
+
node --test tooling/test/capture/usage.test.js
|
|
168
|
+
npm test
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
**Commit:**
|
|
172
|
+
```
|
|
173
|
+
fix(capture): use increment semantics for recordPhaseUsage events_count
|
|
174
|
+
```
|
|
175
|
+
|
|
176
|
+
---
|
|
177
|
+
|
|
178
|
+
## Batch B -- Pipeline Wiring
|
|
179
|
+
|
|
180
|
+
**Commit strategy:** Single atomic commit after all tasks complete + export build
|
|
181
|
+
**Export drift:** Yes -- 25 of 27 modified files are hashed canonical sources
|
|
182
|
+
**Estimated file count:** 27 source files + test file modifications + N regenerated export files
|
|
183
|
+
|
|
184
|
+
> **CRITICAL:** All Batch B tasks stage but do NOT commit individually. Task 014 performs the single commit after `export build`.
|
|
185
|
+
|
|
186
|
+
### Task 008 -- Add pipeline_integration approved flow
|
|
187
|
+
|
|
188
|
+
**What:** Add `'pipeline_integration'` to `APPROVED_FLOWS` in the write guard. This unblocks all subsequent Batch B writes to `roles/` and `workflows/`.
|
|
189
|
+
|
|
190
|
+
**Files to modify:**
|
|
191
|
+
- `tooling/src/guards/protected-path-write-guard.js` (add to Set)
|
|
192
|
+
- `tooling/test/guard-hooks.test.js` (add test)
|
|
193
|
+
|
|
194
|
+
**TDD steps:**
|
|
195
|
+
1. Inspect existing `runGuard` helper and guard JSON output format in `guard-hooks.test.js`
|
|
196
|
+
2. Add test: `pipeline_integration` flow allows writing to `roles/executor.md` (red)
|
|
197
|
+
3. Add `'pipeline_integration'` to `APPROVED_FLOWS` Set (green)
|
|
198
|
+
4. Run `npm test`
|
|
199
|
+
|
|
200
|
+
**Verification:**
|
|
201
|
+
```bash
|
|
202
|
+
npm test
|
|
203
|
+
```
|
|
204
|
+
|
|
205
|
+
**Stage only (do not commit):**
|
|
206
|
+
```bash
|
|
207
|
+
git add tooling/src/guards/protected-path-write-guard.js tooling/test/guard-hooks.test.js
|
|
208
|
+
```
|
|
209
|
+
|
|
210
|
+
---
|
|
211
|
+
|
|
212
|
+
### Task 009 -- Update session-start hook and contract
|
|
213
|
+
|
|
214
|
+
**What:** Extend `hooks/session-start` to inject CLI bootstrap guidance. Clean up stale `session_start.yaml` contract.
|
|
215
|
+
|
|
216
|
+
**Files to modify:**
|
|
217
|
+
- `hooks/session-start` (add CLI bootstrap block)
|
|
218
|
+
- `hooks/definitions/session_start.yaml` (full file replacement)
|
|
219
|
+
|
|
220
|
+
**TDD steps:**
|
|
221
|
+
1. Add test in `guard-hooks.test.js`: hook output matches `/wazir doctor/`, `/wazir index refresh/`, `/wazir index build/`, `/wazir capture init/`, `/runs\/latest/` (red)
|
|
222
|
+
2. Add CLI bootstrap block OUTSIDE the skill if/else in the hook script (always outputs)
|
|
223
|
+
3. Replace `session_start.yaml` entirely (remove `run_id` from input, update output contract, empty `allowed_side_effects`)
|
|
224
|
+
4. Verify hook still exits 0 (Article XIII)
|
|
225
|
+
5. Run `npm test` (green)
|
|
226
|
+
|
|
227
|
+
**Verification:**
|
|
228
|
+
```bash
|
|
229
|
+
npm test
|
|
230
|
+
```
|
|
231
|
+
|
|
232
|
+
**Stage only.**
|
|
233
|
+
|
|
234
|
+
---
|
|
235
|
+
|
|
236
|
+
### Task 010 -- Add context retrieval to all 10 roles
|
|
237
|
+
|
|
238
|
+
**What:** Add `## Context retrieval` section to all 10 role files with tier-appropriate defaults. Update `## Allowed Tools` to mention CLI commands.
|
|
239
|
+
|
|
240
|
+
**Files to modify:**
|
|
241
|
+
- 10 `roles/*.md` files
|
|
242
|
+
- `tooling/test/role-contracts.test.js` (structural tests)
|
|
243
|
+
|
|
244
|
+
**TDD steps:**
|
|
245
|
+
1. Add structural tests: (a) all roles have `## Context retrieval`, (b) section ordering (between Allowed Tools and Required Outputs), (c) Allowed Tools section mentions recall/index (red)
|
|
246
|
+
2. For each role: add `- Wazir CLI recall and index commands (see Context retrieval)` to `## Allowed Tools`
|
|
247
|
+
3. For each role: add `## Context retrieval` section between `## Allowed Tools` and `## Required Outputs` with tier-appropriate content:
|
|
248
|
+
- L1: clarifier, researcher, specifier, content-author, designer, planner
|
|
249
|
+
- Direct read: executor, verifier
|
|
250
|
+
- L1-to-direct-read: reviewer
|
|
251
|
+
- L0: learner
|
|
252
|
+
4. Run `npm test` (green)
|
|
253
|
+
|
|
254
|
+
**Role-tier mapping:**
|
|
255
|
+
|
|
256
|
+
| Role | Default Tier | Fallback |
|
|
257
|
+
|------|-------------|----------|
|
|
258
|
+
| clarifier | L1 | L1 fails -> direct read |
|
|
259
|
+
| researcher | L1 | L1 fails -> direct read |
|
|
260
|
+
| specifier | L1 | L1 fails -> direct read |
|
|
261
|
+
| content-author | L1 | L1 fails -> direct read |
|
|
262
|
+
| designer | L1 | L1 fails -> direct read |
|
|
263
|
+
| planner | L1 | L1 fails -> direct read |
|
|
264
|
+
| executor | direct read | index search fails -> grep/file-tree |
|
|
265
|
+
| verifier | direct read | index search fails -> grep/file-tree |
|
|
266
|
+
| reviewer | L1, escalate to direct | recall fails -> direct read |
|
|
267
|
+
| learner | L0 | L0 fails -> L1 -> direct read |
|
|
268
|
+
|
|
269
|
+
**Verification:**
|
|
270
|
+
```bash
|
|
271
|
+
npm test
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
**Stage only.**
|
|
275
|
+
|
|
276
|
+
---
|
|
277
|
+
|
|
278
|
+
### Task 011 -- Add capture events to all 15 workflows
|
|
279
|
+
|
|
280
|
+
**What:** Add `## Phase entry` and `## Phase exit` sections to all 15 workflow files. Add `## Gate decision` to 3 gate workflows.
|
|
281
|
+
|
|
282
|
+
**Files to modify:**
|
|
283
|
+
- 15 `workflows/*.md` files (excluding README.md)
|
|
284
|
+
- `tooling/test/role-contracts.test.js` (workflow structural tests)
|
|
285
|
+
|
|
286
|
+
**TDD steps:**
|
|
287
|
+
1. Add structural tests in `role-contracts.test.js` (already in `test:active` -- no new registration needed):
|
|
288
|
+
- All 15 workflows have Phase entry and Phase exit
|
|
289
|
+
- Phase entry is between Purpose and Inputs (ordering test)
|
|
290
|
+
- Phase exit is immediately before Failure Conditions (no H2 between)
|
|
291
|
+
- Gate workflows have Gate decision after Approval Gate
|
|
292
|
+
2. Add `## Phase entry` immediately after `## Purpose` in all 15 files
|
|
293
|
+
3. Add `## Phase exit` immediately before `## Failure Conditions` in all 15 files
|
|
294
|
+
4. Add `## Gate decision` after `## Approval Gate` in spec-challenge.md, design-review.md, plan-review.md
|
|
295
|
+
5. Run `npm test` (green)
|
|
296
|
+
|
|
297
|
+
**Placeholder note:** `<run-id>` and `<phase-name>` are runtime placeholders -- paste them literally. The agent substitutes actual values at runtime.
|
|
298
|
+
|
|
299
|
+
**Verification:**
|
|
300
|
+
```bash
|
|
301
|
+
npm test
|
|
302
|
+
```
|
|
303
|
+
|
|
304
|
+
**Stage only.**
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
### Task 012 -- Extend verifier validation surface
|
|
309
|
+
|
|
310
|
+
**What:** Add `## Post-execution validation` section to `roles/verifier.md` with all 9 validators and the export drift fix loop.
|
|
311
|
+
|
|
312
|
+
**Files to modify:**
|
|
313
|
+
- `roles/verifier.md`
|
|
314
|
+
- `tooling/test/role-contracts.test.js` (structural test)
|
|
315
|
+
|
|
316
|
+
**TDD steps:**
|
|
317
|
+
1. Add structural test: verifier.md has `## Post-execution validation`, section is between Allowed Tools and Required Outputs, mentions `export --check` and drift fix loop (red)
|
|
318
|
+
2. Add `## Post-execution validation` section between `## Context retrieval` (from task 010) and `## Required Outputs`, including:
|
|
319
|
+
- 9 validator commands
|
|
320
|
+
- Failure behavior per check category (structural, git-flow, export drift)
|
|
321
|
+
- Export drift fix loop with max 1 rebuild attempt
|
|
322
|
+
3. Run `npm test` (green)
|
|
323
|
+
|
|
324
|
+
**Section order in verifier.md after tasks 010+012:**
|
|
325
|
+
`## Purpose` > `## Inputs` > `## Allowed Tools` > `## Context retrieval` > `## Post-execution validation` > `## Required Outputs` > `## Git-Flow Responsibilities` > `## Escalation Rules` > `## Failure Conditions`
|
|
326
|
+
|
|
327
|
+
**Verification:**
|
|
328
|
+
```bash
|
|
329
|
+
npm test
|
|
330
|
+
```
|
|
331
|
+
|
|
332
|
+
**Stage only.**
|
|
333
|
+
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
### Task 013 -- Add pre-execution validation to execute workflow
|
|
337
|
+
|
|
338
|
+
**What:** Add `## Pre-execution validation` section to `workflows/execute.md` with `validate manifest` and `validate hooks` instructions.
|
|
339
|
+
|
|
340
|
+
**Files to modify:**
|
|
341
|
+
- `workflows/execute.md`
|
|
342
|
+
- `tooling/test/role-contracts.test.js` (structural test)
|
|
343
|
+
|
|
344
|
+
**TDD steps:**
|
|
345
|
+
1. Add structural test: execute.md contains `## Pre-execution validation`, mentions `validate manifest` and `validate hooks` (red)
|
|
346
|
+
2. Add section after `## Phase entry` (from task 011) -- phase entry fires first to log execution attempt, then validation runs before implementation
|
|
347
|
+
3. Run `npm test` (green)
|
|
348
|
+
|
|
349
|
+
**Verification:**
|
|
350
|
+
```bash
|
|
351
|
+
npm test
|
|
352
|
+
```
|
|
353
|
+
|
|
354
|
+
**Stage only.**
|
|
355
|
+
|
|
356
|
+
---
|
|
357
|
+
|
|
358
|
+
### Task 014 -- Export build, verification, and commit
|
|
359
|
+
|
|
360
|
+
**What:** Run `wazir export build`, verify zero drift, commit all Batch B changes as a single atomic commit.
|
|
361
|
+
|
|
362
|
+
**Files to modify:**
|
|
363
|
+
- 0 source files directly; N export files regenerated under `exports/`
|
|
364
|
+
|
|
365
|
+
**Steps:**
|
|
366
|
+
1. Run `git status` to verify all Batch B files are staged
|
|
367
|
+
2. Run `wazir export build`
|
|
368
|
+
3. Run `wazir export --check` -- must report zero drift
|
|
369
|
+
4. Run `npm test` -- all tests must pass
|
|
370
|
+
5. Stage only known files (explicit list -- NO `git add -A`):
|
|
371
|
+
- `tooling/src/guards/protected-path-write-guard.js`, `tooling/test/guard-hooks.test.js`
|
|
372
|
+
- `hooks/session-start`, `hooks/definitions/session_start.yaml`
|
|
373
|
+
- `roles/*.md`, `tooling/test/role-contracts.test.js`
|
|
374
|
+
- `workflows/*.md`
|
|
375
|
+
- `exports/`
|
|
376
|
+
6. Commit with conventional commit message
|
|
377
|
+
|
|
378
|
+
**Rollback plan:**
|
|
379
|
+
- If `export build` fails: identify offending canonical source, fix it, re-run. Max 2 fix attempts before escalating.
|
|
380
|
+
- If `export --check` still fails after successful build: re-run `export build`. Max 1 rebuild retry.
|
|
381
|
+
- If unrecoverable: `git reset HEAD` (preserves working tree), investigate root cause, report as blocker.
|
|
382
|
+
|
|
383
|
+
**Verification:**
|
|
384
|
+
```bash
|
|
385
|
+
wazir export --check
|
|
386
|
+
npm test
|
|
387
|
+
```
|
|
388
|
+
|
|
389
|
+
**Commit:**
|
|
390
|
+
```
|
|
391
|
+
feat(pipeline): wire CLI commands into agent pipeline
|
|
392
|
+
```
|
|
393
|
+
|
|
394
|
+
---
|
|
395
|
+
|
|
396
|
+
## Batch C -- Skill Updates
|
|
397
|
+
|
|
398
|
+
**Commit strategy:** Individual commits
|
|
399
|
+
**Export drift:** None (skills are not hashed)
|
|
400
|
+
**Estimated file count:** 2 skill files
|
|
401
|
+
|
|
402
|
+
> Batch C is independent and can run in parallel with Batch A or B.
|
|
403
|
+
|
|
404
|
+
### Task 015 -- Rewrite debugging skill OBSERVE phase
|
|
405
|
+
|
|
406
|
+
**What:** Replace OBSERVE implementation in `skills/debugging/SKILL.md` with symbol-first protocol while preserving the 4-step loop structure.
|
|
407
|
+
|
|
408
|
+
**Files to modify:**
|
|
409
|
+
- `skills/debugging/SKILL.md`
|
|
410
|
+
|
|
411
|
+
**TDD steps:**
|
|
412
|
+
1. Read current OBSERVE phase
|
|
413
|
+
2. Replace OBSERVE internals with: search-symbols -> recall L1 -> hypothesis -> targeted read -> fallback to generic methodology
|
|
414
|
+
3. Verify 4-step loop (Observe -> Hypothesize -> Test -> Fix) is intact
|
|
415
|
+
4. Run `npm test`
|
|
416
|
+
|
|
417
|
+
**Verification:**
|
|
418
|
+
```bash
|
|
419
|
+
npm test
|
|
420
|
+
```
|
|
421
|
+
|
|
422
|
+
**Commit:**
|
|
423
|
+
```
|
|
424
|
+
refactor(skills): rewrite debugging OBSERVE phase with symbol-first protocol
|
|
425
|
+
```
|
|
426
|
+
|
|
427
|
+
---
|
|
428
|
+
|
|
429
|
+
### Task 016 -- Add index integration to scan-project skill
|
|
430
|
+
|
|
431
|
+
**What:** Add index build/refresh step to `skills/scan-project/SKILL.md`.
|
|
432
|
+
|
|
433
|
+
**Files to modify:**
|
|
434
|
+
- `skills/scan-project/SKILL.md`
|
|
435
|
+
|
|
436
|
+
**TDD steps:**
|
|
437
|
+
1. Read current skill to determine last step number
|
|
438
|
+
2. Add new step after existing steps: check `index stats`, build or refresh accordingly, include stats in profile output
|
|
439
|
+
3. Distinguish between command failure (exit code non-zero) and successful report of 0 files
|
|
440
|
+
4. Run `npm test`
|
|
441
|
+
|
|
442
|
+
**Verification:**
|
|
443
|
+
```bash
|
|
444
|
+
npm test
|
|
445
|
+
```
|
|
446
|
+
|
|
447
|
+
**Commit:**
|
|
448
|
+
```
|
|
449
|
+
feat(skills): add index build/refresh step to scan-project skill
|
|
450
|
+
```
|
|
451
|
+
|
|
452
|
+
---
|
|
453
|
+
|
|
454
|
+
## Risk Mitigation
|
|
455
|
+
|
|
456
|
+
### Protected Path Write Guard (HIGH)
|
|
457
|
+
|
|
458
|
+
**Risk:** 25 of 27 Batch B files are in protected directories. Without mitigation, every write is blocked.
|
|
459
|
+
|
|
460
|
+
**Mitigation:** Task 008 adds `'pipeline_integration'` to `APPROVED_FLOWS` as the first Batch B step. This is:
|
|
461
|
+
- A one-line addition to the Set
|
|
462
|
+
- Fully reversible (can remove after implementation, but recommend keeping for future pipeline updates)
|
|
463
|
+
- Tested with a new guard-hooks test
|
|
464
|
+
- Consistent with existing `host_export_regeneration` pattern
|
|
465
|
+
|
|
466
|
+
**Fallback:** If the approved flow approach is rejected, the executor can work through interactive guard acceptance (user approves each blocked write). Viable but tedious for 27 files.
|
|
467
|
+
|
|
468
|
+
### Export Drift (MEDIUM)
|
|
469
|
+
|
|
470
|
+
**Risk:** 25 canonical source files change in Batch B, causing export drift between tasks.
|
|
471
|
+
|
|
472
|
+
**Mitigation:**
|
|
473
|
+
- All Batch B tasks stage but do NOT commit individually
|
|
474
|
+
- Single `export build` at the end (task 014) regenerates all exports
|
|
475
|
+
- `export --check` verifies zero drift before committing
|
|
476
|
+
- If drift persists after rebuild: max 1 retry, then escalate
|
|
477
|
+
|
|
478
|
+
### Increment Bug Visibility (MEDIUM)
|
|
479
|
+
|
|
480
|
+
**Risk:** The `recordPhaseUsage` increment bug is only observable with multi-call tests, and `usage.test.js` is not in CI.
|
|
481
|
+
|
|
482
|
+
**Mitigation:**
|
|
483
|
+
- Task 004 registers `usage.test.js` in `test:active` FIRST (before any CLI fixes)
|
|
484
|
+
- Task 007 adds a multi-call test that specifically catches the bug
|
|
485
|
+
- These are ordered: 004 before 007
|
|
486
|
+
|
|
487
|
+
### Batch B Intermediate Test Failures (LOW)
|
|
488
|
+
|
|
489
|
+
**Risk:** TDD requires writing failing tests first, which means intermediate `npm test` failures during Batch B.
|
|
490
|
+
|
|
491
|
+
**Mitigation:** This is expected TDD behavior (red phase). Each task's "npm test passes" AC means "passes after all steps of THIS task are done." The intermediate red-phase failure between writing the test and making the change is correct.
|
|
492
|
+
|
|
493
|
+
---
|
|
494
|
+
|
|
495
|
+
## Export Drift Management Strategy
|
|
496
|
+
|
|
497
|
+
### Which files cause export drift?
|
|
498
|
+
|
|
499
|
+
The export compiler hashes:
|
|
500
|
+
- `wazir.manifest.yaml` (not modified)
|
|
501
|
+
- 10 declared role files: `roles/*.md` (modified by task 010, 012)
|
|
502
|
+
- 14 declared workflow files: `workflows/*.md` except `run-audit.md` (modified by task 011, 013)
|
|
503
|
+
- Hook definition YAMLs: `hooks/definitions/*.yaml` (modified by task 009)
|
|
504
|
+
|
|
505
|
+
**Total:** 25 files that cause export drift
|
|
506
|
+
|
|
507
|
+
### What does NOT cause drift?
|
|
508
|
+
|
|
509
|
+
- `workflows/run-audit.md` (undeclared in manifest)
|
|
510
|
+
- Skill files (`skills/`)
|
|
511
|
+
- Hook executables (`hooks/session-start`)
|
|
512
|
+
- CLI source files (`tooling/src/`)
|
|
513
|
+
- Test files (`tooling/test/`)
|
|
514
|
+
- Guard source (`tooling/src/guards/`)
|
|
515
|
+
- `package.json`
|
|
516
|
+
|
|
517
|
+
### Strategy
|
|
518
|
+
|
|
519
|
+
1. **Batch A:** No drift concern -- only CLI source and tests
|
|
520
|
+
2. **Batch B:** All 25 drifting files modified, then sealed with single `export build` + `export --check` + single commit
|
|
521
|
+
3. **Batch C:** No drift concern -- only skills (not hashed)
|
|
522
|
+
|
|
523
|
+
### Drift detection during development
|
|
524
|
+
|
|
525
|
+
If you need to verify intermediate state during Batch B:
|
|
526
|
+
- `wazir export --check` will report drift (expected until task 014)
|
|
527
|
+
- Do NOT run `export build` until all Batch B source changes are complete
|
|
528
|
+
- Running `export build` mid-batch would create a partial export that becomes stale when subsequent tasks modify more canonical sources
|
|
529
|
+
|
|
530
|
+
---
|
|
531
|
+
|
|
532
|
+
## Success Verification Checklist
|
|
533
|
+
|
|
534
|
+
All 16 criteria from the design doc must pass after implementation:
|
|
535
|
+
|
|
536
|
+
| # | Criterion | Verified By | Task |
|
|
537
|
+
|---|-----------|-------------|------|
|
|
538
|
+
| 1 | `wazir doctor` guidance in session start bootstrap | Hook output test | 009 |
|
|
539
|
+
| 2 | Index exists and queryable before exploration phase | Bootstrap guidance instructs agent | 009, 016 |
|
|
540
|
+
| 3 | All 15 workflow files have capture event instructions | Structural test (15 files x 2 sections) | 011 |
|
|
541
|
+
| 4 | `capture usage` produces savings report at session end | Handler wiring tests | 005, 006 |
|
|
542
|
+
| 5 | Roles use assigned default tier with fallback chain | Structural test (10 roles x context retrieval) | 010 |
|
|
543
|
+
| 6 | `validate` + `export --check` run in verifier phase | Verifier role content test | 012 |
|
|
544
|
+
| 7 | `wz:debugging` OBSERVE uses symbol search with fallback | Manual review of SKILL.md | 015 |
|
|
545
|
+
| 8 | Reviewer uses L1 recall before reading full files | Reviewer context retrieval section | 010 |
|
|
546
|
+
| 9 | Run ID persists across compaction via `latest` file | Integration test (capture init writes latest) | 006 |
|
|
547
|
+
| 10 | No regression in existing hook behavior | Existing tests + new tests pass | 008, 009 |
|
|
548
|
+
| 11 | `export --check` passes after all changes | Export build + check in task 014 | 014 |
|
|
549
|
+
| 12 | `capture usage` registered in command registry | Registry test | 005 |
|
|
550
|
+
| 13 | `capture init` creates `usage.json` and writes `latest` | Integration test A | 006 |
|
|
551
|
+
| 14 | `session_start.yaml` contract fully cleaned up | YAML replacement + hook test | 009 |
|
|
552
|
+
| 15 | `recordPhaseUsage` uses increment semantics | Multi-call unit test | 007 |
|
|
553
|
+
| 16 | Role `## Allowed Tools` mentions CLI recall/index | Structural test (Allowed Tools section content) | 010 |
|
|
554
|
+
|
|
555
|
+
### Final verification commands (run after all 3 batches):
|
|
556
|
+
|
|
557
|
+
```bash
|
|
558
|
+
# Full test suite
|
|
559
|
+
npm test
|
|
560
|
+
|
|
561
|
+
# Export drift check
|
|
562
|
+
wazir export --check
|
|
563
|
+
|
|
564
|
+
# Full validation suite
|
|
565
|
+
wazir validate manifest
|
|
566
|
+
wazir validate hooks
|
|
567
|
+
wazir validate docs
|
|
568
|
+
wazir validate brand
|
|
569
|
+
wazir validate runtime
|
|
570
|
+
wazir validate branches
|
|
571
|
+
wazir validate commits
|
|
572
|
+
```
|
|
573
|
+
|
|
574
|
+
---
|
|
575
|
+
|
|
576
|
+
## Estimated File Count Per Batch
|
|
577
|
+
|
|
578
|
+
| Batch | Source Files | Test Files | Config Files | Generated Files | Total |
|
|
579
|
+
|-------|-------------|------------|-------------|-----------------|-------|
|
|
580
|
+
| A | 3 (command-registry.js, command.js, usage.js) | 2 (capture.test.js, usage.test.js) | 1 (package.json) | 0 | 6 |
|
|
581
|
+
| B | 27 (1 guard + 2 hooks + 10 roles + 15 workflows) | 2 (guard-hooks.test.js, role-contracts.test.js) | 0 | N (exports/) | 29 + exports |
|
|
582
|
+
| C | 2 (debugging/SKILL.md, scan-project/SKILL.md) | 0 | 0 | 0 | 2 |
|
|
583
|
+
| **Total** | **32** | **4** | **1** | **N** | **37 + exports** |
|
|
584
|
+
|
|
585
|
+
---
|
|
586
|
+
|
|
587
|
+
## Execution Order Summary
|
|
588
|
+
|
|
589
|
+
```
|
|
590
|
+
Phase 1 (can run in parallel):
|
|
591
|
+
├── Batch A: 004 → 005 (parallel) → 006, 007 → commit(s)
|
|
592
|
+
└── Batch C: 015, 016 → commit(s)
|
|
593
|
+
|
|
594
|
+
Phase 2 (after Batch A):
|
|
595
|
+
└── Batch B: 008 → 009, 010, 011 (parallel after 008) → 012 → 013 → 014 (export build + commit)
|
|
596
|
+
```
|
|
597
|
+
|
|
598
|
+
Total commits: 4-6 (Batch A) + 1 (Batch B) + 2 (Batch C) = 7-9 commits
|