proagents 1.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +21 -0
- package/README.md +170 -0
- package/bin/proagents.js +90 -0
- package/lib/commands/feature.js +125 -0
- package/lib/commands/fix.js +60 -0
- package/lib/commands/help.js +76 -0
- package/lib/commands/init.js +64 -0
- package/lib/commands/status.js +91 -0
- package/lib/index.js +28 -0
- package/package.json +52 -0
- package/proagents/.learning/global/common-patterns.json +77 -0
- package/proagents/.learning/global/user-preferences.json +76 -0
- package/proagents/.learning/projects/example-project/corrections.json +99 -0
- package/proagents/.learning/projects/example-project/feedback.json +109 -0
- package/proagents/.learning/projects/example-project/metrics.json +101 -0
- package/proagents/.learning/projects/example-project/patterns.json +102 -0
- package/proagents/.learning/schemas/README.md +48 -0
- package/proagents/.learning/schemas/corrections-schema.json +100 -0
- package/proagents/.learning/schemas/feedback-schema.json +144 -0
- package/proagents/.learning/schemas/metrics-schema.json +96 -0
- package/proagents/.learning/schemas/patterns-schema.json +82 -0
- package/proagents/.learning/schemas/project-patterns-schema.json +125 -0
- package/proagents/.learning/schemas/user-preferences-schema.json +136 -0
- package/proagents/GETTING-STARTED-STORY.md +708 -0
- package/proagents/README.md +99 -0
- package/proagents/WORKFLOW.md +1234 -0
- package/proagents/active-features/.gitkeep +0 -0
- package/proagents/active-features/README.md +176 -0
- package/proagents/active-features/_index.json +74 -0
- package/proagents/active-features/feature-user-auth/dependencies.json +81 -0
- package/proagents/active-features/feature-user-auth/files-modified.json +126 -0
- package/proagents/active-features/feature-user-auth/status.json +122 -0
- package/proagents/active-features/schemas/dependencies-schema.json +119 -0
- package/proagents/active-features/schemas/feature-schema.json +132 -0
- package/proagents/active-features/schemas/files-schema.json +100 -0
- package/proagents/active-features/schemas/index-schema.json +95 -0
- package/proagents/adr/README.md +302 -0
- package/proagents/adr/examples/api-versioning.md +297 -0
- package/proagents/adr/examples/database-choice.md +264 -0
- package/proagents/adr/template.md +273 -0
- package/proagents/ai-models/README.md +141 -0
- package/proagents/ai-models/cost-management.md +362 -0
- package/proagents/ai-models/fallbacks.md +342 -0
- package/proagents/ai-models/model-config.md +318 -0
- package/proagents/ai-models/task-routing.md +503 -0
- package/proagents/ai-training/README.md +155 -0
- package/proagents/ai-training/continuous-learning.md +413 -0
- package/proagents/ai-training/domain-knowledge.md +378 -0
- package/proagents/ai-training/pattern-learning.md +455 -0
- package/proagents/ai-training/training-data.md +337 -0
- package/proagents/ai-training/user-preferences.md +346 -0
- package/proagents/api-versioning/README.md +257 -0
- package/proagents/api-versioning/changelog-template.md +225 -0
- package/proagents/api-versioning/deprecation-workflow.md +470 -0
- package/proagents/api-versioning/versioning-strategy.md +291 -0
- package/proagents/approval-workflows/README.md +146 -0
- package/proagents/approval-workflows/approval-config.md +332 -0
- package/proagents/approval-workflows/approval-stages.md +503 -0
- package/proagents/approval-workflows/emergency-bypass.md +351 -0
- package/proagents/approval-workflows/examples.md +859 -0
- package/proagents/approval-workflows/notifications.md +320 -0
- package/proagents/automation/README.md +38 -0
- package/proagents/automation/ai-behavior-rules.md +339 -0
- package/proagents/automation/ai-prompt-injection.md +331 -0
- package/proagents/automation/auto-decisions.md +535 -0
- package/proagents/automation/decision-defaults.yaml +317 -0
- package/proagents/cache/README.md +110 -0
- package/proagents/cache/analysis-metadata.json +76 -0
- package/proagents/cache/conventions.json +125 -0
- package/proagents/cache/dependencies.json +85 -0
- package/proagents/cache/features.json +115 -0
- package/proagents/cache/patterns.json +105 -0
- package/proagents/cache/schemas/conventions-schema.json +138 -0
- package/proagents/cache/schemas/dependencies-schema.json +95 -0
- package/proagents/cache/schemas/features-schema.json +104 -0
- package/proagents/cache/schemas/metadata-schema.json +83 -0
- package/proagents/cache/schemas/patterns-schema.json +136 -0
- package/proagents/cache/schemas/structure-schema.json +72 -0
- package/proagents/cache/structure.json +109 -0
- package/proagents/changelog/2024/01/2024-01-10-api-url-config.md +41 -0
- package/proagents/changelog/2024/01/2024-01-12-login-bug-fix.md +69 -0
- package/proagents/changelog/2024/01/2024-01-15-user-auth-feature.md +99 -0
- package/proagents/changelog/CHANGELOG.md +82 -0
- package/proagents/changelog/README.md +327 -0
- package/proagents/changelog/entry-template.md +283 -0
- package/proagents/checklists/README.md +261 -0
- package/proagents/checklists/code-quality.md +137 -0
- package/proagents/checklists/code-review.md +148 -0
- package/proagents/checklists/pr-checklist.md +78 -0
- package/proagents/checklists/pre-deployment.md +132 -0
- package/proagents/checklists/pre-implementation.md +80 -0
- package/proagents/checklists/testing.md +120 -0
- package/proagents/cicd/README.md +338 -0
- package/proagents/cicd/azure-devops.md +267 -0
- package/proagents/cicd/github-actions.md +375 -0
- package/proagents/cicd/gitlab-ci.md +278 -0
- package/proagents/cicd/jenkins.md +317 -0
- package/proagents/cli/README.md +392 -0
- package/proagents/cli/commands-reference.md +893 -0
- package/proagents/cli/ide-integration.md +584 -0
- package/proagents/cli/shortcuts.md +394 -0
- package/proagents/cli/slash-commands.md +507 -0
- package/proagents/collaboration/README.md +143 -0
- package/proagents/collaboration/roles.md +248 -0
- package/proagents/collaboration/sessions.md +390 -0
- package/proagents/collaboration/sync.md +358 -0
- package/proagents/compliance/README.md +206 -0
- package/proagents/compliance/access-control.md +310 -0
- package/proagents/compliance/audit-logging.md +444 -0
- package/proagents/compliance/compliance-frameworks.md +429 -0
- package/proagents/compliance/reports.md +491 -0
- package/proagents/compliance/retention-policies.md +454 -0
- package/proagents/config/README.md +181 -0
- package/proagents/config/integrations/README.md +68 -0
- package/proagents/config/integrations/github.yaml +211 -0
- package/proagents/config/integrations/jira.yaml +144 -0
- package/proagents/config/integrations/linear.yaml +157 -0
- package/proagents/config/integrations/notion.yaml +203 -0
- package/proagents/config/integrations/slack.yaml +230 -0
- package/proagents/config/rules/README.md +73 -0
- package/proagents/config/rules/custom-rules.template.yaml +188 -0
- package/proagents/config/rules/validation-rules.template.yaml +177 -0
- package/proagents/config/standards/README.md +58 -0
- package/proagents/config/standards/architecture-rules.template.md +124 -0
- package/proagents/config/standards/coding-standards.template.md +107 -0
- package/proagents/config/standards/naming-conventions.template.md +114 -0
- package/proagents/config/standards/testing-standards.template.md +213 -0
- package/proagents/config/templates/README.md +74 -0
- package/proagents/config/templates/api-route.template.ts +142 -0
- package/proagents/config/templates/component.template.tsx +55 -0
- package/proagents/config/templates/hook.template.ts +93 -0
- package/proagents/config/templates/test.template.ts +171 -0
- package/proagents/config-versioning/README.md +120 -0
- package/proagents/config-versioning/changelog.md +300 -0
- package/proagents/config-versioning/rollback.md +283 -0
- package/proagents/config-versioning/versioning.md +330 -0
- package/proagents/contract-testing/README.md +223 -0
- package/proagents/contract-testing/contract-testing.md +614 -0
- package/proagents/contract-testing/pact-integration.md +507 -0
- package/proagents/contract-testing/schema-validation.md +565 -0
- package/proagents/cost/README.md +48 -0
- package/proagents/cost/cost-template.md +283 -0
- package/proagents/cost/estimation-framework.md +287 -0
- package/proagents/database/README.md +72 -0
- package/proagents/database/examples/001-create-users.sql +129 -0
- package/proagents/database/examples/002-add-preferences.sql +94 -0
- package/proagents/database/examples/003-add-index.sql +105 -0
- package/proagents/database/examples/004-rename-column.sql +122 -0
- package/proagents/database/examples/005-add-foreign-key.sql +142 -0
- package/proagents/database/examples/006-data-migration.sql +196 -0
- package/proagents/database/examples/007-drop-column.sql +163 -0
- package/proagents/database/examples/README.md +89 -0
- package/proagents/database/migration-workflow.md +478 -0
- package/proagents/database/rollback-scripts.md +487 -0
- package/proagents/database/safety-checks.md +447 -0
- package/proagents/dependency-management/README.md +140 -0
- package/proagents/dependency-management/automation.md +363 -0
- package/proagents/dependency-management/compatibility.md +319 -0
- package/proagents/dependency-management/security-scanning.md +413 -0
- package/proagents/dependency-management/update-policies.md +374 -0
- package/proagents/disaster-recovery/README.md +247 -0
- package/proagents/disaster-recovery/automation.md +366 -0
- package/proagents/disaster-recovery/backup-recovery.md +571 -0
- package/proagents/disaster-recovery/incident-response.md +565 -0
- package/proagents/disaster-recovery/rollback-procedures.md +499 -0
- package/proagents/disaster-recovery/runbooks.md +603 -0
- package/proagents/disaster-recovery/scenarios.md +892 -0
- package/proagents/disaster-recovery/testing.md +438 -0
- package/proagents/environments/README.md +244 -0
- package/proagents/environments/configuration.md +437 -0
- package/proagents/environments/promotion.md +434 -0
- package/proagents/environments/setup.md +420 -0
- package/proagents/examples/README.md +55 -0
- package/proagents/examples/backend-nodejs/README.md +188 -0
- package/proagents/examples/backend-nodejs/complete-conversation.md +601 -0
- package/proagents/examples/backend-nodejs/proagents.config.yaml +415 -0
- package/proagents/examples/backend-nodejs/workflow-example.md +909 -0
- package/proagents/examples/fullstack-nextjs/README.md +155 -0
- package/proagents/examples/fullstack-nextjs/complete-conversation.md +604 -0
- package/proagents/examples/fullstack-nextjs/proagents.config.yaml +287 -0
- package/proagents/examples/fullstack-nextjs/workflow-example.md +553 -0
- package/proagents/examples/mobile-react-native/README.md +171 -0
- package/proagents/examples/mobile-react-native/complete-conversation.md +825 -0
- package/proagents/examples/mobile-react-native/proagents.config.yaml +330 -0
- package/proagents/examples/mobile-react-native/workflow-example.md +723 -0
- package/proagents/examples/web-frontend-react/README.md +125 -0
- package/proagents/examples/web-frontend-react/complete-conversation.md +556 -0
- package/proagents/examples/web-frontend-react/proagents.config.yaml +183 -0
- package/proagents/examples/web-frontend-react/workflow-example.md +603 -0
- package/proagents/existing-projects/README.md +65 -0
- package/proagents/existing-projects/challenges.md +861 -0
- package/proagents/existing-projects/coexistence-mode.md +483 -0
- package/proagents/existing-projects/compatibility-assessment.md +541 -0
- package/proagents/existing-projects/gradual-adoption.md +515 -0
- package/proagents/existing-projects/migration-strategies.md +788 -0
- package/proagents/existing-projects/pattern-reconciliation.md +489 -0
- package/proagents/existing-projects/team-onboarding.md +617 -0
- package/proagents/existing-projects/technical-debt-handling.md +644 -0
- package/proagents/feature-flags/README.md +263 -0
- package/proagents/feature-flags/ab-testing.md +413 -0
- package/proagents/feature-flags/configuration.md +420 -0
- package/proagents/feature-flags/kill-switches.md +444 -0
- package/proagents/feature-flags/rollout-strategies.md +392 -0
- package/proagents/getting-started/README.md +60 -0
- package/proagents/getting-started/ai-training-setup.md +380 -0
- package/proagents/getting-started/ide-setup.md +195 -0
- package/proagents/getting-started/mcp-setup.md +239 -0
- package/proagents/getting-started/pm-integration.md +336 -0
- package/proagents/getting-started/prompt-engineering.md +478 -0
- package/proagents/getting-started/team-onboarding.md +236 -0
- package/proagents/git/README.md +68 -0
- package/proagents/git/branch-strategy.md +164 -0
- package/proagents/git/commit-conventions.md +241 -0
- package/proagents/git/pr-workflow.md +286 -0
- package/proagents/git/rollback-procedures.md +416 -0
- package/proagents/i18n/README.md +133 -0
- package/proagents/i18n/extraction.md +433 -0
- package/proagents/i18n/tms-integration.md +332 -0
- package/proagents/i18n/translation-workflow.md +413 -0
- package/proagents/i18n/validation.md +355 -0
- package/proagents/ide-integration/README.md +124 -0
- package/proagents/ide-integration/cline-config.md +429 -0
- package/proagents/ide-integration/continue-config.md +380 -0
- package/proagents/ide-integration/cursor-rules.md +280 -0
- package/proagents/ide-integration/github-copilot.md +384 -0
- package/proagents/ide-integration/windsurf-rules.md +314 -0
- package/proagents/integrations/README.md +97 -0
- package/proagents/integrations/pm/README.md +344 -0
- package/proagents/learning/README.md +136 -0
- package/proagents/learning/adaptation.md +305 -0
- package/proagents/learning/data-collection.md +283 -0
- package/proagents/learning/implementation-guide.md +865 -0
- package/proagents/learning/reports.md +306 -0
- package/proagents/logging/README.md +276 -0
- package/proagents/logging/aggregation.md +475 -0
- package/proagents/logging/log-levels.md +376 -0
- package/proagents/logging/sensitive-data.md +423 -0
- package/proagents/logging/structured-logging.md +406 -0
- package/proagents/mcp/README.md +133 -0
- package/proagents/mcp/context-providers.md +442 -0
- package/proagents/mcp/server-config.md +306 -0
- package/proagents/mcp/tools-definition.md +513 -0
- package/proagents/metrics/README.md +174 -0
- package/proagents/metrics/code-quality-kpis.md +461 -0
- package/proagents/metrics/deployment-metrics.md +517 -0
- package/proagents/metrics/developer-productivity.md +368 -0
- package/proagents/metrics/learning-effectiveness.md +478 -0
- package/proagents/migrations/README.md +77 -0
- package/proagents/migrations/from-claude-projects.md +312 -0
- package/proagents/migrations/from-cursor-rules.md +345 -0
- package/proagents/migrations/from-custom-workflows.md +410 -0
- package/proagents/monitoring/README.md +308 -0
- package/proagents/monitoring/alerting.md +449 -0
- package/proagents/monitoring/dashboards.md +454 -0
- package/proagents/monitoring/health-checks.md +436 -0
- package/proagents/monitoring/metrics.md +434 -0
- package/proagents/multi-project/README.md +170 -0
- package/proagents/multi-project/coordinated-deploy.md +510 -0
- package/proagents/multi-project/cross-project-deps.md +395 -0
- package/proagents/multi-project/unified-changelog.md +477 -0
- package/proagents/multi-project/walkthroughs/monorepo-setup.md +787 -0
- package/proagents/multi-project/workspace-config.md +408 -0
- package/proagents/notifications/README.md +151 -0
- package/proagents/notifications/channels.md +457 -0
- package/proagents/notifications/preferences.md +415 -0
- package/proagents/notifications/routing.md +449 -0
- package/proagents/notifications/scheduling.md +425 -0
- package/proagents/notifications/templates.md +446 -0
- package/proagents/offline-mode/README.md +145 -0
- package/proagents/offline-mode/caching.md +344 -0
- package/proagents/offline-mode/offline-operations.md +312 -0
- package/proagents/offline-mode/queue-specifications.md +679 -0
- package/proagents/offline-mode/sync.md +475 -0
- package/proagents/parallel-features/README.md +85 -0
- package/proagents/parallel-features/conflict-detection.md +226 -0
- package/proagents/parallel-features/dependency-management.md +392 -0
- package/proagents/parallel-features/merge-coordination.md +506 -0
- package/proagents/parallel-features/tracking-system.md +416 -0
- package/proagents/patterns/README.md +305 -0
- package/proagents/patterns/api-errors.md +453 -0
- package/proagents/patterns/async-errors.md +521 -0
- package/proagents/patterns/error-types.md +437 -0
- package/proagents/patterns/ui-errors.md +595 -0
- package/proagents/performance/README.md +59 -0
- package/proagents/performance/bundle-analysis.md +375 -0
- package/proagents/performance/load-testing.md +563 -0
- package/proagents/performance/runtime-metrics.md +489 -0
- package/proagents/performance/web-vitals.md +425 -0
- package/proagents/plugins/README.md +139 -0
- package/proagents/plugins/creating-plugins.md +504 -0
- package/proagents/plugins/plugin-api.md +467 -0
- package/proagents/plugins/plugin-registry.md +276 -0
- package/proagents/pm-integration/README.md +151 -0
- package/proagents/pm-integration/asana.md +346 -0
- package/proagents/pm-integration/github-issues.md +308 -0
- package/proagents/pm-integration/gitlab-issues.md +482 -0
- package/proagents/pm-integration/jira.md +364 -0
- package/proagents/pm-integration/linear.md +409 -0
- package/proagents/pm-integration/notion.md +275 -0
- package/proagents/pm-integration/sync-config.md +533 -0
- package/proagents/pm-integration/trello.md +159 -0
- package/proagents/proagents.config.yaml +213 -0
- package/proagents/prompts/00-init-wizard.md +426 -0
- package/proagents/prompts/00-init.md +219 -0
- package/proagents/prompts/01-analysis.md +244 -0
- package/proagents/prompts/02-requirements.md +399 -0
- package/proagents/prompts/03-ui-design.md +493 -0
- package/proagents/prompts/04-planning.md +505 -0
- package/proagents/prompts/05-implementation.md +518 -0
- package/proagents/prompts/06-testing.md +620 -0
- package/proagents/prompts/06.5-code-review.md +512 -0
- package/proagents/prompts/07-documentation.md +673 -0
- package/proagents/prompts/08-deployment.md +539 -0
- package/proagents/prompts/09-rollback.md +554 -0
- package/proagents/prompts/README.md +51 -0
- package/proagents/prompts/accessibility/README.md +146 -0
- package/proagents/prompts/accessibility/aria.md +276 -0
- package/proagents/prompts/accessibility/audit.md +233 -0
- package/proagents/prompts/accessibility/keyboard.md +392 -0
- package/proagents/prompts/accessibility/wcag.md +189 -0
- package/proagents/prompts/debugging/README.md +51 -0
- package/proagents/prompts/debugging/error-analysis.md +385 -0
- package/proagents/prompts/debugging/performance-debug.md +381 -0
- package/proagents/prompts/debugging/systematic.md +270 -0
- package/proagents/prompts/performance/README.md +47 -0
- package/proagents/prompts/performance/analyze.md +265 -0
- package/proagents/prompts/performance/optimize.md +347 -0
- package/proagents/prompts/refactoring/README.md +51 -0
- package/proagents/prompts/refactoring/architecture.md +531 -0
- package/proagents/prompts/refactoring/code-smells.md +174 -0
- package/proagents/prompts/refactoring/patterns.md +516 -0
- package/proagents/prompts/security-audit/README.md +197 -0
- package/proagents/prompts/security-audit/code-review.md +260 -0
- package/proagents/prompts/security-audit/vulnerability-scan.md +288 -0
- package/proagents/reporting/README.md +158 -0
- package/proagents/reporting/dashboards.md +366 -0
- package/proagents/reporting/exports.md +524 -0
- package/proagents/reporting/quality-metrics.md +385 -0
- package/proagents/reporting/templates/README.md +56 -0
- package/proagents/reporting/templates/dashboard-config.json +187 -0
- package/proagents/reporting/templates/metrics-queries.md +427 -0
- package/proagents/reporting/templates/react-dashboard.tsx +544 -0
- package/proagents/reporting/templates/widgets.md +451 -0
- package/proagents/reporting/velocity-metrics.md +340 -0
- package/proagents/reverse-engineering/README.md +151 -0
- package/proagents/reverse-engineering/architecture-extraction.md +325 -0
- package/proagents/reverse-engineering/code-analysis.md +377 -0
- package/proagents/reverse-engineering/dependency-mapping.md +567 -0
- package/proagents/reverse-engineering/diagram-generation.md +586 -0
- package/proagents/reverse-engineering/documentation-generation.md +468 -0
- package/proagents/reverse-engineering/pattern-detection.md +569 -0
- package/proagents/reverse-engineering/quality-assessment.md +733 -0
- package/proagents/rules/README.md +179 -0
- package/proagents/rules/custom-rules-template.yaml +286 -0
- package/proagents/rules/custom-rules.md +754 -0
- package/proagents/rules/validation-rules-template.yaml +517 -0
- package/proagents/runbooks/README.md +219 -0
- package/proagents/runbooks/dependency-vulnerability.md +505 -0
- package/proagents/runbooks/incident-response.md +451 -0
- package/proagents/runbooks/performance-degradation.md +584 -0
- package/proagents/runbooks/production-debugging.md +489 -0
- package/proagents/scaffolding/README.md +64 -0
- package/proagents/scaffolding/nextjs/README.md +578 -0
- package/proagents/scaffolding/nextjs/templates/api-route.ts.template +185 -0
- package/proagents/scaffolding/nextjs/templates/page.tsx.template +109 -0
- package/proagents/scaffolding/nextjs/templates/server-action.ts.template +204 -0
- package/proagents/scaffolding/nodejs/README.md +558 -0
- package/proagents/scaffolding/nodejs/templates/controller.ts.template +167 -0
- package/proagents/scaffolding/nodejs/templates/repository.ts.template +155 -0
- package/proagents/scaffolding/nodejs/templates/service.ts.template +207 -0
- package/proagents/scaffolding/project-types.md +401 -0
- package/proagents/scaffolding/react/README.md +399 -0
- package/proagents/scaffolding/react/templates/component.tsx.template +88 -0
- package/proagents/scaffolding/react/templates/hook.ts.template +127 -0
- package/proagents/scaffolding/react/templates/service.ts.template +155 -0
- package/proagents/scaffolding/react/templates/test.tsx.template +149 -0
- package/proagents/scaffolding/react-native/README.md +476 -0
- package/proagents/scaffolding/react-native/templates/hook.ts.template +226 -0
- package/proagents/scaffolding/react-native/templates/screen.tsx.template +247 -0
- package/proagents/secrets/README.md +278 -0
- package/proagents/secrets/access-control.md +443 -0
- package/proagents/secrets/rotation.md +403 -0
- package/proagents/secrets/scanning.md +487 -0
- package/proagents/secrets/storage.md +394 -0
- package/proagents/security/README.md +71 -0
- package/proagents/security/owasp-checklist.md +390 -0
- package/proagents/security/sast-guide.md +473 -0
- package/proagents/security/security-report-template.md +343 -0
- package/proagents/security/vulnerability-scanning.md +329 -0
- package/proagents/slash-commands.json +161 -0
- package/proagents/standards/README.md +120 -0
- package/proagents/standards/architecture-patterns.md +728 -0
- package/proagents/standards/architecture-rules-template.md +489 -0
- package/proagents/standards/coding-standards-template.md +489 -0
- package/proagents/standards/examples/README.md +61 -0
- package/proagents/standards/examples/nodejs-api.md +560 -0
- package/proagents/standards/examples/react-nextjs.md +428 -0
- package/proagents/standards/naming-conventions-template.md +526 -0
- package/proagents/standards/override-system.md +717 -0
- package/proagents/standards/testing-standards-template.md +220 -0
- package/proagents/team/README.md +256 -0
- package/proagents/team/code-ownership.md +306 -0
- package/proagents/team/communication-templates.md +441 -0
- package/proagents/team/handoff-protocol.md +380 -0
- package/proagents/team/ide-setup/README.md +103 -0
- package/proagents/team/ide-setup/cursor.md +276 -0
- package/proagents/team/ide-setup/jetbrains.md +330 -0
- package/proagents/team/ide-setup/neovim.md +640 -0
- package/proagents/team/ide-setup/vscode.md +348 -0
- package/proagents/team/onboarding.md +278 -0
- package/proagents/templates/README.md +57 -0
- package/proagents/templates/code-review-report.md +255 -0
- package/proagents/templates/codebase-analysis-report.md +315 -0
- package/proagents/templates/deployment-checklist.md +277 -0
- package/proagents/templates/feature-requirements.md +142 -0
- package/proagents/templates/feature-status.md +231 -0
- package/proagents/templates/implementation-plan.md +373 -0
- package/proagents/templates/rollback-plan.md +331 -0
- package/proagents/templates/test-plan.md +336 -0
- package/proagents/templates/ui-specification.md +431 -0
- package/proagents/testing-standards/README.md +229 -0
- package/proagents/testing-standards/coverage-requirements.md +198 -0
- package/proagents/testing-standards/mocking-guidelines.md +478 -0
- package/proagents/testing-standards/test-naming.md +485 -0
- package/proagents/testing-standards/test-patterns.md +488 -0
- package/proagents/troubleshooting/README.md +730 -0
- package/proagents/troubleshooting/ai-issues.md +601 -0
- package/proagents/troubleshooting/workflow-issues.md +571 -0
- package/proagents/ui-integration/README.md +77 -0
- package/proagents/ui-integration/figma-guide.md +217 -0
- package/proagents/ui-integration/manual-export-guide.md +358 -0
- package/proagents/ui-integration/sketch-interpretation.md +471 -0
- package/proagents/webhooks/README.md +126 -0
- package/proagents/webhooks/endpoints.md +298 -0
- package/proagents/webhooks/events.md +316 -0
- package/proagents/webhooks/payloads.md +325 -0
- package/proagents/webhooks/reliability.md +363 -0
- package/proagents/webhooks/security.md +380 -0
- package/proagents/workflow-modes/README.md +136 -0
- package/proagents/workflow-modes/deferred-tracking.md +405 -0
- package/proagents/workflow-modes/entry-modes.md +397 -0
- package/proagents/workflow-modes/guardrails.md +405 -0
- package/proagents/workflow-modes/mode-detection.md +358 -0
- package/proagents/workflow-modes/mode-switching.md +372 -0
|
@@ -0,0 +1,859 @@
|
|
|
1
|
+
# Approval Workflow Examples
|
|
2
|
+
|
|
3
|
+
Practical examples of approval workflows for different scenarios.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Example 1: Standard Feature Approval
|
|
8
|
+
|
|
9
|
+
Basic feature approval with tech lead review.
|
|
10
|
+
|
|
11
|
+
### Configuration
|
|
12
|
+
|
|
13
|
+
```yaml
|
|
14
|
+
# proagents.config.yaml
|
|
15
|
+
|
|
16
|
+
approvals:
|
|
17
|
+
enabled: true
|
|
18
|
+
|
|
19
|
+
feature_approval:
|
|
20
|
+
stages:
|
|
21
|
+
- name: "code_review"
|
|
22
|
+
approvers: ["@team/tech-leads"]
|
|
23
|
+
required: true
|
|
24
|
+
timeout: "48h"
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
### Workflow
|
|
28
|
+
|
|
29
|
+
```
|
|
30
|
+
Developer Tech Lead System
|
|
31
|
+
│ │ │
|
|
32
|
+
│ Complete Feature │ │
|
|
33
|
+
├──────────────────────────►│ │
|
|
34
|
+
│ │ │
|
|
35
|
+
│ Request Approval │ │
|
|
36
|
+
│───────────────────────────┼──────────────────────────►│
|
|
37
|
+
│ │ │
|
|
38
|
+
│ │◄───────Notification───────│
|
|
39
|
+
│ │ │
|
|
40
|
+
│ │ Review Code │
|
|
41
|
+
│ │ │
|
|
42
|
+
│ │ Approve │
|
|
43
|
+
│ ├──────────────────────────►│
|
|
44
|
+
│ │ │
|
|
45
|
+
│◄───────────────────Approval Complete──────────────────│
|
|
46
|
+
│ │ │
|
|
47
|
+
│ Merge & Deploy │ │
|
|
48
|
+
│ │ │
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### Commands
|
|
52
|
+
|
|
53
|
+
```bash
|
|
54
|
+
# Developer requests approval
|
|
55
|
+
proagents approval request --stage code_review
|
|
56
|
+
|
|
57
|
+
# Tech lead reviews
|
|
58
|
+
proagents approval review feature/user-auth
|
|
59
|
+
|
|
60
|
+
# Tech lead approves
|
|
61
|
+
proagents approval approve feature/user-auth --comment "LGTM"
|
|
62
|
+
|
|
63
|
+
# Developer can now proceed
|
|
64
|
+
proagents status
|
|
65
|
+
# Output: ✅ Approved - Ready to merge
|
|
66
|
+
```
|
|
67
|
+
|
|
68
|
+
---
|
|
69
|
+
|
|
70
|
+
## Example 2: Multi-Stage Feature Approval
|
|
71
|
+
|
|
72
|
+
Feature requires both technical and product approval.
|
|
73
|
+
|
|
74
|
+
### Configuration
|
|
75
|
+
|
|
76
|
+
```yaml
|
|
77
|
+
approvals:
|
|
78
|
+
enabled: true
|
|
79
|
+
|
|
80
|
+
feature_approval:
|
|
81
|
+
stages:
|
|
82
|
+
# Stage 1: Technical Review
|
|
83
|
+
- name: "tech_review"
|
|
84
|
+
description: "Technical implementation review"
|
|
85
|
+
approvers: ["@team/tech-leads"]
|
|
86
|
+
required: true
|
|
87
|
+
criteria:
|
|
88
|
+
- "Code quality meets standards"
|
|
89
|
+
- "Tests are comprehensive"
|
|
90
|
+
- "No security issues"
|
|
91
|
+
|
|
92
|
+
# Stage 2: Product Review
|
|
93
|
+
- name: "product_review"
|
|
94
|
+
description: "Feature meets requirements"
|
|
95
|
+
approvers: ["@team/product-managers"]
|
|
96
|
+
required: true
|
|
97
|
+
criteria:
|
|
98
|
+
- "Feature matches requirements"
|
|
99
|
+
- "UX is acceptable"
|
|
100
|
+
- "Ready for users"
|
|
101
|
+
|
|
102
|
+
# Stage 3: Final Sign-off (Optional)
|
|
103
|
+
- name: "final_signoff"
|
|
104
|
+
description: "Final approval for release"
|
|
105
|
+
approvers: ["@team/engineering-manager"]
|
|
106
|
+
required: false
|
|
107
|
+
condition: "major_feature"
|
|
108
|
+
|
|
109
|
+
# Stages run sequentially
|
|
110
|
+
sequential: true
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
### Workflow
|
|
114
|
+
|
|
115
|
+
```
|
|
116
|
+
Developer Tech Lead Product Eng Manager
|
|
117
|
+
│ │ │ │
|
|
118
|
+
│ Request │ │ │
|
|
119
|
+
├───────────────►│ │ │
|
|
120
|
+
│ │ │ │
|
|
121
|
+
│ │ Review │ │
|
|
122
|
+
│ │ Approve ✅ │ │
|
|
123
|
+
│ ├───────────────►│ │
|
|
124
|
+
│ │ │ │
|
|
125
|
+
│ │ │ Review │
|
|
126
|
+
│ │ │ Approve ✅ │
|
|
127
|
+
│ │ ├───────────────►│
|
|
128
|
+
│ │ │ │
|
|
129
|
+
│ │ │ │ (Optional)
|
|
130
|
+
│ │ │ │ Sign-off ✅
|
|
131
|
+
│◄───────────────┴────────────────┴────────────────┤
|
|
132
|
+
│ │
|
|
133
|
+
│ All Approvals Complete │
|
|
134
|
+
│ │
|
|
135
|
+
```
|
|
136
|
+
|
|
137
|
+
### Commands
|
|
138
|
+
|
|
139
|
+
```bash
|
|
140
|
+
# Developer submits for approval
|
|
141
|
+
proagents approval request --all-stages
|
|
142
|
+
|
|
143
|
+
# Check current status
|
|
144
|
+
proagents approval status
|
|
145
|
+
|
|
146
|
+
# Output:
|
|
147
|
+
# Approval Status: feature/user-dashboard
|
|
148
|
+
# ─────────────────────────────────────────
|
|
149
|
+
# Stage 1: tech_review ⏳ Pending
|
|
150
|
+
# Stage 2: product_review ⏸ Waiting (blocked by Stage 1)
|
|
151
|
+
# Stage 3: final_signoff ⏸ Waiting (blocked by Stage 2)
|
|
152
|
+
|
|
153
|
+
# After tech review approves:
|
|
154
|
+
# Stage 1: tech_review ✅ Approved (by @tech-lead, 2h ago)
|
|
155
|
+
# Stage 2: product_review ⏳ Pending
|
|
156
|
+
# Stage 3: final_signoff ⏸ Waiting
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
---
|
|
160
|
+
|
|
161
|
+
## Example 3: Deployment Approval Gates
|
|
162
|
+
|
|
163
|
+
Different approval requirements for different environments.
|
|
164
|
+
|
|
165
|
+
### Configuration
|
|
166
|
+
|
|
167
|
+
```yaml
|
|
168
|
+
approvals:
|
|
169
|
+
enabled: true
|
|
170
|
+
|
|
171
|
+
deployment_approval:
|
|
172
|
+
# Development - No approval needed
|
|
173
|
+
development:
|
|
174
|
+
required: false
|
|
175
|
+
auto_approve: true
|
|
176
|
+
|
|
177
|
+
# Staging - Single approval
|
|
178
|
+
staging:
|
|
179
|
+
required: true
|
|
180
|
+
approvers: ["@team/developers"]
|
|
181
|
+
min_approvals: 1
|
|
182
|
+
self_approve: true # Developer can approve their own
|
|
183
|
+
|
|
184
|
+
# Production - Strict approval
|
|
185
|
+
production:
|
|
186
|
+
required: true
|
|
187
|
+
approvers:
|
|
188
|
+
- "@team/tech-leads"
|
|
189
|
+
- "@team/devops"
|
|
190
|
+
min_approvals: 2
|
|
191
|
+
self_approve: false
|
|
192
|
+
additional_checks:
|
|
193
|
+
- "staging_verified"
|
|
194
|
+
- "load_test_passed"
|
|
195
|
+
- "security_scan_clear"
|
|
196
|
+
|
|
197
|
+
# Hotfix - Expedited approval
|
|
198
|
+
hotfix:
|
|
199
|
+
required: true
|
|
200
|
+
approvers:
|
|
201
|
+
- "@team/tech-leads"
|
|
202
|
+
- "@team/on-call"
|
|
203
|
+
min_approvals: 1
|
|
204
|
+
expedited: true
|
|
205
|
+
timeout: "1h"
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Workflow Example: Production Deployment
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
# Step 1: Deploy to staging (auto-approved)
|
|
212
|
+
proagents deploy staging
|
|
213
|
+
|
|
214
|
+
# Step 2: Verify on staging
|
|
215
|
+
proagents test smoke --env staging
|
|
216
|
+
proagents test e2e --env staging
|
|
217
|
+
|
|
218
|
+
# Step 3: Request production deployment
|
|
219
|
+
proagents deploy production --request-approval
|
|
220
|
+
|
|
221
|
+
# Output:
|
|
222
|
+
# Production Deployment Approval Request
|
|
223
|
+
# ──────────────────────────────────────
|
|
224
|
+
# Feature: user-authentication
|
|
225
|
+
# Version: v2.3.0
|
|
226
|
+
#
|
|
227
|
+
# Pre-deployment Checks:
|
|
228
|
+
# ✅ Staging verified
|
|
229
|
+
# ✅ Load test passed
|
|
230
|
+
# ✅ Security scan clear
|
|
231
|
+
#
|
|
232
|
+
# Approvers Notified:
|
|
233
|
+
# - @tech-lead-1
|
|
234
|
+
# - @tech-lead-2
|
|
235
|
+
# - @devops-team
|
|
236
|
+
#
|
|
237
|
+
# Required: 2 approvals
|
|
238
|
+
# Timeout: 48 hours
|
|
239
|
+
|
|
240
|
+
# Step 4: Tech lead approves
|
|
241
|
+
proagents approval approve deploy/production/v2.3.0 --role tech-lead
|
|
242
|
+
|
|
243
|
+
# Step 5: DevOps approves
|
|
244
|
+
proagents approval approve deploy/production/v2.3.0 --role devops
|
|
245
|
+
|
|
246
|
+
# Step 6: Deployment proceeds
|
|
247
|
+
# Output:
|
|
248
|
+
# ✅ All approvals received (2/2)
|
|
249
|
+
# 🚀 Starting production deployment...
|
|
250
|
+
```
|
|
251
|
+
|
|
252
|
+
---
|
|
253
|
+
|
|
254
|
+
## Example 4: Conditional Approval Rules
|
|
255
|
+
|
|
256
|
+
Different approval requirements based on what changed.
|
|
257
|
+
|
|
258
|
+
### Configuration
|
|
259
|
+
|
|
260
|
+
```yaml
|
|
261
|
+
approvals:
|
|
262
|
+
enabled: true
|
|
263
|
+
|
|
264
|
+
conditional_rules:
|
|
265
|
+
# High-risk paths need extra approval
|
|
266
|
+
- name: "security_changes"
|
|
267
|
+
condition:
|
|
268
|
+
paths:
|
|
269
|
+
- "src/auth/**"
|
|
270
|
+
- "src/security/**"
|
|
271
|
+
- "src/middleware/auth*"
|
|
272
|
+
stages:
|
|
273
|
+
- name: "security_review"
|
|
274
|
+
approvers: ["@team/security"]
|
|
275
|
+
required: true
|
|
276
|
+
|
|
277
|
+
# Database changes need DBA review
|
|
278
|
+
- name: "database_changes"
|
|
279
|
+
condition:
|
|
280
|
+
paths:
|
|
281
|
+
- "prisma/schema.prisma"
|
|
282
|
+
- "migrations/**"
|
|
283
|
+
stages:
|
|
284
|
+
- name: "dba_review"
|
|
285
|
+
approvers: ["@team/dbas"]
|
|
286
|
+
required: true
|
|
287
|
+
|
|
288
|
+
# API changes need backend lead
|
|
289
|
+
- name: "api_changes"
|
|
290
|
+
condition:
|
|
291
|
+
paths:
|
|
292
|
+
- "src/api/**"
|
|
293
|
+
- "openapi.yaml"
|
|
294
|
+
stages:
|
|
295
|
+
- name: "api_review"
|
|
296
|
+
approvers: ["@team/backend-leads"]
|
|
297
|
+
required: true
|
|
298
|
+
|
|
299
|
+
# Large changes need additional review
|
|
300
|
+
- name: "large_changes"
|
|
301
|
+
condition:
|
|
302
|
+
files_changed: ">20"
|
|
303
|
+
lines_changed: ">500"
|
|
304
|
+
stages:
|
|
305
|
+
- name: "architecture_review"
|
|
306
|
+
approvers: ["@team/architects"]
|
|
307
|
+
required: true
|
|
308
|
+
|
|
309
|
+
# Small changes - simplified approval
|
|
310
|
+
- name: "small_changes"
|
|
311
|
+
condition:
|
|
312
|
+
files_changed: "<5"
|
|
313
|
+
lines_changed: "<50"
|
|
314
|
+
not_matching: ["security_changes", "database_changes"]
|
|
315
|
+
stages:
|
|
316
|
+
- name: "peer_review"
|
|
317
|
+
approvers: ["@team/developers"]
|
|
318
|
+
required: true
|
|
319
|
+
self_approve: true
|
|
320
|
+
```
|
|
321
|
+
|
|
322
|
+
### How It Works
|
|
323
|
+
|
|
324
|
+
```bash
|
|
325
|
+
# Feature that touches auth code
|
|
326
|
+
proagents approval analyze feature/auth-improvements
|
|
327
|
+
|
|
328
|
+
# Output:
|
|
329
|
+
# Approval Analysis: feature/auth-improvements
|
|
330
|
+
# ────────────────────────────────────────────
|
|
331
|
+
# Files Changed: 8
|
|
332
|
+
# Lines Changed: 234
|
|
333
|
+
#
|
|
334
|
+
# Matching Rules:
|
|
335
|
+
# ✓ security_changes (touching src/auth/)
|
|
336
|
+
# ✓ api_changes (touching src/api/auth/)
|
|
337
|
+
#
|
|
338
|
+
# Required Approvals:
|
|
339
|
+
# 1. security_review - @team/security
|
|
340
|
+
# 2. api_review - @team/backend-leads
|
|
341
|
+
# 3. standard tech_review - @team/tech-leads
|
|
342
|
+
|
|
343
|
+
# Small documentation change
|
|
344
|
+
proagents approval analyze feature/update-docs
|
|
345
|
+
|
|
346
|
+
# Output:
|
|
347
|
+
# Approval Analysis: feature/update-docs
|
|
348
|
+
# ────────────────────────────────────────────
|
|
349
|
+
# Files Changed: 2
|
|
350
|
+
# Lines Changed: 25
|
|
351
|
+
#
|
|
352
|
+
# Matching Rules:
|
|
353
|
+
# ✓ small_changes (< 5 files, < 50 lines)
|
|
354
|
+
#
|
|
355
|
+
# Required Approvals:
|
|
356
|
+
# 1. peer_review - @team/developers (self-approve allowed)
|
|
357
|
+
```
|
|
358
|
+
|
|
359
|
+
---
|
|
360
|
+
|
|
361
|
+
## Example 5: Emergency Bypass Workflow
|
|
362
|
+
|
|
363
|
+
For critical production issues that need immediate deployment.
|
|
364
|
+
|
|
365
|
+
### Configuration
|
|
366
|
+
|
|
367
|
+
```yaml
|
|
368
|
+
approvals:
|
|
369
|
+
enabled: true
|
|
370
|
+
|
|
371
|
+
emergency_bypass:
|
|
372
|
+
enabled: true
|
|
373
|
+
|
|
374
|
+
# Who can trigger bypass
|
|
375
|
+
authorized_users:
|
|
376
|
+
- "@team/tech-leads"
|
|
377
|
+
- "@team/on-call"
|
|
378
|
+
- "@vp-engineering"
|
|
379
|
+
|
|
380
|
+
# Required information
|
|
381
|
+
require_justification: true
|
|
382
|
+
require_incident_id: true
|
|
383
|
+
|
|
384
|
+
# Post-bypass requirements
|
|
385
|
+
post_bypass:
|
|
386
|
+
retrospective_required: true
|
|
387
|
+
retrospective_deadline: "48h"
|
|
388
|
+
approval_required_after: true # Still need approval post-facto
|
|
389
|
+
|
|
390
|
+
# Audit
|
|
391
|
+
audit:
|
|
392
|
+
log_all_bypasses: true
|
|
393
|
+
notify:
|
|
394
|
+
- "@team/engineering-leadership"
|
|
395
|
+
- "#security-alerts"
|
|
396
|
+
```
|
|
397
|
+
|
|
398
|
+
### Emergency Bypass Workflow
|
|
399
|
+
|
|
400
|
+
```bash
|
|
401
|
+
# During incident: Critical production bug found
|
|
402
|
+
# Normal approval would take too long
|
|
403
|
+
|
|
404
|
+
# Step 1: Initiate emergency bypass
|
|
405
|
+
proagents approval bypass --reason "critical" --incident INC-12345
|
|
406
|
+
|
|
407
|
+
# Output:
|
|
408
|
+
# ⚠️ EMERGENCY BYPASS REQUESTED
|
|
409
|
+
# ────────────────────────────────
|
|
410
|
+
# User: @senior-dev
|
|
411
|
+
# Time: 2024-01-15 03:30:00 UTC
|
|
412
|
+
# Incident: INC-12345
|
|
413
|
+
#
|
|
414
|
+
# Please provide justification:
|
|
415
|
+
> Production payments failing for all users. Fix identified and tested locally.
|
|
416
|
+
|
|
417
|
+
# Verification:
|
|
418
|
+
# ✅ User is authorized for bypass
|
|
419
|
+
# ✅ Justification provided
|
|
420
|
+
# ✅ Incident ID linked
|
|
421
|
+
#
|
|
422
|
+
# ⚠️ BYPASS APPROVED - Proceed with caution
|
|
423
|
+
#
|
|
424
|
+
# Required Actions:
|
|
425
|
+
# 1. Deploy fix immediately
|
|
426
|
+
# 2. Complete retrospective within 48 hours
|
|
427
|
+
# 3. Obtain approval post-deployment
|
|
428
|
+
|
|
429
|
+
# Step 2: Deploy without normal approval
|
|
430
|
+
proagents deploy production --emergency
|
|
431
|
+
|
|
432
|
+
# Step 3: After incident - complete retrospective
|
|
433
|
+
proagents bypass retrospective INC-12345
|
|
434
|
+
|
|
435
|
+
# Step 4: Post-deployment approval
|
|
436
|
+
proagents approval request --bypass-followup INC-12345
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
### Bypass Audit Log
|
|
440
|
+
|
|
441
|
+
```
|
|
442
|
+
┌─────────────────────────────────────────────────────────────┐
|
|
443
|
+
│ Emergency Bypass Audit Log │
|
|
444
|
+
├─────────────────────────────────────────────────────────────┤
|
|
445
|
+
│ Bypass ID: BYP-2024-0015 │
|
|
446
|
+
│ Time: 2024-01-15 03:30:00 UTC │
|
|
447
|
+
│ User: @senior-dev │
|
|
448
|
+
│ Incident: INC-12345 │
|
|
449
|
+
│ │
|
|
450
|
+
│ Justification: │
|
|
451
|
+
│ "Production payments failing for all users. Fix identified │
|
|
452
|
+
│ and tested locally. Estimated impact: $50K/hour" │
|
|
453
|
+
│ │
|
|
454
|
+
│ Changes Deployed: │
|
|
455
|
+
│ - src/services/payment.ts (15 lines) │
|
|
456
|
+
│ - src/lib/stripe.ts (3 lines) │
|
|
457
|
+
│ │
|
|
458
|
+
│ Post-Bypass Status: │
|
|
459
|
+
│ ✅ Retrospective completed: 2024-01-16 09:00 UTC │
|
|
460
|
+
│ ✅ Post-approval received: 2024-01-16 10:30 UTC │
|
|
461
|
+
│ │
|
|
462
|
+
│ Root Cause: Stripe API version mismatch │
|
|
463
|
+
│ Prevention: Added API version pinning │
|
|
464
|
+
└─────────────────────────────────────────────────────────────┘
|
|
465
|
+
```
|
|
466
|
+
|
|
467
|
+
---
|
|
468
|
+
|
|
469
|
+
## Example 6: Team-Based Approval Routing
|
|
470
|
+
|
|
471
|
+
Route approvals to appropriate teams based on expertise.
|
|
472
|
+
|
|
473
|
+
### Configuration
|
|
474
|
+
|
|
475
|
+
```yaml
|
|
476
|
+
approvals:
|
|
477
|
+
enabled: true
|
|
478
|
+
|
|
479
|
+
# Define teams and their domains
|
|
480
|
+
teams:
|
|
481
|
+
frontend:
|
|
482
|
+
members: ["@alice", "@bob", "@charlie"]
|
|
483
|
+
domains:
|
|
484
|
+
- "src/components/**"
|
|
485
|
+
- "src/pages/**"
|
|
486
|
+
- "src/styles/**"
|
|
487
|
+
|
|
488
|
+
backend:
|
|
489
|
+
members: ["@dave", "@eve", "@frank"]
|
|
490
|
+
domains:
|
|
491
|
+
- "src/api/**"
|
|
492
|
+
- "src/services/**"
|
|
493
|
+
- "src/models/**"
|
|
494
|
+
|
|
495
|
+
infrastructure:
|
|
496
|
+
members: ["@grace", "@henry"]
|
|
497
|
+
domains:
|
|
498
|
+
- "docker/**"
|
|
499
|
+
- "terraform/**"
|
|
500
|
+
- ".github/**"
|
|
501
|
+
- "k8s/**"
|
|
502
|
+
|
|
503
|
+
security:
|
|
504
|
+
members: ["@ivan", "@julia"]
|
|
505
|
+
domains:
|
|
506
|
+
- "src/auth/**"
|
|
507
|
+
- "src/middleware/security*"
|
|
508
|
+
|
|
509
|
+
# Auto-route based on changes
|
|
510
|
+
auto_routing:
|
|
511
|
+
enabled: true
|
|
512
|
+
rules:
|
|
513
|
+
- match: "domains"
|
|
514
|
+
assign: "team"
|
|
515
|
+
require: 1
|
|
516
|
+
|
|
517
|
+
- match: "cross_domain" # Changes span multiple domains
|
|
518
|
+
assign: ["primary_domain_team", "@team/tech-leads"]
|
|
519
|
+
require: 2
|
|
520
|
+
```
|
|
521
|
+
|
|
522
|
+
### Auto-Routing in Action
|
|
523
|
+
|
|
524
|
+
```bash
|
|
525
|
+
# Feature changes frontend components
|
|
526
|
+
proagents approval request feature/new-dashboard
|
|
527
|
+
|
|
528
|
+
# Output:
|
|
529
|
+
# Auto-Routing Analysis
|
|
530
|
+
# ─────────────────────
|
|
531
|
+
# Changes:
|
|
532
|
+
# - src/components/Dashboard.tsx
|
|
533
|
+
# - src/components/Chart.tsx
|
|
534
|
+
# - src/styles/dashboard.css
|
|
535
|
+
#
|
|
536
|
+
# Detected Domains: frontend
|
|
537
|
+
#
|
|
538
|
+
# Auto-assigned Reviewers:
|
|
539
|
+
# - @alice (frontend)
|
|
540
|
+
# - @bob (frontend)
|
|
541
|
+
# - @charlie (frontend)
|
|
542
|
+
#
|
|
543
|
+
# Required: 1 approval from frontend team
|
|
544
|
+
|
|
545
|
+
# Feature changes both frontend and backend
|
|
546
|
+
proagents approval request feature/full-stack-feature
|
|
547
|
+
|
|
548
|
+
# Output:
|
|
549
|
+
# Auto-Routing Analysis
|
|
550
|
+
# ─────────────────────
|
|
551
|
+
# Changes:
|
|
552
|
+
# - src/components/UserProfile.tsx
|
|
553
|
+
# - src/api/users.ts
|
|
554
|
+
# - src/services/UserService.ts
|
|
555
|
+
#
|
|
556
|
+
# Detected Domains: frontend, backend (cross-domain)
|
|
557
|
+
#
|
|
558
|
+
# Auto-assigned Reviewers:
|
|
559
|
+
# - @alice (frontend - primary based on file count)
|
|
560
|
+
# - @dave (backend)
|
|
561
|
+
# - @team/tech-leads (cross-domain)
|
|
562
|
+
#
|
|
563
|
+
# Required: 2 approvals
|
|
564
|
+
```
|
|
565
|
+
|
|
566
|
+
---
|
|
567
|
+
|
|
568
|
+
## Example 7: Time-Based Approval Rules
|
|
569
|
+
|
|
570
|
+
Different approval rules based on timing.
|
|
571
|
+
|
|
572
|
+
### Configuration
|
|
573
|
+
|
|
574
|
+
```yaml
|
|
575
|
+
approvals:
|
|
576
|
+
enabled: true
|
|
577
|
+
|
|
578
|
+
time_based_rules:
|
|
579
|
+
# Freeze periods
|
|
580
|
+
freezes:
|
|
581
|
+
- name: "code_freeze"
|
|
582
|
+
schedule:
|
|
583
|
+
- "friday 17:00 - monday 09:00" # Weekends
|
|
584
|
+
- "december 20 - january 2" # Holiday freeze
|
|
585
|
+
actions:
|
|
586
|
+
- block_deployments: true
|
|
587
|
+
- allow_emergency: true
|
|
588
|
+
- require_bypass: ["@team/on-call", "@vp-engineering"]
|
|
589
|
+
|
|
590
|
+
# Business hours - standard process
|
|
591
|
+
business_hours:
|
|
592
|
+
schedule: "monday-friday 09:00-17:00"
|
|
593
|
+
timezone: "America/New_York"
|
|
594
|
+
rules:
|
|
595
|
+
production_deploy:
|
|
596
|
+
required: true
|
|
597
|
+
approvers: ["@team/tech-leads"]
|
|
598
|
+
min_approvals: 1
|
|
599
|
+
|
|
600
|
+
# Off-hours - stricter requirements
|
|
601
|
+
off_hours:
|
|
602
|
+
rules:
|
|
603
|
+
production_deploy:
|
|
604
|
+
required: true
|
|
605
|
+
approvers:
|
|
606
|
+
- "@team/tech-leads"
|
|
607
|
+
- "@team/on-call"
|
|
608
|
+
min_approvals: 2
|
|
609
|
+
additional_notification: ["@team/engineering-leadership"]
|
|
610
|
+
|
|
611
|
+
# Pre-release freeze
|
|
612
|
+
release_freeze:
|
|
613
|
+
trigger: "24h before scheduled_release"
|
|
614
|
+
rules:
|
|
615
|
+
all_changes:
|
|
616
|
+
block: true
|
|
617
|
+
allow: "release_fixes_only"
|
|
618
|
+
require_approval: ["@release-manager"]
|
|
619
|
+
```
|
|
620
|
+
|
|
621
|
+
### Time-Based Behavior
|
|
622
|
+
|
|
623
|
+
```bash
|
|
624
|
+
# Attempt deployment on Saturday
|
|
625
|
+
proagents deploy production
|
|
626
|
+
|
|
627
|
+
# Output:
|
|
628
|
+
# ⚠️ DEPLOYMENT BLOCKED
|
|
629
|
+
# ─────────────────────────
|
|
630
|
+
# Reason: Code freeze in effect
|
|
631
|
+
# Period: Friday 17:00 - Monday 09:00
|
|
632
|
+
#
|
|
633
|
+
# Options:
|
|
634
|
+
# 1. Wait until Monday 09:00 EST
|
|
635
|
+
# 2. Request emergency bypass (requires @team/on-call approval)
|
|
636
|
+
#
|
|
637
|
+
# To request bypass:
|
|
638
|
+
# proagents approval bypass --freeze-override
|
|
639
|
+
|
|
640
|
+
# Deployment during off-hours (Tuesday 11pm)
|
|
641
|
+
proagents deploy production
|
|
642
|
+
|
|
643
|
+
# Output:
|
|
644
|
+
# ⚠️ Off-Hours Deployment
|
|
645
|
+
# ────────────────────────
|
|
646
|
+
# Current time: Tuesday 23:00 EST (off-hours)
|
|
647
|
+
#
|
|
648
|
+
# Additional requirements:
|
|
649
|
+
# - 2 approvals required (instead of 1)
|
|
650
|
+
# - On-call team notified
|
|
651
|
+
# - Engineering leadership notified
|
|
652
|
+
#
|
|
653
|
+
# Proceed with approval request? [y/N]
|
|
654
|
+
```
|
|
655
|
+
|
|
656
|
+
---
|
|
657
|
+
|
|
658
|
+
## Example 8: Approval with Automated Checks
|
|
659
|
+
|
|
660
|
+
Combine manual approval with automated verification.
|
|
661
|
+
|
|
662
|
+
### Configuration
|
|
663
|
+
|
|
664
|
+
```yaml
|
|
665
|
+
approvals:
|
|
666
|
+
enabled: true
|
|
667
|
+
|
|
668
|
+
automated_checks:
|
|
669
|
+
# Checks must pass before approval can be granted
|
|
670
|
+
pre_approval:
|
|
671
|
+
- name: "tests_pass"
|
|
672
|
+
type: "ci_status"
|
|
673
|
+
required: true
|
|
674
|
+
|
|
675
|
+
- name: "coverage_threshold"
|
|
676
|
+
type: "metric"
|
|
677
|
+
metric: "test_coverage"
|
|
678
|
+
threshold: 80
|
|
679
|
+
required: true
|
|
680
|
+
|
|
681
|
+
- name: "security_scan"
|
|
682
|
+
type: "ci_status"
|
|
683
|
+
job: "security-scan"
|
|
684
|
+
required: true
|
|
685
|
+
|
|
686
|
+
- name: "build_success"
|
|
687
|
+
type: "ci_status"
|
|
688
|
+
job: "build"
|
|
689
|
+
required: true
|
|
690
|
+
|
|
691
|
+
# Checks displayed to approver
|
|
692
|
+
informational:
|
|
693
|
+
- name: "performance_impact"
|
|
694
|
+
type: "metric"
|
|
695
|
+
metric: "bundle_size_delta"
|
|
696
|
+
display: true
|
|
697
|
+
|
|
698
|
+
- name: "dependency_changes"
|
|
699
|
+
type: "file_diff"
|
|
700
|
+
files: ["package.json", "package-lock.json"]
|
|
701
|
+
display: true
|
|
702
|
+
|
|
703
|
+
feature_approval:
|
|
704
|
+
stages:
|
|
705
|
+
- name: "tech_review"
|
|
706
|
+
approvers: ["@team/tech-leads"]
|
|
707
|
+
required: true
|
|
708
|
+
blocked_until:
|
|
709
|
+
- "tests_pass"
|
|
710
|
+
- "coverage_threshold"
|
|
711
|
+
- "security_scan"
|
|
712
|
+
- "build_success"
|
|
713
|
+
```
|
|
714
|
+
|
|
715
|
+
### Approval with Checks
|
|
716
|
+
|
|
717
|
+
```bash
|
|
718
|
+
# Request approval
|
|
719
|
+
proagents approval request
|
|
720
|
+
|
|
721
|
+
# Output:
|
|
722
|
+
# Approval Request: feature/payment-integration
|
|
723
|
+
# ─────────────────────────────────────────────
|
|
724
|
+
#
|
|
725
|
+
# Automated Checks:
|
|
726
|
+
# ✅ tests_pass - All 234 tests passing
|
|
727
|
+
# ✅ coverage_threshold - 85% (threshold: 80%)
|
|
728
|
+
# ✅ security_scan - No vulnerabilities found
|
|
729
|
+
# ✅ build_success - Build completed in 2m 34s
|
|
730
|
+
#
|
|
731
|
+
# Informational:
|
|
732
|
+
# ℹ️ performance_impact - Bundle size: +12KB (+2.4%)
|
|
733
|
+
# ℹ️ dependency_changes - 2 packages updated
|
|
734
|
+
# - stripe: 10.0.0 → 11.0.0
|
|
735
|
+
# - zod: 3.20.0 → 3.21.0
|
|
736
|
+
#
|
|
737
|
+
# Approval Status:
|
|
738
|
+
# Stage: tech_review - ⏳ Pending
|
|
739
|
+
# Approvers notified: @tech-lead-1, @tech-lead-2
|
|
740
|
+
#
|
|
741
|
+
# All automated checks passed ✅
|
|
742
|
+
# Ready for manual review
|
|
743
|
+
|
|
744
|
+
# If checks fail:
|
|
745
|
+
# Output:
|
|
746
|
+
# ⚠️ Approval Blocked
|
|
747
|
+
# ───────────────────
|
|
748
|
+
# The following checks must pass before approval:
|
|
749
|
+
#
|
|
750
|
+
# ❌ coverage_threshold - 72% (threshold: 80%)
|
|
751
|
+
# ❌ security_scan - 1 high severity issue found
|
|
752
|
+
#
|
|
753
|
+
# Fix these issues and push changes to continue.
|
|
754
|
+
```
|
|
755
|
+
|
|
756
|
+
---
|
|
757
|
+
|
|
758
|
+
## Example 9: Delegated Approval
|
|
759
|
+
|
|
760
|
+
Allow temporary delegation of approval authority.
|
|
761
|
+
|
|
762
|
+
### Configuration
|
|
763
|
+
|
|
764
|
+
```yaml
|
|
765
|
+
approvals:
|
|
766
|
+
delegation:
|
|
767
|
+
enabled: true
|
|
768
|
+
|
|
769
|
+
# Rules for delegation
|
|
770
|
+
rules:
|
|
771
|
+
- role: "tech_lead"
|
|
772
|
+
can_delegate_to: ["senior_developers"]
|
|
773
|
+
max_duration: "14d"
|
|
774
|
+
require_reason: true
|
|
775
|
+
|
|
776
|
+
- role: "engineering_manager"
|
|
777
|
+
can_delegate_to: ["tech_leads"]
|
|
778
|
+
max_duration: "30d"
|
|
779
|
+
require_reason: true
|
|
780
|
+
|
|
781
|
+
# Audit
|
|
782
|
+
audit:
|
|
783
|
+
log_all_delegations: true
|
|
784
|
+
notify_on_delegation: true
|
|
785
|
+
```
|
|
786
|
+
|
|
787
|
+
### Delegation Workflow
|
|
788
|
+
|
|
789
|
+
```bash
|
|
790
|
+
# Tech lead going on vacation, delegates authority
|
|
791
|
+
proagents approval delegate --to @senior-dev --duration 7d --reason "Vacation Jan 15-22"
|
|
792
|
+
|
|
793
|
+
# Output:
|
|
794
|
+
# Approval Authority Delegated
|
|
795
|
+
# ────────────────────────────
|
|
796
|
+
# From: @tech-lead
|
|
797
|
+
# To: @senior-dev
|
|
798
|
+
# Duration: 7 days (Jan 15 - Jan 22)
|
|
799
|
+
# Reason: Vacation Jan 15-22
|
|
800
|
+
#
|
|
801
|
+
# @senior-dev can now:
|
|
802
|
+
# ✅ Approve feature reviews
|
|
803
|
+
# ✅ Approve staging deployments
|
|
804
|
+
# ❌ Approve production deployments (not delegatable)
|
|
805
|
+
#
|
|
806
|
+
# Delegation logged and team notified.
|
|
807
|
+
|
|
808
|
+
# During delegation period
|
|
809
|
+
proagents approval status
|
|
810
|
+
|
|
811
|
+
# Output:
|
|
812
|
+
# Current Approvers for tech_review:
|
|
813
|
+
# - @tech-lead (delegated to @senior-dev until Jan 22)
|
|
814
|
+
# - @other-tech-lead
|
|
815
|
+
|
|
816
|
+
# Revoke delegation early
|
|
817
|
+
proagents approval delegate revoke --from @senior-dev
|
|
818
|
+
|
|
819
|
+
# Output:
|
|
820
|
+
# Delegation Revoked
|
|
821
|
+
# ──────────────────
|
|
822
|
+
# @senior-dev's delegated authority has been revoked.
|
|
823
|
+
# @tech-lead's approval authority is restored.
|
|
824
|
+
```
|
|
825
|
+
|
|
826
|
+
---
|
|
827
|
+
|
|
828
|
+
## Commands Quick Reference
|
|
829
|
+
|
|
830
|
+
| Command | Description |
|
|
831
|
+
|---------|-------------|
|
|
832
|
+
| `proagents approval request` | Request approval for current feature |
|
|
833
|
+
| `proagents approval status` | Check approval status |
|
|
834
|
+
| `proagents approval approve <id>` | Approve a request |
|
|
835
|
+
| `proagents approval reject <id>` | Reject with feedback |
|
|
836
|
+
| `proagents approval bypass` | Emergency bypass |
|
|
837
|
+
| `proagents approval delegate` | Delegate authority |
|
|
838
|
+
| `proagents approval analyze` | Analyze approval requirements |
|
|
839
|
+
| `proagents approval history` | View approval history |
|
|
840
|
+
|
|
841
|
+
---
|
|
842
|
+
|
|
843
|
+
## Best Practices
|
|
844
|
+
|
|
845
|
+
1. **Right-size approvals** - Don't require too many approvals for simple changes
|
|
846
|
+
2. **Use conditional rules** - Stricter rules for risky changes, simpler for safe ones
|
|
847
|
+
3. **Enable automation** - Combine automated checks with manual review
|
|
848
|
+
4. **Have bypass procedures** - Emergencies happen, plan for them
|
|
849
|
+
5. **Audit everything** - Keep records of all approvals and bypasses
|
|
850
|
+
6. **Delegate wisely** - Allow delegation for coverage, track it
|
|
851
|
+
7. **Review and iterate** - Regularly review approval rules for effectiveness
|
|
852
|
+
|
|
853
|
+
---
|
|
854
|
+
|
|
855
|
+
## Next Steps
|
|
856
|
+
|
|
857
|
+
- [Approval Configuration](./approval-config.md)
|
|
858
|
+
- [Emergency Bypass](./emergency-bypass.md)
|
|
859
|
+
- [Notifications Setup](./notifications.md)
|