dojo.md 0.1.0 → 0.2.1
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/courses/GENERATION_LOG.md +72 -0
- package/courses/api-error-handling/course.yaml +16 -0
- package/courses/api-error-handling/scenarios/level-1/error-response-format.yaml +131 -0
- package/courses/api-error-handling/scenarios/level-1/http-status-codes-basics.yaml +90 -0
- package/courses/api-error-handling/scenarios/level-1/rate-limiting-basics.yaml +135 -0
- package/courses/api-error-handling/scenarios/level-1/request-validation-errors.yaml +208 -0
- package/courses/api-error-handling/scenarios/level-2/circuit-breaker-pattern.yaml +189 -0
- package/courses/api-error-handling/scenarios/level-2/idempotency-retry-logic.yaml +159 -0
- package/courses/api-error-handling/scenarios/level-2/rfc-7807-problem-details.yaml +178 -0
- package/courses/api-error-handling/scenarios/level-2/webhook-error-handling.yaml +211 -0
- package/courses/api-error-handling/scenarios/level-3/distributed-tracing-errors.yaml +275 -0
- package/courses/aws-lambda-debugging/course.yaml +11 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/api-gateway-integration.yaml +71 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/cloudwatch-logs-basics.yaml +64 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/cold-start-basics.yaml +70 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/environment-variable-issues.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/first-debugging-shift.yaml +73 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/handler-import-errors.yaml +71 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/iam-permission-errors.yaml +68 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/invocation-errors.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/lambda-timeout-errors.yaml +65 -0
- package/courses/aws-lambda-debugging/scenarios/level-1/memory-and-oom.yaml +70 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/async-invocation-failures.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/cold-start-optimization.yaml +76 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/dynamodb-streams-debugging.yaml +70 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/intermediate-debugging-shift.yaml +71 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/lambda-concurrency-management.yaml +70 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/lambda-layers-debugging.yaml +76 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/sam-local-debugging.yaml +74 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/sqs-event-source.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/vpc-networking-issues.yaml +71 -0
- package/courses/aws-lambda-debugging/scenarios/level-2/xray-tracing.yaml +62 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/advanced-debugging-shift.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/container-image-lambda.yaml +79 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/cross-account-invocation.yaml +72 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/eventbridge-patterns.yaml +79 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/iac-deployment-debugging.yaml +68 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/kinesis-stream-processing.yaml +64 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/lambda-at-edge.yaml +64 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/lambda-extensions-debugging.yaml +67 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/powertools-observability.yaml +79 -0
- package/courses/aws-lambda-debugging/scenarios/level-3/step-functions-debugging.yaml +80 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/cost-optimization-strategy.yaml +67 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/expert-debugging-shift.yaml +62 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/incident-management-serverless.yaml +61 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/multi-region-serverless.yaml +67 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/observability-platform-design.yaml +71 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/serverless-architecture-design.yaml +64 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/serverless-data-architecture.yaml +66 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/serverless-migration-strategy.yaml +65 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/serverless-security-design.yaml +60 -0
- package/courses/aws-lambda-debugging/scenarios/level-4/serverless-testing-strategy.yaml +62 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/board-serverless-strategy.yaml +63 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/consulting-serverless-adoption.yaml +57 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/industry-serverless-patterns.yaml +62 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/ma-serverless-integration.yaml +75 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/master-debugging-shift.yaml +61 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/organizational-serverless-transformation.yaml +65 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/regulatory-serverless.yaml +61 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/serverless-economics.yaml +65 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/serverless-future-technology.yaml +66 -0
- package/courses/aws-lambda-debugging/scenarios/level-5/serverless-platform-design.yaml +71 -0
- package/courses/docker-container-debugging/course.yaml +11 -0
- package/courses/docker-container-debugging/scenarios/level-1/container-exit-codes.yaml +59 -0
- package/courses/docker-container-debugging/scenarios/level-1/container-networking-basics.yaml +69 -0
- package/courses/docker-container-debugging/scenarios/level-1/docker-logs-debugging.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-1/dockerfile-build-failures.yaml +71 -0
- package/courses/docker-container-debugging/scenarios/level-1/environment-variable-issues.yaml +74 -0
- package/courses/docker-container-debugging/scenarios/level-1/first-debugging-shift.yaml +70 -0
- package/courses/docker-container-debugging/scenarios/level-1/image-pull-failures.yaml +68 -0
- package/courses/docker-container-debugging/scenarios/level-1/port-mapping-issues.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-1/resource-limits-oom.yaml +70 -0
- package/courses/docker-container-debugging/scenarios/level-1/volume-mount-problems.yaml +66 -0
- package/courses/docker-container-debugging/scenarios/level-2/container-health-checks.yaml +73 -0
- package/courses/docker-container-debugging/scenarios/level-2/docker-compose-debugging.yaml +66 -0
- package/courses/docker-container-debugging/scenarios/level-2/docker-exec-debugging.yaml +71 -0
- package/courses/docker-container-debugging/scenarios/level-2/image-layer-optimization.yaml +81 -0
- package/courses/docker-container-debugging/scenarios/level-2/intermediate-debugging-shift.yaml +73 -0
- package/courses/docker-container-debugging/scenarios/level-2/logging-and-log-rotation.yaml +76 -0
- package/courses/docker-container-debugging/scenarios/level-2/multi-stage-build-debugging.yaml +76 -0
- package/courses/docker-container-debugging/scenarios/level-2/network-debugging-tools.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-2/pid1-signal-handling.yaml +71 -0
- package/courses/docker-container-debugging/scenarios/level-2/security-scanning-basics.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-3/advanced-debugging-shift.yaml +77 -0
- package/courses/docker-container-debugging/scenarios/level-3/buildkit-optimization.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-3/container-filesystem-debugging.yaml +70 -0
- package/courses/docker-container-debugging/scenarios/level-3/container-security-hardening.yaml +74 -0
- package/courses/docker-container-debugging/scenarios/level-3/disk-space-management.yaml +74 -0
- package/courses/docker-container-debugging/scenarios/level-3/docker-api-automation.yaml +72 -0
- package/courses/docker-container-debugging/scenarios/level-3/docker-daemon-issues.yaml +73 -0
- package/courses/docker-container-debugging/scenarios/level-3/docker-in-docker-ci.yaml +69 -0
- package/courses/docker-container-debugging/scenarios/level-3/overlay-network-debugging.yaml +70 -0
- package/courses/docker-container-debugging/scenarios/level-3/production-container-ops.yaml +71 -0
- package/courses/docker-container-debugging/scenarios/level-4/cicd-pipeline-design.yaml +66 -0
- package/courses/docker-container-debugging/scenarios/level-4/container-monitoring-observability.yaml +63 -0
- package/courses/docker-container-debugging/scenarios/level-4/container-orchestration-strategy.yaml +62 -0
- package/courses/docker-container-debugging/scenarios/level-4/container-performance-engineering.yaml +64 -0
- package/courses/docker-container-debugging/scenarios/level-4/container-security-architecture.yaml +66 -0
- package/courses/docker-container-debugging/scenarios/level-4/enterprise-image-management.yaml +58 -0
- package/courses/docker-container-debugging/scenarios/level-4/expert-debugging-shift.yaml +63 -0
- package/courses/docker-container-debugging/scenarios/level-4/incident-response-containers.yaml +70 -0
- package/courses/docker-container-debugging/scenarios/level-4/multi-environment-management.yaml +65 -0
- package/courses/docker-container-debugging/scenarios/level-4/stateful-service-containers.yaml +65 -0
- package/courses/docker-container-debugging/scenarios/level-5/board-infrastructure-strategy.yaml +58 -0
- package/courses/docker-container-debugging/scenarios/level-5/consulting-container-strategy.yaml +61 -0
- package/courses/docker-container-debugging/scenarios/level-5/container-platform-architecture.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-5/container-platform-economics.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-5/container-technology-evolution.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-5/disaster-recovery-containers.yaml +66 -0
- package/courses/docker-container-debugging/scenarios/level-5/industry-container-patterns.yaml +71 -0
- package/courses/docker-container-debugging/scenarios/level-5/master-debugging-shift.yaml +62 -0
- package/courses/docker-container-debugging/scenarios/level-5/organizational-transformation.yaml +67 -0
- package/courses/docker-container-debugging/scenarios/level-5/regulatory-compliance-containers.yaml +61 -0
- package/courses/github-actions-cicd/course.yaml +10 -0
- package/courses/github-actions-cicd/scenarios/level-1/actions-and-runners.yaml +58 -0
- package/courses/github-actions-cicd/scenarios/level-1/basic-workflow-syntax.yaml +52 -0
- package/courses/github-actions-cicd/scenarios/level-1/branch-protection-checks.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-1/environment-variables-secrets.yaml +65 -0
- package/courses/github-actions-cicd/scenarios/level-1/first-cicd-shift.yaml +62 -0
- package/courses/github-actions-cicd/scenarios/level-1/job-dependencies-outputs.yaml +62 -0
- package/courses/github-actions-cicd/scenarios/level-1/simple-ci-pipeline.yaml +57 -0
- package/courses/github-actions-cicd/scenarios/level-1/workflow-debugging.yaml +90 -0
- package/courses/github-actions-cicd/scenarios/level-1/workflow-status-notifications.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-1/workflow-triggers.yaml +56 -0
- package/courses/github-actions-cicd/scenarios/level-2/concurrency-control.yaml +58 -0
- package/courses/github-actions-cicd/scenarios/level-2/conditional-execution.yaml +60 -0
- package/courses/github-actions-cicd/scenarios/level-2/custom-actions-development.yaml +55 -0
- package/courses/github-actions-cicd/scenarios/level-2/dependency-caching.yaml +58 -0
- package/courses/github-actions-cicd/scenarios/level-2/deployment-workflows.yaml +61 -0
- package/courses/github-actions-cicd/scenarios/level-2/github-packages-publishing.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-2/intermediate-cicd-shift.yaml +68 -0
- package/courses/github-actions-cicd/scenarios/level-2/matrix-builds.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-2/reusable-workflows.yaml +61 -0
- package/courses/github-actions-cicd/scenarios/level-2/workflow-cost-optimization.yaml +61 -0
- package/courses/github-actions-cicd/scenarios/level-3/advanced-cicd-shift.yaml +64 -0
- package/courses/github-actions-cicd/scenarios/level-3/compliance-automation.yaml +68 -0
- package/courses/github-actions-cicd/scenarios/level-3/docker-action-development.yaml +65 -0
- package/courses/github-actions-cicd/scenarios/level-3/github-environments.yaml +65 -0
- package/courses/github-actions-cicd/scenarios/level-3/monorepo-ci.yaml +68 -0
- package/courses/github-actions-cicd/scenarios/level-3/oidc-cloud-deployments.yaml +55 -0
- package/courses/github-actions-cicd/scenarios/level-3/release-automation.yaml +61 -0
- package/courses/github-actions-cicd/scenarios/level-3/security-hardening.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-3/self-hosted-runners.yaml +60 -0
- package/courses/github-actions-cicd/scenarios/level-3/workflow-optimization.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-data-architecture.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-economics-roi.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-executive-communication.yaml +58 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-incident-response.yaml +60 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-org-design.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-platform-architecture.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-training-program.yaml +65 -0
- package/courses/github-actions-cicd/scenarios/level-4/cicd-vendor-evaluation.yaml +59 -0
- package/courses/github-actions-cicd/scenarios/level-4/enterprise-cicd-governance.yaml +55 -0
- package/courses/github-actions-cicd/scenarios/level-4/expert-cicd-shift.yaml +60 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-ai-future.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-behavioral-science.yaml +70 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-board-strategy.yaml +56 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-consulting-engagement.yaml +61 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-industry-benchmarks.yaml +63 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-ma-integration.yaml +73 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-product-development.yaml +68 -0
- package/courses/github-actions-cicd/scenarios/level-5/cicd-regulatory-landscape.yaml +72 -0
- package/courses/github-actions-cicd/scenarios/level-5/comprehensive-cicd-system.yaml +66 -0
- package/courses/github-actions-cicd/scenarios/level-5/master-cicd-shift.yaml +76 -0
- package/courses/github-pr-review/scenarios/level-2/api-change-review.yaml +82 -0
- package/courses/github-pr-review/scenarios/level-2/automated-review-tooling.yaml +53 -0
- package/courses/github-pr-review/scenarios/level-2/cross-team-review.yaml +61 -0
- package/courses/github-pr-review/scenarios/level-2/intermediate-review-shift.yaml +66 -0
- package/courses/github-pr-review/scenarios/level-2/performance-review-patterns.yaml +99 -0
- package/courses/github-pr-review/scenarios/level-2/review-disagreement-resolution.yaml +64 -0
- package/courses/github-pr-review/scenarios/level-2/review-metrics-analysis.yaml +63 -0
- package/courses/github-pr-review/scenarios/level-2/review-turnaround-sla.yaml +54 -0
- package/courses/github-pr-review/scenarios/level-2/stacked-pr-review.yaml +65 -0
- package/courses/github-pr-review/scenarios/level-3/advanced-review-shift.yaml +65 -0
- package/courses/github-pr-review/scenarios/level-3/ai-powered-review.yaml +58 -0
- package/courses/github-pr-review/scenarios/level-3/compliance-review-process.yaml +64 -0
- package/courses/github-pr-review/scenarios/level-3/cross-functional-review.yaml +60 -0
- package/courses/github-pr-review/scenarios/level-3/incident-driven-review.yaml +63 -0
- package/courses/github-pr-review/scenarios/level-3/large-scale-review-operations.yaml +55 -0
- package/courses/github-pr-review/scenarios/level-3/monorepo-review-process.yaml +68 -0
- package/courses/github-pr-review/scenarios/level-3/review-automation-platform.yaml +61 -0
- package/courses/github-pr-review/scenarios/level-3/review-culture-design.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-3/review-data-pipeline.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-4/enterprise-review-operations.yaml +61 -0
- package/courses/github-pr-review/scenarios/level-4/expert-review-shift.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-4/review-data-architecture.yaml +69 -0
- package/courses/github-pr-review/scenarios/level-4/review-economics-roi.yaml +63 -0
- package/courses/github-pr-review/scenarios/level-4/review-executive-communication.yaml +61 -0
- package/courses/github-pr-review/scenarios/level-4/review-incident-postmortem.yaml +69 -0
- package/courses/github-pr-review/scenarios/level-4/review-org-design.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-4/review-platform-architecture.yaml +64 -0
- package/courses/github-pr-review/scenarios/level-4/review-training-program.yaml +66 -0
- package/courses/github-pr-review/scenarios/level-4/review-vendor-evaluation.yaml +76 -0
- package/courses/github-pr-review/scenarios/level-5/comprehensive-review-system.yaml +68 -0
- package/courses/github-pr-review/scenarios/level-5/master-review-shift.yaml +73 -0
- package/courses/github-pr-review/scenarios/level-5/review-ai-future.yaml +69 -0
- package/courses/github-pr-review/scenarios/level-5/review-behavioral-science.yaml +66 -0
- package/courses/github-pr-review/scenarios/level-5/review-board-strategy.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-5/review-consulting-engagement.yaml +62 -0
- package/courses/github-pr-review/scenarios/level-5/review-devtools-product.yaml +71 -0
- package/courses/github-pr-review/scenarios/level-5/review-industry-benchmarks.yaml +64 -0
- package/courses/github-pr-review/scenarios/level-5/review-ma-integration.yaml +76 -0
- package/courses/github-pr-review/scenarios/level-5/review-regulatory-landscape.yaml +78 -0
- package/courses/kubernetes-deployment-troubleshooting/course.yaml +12 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/configmap-secret-issues.yaml +69 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/crashloopbackoff.yaml +68 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/deployment-rollout.yaml +56 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/first-troubleshooting-shift.yaml +65 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/health-probe-failures.yaml +70 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/imagepullbackoff.yaml +57 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/kubectl-debugging-basics.yaml +56 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/oomkilled.yaml +70 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/pending-pods.yaml +68 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/service-not-reachable.yaml +66 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/dns-resolution-failures.yaml +63 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/helm-deployment-failures.yaml +63 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/hpa-scaling-issues.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/ingress-routing-issues.yaml +63 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/init-container-failures.yaml +63 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/intermediate-troubleshooting-shift.yaml +66 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/network-policy-blocking.yaml +67 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/persistent-volume-issues.yaml +69 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/rbac-permission-denied.yaml +57 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/resource-quota-limits.yaml +64 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/advanced-troubleshooting-shift.yaml +69 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/cluster-upgrade-failures.yaml +71 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/gitops-drift-detection.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/job-cronjob-failures.yaml +67 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/monitoring-alerting-gaps.yaml +64 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/multi-container-debugging.yaml +68 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/node-pressure-evictions.yaml +70 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/pod-disruption-budgets.yaml +59 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/service-mesh-debugging.yaml +64 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/statefulset-troubleshooting.yaml +69 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/capacity-planning.yaml +65 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/cost-optimization.yaml +57 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/disaster-recovery-design.yaml +56 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/executive-communication.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/expert-troubleshooting-shift.yaml +65 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/incident-management-process.yaml +59 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/multi-cluster-operations.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/multi-tenancy-design.yaml +55 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/platform-engineering.yaml +59 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/security-hardening.yaml +58 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/behavioral-science.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/board-strategy.yaml +61 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/cloud-native-future.yaml +65 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/comprehensive-platform.yaml +57 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/consulting-engagement.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/industry-benchmarks.yaml +58 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/ma-integration.yaml +62 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/master-troubleshooting-shift.yaml +73 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/product-development.yaml +65 -0
- package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/regulatory-compliance.yaml +76 -0
- package/courses/mysql-query-optimization/course.yaml +11 -0
- package/courses/mysql-query-optimization/scenarios/level-1/buffer-pool-basics.yaml +65 -0
- package/courses/mysql-query-optimization/scenarios/level-1/explain-basics.yaml +66 -0
- package/courses/mysql-query-optimization/scenarios/level-1/first-optimization-shift.yaml +78 -0
- package/courses/mysql-query-optimization/scenarios/level-1/innodb-index-fundamentals.yaml +68 -0
- package/courses/mysql-query-optimization/scenarios/level-1/join-basics.yaml +66 -0
- package/courses/mysql-query-optimization/scenarios/level-1/n-plus-one-queries.yaml +67 -0
- package/courses/mysql-query-optimization/scenarios/level-1/query-rewriting-basics.yaml +66 -0
- package/courses/mysql-query-optimization/scenarios/level-1/select-star-problems.yaml +68 -0
- package/courses/mysql-query-optimization/scenarios/level-1/slow-query-diagnosis.yaml +65 -0
- package/courses/mysql-query-optimization/scenarios/level-1/where-clause-optimization.yaml +65 -0
- package/courses/mysql-query-optimization/scenarios/level-2/buffer-pool-tuning.yaml +64 -0
- package/courses/mysql-query-optimization/scenarios/level-2/composite-index-design.yaml +71 -0
- package/courses/mysql-query-optimization/scenarios/level-2/covering-and-invisible-indexes.yaml +69 -0
- package/courses/mysql-query-optimization/scenarios/level-2/cte-and-window-functions.yaml +78 -0
- package/courses/mysql-query-optimization/scenarios/level-2/intermediate-optimization-shift.yaml +68 -0
- package/courses/mysql-query-optimization/scenarios/level-2/join-optimization.yaml +67 -0
- package/courses/mysql-query-optimization/scenarios/level-2/performance-schema-analysis.yaml +69 -0
- package/courses/mysql-query-optimization/scenarios/level-2/query-optimizer-hints.yaml +74 -0
- package/courses/mysql-query-optimization/scenarios/level-2/subquery-optimization.yaml +70 -0
- package/courses/mysql-query-optimization/scenarios/level-2/write-optimization.yaml +63 -0
- package/courses/mysql-query-optimization/scenarios/level-3/advanced-optimization-shift.yaml +71 -0
- package/courses/mysql-query-optimization/scenarios/level-3/connection-management.yaml +67 -0
- package/courses/mysql-query-optimization/scenarios/level-3/full-text-search.yaml +77 -0
- package/courses/mysql-query-optimization/scenarios/level-3/json-optimization.yaml +87 -0
- package/courses/mysql-query-optimization/scenarios/level-3/lock-contention-analysis.yaml +68 -0
- package/courses/mysql-query-optimization/scenarios/level-3/monitoring-alerting.yaml +63 -0
- package/courses/mysql-query-optimization/scenarios/level-3/online-schema-changes.yaml +79 -0
- package/courses/mysql-query-optimization/scenarios/level-3/partitioning-strategies.yaml +83 -0
- package/courses/mysql-query-optimization/scenarios/level-3/query-profiling-deep-dive.yaml +84 -0
- package/courses/mysql-query-optimization/scenarios/level-3/replication-optimization.yaml +66 -0
- package/courses/mysql-query-optimization/scenarios/level-4/aurora-vs-rds-evaluation.yaml +61 -0
- package/courses/mysql-query-optimization/scenarios/level-4/data-architecture.yaml +62 -0
- package/courses/mysql-query-optimization/scenarios/level-4/database-migration-planning.yaml +59 -0
- package/courses/mysql-query-optimization/scenarios/level-4/enterprise-governance.yaml +50 -0
- package/courses/mysql-query-optimization/scenarios/level-4/executive-communication.yaml +54 -0
- package/courses/mysql-query-optimization/scenarios/level-4/expert-optimization-shift.yaml +67 -0
- package/courses/mysql-query-optimization/scenarios/level-4/high-availability-architecture.yaml +60 -0
- package/courses/mysql-query-optimization/scenarios/level-4/optimizer-internals.yaml +62 -0
- package/courses/mysql-query-optimization/scenarios/level-4/performance-sla-design.yaml +52 -0
- package/courses/mysql-query-optimization/scenarios/level-4/read-replica-scaling.yaml +51 -0
- package/courses/mysql-query-optimization/scenarios/level-5/ai-database-future.yaml +45 -0
- package/courses/mysql-query-optimization/scenarios/level-5/behavioral-science.yaml +44 -0
- package/courses/mysql-query-optimization/scenarios/level-5/benchmark-design.yaml +47 -0
- package/courses/mysql-query-optimization/scenarios/level-5/board-strategy.yaml +48 -0
- package/courses/mysql-query-optimization/scenarios/level-5/comprehensive-platform.yaml +49 -0
- package/courses/mysql-query-optimization/scenarios/level-5/consulting-engagement.yaml +52 -0
- package/courses/mysql-query-optimization/scenarios/level-5/ma-database-integration.yaml +47 -0
- package/courses/mysql-query-optimization/scenarios/level-5/master-optimization-shift.yaml +56 -0
- package/courses/mysql-query-optimization/scenarios/level-5/product-development.yaml +48 -0
- package/courses/mysql-query-optimization/scenarios/level-5/regulatory-compliance.yaml +48 -0
- package/courses/postgresql-query-optimization/course.yaml +11 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/explain-analyze-basics.yaml +80 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/first-optimization-shift.yaml +77 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/index-fundamentals.yaml +76 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/join-basics.yaml +73 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/n-plus-one-queries.yaml +62 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/query-rewriting-basics.yaml +69 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/select-star-problems.yaml +69 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/slow-query-diagnosis.yaml +63 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/vacuum-and-statistics.yaml +62 -0
- package/courses/postgresql-query-optimization/scenarios/level-1/where-clause-optimization.yaml +74 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/autovacuum-tuning.yaml +76 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/composite-index-design.yaml +81 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/covering-indexes.yaml +74 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/cte-optimization.yaml +83 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/intermediate-optimization-shift.yaml +66 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/join-optimization.yaml +72 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/partial-and-expression-indexes.yaml +75 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/query-planner-settings.yaml +62 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/subquery-optimization.yaml +67 -0
- package/courses/postgresql-query-optimization/scenarios/level-2/window-function-optimization.yaml +63 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/advanced-optimization-shift.yaml +71 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/connection-pooling.yaml +60 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/full-text-search-optimization.yaml +66 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/jsonb-optimization.yaml +88 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/lock-contention-analysis.yaml +80 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/materialized-view-optimization.yaml +73 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/parallel-query-execution.yaml +74 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/partitioning-strategies.yaml +71 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/specialized-index-types.yaml +67 -0
- package/courses/postgresql-query-optimization/scenarios/level-3/write-optimization.yaml +65 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/data-architecture-analytics.yaml +64 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/database-executive-communication.yaml +64 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/database-migration-planning.yaml +57 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/enterprise-database-governance.yaml +52 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/expert-optimization-shift.yaml +73 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/high-availability-architecture.yaml +62 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/optimizer-internals.yaml +69 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/performance-sla-design.yaml +58 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/read-replica-optimization.yaml +62 -0
- package/courses/postgresql-query-optimization/scenarios/level-4/vendor-evaluation.yaml +73 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/comprehensive-database-system.yaml +70 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-ai-future.yaml +81 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-behavioral-science.yaml +63 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-board-strategy.yaml +77 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-consulting-engagement.yaml +61 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-industry-benchmarks.yaml +64 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-ma-integration.yaml +71 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-product-development.yaml +72 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/database-regulatory-landscape.yaml +76 -0
- package/courses/postgresql-query-optimization/scenarios/level-5/master-optimization-shift.yaml +66 -0
- package/courses/rest-api-error-handling/course.yaml +11 -0
- package/courses/rest-api-error-handling/scenarios/level-1/authentication-errors.yaml +71 -0
- package/courses/rest-api-error-handling/scenarios/level-1/content-negotiation-errors.yaml +63 -0
- package/courses/rest-api-error-handling/scenarios/level-1/error-logging-basics.yaml +63 -0
- package/courses/rest-api-error-handling/scenarios/level-1/error-response-format.yaml +58 -0
- package/courses/rest-api-error-handling/scenarios/level-1/first-error-handling-shift.yaml +67 -0
- package/courses/rest-api-error-handling/scenarios/level-1/http-status-codes.yaml +46 -0
- package/courses/rest-api-error-handling/scenarios/level-1/not-found-errors.yaml +52 -0
- package/courses/rest-api-error-handling/scenarios/level-1/rate-limiting-errors.yaml +56 -0
- package/courses/rest-api-error-handling/scenarios/level-1/request-validation-errors.yaml +59 -0
- package/courses/rest-api-error-handling/scenarios/level-1/server-error-handling.yaml +55 -0
- package/courses/rest-api-error-handling/scenarios/level-2/api-versioning-errors.yaml +66 -0
- package/courses/rest-api-error-handling/scenarios/level-2/batch-request-errors.yaml +61 -0
- package/courses/rest-api-error-handling/scenarios/level-2/circuit-breaker-pattern.yaml +52 -0
- package/courses/rest-api-error-handling/scenarios/level-2/error-code-taxonomy.yaml +62 -0
- package/courses/rest-api-error-handling/scenarios/level-2/error-monitoring-alerting.yaml +53 -0
- package/courses/rest-api-error-handling/scenarios/level-2/intermediate-error-shift.yaml +69 -0
- package/courses/rest-api-error-handling/scenarios/level-2/pagination-errors.yaml +66 -0
- package/courses/rest-api-error-handling/scenarios/level-2/retry-and-idempotency.yaml +60 -0
- package/courses/rest-api-error-handling/scenarios/level-2/rfc7807-problem-details.yaml +60 -0
- package/courses/rest-api-error-handling/scenarios/level-2/webhook-error-handling.yaml +55 -0
- package/courses/rest-api-error-handling/scenarios/level-3/advanced-error-shift.yaml +72 -0
- package/courses/rest-api-error-handling/scenarios/level-3/api-gateway-errors.yaml +71 -0
- package/courses/rest-api-error-handling/scenarios/level-3/async-api-errors.yaml +67 -0
- package/courses/rest-api-error-handling/scenarios/level-3/caching-error-scenarios.yaml +65 -0
- package/courses/rest-api-error-handling/scenarios/level-3/chaos-engineering-apis.yaml +62 -0
- package/courses/rest-api-error-handling/scenarios/level-3/database-error-handling.yaml +79 -0
- package/courses/rest-api-error-handling/scenarios/level-3/distributed-error-propagation.yaml +63 -0
- package/courses/rest-api-error-handling/scenarios/level-3/error-budgets-sre.yaml +61 -0
- package/courses/rest-api-error-handling/scenarios/level-3/error-correlation.yaml +58 -0
- package/courses/rest-api-error-handling/scenarios/level-3/graphql-vs-rest-errors.yaml +73 -0
- package/courses/rest-api-error-handling/scenarios/level-4/compliance-error-handling.yaml +65 -0
- package/courses/rest-api-error-handling/scenarios/level-4/enterprise-error-governance.yaml +62 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-analytics-platform.yaml +65 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-cost-optimization.yaml +63 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-executive-communication.yaml +60 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-handling-architecture.yaml +67 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-org-design.yaml +68 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-sla-design.yaml +65 -0
- package/courses/rest-api-error-handling/scenarios/level-4/error-training-program.yaml +61 -0
- package/courses/rest-api-error-handling/scenarios/level-4/expert-error-shift.yaml +63 -0
- package/courses/rest-api-error-handling/scenarios/level-5/comprehensive-error-system.yaml +68 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-ai-future.yaml +75 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-behavioral-science.yaml +73 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-board-strategy.yaml +60 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-consulting-engagement.yaml +58 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-industry-benchmarks.yaml +72 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-ma-integration.yaml +68 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-product-development.yaml +66 -0
- package/courses/rest-api-error-handling/scenarios/level-5/error-regulatory-landscape.yaml +80 -0
- package/courses/rest-api-error-handling/scenarios/level-5/master-error-shift.yaml +73 -0
- package/courses/terraform-infrastructure-setup/course.yaml +11 -0
- package/courses/terraform-infrastructure-setup/scenarios/level-1/terraform-init-errors.yaml +72 -0
- package/dist/cli/commands/add.d.ts.map +1 -1
- package/dist/cli/commands/add.js +6 -5
- package/dist/cli/commands/add.js.map +1 -1
- package/dist/cli/commands/generate.d.ts.map +1 -1
- package/dist/cli/commands/generate.js +4 -0
- package/dist/cli/commands/generate.js.map +1 -1
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +6 -18
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/train.d.ts.map +1 -1
- package/dist/cli/commands/train.js +18 -18
- package/dist/cli/commands/train.js.map +1 -1
- package/dist/cli/index.js +93 -55
- package/dist/cli/index.js.map +1 -1
- package/dist/cli/run-demo.js +2 -1
- package/dist/cli/run-demo.js.map +1 -1
- package/dist/cli/setup.d.ts +18 -0
- package/dist/cli/setup.d.ts.map +1 -0
- package/dist/cli/setup.js +154 -0
- package/dist/cli/setup.js.map +1 -0
- package/dist/engine/agent-bridge.d.ts +5 -2
- package/dist/engine/agent-bridge.d.ts.map +1 -1
- package/dist/engine/agent-bridge.js +36 -9
- package/dist/engine/agent-bridge.js.map +1 -1
- package/dist/engine/loader.d.ts +21 -0
- package/dist/engine/loader.d.ts.map +1 -1
- package/dist/engine/loader.js +54 -1
- package/dist/engine/loader.js.map +1 -1
- package/dist/engine/training-loop.d.ts.map +1 -1
- package/dist/engine/training-loop.js +1 -0
- package/dist/engine/training-loop.js.map +1 -1
- package/dist/engine/training.d.ts.map +1 -1
- package/dist/engine/training.js +1 -0
- package/dist/engine/training.js.map +1 -1
- package/dist/generator/skill-generator.d.ts +1 -1
- package/dist/generator/skill-generator.d.ts.map +1 -1
- package/dist/generator/skill-generator.js +21 -2
- package/dist/generator/skill-generator.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +11 -26
- package/dist/mcp/server.js.map +1 -1
- package/dist/mcp/session-manager.d.ts +9 -4
- package/dist/mcp/session-manager.d.ts.map +1 -1
- package/dist/mcp/session-manager.js +65 -28
- package/dist/mcp/session-manager.js.map +1 -1
- package/dist/types/schemas.d.ts +38 -13
- package/dist/types/schemas.d.ts.map +1 -1
- package/dist/types/schemas.js +9 -5
- package/dist/types/schemas.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: ai-database-future
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Explore AI-powered MySQL optimization — evaluate autonomous tuning, AI query optimization, and the evolving DBA role"
|
|
7
|
+
tags: [MySQL, AI, autonomous-tuning, machine-learning, future, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your CTO asks you to evaluate how AI will transform MySQL operations
|
|
13
|
+
and recommend which AI-powered technologies to invest in.
|
|
14
|
+
|
|
15
|
+
Current AI-database landscape:
|
|
16
|
+
1. Autonomous tuning (OtterTune/Releem): ML-based my.cnf optimization
|
|
17
|
+
2. AI query optimization: learned optimizers replacing cost-based
|
|
18
|
+
3. AI-powered indexing: automatic index recommendations
|
|
19
|
+
4. AI monitoring: anomaly detection, predictive alerting
|
|
20
|
+
5. Natural language to SQL: text-to-SQL for non-technical users
|
|
21
|
+
6. MySQL HeatWave: Oracle's ML-in-database for analytics
|
|
22
|
+
|
|
23
|
+
Evaluation criteria:
|
|
24
|
+
- Production readiness
|
|
25
|
+
- ROI vs complexity
|
|
26
|
+
- Risk when AI is wrong
|
|
27
|
+
- Team skill requirements
|
|
28
|
+
|
|
29
|
+
Task: Write the technology evaluation. Include: assessment of each
|
|
30
|
+
technology, adoption roadmap, text-to-SQL safety framework, and
|
|
31
|
+
prediction of how the DBA role evolves.
|
|
32
|
+
|
|
33
|
+
assertions:
|
|
34
|
+
- type: llm_judge
|
|
35
|
+
criteria: "Technologies are honestly assessed — autonomous tuning (semi-ready, good ROI), learned optimizers (research stage), index advisors (ready), AI monitoring (production-ready, high ROI), text-to-SQL (risky without guardrails), HeatWave (production-ready for analytics). Avoids both hype and dismissiveness"
|
|
36
|
+
weight: 0.35
|
|
37
|
+
description: "Honest assessment"
|
|
38
|
+
- type: llm_judge
|
|
39
|
+
criteria: "Adoption roadmap is practical — separates 'adopt now' (AI monitoring, index advisors), 'evaluate' (autonomous tuning, text-to-SQL), and 'watch' (learned optimizers). Each has implementation complexity and expected timeline"
|
|
40
|
+
weight: 0.35
|
|
41
|
+
description: "Practical roadmap"
|
|
42
|
+
- type: llm_judge
|
|
43
|
+
criteria: "DBA role evolution and safety are addressed — AI augments not replaces DBAs, text-to-SQL needs guardrails (read-only, query cost limits, audit logging), and the shift from manual tuning to AI supervision"
|
|
44
|
+
weight: 0.30
|
|
45
|
+
description: "DBA evolution and safety"
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: behavioral-science
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Apply behavioral science to MySQL operations — nudge engineers toward good query practices and prevent performance anti-patterns at scale"
|
|
7
|
+
tags: [MySQL, behavioral-science, nudge-theory, developer-experience, culture, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your organization has 300 engineers writing MySQL queries. Despite
|
|
13
|
+
training and documentation, the same anti-patterns keep appearing:
|
|
14
|
+
SELECT *, missing indexes, N+1 queries, and long-running transactions.
|
|
15
|
+
|
|
16
|
+
Anti-pattern frequency (last quarter):
|
|
17
|
+
- SELECT * on wide tables: 90 new instances
|
|
18
|
+
- N+1 queries in new endpoints: 35 instances
|
|
19
|
+
- Missing WHERE on UPDATE/DELETE: 5 production incidents
|
|
20
|
+
- Queries without LIMIT: 50 instances
|
|
21
|
+
- Long transactions blocking replication: 20 incidents
|
|
22
|
+
|
|
23
|
+
Traditional approaches tried:
|
|
24
|
+
- Documentation wiki: 10% read rate
|
|
25
|
+
- Training sessions: attendance drops 60% after first
|
|
26
|
+
- Code review checklist: reviewers skip DB items under pressure
|
|
27
|
+
|
|
28
|
+
Task: Design a behavioral system for MySQL query excellence. Write:
|
|
29
|
+
choice architecture (good defaults), automated nudge system, feedback
|
|
30
|
+
loops, social proof mechanisms, and change management plan.
|
|
31
|
+
|
|
32
|
+
assertions:
|
|
33
|
+
- type: llm_judge
|
|
34
|
+
criteria: "Choice architecture makes good practices default — ORM defaults to explicit columns, query timeouts configured by default, CI/CD includes automatic EXPLAIN analysis, migration tools enforce safe patterns"
|
|
35
|
+
weight: 0.35
|
|
36
|
+
description: "Choice architecture"
|
|
37
|
+
- type: llm_judge
|
|
38
|
+
criteria: "Nudge system intervenes at the right moment — IDE warnings for SELECT *, PR bot with query performance estimates, pre-deploy checks showing estimated cost, post-deploy dashboards attributing latency to deployments"
|
|
39
|
+
weight: 0.35
|
|
40
|
+
description: "Timely nudges"
|
|
41
|
+
- type: llm_judge
|
|
42
|
+
criteria: "Feedback loops and social proof create sustainable change — real-time dashboards per team, automated performance reports, gamification elements, and change management addresses resistance with measurable success metrics"
|
|
43
|
+
weight: 0.30
|
|
44
|
+
description: "Sustainable feedback loops"
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: benchmark-design
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design MySQL benchmarks — create rigorous performance tests, avoid common pitfalls, and translate results into infrastructure decisions"
|
|
7
|
+
tags: [MySQL, benchmarks, sysbench, performance-testing, capacity-planning, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your company needs to decide between Aurora MySQL and self-managed
|
|
13
|
+
MySQL on EC2 for a $1.5M infrastructure decision. The CTO says "run
|
|
14
|
+
benchmarks by Friday." You know naive benchmarking leads to wrong
|
|
15
|
+
conclusions.
|
|
16
|
+
|
|
17
|
+
Context:
|
|
18
|
+
- Current: Self-managed MySQL 8.0 on r6g.4xlarge
|
|
19
|
+
- Candidate: Aurora MySQL 8.0 on db.r6g.4xlarge
|
|
20
|
+
- Workload: Mixed OLTP (75% reads, 25% writes), 80K TPS
|
|
21
|
+
- Data: 500GB active, 2TB total
|
|
22
|
+
- Critical queries: point lookups, range scans, JOINs, bulk inserts
|
|
23
|
+
|
|
24
|
+
Common mistakes you've seen:
|
|
25
|
+
1. Using sysbench with data fitting in RAM (no I/O test)
|
|
26
|
+
2. Running 5-minute benchmarks (not long enough)
|
|
27
|
+
3. Testing with uniform data (not real distribution)
|
|
28
|
+
4. Single-connection tests (not concurrent load)
|
|
29
|
+
5. Ignoring storage (Aurora I/O costs vs EBS provisioned IOPS)
|
|
30
|
+
6. Not testing failure scenarios
|
|
31
|
+
|
|
32
|
+
Task: Design the benchmark plan. Write: methodology, workload design,
|
|
33
|
+
metrics to collect, pitfalls to avoid, and decision framework.
|
|
34
|
+
|
|
35
|
+
assertions:
|
|
36
|
+
- type: llm_judge
|
|
37
|
+
criteria: "Methodology is rigorous — tests data larger than RAM (500GB+), runs for hours with warm-up phase, includes concurrent load matching production (100+ connections), and tests both normal and degraded modes (replica failure, high connections)"
|
|
38
|
+
weight: 0.35
|
|
39
|
+
description: "Rigorous methodology"
|
|
40
|
+
- type: llm_judge
|
|
41
|
+
criteria: "Workload represents real usage — captures 75/25 read/write mix, uses representative queries (not just simple SELECTs), realistic data distributions, and tests at multiple concurrency levels to find saturation"
|
|
42
|
+
weight: 0.35
|
|
43
|
+
description: "Realistic workload"
|
|
44
|
+
- type: llm_judge
|
|
45
|
+
criteria: "Decision framework considers more than QPS — includes latency percentiles, cost-per-transaction, operational overhead, failure behavior, and long-term cost trajectory. Acknowledges benchmarks are one input alongside operational and strategic factors"
|
|
46
|
+
weight: 0.30
|
|
47
|
+
description: "Holistic decision framework"
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: board-strategy
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Present MySQL strategy to the board — secure multi-year investment for database modernization and position infrastructure as competitive advantage"
|
|
7
|
+
tags: [MySQL, board-strategy, investment, modernization, governance, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the CTO presenting database strategy to the Board of Directors.
|
|
13
|
+
You need to secure $4M over 3 years for MySQL modernization. IPO
|
|
14
|
+
planned in 24 months.
|
|
15
|
+
|
|
16
|
+
Company: $150M ARR SaaS, 3,000 enterprise customers
|
|
17
|
+
Current: 20 MySQL clusters, 30TB, 5 DBAs, $2.5M/year infrastructure
|
|
18
|
+
Issues: 4 major outages last year (20 hours downtime), SLA breach
|
|
19
|
+
(99.5% vs promised 99.9%)
|
|
20
|
+
|
|
21
|
+
The $4M program:
|
|
22
|
+
Year 1 ($1.8M): Upgrade MySQL 5.7→8.0, deploy HA, implement monitoring
|
|
23
|
+
Year 2 ($1.3M): Migrate to Aurora, implement auto-scaling, reduce team
|
|
24
|
+
Year 3 ($0.9M): Achieve 99.99% availability, self-service platform
|
|
25
|
+
|
|
26
|
+
Board concerns:
|
|
27
|
+
- "Why not just move to the cloud and let AWS handle it?"
|
|
28
|
+
- "Can't we just hire more DBAs?"
|
|
29
|
+
- "What if we delay until after IPO?"
|
|
30
|
+
- "How does this compare to competitors?"
|
|
31
|
+
|
|
32
|
+
Task: Write the board presentation. Include: strategic framing,
|
|
33
|
+
investment case with ROI, risk of inaction, phased plan, and
|
|
34
|
+
responses to board concerns.
|
|
35
|
+
|
|
36
|
+
assertions:
|
|
37
|
+
- type: llm_judge
|
|
38
|
+
criteria: "Strategic framing resonates with board — database as business asset, reliability as customer retention driver, IPO readiness (due diligence will examine infrastructure), uses business language for non-technical board members"
|
|
39
|
+
weight: 0.35
|
|
40
|
+
description: "Board-appropriate framing"
|
|
41
|
+
- type: llm_judge
|
|
42
|
+
criteria: "Investment case is compelling — ROI quantified (avoided downtime costs, SLA penalty avoidance, infrastructure cost reduction), risk of inaction (SLA breach exposure, IPO risk), phased approach reduces execution risk"
|
|
43
|
+
weight: 0.35
|
|
44
|
+
description: "Compelling investment case"
|
|
45
|
+
- type: llm_judge
|
|
46
|
+
criteria: "Board concerns addressed directly — cloud migration alone doesn't solve optimization problems, more DBAs is a band-aid, delaying increases cost and risk, competitive benchmarking provided. Responses are concise and business-focused"
|
|
47
|
+
weight: 0.30
|
|
48
|
+
description: "Concerns addressed"
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: comprehensive-platform
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design a MySQL database platform — architect self-service provisioning, automated operations, and unified observability for a large organization"
|
|
7
|
+
tags: [MySQL, platform, self-service, automation, observability, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're VP of Database Platform at a company with 5,000 engineers.
|
|
13
|
+
The CEO mandates "database as a platform" — engineers should provision
|
|
14
|
+
and manage databases without DBA tickets.
|
|
15
|
+
|
|
16
|
+
Current state:
|
|
17
|
+
- 300 MySQL databases, 60 teams
|
|
18
|
+
- Provisioning time: 2 weeks (ticket-based)
|
|
19
|
+
- 12 DBAs handling all requests (bottleneck)
|
|
20
|
+
- No self-service, every change requires DBA approval
|
|
21
|
+
- No cost attribution — database costs are one lump sum
|
|
22
|
+
|
|
23
|
+
Target state:
|
|
24
|
+
- Self-service provisioning in <10 minutes
|
|
25
|
+
- Automated schema change review and deployment
|
|
26
|
+
- Unified observability across all 300 databases
|
|
27
|
+
- Cost attribution per team
|
|
28
|
+
- Automated incident detection and remediation
|
|
29
|
+
|
|
30
|
+
Budget: $3M/year for platform team (15 engineers)
|
|
31
|
+
Migration: 18 months to onboard all 300 databases
|
|
32
|
+
|
|
33
|
+
Task: Design the database platform. Write: platform architecture,
|
|
34
|
+
self-service provisioning, governance model, migration strategy for
|
|
35
|
+
300 databases, and success metrics.
|
|
36
|
+
|
|
37
|
+
assertions:
|
|
38
|
+
- type: llm_judge
|
|
39
|
+
criteria: "Platform covers key components — provisioning (Terraform/Kubernetes operator), schema management (GitOps), query governance (CI/CD), observability (centralized monitoring), cost management (per-team attribution), security (automated RBAC), DR (automated backups)"
|
|
40
|
+
weight: 0.35
|
|
41
|
+
description: "Complete platform"
|
|
42
|
+
- type: llm_judge
|
|
43
|
+
criteria: "Self-service balances autonomy with governance — instant provisioning within guardrails, automated schema review, clear boundaries for self-service vs platform team approval"
|
|
44
|
+
weight: 0.35
|
|
45
|
+
description: "Balanced self-service"
|
|
46
|
+
- type: llm_judge
|
|
47
|
+
criteria: "Migration is phased and measurable — onboards 300 databases in phases, success metrics defined (provisioning time, incident MTTR, team satisfaction, cost per database), 15-engineer team structure with clear roles"
|
|
48
|
+
weight: 0.30
|
|
49
|
+
description: "Phased migration"
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: consulting-engagement
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Lead a MySQL consulting engagement — assess a client's infrastructure, deliver optimization roadmap, and quantify business impact"
|
|
7
|
+
tags: [MySQL, consulting, assessment, roadmap, business-impact, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're a MySQL consulting lead hired by a Series B e-commerce company
|
|
13
|
+
($100M GMV) experiencing database growing pains. They've tripled
|
|
14
|
+
engineering from 50 to 150 in 18 months and MySQL is struggling.
|
|
15
|
+
|
|
16
|
+
Client briefing:
|
|
17
|
+
- Company: ShopFast (marketplace platform)
|
|
18
|
+
- Revenue: $100M GMV, $15M take rate
|
|
19
|
+
- Database: 6 MySQL clusters, 2TB total, all MySQL 5.7
|
|
20
|
+
- Team: 1 DBA (part-time, also does DevOps), 12 backend engineers
|
|
21
|
+
- Infrastructure cost: $80K/month (growing 25%/quarter)
|
|
22
|
+
- Incidents: 4 outages last quarter (18 hours total downtime)
|
|
23
|
+
|
|
24
|
+
Assessment findings:
|
|
25
|
+
1. All 6 clusters still on MySQL 5.7 (approaching EOL)
|
|
26
|
+
2. Buffer pool at 128MB default on 3 clusters (64GB RAM servers)
|
|
27
|
+
3. 500+ queries with full table scans
|
|
28
|
+
4. No connection pooling — services connect directly
|
|
29
|
+
5. Single primary, 1 async replica — no HA
|
|
30
|
+
6. Backups: mysqldump weekly (takes 8 hours), never tested restore
|
|
31
|
+
7. No Performance Schema analysis ever performed
|
|
32
|
+
8. 30% of tables have no primary key (InnoDB performance issue)
|
|
33
|
+
9. Largest table: 500M rows, never partitioned, never optimized
|
|
34
|
+
10. Application ORM generates N+1 queries extensively
|
|
35
|
+
|
|
36
|
+
Task: Write the consulting deliverable. Include: executive assessment,
|
|
37
|
+
prioritized roadmap (quick wins, medium-term, long-term), staffing
|
|
38
|
+
recommendations, cost projection, and risk register.
|
|
39
|
+
|
|
40
|
+
assertions:
|
|
41
|
+
- type: llm_judge
|
|
42
|
+
criteria: "Assessment quantifies business impact — translates each finding into cost/risk (18 hours downtime = $X revenue loss, 500+ full table scans = Y seconds of excess latency, MySQL 5.7 EOL = security risk). Prioritizes by business impact, not technical severity"
|
|
43
|
+
weight: 0.35
|
|
44
|
+
description: "Business-impact assessment"
|
|
45
|
+
- type: llm_judge
|
|
46
|
+
criteria: "Roadmap is phased and realistic — quick wins (buffer pool tuning, top 10 slow queries, add PKs to tables missing them) in weeks 1-2, medium-term (connection pooling, MySQL 8.0 upgrade, index cleanup) in months 1-3, long-term (HA setup, partitioning, monitoring) in months 3-6. Each phase has estimated cost savings"
|
|
47
|
+
weight: 0.35
|
|
48
|
+
description: "Phased roadmap"
|
|
49
|
+
- type: llm_judge
|
|
50
|
+
criteria: "Staffing and cost projections are realistic — recommends hiring a dedicated senior DBA, projects infrastructure costs with vs without optimization, and provides a framework for ongoing performance management (monitoring, query review process)"
|
|
51
|
+
weight: 0.30
|
|
52
|
+
description: "Staffing and cost"
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: ma-database-integration
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Plan database integration after M&A — merge two companies' MySQL databases while maintaining service continuity"
|
|
7
|
+
tags: [MySQL, M&A, integration, migration, schema-merge, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your company ($150M ARR) acquired a competitor ($40M ARR). Both run
|
|
13
|
+
MySQL. The board mandates full integration within 12 months.
|
|
14
|
+
|
|
15
|
+
Acquirer: MySQL 8.0 on Aurora, 15 clusters, 20TB, well-documented
|
|
16
|
+
Acquired: MySQL 5.7 on EC2, 5 clusters, 5TB, monolithic, 1 DBA
|
|
17
|
+
|
|
18
|
+
Challenges:
|
|
19
|
+
1. Schema conflicts: both have users, orders, payments tables with
|
|
20
|
+
different schemas and overlapping IDs
|
|
21
|
+
2. 1,500 shared customers — data must be merged, not duplicated
|
|
22
|
+
3. Acquired company stores PII in plain text
|
|
23
|
+
4. MySQL 5.7→8.0 upgrade needed
|
|
24
|
+
5. Both products must stay operational during integration
|
|
25
|
+
6. API compatibility for 3rd-party integrations
|
|
26
|
+
7. 7-year financial data retention requirement
|
|
27
|
+
|
|
28
|
+
CEO's directive: "One database, one platform, one team — 12 months.
|
|
29
|
+
Zero data loss."
|
|
30
|
+
|
|
31
|
+
Task: Write the integration plan. Include: system assessment, schema
|
|
32
|
+
unification strategy, data migration plan, phased timeline, and risk
|
|
33
|
+
mitigation.
|
|
34
|
+
|
|
35
|
+
assertions:
|
|
36
|
+
- type: llm_judge
|
|
37
|
+
criteria: "Schema unification handles conflicts — defines approach for merging tables (ID mapping, namespacing), resolves overlapping customer records (deduplication with merge rules), and preserves data lineage for regulatory compliance"
|
|
38
|
+
weight: 0.35
|
|
39
|
+
description: "Schema unification"
|
|
40
|
+
- type: llm_judge
|
|
41
|
+
criteria: "Timeline is phased and realistic — breaks into assessment, preparation, parallel run, migration, decommission phases. Includes MySQL 5.7→8.0 upgrade and PII encryption remediation. Both products remain operational throughout"
|
|
42
|
+
weight: 0.35
|
|
43
|
+
description: "Phased timeline"
|
|
44
|
+
- type: llm_judge
|
|
45
|
+
criteria: "Risk mitigation covers business-critical concerns — rollback plan at each phase, data validation (row counts, financial totals), parallel running period, API compatibility layer for 3rd parties, and kill switch if customer impact detected"
|
|
46
|
+
weight: 0.30
|
|
47
|
+
description: "Business-critical risk mitigation"
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: master-optimization-shift
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Master optimization shift — advise a CEO on a complete MySQL transformation combining M&A integration, compliance, and 10x scaling"
|
|
7
|
+
tags: [MySQL, shift-simulation, transformation, comprehensive, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're an external database strategy advisor. A CEO calls with an
|
|
13
|
+
urgent, complex situation.
|
|
14
|
+
|
|
15
|
+
DataFlow ($300M ARR, 1,500 engineers) acquired two companies:
|
|
16
|
+
- MedTrack ($30M ARR, healthcare SaaS, HIPAA-regulated)
|
|
17
|
+
- EuroPay ($60M ARR, EU fintech, GDPR + PCI DSS)
|
|
18
|
+
|
|
19
|
+
DataFlow: MySQL 8.0 on Aurora, 20 clusters, 60TB
|
|
20
|
+
MedTrack: MySQL 5.7 on EC2, 4 clusters, 5TB
|
|
21
|
+
EuroPay: MariaDB 10.6 on Galera Cluster, 8 clusters, 25TB
|
|
22
|
+
|
|
23
|
+
Board mandates (18-month timeline):
|
|
24
|
+
1. Integrate all three databases into unified platform
|
|
25
|
+
2. Achieve HIPAA + GDPR + PCI DSS compliance
|
|
26
|
+
3. Prepare for IPO (99.99% availability, SOX compliance)
|
|
27
|
+
4. Support 10x growth ($300M → $3B ARR in 5 years)
|
|
28
|
+
|
|
29
|
+
Constraints:
|
|
30
|
+
- Combined team: 10 DBAs
|
|
31
|
+
- Infrastructure cost: $1.5M/month
|
|
32
|
+
- Zero customer data loss
|
|
33
|
+
- All 3 products remain operational during integration
|
|
34
|
+
- EU healthcare data currently stored in US (violation)
|
|
35
|
+
|
|
36
|
+
CEO: "Give me the plan — architecture, timeline, budget, risk, and
|
|
37
|
+
what to tell the board."
|
|
38
|
+
|
|
39
|
+
Task: Write the comprehensive advisory. Include: unified architecture
|
|
40
|
+
(Aurora + EC2 + Galera), compliance strategy (4 frameworks),
|
|
41
|
+
integration timeline (18 months), budget projection, and board
|
|
42
|
+
communication strategy.
|
|
43
|
+
|
|
44
|
+
assertions:
|
|
45
|
+
- type: llm_judge
|
|
46
|
+
criteria: "Unified architecture handles all 3 platforms — addresses Aurora + self-managed MySQL + MariaDB/Galera consolidation, MySQL 5.7 and MariaDB 10.6 upgrade paths, and designs for 10x scale (60TB → 600TB trajectory). Architecture is realistic given 10 DBAs"
|
|
47
|
+
weight: 0.35
|
|
48
|
+
description: "Viable unified architecture"
|
|
49
|
+
- type: llm_judge
|
|
50
|
+
criteria: "Compliance achieves all 4 frameworks — HIPAA (PHI encryption, access logging), GDPR (EU data residency, right to erasure), PCI DSS (cardholder tokenization), SOX (audit trails, separation of duties). Addresses the immediate EU data residency violation. Identifies overlapping requirements to reduce effort"
|
|
51
|
+
weight: 0.35
|
|
52
|
+
description: "Multi-framework compliance"
|
|
53
|
+
- type: llm_judge
|
|
54
|
+
criteria: "Timeline, budget, and board communication are executive-ready — 18-month phased plan with milestones, budget includes infrastructure + personnel + migration costs, risk register with top 5 risks, and board narrative frames integration as competitive advantage not just cost"
|
|
55
|
+
weight: 0.30
|
|
56
|
+
description: "Executive-ready delivery"
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: product-development
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Build a MySQL performance product — design a SaaS tool for MySQL optimization from architecture to go-to-market"
|
|
7
|
+
tags: [MySQL, product-development, SaaS, monitoring, optimization, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're a technical co-founder building a SaaS product for MySQL
|
|
13
|
+
performance optimization. After 10 years as a MySQL DBA, you want
|
|
14
|
+
to productize your expertise.
|
|
15
|
+
|
|
16
|
+
Product vision: "Autopilot for MySQL performance"
|
|
17
|
+
- Connects to any MySQL database (RDS, Aurora, self-managed)
|
|
18
|
+
- Analyzes query performance via Performance Schema
|
|
19
|
+
- Recommends indexes, configuration changes, query rewrites
|
|
20
|
+
- Optionally applies safe optimizations automatically
|
|
21
|
+
|
|
22
|
+
Competitive landscape:
|
|
23
|
+
- Percona PMM (open-source monitoring)
|
|
24
|
+
- Datadog Database Monitoring ($23/host/mo)
|
|
25
|
+
- SolarWinds Database Performance Analyzer
|
|
26
|
+
- Releem (AI-powered MySQL tuning)
|
|
27
|
+
- VividCortex/SolarWinds (query analytics)
|
|
28
|
+
|
|
29
|
+
You have $2M seed funding, 5 engineers, 12 months to product-market
|
|
30
|
+
fit (40 paying customers).
|
|
31
|
+
|
|
32
|
+
Task: Write the product strategy. Include: product architecture,
|
|
33
|
+
MVP scope, go-to-market strategy, pricing model, and 12-month
|
|
34
|
+
technical roadmap.
|
|
35
|
+
|
|
36
|
+
assertions:
|
|
37
|
+
- type: llm_judge
|
|
38
|
+
criteria: "Architecture is technically sound — data collection via Performance Schema (minimal overhead), analysis engine for index/query recommendations, safe application path with testing, and multi-tenant data isolation"
|
|
39
|
+
weight: 0.35
|
|
40
|
+
description: "Sound architecture"
|
|
41
|
+
- type: llm_judge
|
|
42
|
+
criteria: "MVP is focused on fastest path to customers — identifies highest-value feature first, scopes achievable in 3-4 months, defines clear success metrics for product-market fit"
|
|
43
|
+
weight: 0.35
|
|
44
|
+
description: "Focused MVP"
|
|
45
|
+
- type: llm_judge
|
|
46
|
+
criteria: "GTM and pricing are realistic — target customer profile identified, distribution channels (MySQL community, DevOps conferences), pricing justified against competitors, 12-month roadmap with realistic milestones to 40 customers"
|
|
47
|
+
weight: 0.30
|
|
48
|
+
description: "Realistic GTM"
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: regulatory-compliance
|
|
3
|
+
level: 5
|
|
4
|
+
course: mysql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Navigate MySQL regulatory compliance — design configurations for GDPR, PCI DSS, HIPAA, and SOX across multi-region deployments"
|
|
7
|
+
tags: [MySQL, compliance, GDPR, PCI-DSS, HIPAA, SOX, data-sovereignty, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your company is expanding into healthcare (HIPAA) and EU markets
|
|
13
|
+
(GDPR). Your MySQL infrastructure wasn't designed for regulatory
|
|
14
|
+
compliance. Legal gives you 6 months to comply or $25M in deals
|
|
15
|
+
will be lost.
|
|
16
|
+
|
|
17
|
+
Current MySQL infrastructure:
|
|
18
|
+
- 15 clusters, all US-East
|
|
19
|
+
- No data classification
|
|
20
|
+
- Audit logging: only general log (not tamper-evident)
|
|
21
|
+
- Encryption: TLS in transit, no at-rest encryption
|
|
22
|
+
- Access: 3 shared database users for 150 engineers
|
|
23
|
+
- Data retention: no automated deletion
|
|
24
|
+
- Backups: mysqldump, stored unencrypted
|
|
25
|
+
|
|
26
|
+
Requirements:
|
|
27
|
+
1. GDPR: EU data residency, right to erasure, breach notification
|
|
28
|
+
2. HIPAA: PHI encryption, access controls, 6-year audit retention
|
|
29
|
+
3. PCI DSS: cardholder data encryption, quarterly scans
|
|
30
|
+
4. SOX: change audit trail, separation of duties
|
|
31
|
+
|
|
32
|
+
Task: Design the compliance architecture. Write: data classification
|
|
33
|
+
strategy, encryption architecture, audit logging system, access
|
|
34
|
+
control redesign, and compliance automation.
|
|
35
|
+
|
|
36
|
+
assertions:
|
|
37
|
+
- type: llm_judge
|
|
38
|
+
criteria: "Data classification and encryption are addressed — defines tiers (public/internal/confidential/restricted), maps PII/PHI/cardholder data, designs multi-region for EU residency, implements InnoDB tablespace encryption and column-level encryption for sensitive fields"
|
|
39
|
+
weight: 0.35
|
|
40
|
+
description: "Classification and encryption"
|
|
41
|
+
- type: llm_judge
|
|
42
|
+
criteria: "Access control is redesigned — replaces 3 shared users with role-based access per engineer, implements MySQL Enterprise Audit or audit plugin for tamper-evident logging, retains per regulation requirements"
|
|
43
|
+
weight: 0.35
|
|
44
|
+
description: "Access control redesign"
|
|
45
|
+
- type: llm_judge
|
|
46
|
+
criteria: "Compliance automation is continuous — automated checks, drift detection, compliance dashboard rather than point-in-time audits. Addresses right-to-erasure with soft-delete and scheduled purge"
|
|
47
|
+
weight: 0.30
|
|
48
|
+
description: "Continuous compliance"
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
id: postgresql-query-optimization
|
|
2
|
+
name: "Database Query Optimization (PostgreSQL)"
|
|
3
|
+
description: >
|
|
4
|
+
Master PostgreSQL query optimization from reading execution plans to
|
|
5
|
+
enterprise database architecture. Learn indexing strategies, JOIN
|
|
6
|
+
optimization, partitioning, parallel queries, connection pooling,
|
|
7
|
+
write optimization, monitoring, and high-availability configurations
|
|
8
|
+
for large-scale PostgreSQL deployments.
|
|
9
|
+
levels: 5
|
|
10
|
+
scenarios_per_level: 10
|
|
11
|
+
tags: [development, PostgreSQL, database, query-optimization, performance, SQL, DevOps]
|
|
@@ -0,0 +1,80 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: explain-analyze-basics
|
|
3
|
+
level: 1
|
|
4
|
+
course: postgresql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "Read EXPLAIN ANALYZE output — interpret PostgreSQL query execution plans to identify performance bottlenecks"
|
|
7
|
+
tags: [PostgreSQL, EXPLAIN, execution-plan, query-optimization, beginner]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're a junior developer working on an e-commerce app. The product
|
|
13
|
+
listing page takes 8 seconds to load. Your tech lead asks you to
|
|
14
|
+
run EXPLAIN ANALYZE on the query and figure out what's slow.
|
|
15
|
+
|
|
16
|
+
The query:
|
|
17
|
+
SELECT p.id, p.name, p.price, c.name as category,
|
|
18
|
+
AVG(r.rating) as avg_rating
|
|
19
|
+
FROM products p
|
|
20
|
+
JOIN categories c ON c.id = p.category_id
|
|
21
|
+
LEFT JOIN reviews r ON r.product_id = p.id
|
|
22
|
+
WHERE p.active = true AND p.price BETWEEN 10 AND 100
|
|
23
|
+
GROUP BY p.id, p.name, p.price, c.name
|
|
24
|
+
ORDER BY avg_rating DESC NULLS LAST
|
|
25
|
+
LIMIT 20;
|
|
26
|
+
|
|
27
|
+
EXPLAIN ANALYZE output:
|
|
28
|
+
Limit (cost=45892.12..45892.17 rows=20 width=76)
|
|
29
|
+
(actual time=8234.521..8234.534 rows=20 loops=1)
|
|
30
|
+
-> Sort (cost=45892.12..46142.12 rows=100000 width=76)
|
|
31
|
+
(actual time=8234.519..8234.527 rows=20 loops=1)
|
|
32
|
+
Sort Key: (avg(r.rating)) DESC NULLS LAST
|
|
33
|
+
Sort Method: top-N heapsort Memory: 27kB
|
|
34
|
+
-> HashAggregate (cost=42391.50..43391.50 rows=100000 width=76)
|
|
35
|
+
(actual time=7891.234..8102.456 rows=85000 loops=1)
|
|
36
|
+
Group Key: p.id, p.name, p.price, c.name
|
|
37
|
+
-> Hash Left Join (cost=3456.78..38141.50 rows=850000 width=48)
|
|
38
|
+
(actual time=234.567..5678.901 rows=850000 loops=1)
|
|
39
|
+
Hash Cond: (r.product_id = p.id)
|
|
40
|
+
-> Seq Scan on reviews r (cost=0..28456.00 rows=1200000
|
|
41
|
+
width=12) (actual time=0.023..1234.567 rows=1200000
|
|
42
|
+
loops=1)
|
|
43
|
+
-> Hash (cost=3206.78..3206.78 rows=20000 width=44)
|
|
44
|
+
(actual time=234.123..234.123 rows=18500 loops=1)
|
|
45
|
+
Buckets: 32768 Batches: 1 Memory Usage: 1234kB
|
|
46
|
+
-> Hash Join (cost=12.50..3206.78 rows=20000 width=44)
|
|
47
|
+
(actual time=0.345..198.765 rows=18500 loops=1)
|
|
48
|
+
Hash Cond: (p.category_id = c.id)
|
|
49
|
+
-> Seq Scan on products p (cost=0..3125.00
|
|
50
|
+
rows=20000 width=40)
|
|
51
|
+
(actual time=0.012..178.234 rows=18500
|
|
52
|
+
loops=1)
|
|
53
|
+
Filter: (active AND (price >= 10)
|
|
54
|
+
AND (price <= 100))
|
|
55
|
+
Rows Removed by Filter: 81500
|
|
56
|
+
-> Hash (cost=10.00..10.00 rows=200 width=12)
|
|
57
|
+
(actual time=0.234..0.234 rows=200 loops=1)
|
|
58
|
+
|
|
59
|
+
Table sizes: products (100K rows), reviews (1.2M rows),
|
|
60
|
+
categories (200 rows).
|
|
61
|
+
|
|
62
|
+
Task: Analyze this execution plan. Explain: what each node means
|
|
63
|
+
(in plain English), where the time is being spent, why it's doing
|
|
64
|
+
sequential scans, what indexes would help, and write the optimized
|
|
65
|
+
version of this query with the recommended indexes. Explain the
|
|
66
|
+
difference between estimated and actual rows.
|
|
67
|
+
|
|
68
|
+
assertions:
|
|
69
|
+
- type: llm_judge
|
|
70
|
+
criteria: "Execution plan is correctly interpreted — identifies that the sequential scan on reviews (1.2M rows) is the biggest bottleneck, explains cost vs actual time, estimated vs actual rows, and each node type (Seq Scan, Hash Join, HashAggregate, Sort, Limit). The explanation is in plain English a junior developer can understand"
|
|
71
|
+
weight: 0.35
|
|
72
|
+
description: "Correct plan interpretation"
|
|
73
|
+
- type: llm_judge
|
|
74
|
+
criteria: "Optimization recommendations are specific — suggests index on reviews(product_id) for the JOIN, index on products(active, price) for the filter, and explains why these indexes would replace sequential scans with index scans. May suggest a materialized view or covering index for further optimization"
|
|
75
|
+
weight: 0.35
|
|
76
|
+
description: "Specific optimization recommendations"
|
|
77
|
+
- type: llm_judge
|
|
78
|
+
criteria: "Explains key EXPLAIN ANALYZE concepts — cost units (arbitrary but relative), actual time (milliseconds), loops, rows removed by filter, sort methods, hash bucket sizing, and how to identify the slowest node by looking at actual time differences between parent and child nodes"
|
|
79
|
+
weight: 0.30
|
|
80
|
+
description: "Key concepts explained"
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: first-optimization-shift
|
|
3
|
+
level: 1
|
|
4
|
+
course: postgresql-query-optimization
|
|
5
|
+
type: output
|
|
6
|
+
description: "First optimization shift — triage and fix multiple slow queries during a production performance incident"
|
|
7
|
+
tags: [PostgreSQL, optimization, shift-simulation, triage, beginner]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're on-call for a SaaS application when alerts fire at 9:00 AM
|
|
13
|
+
Monday (peak traffic). Database CPU is at 95% and climbing.
|
|
14
|
+
Response times have tripled. Users are complaining on Twitter.
|
|
15
|
+
|
|
16
|
+
Your monitoring dashboard shows:
|
|
17
|
+
|
|
18
|
+
Active connections: 180/200 (at limit)
|
|
19
|
+
Query queue: 45 queries waiting
|
|
20
|
+
Longest running query: 180 seconds (and counting)
|
|
21
|
+
Database CPU: 95%
|
|
22
|
+
Disk I/O: 98% utilization
|
|
23
|
+
|
|
24
|
+
Top 5 queries by current CPU consumption:
|
|
25
|
+
|
|
26
|
+
1. (45% CPU) Running for 180 seconds:
|
|
27
|
+
SELECT * FROM audit_logs WHERE created_at > '2020-01-01'
|
|
28
|
+
ORDER BY created_at;
|
|
29
|
+
(audit_logs has 200M rows, no LIMIT, someone ran it from an
|
|
30
|
+
admin panel)
|
|
31
|
+
|
|
32
|
+
2. (20% CPU) Running 500 concurrent copies:
|
|
33
|
+
SELECT u.*, p.* FROM users u
|
|
34
|
+
JOIN profiles p ON p.user_id = u.id
|
|
35
|
+
WHERE u.email = $1;
|
|
36
|
+
(Seq Scan on users — missing index on email)
|
|
37
|
+
|
|
38
|
+
3. (15% CPU) Running 200 concurrent copies:
|
|
39
|
+
SELECT COUNT(*) FROM products
|
|
40
|
+
WHERE category_id = $1 AND active = true;
|
|
41
|
+
(Seq Scan on products — missing index)
|
|
42
|
+
|
|
43
|
+
4. (10% CPU) Running every 5 seconds (background job):
|
|
44
|
+
UPDATE notifications SET checked_at = NOW()
|
|
45
|
+
WHERE user_id = $1 AND checked_at IS NULL;
|
|
46
|
+
(Seq Scan + row lock contention)
|
|
47
|
+
|
|
48
|
+
5. (5% CPU) Running 50 concurrent copies:
|
|
49
|
+
SELECT * FROM orders WHERE customer_id = $1
|
|
50
|
+
ORDER BY created_at DESC LIMIT 10;
|
|
51
|
+
(Using an index but fetching too many columns)
|
|
52
|
+
|
|
53
|
+
Available actions:
|
|
54
|
+
- Kill specific queries (pg_terminate_backend)
|
|
55
|
+
- Create indexes (takes time on large tables)
|
|
56
|
+
- Modify application code (requires deploy)
|
|
57
|
+
- Add connection pooling (PgBouncer not yet set up)
|
|
58
|
+
- Scale up database instance
|
|
59
|
+
|
|
60
|
+
Task: Triage and fix this incident. Write: the immediate actions
|
|
61
|
+
(first 5 minutes), the short-term fixes (next hour), the medium-
|
|
62
|
+
term improvements (this week), and the monitoring setup to prevent
|
|
63
|
+
this from recurring.
|
|
64
|
+
|
|
65
|
+
assertions:
|
|
66
|
+
- type: llm_judge
|
|
67
|
+
criteria: "Immediate triage is correct — kills the 200M-row audit_logs query first (45% CPU), considers killing or limiting long-running queries, and doesn't create indexes under 95% CPU load (would make things worse). Prioritizes by impact"
|
|
68
|
+
weight: 0.35
|
|
69
|
+
description: "Correct immediate triage"
|
|
70
|
+
- type: llm_judge
|
|
71
|
+
criteria: "Short-term fixes address root causes — index on users(email) for the most frequent query, index on products(category_id, active) for the product count, application-level statement_timeout to prevent unbounded queries, and connection pooling to handle the 180/200 connection pressure"
|
|
72
|
+
weight: 0.35
|
|
73
|
+
description: "Root cause fixes"
|
|
74
|
+
- type: llm_judge
|
|
75
|
+
criteria: "Prevention measures are practical — sets statement_timeout for different query types, implements pg_stat_statements monitoring, adds connection pooling, puts row limits on admin panel queries, and sets up alerting on slow queries and connection count before hitting limits"
|
|
76
|
+
weight: 0.30
|
|
77
|
+
description: "Practical prevention measures"
|