claude-autopm 2.8.2 → 2.8.3
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/README.md +399 -637
- package/package.json +2 -1
- package/packages/plugin-ai/LICENSE +21 -0
- package/packages/plugin-ai/README.md +316 -0
- package/packages/plugin-ai/agents/anthropic-claude-expert.md +579 -0
- package/packages/plugin-ai/agents/azure-openai-expert.md +1411 -0
- package/packages/plugin-ai/agents/gemini-api-expert.md +880 -0
- package/packages/plugin-ai/agents/google-a2a-expert.md +1445 -0
- package/packages/plugin-ai/agents/huggingface-expert.md +2131 -0
- package/packages/plugin-ai/agents/langchain-expert.md +1427 -0
- package/packages/plugin-ai/agents/langgraph-workflow-expert.md +520 -0
- package/packages/plugin-ai/agents/openai-python-expert.md +1087 -0
- package/packages/plugin-ai/commands/a2a-setup.md +886 -0
- package/packages/plugin-ai/commands/ai-model-deployment.md +481 -0
- package/packages/plugin-ai/commands/anthropic-optimize.md +793 -0
- package/packages/plugin-ai/commands/huggingface-deploy.md +789 -0
- package/packages/plugin-ai/commands/langchain-optimize.md +807 -0
- package/packages/plugin-ai/commands/llm-optimize.md +348 -0
- package/packages/plugin-ai/commands/openai-optimize.md +863 -0
- package/packages/plugin-ai/commands/rag-optimize.md +841 -0
- package/packages/plugin-ai/commands/rag-setup-scaffold.md +382 -0
- package/packages/plugin-ai/package.json +66 -0
- package/packages/plugin-ai/plugin.json +519 -0
- package/packages/plugin-ai/rules/ai-model-standards.md +449 -0
- package/packages/plugin-ai/rules/prompt-engineering-standards.md +509 -0
- package/packages/plugin-ai/scripts/examples/huggingface-inference-example.py +145 -0
- package/packages/plugin-ai/scripts/examples/langchain-rag-example.py +366 -0
- package/packages/plugin-ai/scripts/examples/mlflow-tracking-example.py +224 -0
- package/packages/plugin-ai/scripts/examples/openai-chat-example.py +425 -0
- package/packages/plugin-cloud/README.md +268 -0
- package/packages/plugin-cloud/agents/README.md +55 -0
- package/packages/plugin-cloud/agents/aws-cloud-architect.md +521 -0
- package/packages/plugin-cloud/agents/azure-cloud-architect.md +436 -0
- package/packages/plugin-cloud/agents/gcp-cloud-architect.md +385 -0
- package/packages/plugin-cloud/agents/gcp-cloud-functions-engineer.md +306 -0
- package/packages/plugin-cloud/agents/gemini-api-expert.md +880 -0
- package/packages/plugin-cloud/agents/kubernetes-orchestrator.md +566 -0
- package/packages/plugin-cloud/agents/openai-python-expert.md +1087 -0
- package/packages/plugin-cloud/agents/terraform-infrastructure-expert.md +454 -0
- package/packages/plugin-cloud/commands/cloud-cost-optimize.md +243 -0
- package/packages/plugin-cloud/commands/cloud-validate.md +196 -0
- package/packages/plugin-cloud/commands/infra-deploy.md +38 -0
- package/packages/plugin-cloud/commands/k8s-deploy.md +37 -0
- package/packages/plugin-cloud/commands/ssh-security.md +65 -0
- package/packages/plugin-cloud/commands/traefik-setup.md +65 -0
- package/packages/plugin-cloud/hooks/pre-cloud-deploy.js +456 -0
- package/packages/plugin-cloud/package.json +64 -0
- package/packages/plugin-cloud/plugin.json +338 -0
- package/packages/plugin-cloud/rules/cloud-security-compliance.md +313 -0
- package/packages/plugin-cloud/rules/infrastructure-pipeline.md +128 -0
- package/packages/plugin-cloud/scripts/examples/aws-validate.sh +30 -0
- package/packages/plugin-cloud/scripts/examples/azure-setup.sh +33 -0
- package/packages/plugin-cloud/scripts/examples/gcp-setup.sh +39 -0
- package/packages/plugin-cloud/scripts/examples/k8s-validate.sh +40 -0
- package/packages/plugin-cloud/scripts/examples/terraform-init.sh +26 -0
- package/packages/plugin-core/README.md +274 -0
- package/packages/plugin-core/agents/core/agent-manager.md +296 -0
- package/packages/plugin-core/agents/core/code-analyzer.md +131 -0
- package/packages/plugin-core/agents/core/file-analyzer.md +162 -0
- package/packages/plugin-core/agents/core/test-runner.md +200 -0
- package/packages/plugin-core/commands/code-rabbit.md +128 -0
- package/packages/plugin-core/commands/prompt.md +9 -0
- package/packages/plugin-core/commands/re-init.md +9 -0
- package/packages/plugin-core/hooks/context7-reminder.md +29 -0
- package/packages/plugin-core/hooks/enforce-agents.js +125 -0
- package/packages/plugin-core/hooks/enforce-agents.sh +35 -0
- package/packages/plugin-core/hooks/pre-agent-context7.js +224 -0
- package/packages/plugin-core/hooks/pre-command-context7.js +229 -0
- package/packages/plugin-core/hooks/strict-enforce-agents.sh +39 -0
- package/packages/plugin-core/hooks/test-hook.sh +21 -0
- package/packages/plugin-core/hooks/unified-context7-enforcement.sh +38 -0
- package/packages/plugin-core/package.json +45 -0
- package/packages/plugin-core/plugin.json +387 -0
- package/packages/plugin-core/rules/agent-coordination.md +549 -0
- package/packages/plugin-core/rules/agent-mandatory.md +170 -0
- package/packages/plugin-core/rules/ai-integration-patterns.md +219 -0
- package/packages/plugin-core/rules/command-pipelines.md +208 -0
- package/packages/plugin-core/rules/context-optimization.md +176 -0
- package/packages/plugin-core/rules/context7-enforcement.md +327 -0
- package/packages/plugin-core/rules/datetime.md +122 -0
- package/packages/plugin-core/rules/definition-of-done.md +272 -0
- package/packages/plugin-core/rules/development-environments.md +19 -0
- package/packages/plugin-core/rules/development-workflow.md +198 -0
- package/packages/plugin-core/rules/framework-path-rules.md +180 -0
- package/packages/plugin-core/rules/frontmatter-operations.md +64 -0
- package/packages/plugin-core/rules/git-strategy.md +237 -0
- package/packages/plugin-core/rules/golden-rules.md +181 -0
- package/packages/plugin-core/rules/naming-conventions.md +111 -0
- package/packages/plugin-core/rules/no-pr-workflow.md +183 -0
- package/packages/plugin-core/rules/performance-guidelines.md +403 -0
- package/packages/plugin-core/rules/pipeline-mandatory.md +109 -0
- package/packages/plugin-core/rules/security-checklist.md +318 -0
- package/packages/plugin-core/rules/standard-patterns.md +197 -0
- package/packages/plugin-core/rules/strip-frontmatter.md +85 -0
- package/packages/plugin-core/rules/tdd.enforcement.md +103 -0
- package/packages/plugin-core/rules/use-ast-grep.md +113 -0
- package/packages/plugin-core/scripts/lib/datetime-utils.sh +254 -0
- package/packages/plugin-core/scripts/lib/frontmatter-utils.sh +294 -0
- package/packages/plugin-core/scripts/lib/github-utils.sh +221 -0
- package/packages/plugin-core/scripts/lib/logging-utils.sh +199 -0
- package/packages/plugin-core/scripts/lib/validation-utils.sh +339 -0
- package/packages/plugin-core/scripts/mcp/add.sh +7 -0
- package/packages/plugin-core/scripts/mcp/disable.sh +12 -0
- package/packages/plugin-core/scripts/mcp/enable.sh +12 -0
- package/packages/plugin-core/scripts/mcp/list.sh +7 -0
- package/packages/plugin-core/scripts/mcp/sync.sh +8 -0
- package/packages/plugin-data/README.md +315 -0
- package/packages/plugin-data/agents/airflow-orchestration-expert.md +158 -0
- package/packages/plugin-data/agents/kedro-pipeline-expert.md +304 -0
- package/packages/plugin-data/agents/langgraph-workflow-expert.md +530 -0
- package/packages/plugin-data/commands/airflow-dag-scaffold.md +413 -0
- package/packages/plugin-data/commands/kafka-pipeline-scaffold.md +503 -0
- package/packages/plugin-data/package.json +66 -0
- package/packages/plugin-data/plugin.json +294 -0
- package/packages/plugin-data/rules/data-quality-standards.md +373 -0
- package/packages/plugin-data/rules/etl-pipeline-standards.md +255 -0
- package/packages/plugin-data/scripts/examples/airflow-dag-example.py +245 -0
- package/packages/plugin-data/scripts/examples/dbt-transform-example.sql +238 -0
- package/packages/plugin-data/scripts/examples/kafka-streaming-example.py +257 -0
- package/packages/plugin-data/scripts/examples/pandas-etl-example.py +332 -0
- package/packages/plugin-databases/README.md +330 -0
- package/packages/plugin-databases/agents/README.md +50 -0
- package/packages/plugin-databases/agents/bigquery-expert.md +401 -0
- package/packages/plugin-databases/agents/cosmosdb-expert.md +375 -0
- package/packages/plugin-databases/agents/mongodb-expert.md +407 -0
- package/packages/plugin-databases/agents/postgresql-expert.md +329 -0
- package/packages/plugin-databases/agents/redis-expert.md +74 -0
- package/packages/plugin-databases/commands/db-optimize.md +612 -0
- package/packages/plugin-databases/package.json +60 -0
- package/packages/plugin-databases/plugin.json +237 -0
- package/packages/plugin-databases/rules/database-management-strategy.md +146 -0
- package/packages/plugin-databases/rules/database-pipeline.md +316 -0
- package/packages/plugin-databases/scripts/examples/bigquery-cost-analyze.sh +160 -0
- package/packages/plugin-databases/scripts/examples/cosmosdb-ru-optimize.sh +163 -0
- package/packages/plugin-databases/scripts/examples/mongodb-shard-check.sh +120 -0
- package/packages/plugin-databases/scripts/examples/postgres-index-analyze.sh +95 -0
- package/packages/plugin-databases/scripts/examples/redis-cache-stats.sh +121 -0
- package/packages/plugin-devops/README.md +367 -0
- package/packages/plugin-devops/agents/README.md +52 -0
- package/packages/plugin-devops/agents/azure-devops-specialist.md +308 -0
- package/packages/plugin-devops/agents/docker-containerization-expert.md +298 -0
- package/packages/plugin-devops/agents/github-operations-specialist.md +335 -0
- package/packages/plugin-devops/agents/mcp-context-manager.md +319 -0
- package/packages/plugin-devops/agents/observability-engineer.md +574 -0
- package/packages/plugin-devops/agents/ssh-operations-expert.md +1093 -0
- package/packages/plugin-devops/agents/traefik-proxy-expert.md +444 -0
- package/packages/plugin-devops/commands/ci-pipeline-create.md +581 -0
- package/packages/plugin-devops/commands/docker-optimize.md +493 -0
- package/packages/plugin-devops/commands/workflow-create.md +42 -0
- package/packages/plugin-devops/hooks/pre-docker-build.js +472 -0
- package/packages/plugin-devops/package.json +61 -0
- package/packages/plugin-devops/plugin.json +302 -0
- package/packages/plugin-devops/rules/ci-cd-kubernetes-strategy.md +25 -0
- package/packages/plugin-devops/rules/devops-troubleshooting-playbook.md +450 -0
- package/packages/plugin-devops/rules/docker-first-development.md +404 -0
- package/packages/plugin-devops/rules/github-operations.md +92 -0
- package/packages/plugin-devops/scripts/examples/docker-build-multistage.sh +43 -0
- package/packages/plugin-devops/scripts/examples/docker-compose-validate.sh +74 -0
- package/packages/plugin-devops/scripts/examples/github-workflow-validate.sh +48 -0
- package/packages/plugin-devops/scripts/examples/prometheus-health-check.sh +58 -0
- package/packages/plugin-devops/scripts/examples/ssh-key-setup.sh +74 -0
- package/packages/plugin-frameworks/README.md +309 -0
- package/packages/plugin-frameworks/agents/README.md +64 -0
- package/packages/plugin-frameworks/agents/e2e-test-engineer.md +579 -0
- package/packages/plugin-frameworks/agents/nats-messaging-expert.md +254 -0
- package/packages/plugin-frameworks/agents/react-frontend-engineer.md +393 -0
- package/packages/plugin-frameworks/agents/react-ui-expert.md +226 -0
- package/packages/plugin-frameworks/agents/tailwindcss-expert.md +1021 -0
- package/packages/plugin-frameworks/agents/ux-design-expert.md +244 -0
- package/packages/plugin-frameworks/commands/app-scaffold.md +50 -0
- package/packages/plugin-frameworks/commands/nextjs-optimize.md +692 -0
- package/packages/plugin-frameworks/commands/react-optimize.md +583 -0
- package/packages/plugin-frameworks/commands/tailwind-system.md +64 -0
- package/packages/plugin-frameworks/package.json +59 -0
- package/packages/plugin-frameworks/plugin.json +224 -0
- package/packages/plugin-frameworks/rules/performance-guidelines.md +403 -0
- package/packages/plugin-frameworks/rules/ui-development-standards.md +281 -0
- package/packages/plugin-frameworks/rules/ui-framework-rules.md +151 -0
- package/packages/plugin-frameworks/scripts/examples/react-component-perf.sh +34 -0
- package/packages/plugin-frameworks/scripts/examples/tailwind-optimize.sh +44 -0
- package/packages/plugin-frameworks/scripts/examples/vue-composition-check.sh +41 -0
- package/packages/plugin-languages/README.md +333 -0
- package/packages/plugin-languages/agents/README.md +50 -0
- package/packages/plugin-languages/agents/bash-scripting-expert.md +541 -0
- package/packages/plugin-languages/agents/javascript-frontend-engineer.md +197 -0
- package/packages/plugin-languages/agents/nodejs-backend-engineer.md +226 -0
- package/packages/plugin-languages/agents/python-backend-engineer.md +214 -0
- package/packages/plugin-languages/agents/python-backend-expert.md +289 -0
- package/packages/plugin-languages/commands/javascript-optimize.md +636 -0
- package/packages/plugin-languages/commands/nodejs-api-scaffold.md +341 -0
- package/packages/plugin-languages/commands/nodejs-optimize.md +689 -0
- package/packages/plugin-languages/commands/python-api-scaffold.md +261 -0
- package/packages/plugin-languages/commands/python-optimize.md +593 -0
- package/packages/plugin-languages/package.json +65 -0
- package/packages/plugin-languages/plugin.json +265 -0
- package/packages/plugin-languages/rules/code-quality-standards.md +496 -0
- package/packages/plugin-languages/rules/testing-standards.md +768 -0
- package/packages/plugin-languages/scripts/examples/bash-production-script.sh +520 -0
- package/packages/plugin-languages/scripts/examples/javascript-es6-patterns.js +291 -0
- package/packages/plugin-languages/scripts/examples/nodejs-async-iteration.js +360 -0
- package/packages/plugin-languages/scripts/examples/python-async-patterns.py +289 -0
- package/packages/plugin-languages/scripts/examples/typescript-patterns.ts +432 -0
- package/packages/plugin-ml/README.md +430 -0
- package/packages/plugin-ml/agents/automl-expert.md +326 -0
- package/packages/plugin-ml/agents/computer-vision-expert.md +550 -0
- package/packages/plugin-ml/agents/gradient-boosting-expert.md +455 -0
- package/packages/plugin-ml/agents/neural-network-architect.md +1228 -0
- package/packages/plugin-ml/agents/nlp-transformer-expert.md +584 -0
- package/packages/plugin-ml/agents/pytorch-expert.md +412 -0
- package/packages/plugin-ml/agents/reinforcement-learning-expert.md +2088 -0
- package/packages/plugin-ml/agents/scikit-learn-expert.md +228 -0
- package/packages/plugin-ml/agents/tensorflow-keras-expert.md +509 -0
- package/packages/plugin-ml/agents/time-series-expert.md +303 -0
- package/packages/plugin-ml/commands/ml-automl.md +572 -0
- package/packages/plugin-ml/commands/ml-train-optimize.md +657 -0
- package/packages/plugin-ml/package.json +52 -0
- package/packages/plugin-ml/plugin.json +338 -0
- package/packages/plugin-pm/README.md +368 -0
- package/packages/plugin-pm/claudeautopm-plugin-pm-2.0.0.tgz +0 -0
- package/packages/plugin-pm/commands/azure/COMMANDS.md +107 -0
- package/packages/plugin-pm/commands/azure/COMMAND_MAPPING.md +252 -0
- package/packages/plugin-pm/commands/azure/INTEGRATION_FIX.md +103 -0
- package/packages/plugin-pm/commands/azure/README.md +246 -0
- package/packages/plugin-pm/commands/azure/active-work.md +198 -0
- package/packages/plugin-pm/commands/azure/aliases.md +143 -0
- package/packages/plugin-pm/commands/azure/blocked-items.md +287 -0
- package/packages/plugin-pm/commands/azure/clean.md +93 -0
- package/packages/plugin-pm/commands/azure/docs-query.md +48 -0
- package/packages/plugin-pm/commands/azure/feature-decompose.md +380 -0
- package/packages/plugin-pm/commands/azure/feature-list.md +61 -0
- package/packages/plugin-pm/commands/azure/feature-new.md +115 -0
- package/packages/plugin-pm/commands/azure/feature-show.md +205 -0
- package/packages/plugin-pm/commands/azure/feature-start.md +130 -0
- package/packages/plugin-pm/commands/azure/fix-integration-example.md +93 -0
- package/packages/plugin-pm/commands/azure/help.md +150 -0
- package/packages/plugin-pm/commands/azure/import-us.md +269 -0
- package/packages/plugin-pm/commands/azure/init.md +211 -0
- package/packages/plugin-pm/commands/azure/next-task.md +262 -0
- package/packages/plugin-pm/commands/azure/search.md +160 -0
- package/packages/plugin-pm/commands/azure/sprint-status.md +235 -0
- package/packages/plugin-pm/commands/azure/standup.md +260 -0
- package/packages/plugin-pm/commands/azure/sync-all.md +99 -0
- package/packages/plugin-pm/commands/azure/task-analyze.md +186 -0
- package/packages/plugin-pm/commands/azure/task-close.md +329 -0
- package/packages/plugin-pm/commands/azure/task-edit.md +145 -0
- package/packages/plugin-pm/commands/azure/task-list.md +263 -0
- package/packages/plugin-pm/commands/azure/task-new.md +84 -0
- package/packages/plugin-pm/commands/azure/task-reopen.md +79 -0
- package/packages/plugin-pm/commands/azure/task-show.md +126 -0
- package/packages/plugin-pm/commands/azure/task-start.md +301 -0
- package/packages/plugin-pm/commands/azure/task-status.md +65 -0
- package/packages/plugin-pm/commands/azure/task-sync.md +67 -0
- package/packages/plugin-pm/commands/azure/us-edit.md +164 -0
- package/packages/plugin-pm/commands/azure/us-list.md +202 -0
- package/packages/plugin-pm/commands/azure/us-new.md +265 -0
- package/packages/plugin-pm/commands/azure/us-parse.md +253 -0
- package/packages/plugin-pm/commands/azure/us-show.md +188 -0
- package/packages/plugin-pm/commands/azure/us-status.md +320 -0
- package/packages/plugin-pm/commands/azure/validate.md +86 -0
- package/packages/plugin-pm/commands/azure/work-item-sync.md +47 -0
- package/packages/plugin-pm/commands/blocked.md +28 -0
- package/packages/plugin-pm/commands/clean.md +119 -0
- package/packages/plugin-pm/commands/context-create.md +136 -0
- package/packages/plugin-pm/commands/context-prime.md +170 -0
- package/packages/plugin-pm/commands/context-update.md +292 -0
- package/packages/plugin-pm/commands/context.md +28 -0
- package/packages/plugin-pm/commands/epic-close.md +86 -0
- package/packages/plugin-pm/commands/epic-decompose.md +370 -0
- package/packages/plugin-pm/commands/epic-edit.md +83 -0
- package/packages/plugin-pm/commands/epic-list.md +30 -0
- package/packages/plugin-pm/commands/epic-merge.md +222 -0
- package/packages/plugin-pm/commands/epic-oneshot.md +119 -0
- package/packages/plugin-pm/commands/epic-refresh.md +119 -0
- package/packages/plugin-pm/commands/epic-show.md +28 -0
- package/packages/plugin-pm/commands/epic-split.md +120 -0
- package/packages/plugin-pm/commands/epic-start.md +195 -0
- package/packages/plugin-pm/commands/epic-status.md +28 -0
- package/packages/plugin-pm/commands/epic-sync-modular.md +338 -0
- package/packages/plugin-pm/commands/epic-sync-original.md +473 -0
- package/packages/plugin-pm/commands/epic-sync.md +486 -0
- package/packages/plugin-pm/commands/github/workflow-create.md +42 -0
- package/packages/plugin-pm/commands/help.md +28 -0
- package/packages/plugin-pm/commands/import.md +115 -0
- package/packages/plugin-pm/commands/in-progress.md +28 -0
- package/packages/plugin-pm/commands/init.md +28 -0
- package/packages/plugin-pm/commands/issue-analyze.md +202 -0
- package/packages/plugin-pm/commands/issue-close.md +119 -0
- package/packages/plugin-pm/commands/issue-edit.md +93 -0
- package/packages/plugin-pm/commands/issue-reopen.md +87 -0
- package/packages/plugin-pm/commands/issue-show.md +41 -0
- package/packages/plugin-pm/commands/issue-start.md +234 -0
- package/packages/plugin-pm/commands/issue-status.md +95 -0
- package/packages/plugin-pm/commands/issue-sync.md +411 -0
- package/packages/plugin-pm/commands/next.md +28 -0
- package/packages/plugin-pm/commands/prd-edit.md +82 -0
- package/packages/plugin-pm/commands/prd-list.md +28 -0
- package/packages/plugin-pm/commands/prd-new.md +55 -0
- package/packages/plugin-pm/commands/prd-parse.md +42 -0
- package/packages/plugin-pm/commands/prd-status.md +28 -0
- package/packages/plugin-pm/commands/search.md +28 -0
- package/packages/plugin-pm/commands/standup.md +28 -0
- package/packages/plugin-pm/commands/status.md +28 -0
- package/packages/plugin-pm/commands/sync.md +99 -0
- package/packages/plugin-pm/commands/test-reference-update.md +151 -0
- package/packages/plugin-pm/commands/validate.md +28 -0
- package/packages/plugin-pm/commands/what-next.md +28 -0
- package/packages/plugin-pm/package.json +57 -0
- package/packages/plugin-pm/plugin.json +503 -0
- package/packages/plugin-pm/scripts/pm/analytics.js +425 -0
- package/packages/plugin-pm/scripts/pm/blocked.js +164 -0
- package/packages/plugin-pm/scripts/pm/blocked.sh +78 -0
- package/packages/plugin-pm/scripts/pm/clean.js +464 -0
- package/packages/plugin-pm/scripts/pm/context-create.js +216 -0
- package/packages/plugin-pm/scripts/pm/context-prime.js +335 -0
- package/packages/plugin-pm/scripts/pm/context-update.js +344 -0
- package/packages/plugin-pm/scripts/pm/context.js +338 -0
- package/packages/plugin-pm/scripts/pm/epic-close.js +347 -0
- package/packages/plugin-pm/scripts/pm/epic-edit.js +382 -0
- package/packages/plugin-pm/scripts/pm/epic-list.js +273 -0
- package/packages/plugin-pm/scripts/pm/epic-list.sh +109 -0
- package/packages/plugin-pm/scripts/pm/epic-show.js +291 -0
- package/packages/plugin-pm/scripts/pm/epic-show.sh +105 -0
- package/packages/plugin-pm/scripts/pm/epic-split.js +522 -0
- package/packages/plugin-pm/scripts/pm/epic-start/epic-start.js +183 -0
- package/packages/plugin-pm/scripts/pm/epic-start/epic-start.sh +94 -0
- package/packages/plugin-pm/scripts/pm/epic-status.js +291 -0
- package/packages/plugin-pm/scripts/pm/epic-status.sh +104 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/README.md +208 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/create-epic-issue.sh +77 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/create-task-issues.sh +86 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/update-epic-file.sh +79 -0
- package/packages/plugin-pm/scripts/pm/epic-sync/update-references.sh +89 -0
- package/packages/plugin-pm/scripts/pm/epic-sync.sh +137 -0
- package/packages/plugin-pm/scripts/pm/help.js +92 -0
- package/packages/plugin-pm/scripts/pm/help.sh +90 -0
- package/packages/plugin-pm/scripts/pm/in-progress.js +178 -0
- package/packages/plugin-pm/scripts/pm/in-progress.sh +93 -0
- package/packages/plugin-pm/scripts/pm/init.js +321 -0
- package/packages/plugin-pm/scripts/pm/init.sh +178 -0
- package/packages/plugin-pm/scripts/pm/issue-close.js +232 -0
- package/packages/plugin-pm/scripts/pm/issue-edit.js +310 -0
- package/packages/plugin-pm/scripts/pm/issue-show.js +272 -0
- package/packages/plugin-pm/scripts/pm/issue-start.js +181 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/format-comment.sh +468 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/gather-updates.sh +460 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/post-comment.sh +330 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/preflight-validation.sh +348 -0
- package/packages/plugin-pm/scripts/pm/issue-sync/update-frontmatter.sh +387 -0
- package/packages/plugin-pm/scripts/pm/lib/README.md +85 -0
- package/packages/plugin-pm/scripts/pm/lib/epic-discovery.js +119 -0
- package/packages/plugin-pm/scripts/pm/lib/logger.js +78 -0
- package/packages/plugin-pm/scripts/pm/next.js +189 -0
- package/packages/plugin-pm/scripts/pm/next.sh +72 -0
- package/packages/plugin-pm/scripts/pm/optimize.js +407 -0
- package/packages/plugin-pm/scripts/pm/pr-create.js +337 -0
- package/packages/plugin-pm/scripts/pm/pr-list.js +257 -0
- package/packages/plugin-pm/scripts/pm/prd-list.js +242 -0
- package/packages/plugin-pm/scripts/pm/prd-list.sh +103 -0
- package/packages/plugin-pm/scripts/pm/prd-new.js +684 -0
- package/packages/plugin-pm/scripts/pm/prd-parse.js +547 -0
- package/packages/plugin-pm/scripts/pm/prd-status.js +152 -0
- package/packages/plugin-pm/scripts/pm/prd-status.sh +63 -0
- package/packages/plugin-pm/scripts/pm/release.js +460 -0
- package/packages/plugin-pm/scripts/pm/search.js +192 -0
- package/packages/plugin-pm/scripts/pm/search.sh +89 -0
- package/packages/plugin-pm/scripts/pm/standup.js +362 -0
- package/packages/plugin-pm/scripts/pm/standup.sh +95 -0
- package/packages/plugin-pm/scripts/pm/status.js +148 -0
- package/packages/plugin-pm/scripts/pm/status.sh +59 -0
- package/packages/plugin-pm/scripts/pm/sync-batch.js +337 -0
- package/packages/plugin-pm/scripts/pm/sync.js +343 -0
- package/packages/plugin-pm/scripts/pm/template-list.js +141 -0
- package/packages/plugin-pm/scripts/pm/template-new.js +366 -0
- package/packages/plugin-pm/scripts/pm/validate.js +274 -0
- package/packages/plugin-pm/scripts/pm/validate.sh +106 -0
- package/packages/plugin-pm/scripts/pm/what-next.js +660 -0
- package/packages/plugin-testing/README.md +401 -0
- package/packages/plugin-testing/agents/frontend-testing-engineer.md +768 -0
- package/packages/plugin-testing/commands/jest-optimize.md +800 -0
- package/packages/plugin-testing/commands/playwright-optimize.md +887 -0
- package/packages/plugin-testing/commands/test-coverage.md +512 -0
- package/packages/plugin-testing/commands/test-performance.md +1041 -0
- package/packages/plugin-testing/commands/test-setup.md +414 -0
- package/packages/plugin-testing/package.json +40 -0
- package/packages/plugin-testing/plugin.json +197 -0
- package/packages/plugin-testing/rules/test-coverage-requirements.md +581 -0
- package/packages/plugin-testing/rules/testing-standards.md +529 -0
- package/packages/plugin-testing/scripts/examples/react-testing-example.test.jsx +460 -0
- package/packages/plugin-testing/scripts/examples/vitest-config-example.js +352 -0
- package/packages/plugin-testing/scripts/examples/vue-testing-example.test.js +586 -0
|
@@ -0,0 +1,237 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "@claudeautopm/plugin-databases",
|
|
3
|
+
"version": "2.0.0",
|
|
4
|
+
"schemaVersion": "2.0",
|
|
5
|
+
"displayName": "Database & Data Storage",
|
|
6
|
+
"description": "Complete database plugin with PostgreSQL, MongoDB, Redis, BigQuery, and Cosmos DB experts, database rules, and optimization scripts",
|
|
7
|
+
"category": "databases",
|
|
8
|
+
"metadata": {
|
|
9
|
+
"category": "Databases & Data Storage",
|
|
10
|
+
"author": "ClaudeAutoPM Team",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"homepage": "https://github.com/rafeekpro/ClaudeAutoPM",
|
|
13
|
+
"repository": {
|
|
14
|
+
"type": "git",
|
|
15
|
+
"url": "git+https://github.com/rafeekpro/ClaudeAutoPM.git",
|
|
16
|
+
"directory": "packages/plugin-databases"
|
|
17
|
+
},
|
|
18
|
+
"size": "~20 KB (gzipped)",
|
|
19
|
+
"required": false,
|
|
20
|
+
"tags": ["databases", "sql", "nosql", "postgresql", "mongodb", "redis", "bigquery", "cosmosdb", "data-warehouse", "caching"]
|
|
21
|
+
},
|
|
22
|
+
"commands": [
|
|
23
|
+
{
|
|
24
|
+
"name": "db-optimize",
|
|
25
|
+
"file": "commands/db-optimize.md",
|
|
26
|
+
"description": "Optimize database performance for PostgreSQL, MongoDB, and Redis",
|
|
27
|
+
"category": "optimization",
|
|
28
|
+
"tags": ["database", "optimization", "performance", "indexing", "postgresql", "mongodb", "redis"],
|
|
29
|
+
"requiredAgents": ["postgresql-expert", "mongodb-expert", "redis-expert"],
|
|
30
|
+
"context7": [
|
|
31
|
+
"/websites/postgresql",
|
|
32
|
+
"/mongodb/mongo",
|
|
33
|
+
"/redis/redis-py"
|
|
34
|
+
]
|
|
35
|
+
}
|
|
36
|
+
],
|
|
37
|
+
"agents": [
|
|
38
|
+
{
|
|
39
|
+
"name": "postgresql-expert",
|
|
40
|
+
"file": "agents/postgresql-expert.md",
|
|
41
|
+
"category": "databases",
|
|
42
|
+
"description": "PostgreSQL database design, optimization, and management. Expert in SQL queries, indexing strategies, performance tuning, replication, partitioning, and advanced features like JSONB and full-text search.",
|
|
43
|
+
"version": "2.0.0",
|
|
44
|
+
"tags": ["postgresql", "sql", "database", "indexing", "performance", "replication"],
|
|
45
|
+
"mcp": ["postgresql"],
|
|
46
|
+
"context7": [
|
|
47
|
+
"/websites/postgresql",
|
|
48
|
+
"/websites/postgresql-current",
|
|
49
|
+
"/porsager/postgres"
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"name": "mongodb-expert",
|
|
54
|
+
"file": "agents/mongodb-expert.md",
|
|
55
|
+
"category": "databases",
|
|
56
|
+
"description": "MongoDB database design, aggregation pipelines, and performance optimization. Expert in document modeling, sharding, replication, indexing strategies, and MongoDB Atlas.",
|
|
57
|
+
"version": "2.0.0",
|
|
58
|
+
"tags": ["mongodb", "nosql", "document-db", "aggregation", "sharding", "atlas"],
|
|
59
|
+
"mcp": ["mongodb"],
|
|
60
|
+
"context7": [
|
|
61
|
+
"/mongodb/docs",
|
|
62
|
+
"/mongodb/mongo",
|
|
63
|
+
"/automattic/mongoose",
|
|
64
|
+
"/mongodb/node-mongodb-native"
|
|
65
|
+
]
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
"name": "redis-expert",
|
|
69
|
+
"file": "agents/redis-expert.md",
|
|
70
|
+
"category": "caching",
|
|
71
|
+
"description": "Redis caching, pub/sub messaging, and data structure operations. Expert in Redis Cluster, persistence strategies, Lua scripting, and performance optimization.",
|
|
72
|
+
"version": "2.0.0",
|
|
73
|
+
"tags": ["redis", "caching", "pub-sub", "in-memory", "data-structures", "performance"],
|
|
74
|
+
"mcp": ["redis"],
|
|
75
|
+
"context7": [
|
|
76
|
+
"/websites/redis_io",
|
|
77
|
+
"/redis/node-redis",
|
|
78
|
+
"/redis/go-redis"
|
|
79
|
+
]
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"name": "bigquery-expert",
|
|
83
|
+
"file": "agents/bigquery-expert.md",
|
|
84
|
+
"category": "data-warehouse",
|
|
85
|
+
"description": "BigQuery data warehouse design, SQL optimization, and analytics engineering. Expert in partitioning, clustering, materialized views, BigQuery ML, and cost optimization.",
|
|
86
|
+
"version": "2.0.0",
|
|
87
|
+
"tags": ["bigquery", "data-warehouse", "analytics", "sql", "gcp", "ml", "cost-optimization"],
|
|
88
|
+
"mcp": [],
|
|
89
|
+
"context7": [
|
|
90
|
+
"/websites/cloud_google-bigquery",
|
|
91
|
+
"/googleapis/python-bigquery",
|
|
92
|
+
"/googleapis/nodejs-bigquery"
|
|
93
|
+
]
|
|
94
|
+
},
|
|
95
|
+
{
|
|
96
|
+
"name": "cosmosdb-expert",
|
|
97
|
+
"file": "agents/cosmosdb-expert.md",
|
|
98
|
+
"category": "databases",
|
|
99
|
+
"description": "Azure Cosmos DB design and optimization across all APIs (Core SQL, MongoDB, Cassandra, Gremlin, Table). Expert in global distribution, consistency levels, partitioning strategies, and cost optimization.",
|
|
100
|
+
"version": "2.0.0",
|
|
101
|
+
"tags": ["cosmosdb", "azure", "nosql", "multi-model", "global-distribution", "consistency"],
|
|
102
|
+
"mcp": [],
|
|
103
|
+
"context7": [
|
|
104
|
+
"/websites/learn_microsoft-en-us-azure-cosmos-db",
|
|
105
|
+
"/microsoftdocs/azure-docs"
|
|
106
|
+
]
|
|
107
|
+
}
|
|
108
|
+
],
|
|
109
|
+
"rules": [
|
|
110
|
+
{
|
|
111
|
+
"name": "database-management-strategy",
|
|
112
|
+
"file": "rules/database-management-strategy.md",
|
|
113
|
+
"priority": "high",
|
|
114
|
+
"description": "Required strategy for managing databases across all project environments with Context7-verified best practices",
|
|
115
|
+
"tags": ["database", "strategy", "environments", "best-practices", "postgresql", "mongodb", "redis", "bigquery", "cosmosdb"],
|
|
116
|
+
"appliesTo": ["commands", "agents"],
|
|
117
|
+
"enforcesOn": ["postgresql-expert", "mongodb-expert", "redis-expert", "bigquery-expert", "cosmosdb-expert"]
|
|
118
|
+
},
|
|
119
|
+
{
|
|
120
|
+
"name": "database-pipeline",
|
|
121
|
+
"file": "rules/database-pipeline.md",
|
|
122
|
+
"priority": "high",
|
|
123
|
+
"description": "Critical database operations pipelines for migrations, optimization, data warehousing, caching, and backups",
|
|
124
|
+
"tags": ["database", "pipeline", "migrations", "optimization", "backup", "caching", "data-warehouse"],
|
|
125
|
+
"appliesTo": ["commands", "agents"],
|
|
126
|
+
"enforcesOn": ["postgresql-expert", "mongodb-expert", "redis-expert", "bigquery-expert", "cosmosdb-expert"]
|
|
127
|
+
}
|
|
128
|
+
],
|
|
129
|
+
"scripts": [
|
|
130
|
+
{
|
|
131
|
+
"name": "postgres-index-analyze",
|
|
132
|
+
"file": "scripts/examples/postgres-index-analyze.sh",
|
|
133
|
+
"description": "Analyze PostgreSQL indexes for unused indexes, hit ratio, and missing foreign key indexes",
|
|
134
|
+
"type": "example",
|
|
135
|
+
"executable": true,
|
|
136
|
+
"category": "postgresql",
|
|
137
|
+
"tags": ["postgresql", "indexing", "performance", "analysis"]
|
|
138
|
+
},
|
|
139
|
+
{
|
|
140
|
+
"name": "mongodb-shard-check",
|
|
141
|
+
"file": "scripts/examples/mongodb-shard-check.sh",
|
|
142
|
+
"description": "Check MongoDB sharded collection index consistency across all shards",
|
|
143
|
+
"type": "example",
|
|
144
|
+
"executable": true,
|
|
145
|
+
"category": "mongodb",
|
|
146
|
+
"tags": ["mongodb", "sharding", "indexing", "consistency"]
|
|
147
|
+
},
|
|
148
|
+
{
|
|
149
|
+
"name": "redis-cache-stats",
|
|
150
|
+
"file": "scripts/examples/redis-cache-stats.sh",
|
|
151
|
+
"description": "Analyze Redis cache performance including hit/miss ratio, memory usage, and slow log",
|
|
152
|
+
"type": "example",
|
|
153
|
+
"executable": true,
|
|
154
|
+
"category": "redis",
|
|
155
|
+
"tags": ["redis", "caching", "performance", "monitoring"]
|
|
156
|
+
},
|
|
157
|
+
{
|
|
158
|
+
"name": "bigquery-cost-analyze",
|
|
159
|
+
"file": "scripts/examples/bigquery-cost-analyze.sh",
|
|
160
|
+
"description": "Analyze BigQuery costs and optimization opportunities including storage and partitioning",
|
|
161
|
+
"type": "example",
|
|
162
|
+
"executable": true,
|
|
163
|
+
"category": "bigquery",
|
|
164
|
+
"tags": ["bigquery", "cost-optimization", "partitioning", "clustering"]
|
|
165
|
+
},
|
|
166
|
+
{
|
|
167
|
+
"name": "cosmosdb-ru-optimize",
|
|
168
|
+
"file": "scripts/examples/cosmosdb-ru-optimize.sh",
|
|
169
|
+
"description": "Analyze Azure Cosmos DB RU/s optimization and partition distribution",
|
|
170
|
+
"type": "example",
|
|
171
|
+
"executable": true,
|
|
172
|
+
"category": "cosmosdb",
|
|
173
|
+
"tags": ["cosmosdb", "ru-optimization", "partitioning", "cost"]
|
|
174
|
+
}
|
|
175
|
+
],
|
|
176
|
+
"features": {
|
|
177
|
+
"postgresql_database": {
|
|
178
|
+
"enabled": true,
|
|
179
|
+
"description": "PostgreSQL relational database with advanced features"
|
|
180
|
+
},
|
|
181
|
+
"mongodb_database": {
|
|
182
|
+
"enabled": true,
|
|
183
|
+
"description": "MongoDB document database with sharding and aggregation"
|
|
184
|
+
},
|
|
185
|
+
"redis_caching": {
|
|
186
|
+
"enabled": true,
|
|
187
|
+
"description": "Redis in-memory caching and pub/sub messaging"
|
|
188
|
+
},
|
|
189
|
+
"bigquery_warehouse": {
|
|
190
|
+
"enabled": true,
|
|
191
|
+
"description": "BigQuery data warehouse with ML and analytics"
|
|
192
|
+
},
|
|
193
|
+
"cosmosdb_database": {
|
|
194
|
+
"enabled": true,
|
|
195
|
+
"description": "Azure Cosmos DB multi-model globally distributed database"
|
|
196
|
+
},
|
|
197
|
+
"database_optimization": {
|
|
198
|
+
"enabled": true,
|
|
199
|
+
"description": "Query optimization, indexing, and performance tuning"
|
|
200
|
+
},
|
|
201
|
+
"cost_optimization": {
|
|
202
|
+
"enabled": true,
|
|
203
|
+
"description": "Database cost analysis and optimization strategies"
|
|
204
|
+
}
|
|
205
|
+
},
|
|
206
|
+
"dependencies": [],
|
|
207
|
+
"peerPlugins": [
|
|
208
|
+
"@claudeautopm/plugin-core"
|
|
209
|
+
],
|
|
210
|
+
"mcpServers": {
|
|
211
|
+
"recommended": [
|
|
212
|
+
"postgresql",
|
|
213
|
+
"mongodb",
|
|
214
|
+
"redis"
|
|
215
|
+
],
|
|
216
|
+
"optional": [
|
|
217
|
+
"azure-cli",
|
|
218
|
+
"gcp"
|
|
219
|
+
]
|
|
220
|
+
},
|
|
221
|
+
"keywords": [
|
|
222
|
+
"claudeautopm",
|
|
223
|
+
"plugin",
|
|
224
|
+
"databases",
|
|
225
|
+
"postgresql",
|
|
226
|
+
"mongodb",
|
|
227
|
+
"redis",
|
|
228
|
+
"bigquery",
|
|
229
|
+
"cosmosdb",
|
|
230
|
+
"sql",
|
|
231
|
+
"nosql",
|
|
232
|
+
"data-warehouse",
|
|
233
|
+
"caching",
|
|
234
|
+
"optimization"
|
|
235
|
+
],
|
|
236
|
+
"compatibleWith": ">=3.0.0"
|
|
237
|
+
}
|
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
# Rule: Database Management Strategy
|
|
2
|
+
|
|
3
|
+
This document outlines the required strategy for managing databases across all project environments, incorporating Context7-verified best practices for PostgreSQL, MongoDB, Redis, BigQuery, and Cosmos DB.
|
|
4
|
+
|
|
5
|
+
| Environment | Tool / Service | Lifecycle / Purpose | Data Source | Persistence |
|
|
6
|
+
| ------------------- | ------------------------------- | ----------------------------------- | ----------------------------------------- | ------------------------- |
|
|
7
|
+
| **Local (Dev)** | `docker-compose` | Long-running, per-developer | Migrations + Developer Seeds | **Yes** (Named Volume) |
|
|
8
|
+
| **CI/CD (Tests)** | `kubectl run` | **Ephemeral**, per-PR/commit | Migrations + Test Seeds | **No** (Clean for every run) |
|
|
9
|
+
| **Staging** | Managed Cloud DB (e.g., RDS) | Long-running, shared by team | Sanitized/Anonymized Production Dump | **Yes** (Persistent) |
|
|
10
|
+
| **Production** | Managed Cloud DB (High-Availability) | Long-running, critical user data | Live User Data | **Yes** (HA + Backups) |
|
|
11
|
+
|
|
12
|
+
## Key Principles
|
|
13
|
+
|
|
14
|
+
### 1. Local Development
|
|
15
|
+
- Use a named Docker volume to persist data between `docker compose up/down` cycles
|
|
16
|
+
- PostgreSQL: Use official image with version pinning
|
|
17
|
+
- MongoDB: Use named volumes for `/data/db`
|
|
18
|
+
- Redis: Use AOF (Append-Only File) for persistence in dev
|
|
19
|
+
|
|
20
|
+
### 2. CI/CD Testing
|
|
21
|
+
- Database MUST be created from scratch for every test run
|
|
22
|
+
- DO NOT use persistent volumes in CI for perfect isolation
|
|
23
|
+
- Use lightweight containers for speed (Alpine-based images)
|
|
24
|
+
- Implement health checks before running tests
|
|
25
|
+
|
|
26
|
+
### 3. Staging Environment
|
|
27
|
+
- Schema must be an exact mirror of production
|
|
28
|
+
- Data should be a recent, anonymized copy of production data
|
|
29
|
+
- Use automated refresh scripts for staging data
|
|
30
|
+
- Test backup/restore procedures regularly
|
|
31
|
+
|
|
32
|
+
### 4. Production Best Practices
|
|
33
|
+
|
|
34
|
+
#### PostgreSQL (Context7: /websites/postgresql)
|
|
35
|
+
- Use B-tree indexes for equality and range queries
|
|
36
|
+
- Implement partial indexes for filtered queries
|
|
37
|
+
- Use `EXPLAIN ANALYZE` for query optimization
|
|
38
|
+
- Monitor `pg_stat_user_indexes` for index usage
|
|
39
|
+
|
|
40
|
+
#### MongoDB (Context7: /mongodb/docs)
|
|
41
|
+
- Implement proper sharding strategies for scale
|
|
42
|
+
- Use aggregation pipeline for complex queries
|
|
43
|
+
- Monitor index inconsistencies with `$indexStats`
|
|
44
|
+
- Use compound indexes in query filter order
|
|
45
|
+
|
|
46
|
+
#### Redis (Context7: /websites/redis_io)
|
|
47
|
+
- Implement client-side caching patterns
|
|
48
|
+
- Use appropriate data structures (Hash, Set, Sorted Set)
|
|
49
|
+
- Configure AOF + RDB for persistence
|
|
50
|
+
- Monitor memory usage and implement eviction policies
|
|
51
|
+
|
|
52
|
+
#### Azure Cosmos DB (Context7: /websites/learn_microsoft-en-us-azure-cosmos-db)
|
|
53
|
+
- Choose appropriate consistency level (Session for most cases)
|
|
54
|
+
- Design partition keys for even distribution
|
|
55
|
+
- Use TTL for automatic data expiration
|
|
56
|
+
- Monitor RU/s consumption and optimize queries
|
|
57
|
+
|
|
58
|
+
#### BigQuery (Context7: /websites/cloud_google-bigquery)
|
|
59
|
+
- Partition tables by date/timestamp for query performance
|
|
60
|
+
- Cluster tables by commonly filtered columns
|
|
61
|
+
- Use `_PARTITIONTIME` for efficient partition pruning
|
|
62
|
+
- Monitor costs with `INFORMATION_SCHEMA.TABLE_STORAGE`
|
|
63
|
+
|
|
64
|
+
### 5. Migration Strategy
|
|
65
|
+
- All schema changes MUST be handled by migration tools:
|
|
66
|
+
- PostgreSQL: Alembic, Flyway, or native migrations
|
|
67
|
+
- MongoDB: migrate-mongo or custom scripts
|
|
68
|
+
- BigQuery: Declarative schema with version control
|
|
69
|
+
- No manual `ALTER TABLE` or schema modifications
|
|
70
|
+
- Always include rollback procedures
|
|
71
|
+
|
|
72
|
+
### 6. Backup and Recovery
|
|
73
|
+
- **PostgreSQL**: pg_dump with custom format, point-in-time recovery
|
|
74
|
+
- **MongoDB**: mongodump with --oplog for consistency
|
|
75
|
+
- **Redis**: RDB snapshots + AOF for durability
|
|
76
|
+
- **Cosmos DB**: Automatic backups with configurable retention
|
|
77
|
+
- **BigQuery**: Table snapshots and time travel queries
|
|
78
|
+
|
|
79
|
+
### 7. Performance Monitoring
|
|
80
|
+
- Track slow queries across all database systems
|
|
81
|
+
- Monitor connection pool utilization
|
|
82
|
+
- Implement alerting for query timeout
|
|
83
|
+
- Use database-specific monitoring tools:
|
|
84
|
+
- PostgreSQL: pg_stat_statements
|
|
85
|
+
- MongoDB: Database Profiler
|
|
86
|
+
- Redis: INFO command, redis-cli --stat
|
|
87
|
+
- BigQuery: Query execution details
|
|
88
|
+
- Cosmos DB: Request unit metrics
|
|
89
|
+
|
|
90
|
+
## Context7-Verified Patterns
|
|
91
|
+
|
|
92
|
+
### PostgreSQL Indexing
|
|
93
|
+
```sql
|
|
94
|
+
-- B-tree for equality and range
|
|
95
|
+
CREATE INDEX idx_users_email ON users(email);
|
|
96
|
+
|
|
97
|
+
-- Partial index for filtered queries
|
|
98
|
+
CREATE INDEX idx_orders_pending ON orders(order_date)
|
|
99
|
+
WHERE status = 'pending';
|
|
100
|
+
|
|
101
|
+
-- Covering index with INCLUDE
|
|
102
|
+
CREATE INDEX idx_orders_customer ON orders(customer_id)
|
|
103
|
+
INCLUDE (order_date, amount);
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
### MongoDB Aggregation
|
|
107
|
+
```javascript
|
|
108
|
+
// Check for index inconsistencies in sharded collections
|
|
109
|
+
db.collection.aggregate([
|
|
110
|
+
{$indexStats: {}},
|
|
111
|
+
{$group: {_id: null, indexDoc: {$push: "$$ROOT"}, allShards: {$addToSet: "$shard"}}}
|
|
112
|
+
]);
|
|
113
|
+
```
|
|
114
|
+
|
|
115
|
+
### Redis Caching Pattern
|
|
116
|
+
```redis
|
|
117
|
+
# Client-side caching with placeholder
|
|
118
|
+
SET foo "caching-in-progress"
|
|
119
|
+
GET foo
|
|
120
|
+
# Replace with actual value after computation
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
### BigQuery Partitioning
|
|
124
|
+
```sql
|
|
125
|
+
CREATE TABLE my_table (
|
|
126
|
+
id INT64,
|
|
127
|
+
event_timestamp TIMESTAMP,
|
|
128
|
+
category STRING
|
|
129
|
+
)
|
|
130
|
+
PARTITION BY DATE(event_timestamp)
|
|
131
|
+
CLUSTER BY category;
|
|
132
|
+
```
|
|
133
|
+
|
|
134
|
+
### Cosmos DB Partitioning
|
|
135
|
+
```json
|
|
136
|
+
{
|
|
137
|
+
"partitionKey": {
|
|
138
|
+
"paths": ["/userId"],
|
|
139
|
+
"kind": "Hash"
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
```
|
|
143
|
+
|
|
144
|
+
## Compliance
|
|
145
|
+
|
|
146
|
+
All database operations must follow these strategies. Deviations require architectural review and documentation in CLAUDE.md.
|
|
@@ -0,0 +1,316 @@
|
|
|
1
|
+
# Database Operations Pipeline
|
|
2
|
+
|
|
3
|
+
> **CRITICAL**: Database operations require specialized workflows for safety and performance.
|
|
4
|
+
|
|
5
|
+
## 1. DATABASE MIGRATION PIPELINE
|
|
6
|
+
|
|
7
|
+
**Trigger**: Any schema change or migration
|
|
8
|
+
**Sequence**:
|
|
9
|
+
|
|
10
|
+
```
|
|
11
|
+
1. postgresql-expert/mongodb-expert → Analyze current schema
|
|
12
|
+
2. Query Context7 for migration best practices
|
|
13
|
+
3. Write migration with rollback plan
|
|
14
|
+
4. test-runner → Test migration on dev database
|
|
15
|
+
5. Create backup verification test
|
|
16
|
+
6. Document migration in changelog
|
|
17
|
+
7. Never run migrations without rollback plan
|
|
18
|
+
```
|
|
19
|
+
|
|
20
|
+
**Context7 Best Practices**:
|
|
21
|
+
- PostgreSQL: Use transactional DDL when possible
|
|
22
|
+
- MongoDB: Test on replica set before production
|
|
23
|
+
- Always verify index creation doesn't block writes
|
|
24
|
+
|
|
25
|
+
## 2. QUERY OPTIMIZATION PIPELINE
|
|
26
|
+
|
|
27
|
+
**Trigger**: Slow query or performance issue
|
|
28
|
+
**Sequence**:
|
|
29
|
+
|
|
30
|
+
```
|
|
31
|
+
1. postgresql-expert → Analyze query plan (EXPLAIN ANALYZE)
|
|
32
|
+
2. Query Context7 for optimization patterns
|
|
33
|
+
3. Identify missing indexes or inefficient operations
|
|
34
|
+
4. Write performance test (must show improvement)
|
|
35
|
+
5. Implement optimization
|
|
36
|
+
6. test-runner → Verify no functionality regression
|
|
37
|
+
7. Document optimization in CLAUDE.md
|
|
38
|
+
```
|
|
39
|
+
|
|
40
|
+
**PostgreSQL Optimization** (Context7: /websites/postgresql):
|
|
41
|
+
```sql
|
|
42
|
+
-- Use EXPLAIN ANALYZE to identify bottlenecks
|
|
43
|
+
EXPLAIN ANALYZE SELECT * FROM orders WHERE customer_id = 123;
|
|
44
|
+
|
|
45
|
+
-- Optimize with appropriate index
|
|
46
|
+
CREATE INDEX idx_orders_customer_id ON orders(customer_id);
|
|
47
|
+
|
|
48
|
+
-- Verify improvement
|
|
49
|
+
EXPLAIN ANALYZE SELECT * FROM orders WHERE customer_id = 123;
|
|
50
|
+
```
|
|
51
|
+
|
|
52
|
+
**MongoDB Optimization** (Context7: /mongodb/docs):
|
|
53
|
+
```javascript
|
|
54
|
+
// Use explain() for aggregation pipelines
|
|
55
|
+
db.collection.aggregate([
|
|
56
|
+
{$match: {status: "active"}},
|
|
57
|
+
{$group: {_id: "$category", total: {$sum: 1}}}
|
|
58
|
+
]).explain("executionStats");
|
|
59
|
+
|
|
60
|
+
// Create compound index in query order
|
|
61
|
+
db.collection.createIndex({status: 1, category: 1});
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
**Redis Optimization** (Context7: /websites/redis_io):
|
|
65
|
+
- Use SCAN instead of KEYS for production
|
|
66
|
+
- Implement pipeline for multiple commands
|
|
67
|
+
- Use appropriate data structures (Hash vs String)
|
|
68
|
+
|
|
69
|
+
## 3. DATA WAREHOUSE PIPELINE
|
|
70
|
+
|
|
71
|
+
**Trigger**: BigQuery/CosmosDB implementation
|
|
72
|
+
**Sequence**:
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
1. bigquery-expert/cosmosdb-expert → Design schema
|
|
76
|
+
2. Query Context7 for partitioning/clustering best practices
|
|
77
|
+
3. Create partitioning/sharding strategy
|
|
78
|
+
4. Implement ETL/ELT pipeline
|
|
79
|
+
5. test-runner → Validate data integrity
|
|
80
|
+
6. Monitor costs and performance
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
**BigQuery Best Practices** (Context7: /websites/cloud_google-bigquery):
|
|
84
|
+
```sql
|
|
85
|
+
-- Partition by date, cluster by filter columns
|
|
86
|
+
CREATE TABLE analytics.events (
|
|
87
|
+
event_id INT64,
|
|
88
|
+
event_timestamp TIMESTAMP,
|
|
89
|
+
user_id STRING,
|
|
90
|
+
event_type STRING
|
|
91
|
+
)
|
|
92
|
+
PARTITION BY DATE(event_timestamp)
|
|
93
|
+
CLUSTER BY user_id, event_type
|
|
94
|
+
OPTIONS (
|
|
95
|
+
partition_expiration_days=365,
|
|
96
|
+
require_partition_filter=TRUE
|
|
97
|
+
);
|
|
98
|
+
|
|
99
|
+
-- Optimize queries with partition pruning
|
|
100
|
+
SELECT event_type, COUNT(*) as total
|
|
101
|
+
FROM analytics.events
|
|
102
|
+
WHERE DATE(event_timestamp) BETWEEN '2024-01-01' AND '2024-01-31'
|
|
103
|
+
AND user_id = 'user123'
|
|
104
|
+
GROUP BY event_type;
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
**Cosmos DB Best Practices** (Context7: /websites/learn_microsoft-en-us-azure-cosmos-db):
|
|
108
|
+
- Choose partition key for even distribution (avoid hot partitions)
|
|
109
|
+
- Use Session consistency for most scenarios
|
|
110
|
+
- Implement TTL for automatic data cleanup
|
|
111
|
+
- Monitor and optimize RU/s consumption
|
|
112
|
+
|
|
113
|
+
## 4. CACHE IMPLEMENTATION PIPELINE
|
|
114
|
+
|
|
115
|
+
**Trigger**: Redis caching requirement
|
|
116
|
+
**Sequence**:
|
|
117
|
+
|
|
118
|
+
```
|
|
119
|
+
1. redis-expert → Design cache strategy
|
|
120
|
+
2. Query Context7 for caching patterns
|
|
121
|
+
3. Implement cache invalidation logic
|
|
122
|
+
4. Write cache hit/miss tests
|
|
123
|
+
5. test-runner → Verify cache behavior
|
|
124
|
+
6. Monitor memory usage and hit rates
|
|
125
|
+
```
|
|
126
|
+
|
|
127
|
+
**Redis Caching Patterns** (Context7: /websites/redis_io):
|
|
128
|
+
```redis
|
|
129
|
+
# Client-side caching with placeholder pattern
|
|
130
|
+
SET cache:user:1234 "caching-in-progress"
|
|
131
|
+
# Compute expensive operation
|
|
132
|
+
SET cache:user:1234 "{\"name\":\"Alice\",\"role\":\"admin\"}"
|
|
133
|
+
EXPIRE cache:user:1234 3600
|
|
134
|
+
|
|
135
|
+
# Cache aside pattern
|
|
136
|
+
GET cache:product:456
|
|
137
|
+
# If miss, query database and set cache
|
|
138
|
+
SET cache:product:456 '{"name":"Widget","price":29.99}'
|
|
139
|
+
EXPIRE cache:product:456 1800
|
|
140
|
+
```
|
|
141
|
+
|
|
142
|
+
**Cache Invalidation Strategies**:
|
|
143
|
+
- **Write-through**: Update cache immediately on write
|
|
144
|
+
- **Write-behind**: Queue writes, update cache async
|
|
145
|
+
- **TTL-based**: Set expiration on all cached items
|
|
146
|
+
- **Event-based**: Invalidate on database change events
|
|
147
|
+
|
|
148
|
+
## 5. DATABASE BACKUP PIPELINE
|
|
149
|
+
|
|
150
|
+
**Trigger**: Backup strategy implementation
|
|
151
|
+
**Sequence**:
|
|
152
|
+
|
|
153
|
+
```
|
|
154
|
+
1. Database expert → Design backup strategy
|
|
155
|
+
2. Query Context7 for backup best practices
|
|
156
|
+
3. Implement automated backup script
|
|
157
|
+
4. Write restore verification test
|
|
158
|
+
5. test-runner → Test backup and restore
|
|
159
|
+
6. Document recovery procedures
|
|
160
|
+
7. Schedule regular backup drills
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
**Backup Strategies by Database**:
|
|
164
|
+
|
|
165
|
+
### PostgreSQL
|
|
166
|
+
```bash
|
|
167
|
+
# Full backup with custom format (allows selective restore)
|
|
168
|
+
pg_dump -Fc -d mydatabase -f backup.dump
|
|
169
|
+
|
|
170
|
+
# Point-in-time recovery setup
|
|
171
|
+
# Enable WAL archiving in postgresql.conf
|
|
172
|
+
wal_level = replica
|
|
173
|
+
archive_mode = on
|
|
174
|
+
archive_command = 'cp %p /backup/wal/%f'
|
|
175
|
+
```
|
|
176
|
+
|
|
177
|
+
### MongoDB
|
|
178
|
+
```bash
|
|
179
|
+
# Consistent backup with oplog
|
|
180
|
+
mongodump --oplog --gzip --out /backup/mongodb/
|
|
181
|
+
|
|
182
|
+
# Verify backup integrity
|
|
183
|
+
mongorestore --dry-run --gzip --dir /backup/mongodb/
|
|
184
|
+
```
|
|
185
|
+
|
|
186
|
+
### Redis
|
|
187
|
+
```bash
|
|
188
|
+
# Manual snapshot
|
|
189
|
+
redis-cli BGSAVE
|
|
190
|
+
|
|
191
|
+
# Configure automatic snapshots
|
|
192
|
+
save 900 1 # After 900s if ≥1 key changed
|
|
193
|
+
save 300 10 # After 300s if ≥10 keys changed
|
|
194
|
+
save 60 10000 # After 60s if ≥10000 keys changed
|
|
195
|
+
```
|
|
196
|
+
|
|
197
|
+
### BigQuery
|
|
198
|
+
```sql
|
|
199
|
+
-- Create snapshot for time travel
|
|
200
|
+
CREATE SNAPSHOT TABLE mydataset.events_snapshot
|
|
201
|
+
CLONE mydataset.events;
|
|
202
|
+
|
|
203
|
+
-- Query historical data (up to 7 days)
|
|
204
|
+
SELECT * FROM mydataset.events
|
|
205
|
+
FOR SYSTEM_TIME AS OF TIMESTAMP_SUB(CURRENT_TIMESTAMP(), INTERVAL 1 DAY);
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Cosmos DB
|
|
209
|
+
- Automatic continuous backups with configurable retention
|
|
210
|
+
- Manual backup triggers for critical operations
|
|
211
|
+
- Cross-region geo-redundant backups
|
|
212
|
+
|
|
213
|
+
## 6. INDEX MANAGEMENT PIPELINE
|
|
214
|
+
|
|
215
|
+
**Trigger**: New query patterns or performance degradation
|
|
216
|
+
**Sequence**:
|
|
217
|
+
|
|
218
|
+
```
|
|
219
|
+
1. Database expert → Analyze query patterns
|
|
220
|
+
2. Query Context7 for indexing strategies
|
|
221
|
+
3. Identify missing or unused indexes
|
|
222
|
+
4. Create index with minimal lock strategy
|
|
223
|
+
5. test-runner → Verify performance improvement
|
|
224
|
+
6. Monitor index usage statistics
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
**PostgreSQL Index Management** (Context7: /websites/postgresql):
|
|
228
|
+
```sql
|
|
229
|
+
-- Create index concurrently (no table lock)
|
|
230
|
+
CREATE INDEX CONCURRENTLY idx_users_created_at ON users(created_at);
|
|
231
|
+
|
|
232
|
+
-- Identify unused indexes
|
|
233
|
+
SELECT
|
|
234
|
+
schemaname, tablename, indexname, idx_scan
|
|
235
|
+
FROM pg_stat_user_indexes
|
|
236
|
+
WHERE idx_scan = 0 AND schemaname = 'public'
|
|
237
|
+
ORDER BY pg_relation_size(indexrelid) DESC;
|
|
238
|
+
|
|
239
|
+
-- Drop unused index
|
|
240
|
+
DROP INDEX CONCURRENTLY idx_old_unused;
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
**MongoDB Index Management** (Context7: /mongodb/docs):
|
|
244
|
+
```javascript
|
|
245
|
+
// Find index inconsistencies in sharded collections
|
|
246
|
+
db.collection.aggregate([
|
|
247
|
+
{$indexStats: {}},
|
|
248
|
+
{$group: {
|
|
249
|
+
_id: "$name",
|
|
250
|
+
shards: {$push: "$shard"},
|
|
251
|
+
specs: {$push: {$objectToArray: {$ifNull: ["$spec", {}]}}}
|
|
252
|
+
}},
|
|
253
|
+
{$project: {
|
|
254
|
+
missingFromShards: {$setDifference: ["$allShards", "$shards"]}
|
|
255
|
+
}}
|
|
256
|
+
]);
|
|
257
|
+
```
|
|
258
|
+
|
|
259
|
+
## Pipeline Requirements
|
|
260
|
+
|
|
261
|
+
### NEVER ALLOWED
|
|
262
|
+
|
|
263
|
+
- ❌ Running migrations without backups
|
|
264
|
+
- ❌ Deploying unindexed queries to production
|
|
265
|
+
- ❌ Skipping rollback plan creation
|
|
266
|
+
- ❌ Ignoring query performance analysis
|
|
267
|
+
- ❌ Using SELECT * in production code
|
|
268
|
+
- ❌ Creating indexes without CONCURRENTLY (PostgreSQL)
|
|
269
|
+
- ❌ Modifying production schemas without testing
|
|
270
|
+
|
|
271
|
+
### ALWAYS REQUIRED
|
|
272
|
+
|
|
273
|
+
- ✅ Test migrations on dev first
|
|
274
|
+
- ✅ EXPLAIN ANALYZE for new queries
|
|
275
|
+
- ✅ Monitor query performance continuously
|
|
276
|
+
- ✅ Document schema changes in changelog
|
|
277
|
+
- ✅ Verify backup restoration regularly
|
|
278
|
+
- ✅ Use Context7 for best practice validation
|
|
279
|
+
- ✅ Implement connection pooling
|
|
280
|
+
- ✅ Set query timeouts
|
|
281
|
+
- ✅ Monitor database metrics
|
|
282
|
+
|
|
283
|
+
## Success Metrics
|
|
284
|
+
|
|
285
|
+
### Performance
|
|
286
|
+
- Query response time < 100ms for OLTP
|
|
287
|
+
- Query response time < 5s for OLAP
|
|
288
|
+
- Index hit ratio > 95% (PostgreSQL)
|
|
289
|
+
- Cache hit rate > 80% (Redis)
|
|
290
|
+
|
|
291
|
+
### Reliability
|
|
292
|
+
- Zero data loss during migrations
|
|
293
|
+
- Successful backup restoration test (monthly)
|
|
294
|
+
- Migration rollback success rate = 100%
|
|
295
|
+
- Replication lag < 1s
|
|
296
|
+
|
|
297
|
+
### Cost Optimization
|
|
298
|
+
- BigQuery: Queries stay within budget
|
|
299
|
+
- Cosmos DB: RU/s utilization 70-85%
|
|
300
|
+
- Unused index removal (quarterly review)
|
|
301
|
+
- Storage growth within projections
|
|
302
|
+
|
|
303
|
+
## Context7 Integration
|
|
304
|
+
|
|
305
|
+
All database operations should query Context7 for:
|
|
306
|
+
- Latest best practices for specific database versions
|
|
307
|
+
- Performance optimization techniques
|
|
308
|
+
- Security hardening guidelines
|
|
309
|
+
- Disaster recovery procedures
|
|
310
|
+
|
|
311
|
+
Example Context7 queries:
|
|
312
|
+
- `/websites/postgresql` - PostgreSQL indexing and optimization
|
|
313
|
+
- `/mongodb/docs` - MongoDB aggregation and sharding
|
|
314
|
+
- `/websites/redis_io` - Redis data structures and caching
|
|
315
|
+
- `/websites/cloud_google-bigquery` - BigQuery partitioning and clustering
|
|
316
|
+
- `/websites/learn_microsoft-en-us-azure-cosmos-db` - Cosmos DB consistency and partitioning
|