aios-core 2.1.6 → 2.2.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/.aios-core/core/README.md +229 -229
- package/.aios-core/core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/core/data/aios-kb.md +923 -923
- package/.aios-core/core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/core/docs/component-creation-guide.md +457 -457
- package/.aios-core/core/docs/session-update-pattern.md +307 -307
- package/.aios-core/core/docs/template-syntax.md +266 -266
- package/.aios-core/core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/core/elicitation/elicitation-engine.js +1 -1
- package/.aios-core/core/index.esm.js +42 -42
- package/.aios-core/core/index.js +1 -1
- package/.aios-core/core/migration/migration-config.yaml +83 -83
- package/.aios-core/core/migration/module-mapping.yaml +89 -89
- package/.aios-core/core/quality-gates/layer2-pr-automation.js +1 -1
- package/.aios-core/core/quality-gates/quality-gate-config.yaml +86 -86
- package/.aios-core/core/registry/README.md +179 -179
- package/.aios-core/core/utils/security-utils.js +1 -1
- package/.aios-core/core-config.yaml +391 -382
- package/.aios-core/data/agent-config-requirements.yaml +368 -368
- package/.aios-core/data/aios-kb.md +923 -923
- package/.aios-core/data/technical-preferences.md +3 -3
- package/.aios-core/data/workflow-patterns.yaml +267 -267
- package/.aios-core/development/README.md +142 -142
- package/.aios-core/development/agent-teams/team-all.yaml +15 -15
- package/.aios-core/development/agent-teams/team-fullstack.yaml +18 -18
- package/.aios-core/development/agent-teams/team-ide-minimal.yaml +10 -10
- package/.aios-core/development/agent-teams/team-no-ui.yaml +13 -13
- package/.aios-core/development/agent-teams/team-qa-focused.yaml +155 -155
- package/.aios-core/development/agents/aios-master.md +339 -339
- package/.aios-core/development/agents/analyst.md +195 -195
- package/.aios-core/development/agents/architect.md +359 -359
- package/.aios-core/development/agents/data-engineer.md +468 -468
- package/.aios-core/development/agents/dev.md +390 -390
- package/.aios-core/development/agents/devops.md +398 -398
- package/.aios-core/development/agents/pm.md +198 -198
- package/.aios-core/development/agents/po.md +256 -256
- package/.aios-core/development/agents/qa.md +312 -312
- package/.aios-core/development/agents/sm.md +220 -220
- package/.aios-core/development/agents/ux-design-expert.md +451 -451
- package/.aios-core/development/scripts/greeting-config-cli.js +85 -85
- package/.aios-core/development/tasks/add-mcp.md +319 -319
- package/.aios-core/development/tasks/advanced-elicitation.md +318 -318
- package/.aios-core/development/tasks/analyst-facilitate-brainstorming.md +341 -341
- package/.aios-core/development/tasks/analyze-framework.md +696 -696
- package/.aios-core/development/tasks/analyze-performance.md +637 -637
- package/.aios-core/development/tasks/apply-qa-fixes.md +340 -340
- package/.aios-core/development/tasks/architect-analyze-impact.md +826 -826
- package/.aios-core/development/tasks/audit-codebase.md +429 -429
- package/.aios-core/development/tasks/audit-tailwind-config.md +270 -270
- package/.aios-core/development/tasks/audit-utilities.md +358 -358
- package/.aios-core/development/tasks/bootstrap-shadcn-library.md +286 -286
- package/.aios-core/development/tasks/brownfield-create-epic.md +485 -485
- package/.aios-core/development/tasks/brownfield-create-story.md +356 -356
- package/.aios-core/development/tasks/build-component.md +478 -478
- package/.aios-core/development/tasks/calculate-roi.md +455 -455
- package/.aios-core/development/tasks/ci-cd-configuration.md +764 -764
- package/.aios-core/development/tasks/cleanup-utilities.md +670 -670
- package/.aios-core/development/tasks/collaborative-edit.md +1108 -1108
- package/.aios-core/development/tasks/compose-molecule.md +284 -284
- package/.aios-core/development/tasks/consolidate-patterns.md +414 -414
- package/.aios-core/development/tasks/correct-course.md +279 -279
- package/.aios-core/development/tasks/create-agent.md +321 -321
- package/.aios-core/development/tasks/create-brownfield-story.md +726 -726
- package/.aios-core/development/tasks/create-deep-research-prompt.md +498 -498
- package/.aios-core/development/tasks/create-doc.md +316 -316
- package/.aios-core/development/tasks/create-next-story.md +774 -774
- package/.aios-core/development/tasks/create-suite.md +283 -283
- package/.aios-core/development/tasks/create-task.md +371 -371
- package/.aios-core/development/tasks/create-workflow.md +370 -370
- package/.aios-core/development/tasks/db-analyze-hotpaths.md +572 -572
- package/.aios-core/development/tasks/db-apply-migration.md +381 -381
- package/.aios-core/development/tasks/db-bootstrap.md +642 -642
- package/.aios-core/development/tasks/db-domain-modeling.md +693 -693
- package/.aios-core/development/tasks/db-dry-run.md +293 -293
- package/.aios-core/development/tasks/db-env-check.md +260 -260
- package/.aios-core/development/tasks/db-expansion-pack-integration.md +663 -663
- package/.aios-core/development/tasks/db-explain.md +631 -631
- package/.aios-core/development/tasks/db-impersonate.md +495 -495
- package/.aios-core/development/tasks/db-load-csv.md +593 -593
- package/.aios-core/development/tasks/db-policy-apply.md +653 -653
- package/.aios-core/development/tasks/db-rls-audit.md +411 -411
- package/.aios-core/development/tasks/db-rollback.md +739 -739
- package/.aios-core/development/tasks/db-run-sql.md +613 -613
- package/.aios-core/development/tasks/db-schema-audit.md +1011 -1011
- package/.aios-core/development/tasks/db-seed.md +390 -390
- package/.aios-core/development/tasks/db-smoke-test.md +351 -351
- package/.aios-core/development/tasks/db-snapshot.md +569 -569
- package/.aios-core/development/tasks/db-supabase-setup.md +712 -712
- package/.aios-core/development/tasks/db-verify-order.md +515 -515
- package/.aios-core/development/tasks/deprecate-component.md +956 -956
- package/.aios-core/development/tasks/dev-apply-qa-fixes.md +318 -318
- package/.aios-core/development/tasks/dev-backlog-debt.md +469 -469
- package/.aios-core/development/tasks/dev-develop-story.md +846 -846
- package/.aios-core/development/tasks/dev-improve-code-quality.md +872 -872
- package/.aios-core/development/tasks/dev-optimize-performance.md +1033 -1033
- package/.aios-core/development/tasks/dev-suggest-refactoring.md +870 -870
- package/.aios-core/development/tasks/dev-validate-next-story.md +348 -348
- package/.aios-core/development/tasks/document-project.md +552 -552
- package/.aios-core/development/tasks/environment-bootstrap.md +1311 -1311
- package/.aios-core/development/tasks/execute-checklist.md +301 -301
- package/.aios-core/development/tasks/export-design-tokens-dtcg.md +274 -274
- package/.aios-core/development/tasks/extend-pattern.md +269 -269
- package/.aios-core/development/tasks/extract-tokens.md +467 -467
- package/.aios-core/development/tasks/facilitate-brainstorming-session.md +518 -518
- package/.aios-core/development/tasks/generate-ai-frontend-prompt.md +260 -260
- package/.aios-core/development/tasks/generate-documentation.md +284 -284
- package/.aios-core/development/tasks/generate-migration-strategy.md +522 -522
- package/.aios-core/development/tasks/generate-shock-report.md +501 -501
- package/.aios-core/development/tasks/github-devops-github-pr-automation.md +427 -427
- package/.aios-core/development/tasks/github-devops-pre-push-quality-gate.md +733 -733
- package/.aios-core/development/tasks/github-devops-repository-cleanup.md +374 -374
- package/.aios-core/development/tasks/github-devops-version-management.md +483 -483
- package/.aios-core/development/tasks/improve-self.md +822 -822
- package/.aios-core/development/tasks/index-docs.md +387 -387
- package/.aios-core/development/tasks/init-project-status.md +506 -506
- package/.aios-core/development/tasks/integrate-expansion-pack.md +314 -314
- package/.aios-core/development/tasks/kb-mode-interaction.md +283 -283
- package/.aios-core/development/tasks/learn-patterns.md +900 -900
- package/.aios-core/development/tasks/mcp-workflow.md +437 -437
- package/.aios-core/development/tasks/modify-agent.md +381 -381
- package/.aios-core/development/tasks/modify-task.md +424 -424
- package/.aios-core/development/tasks/modify-workflow.md +465 -465
- package/.aios-core/development/tasks/po-backlog-add.md +370 -370
- package/.aios-core/development/tasks/po-manage-story-backlog.md +523 -523
- package/.aios-core/development/tasks/po-pull-story-from-clickup.md +540 -540
- package/.aios-core/development/tasks/po-pull-story.md +316 -316
- package/.aios-core/development/tasks/po-stories-index.md +351 -351
- package/.aios-core/development/tasks/po-sync-story-to-clickup.md +457 -457
- package/.aios-core/development/tasks/po-sync-story.md +303 -303
- package/.aios-core/development/tasks/pr-automation.md +701 -701
- package/.aios-core/development/tasks/propose-modification.md +842 -842
- package/.aios-core/development/tasks/qa-backlog-add-followup.md +425 -425
- package/.aios-core/development/tasks/qa-gate.md +373 -373
- package/.aios-core/development/tasks/qa-generate-tests.md +1174 -1174
- package/.aios-core/development/tasks/qa-nfr-assess.md +557 -557
- package/.aios-core/development/tasks/qa-review-proposal.md +1157 -1157
- package/.aios-core/development/tasks/qa-review-story.md +682 -682
- package/.aios-core/development/tasks/qa-risk-profile.md +566 -566
- package/.aios-core/development/tasks/qa-run-tests.md +277 -277
- package/.aios-core/development/tasks/qa-test-design.md +387 -387
- package/.aios-core/development/tasks/qa-trace-requirements.md +476 -476
- package/.aios-core/development/tasks/release-management.md +723 -723
- package/.aios-core/development/tasks/security-audit.md +554 -554
- package/.aios-core/development/tasks/security-scan.md +790 -790
- package/.aios-core/development/tasks/setup-database.md +741 -741
- package/.aios-core/development/tasks/setup-design-system.md +462 -462
- package/.aios-core/development/tasks/setup-github.md +874 -874
- package/.aios-core/development/tasks/setup-llm-routing.md +1 -1
- package/.aios-core/development/tasks/setup-mcp-docker.md +584 -584
- package/.aios-core/development/tasks/setup-project-docs.md +1 -1
- package/.aios-core/development/tasks/shard-doc.md +537 -537
- package/.aios-core/development/tasks/sm-create-next-story.md +480 -480
- package/.aios-core/development/tasks/sync-documentation.md +864 -864
- package/.aios-core/development/tasks/tailwind-upgrade.md +294 -294
- package/.aios-core/development/tasks/test-as-user.md +621 -621
- package/.aios-core/development/tasks/test-validation-task.md +171 -171
- package/.aios-core/development/tasks/undo-last.md +346 -346
- package/.aios-core/development/tasks/update-manifest.md +409 -409
- package/.aios-core/development/tasks/ux-create-wireframe.md +617 -617
- package/.aios-core/development/tasks/ux-ds-scan-artifact.md +672 -672
- package/.aios-core/development/tasks/ux-user-research.md +559 -559
- package/.aios-core/development/tasks/validate-next-story.md +422 -422
- package/.aios-core/development/workflows/README.md +83 -83
- package/.aios-core/development/workflows/brownfield-fullstack.yaml +297 -297
- package/.aios-core/development/workflows/brownfield-service.yaml +187 -187
- package/.aios-core/development/workflows/brownfield-ui.yaml +197 -197
- package/.aios-core/development/workflows/greenfield-fullstack.yaml +333 -333
- package/.aios-core/development/workflows/greenfield-service.yaml +206 -206
- package/.aios-core/development/workflows/greenfield-ui.yaml +235 -235
- package/.aios-core/docs/SHARD-TRANSLATION-GUIDE.md +335 -335
- package/.aios-core/docs/component-creation-guide.md +457 -457
- package/.aios-core/docs/session-update-pattern.md +307 -307
- package/.aios-core/docs/standards/AGENT-PERSONALIZATION-STANDARD-V1.md +572 -572
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-QUICK-REFERENCE.md +185 -185
- package/.aios-core/docs/standards/AIOS-COLOR-PALETTE-V2.1.md +354 -354
- package/.aios-core/docs/standards/AIOS-FRAMEWORK-MASTER.md +1963 -1963
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md +821 -821
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1-SUMMARY.md +1190 -1190
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.1.md +439 -439
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO-V2.2-SUMMARY.md +1339 -1339
- package/.aios-core/docs/standards/AIOS-LIVRO-DE-OURO.md +5398 -5398
- package/.aios-core/docs/standards/EXECUTOR-DECISION-TREE.md +697 -697
- package/.aios-core/docs/standards/OPEN-SOURCE-VS-SERVICE-DIFFERENCES.md +511 -511
- package/.aios-core/docs/standards/QUALITY-GATES-SPECIFICATION.md +556 -556
- package/.aios-core/docs/standards/STANDARDS-INDEX.md +210 -210
- package/.aios-core/docs/standards/STORY-TEMPLATE-V2-SPECIFICATION.md +550 -550
- package/.aios-core/docs/standards/TASK-FORMAT-SPECIFICATION-V1.md +1414 -1414
- package/.aios-core/docs/standards/V3-ARCHITECTURAL-DECISIONS.md +523 -523
- package/.aios-core/docs/template-syntax.md +266 -266
- package/.aios-core/docs/troubleshooting-guide.md +624 -624
- package/.aios-core/index.esm.js +15 -15
- package/.aios-core/index.js +1 -1
- package/.aios-core/infrastructure/README.md +126 -126
- package/.aios-core/infrastructure/integrations/pm-adapters/README.md +59 -59
- package/.aios-core/infrastructure/scripts/approval-workflow.js +1 -1
- package/.aios-core/infrastructure/scripts/batch-creator.js +1 -1
- package/.aios-core/infrastructure/scripts/component-generator.js +3 -3
- package/.aios-core/infrastructure/scripts/component-metadata.js +1 -1
- package/.aios-core/infrastructure/scripts/component-search.js +1 -1
- package/.aios-core/infrastructure/scripts/coverage-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/dependency-impact-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/framework-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/improvement-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/llm-routing/install-llm-routing.js +26 -13
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.cmd +127 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/claude-free-tracked.sh +108 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.cmd +71 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-proxy.sh +65 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.cmd +51 -0
- package/.aios-core/infrastructure/scripts/llm-routing/templates/deepseek-usage.sh +16 -0
- package/.aios-core/infrastructure/scripts/llm-routing/usage-tracker/index.js +549 -0
- package/.aios-core/infrastructure/scripts/modification-risk-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/performance-analyzer.js +1 -1
- package/.aios-core/infrastructure/scripts/pm-adapter.js +134 -134
- package/.aios-core/infrastructure/scripts/repository-detector.js +3 -3
- package/.aios-core/infrastructure/scripts/template-engine.js +1 -1
- package/.aios-core/infrastructure/scripts/template-validator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-generator.js +1 -1
- package/.aios-core/infrastructure/scripts/test-quality-assessment.js +1 -1
- package/.aios-core/infrastructure/scripts/transaction-manager.js +1 -1
- package/.aios-core/infrastructure/scripts/usage-analytics.js +1 -1
- package/.aios-core/infrastructure/scripts/visual-impact-generator.js +2 -2
- package/.aios-core/infrastructure/templates/github-workflows/README.md +109 -109
- package/.aios-core/infrastructure/tests/regression-suite-v2.md +621 -621
- package/.aios-core/infrastructure/tools/README.md +222 -222
- package/.aios-core/infrastructure/tools/cli/github-cli.yaml +200 -200
- package/.aios-core/infrastructure/tools/cli/railway-cli.yaml +260 -260
- package/.aios-core/infrastructure/tools/cli/supabase-cli.yaml +224 -224
- package/.aios-core/infrastructure/tools/local/ffmpeg.yaml +261 -261
- package/.aios-core/infrastructure/tools/mcp/21st-dev-magic.yaml +127 -127
- package/.aios-core/infrastructure/tools/mcp/browser.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/clickup.yaml +534 -534
- package/.aios-core/infrastructure/tools/mcp/context7.yaml +78 -78
- package/.aios-core/infrastructure/tools/mcp/desktop-commander.yaml +180 -180
- package/.aios-core/infrastructure/tools/mcp/exa.yaml +103 -103
- package/.aios-core/infrastructure/tools/mcp/google-workspace.yaml +930 -930
- package/.aios-core/infrastructure/tools/mcp/n8n.yaml +551 -551
- package/.aios-core/infrastructure/tools/mcp/supabase.yaml +808 -808
- package/.aios-core/install-manifest.yaml +347 -347
- package/.aios-core/product/README.md +56 -56
- package/.aios-core/product/checklists/accessibility-wcag-checklist.md +80 -0
- package/.aios-core/product/checklists/architect-checklist.md +443 -443
- package/.aios-core/product/checklists/change-checklist.md +182 -182
- package/.aios-core/product/checklists/component-quality-checklist.md +74 -0
- package/.aios-core/product/checklists/database-design-checklist.md +119 -119
- package/.aios-core/product/checklists/dba-predeploy-checklist.md +97 -97
- package/.aios-core/product/checklists/dba-rollback-checklist.md +99 -99
- package/.aios-core/product/checklists/migration-readiness-checklist.md +75 -0
- package/.aios-core/product/checklists/pattern-audit-checklist.md +88 -0
- package/.aios-core/product/checklists/pm-checklist.md +375 -375
- package/.aios-core/product/checklists/po-master-checklist.md +441 -441
- package/.aios-core/product/checklists/pre-push-checklist.md +108 -108
- package/.aios-core/product/checklists/release-checklist.md +122 -122
- package/.aios-core/product/checklists/story-dod-checklist.md +101 -101
- package/.aios-core/product/checklists/story-draft-checklist.md +215 -215
- package/.aios-core/product/data/atomic-design-principles.md +108 -0
- package/.aios-core/product/data/brainstorming-techniques.md +36 -36
- package/.aios-core/product/data/consolidation-algorithms.md +142 -0
- package/.aios-core/product/data/database-best-practices.md +182 -0
- package/.aios-core/product/data/design-token-best-practices.md +107 -0
- package/.aios-core/product/data/elicitation-methods.md +134 -134
- package/.aios-core/product/data/integration-patterns.md +207 -0
- package/.aios-core/product/data/migration-safety-guide.md +329 -0
- package/.aios-core/product/data/mode-selection-best-practices.md +471 -471
- package/.aios-core/product/data/postgres-tuning-guide.md +300 -0
- package/.aios-core/product/data/rls-security-patterns.md +333 -0
- package/.aios-core/product/data/roi-calculation-guide.md +142 -0
- package/.aios-core/product/data/supabase-patterns.md +330 -0
- package/.aios-core/product/data/test-levels-framework.md +148 -148
- package/.aios-core/product/data/test-priorities-matrix.md +174 -174
- package/.aios-core/product/data/wcag-compliance-guide.md +267 -0
- package/.aios-core/product/templates/1mcp-config.yaml +225 -225
- package/.aios-core/product/templates/activation-instructions-inline-greeting.yaml +63 -63
- package/.aios-core/product/templates/activation-instructions-template.md +258 -258
- package/.aios-core/product/templates/agent-template.yaml +120 -120
- package/.aios-core/product/templates/architecture-tmpl.yaml +650 -650
- package/.aios-core/product/templates/brainstorming-output-tmpl.yaml +155 -155
- package/.aios-core/product/templates/brownfield-architecture-tmpl.yaml +475 -475
- package/.aios-core/product/templates/brownfield-prd-tmpl.yaml +279 -279
- package/.aios-core/product/templates/changelog-template.md +134 -134
- package/.aios-core/product/templates/command-rationalization-matrix.md +152 -152
- package/.aios-core/product/templates/competitor-analysis-tmpl.yaml +292 -292
- package/.aios-core/product/templates/design-story-tmpl.yaml +587 -587
- package/.aios-core/product/templates/ds-artifact-analysis.md +70 -70
- package/.aios-core/product/templates/front-end-architecture-tmpl.yaml +205 -205
- package/.aios-core/product/templates/front-end-spec-tmpl.yaml +348 -348
- package/.aios-core/product/templates/fullstack-architecture-tmpl.yaml +804 -804
- package/.aios-core/product/templates/github-pr-template.md +67 -67
- package/.aios-core/product/templates/gordon-mcp.yaml +140 -140
- package/.aios-core/product/templates/ide-rules/antigravity-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/claude-rules.md +221 -221
- package/.aios-core/product/templates/ide-rules/cline-rules.md +84 -84
- package/.aios-core/product/templates/ide-rules/copilot-rules.md +92 -92
- package/.aios-core/product/templates/ide-rules/cursor-rules.md +115 -115
- package/.aios-core/product/templates/ide-rules/gemini-rules.md +85 -85
- package/.aios-core/product/templates/ide-rules/roo-rules.md +86 -86
- package/.aios-core/product/templates/ide-rules/trae-rules.md +104 -104
- package/.aios-core/product/templates/ide-rules/windsurf-rules.md +80 -80
- package/.aios-core/product/templates/index-strategy-tmpl.yaml +53 -53
- package/.aios-core/product/templates/market-research-tmpl.yaml +251 -251
- package/.aios-core/product/templates/mcp-workflow.js +271 -271
- package/.aios-core/product/templates/migration-plan-tmpl.yaml +1022 -1022
- package/.aios-core/product/templates/migration-strategy-tmpl.md +524 -524
- package/.aios-core/product/templates/personalized-agent-template.md +258 -258
- package/.aios-core/product/templates/personalized-checklist-template.md +340 -340
- package/.aios-core/product/templates/personalized-task-template-v2.md +905 -905
- package/.aios-core/product/templates/personalized-task-template.md +344 -344
- package/.aios-core/product/templates/personalized-template-file.yaml +322 -322
- package/.aios-core/product/templates/personalized-workflow-template.yaml +460 -460
- package/.aios-core/product/templates/prd-tmpl.yaml +201 -201
- package/.aios-core/product/templates/project-brief-tmpl.yaml +220 -220
- package/.aios-core/product/templates/qa-gate-tmpl.yaml +240 -240
- package/.aios-core/product/templates/rls-policies-tmpl.yaml +1203 -1203
- package/.aios-core/product/templates/schema-design-tmpl.yaml +428 -428
- package/.aios-core/product/templates/state-persistence-tmpl.yaml +219 -219
- package/.aios-core/product/templates/story-tmpl.yaml +331 -331
- package/.aios-core/product/templates/task-execution-report.md +495 -495
- package/.aios-core/product/templates/task-template.md +122 -122
- package/.aios-core/product/templates/token-exports-tailwind-tmpl.js +395 -395
- package/.aios-core/product/templates/tokens-schema-tmpl.yaml +305 -305
- package/.aios-core/product/templates/workflow-template.yaml +133 -133
- package/.aios-core/scripts/README.md +354 -354
- package/.aios-core/scripts/aios-doc-template.md +325 -325
- package/.aios-core/scripts/elicitation-engine.js +1 -1
- package/.aios-core/scripts/test-template-system.js +1 -1
- package/.aios-core/scripts/workflow-management.md +69 -69
- package/.aios-core/user-guide.md +1413 -1413
- package/.aios-core/working-in-the-brownfield.md +361 -361
- package/LICENSE +1 -1
- package/README.md +702 -703
- package/bin/aios-init-old.js +3 -3
- package/bin/aios-init-v4.js +1 -1
- package/bin/aios-init.backup-v1.1.4.js +1 -1
- package/bin/aios-init.js +3 -3
- package/bin/aios.js +279 -279
- package/bin/utils/install-errors.js +339 -339
- package/bin/utils/install-transaction.js +445 -445
- package/index.d.ts +18 -18
- package/index.esm.js +20 -20
- package/index.js +6 -6
- package/package.json +8 -10
- package/packages/installer/src/config/templates/env-template.js +27 -4
- package/packages/installer/src/detection/detect-project-type.js +81 -81
- package/packages/installer/tests/integration/wizard-detection.test.js +8 -6
- package/packages/installer/tests/unit/env-template.test.js +8 -8
- package/src/config/ide-configs.js +1 -1
- package/src/wizard/feedback.js +2 -2
- package/src/wizard/index.js +1 -1
- package/src/wizard/validation/report-generator.js +1 -1
- package/src/wizard/validation/troubleshooting-system.js +13 -13
- package/.aios-core/infrastructure/scripts/_archived/final-todo-count.js +0 -122
- package/.aios-core/infrastructure/scripts/_archived/fix-yaml-formatting.js +0 -89
- package/.aios-core/infrastructure/scripts/_archived/migration-generator.js +0 -780
- package/.aios-core/infrastructure/scripts/_archived/migration-path-generator.js +0 -950
- package/.aios-core/infrastructure/scripts/_archived/phase2-entrada-saida-errors.js +0 -425
- package/.aios-core/infrastructure/scripts/_archived/phase2-spot-check.js +0 -132
- package/.aios-core/infrastructure/scripts/_archived/phase3-tools-scripts-validation.js +0 -381
- package/.aios-core/infrastructure/scripts/_archived/phase4-metadata-performance.js +0 -203
- package/.aios-core/infrastructure/scripts/_archived/test-yaml-parsing.js +0 -24
- package/.aios-core/infrastructure/scripts/_archived/verify-yaml-fix.js +0 -51
- package/.aios-core/tasks/find-component.md.legacy +0 -391
- package/.aios-core/tasks/generate-commit-message.md.legacy +0 -426
- package/.aios-core/tasks/generate-migration.md.legacy +0 -382
- package/.aios-core/tasks/rollback-modification.md.legacy +0 -307
- package/.aios-core/tasks/update-tests.md.legacy +0 -283
|
@@ -1,556 +1,556 @@
|
|
|
1
|
-
# Quality Gates Specification v2.1
|
|
2
|
-
|
|
3
|
-
**Version:** 2.1.0
|
|
4
|
-
**Last Updated:** 2025-12-09
|
|
5
|
-
**Status:** Official Standard
|
|
6
|
-
**Related:** Sprint 3 Implementation
|
|
7
|
-
|
|
8
|
-
---
|
|
9
|
-
|
|
10
|
-
## 📋 Table of Contents
|
|
11
|
-
|
|
12
|
-
- [Overview](#overview)
|
|
13
|
-
- [3-Layer Architecture](#3-layer-architecture)
|
|
14
|
-
- [Layer 1: Pre-commit](#layer-1-pre-commit)
|
|
15
|
-
- [Layer 2: PR Automation](#layer-2-pr-automation)
|
|
16
|
-
- [Layer 3: Human Review](#layer-3-human-review)
|
|
17
|
-
- [Configuration Guide](#configuration-guide)
|
|
18
|
-
- [CodeRabbit Self-Healing](#coderabbit-self-healing)
|
|
19
|
-
- [Metrics & Impact](#metrics--impact)
|
|
20
|
-
|
|
21
|
-
---
|
|
22
|
-
|
|
23
|
-
## Overview
|
|
24
|
-
|
|
25
|
-
### Purpose
|
|
26
|
-
|
|
27
|
-
The Quality Gates 3-Layer system ensures code quality through progressive automated validation, catching 80% of issues automatically and focusing human review on strategic decisions.
|
|
28
|
-
|
|
29
|
-
### Design Principles
|
|
30
|
-
|
|
31
|
-
1. **Shift Left** - Catch issues as early as possible
|
|
32
|
-
2. **Progressive Depth** - Each layer adds more comprehensive checks
|
|
33
|
-
3. **Automation First** - Humans focus on what humans do best
|
|
34
|
-
4. **Fast Feedback** - Immediate response at each layer
|
|
35
|
-
5. **Non-Blocking Default** - Warnings vs. errors where appropriate
|
|
36
|
-
|
|
37
|
-
### Architecture Diagram
|
|
38
|
-
|
|
39
|
-
```
|
|
40
|
-
┌─────────────────────────────────────────────────────────────────────────┐
|
|
41
|
-
│ QUALITY GATES WORKFLOW │
|
|
42
|
-
│ │
|
|
43
|
-
│ Developer │
|
|
44
|
-
│ │ │
|
|
45
|
-
│ ▼ │
|
|
46
|
-
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
47
|
-
│ │ LAYER 1: PRE-COMMIT │ │
|
|
48
|
-
│ │ ════════════════════ │ │
|
|
49
|
-
│ │ Trigger: File save, git commit │ │
|
|
50
|
-
│ │ Time: < 5 seconds │ │
|
|
51
|
-
│ │ Catches: 30% of issues │ │
|
|
52
|
-
│ │ │ │
|
|
53
|
-
│ │ ✓ ESLint (syntax, patterns) │ │
|
|
54
|
-
│ │ ✓ Prettier (formatting) │ │
|
|
55
|
-
│ │ ✓ TypeScript (type checking) │ │
|
|
56
|
-
│ │ ✓ Unit tests (changed files only) │ │
|
|
57
|
-
│ │ │ │
|
|
58
|
-
│ │ Blocking: Yes (can't commit if fails) │ │
|
|
59
|
-
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
60
|
-
│ │ │
|
|
61
|
-
│ PASS? │ │
|
|
62
|
-
│ ▼ │
|
|
63
|
-
│ git commit │
|
|
64
|
-
│ git push │
|
|
65
|
-
│ │ │
|
|
66
|
-
│ ▼ │
|
|
67
|
-
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
68
|
-
│ │ LAYER 2: PR AUTOMATION │ │
|
|
69
|
-
│ │ ══════════════════════ │ │
|
|
70
|
-
│ │ Trigger: PR creation, PR update │ │
|
|
71
|
-
│ │ Time: < 3 minutes │ │
|
|
72
|
-
│ │ Catches: Additional 50% (80% cumulative) │ │
|
|
73
|
-
│ │ │ │
|
|
74
|
-
│ │ ✓ CodeRabbit AI review │ │
|
|
75
|
-
│ │ ✓ Integration tests │ │
|
|
76
|
-
│ │ ✓ Coverage analysis (threshold: 80%) │ │
|
|
77
|
-
│ │ ✓ Security scan (npm audit, Snyk) │ │
|
|
78
|
-
│ │ ✓ Performance benchmarks │ │
|
|
79
|
-
│ │ ✓ Documentation validation │ │
|
|
80
|
-
│ │ │ │
|
|
81
|
-
│ │ Blocking: Yes (required checks for merge) │ │
|
|
82
|
-
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
83
|
-
│ │ │
|
|
84
|
-
│ PASS? │ │
|
|
85
|
-
│ ▼ │
|
|
86
|
-
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
87
|
-
│ │ LAYER 3: HUMAN REVIEW │ │
|
|
88
|
-
│ │ ═════════════════════ │ │
|
|
89
|
-
│ │ Trigger: Layer 2 passes │ │
|
|
90
|
-
│ │ Time: 30 min - 2 hours │ │
|
|
91
|
-
│ │ Catches: Final 20% (100% cumulative) │ │
|
|
92
|
-
│ │ │ │
|
|
93
|
-
│ │ □ Architecture alignment │ │
|
|
94
|
-
│ │ □ Business logic correctness │ │
|
|
95
|
-
│ │ □ Edge cases coverage │ │
|
|
96
|
-
│ │ □ Documentation quality │ │
|
|
97
|
-
│ │ □ Security best practices │ │
|
|
98
|
-
│ │ □ Strategic decisions │ │
|
|
99
|
-
│ │ │ │
|
|
100
|
-
│ │ Blocking: Yes (final approval required) │ │
|
|
101
|
-
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
102
|
-
│ │ │
|
|
103
|
-
│ APPROVE │
|
|
104
|
-
│ │ │
|
|
105
|
-
│ ▼ │
|
|
106
|
-
│ MERGE │
|
|
107
|
-
│ │
|
|
108
|
-
└─────────────────────────────────────────────────────────────────────────┘
|
|
109
|
-
```
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
## Layer 1: Pre-commit
|
|
114
|
-
|
|
115
|
-
### Purpose
|
|
116
|
-
|
|
117
|
-
Catch syntax errors, formatting issues, and simple bugs immediately during development, before code leaves the developer's machine.
|
|
118
|
-
|
|
119
|
-
### Checks
|
|
120
|
-
|
|
121
|
-
| Check | Tool | Config File | Blocking |
|
|
122
|
-
|-------|------|-------------|----------|
|
|
123
|
-
| Linting | ESLint | `.eslintrc.json` | Yes |
|
|
124
|
-
| Formatting | Prettier | `.prettierrc` | Yes |
|
|
125
|
-
| Type Checking | TypeScript | `tsconfig.json` | Yes |
|
|
126
|
-
| Unit Tests | Jest | `jest.config.js` | Yes |
|
|
127
|
-
| Commit Message | commitlint | `commitlint.config.js` | Yes |
|
|
128
|
-
|
|
129
|
-
### Configuration
|
|
130
|
-
|
|
131
|
-
#### .husky/pre-commit
|
|
132
|
-
|
|
133
|
-
```bash
|
|
134
|
-
#!/bin/sh
|
|
135
|
-
. "$(dirname "$0")/_/husky.sh"
|
|
136
|
-
|
|
137
|
-
# Run lint-staged for incremental checks
|
|
138
|
-
npx lint-staged
|
|
139
|
-
|
|
140
|
-
# Type check (full project)
|
|
141
|
-
npm run typecheck
|
|
142
|
-
|
|
143
|
-
# Run tests for changed files only
|
|
144
|
-
npm test -- --onlyChanged --passWithNoTests
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
#### .lintstagedrc.json
|
|
148
|
-
|
|
149
|
-
```json
|
|
150
|
-
{
|
|
151
|
-
"*.{js,jsx,ts,tsx}": [
|
|
152
|
-
"eslint --fix",
|
|
153
|
-
"prettier --write"
|
|
154
|
-
],
|
|
155
|
-
"*.{json,md,yaml,yml}": [
|
|
156
|
-
"prettier --write"
|
|
157
|
-
],
|
|
158
|
-
"*.md": [
|
|
159
|
-
"markdownlint --fix"
|
|
160
|
-
]
|
|
161
|
-
}
|
|
162
|
-
```
|
|
163
|
-
|
|
164
|
-
#### package.json scripts
|
|
165
|
-
|
|
166
|
-
```json
|
|
167
|
-
{
|
|
168
|
-
"scripts": {
|
|
169
|
-
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
|
|
170
|
-
"lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix",
|
|
171
|
-
"format": "prettier --write .",
|
|
172
|
-
"typecheck": "tsc --noEmit",
|
|
173
|
-
"test": "jest",
|
|
174
|
-
"test:changed": "jest --onlyChanged",
|
|
175
|
-
"prepare": "husky install"
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
```
|
|
179
|
-
|
|
180
|
-
### Expected Results
|
|
181
|
-
|
|
182
|
-
- **Time:** < 5 seconds per commit
|
|
183
|
-
- **Issues Caught:** ~30% of all potential issues
|
|
184
|
-
- **Developer Experience:** Immediate feedback, no context switching
|
|
185
|
-
|
|
186
|
-
---
|
|
187
|
-
|
|
188
|
-
## Layer 2: PR Automation
|
|
189
|
-
|
|
190
|
-
### Purpose
|
|
191
|
-
|
|
192
|
-
Run comprehensive automated checks on every PR, including AI-powered code review, integration tests, and security scanning.
|
|
193
|
-
|
|
194
|
-
### Checks
|
|
195
|
-
|
|
196
|
-
| Check | Tool | Threshold | Blocking |
|
|
197
|
-
|-------|------|-----------|----------|
|
|
198
|
-
| AI Code Review | CodeRabbit | N/A (suggestions) | No* |
|
|
199
|
-
| Integration Tests | Jest | 100% pass | Yes |
|
|
200
|
-
| Coverage | Jest | 80% minimum | Yes |
|
|
201
|
-
| Security Audit | npm audit | No high/critical | Yes |
|
|
202
|
-
| Lint | ESLint | 0 errors | Yes |
|
|
203
|
-
| Type Check | TypeScript | 0 errors | Yes |
|
|
204
|
-
| Build | npm/webpack | Success | Yes |
|
|
205
|
-
|
|
206
|
-
*CodeRabbit suggestions are non-blocking but tracked.
|
|
207
|
-
|
|
208
|
-
### Configuration
|
|
209
|
-
|
|
210
|
-
#### .github/workflows/quality-gates-pr.yml
|
|
211
|
-
|
|
212
|
-
```yaml
|
|
213
|
-
name: Quality Gates PR
|
|
214
|
-
|
|
215
|
-
on:
|
|
216
|
-
pull_request:
|
|
217
|
-
branches: [main, develop]
|
|
218
|
-
push:
|
|
219
|
-
branches: [main, develop]
|
|
220
|
-
|
|
221
|
-
concurrency:
|
|
222
|
-
group: ${{ github.workflow }}-${{ github.ref }}
|
|
223
|
-
cancel-in-progress: true
|
|
224
|
-
|
|
225
|
-
jobs:
|
|
226
|
-
quality-gates:
|
|
227
|
-
runs-on: ubuntu-latest
|
|
228
|
-
timeout-minutes: 15
|
|
229
|
-
|
|
230
|
-
steps:
|
|
231
|
-
- name: Checkout
|
|
232
|
-
uses: actions/checkout@v4
|
|
233
|
-
with:
|
|
234
|
-
fetch-depth: 0
|
|
235
|
-
|
|
236
|
-
- name: Setup Node.js
|
|
237
|
-
uses: actions/setup-node@v4
|
|
238
|
-
with:
|
|
239
|
-
node-version: '18'
|
|
240
|
-
cache: 'npm'
|
|
241
|
-
|
|
242
|
-
- name: Install dependencies
|
|
243
|
-
run: npm ci
|
|
244
|
-
|
|
245
|
-
- name: Lint
|
|
246
|
-
run: npm run lint
|
|
247
|
-
|
|
248
|
-
- name: Type check
|
|
249
|
-
run: npm run typecheck
|
|
250
|
-
|
|
251
|
-
- name: Test with coverage
|
|
252
|
-
run: npm test -- --coverage --coverageThreshold='{"global":{"branches":80,"functions":80,"lines":80,"statements":80}}'
|
|
253
|
-
|
|
254
|
-
- name: Security audit
|
|
255
|
-
run: npm audit --audit-level=high
|
|
256
|
-
|
|
257
|
-
- name: Build
|
|
258
|
-
run: npm run build
|
|
259
|
-
|
|
260
|
-
- name: Upload coverage
|
|
261
|
-
uses: codecov/codecov-action@v3
|
|
262
|
-
with:
|
|
263
|
-
file: ./coverage/lcov.info
|
|
264
|
-
fail_ci_if_error: false
|
|
265
|
-
```
|
|
266
|
-
|
|
267
|
-
#### .github/coderabbit.yaml
|
|
268
|
-
|
|
269
|
-
```yaml
|
|
270
|
-
# CodeRabbit Configuration
|
|
271
|
-
language: "en"
|
|
272
|
-
tone_instructions: "Be constructive and helpful. Focus on bugs, security, and best practices."
|
|
273
|
-
early_access: false
|
|
274
|
-
|
|
275
|
-
reviews:
|
|
276
|
-
profile: "chill"
|
|
277
|
-
request_changes_workflow: false
|
|
278
|
-
high_level_summary: true
|
|
279
|
-
poem: false
|
|
280
|
-
review_status: true
|
|
281
|
-
collapse_walkthrough: false
|
|
282
|
-
auto_review:
|
|
283
|
-
enabled: true
|
|
284
|
-
drafts: false
|
|
285
|
-
base_branches:
|
|
286
|
-
- main
|
|
287
|
-
- develop
|
|
288
|
-
path_filters:
|
|
289
|
-
- path: "**/*.test.ts"
|
|
290
|
-
instructions: "Focus on test coverage and edge cases"
|
|
291
|
-
- path: "**/*.md"
|
|
292
|
-
instructions: "Check for broken links, typos, and clarity"
|
|
293
|
-
- path: ".aios-core/**"
|
|
294
|
-
instructions: "Ensure consistency with framework standards"
|
|
295
|
-
|
|
296
|
-
chat:
|
|
297
|
-
auto_reply: true
|
|
298
|
-
```
|
|
299
|
-
|
|
300
|
-
### Expected Results
|
|
301
|
-
|
|
302
|
-
- **Time:** < 3 minutes per PR update
|
|
303
|
-
- **Issues Caught:** Additional 50% (80% cumulative)
|
|
304
|
-
- **Developer Experience:** Detailed feedback before human review
|
|
305
|
-
|
|
306
|
-
---
|
|
307
|
-
|
|
308
|
-
## Layer 3: Human Review
|
|
309
|
-
|
|
310
|
-
### Purpose
|
|
311
|
-
|
|
312
|
-
Strategic review by humans focusing on architecture, business logic, and edge cases that automated tools cannot evaluate.
|
|
313
|
-
|
|
314
|
-
### Review Focus
|
|
315
|
-
|
|
316
|
-
| Area | Reviewer | What to Check |
|
|
317
|
-
|------|----------|---------------|
|
|
318
|
-
| Architecture | @architect, Tech Lead | Alignment with patterns, scalability |
|
|
319
|
-
| Business Logic | PO, Domain Expert | Correctness, edge cases |
|
|
320
|
-
| Security | Security Champion | Best practices, vulnerabilities |
|
|
321
|
-
| Documentation | Tech Writer | Clarity, completeness |
|
|
322
|
-
| UX Impact | UX Expert | User-facing changes |
|
|
323
|
-
|
|
324
|
-
### CODEOWNERS Configuration
|
|
325
|
-
|
|
326
|
-
```
|
|
327
|
-
# CODEOWNERS - Layer 3 Human Review Assignments
|
|
328
|
-
|
|
329
|
-
# Default reviewers
|
|
330
|
-
* @team-leads
|
|
331
|
-
|
|
332
|
-
# Architecture-sensitive areas
|
|
333
|
-
/.aios-core/core/ @architect @senior-devs
|
|
334
|
-
/docs/architecture/ @architect
|
|
335
|
-
/src/core/ @senior-devs
|
|
336
|
-
|
|
337
|
-
# Security-sensitive areas
|
|
338
|
-
/src/auth/ @security-team
|
|
339
|
-
/.github/workflows/ @devops-team
|
|
340
|
-
**/security*.* @security-team
|
|
341
|
-
|
|
342
|
-
# Documentation
|
|
343
|
-
*.md @tech-writers
|
|
344
|
-
/docs/ @tech-writers
|
|
345
|
-
|
|
346
|
-
# Configuration files
|
|
347
|
-
package.json @senior-devs
|
|
348
|
-
tsconfig.json @senior-devs
|
|
349
|
-
.eslintrc.* @senior-devs
|
|
350
|
-
|
|
351
|
-
# Squads (modular areas)
|
|
352
|
-
/squads/etl/ @data-team
|
|
353
|
-
/squads/creator/ @content-team
|
|
354
|
-
```
|
|
355
|
-
|
|
356
|
-
### Review Checklist
|
|
357
|
-
|
|
358
|
-
```markdown
|
|
359
|
-
## Human Review Checklist
|
|
360
|
-
|
|
361
|
-
### Architecture
|
|
362
|
-
- [ ] Changes align with module boundaries
|
|
363
|
-
- [ ] Dependencies flow correctly (no circular)
|
|
364
|
-
- [ ] No breaking changes without migration path
|
|
365
|
-
|
|
366
|
-
### Business Logic
|
|
367
|
-
- [ ] Requirements correctly implemented
|
|
368
|
-
- [ ] Edge cases handled
|
|
369
|
-
- [ ] Error scenarios covered
|
|
370
|
-
|
|
371
|
-
### Security
|
|
372
|
-
- [ ] No hardcoded secrets
|
|
373
|
-
- [ ] Input validation present
|
|
374
|
-
- [ ] Authentication/authorization correct
|
|
375
|
-
|
|
376
|
-
### Performance
|
|
377
|
-
- [ ] No N+1 queries
|
|
378
|
-
- [ ] Caching considered
|
|
379
|
-
- [ ] Large operations async
|
|
380
|
-
|
|
381
|
-
### Documentation
|
|
382
|
-
- [ ] README updated if needed
|
|
383
|
-
- [ ] API documentation current
|
|
384
|
-
- [ ] Breaking changes documented
|
|
385
|
-
|
|
386
|
-
### Tests
|
|
387
|
-
- [ ] Critical paths covered
|
|
388
|
-
- [ ] Edge cases tested
|
|
389
|
-
- [ ] Mocks appropriate
|
|
390
|
-
```
|
|
391
|
-
|
|
392
|
-
### Expected Results
|
|
393
|
-
|
|
394
|
-
- **Time:** 30 min - 2 hours per PR
|
|
395
|
-
- **Issues Caught:** Final 20% (100% cumulative)
|
|
396
|
-
- **Focus:** Strategic decisions, not syntax
|
|
397
|
-
|
|
398
|
-
---
|
|
399
|
-
|
|
400
|
-
## Configuration Guide
|
|
401
|
-
|
|
402
|
-
### Initial Setup
|
|
403
|
-
|
|
404
|
-
```bash
|
|
405
|
-
# 1. Install dependencies
|
|
406
|
-
npm install -D husky lint-staged eslint prettier typescript jest @commitlint/cli @commitlint/config-conventional
|
|
407
|
-
|
|
408
|
-
# 2. Initialize Husky
|
|
409
|
-
npx husky install
|
|
410
|
-
|
|
411
|
-
# 3. Add pre-commit hook
|
|
412
|
-
npx husky add .husky/pre-commit "npx lint-staged && npm run typecheck && npm test -- --onlyChanged"
|
|
413
|
-
|
|
414
|
-
# 4. Add commit-msg hook (optional)
|
|
415
|
-
npx husky add .husky/commit-msg "npx --no -- commitlint --edit $1"
|
|
416
|
-
|
|
417
|
-
# 5. Update package.json
|
|
418
|
-
npm pkg set scripts.prepare="husky install"
|
|
419
|
-
```
|
|
420
|
-
|
|
421
|
-
### Customization
|
|
422
|
-
|
|
423
|
-
#### Adjusting Thresholds
|
|
424
|
-
|
|
425
|
-
```json
|
|
426
|
-
// jest.config.js
|
|
427
|
-
module.exports = {
|
|
428
|
-
coverageThreshold: {
|
|
429
|
-
global: {
|
|
430
|
-
branches: 80, // Adjust as needed
|
|
431
|
-
functions: 80,
|
|
432
|
-
lines: 80,
|
|
433
|
-
statements: 80
|
|
434
|
-
}
|
|
435
|
-
}
|
|
436
|
-
};
|
|
437
|
-
```
|
|
438
|
-
|
|
439
|
-
#### Skipping Checks (Emergency Only)
|
|
440
|
-
|
|
441
|
-
```bash
|
|
442
|
-
# Skip Layer 1 (use sparingly!)
|
|
443
|
-
git commit --no-verify -m "emergency: fix production issue"
|
|
444
|
-
|
|
445
|
-
# Layer 2: Use [skip ci] in commit message
|
|
446
|
-
git commit -m "docs: update readme [skip ci]"
|
|
447
|
-
```
|
|
448
|
-
|
|
449
|
-
---
|
|
450
|
-
|
|
451
|
-
## CodeRabbit Self-Healing
|
|
452
|
-
|
|
453
|
-
### Story Type Analysis
|
|
454
|
-
|
|
455
|
-
CodeRabbit automatically adjusts review focus based on story type:
|
|
456
|
-
|
|
457
|
-
| Story Type | Review Focus | Priority Checks |
|
|
458
|
-
|------------|--------------|-----------------|
|
|
459
|
-
| 🔧 Infrastructure | Configuration, CI/CD | Security, backwards compatibility |
|
|
460
|
-
| 💻 Feature | Business logic, UX | Tests, documentation |
|
|
461
|
-
| 📖 Documentation | Clarity, accuracy | Links, terminology |
|
|
462
|
-
| ✅ Validation | Test coverage | Edge cases |
|
|
463
|
-
| 🐛 Bug Fix | Root cause, regression | Tests, side effects |
|
|
464
|
-
|
|
465
|
-
### Path-Based Instructions
|
|
466
|
-
|
|
467
|
-
```yaml
|
|
468
|
-
# .github/coderabbit.yaml
|
|
469
|
-
reviews:
|
|
470
|
-
path_instructions:
|
|
471
|
-
- path: "**/*.test.ts"
|
|
472
|
-
instructions: |
|
|
473
|
-
Focus on:
|
|
474
|
-
- Test coverage completeness
|
|
475
|
-
- Edge case handling
|
|
476
|
-
- Mock appropriateness
|
|
477
|
-
- Assertion quality
|
|
478
|
-
|
|
479
|
-
- path: ".aios-core/docs/standards/**"
|
|
480
|
-
instructions: |
|
|
481
|
-
Verify:
|
|
482
|
-
- Terminology uses 'Squad' not 'Expansion Pack'
|
|
483
|
-
- All internal links work
|
|
484
|
-
- Version numbers are v2.1
|
|
485
|
-
|
|
486
|
-
- path: "squads/**"
|
|
487
|
-
instructions: |
|
|
488
|
-
Check:
|
|
489
|
-
- squad.yaml manifest is valid
|
|
490
|
-
- peerDependency on @aios/core declared
|
|
491
|
-
- Follows Squad structure conventions
|
|
492
|
-
|
|
493
|
-
- path: ".github/workflows/**"
|
|
494
|
-
instructions: |
|
|
495
|
-
Review:
|
|
496
|
-
- No hardcoded secrets
|
|
497
|
-
- Proper timeout settings
|
|
498
|
-
- Concurrency configuration
|
|
499
|
-
- Security best practices
|
|
500
|
-
```
|
|
501
|
-
|
|
502
|
-
---
|
|
503
|
-
|
|
504
|
-
## Metrics & Impact
|
|
505
|
-
|
|
506
|
-
### Before Quality Gates (v2.0)
|
|
507
|
-
|
|
508
|
-
| Metric | Value |
|
|
509
|
-
|--------|-------|
|
|
510
|
-
| Issues caught automatically | 0% |
|
|
511
|
-
| Average review time | 2-4 hours per PR |
|
|
512
|
-
| Issues escaping to production | ~15% |
|
|
513
|
-
| Developer context switches | High |
|
|
514
|
-
|
|
515
|
-
### After Quality Gates (v2.1)
|
|
516
|
-
|
|
517
|
-
| Metric | Value | Improvement |
|
|
518
|
-
|--------|-------|-------------|
|
|
519
|
-
| Issues caught automatically | 80% | **∞** |
|
|
520
|
-
| Average review time | 30 min per PR | **75% reduction** |
|
|
521
|
-
| Issues escaping to production | <5% | **67% reduction** |
|
|
522
|
-
| Developer context switches | Low | **Significant** |
|
|
523
|
-
|
|
524
|
-
### Layer Breakdown
|
|
525
|
-
|
|
526
|
-
```
|
|
527
|
-
┌─────────────────────────────────────────────────────────────────────────┐
|
|
528
|
-
│ ISSUE DETECTION BY LAYER │
|
|
529
|
-
│ │
|
|
530
|
-
│ Layer 1 (Pre-commit) │
|
|
531
|
-
│ ████████████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 30% │
|
|
532
|
-
│ │
|
|
533
|
-
│ Layer 2 (PR Automation) │
|
|
534
|
-
│ ████████████████████████████████████████████████████████░░░░ 80% │
|
|
535
|
-
│ (includes Layer 1 + additional 50%) │
|
|
536
|
-
│ │
|
|
537
|
-
│ Layer 3 (Human Review) │
|
|
538
|
-
│ ████████████████████████████████████████████████████████████ 100% │
|
|
539
|
-
│ (includes Layer 1 + Layer 2 + final 20%) │
|
|
540
|
-
│ │
|
|
541
|
-
└─────────────────────────────────────────────────────────────────────────┘
|
|
542
|
-
```
|
|
543
|
-
|
|
544
|
-
---
|
|
545
|
-
|
|
546
|
-
## Related Documents
|
|
547
|
-
|
|
548
|
-
- [AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md](./AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md)
|
|
549
|
-
- [CodeRabbit Integration Decisions](../../docs/architecture/coderabbit-integration-decisions.md)
|
|
550
|
-
- [STORY-TEMPLATE-V2-SPECIFICATION.md](./STORY-TEMPLATE-V2-SPECIFICATION.md)
|
|
551
|
-
|
|
552
|
-
---
|
|
553
|
-
|
|
554
|
-
**Last Updated:** 2025-12-09
|
|
555
|
-
**Version:** 2.1.0
|
|
556
|
-
**Maintainer:** @qa (Quinn)
|
|
1
|
+
# Quality Gates Specification v2.1
|
|
2
|
+
|
|
3
|
+
**Version:** 2.1.0
|
|
4
|
+
**Last Updated:** 2025-12-09
|
|
5
|
+
**Status:** Official Standard
|
|
6
|
+
**Related:** Sprint 3 Implementation
|
|
7
|
+
|
|
8
|
+
---
|
|
9
|
+
|
|
10
|
+
## 📋 Table of Contents
|
|
11
|
+
|
|
12
|
+
- [Overview](#overview)
|
|
13
|
+
- [3-Layer Architecture](#3-layer-architecture)
|
|
14
|
+
- [Layer 1: Pre-commit](#layer-1-pre-commit)
|
|
15
|
+
- [Layer 2: PR Automation](#layer-2-pr-automation)
|
|
16
|
+
- [Layer 3: Human Review](#layer-3-human-review)
|
|
17
|
+
- [Configuration Guide](#configuration-guide)
|
|
18
|
+
- [CodeRabbit Self-Healing](#coderabbit-self-healing)
|
|
19
|
+
- [Metrics & Impact](#metrics--impact)
|
|
20
|
+
|
|
21
|
+
---
|
|
22
|
+
|
|
23
|
+
## Overview
|
|
24
|
+
|
|
25
|
+
### Purpose
|
|
26
|
+
|
|
27
|
+
The Quality Gates 3-Layer system ensures code quality through progressive automated validation, catching 80% of issues automatically and focusing human review on strategic decisions.
|
|
28
|
+
|
|
29
|
+
### Design Principles
|
|
30
|
+
|
|
31
|
+
1. **Shift Left** - Catch issues as early as possible
|
|
32
|
+
2. **Progressive Depth** - Each layer adds more comprehensive checks
|
|
33
|
+
3. **Automation First** - Humans focus on what humans do best
|
|
34
|
+
4. **Fast Feedback** - Immediate response at each layer
|
|
35
|
+
5. **Non-Blocking Default** - Warnings vs. errors where appropriate
|
|
36
|
+
|
|
37
|
+
### Architecture Diagram
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
┌─────────────────────────────────────────────────────────────────────────┐
|
|
41
|
+
│ QUALITY GATES WORKFLOW │
|
|
42
|
+
│ │
|
|
43
|
+
│ Developer │
|
|
44
|
+
│ │ │
|
|
45
|
+
│ ▼ │
|
|
46
|
+
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
47
|
+
│ │ LAYER 1: PRE-COMMIT │ │
|
|
48
|
+
│ │ ════════════════════ │ │
|
|
49
|
+
│ │ Trigger: File save, git commit │ │
|
|
50
|
+
│ │ Time: < 5 seconds │ │
|
|
51
|
+
│ │ Catches: 30% of issues │ │
|
|
52
|
+
│ │ │ │
|
|
53
|
+
│ │ ✓ ESLint (syntax, patterns) │ │
|
|
54
|
+
│ │ ✓ Prettier (formatting) │ │
|
|
55
|
+
│ │ ✓ TypeScript (type checking) │ │
|
|
56
|
+
│ │ ✓ Unit tests (changed files only) │ │
|
|
57
|
+
│ │ │ │
|
|
58
|
+
│ │ Blocking: Yes (can't commit if fails) │ │
|
|
59
|
+
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
60
|
+
│ │ │
|
|
61
|
+
│ PASS? │ │
|
|
62
|
+
│ ▼ │
|
|
63
|
+
│ git commit │
|
|
64
|
+
│ git push │
|
|
65
|
+
│ │ │
|
|
66
|
+
│ ▼ │
|
|
67
|
+
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
68
|
+
│ │ LAYER 2: PR AUTOMATION │ │
|
|
69
|
+
│ │ ══════════════════════ │ │
|
|
70
|
+
│ │ Trigger: PR creation, PR update │ │
|
|
71
|
+
│ │ Time: < 3 minutes │ │
|
|
72
|
+
│ │ Catches: Additional 50% (80% cumulative) │ │
|
|
73
|
+
│ │ │ │
|
|
74
|
+
│ │ ✓ CodeRabbit AI review │ │
|
|
75
|
+
│ │ ✓ Integration tests │ │
|
|
76
|
+
│ │ ✓ Coverage analysis (threshold: 80%) │ │
|
|
77
|
+
│ │ ✓ Security scan (npm audit, Snyk) │ │
|
|
78
|
+
│ │ ✓ Performance benchmarks │ │
|
|
79
|
+
│ │ ✓ Documentation validation │ │
|
|
80
|
+
│ │ │ │
|
|
81
|
+
│ │ Blocking: Yes (required checks for merge) │ │
|
|
82
|
+
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
83
|
+
│ │ │
|
|
84
|
+
│ PASS? │ │
|
|
85
|
+
│ ▼ │
|
|
86
|
+
│ ┌──────────────────────────────────────────────────────────────────┐ │
|
|
87
|
+
│ │ LAYER 3: HUMAN REVIEW │ │
|
|
88
|
+
│ │ ═════════════════════ │ │
|
|
89
|
+
│ │ Trigger: Layer 2 passes │ │
|
|
90
|
+
│ │ Time: 30 min - 2 hours │ │
|
|
91
|
+
│ │ Catches: Final 20% (100% cumulative) │ │
|
|
92
|
+
│ │ │ │
|
|
93
|
+
│ │ □ Architecture alignment │ │
|
|
94
|
+
│ │ □ Business logic correctness │ │
|
|
95
|
+
│ │ □ Edge cases coverage │ │
|
|
96
|
+
│ │ □ Documentation quality │ │
|
|
97
|
+
│ │ □ Security best practices │ │
|
|
98
|
+
│ │ □ Strategic decisions │ │
|
|
99
|
+
│ │ │ │
|
|
100
|
+
│ │ Blocking: Yes (final approval required) │ │
|
|
101
|
+
│ └──────────────────────────────────────────────────────────────────┘ │
|
|
102
|
+
│ │ │
|
|
103
|
+
│ APPROVE │
|
|
104
|
+
│ │ │
|
|
105
|
+
│ ▼ │
|
|
106
|
+
│ MERGE │
|
|
107
|
+
│ │
|
|
108
|
+
└─────────────────────────────────────────────────────────────────────────┘
|
|
109
|
+
```
|
|
110
|
+
|
|
111
|
+
---
|
|
112
|
+
|
|
113
|
+
## Layer 1: Pre-commit
|
|
114
|
+
|
|
115
|
+
### Purpose
|
|
116
|
+
|
|
117
|
+
Catch syntax errors, formatting issues, and simple bugs immediately during development, before code leaves the developer's machine.
|
|
118
|
+
|
|
119
|
+
### Checks
|
|
120
|
+
|
|
121
|
+
| Check | Tool | Config File | Blocking |
|
|
122
|
+
|-------|------|-------------|----------|
|
|
123
|
+
| Linting | ESLint | `.eslintrc.json` | Yes |
|
|
124
|
+
| Formatting | Prettier | `.prettierrc` | Yes |
|
|
125
|
+
| Type Checking | TypeScript | `tsconfig.json` | Yes |
|
|
126
|
+
| Unit Tests | Jest | `jest.config.js` | Yes |
|
|
127
|
+
| Commit Message | commitlint | `commitlint.config.js` | Yes |
|
|
128
|
+
|
|
129
|
+
### Configuration
|
|
130
|
+
|
|
131
|
+
#### .husky/pre-commit
|
|
132
|
+
|
|
133
|
+
```bash
|
|
134
|
+
#!/bin/sh
|
|
135
|
+
. "$(dirname "$0")/_/husky.sh"
|
|
136
|
+
|
|
137
|
+
# Run lint-staged for incremental checks
|
|
138
|
+
npx lint-staged
|
|
139
|
+
|
|
140
|
+
# Type check (full project)
|
|
141
|
+
npm run typecheck
|
|
142
|
+
|
|
143
|
+
# Run tests for changed files only
|
|
144
|
+
npm test -- --onlyChanged --passWithNoTests
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
#### .lintstagedrc.json
|
|
148
|
+
|
|
149
|
+
```json
|
|
150
|
+
{
|
|
151
|
+
"*.{js,jsx,ts,tsx}": [
|
|
152
|
+
"eslint --fix",
|
|
153
|
+
"prettier --write"
|
|
154
|
+
],
|
|
155
|
+
"*.{json,md,yaml,yml}": [
|
|
156
|
+
"prettier --write"
|
|
157
|
+
],
|
|
158
|
+
"*.md": [
|
|
159
|
+
"markdownlint --fix"
|
|
160
|
+
]
|
|
161
|
+
}
|
|
162
|
+
```
|
|
163
|
+
|
|
164
|
+
#### package.json scripts
|
|
165
|
+
|
|
166
|
+
```json
|
|
167
|
+
{
|
|
168
|
+
"scripts": {
|
|
169
|
+
"lint": "eslint . --ext .js,.jsx,.ts,.tsx",
|
|
170
|
+
"lint:fix": "eslint . --ext .js,.jsx,.ts,.tsx --fix",
|
|
171
|
+
"format": "prettier --write .",
|
|
172
|
+
"typecheck": "tsc --noEmit",
|
|
173
|
+
"test": "jest",
|
|
174
|
+
"test:changed": "jest --onlyChanged",
|
|
175
|
+
"prepare": "husky install"
|
|
176
|
+
}
|
|
177
|
+
}
|
|
178
|
+
```
|
|
179
|
+
|
|
180
|
+
### Expected Results
|
|
181
|
+
|
|
182
|
+
- **Time:** < 5 seconds per commit
|
|
183
|
+
- **Issues Caught:** ~30% of all potential issues
|
|
184
|
+
- **Developer Experience:** Immediate feedback, no context switching
|
|
185
|
+
|
|
186
|
+
---
|
|
187
|
+
|
|
188
|
+
## Layer 2: PR Automation
|
|
189
|
+
|
|
190
|
+
### Purpose
|
|
191
|
+
|
|
192
|
+
Run comprehensive automated checks on every PR, including AI-powered code review, integration tests, and security scanning.
|
|
193
|
+
|
|
194
|
+
### Checks
|
|
195
|
+
|
|
196
|
+
| Check | Tool | Threshold | Blocking |
|
|
197
|
+
|-------|------|-----------|----------|
|
|
198
|
+
| AI Code Review | CodeRabbit | N/A (suggestions) | No* |
|
|
199
|
+
| Integration Tests | Jest | 100% pass | Yes |
|
|
200
|
+
| Coverage | Jest | 80% minimum | Yes |
|
|
201
|
+
| Security Audit | npm audit | No high/critical | Yes |
|
|
202
|
+
| Lint | ESLint | 0 errors | Yes |
|
|
203
|
+
| Type Check | TypeScript | 0 errors | Yes |
|
|
204
|
+
| Build | npm/webpack | Success | Yes |
|
|
205
|
+
|
|
206
|
+
*CodeRabbit suggestions are non-blocking but tracked.
|
|
207
|
+
|
|
208
|
+
### Configuration
|
|
209
|
+
|
|
210
|
+
#### .github/workflows/quality-gates-pr.yml
|
|
211
|
+
|
|
212
|
+
```yaml
|
|
213
|
+
name: Quality Gates PR
|
|
214
|
+
|
|
215
|
+
on:
|
|
216
|
+
pull_request:
|
|
217
|
+
branches: [main, develop]
|
|
218
|
+
push:
|
|
219
|
+
branches: [main, develop]
|
|
220
|
+
|
|
221
|
+
concurrency:
|
|
222
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
223
|
+
cancel-in-progress: true
|
|
224
|
+
|
|
225
|
+
jobs:
|
|
226
|
+
quality-gates:
|
|
227
|
+
runs-on: ubuntu-latest
|
|
228
|
+
timeout-minutes: 15
|
|
229
|
+
|
|
230
|
+
steps:
|
|
231
|
+
- name: Checkout
|
|
232
|
+
uses: actions/checkout@v4
|
|
233
|
+
with:
|
|
234
|
+
fetch-depth: 0
|
|
235
|
+
|
|
236
|
+
- name: Setup Node.js
|
|
237
|
+
uses: actions/setup-node@v4
|
|
238
|
+
with:
|
|
239
|
+
node-version: '18'
|
|
240
|
+
cache: 'npm'
|
|
241
|
+
|
|
242
|
+
- name: Install dependencies
|
|
243
|
+
run: npm ci
|
|
244
|
+
|
|
245
|
+
- name: Lint
|
|
246
|
+
run: npm run lint
|
|
247
|
+
|
|
248
|
+
- name: Type check
|
|
249
|
+
run: npm run typecheck
|
|
250
|
+
|
|
251
|
+
- name: Test with coverage
|
|
252
|
+
run: npm test -- --coverage --coverageThreshold='{"global":{"branches":80,"functions":80,"lines":80,"statements":80}}'
|
|
253
|
+
|
|
254
|
+
- name: Security audit
|
|
255
|
+
run: npm audit --audit-level=high
|
|
256
|
+
|
|
257
|
+
- name: Build
|
|
258
|
+
run: npm run build
|
|
259
|
+
|
|
260
|
+
- name: Upload coverage
|
|
261
|
+
uses: codecov/codecov-action@v3
|
|
262
|
+
with:
|
|
263
|
+
file: ./coverage/lcov.info
|
|
264
|
+
fail_ci_if_error: false
|
|
265
|
+
```
|
|
266
|
+
|
|
267
|
+
#### .github/coderabbit.yaml
|
|
268
|
+
|
|
269
|
+
```yaml
|
|
270
|
+
# CodeRabbit Configuration
|
|
271
|
+
language: "en"
|
|
272
|
+
tone_instructions: "Be constructive and helpful. Focus on bugs, security, and best practices."
|
|
273
|
+
early_access: false
|
|
274
|
+
|
|
275
|
+
reviews:
|
|
276
|
+
profile: "chill"
|
|
277
|
+
request_changes_workflow: false
|
|
278
|
+
high_level_summary: true
|
|
279
|
+
poem: false
|
|
280
|
+
review_status: true
|
|
281
|
+
collapse_walkthrough: false
|
|
282
|
+
auto_review:
|
|
283
|
+
enabled: true
|
|
284
|
+
drafts: false
|
|
285
|
+
base_branches:
|
|
286
|
+
- main
|
|
287
|
+
- develop
|
|
288
|
+
path_filters:
|
|
289
|
+
- path: "**/*.test.ts"
|
|
290
|
+
instructions: "Focus on test coverage and edge cases"
|
|
291
|
+
- path: "**/*.md"
|
|
292
|
+
instructions: "Check for broken links, typos, and clarity"
|
|
293
|
+
- path: ".aios-core/**"
|
|
294
|
+
instructions: "Ensure consistency with framework standards"
|
|
295
|
+
|
|
296
|
+
chat:
|
|
297
|
+
auto_reply: true
|
|
298
|
+
```
|
|
299
|
+
|
|
300
|
+
### Expected Results
|
|
301
|
+
|
|
302
|
+
- **Time:** < 3 minutes per PR update
|
|
303
|
+
- **Issues Caught:** Additional 50% (80% cumulative)
|
|
304
|
+
- **Developer Experience:** Detailed feedback before human review
|
|
305
|
+
|
|
306
|
+
---
|
|
307
|
+
|
|
308
|
+
## Layer 3: Human Review
|
|
309
|
+
|
|
310
|
+
### Purpose
|
|
311
|
+
|
|
312
|
+
Strategic review by humans focusing on architecture, business logic, and edge cases that automated tools cannot evaluate.
|
|
313
|
+
|
|
314
|
+
### Review Focus
|
|
315
|
+
|
|
316
|
+
| Area | Reviewer | What to Check |
|
|
317
|
+
|------|----------|---------------|
|
|
318
|
+
| Architecture | @architect, Tech Lead | Alignment with patterns, scalability |
|
|
319
|
+
| Business Logic | PO, Domain Expert | Correctness, edge cases |
|
|
320
|
+
| Security | Security Champion | Best practices, vulnerabilities |
|
|
321
|
+
| Documentation | Tech Writer | Clarity, completeness |
|
|
322
|
+
| UX Impact | UX Expert | User-facing changes |
|
|
323
|
+
|
|
324
|
+
### CODEOWNERS Configuration
|
|
325
|
+
|
|
326
|
+
```
|
|
327
|
+
# CODEOWNERS - Layer 3 Human Review Assignments
|
|
328
|
+
|
|
329
|
+
# Default reviewers
|
|
330
|
+
* @team-leads
|
|
331
|
+
|
|
332
|
+
# Architecture-sensitive areas
|
|
333
|
+
/.aios-core/core/ @architect @senior-devs
|
|
334
|
+
/docs/architecture/ @architect
|
|
335
|
+
/src/core/ @senior-devs
|
|
336
|
+
|
|
337
|
+
# Security-sensitive areas
|
|
338
|
+
/src/auth/ @security-team
|
|
339
|
+
/.github/workflows/ @devops-team
|
|
340
|
+
**/security*.* @security-team
|
|
341
|
+
|
|
342
|
+
# Documentation
|
|
343
|
+
*.md @tech-writers
|
|
344
|
+
/docs/ @tech-writers
|
|
345
|
+
|
|
346
|
+
# Configuration files
|
|
347
|
+
package.json @senior-devs
|
|
348
|
+
tsconfig.json @senior-devs
|
|
349
|
+
.eslintrc.* @senior-devs
|
|
350
|
+
|
|
351
|
+
# Squads (modular areas)
|
|
352
|
+
/squads/etl/ @data-team
|
|
353
|
+
/squads/creator/ @content-team
|
|
354
|
+
```
|
|
355
|
+
|
|
356
|
+
### Review Checklist
|
|
357
|
+
|
|
358
|
+
```markdown
|
|
359
|
+
## Human Review Checklist
|
|
360
|
+
|
|
361
|
+
### Architecture
|
|
362
|
+
- [ ] Changes align with module boundaries
|
|
363
|
+
- [ ] Dependencies flow correctly (no circular)
|
|
364
|
+
- [ ] No breaking changes without migration path
|
|
365
|
+
|
|
366
|
+
### Business Logic
|
|
367
|
+
- [ ] Requirements correctly implemented
|
|
368
|
+
- [ ] Edge cases handled
|
|
369
|
+
- [ ] Error scenarios covered
|
|
370
|
+
|
|
371
|
+
### Security
|
|
372
|
+
- [ ] No hardcoded secrets
|
|
373
|
+
- [ ] Input validation present
|
|
374
|
+
- [ ] Authentication/authorization correct
|
|
375
|
+
|
|
376
|
+
### Performance
|
|
377
|
+
- [ ] No N+1 queries
|
|
378
|
+
- [ ] Caching considered
|
|
379
|
+
- [ ] Large operations async
|
|
380
|
+
|
|
381
|
+
### Documentation
|
|
382
|
+
- [ ] README updated if needed
|
|
383
|
+
- [ ] API documentation current
|
|
384
|
+
- [ ] Breaking changes documented
|
|
385
|
+
|
|
386
|
+
### Tests
|
|
387
|
+
- [ ] Critical paths covered
|
|
388
|
+
- [ ] Edge cases tested
|
|
389
|
+
- [ ] Mocks appropriate
|
|
390
|
+
```
|
|
391
|
+
|
|
392
|
+
### Expected Results
|
|
393
|
+
|
|
394
|
+
- **Time:** 30 min - 2 hours per PR
|
|
395
|
+
- **Issues Caught:** Final 20% (100% cumulative)
|
|
396
|
+
- **Focus:** Strategic decisions, not syntax
|
|
397
|
+
|
|
398
|
+
---
|
|
399
|
+
|
|
400
|
+
## Configuration Guide
|
|
401
|
+
|
|
402
|
+
### Initial Setup
|
|
403
|
+
|
|
404
|
+
```bash
|
|
405
|
+
# 1. Install dependencies
|
|
406
|
+
npm install -D husky lint-staged eslint prettier typescript jest @commitlint/cli @commitlint/config-conventional
|
|
407
|
+
|
|
408
|
+
# 2. Initialize Husky
|
|
409
|
+
npx husky install
|
|
410
|
+
|
|
411
|
+
# 3. Add pre-commit hook
|
|
412
|
+
npx husky add .husky/pre-commit "npx lint-staged && npm run typecheck && npm test -- --onlyChanged"
|
|
413
|
+
|
|
414
|
+
# 4. Add commit-msg hook (optional)
|
|
415
|
+
npx husky add .husky/commit-msg "npx --no -- commitlint --edit $1"
|
|
416
|
+
|
|
417
|
+
# 5. Update package.json
|
|
418
|
+
npm pkg set scripts.prepare="husky install"
|
|
419
|
+
```
|
|
420
|
+
|
|
421
|
+
### Customization
|
|
422
|
+
|
|
423
|
+
#### Adjusting Thresholds
|
|
424
|
+
|
|
425
|
+
```json
|
|
426
|
+
// jest.config.js
|
|
427
|
+
module.exports = {
|
|
428
|
+
coverageThreshold: {
|
|
429
|
+
global: {
|
|
430
|
+
branches: 80, // Adjust as needed
|
|
431
|
+
functions: 80,
|
|
432
|
+
lines: 80,
|
|
433
|
+
statements: 80
|
|
434
|
+
}
|
|
435
|
+
}
|
|
436
|
+
};
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
#### Skipping Checks (Emergency Only)
|
|
440
|
+
|
|
441
|
+
```bash
|
|
442
|
+
# Skip Layer 1 (use sparingly!)
|
|
443
|
+
git commit --no-verify -m "emergency: fix production issue"
|
|
444
|
+
|
|
445
|
+
# Layer 2: Use [skip ci] in commit message
|
|
446
|
+
git commit -m "docs: update readme [skip ci]"
|
|
447
|
+
```
|
|
448
|
+
|
|
449
|
+
---
|
|
450
|
+
|
|
451
|
+
## CodeRabbit Self-Healing
|
|
452
|
+
|
|
453
|
+
### Story Type Analysis
|
|
454
|
+
|
|
455
|
+
CodeRabbit automatically adjusts review focus based on story type:
|
|
456
|
+
|
|
457
|
+
| Story Type | Review Focus | Priority Checks |
|
|
458
|
+
|------------|--------------|-----------------|
|
|
459
|
+
| 🔧 Infrastructure | Configuration, CI/CD | Security, backwards compatibility |
|
|
460
|
+
| 💻 Feature | Business logic, UX | Tests, documentation |
|
|
461
|
+
| 📖 Documentation | Clarity, accuracy | Links, terminology |
|
|
462
|
+
| ✅ Validation | Test coverage | Edge cases |
|
|
463
|
+
| 🐛 Bug Fix | Root cause, regression | Tests, side effects |
|
|
464
|
+
|
|
465
|
+
### Path-Based Instructions
|
|
466
|
+
|
|
467
|
+
```yaml
|
|
468
|
+
# .github/coderabbit.yaml
|
|
469
|
+
reviews:
|
|
470
|
+
path_instructions:
|
|
471
|
+
- path: "**/*.test.ts"
|
|
472
|
+
instructions: |
|
|
473
|
+
Focus on:
|
|
474
|
+
- Test coverage completeness
|
|
475
|
+
- Edge case handling
|
|
476
|
+
- Mock appropriateness
|
|
477
|
+
- Assertion quality
|
|
478
|
+
|
|
479
|
+
- path: ".aios-core/docs/standards/**"
|
|
480
|
+
instructions: |
|
|
481
|
+
Verify:
|
|
482
|
+
- Terminology uses 'Squad' not 'Expansion Pack'
|
|
483
|
+
- All internal links work
|
|
484
|
+
- Version numbers are v2.1
|
|
485
|
+
|
|
486
|
+
- path: "squads/**"
|
|
487
|
+
instructions: |
|
|
488
|
+
Check:
|
|
489
|
+
- squad.yaml manifest is valid
|
|
490
|
+
- peerDependency on @aios/core declared
|
|
491
|
+
- Follows Squad structure conventions
|
|
492
|
+
|
|
493
|
+
- path: ".github/workflows/**"
|
|
494
|
+
instructions: |
|
|
495
|
+
Review:
|
|
496
|
+
- No hardcoded secrets
|
|
497
|
+
- Proper timeout settings
|
|
498
|
+
- Concurrency configuration
|
|
499
|
+
- Security best practices
|
|
500
|
+
```
|
|
501
|
+
|
|
502
|
+
---
|
|
503
|
+
|
|
504
|
+
## Metrics & Impact
|
|
505
|
+
|
|
506
|
+
### Before Quality Gates (v2.0)
|
|
507
|
+
|
|
508
|
+
| Metric | Value |
|
|
509
|
+
|--------|-------|
|
|
510
|
+
| Issues caught automatically | 0% |
|
|
511
|
+
| Average review time | 2-4 hours per PR |
|
|
512
|
+
| Issues escaping to production | ~15% |
|
|
513
|
+
| Developer context switches | High |
|
|
514
|
+
|
|
515
|
+
### After Quality Gates (v2.1)
|
|
516
|
+
|
|
517
|
+
| Metric | Value | Improvement |
|
|
518
|
+
|--------|-------|-------------|
|
|
519
|
+
| Issues caught automatically | 80% | **∞** |
|
|
520
|
+
| Average review time | 30 min per PR | **75% reduction** |
|
|
521
|
+
| Issues escaping to production | <5% | **67% reduction** |
|
|
522
|
+
| Developer context switches | Low | **Significant** |
|
|
523
|
+
|
|
524
|
+
### Layer Breakdown
|
|
525
|
+
|
|
526
|
+
```
|
|
527
|
+
┌─────────────────────────────────────────────────────────────────────────┐
|
|
528
|
+
│ ISSUE DETECTION BY LAYER │
|
|
529
|
+
│ │
|
|
530
|
+
│ Layer 1 (Pre-commit) │
|
|
531
|
+
│ ████████████████████████████░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░░ 30% │
|
|
532
|
+
│ │
|
|
533
|
+
│ Layer 2 (PR Automation) │
|
|
534
|
+
│ ████████████████████████████████████████████████████████░░░░ 80% │
|
|
535
|
+
│ (includes Layer 1 + additional 50%) │
|
|
536
|
+
│ │
|
|
537
|
+
│ Layer 3 (Human Review) │
|
|
538
|
+
│ ████████████████████████████████████████████████████████████ 100% │
|
|
539
|
+
│ (includes Layer 1 + Layer 2 + final 20%) │
|
|
540
|
+
│ │
|
|
541
|
+
└─────────────────────────────────────────────────────────────────────────┘
|
|
542
|
+
```
|
|
543
|
+
|
|
544
|
+
---
|
|
545
|
+
|
|
546
|
+
## Related Documents
|
|
547
|
+
|
|
548
|
+
- [AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md](./AIOS-LIVRO-DE-OURO-V2.1-COMPLETE.md)
|
|
549
|
+
- [CodeRabbit Integration Decisions](../../docs/architecture/coderabbit-integration-decisions.md)
|
|
550
|
+
- [STORY-TEMPLATE-V2-SPECIFICATION.md](./STORY-TEMPLATE-V2-SPECIFICATION.md)
|
|
551
|
+
|
|
552
|
+
---
|
|
553
|
+
|
|
554
|
+
**Last Updated:** 2025-12-09
|
|
555
|
+
**Version:** 2.1.0
|
|
556
|
+
**Maintainer:** @qa (Quinn)
|