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,478 @@
|
|
|
1
|
+
# Database Migration Workflow
|
|
2
|
+
|
|
3
|
+
Safe and reliable database schema changes.
|
|
4
|
+
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
## Overview
|
|
8
|
+
|
|
9
|
+
Database migrations should be:
|
|
10
|
+
- **Versioned** - Track all changes
|
|
11
|
+
- **Reversible** - Always have rollback
|
|
12
|
+
- **Tested** - Verify before production
|
|
13
|
+
- **Documented** - Clear change history
|
|
14
|
+
|
|
15
|
+
---
|
|
16
|
+
|
|
17
|
+
## Migration File Structure
|
|
18
|
+
|
|
19
|
+
```
|
|
20
|
+
/migrations/
|
|
21
|
+
├── 001_initial_schema.sql
|
|
22
|
+
├── 002_add_users_table.sql
|
|
23
|
+
├── 003_add_user_email_index.sql
|
|
24
|
+
├── 004_add_preferences_column.sql
|
|
25
|
+
├── rollback/
|
|
26
|
+
│ ├── 001_rollback.sql
|
|
27
|
+
│ ├── 002_rollback.sql
|
|
28
|
+
│ ├── 003_rollback.sql
|
|
29
|
+
│ └── 004_rollback.sql
|
|
30
|
+
└── seeds/
|
|
31
|
+
├── development.sql
|
|
32
|
+
└── test.sql
|
|
33
|
+
```
|
|
34
|
+
|
|
35
|
+
---
|
|
36
|
+
|
|
37
|
+
## Migration Naming Convention
|
|
38
|
+
|
|
39
|
+
```
|
|
40
|
+
[VERSION]_[ACTION]_[DESCRIPTION].sql
|
|
41
|
+
|
|
42
|
+
Examples:
|
|
43
|
+
001_create_users_table.sql
|
|
44
|
+
002_add_email_to_users.sql
|
|
45
|
+
003_create_orders_table.sql
|
|
46
|
+
004_add_index_on_users_email.sql
|
|
47
|
+
005_alter_users_add_preferences.sql
|
|
48
|
+
006_drop_legacy_table.sql
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
## Creating Migrations
|
|
54
|
+
|
|
55
|
+
### New Table
|
|
56
|
+
|
|
57
|
+
```sql
|
|
58
|
+
-- migrations/001_create_users_table.sql
|
|
59
|
+
|
|
60
|
+
-- Up Migration
|
|
61
|
+
CREATE TABLE users (
|
|
62
|
+
id UUID PRIMARY KEY DEFAULT gen_random_uuid(),
|
|
63
|
+
email VARCHAR(255) NOT NULL UNIQUE,
|
|
64
|
+
name VARCHAR(255) NOT NULL,
|
|
65
|
+
created_at TIMESTAMP WITH TIME ZONE DEFAULT NOW(),
|
|
66
|
+
updated_at TIMESTAMP WITH TIME ZONE DEFAULT NOW()
|
|
67
|
+
);
|
|
68
|
+
|
|
69
|
+
CREATE INDEX idx_users_email ON users(email);
|
|
70
|
+
|
|
71
|
+
-- Record migration
|
|
72
|
+
INSERT INTO schema_migrations (version, applied_at)
|
|
73
|
+
VALUES ('001', NOW());
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
```sql
|
|
77
|
+
-- migrations/rollback/001_rollback.sql
|
|
78
|
+
|
|
79
|
+
-- Down Migration
|
|
80
|
+
DROP TABLE IF EXISTS users;
|
|
81
|
+
|
|
82
|
+
DELETE FROM schema_migrations WHERE version = '001';
|
|
83
|
+
```
|
|
84
|
+
|
|
85
|
+
### Add Column
|
|
86
|
+
|
|
87
|
+
```sql
|
|
88
|
+
-- migrations/002_add_user_preferences.sql
|
|
89
|
+
|
|
90
|
+
-- Up Migration
|
|
91
|
+
ALTER TABLE users
|
|
92
|
+
ADD COLUMN preferences JSONB DEFAULT '{}';
|
|
93
|
+
|
|
94
|
+
INSERT INTO schema_migrations (version, applied_at)
|
|
95
|
+
VALUES ('002', NOW());
|
|
96
|
+
```
|
|
97
|
+
|
|
98
|
+
```sql
|
|
99
|
+
-- migrations/rollback/002_rollback.sql
|
|
100
|
+
|
|
101
|
+
-- Down Migration
|
|
102
|
+
ALTER TABLE users
|
|
103
|
+
DROP COLUMN IF EXISTS preferences;
|
|
104
|
+
|
|
105
|
+
DELETE FROM schema_migrations WHERE version = '002';
|
|
106
|
+
```
|
|
107
|
+
|
|
108
|
+
### Add Index
|
|
109
|
+
|
|
110
|
+
```sql
|
|
111
|
+
-- migrations/003_add_created_at_index.sql
|
|
112
|
+
|
|
113
|
+
-- Up Migration (CONCURRENTLY for zero-downtime)
|
|
114
|
+
CREATE INDEX CONCURRENTLY idx_users_created_at
|
|
115
|
+
ON users(created_at);
|
|
116
|
+
|
|
117
|
+
INSERT INTO schema_migrations (version, applied_at)
|
|
118
|
+
VALUES ('003', NOW());
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
```sql
|
|
122
|
+
-- migrations/rollback/003_rollback.sql
|
|
123
|
+
|
|
124
|
+
-- Down Migration
|
|
125
|
+
DROP INDEX IF EXISTS idx_users_created_at;
|
|
126
|
+
|
|
127
|
+
DELETE FROM schema_migrations WHERE version = '003';
|
|
128
|
+
```
|
|
129
|
+
|
|
130
|
+
### Data Migration
|
|
131
|
+
|
|
132
|
+
```sql
|
|
133
|
+
-- migrations/004_backfill_user_status.sql
|
|
134
|
+
|
|
135
|
+
-- Up Migration
|
|
136
|
+
-- First, add the column
|
|
137
|
+
ALTER TABLE users ADD COLUMN status VARCHAR(20);
|
|
138
|
+
|
|
139
|
+
-- Then, backfill existing data
|
|
140
|
+
UPDATE users SET status = 'active' WHERE status IS NULL;
|
|
141
|
+
|
|
142
|
+
-- Finally, add constraint
|
|
143
|
+
ALTER TABLE users ALTER COLUMN status SET NOT NULL;
|
|
144
|
+
ALTER TABLE users ALTER COLUMN status SET DEFAULT 'active';
|
|
145
|
+
|
|
146
|
+
INSERT INTO schema_migrations (version, applied_at)
|
|
147
|
+
VALUES ('004', NOW());
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
152
|
+
## Migration Safety Rules
|
|
153
|
+
|
|
154
|
+
### Risk Assessment
|
|
155
|
+
|
|
156
|
+
| Change Type | Risk Level | Approach |
|
|
157
|
+
|-------------|------------|----------|
|
|
158
|
+
| Add table | Low | Standard migration |
|
|
159
|
+
| Add column (nullable) | Low | Standard migration |
|
|
160
|
+
| Add column (NOT NULL) | Medium | Add nullable → backfill → add constraint |
|
|
161
|
+
| Add index | Low-Medium | Use CONCURRENTLY |
|
|
162
|
+
| Drop column | Medium | Verify no dependencies |
|
|
163
|
+
| Drop table | High | Multiple approvals |
|
|
164
|
+
| Rename column | High | Expand-contract pattern |
|
|
165
|
+
| Change data type | High | Create new column, migrate |
|
|
166
|
+
|
|
167
|
+
### Safety Checklist
|
|
168
|
+
|
|
169
|
+
```markdown
|
|
170
|
+
## Migration Safety Checklist
|
|
171
|
+
|
|
172
|
+
- [ ] Reviewed by DBA or senior dev
|
|
173
|
+
- [ ] Tested on copy of production data
|
|
174
|
+
- [ ] Rollback script created and tested
|
|
175
|
+
- [ ] Estimated execution time acceptable
|
|
176
|
+
- [ ] Lock time acceptable (for ALTER)
|
|
177
|
+
- [ ] Disk space sufficient
|
|
178
|
+
- [ ] Backup taken before execution
|
|
179
|
+
- [ ] Monitoring alerts configured
|
|
180
|
+
- [ ] Rollback procedure documented
|
|
181
|
+
```
|
|
182
|
+
|
|
183
|
+
---
|
|
184
|
+
|
|
185
|
+
## Zero-Downtime Migrations
|
|
186
|
+
|
|
187
|
+
### Expand-Contract Pattern
|
|
188
|
+
|
|
189
|
+
For breaking changes (rename, type change):
|
|
190
|
+
|
|
191
|
+
**Phase 1: Expand**
|
|
192
|
+
```sql
|
|
193
|
+
-- Add new column
|
|
194
|
+
ALTER TABLE users ADD COLUMN email_new VARCHAR(255);
|
|
195
|
+
|
|
196
|
+
-- Copy existing data
|
|
197
|
+
UPDATE users SET email_new = email;
|
|
198
|
+
|
|
199
|
+
-- Add constraint
|
|
200
|
+
ALTER TABLE users ALTER COLUMN email_new SET NOT NULL;
|
|
201
|
+
CREATE UNIQUE INDEX idx_users_email_new ON users(email_new);
|
|
202
|
+
```
|
|
203
|
+
|
|
204
|
+
**Phase 2: Migrate Application**
|
|
205
|
+
```javascript
|
|
206
|
+
// Update app to write to both columns
|
|
207
|
+
user.email = value;
|
|
208
|
+
user.email_new = value;
|
|
209
|
+
|
|
210
|
+
// Then update to read from new column
|
|
211
|
+
const email = user.email_new;
|
|
212
|
+
```
|
|
213
|
+
|
|
214
|
+
**Phase 3: Contract**
|
|
215
|
+
```sql
|
|
216
|
+
-- Remove old column (after app fully migrated)
|
|
217
|
+
ALTER TABLE users DROP COLUMN email;
|
|
218
|
+
|
|
219
|
+
-- Rename new column (optional)
|
|
220
|
+
ALTER TABLE users RENAME COLUMN email_new TO email;
|
|
221
|
+
```
|
|
222
|
+
|
|
223
|
+
### Adding NOT NULL Column
|
|
224
|
+
|
|
225
|
+
```sql
|
|
226
|
+
-- Step 1: Add nullable column
|
|
227
|
+
ALTER TABLE users ADD COLUMN phone VARCHAR(20);
|
|
228
|
+
|
|
229
|
+
-- Step 2: Backfill in batches
|
|
230
|
+
DO $$
|
|
231
|
+
DECLARE
|
|
232
|
+
batch_size INT := 1000;
|
|
233
|
+
total_rows INT;
|
|
234
|
+
BEGIN
|
|
235
|
+
SELECT COUNT(*) INTO total_rows FROM users WHERE phone IS NULL;
|
|
236
|
+
|
|
237
|
+
WHILE total_rows > 0 LOOP
|
|
238
|
+
UPDATE users
|
|
239
|
+
SET phone = 'unknown'
|
|
240
|
+
WHERE id IN (
|
|
241
|
+
SELECT id FROM users WHERE phone IS NULL LIMIT batch_size
|
|
242
|
+
);
|
|
243
|
+
|
|
244
|
+
SELECT COUNT(*) INTO total_rows FROM users WHERE phone IS NULL;
|
|
245
|
+
COMMIT;
|
|
246
|
+
END LOOP;
|
|
247
|
+
END $$;
|
|
248
|
+
|
|
249
|
+
-- Step 3: Add constraint
|
|
250
|
+
ALTER TABLE users ALTER COLUMN phone SET NOT NULL;
|
|
251
|
+
ALTER TABLE users ALTER COLUMN phone SET DEFAULT 'unknown';
|
|
252
|
+
```
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
## Running Migrations
|
|
257
|
+
|
|
258
|
+
### Development
|
|
259
|
+
|
|
260
|
+
```bash
|
|
261
|
+
# Using a migration tool (example: migrate)
|
|
262
|
+
migrate -path ./migrations -database "postgres://..." up
|
|
263
|
+
|
|
264
|
+
# Rollback last migration
|
|
265
|
+
migrate -path ./migrations -database "postgres://..." down 1
|
|
266
|
+
|
|
267
|
+
# Go to specific version
|
|
268
|
+
migrate -path ./migrations -database "postgres://..." goto 3
|
|
269
|
+
```
|
|
270
|
+
|
|
271
|
+
### Staging
|
|
272
|
+
|
|
273
|
+
```bash
|
|
274
|
+
# Always take backup first
|
|
275
|
+
pg_dump -h staging-db -d myapp > backup_$(date +%Y%m%d).sql
|
|
276
|
+
|
|
277
|
+
# Run migrations
|
|
278
|
+
migrate -path ./migrations -database "$STAGING_DB_URL" up
|
|
279
|
+
|
|
280
|
+
# Verify
|
|
281
|
+
psql -h staging-db -d myapp -c "SELECT * FROM schema_migrations;"
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
### Production
|
|
285
|
+
|
|
286
|
+
```markdown
|
|
287
|
+
## Production Migration Checklist
|
|
288
|
+
|
|
289
|
+
### Before
|
|
290
|
+
- [ ] Migration tested on staging
|
|
291
|
+
- [ ] Migration tested on production data copy
|
|
292
|
+
- [ ] Backup completed
|
|
293
|
+
- [ ] Rollback script ready
|
|
294
|
+
- [ ] Maintenance window scheduled (if needed)
|
|
295
|
+
- [ ] Team notified
|
|
296
|
+
- [ ] Monitoring dashboard open
|
|
297
|
+
|
|
298
|
+
### Execute
|
|
299
|
+
- [ ] Run migration
|
|
300
|
+
- [ ] Monitor for errors
|
|
301
|
+
- [ ] Check query performance
|
|
302
|
+
- [ ] Verify application works
|
|
303
|
+
|
|
304
|
+
### After
|
|
305
|
+
- [ ] Confirm success
|
|
306
|
+
- [ ] Update documentation
|
|
307
|
+
- [ ] Notify team
|
|
308
|
+
```
|
|
309
|
+
|
|
310
|
+
---
|
|
311
|
+
|
|
312
|
+
## ORM Migrations
|
|
313
|
+
|
|
314
|
+
### Prisma
|
|
315
|
+
|
|
316
|
+
```javascript
|
|
317
|
+
// prisma/schema.prisma
|
|
318
|
+
model User {
|
|
319
|
+
id String @id @default(uuid())
|
|
320
|
+
email String @unique
|
|
321
|
+
name String
|
|
322
|
+
createdAt DateTime @default(now())
|
|
323
|
+
}
|
|
324
|
+
```
|
|
325
|
+
|
|
326
|
+
```bash
|
|
327
|
+
# Create migration
|
|
328
|
+
npx prisma migrate dev --name add_users_table
|
|
329
|
+
|
|
330
|
+
# Apply to production
|
|
331
|
+
npx prisma migrate deploy
|
|
332
|
+
|
|
333
|
+
# Reset (development only)
|
|
334
|
+
npx prisma migrate reset
|
|
335
|
+
```
|
|
336
|
+
|
|
337
|
+
### TypeORM
|
|
338
|
+
|
|
339
|
+
```typescript
|
|
340
|
+
// migrations/1234567890-CreateUsersTable.ts
|
|
341
|
+
export class CreateUsersTable1234567890 implements MigrationInterface {
|
|
342
|
+
public async up(queryRunner: QueryRunner): Promise<void> {
|
|
343
|
+
await queryRunner.query(`
|
|
344
|
+
CREATE TABLE users (
|
|
345
|
+
id UUID PRIMARY KEY DEFAULT uuid_generate_v4(),
|
|
346
|
+
email VARCHAR(255) NOT NULL UNIQUE
|
|
347
|
+
)
|
|
348
|
+
`);
|
|
349
|
+
}
|
|
350
|
+
|
|
351
|
+
public async down(queryRunner: QueryRunner): Promise<void> {
|
|
352
|
+
await queryRunner.query(`DROP TABLE users`);
|
|
353
|
+
}
|
|
354
|
+
}
|
|
355
|
+
```
|
|
356
|
+
|
|
357
|
+
```bash
|
|
358
|
+
# Generate migration
|
|
359
|
+
npm run typeorm migration:generate -- -n CreateUsersTable
|
|
360
|
+
|
|
361
|
+
# Run migrations
|
|
362
|
+
npm run typeorm migration:run
|
|
363
|
+
|
|
364
|
+
# Revert
|
|
365
|
+
npm run typeorm migration:revert
|
|
366
|
+
```
|
|
367
|
+
|
|
368
|
+
### Knex
|
|
369
|
+
|
|
370
|
+
```javascript
|
|
371
|
+
// migrations/001_create_users.js
|
|
372
|
+
exports.up = function(knex) {
|
|
373
|
+
return knex.schema.createTable('users', table => {
|
|
374
|
+
table.uuid('id').primary().defaultTo(knex.raw('gen_random_uuid()'));
|
|
375
|
+
table.string('email').notNullable().unique();
|
|
376
|
+
table.timestamps(true, true);
|
|
377
|
+
});
|
|
378
|
+
};
|
|
379
|
+
|
|
380
|
+
exports.down = function(knex) {
|
|
381
|
+
return knex.schema.dropTable('users');
|
|
382
|
+
};
|
|
383
|
+
```
|
|
384
|
+
|
|
385
|
+
```bash
|
|
386
|
+
# Run migrations
|
|
387
|
+
npx knex migrate:latest
|
|
388
|
+
|
|
389
|
+
# Rollback
|
|
390
|
+
npx knex migrate:rollback
|
|
391
|
+
```
|
|
392
|
+
|
|
393
|
+
---
|
|
394
|
+
|
|
395
|
+
## Migration Testing
|
|
396
|
+
|
|
397
|
+
```markdown
|
|
398
|
+
## Migration Test Plan
|
|
399
|
+
|
|
400
|
+
### Unit Test
|
|
401
|
+
- [ ] Up migration syntax valid
|
|
402
|
+
- [ ] Down migration syntax valid
|
|
403
|
+
- [ ] Migration is idempotent
|
|
404
|
+
|
|
405
|
+
### Integration Test
|
|
406
|
+
- [ ] Run on empty database
|
|
407
|
+
- [ ] Run on database with existing data
|
|
408
|
+
- [ ] Rollback works correctly
|
|
409
|
+
- [ ] Application works after migration
|
|
410
|
+
|
|
411
|
+
### Performance Test
|
|
412
|
+
- [ ] Measure execution time
|
|
413
|
+
- [ ] Check lock duration
|
|
414
|
+
- [ ] Monitor resource usage
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
### Test Script
|
|
418
|
+
|
|
419
|
+
```bash
|
|
420
|
+
#!/bin/bash
|
|
421
|
+
# test-migration.sh
|
|
422
|
+
|
|
423
|
+
# Setup test database
|
|
424
|
+
createdb test_migrations
|
|
425
|
+
|
|
426
|
+
# Run all migrations
|
|
427
|
+
migrate -path ./migrations -database "postgres://localhost/test_migrations" up
|
|
428
|
+
|
|
429
|
+
# Run tests
|
|
430
|
+
npm run test:db
|
|
431
|
+
|
|
432
|
+
# Rollback all
|
|
433
|
+
migrate -path ./migrations -database "postgres://localhost/test_migrations" down -all
|
|
434
|
+
|
|
435
|
+
# Cleanup
|
|
436
|
+
dropdb test_migrations
|
|
437
|
+
```
|
|
438
|
+
|
|
439
|
+
---
|
|
440
|
+
|
|
441
|
+
## Configuration
|
|
442
|
+
|
|
443
|
+
```yaml
|
|
444
|
+
# proagents.config.yaml
|
|
445
|
+
database:
|
|
446
|
+
migrations:
|
|
447
|
+
path: "./migrations"
|
|
448
|
+
tool: "migrate" # migrate, prisma, typeorm, knex
|
|
449
|
+
|
|
450
|
+
safety:
|
|
451
|
+
require_rollback: true
|
|
452
|
+
require_review: true
|
|
453
|
+
auto_backup: true
|
|
454
|
+
test_on_copy: true
|
|
455
|
+
|
|
456
|
+
risk_levels:
|
|
457
|
+
drop_table: "high"
|
|
458
|
+
drop_column: "medium"
|
|
459
|
+
add_index: "low"
|
|
460
|
+
add_column: "low"
|
|
461
|
+
|
|
462
|
+
approvals:
|
|
463
|
+
high_risk: ["dba", "tech-lead"]
|
|
464
|
+
medium_risk: ["senior-dev"]
|
|
465
|
+
low_risk: ["any-dev"]
|
|
466
|
+
```
|
|
467
|
+
|
|
468
|
+
---
|
|
469
|
+
|
|
470
|
+
## Slash Commands
|
|
471
|
+
|
|
472
|
+
| Command | Description |
|
|
473
|
+
|---------|-------------|
|
|
474
|
+
| `/migration-create [name]` | Create new migration |
|
|
475
|
+
| `/migration-run` | Run pending migrations |
|
|
476
|
+
| `/migration-rollback` | Rollback last migration |
|
|
477
|
+
| `/migration-status` | Show migration status |
|
|
478
|
+
| `/migration-test` | Test migration |
|