agileflow 4.0.0-alpha.2 → 4.0.0-alpha.21
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/CHANGELOG.md +51 -0
- package/content/plugins/accessibility/plugin.yaml +14 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/SKILL.md +392 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/references/aria-patterns.md +528 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/references/testing-checklist.md +457 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/references/wcag-guide.md +683 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/workflows/audit-page.md +310 -0
- package/content/plugins/accessibility/skills/agileflow-accessibility/workflows/implement-accessible-component.md +479 -0
- package/content/plugins/ads/agents/ads-audit-budget.md +185 -0
- package/content/plugins/ads/agents/ads-audit-compliance.md +171 -0
- package/content/plugins/ads/agents/ads-audit-creative.md +168 -0
- package/content/plugins/ads/agents/ads-audit-google.md +227 -0
- package/content/plugins/ads/agents/ads-audit-meta.md +184 -0
- package/content/plugins/ads/agents/ads-audit-tracking.md +205 -0
- package/content/plugins/ads/agents/ads-consensus.md +410 -0
- package/content/plugins/ads/agents/ads-generate.md +152 -0
- package/content/plugins/ads/agents/ads-performance-tracker.md +212 -0
- package/content/plugins/ads/plugin.yaml +23 -4
- package/content/plugins/ads/skills/agileflow-ads/SKILL.md +218 -0
- package/content/plugins/ads/skills/agileflow-ads/references/ad-copy-formula-guide.md +131 -0
- package/content/plugins/ads/skills/agileflow-ads/references/audience-targeting-guide.md +137 -0
- package/content/plugins/ads/skills/agileflow-ads/references/bid-strategy-guide.md +115 -0
- package/content/plugins/ads/skills/agileflow-ads/references/platform-benchmarks.md +100 -0
- package/content/plugins/ads/skills/agileflow-ads/workflows/audit.md +118 -0
- package/content/plugins/ads/skills/agileflow-ads/workflows/generate.md +84 -0
- package/content/plugins/audit/agents/a11y-analyzer-aria.md +173 -0
- package/content/plugins/audit/agents/a11y-analyzer-forms.md +173 -0
- package/content/plugins/audit/agents/a11y-analyzer-keyboard.md +183 -0
- package/content/plugins/audit/agents/a11y-analyzer-semantic.md +169 -0
- package/content/plugins/audit/agents/a11y-analyzer-visual.md +172 -0
- package/content/plugins/audit/agents/a11y-consensus.md +249 -0
- package/content/plugins/audit/agents/accessibility.md +558 -0
- package/content/plugins/audit/agents/api-quality-analyzer-conventions.md +156 -0
- package/content/plugins/audit/agents/api-quality-analyzer-docs.md +184 -0
- package/content/plugins/audit/agents/api-quality-analyzer-errors.md +191 -0
- package/content/plugins/audit/agents/api-quality-analyzer-pagination.md +179 -0
- package/content/plugins/audit/agents/api-quality-analyzer-versioning.md +150 -0
- package/content/plugins/audit/agents/api-quality-consensus.md +217 -0
- package/content/plugins/audit/agents/api-validator.md +191 -0
- package/content/plugins/audit/agents/arch-analyzer-circular.md +156 -0
- package/content/plugins/audit/agents/arch-analyzer-complexity.md +193 -0
- package/content/plugins/audit/agents/arch-analyzer-coupling.md +152 -0
- package/content/plugins/audit/agents/arch-analyzer-layering.md +160 -0
- package/content/plugins/audit/agents/arch-analyzer-patterns.md +210 -0
- package/content/plugins/audit/agents/arch-consensus.md +228 -0
- package/content/plugins/audit/agents/browser-qa.md +342 -0
- package/content/plugins/audit/agents/code-reviewer.md +298 -0
- package/content/plugins/audit/agents/completeness-analyzer-api.md +199 -0
- package/content/plugins/audit/agents/completeness-analyzer-conditional.md +211 -0
- package/content/plugins/audit/agents/completeness-analyzer-handlers.md +166 -0
- package/content/plugins/audit/agents/completeness-analyzer-imports.md +165 -0
- package/content/plugins/audit/agents/completeness-analyzer-routes.md +190 -0
- package/content/plugins/audit/agents/completeness-analyzer-state.md +196 -0
- package/content/plugins/audit/agents/completeness-analyzer-stubs.md +206 -0
- package/content/plugins/audit/agents/completeness-consensus.md +295 -0
- package/content/plugins/audit/agents/error-analyzer.md +213 -0
- package/content/plugins/audit/agents/flow-analyzer-authorization.md +182 -0
- package/content/plugins/audit/agents/flow-analyzer-discovery.md +174 -0
- package/content/plugins/audit/agents/flow-analyzer-errors.md +186 -0
- package/content/plugins/audit/agents/flow-analyzer-feedback.md +185 -0
- package/content/plugins/audit/agents/flow-analyzer-navigation.md +177 -0
- package/content/plugins/audit/agents/flow-analyzer-persistence.md +193 -0
- package/content/plugins/audit/agents/flow-analyzer-wiring.md +169 -0
- package/content/plugins/audit/agents/flow-consensus.md +237 -0
- package/content/plugins/audit/agents/legal-analyzer-a11y.md +114 -0
- package/content/plugins/audit/agents/legal-analyzer-ai.md +121 -0
- package/content/plugins/audit/agents/legal-analyzer-consumer.md +114 -0
- package/content/plugins/audit/agents/legal-analyzer-content.md +117 -0
- package/content/plugins/audit/agents/legal-analyzer-international.md +119 -0
- package/content/plugins/audit/agents/legal-analyzer-licensing.md +119 -0
- package/content/plugins/audit/agents/legal-analyzer-privacy.md +112 -0
- package/content/plugins/audit/agents/legal-analyzer-security.md +116 -0
- package/content/plugins/audit/agents/legal-analyzer-terms.md +115 -0
- package/content/plugins/audit/agents/legal-consensus.md +250 -0
- package/content/plugins/audit/agents/logic-analyzer-edge.md +179 -0
- package/content/plugins/audit/agents/logic-analyzer-flow.md +264 -0
- package/content/plugins/audit/agents/logic-analyzer-invariant.md +215 -0
- package/content/plugins/audit/agents/logic-analyzer-race.md +280 -0
- package/content/plugins/audit/agents/logic-analyzer-type.md +227 -0
- package/content/plugins/audit/agents/logic-consensus.md +259 -0
- package/content/plugins/audit/agents/perf-analyzer-assets.md +182 -0
- package/content/plugins/audit/agents/perf-analyzer-bundle.md +173 -0
- package/content/plugins/audit/agents/perf-analyzer-caching.md +170 -0
- package/content/plugins/audit/agents/perf-analyzer-compute.md +173 -0
- package/content/plugins/audit/agents/perf-analyzer-memory.md +193 -0
- package/content/plugins/audit/agents/perf-analyzer-network.md +165 -0
- package/content/plugins/audit/agents/perf-analyzer-queries.md +162 -0
- package/content/plugins/audit/agents/perf-analyzer-rendering.md +168 -0
- package/content/plugins/audit/agents/perf-consensus.md +287 -0
- package/content/plugins/audit/agents/qa.md +820 -0
- package/content/plugins/audit/agents/quality-analyzer-comments.md +159 -0
- package/content/plugins/audit/agents/quality-analyzer-duplication.md +184 -0
- package/content/plugins/audit/agents/quality-analyzer-naming.md +160 -0
- package/content/plugins/audit/agents/quality-consensus.md +241 -0
- package/content/plugins/audit/agents/schema-validator.md +473 -0
- package/content/plugins/audit/agents/security-analyzer-api.md +210 -0
- package/content/plugins/audit/agents/security-analyzer-auth.md +169 -0
- package/content/plugins/audit/agents/security-analyzer-authz.md +180 -0
- package/content/plugins/audit/agents/security-analyzer-deps.md +153 -0
- package/content/plugins/audit/agents/security-analyzer-infra.md +184 -0
- package/content/plugins/audit/agents/security-analyzer-injection.md +155 -0
- package/content/plugins/audit/agents/security-analyzer-input.md +201 -0
- package/content/plugins/audit/agents/security-analyzer-secrets.md +183 -0
- package/content/plugins/audit/agents/security-consensus.md +283 -0
- package/content/plugins/audit/agents/test-analyzer-assertions.md +188 -0
- package/content/plugins/audit/agents/test-analyzer-coverage.md +189 -0
- package/content/plugins/audit/agents/test-analyzer-fragility.md +193 -0
- package/content/plugins/audit/agents/test-analyzer-integration.md +161 -0
- package/content/plugins/audit/agents/test-analyzer-maintenance.md +180 -0
- package/content/plugins/audit/agents/test-analyzer-mocking.md +188 -0
- package/content/plugins/audit/agents/test-analyzer-patterns.md +196 -0
- package/content/plugins/audit/agents/test-analyzer-structure.md +184 -0
- package/content/plugins/audit/agents/test-consensus.md +301 -0
- package/content/plugins/audit/agents/testing.md +561 -0
- package/content/plugins/audit/agents/ui-validator.md +344 -0
- package/content/plugins/audit/plugin.yaml +186 -5
- package/content/plugins/audit/skills/agileflow-audit/SKILL.md +113 -0
- package/content/plugins/audit/skills/agileflow-audit/references/audit-depth-guide.md +151 -0
- package/content/plugins/audit/skills/agileflow-audit/references/dependency-risk-guide.md +139 -0
- package/content/plugins/audit/skills/agileflow-audit/references/owasp-top10.md +120 -0
- package/content/plugins/audit/skills/agileflow-audit/references/performance-budget-guide.md +143 -0
- package/content/plugins/audit/skills/agileflow-audit/references/wcag-criteria.md +117 -0
- package/content/plugins/audit/skills/agileflow-audit/workflows/run-audit.md +52 -0
- package/content/plugins/audit/skills/agileflow-audit/workflows/tdd.md +66 -0
- package/content/plugins/core/agents/adr-writer.md +521 -0
- package/content/plugins/core/agents/epic-planner.md +520 -0
- package/content/plugins/core/agents/mentor.md +709 -0
- package/content/plugins/core/agents/orchestrator.md +776 -0
- package/content/plugins/core/agents/team-coordinator.md +334 -0
- package/content/plugins/core/agents/team-lead.md +181 -0
- package/content/plugins/core/agents/workspace-orchestrator.md +146 -0
- package/content/plugins/core/hooks/context-loader.js +31 -4
- package/content/plugins/core/hooks/damage-control-bash.js +10 -2
- package/content/plugins/core/hooks/damage-control-edit.js +4 -1
- package/content/plugins/core/hooks/damage-control-patterns.yaml +1 -1
- package/content/plugins/core/hooks/damage-control-write.js +4 -1
- package/content/plugins/core/hooks/{pre-compact-state.js → post-compact-state.js} +25 -8
- package/content/plugins/core/hooks/preferences-injector.js +352 -0
- package/content/plugins/core/plugin.yaml +24 -28
- package/content/plugins/core/skills/agileflow-adr/SKILL.md +34 -8
- package/content/plugins/core/skills/agileflow-adr/references/madr-format-guide.md +86 -0
- package/content/plugins/core/skills/agileflow-adr/workflows/write-adr.md +57 -0
- package/content/plugins/core/skills/agileflow-babysit-mentor/SKILL.md +94 -27
- package/content/plugins/core/skills/agileflow-babysit-mentor/references/mentor-decision-guide.md +81 -0
- package/content/plugins/core/skills/agileflow-babysit-mentor/workflows/mentor-session.md +79 -0
- package/content/plugins/core/skills/agileflow-epic-planner/SKILL.md +37 -7
- package/content/plugins/core/skills/agileflow-epic-planner/references/epic-sizing-guide.md +81 -0
- package/content/plugins/core/skills/agileflow-epic-planner/workflows/plan-epic.md +55 -0
- package/content/plugins/core/skills/agileflow-status-updater/SKILL.md +36 -20
- package/content/plugins/core/skills/agileflow-status-updater/references/status-transitions.md +89 -0
- package/content/plugins/core/skills/agileflow-status-updater/workflows/update-status.md +56 -0
- package/content/plugins/core/skills/agileflow-story-writer/SKILL.md +39 -114
- package/content/plugins/core/skills/agileflow-story-writer/references/estimation-reference.md +36 -0
- package/content/plugins/core/skills/agileflow-story-writer/references/story-template.md +92 -0
- package/content/plugins/core/skills/agileflow-story-writer/workflows/write-story.md +138 -0
- package/content/plugins/council/agents/council-advocate.md +223 -0
- package/content/plugins/council/agents/council-analyst.md +278 -0
- package/content/plugins/council/agents/council-compounder.md +204 -0
- package/content/plugins/council/agents/council-contrarian.md +217 -0
- package/content/plugins/council/agents/council-moonshot.md +217 -0
- package/content/plugins/council/agents/council-optimist.md +185 -0
- package/content/plugins/council/agents/council-revenue.md +200 -0
- package/content/plugins/council/agents/council-technical.md +218 -0
- package/content/plugins/council/agents/multi-expert.md +334 -0
- package/content/plugins/council/plugin.yaml +23 -4
- package/content/plugins/council/skills/agileflow-council/SKILL.md +102 -0
- package/content/plugins/council/skills/agileflow-council/references/decision-log-template.md +109 -0
- package/content/plugins/council/skills/agileflow-council/references/perspective-guide.md +104 -0
- package/content/plugins/council/skills/agileflow-council/references/when-to-convene-guide.md +112 -0
- package/content/plugins/council/skills/agileflow-council/workflows/convene.md +73 -0
- package/content/plugins/council/skills/agileflow-council/workflows/multi-expert.md +75 -0
- package/content/plugins/database/plugin.yaml +14 -0
- package/content/plugins/database/skills/agileflow-database/SKILL.md +284 -0
- package/content/plugins/database/skills/agileflow-database/references/indexing-guide.md +313 -0
- package/content/plugins/database/skills/agileflow-database/references/migration-guide.md +328 -0
- package/content/plugins/database/skills/agileflow-database/references/schema-design-guide.md +467 -0
- package/content/plugins/database/skills/agileflow-database/workflows/design-schema.md +213 -0
- package/content/plugins/database/skills/agileflow-database/workflows/optimize-query.md +253 -0
- package/content/plugins/debugging/plugin.yaml +14 -0
- package/content/plugins/debugging/skills/agileflow-debug/SKILL.md +236 -0
- package/content/plugins/debugging/skills/agileflow-debug/references/common-patterns.md +350 -0
- package/content/plugins/debugging/skills/agileflow-debug/references/debugging-strategies.md +328 -0
- package/content/plugins/debugging/skills/agileflow-debug/workflows/debug-issue.md +187 -0
- package/content/plugins/debugging/skills/agileflow-debug/workflows/reproduce-bug.md +194 -0
- package/content/plugins/delivery/agents/ci.md +547 -0
- package/content/plugins/delivery/agents/devops.md +789 -0
- package/content/plugins/delivery/plugin.yaml +19 -0
- package/content/plugins/delivery/skills/agileflow-delivery/SKILL.md +111 -0
- package/content/plugins/delivery/skills/agileflow-delivery/references/changelog-format-guide.md +133 -0
- package/content/plugins/delivery/skills/agileflow-delivery/references/ci-pipeline-guide.md +158 -0
- package/content/plugins/delivery/skills/agileflow-delivery/references/pr-checklist-guide.md +133 -0
- package/content/plugins/delivery/skills/agileflow-delivery/references/release-checklist.md +142 -0
- package/content/plugins/delivery/skills/agileflow-delivery/workflows/changelog.md +72 -0
- package/content/plugins/delivery/skills/agileflow-delivery/workflows/deploy.md +74 -0
- package/content/plugins/delivery/skills/agileflow-delivery/workflows/pr.md +75 -0
- package/content/plugins/docs/agents/documentation.md +544 -0
- package/content/plugins/docs/agents/readme-updater.md +640 -0
- package/content/plugins/docs/plugin.yaml +19 -0
- package/content/plugins/docs/skills/agileflow-docs/SKILL.md +106 -0
- package/content/plugins/docs/skills/agileflow-docs/references/api-doc-template.md +167 -0
- package/content/plugins/docs/skills/agileflow-docs/references/doc-types-guide.md +141 -0
- package/content/plugins/docs/skills/agileflow-docs/references/readme-template.md +156 -0
- package/content/plugins/docs/skills/agileflow-docs/workflows/readme-sync.md +57 -0
- package/content/plugins/docs/skills/agileflow-docs/workflows/sync.md +64 -0
- package/content/plugins/engineering/agents/api.md +718 -0
- package/content/plugins/engineering/agents/codebase-query.md +285 -0
- package/content/plugins/engineering/agents/compliance.md +559 -0
- package/content/plugins/engineering/agents/database.md +644 -0
- package/content/plugins/engineering/agents/integrations.md +644 -0
- package/content/plugins/engineering/agents/mobile.md +552 -0
- package/content/plugins/engineering/agents/monitoring.md +585 -0
- package/content/plugins/engineering/agents/performance.md +529 -0
- package/content/plugins/engineering/agents/refactor.md +592 -0
- package/content/plugins/engineering/agents/security.md +524 -0
- package/content/plugins/engineering/agents/ui.md +1336 -0
- package/content/plugins/engineering/plugin.yaml +37 -0
- package/content/plugins/engineering/skills/agileflow-engineering/SKILL.md +127 -0
- package/content/plugins/engineering/skills/agileflow-engineering/references/code-review-guide.md +126 -0
- package/content/plugins/engineering/skills/agileflow-engineering/references/domain-routing-guide.md +89 -0
- package/content/plugins/engineering/skills/agileflow-engineering/references/refactoring-guide.md +136 -0
- package/content/plugins/engineering/skills/agileflow-engineering/workflows/diagnose.md +63 -0
- package/content/plugins/engineering/skills/agileflow-engineering/workflows/impact.md +60 -0
- package/content/plugins/ideation/agents/brainstorm-analyzer-features.md +179 -0
- package/content/plugins/ideation/agents/brainstorm-analyzer-growth.md +169 -0
- package/content/plugins/ideation/agents/brainstorm-analyzer-integration.md +181 -0
- package/content/plugins/ideation/agents/brainstorm-analyzer-market.md +150 -0
- package/content/plugins/ideation/agents/brainstorm-analyzer-ux.md +180 -0
- package/content/plugins/ideation/agents/brainstorm-consensus.md +245 -0
- package/content/plugins/ideation/agents/design.md +568 -0
- package/content/plugins/ideation/agents/product.md +582 -0
- package/content/plugins/ideation/plugin.yaml +31 -0
- package/content/plugins/ideation/skills/agileflow-ideation/SKILL.md +109 -0
- package/content/plugins/ideation/skills/agileflow-ideation/references/brainstorm-techniques.md +138 -0
- package/content/plugins/ideation/skills/agileflow-ideation/references/competitive-analysis-template.md +148 -0
- package/content/plugins/ideation/skills/agileflow-ideation/references/feature-prioritization-guide.md +147 -0
- package/content/plugins/ideation/skills/agileflow-ideation/references/user-story-patterns.md +152 -0
- package/content/plugins/ideation/skills/agileflow-ideation/workflows/features.md +65 -0
- package/content/plugins/ideation/skills/agileflow-ideation/workflows/ideate.md +54 -0
- package/content/plugins/migration/agents/datamigration.md +757 -0
- package/content/plugins/migration/plugin.yaml +17 -0
- package/content/plugins/migration/skills/agileflow-migration/SKILL.md +106 -0
- package/content/plugins/migration/skills/agileflow-migration/references/data-validation-checklist.md +154 -0
- package/content/plugins/migration/skills/agileflow-migration/references/migration-patterns.md +209 -0
- package/content/plugins/migration/skills/agileflow-migration/references/rollback-playbook.md +171 -0
- package/content/plugins/migration/skills/agileflow-migration/references/version-compatibility-matrix.md +155 -0
- package/content/plugins/migration/skills/agileflow-migration/workflows/plan.md +73 -0
- package/content/plugins/migration/skills/agileflow-migration/workflows/validate.md +71 -0
- package/content/plugins/performance/plugin.yaml +14 -0
- package/content/plugins/performance/skills/agileflow-performance/SKILL.md +224 -0
- package/content/plugins/performance/skills/agileflow-performance/references/optimization-patterns.md +554 -0
- package/content/plugins/performance/skills/agileflow-performance/references/profiling-guide.md +383 -0
- package/content/plugins/performance/skills/agileflow-performance/references/web-vitals-guide.md +360 -0
- package/content/plugins/performance/skills/agileflow-performance/workflows/improve-web-vitals.md +344 -0
- package/content/plugins/performance/skills/agileflow-performance/workflows/profile-and-fix.md +254 -0
- package/content/plugins/planning/agents/analytics.md +670 -0
- package/content/plugins/planning/agents/rlm-subcore.md +215 -0
- package/content/plugins/planning/plugin.yaml +19 -0
- package/content/plugins/planning/skills/agileflow-planning/SKILL.md +111 -0
- package/content/plugins/planning/skills/agileflow-planning/references/estimation-guide.md +114 -0
- package/content/plugins/planning/skills/agileflow-planning/references/rpi-workflow.md +119 -0
- package/content/plugins/planning/skills/agileflow-planning/references/sprint-planning-guide.md +145 -0
- package/content/plugins/planning/skills/agileflow-planning/workflows/impact.md +63 -0
- package/content/plugins/planning/skills/agileflow-planning/workflows/rpi.md +104 -0
- package/content/plugins/psychology/plugin.yaml +14 -0
- package/content/plugins/psychology/skills/agileflow-retention/SKILL.md +252 -0
- package/content/plugins/psychology/skills/agileflow-retention/references/competitor-analysis.md +240 -0
- package/content/plugins/psychology/skills/agileflow-retention/references/psychology-models.md +349 -0
- package/content/plugins/psychology/skills/agileflow-retention/references/retention-patterns.md +279 -0
- package/content/plugins/psychology/skills/agileflow-retention/workflows/design-retention-feature.md +287 -0
- package/content/plugins/psychology/skills/agileflow-retention/workflows/retention-audit.md +259 -0
- package/content/plugins/refactoring/plugin.yaml +14 -0
- package/content/plugins/refactoring/skills/agileflow-refactor/SKILL.md +235 -0
- package/content/plugins/refactoring/skills/agileflow-refactor/references/refactoring-patterns.md +405 -0
- package/content/plugins/refactoring/skills/agileflow-refactor/references/safety-checks.md +177 -0
- package/content/plugins/refactoring/skills/agileflow-refactor/workflows/extract-module.md +226 -0
- package/content/plugins/refactoring/skills/agileflow-refactor/workflows/safe-refactor.md +169 -0
- package/content/plugins/research/agents/research.md +503 -0
- package/content/plugins/research/plugin.yaml +17 -0
- package/content/plugins/research/skills/agileflow-research/SKILL.md +110 -0
- package/content/plugins/research/skills/agileflow-research/references/knowledge-decay-guide.md +121 -0
- package/content/plugins/research/skills/agileflow-research/references/research-prompt-guide.md +141 -0
- package/content/plugins/research/skills/agileflow-research/references/synthesis-template.md +154 -0
- package/content/plugins/research/skills/agileflow-research/workflows/analyze.md +60 -0
- package/content/plugins/research/skills/agileflow-research/workflows/ask.md +64 -0
- package/content/plugins/research/skills/agileflow-research/workflows/import.md +66 -0
- package/content/plugins/research/skills/agileflow-research/workflows/synthesize.md +66 -0
- package/content/plugins/reviews/plugin.yaml +14 -0
- package/content/plugins/reviews/skills/agileflow-pr-reviewer/SKILL.md +241 -0
- package/content/plugins/reviews/skills/agileflow-pr-reviewer/references/review-checklist.md +200 -0
- package/content/plugins/reviews/skills/agileflow-pr-reviewer/references/security-patterns.md +328 -0
- package/content/plugins/reviews/skills/agileflow-pr-reviewer/workflows/review-pr.md +153 -0
- package/content/plugins/reviews/skills/agileflow-pr-reviewer/workflows/security-review.md +177 -0
- package/content/plugins/seo/agents/seo-analyzer-content.md +169 -0
- package/content/plugins/seo/agents/seo-analyzer-images.md +198 -0
- package/content/plugins/seo/agents/seo-analyzer-performance.md +217 -0
- package/content/plugins/seo/agents/seo-analyzer-schema.md +184 -0
- package/content/plugins/seo/agents/seo-analyzer-sitemap.md +177 -0
- package/content/plugins/seo/agents/seo-analyzer-technical.md +151 -0
- package/content/plugins/seo/agents/seo-consensus.md +304 -0
- package/content/plugins/seo/plugin.yaml +19 -4
- package/content/plugins/seo/skills/agileflow-seo/SKILL.md +188 -0
- package/content/plugins/seo/skills/agileflow-seo/references/cwv-thresholds.md +110 -0
- package/content/plugins/seo/skills/agileflow-seo/references/eeat-framework.md +144 -0
- package/content/plugins/seo/skills/agileflow-seo/references/keyword-research-guide.md +125 -0
- package/content/plugins/seo/skills/agileflow-seo/references/schema-types.md +139 -0
- package/content/plugins/seo/skills/agileflow-seo/references/technical-seo-checklist.md +139 -0
- package/content/plugins/seo/skills/agileflow-seo/workflows/audit.md +98 -0
- package/content/plugins/seo/skills/agileflow-seo/workflows/page.md +118 -0
- package/content/plugins/testing/plugin.yaml +16 -0
- package/content/plugins/testing/skills/agileflow-test-writer/SKILL.md +260 -0
- package/content/plugins/testing/skills/agileflow-test-writer/references/coverage-targets.md +239 -0
- package/content/plugins/testing/skills/agileflow-test-writer/references/test-patterns.md +420 -0
- package/content/plugins/testing/skills/agileflow-test-writer/workflows/add-coverage.md +154 -0
- package/content/plugins/testing/skills/agileflow-test-writer/workflows/write-tests-from-ac.md +225 -0
- package/package.json +2 -2
- package/src/cli/commands/doctor.js +818 -30
- package/src/cli/commands/hook.js +17 -14
- package/src/cli/commands/launch.js +1454 -0
- package/src/cli/commands/learn.js +149 -0
- package/src/cli/commands/plugins.js +113 -0
- package/src/cli/commands/setup.js +455 -110
- package/src/cli/commands/skills.js +324 -0
- package/src/cli/commands/status.js +8 -10
- package/src/cli/commands/update.js +76 -15
- package/src/cli/index.js +90 -26
- package/src/cli/wizard/babysit-mode-picker.js +192 -0
- package/src/cli/wizard/behaviors-picker.js +208 -54
- package/src/cli/wizard/ide-picker.js +40 -28
- package/src/cli/wizard/install-scope-picker.js +57 -0
- package/src/cli/wizard/launch-alias-picker.js +50 -0
- package/src/cli/wizard/launch-cli-picker.js +129 -0
- package/src/cli/wizard/launch-tmux-picker.js +133 -0
- package/src/cli/wizard/learnings-picker.js +40 -0
- package/src/cli/wizard/plugin-picker.js +47 -16
- package/src/lib/brand.js +116 -0
- package/src/lib/errors.js +120 -0
- package/src/lib/path-check.js +39 -0
- package/src/runtime/config/defaults.js +22 -17
- package/src/runtime/config/loader.js +77 -8
- package/src/runtime/config/schema.json +43 -16
- package/src/runtime/config/writer.js +3 -1
- package/src/runtime/ide/babysit-skill.js +202 -0
- package/src/runtime/ide/capabilities.js +84 -29
- package/src/runtime/ide/claude-code-content.js +177 -0
- package/src/runtime/ide/claude-code-settings.js +67 -29
- package/src/runtime/ide/claude-code-skills.js +47 -32
- package/src/runtime/ide/codex-config.js +295 -0
- package/src/runtime/installer/install.js +252 -24
- package/src/runtime/launch/alias-installer.js +191 -0
- package/src/runtime/launch/cli-resume.js +244 -0
- package/src/runtime/launch/closed-windows.js +338 -0
- package/src/runtime/launch/defaults.js +66 -0
- package/src/runtime/launch/detect-clis.js +69 -0
- package/src/runtime/launch/doctor.js +464 -0
- package/src/runtime/launch/exec-wrapper.js +114 -0
- package/src/runtime/launch/parallel-session.js +247 -0
- package/src/runtime/launch/prefs.js +211 -0
- package/src/runtime/launch/project-prefs.js +234 -0
- package/src/runtime/launch/resolve-cli.js +56 -0
- package/src/runtime/launch/restore.js +152 -0
- package/src/runtime/launch/schema.json +75 -0
- package/src/runtime/launch/session-lifecycle.js +313 -0
- package/src/runtime/launch/session-registry.js +401 -0
- package/src/runtime/launch/spawn.js +103 -0
- package/src/runtime/launch/tabs.js +350 -0
- package/src/runtime/launch/tmux.js +764 -0
- package/src/runtime/launch/worktree.js +260 -0
- package/src/runtime/plugins/registry.js +16 -11
- package/src/runtime/plugins/validator.js +57 -43
- package/src/runtime/skills/learnings.js +308 -0
- package/content/plugins/core/hooks/babysit-mentor-injector.js +0 -55
- package/src/cli/wizard/personalization.js +0 -64
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
id: delivery
|
|
2
|
+
name: Delivery
|
|
3
|
+
description: Delivery workflow skill pack.
|
|
4
|
+
version: 1.0.0
|
|
5
|
+
enabledByDefault: false
|
|
6
|
+
|
|
7
|
+
depends: []
|
|
8
|
+
|
|
9
|
+
provides:
|
|
10
|
+
skills:
|
|
11
|
+
- id: agileflow-delivery
|
|
12
|
+
dir: skills/agileflow-delivery
|
|
13
|
+
agents:
|
|
14
|
+
- id: ci
|
|
15
|
+
path: agents/ci.md
|
|
16
|
+
- id: devops
|
|
17
|
+
path: agents/devops.md
|
|
18
|
+
hooks: []
|
|
19
|
+
templates: []
|
|
@@ -0,0 +1,111 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: agileflow-delivery
|
|
3
|
+
version: 1.0.0
|
|
4
|
+
category: agileflow/delivery
|
|
5
|
+
description: |
|
|
6
|
+
Use when the user is preparing to ship: creating a PR, running CI,
|
|
7
|
+
managing dependencies, generating a changelog, planning a sprint,
|
|
8
|
+
or setting up deployment. Covers the full delivery pipeline from
|
|
9
|
+
PR description to production.
|
|
10
|
+
triggers:
|
|
11
|
+
keywords:
|
|
12
|
+
- create pr
|
|
13
|
+
- pull request
|
|
14
|
+
- ship it
|
|
15
|
+
- deploy
|
|
16
|
+
- ci pipeline
|
|
17
|
+
- changelog
|
|
18
|
+
- release
|
|
19
|
+
- dependencies
|
|
20
|
+
- sprint planning
|
|
21
|
+
- ready to merge
|
|
22
|
+
- npm audit
|
|
23
|
+
- dependency update
|
|
24
|
+
priority: 55
|
|
25
|
+
provides:
|
|
26
|
+
agents: []
|
|
27
|
+
learns:
|
|
28
|
+
enabled: true
|
|
29
|
+
file: _learnings/delivery.yaml
|
|
30
|
+
maxEntries: 30
|
|
31
|
+
depends:
|
|
32
|
+
skills: []
|
|
33
|
+
plugins: [delivery]
|
|
34
|
+
---
|
|
35
|
+
|
|
36
|
+
# AgileFlow Delivery
|
|
37
|
+
|
|
38
|
+
End-of-story delivery toolkit: write the PR, run CI, check dependencies,
|
|
39
|
+
generate changelog entries, plan sprints, and coordinate deployment.
|
|
40
|
+
|
|
41
|
+
## When this skill activates
|
|
42
|
+
|
|
43
|
+
- User says "create a PR", "ship it", or "ready to merge"
|
|
44
|
+
- User asks about CI failures or deployment setup
|
|
45
|
+
- User wants a changelog entry or release notes
|
|
46
|
+
- User needs dependency auditing or updates
|
|
47
|
+
- User is planning a sprint or tracking velocity
|
|
48
|
+
|
|
49
|
+
## Capabilities
|
|
50
|
+
|
|
51
|
+
| Command | What it does |
|
|
52
|
+
| ---------------------- | ---------------------------------------------------- |
|
|
53
|
+
| `/agileflow:pr` | Write PR title, summary, and test plan from git diff |
|
|
54
|
+
| `/agileflow:ci` | Set up or fix CI workflows |
|
|
55
|
+
| `/agileflow:deploy` | Deployment guide and checklist |
|
|
56
|
+
| `/agileflow:changelog` | Generate changelog entry from commits |
|
|
57
|
+
| `/agileflow:deps` | Dependency audit and update recommendations |
|
|
58
|
+
| `/agileflow:packages` | Package management and version pinning |
|
|
59
|
+
| `/agileflow:sprint` | Sprint planning and story point estimation |
|
|
60
|
+
| `/agileflow:devops` | DevOps automation and infrastructure |
|
|
61
|
+
|
|
62
|
+
## PR workflow
|
|
63
|
+
|
|
64
|
+
1. Confirm tests pass and AC verified before opening PR
|
|
65
|
+
2. Run `/agileflow:pr` — it reads git diff and generates title + body
|
|
66
|
+
3. Check: does the PR description explain the WHY, not just the WHAT?
|
|
67
|
+
4. Include test plan checklist in the PR body
|
|
68
|
+
|
|
69
|
+
## Delivery checklist
|
|
70
|
+
|
|
71
|
+
```
|
|
72
|
+
⬜ Tests passing
|
|
73
|
+
⬜ AC verified
|
|
74
|
+
⬜ Logic audit clean (or findings accepted)
|
|
75
|
+
⬜ PR description written
|
|
76
|
+
⬜ CI green
|
|
77
|
+
⬜ Dependencies up to date
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
## Integration
|
|
81
|
+
|
|
82
|
+
- **agileflow-pr-reviewer** — invoke before creating the PR; delivery orchestrates the end-to-end release, pr-reviewer handles the code quality gate within it
|
|
83
|
+
- **agileflow-audit** — run a quick audit sweep before shipping; P0/P1 findings should block the release
|
|
84
|
+
- **agileflow-test-writer** — ensure test coverage meets the threshold before delivery starts; delegate missing tests here
|
|
85
|
+
- **agileflow-accessibility** — run accessibility checks before any user-facing release; required for UI stories
|
|
86
|
+
- **agileflow-docs** — sync documentation as part of the delivery flow; API changes require docs update before or alongside release
|
|
87
|
+
- **agileflow-status-updater** — flip story and epic statuses to done as delivery completes each unit of work
|
|
88
|
+
- **agileflow-seo** — check SEO impact before releasing public-facing page changes, especially new routes or content restructuring
|
|
89
|
+
- **agileflow-ads** — coordinate ad campaign launch with product delivery when releasing a feature tied to a campaign
|
|
90
|
+
- **agileflow-planning** — use for sprint finalisation and velocity capture after a delivery cycle completes
|
|
91
|
+
|
|
92
|
+
## References
|
|
93
|
+
|
|
94
|
+
Load these files when you need deeper context for the relevant task:
|
|
95
|
+
|
|
96
|
+
| File | When to load |
|
|
97
|
+
| -------------------------------------- | ----------------------------------------------------------------------------------------- |
|
|
98
|
+
| `references/pr-checklist-guide.md` | Creating or reviewing a PR — size guidelines, merge strategies, pre-merge checklist |
|
|
99
|
+
| `references/changelog-format-guide.md` | Writing a changelog entry or release notes — Keep a Changelog format, good vs bad entries |
|
|
100
|
+
| `references/ci-pipeline-guide.md` | Setting up or debugging a CI pipeline — stages, caching, parallelization strategies |
|
|
101
|
+
| `references/release-checklist.md` | Preparing a release — pre/post release gates, rollback triggers, communication templates |
|
|
102
|
+
|
|
103
|
+
## Workflows
|
|
104
|
+
|
|
105
|
+
Follow these step-by-step when the user initiates the matching action:
|
|
106
|
+
|
|
107
|
+
| File | When to follow |
|
|
108
|
+
| ------------------------ | --------------------------------------------------------------------------------------- |
|
|
109
|
+
| `workflows/pr.md` | User wants to create a pull request — gathers diff, writes title and body, checks gates |
|
|
110
|
+
| `workflows/changelog.md` | User wants to generate a changelog entry from recent commits |
|
|
111
|
+
| `workflows/deploy.md` | User is deploying — environment checks, deploy steps, post-deploy verification |
|
package/content/plugins/delivery/skills/agileflow-delivery/references/changelog-format-guide.md
ADDED
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# Changelog Format Guide
|
|
2
|
+
|
|
3
|
+
**Load this when:** generating a CHANGELOG entry, writing release notes,
|
|
4
|
+
or deciding what level of detail to include for a given change type.
|
|
5
|
+
|
|
6
|
+
## Keep a Changelog format
|
|
7
|
+
|
|
8
|
+
Standard format (keepachangelog.com):
|
|
9
|
+
|
|
10
|
+
```markdown
|
|
11
|
+
## [2.4.0] - 2026-03-15
|
|
12
|
+
|
|
13
|
+
### Added
|
|
14
|
+
|
|
15
|
+
- Webhook delivery for Slack and Discord notifications
|
|
16
|
+
- Retry queue with exponential backoff (up to 5 attempts)
|
|
17
|
+
- Delivery status dashboard showing per-channel success rates
|
|
18
|
+
|
|
19
|
+
### Changed
|
|
20
|
+
|
|
21
|
+
- Queue processing moved to background worker (was inline)
|
|
22
|
+
- Default retry delay increased from 30s to 60s
|
|
23
|
+
|
|
24
|
+
### Fixed
|
|
25
|
+
|
|
26
|
+
- Duplicate delivery when network timeout occurred during ACK
|
|
27
|
+
- Missing `Content-Type` header on webhook payloads
|
|
28
|
+
|
|
29
|
+
### Deprecated
|
|
30
|
+
|
|
31
|
+
- `deliverSync()` — use `deliver()` with `await` instead
|
|
32
|
+
|
|
33
|
+
### Removed
|
|
34
|
+
|
|
35
|
+
- Legacy `v1/webhook` endpoint (deprecated in 2.0.0)
|
|
36
|
+
|
|
37
|
+
### Security
|
|
38
|
+
|
|
39
|
+
- Webhook signatures now use HMAC-SHA256 (was MD5)
|
|
40
|
+
```
|
|
41
|
+
|
|
42
|
+
## Change type guide
|
|
43
|
+
|
|
44
|
+
| Type | What belongs here | Examples |
|
|
45
|
+
| -------------- | ----------------------------- | ----------------------------------------------------- |
|
|
46
|
+
| **Added** | New features users can use | New endpoint, new config option, new UI page |
|
|
47
|
+
| **Changed** | Behavior that changed | Different default, renamed field, new required param |
|
|
48
|
+
| **Fixed** | Bug fixes | Crash fix, wrong output corrected, data integrity fix |
|
|
49
|
+
| **Deprecated** | Will be removed in next major | Old API method, config key, endpoint |
|
|
50
|
+
| **Removed** | Gone in this version | Deprecated things now deleted |
|
|
51
|
+
| **Security** | Vulnerability fixes | CVE patches, auth fixes, crypto upgrades |
|
|
52
|
+
|
|
53
|
+
**Not in changelog:** Internal refactors, test additions, CI changes, dependency bumps (unless security).
|
|
54
|
+
|
|
55
|
+
## Writing good changelog entries
|
|
56
|
+
|
|
57
|
+
**Bad:**
|
|
58
|
+
|
|
59
|
+
- "Fixed bug"
|
|
60
|
+
- "Updated dependencies"
|
|
61
|
+
- "Improved performance"
|
|
62
|
+
- "Various fixes"
|
|
63
|
+
|
|
64
|
+
**Good:**
|
|
65
|
+
|
|
66
|
+
- "Fixed duplicate webhook delivery when network timeout occurred during ACK"
|
|
67
|
+
- "Bumped express to 4.21.0 (resolves CVE-2024-29041)"
|
|
68
|
+
- "Reduced image resize time by 40% by switching to sharp (was jimp)"
|
|
69
|
+
- "Fixed login redirect loop when `returnUrl` contained encoded slashes"
|
|
70
|
+
|
|
71
|
+
**Rule:** Every entry should answer "what changed and why does it matter to me?"
|
|
72
|
+
|
|
73
|
+
## Semantic versioning alignment
|
|
74
|
+
|
|
75
|
+
| Version bump | When | What to include |
|
|
76
|
+
| ----------------- | ---------------- | --------------------------------------- |
|
|
77
|
+
| **Major** (X.0.0) | Breaking changes | All breaking changes clearly called out |
|
|
78
|
+
| **Minor** (x.Y.0) | New features | Added section, plus any fixes |
|
|
79
|
+
| **Patch** (x.y.Z) | Bug fixes only | Fixed section, security if applicable |
|
|
80
|
+
|
|
81
|
+
## Release notes vs changelog
|
|
82
|
+
|
|
83
|
+
| Format | Audience | Tone | Length |
|
|
84
|
+
| -------------- | ---------- | ------------------------- | --------------- |
|
|
85
|
+
| Changelog | Developers | Technical, precise | Comprehensive |
|
|
86
|
+
| Release notes | All users | Friendly, benefit-focused | Highlights only |
|
|
87
|
+
| GitHub release | Mixed | Semi-technical | Medium |
|
|
88
|
+
|
|
89
|
+
### Converting changelog to release notes
|
|
90
|
+
|
|
91
|
+
Take the changelog entry and:
|
|
92
|
+
|
|
93
|
+
1. Lead with the most impactful changes
|
|
94
|
+
2. Translate technical details to user benefits
|
|
95
|
+
3. Add upgrade instructions if breaking changes exist
|
|
96
|
+
4. Link to migration guide if needed
|
|
97
|
+
|
|
98
|
+
```markdown
|
|
99
|
+
# 2.4.0 — Slack & Discord Notifications
|
|
100
|
+
|
|
101
|
+
You can now deliver to Slack and Discord directly from your workflow.
|
|
102
|
+
Set up a webhook URL in Settings → Integrations and start receiving
|
|
103
|
+
notifications in your channels.
|
|
104
|
+
|
|
105
|
+
**Other improvements:**
|
|
106
|
+
|
|
107
|
+
- Delivery reliability improved — retries now use exponential backoff
|
|
108
|
+
- Fixed a rare case where messages could be delivered twice
|
|
109
|
+
|
|
110
|
+
**Breaking change:** If you use `deliverSync()`, switch to `await deliver()` before upgrading.
|
|
111
|
+
See the [migration guide](link) for details.
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
## Automating changelog from commits
|
|
115
|
+
|
|
116
|
+
Conventional commits map to changelog sections:
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
feat: → Added
|
|
120
|
+
fix: → Fixed
|
|
121
|
+
BREAKING: → Changed (with ⚠️ breaking note)
|
|
122
|
+
perf: → Changed
|
|
123
|
+
refactor: → (skip — internal)
|
|
124
|
+
test: → (skip — internal)
|
|
125
|
+
chore: → (skip — unless security)
|
|
126
|
+
docs: → (skip — unless user-facing docs changed)
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### Using git log to draft entries
|
|
130
|
+
|
|
131
|
+
```bash
|
|
132
|
+
git log v2.3.0..HEAD --oneline --no-merges | grep -E "^[a-f0-9]+ (feat|fix|perf):"
|
|
133
|
+
```
|
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
# CI Pipeline Guide
|
|
2
|
+
|
|
3
|
+
**Load this when:** Designing, reviewing, or optimizing a CI/CD pipeline — stages, caching, parallelization, or failure handling.
|
|
4
|
+
|
|
5
|
+
## Standard Pipeline Stages
|
|
6
|
+
|
|
7
|
+
```
|
|
8
|
+
trigger → install → lint/typecheck → test → build → security → deploy-staging → smoke-test → deploy-prod
|
|
9
|
+
```
|
|
10
|
+
|
|
11
|
+
| Stage | Purpose | Fail behavior | Typical duration |
|
|
12
|
+
| ----------------- | ----------------------- | ----------------- | ---------------- |
|
|
13
|
+
| Install | Restore deps | Block all | 30–90s (cached) |
|
|
14
|
+
| Lint + typecheck | Code quality gate | Block | 15–60s |
|
|
15
|
+
| Unit tests | Fast correctness check | Block | 30s–3min |
|
|
16
|
+
| Integration tests | Service boundary check | Block | 1–5min |
|
|
17
|
+
| Build | Produce artifact | Block | 30s–5min |
|
|
18
|
+
| Security scan | CVE + secrets detection | Block on critical | 30s–2min |
|
|
19
|
+
| Deploy staging | Validate in env | Block prod | 1–3min |
|
|
20
|
+
| Smoke test | Critical path check | Block prod | 30s–2min |
|
|
21
|
+
| Deploy prod | Release | — | 1–5min |
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## Parallelization Strategies
|
|
26
|
+
|
|
27
|
+
### Run in parallel (no dependencies between each other)
|
|
28
|
+
|
|
29
|
+
```yaml
|
|
30
|
+
# GitHub Actions example
|
|
31
|
+
jobs:
|
|
32
|
+
lint:
|
|
33
|
+
runs-on: ubuntu-latest
|
|
34
|
+
steps: [...]
|
|
35
|
+
typecheck:
|
|
36
|
+
runs-on: ubuntu-latest
|
|
37
|
+
steps: [...]
|
|
38
|
+
unit-tests:
|
|
39
|
+
runs-on: ubuntu-latest
|
|
40
|
+
steps: [...]
|
|
41
|
+
# All three run simultaneously
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
### Matrix strategy (test multiple versions)
|
|
45
|
+
|
|
46
|
+
```yaml
|
|
47
|
+
strategy:
|
|
48
|
+
matrix:
|
|
49
|
+
node: [20, 22]
|
|
50
|
+
os: [ubuntu-latest, windows-latest]
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
### Test splitting (large test suites)
|
|
54
|
+
|
|
55
|
+
- Split by file count across N runners
|
|
56
|
+
- Tools: `jest --shard=1/4`, Vitest `--reporter=verbose`, Playwright sharding
|
|
57
|
+
- Target: each shard under 3 minutes
|
|
58
|
+
|
|
59
|
+
---
|
|
60
|
+
|
|
61
|
+
## Caching Reference
|
|
62
|
+
|
|
63
|
+
### Node.js (npm)
|
|
64
|
+
|
|
65
|
+
```yaml
|
|
66
|
+
- uses: actions/cache@v4
|
|
67
|
+
with:
|
|
68
|
+
path: ~/.npm
|
|
69
|
+
key: ${{ runner.os }}-npm-${{ hashFiles('**/package-lock.json') }}
|
|
70
|
+
restore-keys: |
|
|
71
|
+
${{ runner.os }}-npm-
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
### Node.js (pnpm)
|
|
75
|
+
|
|
76
|
+
```yaml
|
|
77
|
+
- uses: actions/setup-node@v4
|
|
78
|
+
with:
|
|
79
|
+
cache: "pnpm"
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
### Build artifacts between stages
|
|
83
|
+
|
|
84
|
+
```yaml
|
|
85
|
+
- uses: actions/upload-artifact@v4
|
|
86
|
+
with:
|
|
87
|
+
name: build-output
|
|
88
|
+
path: dist/
|
|
89
|
+
retention-days: 1
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
### Cache invalidation triggers
|
|
93
|
+
|
|
94
|
+
| Change | Should bust cache |
|
|
95
|
+
| --------------------------- | ----------------------------------- |
|
|
96
|
+
| `package-lock.json` changed | Yes — deps cache |
|
|
97
|
+
| Source code changed | No — deps cache stays |
|
|
98
|
+
| `.env` / config changed | Yes — if config is baked into build |
|
|
99
|
+
| CI config changed | Consider bust |
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Pipeline Optimization Checklist
|
|
104
|
+
|
|
105
|
+
- [ ] Dependencies cached by lockfile hash
|
|
106
|
+
- [ ] Lint and unit tests run in parallel
|
|
107
|
+
- [ ] No sequential jobs that could be parallel
|
|
108
|
+
- [ ] Test suite split if >5 minutes total
|
|
109
|
+
- [ ] Build artifacts uploaded once, reused by deploy jobs
|
|
110
|
+
- [ ] Docker layers ordered: deps first, code second (maximize cache hits)
|
|
111
|
+
- [ ] Fail fast enabled (cancel in-progress on new push)
|
|
112
|
+
- [ ] Skip CI for docs-only changes (`[skip ci]` or path filters)
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
116
|
+
## Fail-Fast Configuration
|
|
117
|
+
|
|
118
|
+
```yaml
|
|
119
|
+
# GitHub Actions — cancel in-progress on new push
|
|
120
|
+
concurrency:
|
|
121
|
+
group: ${{ github.workflow }}-${{ github.ref }}
|
|
122
|
+
cancel-in-progress: true
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
```yaml
|
|
126
|
+
# Path filters — skip CI for docs
|
|
127
|
+
on:
|
|
128
|
+
push:
|
|
129
|
+
paths-ignore:
|
|
130
|
+
- "**.md"
|
|
131
|
+
- "docs/**"
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
---
|
|
135
|
+
|
|
136
|
+
## Secret Management Rules
|
|
137
|
+
|
|
138
|
+
| Practice | Required |
|
|
139
|
+
| ------------------------------------ | ----------- |
|
|
140
|
+
| Secrets in env vars, not hardcoded | Yes |
|
|
141
|
+
| Rotate secrets on suspected exposure | Yes |
|
|
142
|
+
| Separate secrets per environment | Yes |
|
|
143
|
+
| Least-privilege service accounts | Yes |
|
|
144
|
+
| Audit secrets access in CI logs | Recommended |
|
|
145
|
+
|
|
146
|
+
**Scanning:** `truffleHog`, `gitleaks`, GitHub secret scanning (auto-enabled on public repos)
|
|
147
|
+
|
|
148
|
+
---
|
|
149
|
+
|
|
150
|
+
## Pipeline Health Metrics
|
|
151
|
+
|
|
152
|
+
| Metric | Target | Alert threshold |
|
|
153
|
+
| ---------------------------- | ------- | --------------- |
|
|
154
|
+
| Mean pipeline duration | <10 min | >15 min |
|
|
155
|
+
| Success rate | >95% | <90% |
|
|
156
|
+
| Flaky test rate | <2% | >5% |
|
|
157
|
+
| Cache hit rate | >80% | <60% |
|
|
158
|
+
| Time to restore (on failure) | <30 min | >60 min |
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
# PR Checklist Guide
|
|
2
|
+
|
|
3
|
+
**Load this when:** preparing a pull request, reviewing a PR checklist,
|
|
4
|
+
or deciding what checks are required before merge.
|
|
5
|
+
|
|
6
|
+
## Core PR gates
|
|
7
|
+
|
|
8
|
+
Every PR should clear these before merge:
|
|
9
|
+
|
|
10
|
+
| Gate | Check | Command |
|
|
11
|
+
| -------- | ---------- | ------------------ |
|
|
12
|
+
| Tests | All pass | `npm test` |
|
|
13
|
+
| Types | No errors | `tsc --noEmit` |
|
|
14
|
+
| Lint | Clean | `npm run lint` |
|
|
15
|
+
| Build | Compiles | `npm run build` |
|
|
16
|
+
| Coverage | ≥ baseline | `npm run coverage` |
|
|
17
|
+
|
|
18
|
+
## PR description template
|
|
19
|
+
|
|
20
|
+
```markdown
|
|
21
|
+
## What
|
|
22
|
+
|
|
23
|
+
[1-3 bullet points describing the change]
|
|
24
|
+
|
|
25
|
+
## Why
|
|
26
|
+
|
|
27
|
+
[The motivation — ticket, bug, user request]
|
|
28
|
+
|
|
29
|
+
## How
|
|
30
|
+
|
|
31
|
+
[Brief explanation of the approach chosen, especially if non-obvious]
|
|
32
|
+
|
|
33
|
+
## Test plan
|
|
34
|
+
|
|
35
|
+
- [ ] Unit tests cover new logic
|
|
36
|
+
- [ ] Integration test for the happy path
|
|
37
|
+
- [ ] Edge case X tested (explain if non-obvious)
|
|
38
|
+
|
|
39
|
+
## Screenshots (UI changes only)
|
|
40
|
+
|
|
41
|
+
[Before/after or just after if new feature]
|
|
42
|
+
```
|
|
43
|
+
|
|
44
|
+
## Size guidelines
|
|
45
|
+
|
|
46
|
+
| PR size | Lines changed | Review time | Risk |
|
|
47
|
+
| ------- | ------------- | ----------- | --------- |
|
|
48
|
+
| Tiny | < 50 | 5 min | Low |
|
|
49
|
+
| Small | 50-200 | 15 min | Low |
|
|
50
|
+
| Medium | 200-500 | 30 min | Medium |
|
|
51
|
+
| Large | 500-1000 | 1 hour | High |
|
|
52
|
+
| XL | > 1000 | Split it | Very high |
|
|
53
|
+
|
|
54
|
+
**Rule:** If a PR exceeds 500 lines, look for a natural split. Reviewers lose focus above that threshold — bugs slip through.
|
|
55
|
+
|
|
56
|
+
### How to split a large PR
|
|
57
|
+
|
|
58
|
+
1. **Extract prerequisites** — dependency, config, or schema changes as a separate PR
|
|
59
|
+
2. **Split by layer** — DB migration PR → API PR → UI PR
|
|
60
|
+
3. **Feature flag** — ship dead code first, enable separately
|
|
61
|
+
4. **One PR per file cluster** — group related files, ship independently
|
|
62
|
+
|
|
63
|
+
## Commit message conventions
|
|
64
|
+
|
|
65
|
+
```
|
|
66
|
+
feat: add webhook delivery for Slack notifications
|
|
67
|
+
fix: prevent duplicate delivery on retry
|
|
68
|
+
refactor: extract delivery queue into separate module
|
|
69
|
+
test: add integration tests for webhook retry logic
|
|
70
|
+
docs: update delivery configuration reference
|
|
71
|
+
chore: bump @slack/web-api to 7.3.0
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
**Never in commit messages:**
|
|
75
|
+
|
|
76
|
+
- AI attribution footers
|
|
77
|
+
- "WIP" or "temp" (clean up before merging)
|
|
78
|
+
- Emoji prefixes unless your team convention requires them
|
|
79
|
+
- "Fixed bug" with no specifics
|
|
80
|
+
|
|
81
|
+
## Merge strategies
|
|
82
|
+
|
|
83
|
+
| Strategy | When to use | Pros | Cons |
|
|
84
|
+
| ------------ | -------------------- | ----------------- | ------------------------ |
|
|
85
|
+
| Squash merge | Feature branches | Clean history | Loses individual commits |
|
|
86
|
+
| Rebase merge | Linear history teams | Clean graph | Rewrites SHAs |
|
|
87
|
+
| Merge commit | Long-lived branches | Preserves context | Noisy history |
|
|
88
|
+
|
|
89
|
+
**Default recommendation:** Squash merge for feature/fix branches. Merge commit for release branches.
|
|
90
|
+
|
|
91
|
+
## Pre-merge checklist for large changes
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
⬜ Self-review: read every line of the diff
|
|
95
|
+
⬜ Tests added for new behavior
|
|
96
|
+
⬜ Tests updated for changed behavior
|
|
97
|
+
⬜ No debug logs left in
|
|
98
|
+
⬜ No hardcoded secrets or test credentials
|
|
99
|
+
⬜ No commented-out code (delete it or leave it)
|
|
100
|
+
⬜ Dependencies bumped in both package.json and lockfile
|
|
101
|
+
⬜ Migrations reversible (if schema change)
|
|
102
|
+
⬜ Feature flag added (if risk is high)
|
|
103
|
+
⬜ Docs updated (if public API changed)
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
## Rollback plan
|
|
107
|
+
|
|
108
|
+
For high-risk PRs, include in description:
|
|
109
|
+
|
|
110
|
+
```markdown
|
|
111
|
+
## Rollback plan
|
|
112
|
+
|
|
113
|
+
- Revert commit: `git revert <sha>`
|
|
114
|
+
- Migration rollback: `npm run db:rollback`
|
|
115
|
+
- Feature flag: set `FF_NEW_CHECKOUT=false` in env
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
## Review SLAs (team norms to set)
|
|
119
|
+
|
|
120
|
+
| PR size | Response time | Full review time |
|
|
121
|
+
| ------- | ------------- | ---------------- |
|
|
122
|
+
| Tiny | 2 hours | Same day |
|
|
123
|
+
| Small | 4 hours | Same day |
|
|
124
|
+
| Medium | 1 day | 2 days |
|
|
125
|
+
| Large | 2 days | 3 days |
|
|
126
|
+
|
|
127
|
+
## When to request additional reviewers
|
|
128
|
+
|
|
129
|
+
- Touches auth or security → always add security-focused reviewer
|
|
130
|
+
- Schema migration → add someone who knows the data model
|
|
131
|
+
- Performance-critical path → add performance reviewer
|
|
132
|
+
- Public API change → add API owner
|
|
133
|
+
- Billing/payment → add a second reviewer minimum
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
# Release Checklist
|
|
2
|
+
|
|
3
|
+
**Load this when:** Preparing, executing, or verifying a software release — pre-release gates, deploy steps, and post-release validation.
|
|
4
|
+
|
|
5
|
+
## Pre-Release Gates
|
|
6
|
+
|
|
7
|
+
### Code quality
|
|
8
|
+
|
|
9
|
+
- [ ] All CI checks passing on release branch
|
|
10
|
+
- [ ] No critical or high CVEs in `npm audit` / security scan
|
|
11
|
+
- [ ] Code review approved by at least one non-author
|
|
12
|
+
- [ ] Feature flags set correctly for release scope
|
|
13
|
+
|
|
14
|
+
### Testing
|
|
15
|
+
|
|
16
|
+
- [ ] Unit + integration tests passing
|
|
17
|
+
- [ ] Smoke tests passing on staging
|
|
18
|
+
- [ ] Any manual QA sign-off completed (if required)
|
|
19
|
+
- [ ] Regression tests run on affected paths
|
|
20
|
+
- [ ] Performance benchmarks within budget (if perf-sensitive change)
|
|
21
|
+
|
|
22
|
+
### Documentation
|
|
23
|
+
|
|
24
|
+
- [ ] CHANGELOG updated with version and summary
|
|
25
|
+
- [ ] API docs updated if contract changed
|
|
26
|
+
- [ ] README version badge / install instructions current
|
|
27
|
+
- [ ] Migration guide written if breaking change
|
|
28
|
+
|
|
29
|
+
### Ops readiness
|
|
30
|
+
|
|
31
|
+
- [ ] Feature flags configured for gradual rollout (if applicable)
|
|
32
|
+
- [ ] Monitoring dashboards prepared for new metrics
|
|
33
|
+
- [ ] Runbook updated if new failure modes introduced
|
|
34
|
+
- [ ] On-call engineer notified of release window
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Release Execution Steps
|
|
39
|
+
|
|
40
|
+
```
|
|
41
|
+
1. Tag the release commit (semver, annotated tag)
|
|
42
|
+
2. Push tag to trigger CI publish pipeline
|
|
43
|
+
3. Monitor pipeline to completion
|
|
44
|
+
4. Verify artifact published (npm, Docker Hub, GitHub Releases, etc.)
|
|
45
|
+
5. Deploy to production (manual gate or auto on tag)
|
|
46
|
+
6. Run post-deploy smoke tests
|
|
47
|
+
7. Watch error rate / latency for 15 minutes
|
|
48
|
+
8. Announce in team channel
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Rollback Triggers
|
|
54
|
+
|
|
55
|
+
Roll back immediately if within 30 minutes of deploy:
|
|
56
|
+
|
|
57
|
+
| Signal | Threshold |
|
|
58
|
+
| ---------------------------- | ----------------------- |
|
|
59
|
+
| Error rate increase | >2x baseline |
|
|
60
|
+
| 5xx rate | >1% of requests |
|
|
61
|
+
| P95 latency | >2x pre-deploy baseline |
|
|
62
|
+
| Critical user journey broken | Any |
|
|
63
|
+
| Data corruption detected | Any |
|
|
64
|
+
| Payment / auth failure | Any |
|
|
65
|
+
|
|
66
|
+
Roll back after extended monitoring if:
|
|
67
|
+
|
|
68
|
+
- Slow error rate increase over 1–4 hours
|
|
69
|
+
- Memory leak detected (heap growth without plateau)
|
|
70
|
+
- User reports of data inconsistency
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Rollback Decision Matrix
|
|
75
|
+
|
|
76
|
+
| Time since deploy | Error severity | Rollback? |
|
|
77
|
+
| ----------------- | -------------- | --------------------------------------------------- |
|
|
78
|
+
| <30 min | Any | Yes — immediate |
|
|
79
|
+
| 30 min–2h | Critical/High | Yes |
|
|
80
|
+
| 30 min–2h | Medium | Hotfix preferred |
|
|
81
|
+
| >2h | Any | Hotfix strongly preferred; rollback if data at risk |
|
|
82
|
+
|
|
83
|
+
**Rollback methods (in order of preference):**
|
|
84
|
+
|
|
85
|
+
1. Feature flag disable (instant, no deploy)
|
|
86
|
+
2. Revert deploy in CD platform (Vercel, Railway, etc.)
|
|
87
|
+
3. `git revert` + fast-track deploy
|
|
88
|
+
4. Database snapshot restore (last resort, data loss risk)
|
|
89
|
+
|
|
90
|
+
---
|
|
91
|
+
|
|
92
|
+
## Post-Release Validation (first 30 minutes)
|
|
93
|
+
|
|
94
|
+
- [ ] Health endpoint returning 200
|
|
95
|
+
- [ ] Error rate at or below pre-release baseline
|
|
96
|
+
- [ ] P95 latency within 20% of baseline
|
|
97
|
+
- [ ] Critical user journeys functional (smoke test)
|
|
98
|
+
- [ ] Log stream clean (no unexpected errors)
|
|
99
|
+
- [ ] New feature working as specified (spot check)
|
|
100
|
+
|
|
101
|
+
---
|
|
102
|
+
|
|
103
|
+
## Communication Templates
|
|
104
|
+
|
|
105
|
+
### Release announcement (internal)
|
|
106
|
+
|
|
107
|
+
```
|
|
108
|
+
[RELEASE] v{version} — {title}
|
|
109
|
+
|
|
110
|
+
What's new: {1–3 bullet summary}
|
|
111
|
+
Deployed to: {environment(s)}
|
|
112
|
+
Monitoring: {link to dashboard}
|
|
113
|
+
Rollback plan: {feature flag / revert method}
|
|
114
|
+
|
|
115
|
+
Needs attention? Ping @on-call
|
|
116
|
+
```
|
|
117
|
+
|
|
118
|
+
### Incident during release
|
|
119
|
+
|
|
120
|
+
```
|
|
121
|
+
[INCIDENT] Release v{version} — rollback initiated
|
|
122
|
+
|
|
123
|
+
Impact: {what's affected}
|
|
124
|
+
Root cause (preliminary): {hypothesis}
|
|
125
|
+
Action taken: {rolled back to v{previous}}
|
|
126
|
+
Status: {investigating / resolved}
|
|
127
|
+
Updates in: #{incident-channel}
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Versioning Rules (semver)
|
|
133
|
+
|
|
134
|
+
| Change type | Bump | Example |
|
|
135
|
+
| -------------------------------- | --------------- | -------------- |
|
|
136
|
+
| Bug fix, patch-level | PATCH | 1.2.3 → 1.2.4 |
|
|
137
|
+
| New feature, backward-compatible | MINOR | 1.2.3 → 1.3.0 |
|
|
138
|
+
| Breaking change | MAJOR | 1.2.3 → 2.0.0 |
|
|
139
|
+
| Pre-release | Pre-release tag | 2.0.0-alpha.1 |
|
|
140
|
+
| Build metadata | Build tag | 1.2.3+build.42 |
|
|
141
|
+
|
|
142
|
+
**Breaking change examples:** Removed API endpoint, changed required field to required, renamed public method, dropped runtime support (Node version, browser).
|