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,61 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-automation-platform
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Build a review automation platform — design GitHub Apps and bots that automate review assignment, checks, and notifications"
|
|
7
|
+
tags: [github, pr-review, automation, GitHub-Apps, bots, platform, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're building an internal review automation platform (GitHub App)
|
|
13
|
+
for your 200-engineer organization. The platform should automate the
|
|
14
|
+
repetitive parts of the review process while keeping humans in the
|
|
15
|
+
loop for judgment calls.
|
|
16
|
+
|
|
17
|
+
Requirements:
|
|
18
|
+
1. Smart reviewer assignment: Based on code expertise (git blame),
|
|
19
|
+
current load, timezone overlap, and review history
|
|
20
|
+
2. PR categorization: Automatically label PRs by type (feature, bug,
|
|
21
|
+
refactor, dependency), size (S/M/L/XL), and risk (low/medium/high)
|
|
22
|
+
3. Review reminders: Escalating notifications when SLAs are missed
|
|
23
|
+
4. Stale review detection: Alert when reviews are approved but code
|
|
24
|
+
changed after approval
|
|
25
|
+
5. Merge readiness: Check all requirements met before allowing merge
|
|
26
|
+
6. Review analytics: Weekly digests for team leads
|
|
27
|
+
|
|
28
|
+
Technical constraints:
|
|
29
|
+
- Must use GitHub App (not personal access tokens)
|
|
30
|
+
- Must handle 500+ PRs per week across 30 repos
|
|
31
|
+
- Must be resilient to GitHub API rate limits (5,000 requests/hour)
|
|
32
|
+
- Must handle webhook delivery failures gracefully
|
|
33
|
+
- Must not expose any internal code or review data externally
|
|
34
|
+
|
|
35
|
+
The platform needs to integrate with:
|
|
36
|
+
- GitHub (webhooks + API)
|
|
37
|
+
- Slack (notifications)
|
|
38
|
+
- Jira (issue linking)
|
|
39
|
+
- PagerDuty (on-call reviewer for urgent PRs)
|
|
40
|
+
|
|
41
|
+
Task: Design the review automation platform. Write: the system
|
|
42
|
+
architecture (webhook handlers, job queues, data store, integrations),
|
|
43
|
+
the reviewer assignment algorithm (inputs, weighting, edge cases),
|
|
44
|
+
the PR categorization rules (heuristics for type, size, and risk),
|
|
45
|
+
the notification and escalation logic, and the API rate limit strategy.
|
|
46
|
+
Include the GitHub App manifest, webhook event list, and a sample
|
|
47
|
+
webhook handler for the PR opened event.
|
|
48
|
+
|
|
49
|
+
assertions:
|
|
50
|
+
- type: llm_judge
|
|
51
|
+
criteria: "Architecture handles scale — uses webhook-driven processing with a job queue (not synchronous), handles 500+ PRs/week within GitHub API rate limits, has retry logic for webhook failures, and separates concerns (assignment, categorization, notifications)"
|
|
52
|
+
weight: 0.35
|
|
53
|
+
description: "Scalable architecture"
|
|
54
|
+
- type: llm_judge
|
|
55
|
+
criteria: "Reviewer assignment algorithm is sophisticated — considers code expertise (git blame/log), current review load, timezone, and rotation, with fallbacks when primary reviewers are unavailable. Edge cases like vacation, new hires, and single-expert code areas are handled"
|
|
56
|
+
weight: 0.35
|
|
57
|
+
description: "Sophisticated assignment algorithm"
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "PR categorization is practical — risk assessment considers files changed (config, auth, financial code = high risk), size buckets are meaningful (not just line count — considers file count and complexity), and categorization drives review requirements (high-risk PRs need more reviewers)"
|
|
60
|
+
weight: 0.30
|
|
61
|
+
description: "Practical PR categorization"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-culture-design
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design review culture — build a healthy code review culture that balances thoroughness, speed, psychological safety, and learning"
|
|
7
|
+
tags: [github, pr-review, culture, psychological-safety, learning, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the VP of Engineering inheriting a team with a toxic review
|
|
13
|
+
culture. An anonymous survey revealed:
|
|
14
|
+
|
|
15
|
+
Survey results (60 respondents):
|
|
16
|
+
- 72% feel anxious when submitting PRs
|
|
17
|
+
- 58% have avoided submitting code changes due to fear of harsh reviews
|
|
18
|
+
- 45% say certain reviewers are "gatekeepers" who block PRs for
|
|
19
|
+
personal preferences
|
|
20
|
+
- 38% feel reviews focus on criticism without acknowledging good work
|
|
21
|
+
- 65% of junior engineers say reviews make them feel incompetent
|
|
22
|
+
- Only 22% say they learn from code reviews
|
|
23
|
+
|
|
24
|
+
Specific complaints:
|
|
25
|
+
- "Reviewer X rewrites my entire PR in comments — why didn't they just
|
|
26
|
+
write it themselves?"
|
|
27
|
+
- "I got 47 comments on a 50-line PR. Most were 'I would do this
|
|
28
|
+
differently.' Not bugs, just preferences."
|
|
29
|
+
- "When I push back on review feedback, I get labeled as 'difficult.'"
|
|
30
|
+
- "Senior engineers' PRs get rubber-stamped. Junior PRs get nitpicked."
|
|
31
|
+
- "I spent 2 weeks on a feature. The review said 'wrong approach,
|
|
32
|
+
start over.' No one told me before I started coding."
|
|
33
|
+
|
|
34
|
+
Good signs in the data:
|
|
35
|
+
- Teams that do pair programming have 85% satisfaction with reviews
|
|
36
|
+
- The mobile team (led by a specific manager) has 90% positive review
|
|
37
|
+
experience — what are they doing differently?
|
|
38
|
+
- Engineers who've been through reviewer training rate reviews 3x
|
|
39
|
+
more positively
|
|
40
|
+
|
|
41
|
+
Task: Design a culture transformation plan. Write: the diagnosis (root
|
|
42
|
+
causes of the toxic patterns), the review culture principles (code of
|
|
43
|
+
conduct for reviewers and authors), the specific interventions (what
|
|
44
|
+
to change immediately, in 30 days, and in 90 days), the reviewer
|
|
45
|
+
training program (curriculum, practice exercises, assessment), the
|
|
46
|
+
accountability mechanisms (how to address bad review behavior without
|
|
47
|
+
creating fear), and the success metrics. Study the mobile team's
|
|
48
|
+
positive patterns and scale them.
|
|
49
|
+
|
|
50
|
+
assertions:
|
|
51
|
+
- type: llm_judge
|
|
52
|
+
criteria: "Diagnosis identifies root causes — power dynamics (senior vs junior treatment), missing early feedback (architecture reviews before coding), preference-vs-requirement confusion, and lack of reviewer accountability. Analyzes the mobile team's success factors"
|
|
53
|
+
weight: 0.35
|
|
54
|
+
description: "Root cause diagnosis"
|
|
55
|
+
- type: llm_judge
|
|
56
|
+
criteria: "Interventions are concrete and phased — immediate actions (review code of conduct, stop specific harmful patterns), 30-day actions (reviewer training, pair review program), 90-day actions (culture metrics, accountability processes), each with measurable outcomes"
|
|
57
|
+
weight: 0.35
|
|
58
|
+
description: "Concrete phased interventions"
|
|
59
|
+
- type: llm_judge
|
|
60
|
+
criteria: "Plan balances accountability with safety — addresses the 'gatekeeper' behavior without creating fear, includes mechanisms for authors to give feedback on reviews, and doesn't just create more rules but changes underlying dynamics"
|
|
61
|
+
weight: 0.30
|
|
62
|
+
description: "Accountability-safety balance"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-data-pipeline
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Build a review analytics pipeline — collect, analyze, and act on PR review data to continuously improve review effectiveness"
|
|
7
|
+
tags: [github, pr-review, analytics, data-pipeline, metrics, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're building a review analytics system for your 100-engineer org.
|
|
13
|
+
Currently, review data lives only in GitHub and there's no way to
|
|
14
|
+
track trends, identify problems, or measure improvements. You need
|
|
15
|
+
to design a data pipeline that collects review data and produces
|
|
16
|
+
actionable insights.
|
|
17
|
+
|
|
18
|
+
Data sources available:
|
|
19
|
+
- GitHub API: PR data, reviews, comments, timelines, check runs
|
|
20
|
+
- GitHub webhooks: real-time events for PR state changes
|
|
21
|
+
- Slack: review request messages and response times
|
|
22
|
+
- Jira: linked issues, sprint assignments, priority levels
|
|
23
|
+
- Deployment system: deploy timestamps, rollback frequency
|
|
24
|
+
|
|
25
|
+
Key questions to answer with data:
|
|
26
|
+
1. Which teams have the fastest/slowest review cycles?
|
|
27
|
+
2. What percentage of review comments lead to code changes vs are
|
|
28
|
+
ignored or resolved without changes?
|
|
29
|
+
3. Do certain types of PRs (size, category, author seniority) have
|
|
30
|
+
more review rounds?
|
|
31
|
+
4. What's the correlation between review thoroughness and post-deploy
|
|
32
|
+
bug rate?
|
|
33
|
+
5. Are specific reviewers consistently over- or under-loaded?
|
|
34
|
+
6. How effective are automated checks at reducing human review load?
|
|
35
|
+
|
|
36
|
+
Constraints:
|
|
37
|
+
- Budget: $500/month for infrastructure
|
|
38
|
+
- Must not slow down GitHub workflows
|
|
39
|
+
- Must respect developer privacy (no individual shaming dashboards)
|
|
40
|
+
- Data retention: 2 years for compliance
|
|
41
|
+
|
|
42
|
+
Task: Design the review data pipeline. Write: the data model (what
|
|
43
|
+
entities to track, relationships, derived metrics), the collection
|
|
44
|
+
architecture (webhooks vs polling, real-time vs batch, storage), the
|
|
45
|
+
analytics layer (dashboards for eng managers, team leads, and ICs),
|
|
46
|
+
the privacy and ethics guidelines (what data is shown at what level),
|
|
47
|
+
and 3 specific analyses you would run first with expected findings
|
|
48
|
+
and recommended actions. Include the schema design and sample queries.
|
|
49
|
+
|
|
50
|
+
assertions:
|
|
51
|
+
- type: llm_judge
|
|
52
|
+
criteria: "Data model is comprehensive — tracks PRs, reviews, comments, review rounds, time-to-first-review, time-to-merge, reviewer load, comment types (blocking vs suggestion), and correlates with deployment outcomes"
|
|
53
|
+
weight: 0.35
|
|
54
|
+
description: "Comprehensive data model"
|
|
55
|
+
- type: llm_judge
|
|
56
|
+
criteria: "Architecture is practical within constraints — fits $500/month budget (likely uses GitHub webhooks + a lightweight database like Postgres, not enterprise analytics tools), processes events without slowing GitHub, and handles 2-year retention"
|
|
57
|
+
weight: 0.35
|
|
58
|
+
description: "Budget-practical architecture"
|
|
59
|
+
- type: llm_judge
|
|
60
|
+
criteria: "Privacy is respected — dashboards show team-level metrics (not individual ranking), individual data is available only to the person themselves and their direct manager, and the ethics guidelines prevent using review metrics for performance reviews without context"
|
|
61
|
+
weight: 0.30
|
|
62
|
+
description: "Privacy-respecting analytics"
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: enterprise-review-operations
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design enterprise review operations — build review infrastructure for 500+ engineer organizations with multiple business units"
|
|
7
|
+
tags: [github, pr-review, enterprise, operations, scaling, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the VP of Developer Experience at a 600-engineer company with
|
|
13
|
+
4 business units, 50 teams, and 200+ repositories. The CEO mandated
|
|
14
|
+
a company-wide code review standardization initiative after an audit
|
|
15
|
+
found that review practices vary wildly across business units.
|
|
16
|
+
|
|
17
|
+
Current state by business unit:
|
|
18
|
+
- Consumer (200 engineers, 80 repos): Fast-shipping culture, average
|
|
19
|
+
review time 4 hours, but 3 production incidents last quarter traced
|
|
20
|
+
to inadequate review
|
|
21
|
+
- Enterprise (150 engineers, 60 repos): Thorough reviews, average 3
|
|
22
|
+
days to merge, but shipping velocity is 40% below target
|
|
23
|
+
- Platform (120 engineers, 40 repos): Strong review culture, but
|
|
24
|
+
bottlenecked on 5 senior engineers who review everything
|
|
25
|
+
- Data/ML (130 engineers, 30 repos): Notebooks and experiments mixed
|
|
26
|
+
with production code, no distinction in review rigor
|
|
27
|
+
|
|
28
|
+
Cross-cutting challenges:
|
|
29
|
+
- 3 different GitHub Enterprise organizations (legacy from acquisitions)
|
|
30
|
+
- Inconsistent branch protection across all orgs
|
|
31
|
+
- No unified metrics — each BU reports differently
|
|
32
|
+
- Some teams use GitLab, most use GitHub
|
|
33
|
+
- Compliance requirements differ by BU (Consumer: GDPR, Enterprise:
|
|
34
|
+
SOX/SOC 2, Platform: PCI DSS, Data: CCPA + model governance)
|
|
35
|
+
|
|
36
|
+
Budget: $2M/year for tooling and headcount
|
|
37
|
+
Timeline: 12 months to reach "standardized" state
|
|
38
|
+
|
|
39
|
+
Task: Design the enterprise review operations strategy. Write: the
|
|
40
|
+
unified review standard (minimum bar for all BUs, with BU-specific
|
|
41
|
+
extensions), the organizational model (centralized review platform
|
|
42
|
+
team vs federated ownership), the tooling strategy (GitHub Enterprise
|
|
43
|
+
configuration, custom automation, analytics platform), the migration
|
|
44
|
+
plan for each BU (addressing their specific challenges), and the ROI
|
|
45
|
+
model (how the $2M investment pays back in reduced incidents, faster
|
|
46
|
+
shipping, and compliance readiness). Include the quarterly milestones
|
|
47
|
+
and success metrics.
|
|
48
|
+
|
|
49
|
+
assertions:
|
|
50
|
+
- type: llm_judge
|
|
51
|
+
criteria: "Standards balance uniformity with BU autonomy — the minimum bar applies everywhere (e.g., no self-merge, required reviews), but BU-specific extensions handle different compliance needs and shipping cultures without forcing one-size-fits-all"
|
|
52
|
+
weight: 0.35
|
|
53
|
+
description: "Balanced standards"
|
|
54
|
+
- type: llm_judge
|
|
55
|
+
criteria: "Migration plan addresses each BU's specific challenge — Consumer needs quality without slowing down, Enterprise needs speed without losing rigor, Platform needs to distribute knowledge, and Data/ML needs production code separation from experiments"
|
|
56
|
+
weight: 0.35
|
|
57
|
+
description: "BU-specific migration plans"
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "ROI model is quantified — connects review improvements to business outcomes (reduced incidents = $ saved, faster shipping = revenue impact, compliance readiness = audit cost avoidance), and the $2M budget is allocated across tooling, headcount, and training"
|
|
60
|
+
weight: 0.30
|
|
61
|
+
description: "Quantified ROI model"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: expert-review-shift
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Expert review shift — navigate organizational crises, vendor decisions, executive escalations, and team morale challenges simultaneously"
|
|
7
|
+
tags: [github, pr-review, shift-simulation, crisis, organizational, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the VP of Developer Experience during a critical week where
|
|
13
|
+
multiple review-related crises converge.
|
|
14
|
+
|
|
15
|
+
Crisis 1 — Vendor lock-in emergency:
|
|
16
|
+
Your review automation vendor (ReviewBot Pro) announced they're being
|
|
17
|
+
acquired by a competitor. They're sunsetting their product in 90 days.
|
|
18
|
+
Your entire review assignment, SLA tracking, and analytics run on
|
|
19
|
+
their platform. 600 engineers depend on it daily. You need a migration
|
|
20
|
+
plan by Friday for the executive team meeting.
|
|
21
|
+
|
|
22
|
+
Crisis 2 — Compliance audit failure:
|
|
23
|
+
The SOC 2 auditor flagged 3 critical findings related to code review:
|
|
24
|
+
(a) 8% of PRs in the payment codebase were self-merged, (b) review
|
|
25
|
+
audit trail has gaps where comments were deleted, and (c) emergency
|
|
26
|
+
changes have no post-deployment review documentation. The remediation
|
|
27
|
+
deadline is 30 days. Failure means losing a $15M enterprise customer
|
|
28
|
+
who requires SOC 2 compliance.
|
|
29
|
+
|
|
30
|
+
Crisis 3 — Engineering morale crisis:
|
|
31
|
+
An anonymous post on the company's internal forum went viral: "Our
|
|
32
|
+
code review process is killing innovation." 200 engineers upvoted it.
|
|
33
|
+
The post includes specific complaints: mandatory 2-reviewer requirement
|
|
34
|
+
is "bureaucratic," the review SLA creates "artificial urgency," and
|
|
35
|
+
"reviewers block PRs over personal preferences." The CEO forwarded it
|
|
36
|
+
to you asking "is this true?"
|
|
37
|
+
|
|
38
|
+
Crisis 4 — Team capacity:
|
|
39
|
+
Your Review Platform team of 12 engineers has 3 people on medical
|
|
40
|
+
leave, 2 threatening to quit (burned out from the always-on review
|
|
41
|
+
platform), and the remaining 7 are already working on the next
|
|
42
|
+
quarterly OKR deliverables. You have no slack capacity.
|
|
43
|
+
|
|
44
|
+
Task: Handle all 4 crises. For each, write: the immediate triage
|
|
45
|
+
(what to do today), the 1-week action plan, the 30-day resolution
|
|
46
|
+
plan, and the communication to each stakeholder group. Then write the
|
|
47
|
+
integrated strategy memo showing how these crises are interconnected
|
|
48
|
+
and the unified approach to resolving them while protecting the team.
|
|
49
|
+
|
|
50
|
+
assertions:
|
|
51
|
+
- type: llm_judge
|
|
52
|
+
criteria: "Vendor migration is practical — prioritizes critical functionality (assignment, SLA tracking), evaluates build-vs-buy in 90 days, identifies what can be replaced with GitHub native features immediately, and doesn't propose rebuilding everything from scratch"
|
|
53
|
+
weight: 0.35
|
|
54
|
+
description: "Practical vendor migration"
|
|
55
|
+
- type: llm_judge
|
|
56
|
+
criteria: "Compliance remediation is achievable in 30 days — addresses each finding with specific technical fixes (branch protection for self-merge, immutable audit trail, emergency review documentation process), and the plan is realistic given the team capacity crisis"
|
|
57
|
+
weight: 0.35
|
|
58
|
+
description: "Achievable compliance remediation"
|
|
59
|
+
- type: llm_judge
|
|
60
|
+
criteria: "Morale and capacity crises are handled with empathy — the CEO response acknowledges legitimate complaints while providing data context, the team capacity plan doesn't just add more work, and the unified strategy memo shows how solving one crisis helps the others"
|
|
61
|
+
weight: 0.30
|
|
62
|
+
description: "Empathetic crisis handling"
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-data-architecture
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design review data architecture — build the data infrastructure for review analytics, ML-powered insights, and compliance reporting"
|
|
7
|
+
tags: [github, pr-review, data-architecture, analytics, ML, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the Head of Data Engineering building the data infrastructure
|
|
13
|
+
for the company's review analytics platform. The system needs to
|
|
14
|
+
support real-time dashboards, ML-powered insights, and compliance
|
|
15
|
+
audit reports.
|
|
16
|
+
|
|
17
|
+
Data sources:
|
|
18
|
+
- GitHub Events API: PR events, review events, comment events,
|
|
19
|
+
check run events (estimated 50,000 events/day)
|
|
20
|
+
- GitHub REST API: PR details, file diffs, user profiles
|
|
21
|
+
- Slack: Review request/response timestamps
|
|
22
|
+
- Jira: Issue metadata, sprint data, priority levels
|
|
23
|
+
- Deployment system: Deploy events, rollback events
|
|
24
|
+
- Incident management: Incident data, root cause analysis
|
|
25
|
+
|
|
26
|
+
Analytics requirements:
|
|
27
|
+
1. Real-time dashboard: Current review queue, SLA status, team load
|
|
28
|
+
(refreshed every 5 minutes)
|
|
29
|
+
2. Historical analytics: Trends over 2 years, team comparisons,
|
|
30
|
+
seasonal patterns
|
|
31
|
+
3. ML features: Reviewer expertise scoring, PR risk prediction,
|
|
32
|
+
review time estimation, anomaly detection (rubber stamp detection)
|
|
33
|
+
4. Compliance reports: Audit trails, SOC 2 evidence, monthly
|
|
34
|
+
compliance scorecards
|
|
35
|
+
5. Developer experience: Individual review statistics (private to
|
|
36
|
+
the engineer), career growth tracking
|
|
37
|
+
|
|
38
|
+
Technical requirements:
|
|
39
|
+
- Event-driven ingestion (no polling GitHub API)
|
|
40
|
+
- Schema evolution support (GitHub API changes frequently)
|
|
41
|
+
- 2-year data retention with automated archival
|
|
42
|
+
- Sub-second query response for dashboards
|
|
43
|
+
- ML feature store for model training and serving
|
|
44
|
+
- GDPR compliance (engineer data deletion on request)
|
|
45
|
+
|
|
46
|
+
Budget: $150K/year infrastructure, 4 engineers for 6 months to build
|
|
47
|
+
|
|
48
|
+
Task: Design the data architecture. Write: the data model (entities,
|
|
49
|
+
relationships, derived metrics, slowly changing dimensions), the
|
|
50
|
+
ingestion pipeline (event processing, transformation, loading), the
|
|
51
|
+
storage strategy (which database for which use case — OLTP vs OLAP
|
|
52
|
+
vs time-series), the ML feature store design (feature computation,
|
|
53
|
+
serving, versioning), and the privacy/compliance layer (data masking,
|
|
54
|
+
retention, deletion). Include the schema for key tables and sample
|
|
55
|
+
queries for each analytics requirement.
|
|
56
|
+
|
|
57
|
+
assertions:
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "Data model captures review complexity — models PRs, reviews, comments, review rounds, reviewer load, time-between-events, and derived metrics like 'review depth score' and 'rubber stamp probability'. Handles the GitHub event schema correctly"
|
|
60
|
+
weight: 0.35
|
|
61
|
+
description: "Complexity-capturing data model"
|
|
62
|
+
- type: llm_judge
|
|
63
|
+
criteria: "Storage strategy is appropriate — uses different storage for different patterns (event stream processing for real-time, columnar/OLAP for historical analytics, time-series for metrics, and a feature store for ML), within the $150K/year budget"
|
|
64
|
+
weight: 0.35
|
|
65
|
+
description: "Appropriate storage strategy"
|
|
66
|
+
- type: llm_judge
|
|
67
|
+
criteria: "ML feature store is practical — features include reviewer expertise score, PR complexity score, and review time prediction with clear computation logic, versioning for model reproducibility, and serving layer for real-time inference"
|
|
68
|
+
weight: 0.30
|
|
69
|
+
description: "Practical ML feature store"
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-economics-roi
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Analyze review economics — calculate the true cost of code review, model ROI of review improvements, and present to executive leadership"
|
|
7
|
+
tags: [github, pr-review, economics, ROI, cost-analysis, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the Director of Engineering presenting a business case to the
|
|
13
|
+
CFO for investing in code review infrastructure. The CFO's question:
|
|
14
|
+
"Code review costs us millions in engineer time. How do we know it's
|
|
15
|
+
worth it? And if we invest more, what's the return?"
|
|
16
|
+
|
|
17
|
+
Data you've collected:
|
|
18
|
+
- 600 engineers, average fully-loaded cost: $200K/year ($100/hour)
|
|
19
|
+
- Average engineer spends 6 hours/week on code review
|
|
20
|
+
- That's 600 × 6 × 52 = 187,200 review hours/year = $18.7M/year
|
|
21
|
+
- Average PR takes 25 minutes to review
|
|
22
|
+
- 78,000 PRs merged per year
|
|
23
|
+
|
|
24
|
+
Cost of review failures (incidents traced to review gaps):
|
|
25
|
+
- 12 production incidents/year attributed to review failures
|
|
26
|
+
- Average incident cost: $150K (engineering time, customer impact,
|
|
27
|
+
reputation)
|
|
28
|
+
- 3 compliance findings in last audit: $500K in remediation + fines
|
|
29
|
+
- 2 security vulnerabilities that passed review: $800K total impact
|
|
30
|
+
- Total cost of review failures: $3.5M/year
|
|
31
|
+
|
|
32
|
+
Proposed investments:
|
|
33
|
+
1. Review automation platform: $800K (build) + $200K/year (maintain)
|
|
34
|
+
Expected: Reduce review time by 30%, catch 60% of style issues
|
|
35
|
+
2. Reviewer training program: $150K/year
|
|
36
|
+
Expected: Reduce review rounds by 25%, improve bug detection by 15%
|
|
37
|
+
3. AI-assisted review: $300K/year (tooling)
|
|
38
|
+
Expected: Reduce first-review time by 40%, flag 50% of common issues
|
|
39
|
+
4. Review analytics dashboard: $200K (build) + $50K/year (maintain)
|
|
40
|
+
Expected: Identify bottlenecks, reduce merge time by 20%
|
|
41
|
+
|
|
42
|
+
Task: Build the complete economic model. Write: the true cost of
|
|
43
|
+
code review (including hidden costs like context switching, blocked
|
|
44
|
+
PRs, opportunity cost), the value model (what code review prevents,
|
|
45
|
+
quantified), the ROI analysis for each investment (with sensitivity
|
|
46
|
+
analysis), the 3-year financial projection, and the executive
|
|
47
|
+
presentation (2-page summary the CFO can present to the board).
|
|
48
|
+
Include the assumptions, risks, and what metrics to track to validate
|
|
49
|
+
the projections.
|
|
50
|
+
|
|
51
|
+
assertions:
|
|
52
|
+
- type: llm_judge
|
|
53
|
+
criteria: "Cost model includes hidden costs — beyond the $18.7M direct cost, includes context-switching costs (review interrupting deep work), blocked PR costs (engineers waiting for review), and opportunity cost (what engineers could build instead of reviewing)"
|
|
54
|
+
weight: 0.35
|
|
55
|
+
description: "Complete cost model with hidden costs"
|
|
56
|
+
- type: llm_judge
|
|
57
|
+
criteria: "ROI analysis is rigorous — each investment has NPV calculation, payback period, sensitivity analysis (what if improvements are 50% less than expected?), and the analysis accounts for interaction effects (automation + training together may have compounding benefits)"
|
|
58
|
+
weight: 0.35
|
|
59
|
+
description: "Rigorous ROI analysis"
|
|
60
|
+
- type: llm_judge
|
|
61
|
+
criteria: "Executive presentation is CFO-ready — leads with the business impact (not technical details), quantifies the 'do nothing' cost, presents investment options with clear ROI comparison, and includes metrics to track for accountability"
|
|
62
|
+
weight: 0.30
|
|
63
|
+
description: "CFO-ready executive presentation"
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-executive-communication
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Executive communication about review — present review process health, investments, and strategy to C-suite and board audiences"
|
|
7
|
+
tags: [github, pr-review, executive, communication, strategy, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the CTO preparing 3 different communications about code review
|
|
13
|
+
for executive audiences with different concerns.
|
|
14
|
+
|
|
15
|
+
Communication 1 — Board of Directors quarterly update:
|
|
16
|
+
The board wants to understand "engineering quality" as a competitive
|
|
17
|
+
advantage. They've heard competitors are shipping faster. Your data:
|
|
18
|
+
- Code review catches 65% of bugs before production
|
|
19
|
+
- Average merge time: 1.8 days (industry median: 2.5 days)
|
|
20
|
+
- Review-related incidents: 4/quarter (down from 12 last year)
|
|
21
|
+
- Review investment: $3.2M/year (5.3% of engineering budget)
|
|
22
|
+
- Developer satisfaction with review: 78% (up from 45% last year)
|
|
23
|
+
The board asks: "Are we over-investing in review at the expense of
|
|
24
|
+
shipping speed?"
|
|
25
|
+
|
|
26
|
+
Communication 2 — CEO 1:1 escalation:
|
|
27
|
+
The Head of Product is complaining that code review is the #1
|
|
28
|
+
bottleneck to shipping features. They want to reduce required reviews
|
|
29
|
+
from 2 to 0 for "low-risk" PRs and allow self-merge for senior
|
|
30
|
+
engineers. Your security team says this violates SOC 2 controls. The
|
|
31
|
+
CEO wants your recommendation by Friday.
|
|
32
|
+
|
|
33
|
+
Communication 3 — All-hands engineering presentation:
|
|
34
|
+
The annual engineering all-hands is next week. You want to present
|
|
35
|
+
the "State of Code Review" — celebrating improvements, acknowledging
|
|
36
|
+
remaining challenges, and building excitement for the review platform
|
|
37
|
+
investment. Your audience is 600 engineers ranging from interns to
|
|
38
|
+
distinguished engineers.
|
|
39
|
+
|
|
40
|
+
Task: Write all 3 communications. For each: adapt the message to the
|
|
41
|
+
audience (board speaks business/risk, CEO wants a decision framework,
|
|
42
|
+
engineers want to understand the "why"), use data effectively (board
|
|
43
|
+
gets trends and benchmarks, CEO gets risk analysis, engineers get
|
|
44
|
+
impact stories), and include clear asks or next steps. The board
|
|
45
|
+
update should be 1 page, the CEO memo should be 2 pages with a
|
|
46
|
+
recommendation, and the all-hands should be an outline with speaker
|
|
47
|
+
notes.
|
|
48
|
+
|
|
49
|
+
assertions:
|
|
50
|
+
- type: llm_judge
|
|
51
|
+
criteria: "Board communication speaks business language — frames review as risk management and competitive advantage (not engineering process), uses industry benchmarks to show strong performance, and answers the 'over-investing' question with data showing declining incidents and competitive merge times"
|
|
52
|
+
weight: 0.35
|
|
53
|
+
description: "Business-language board communication"
|
|
54
|
+
- type: llm_judge
|
|
55
|
+
criteria: "CEO memo provides a clear recommendation — doesn't just present options, takes a position on the self-merge request with risk analysis, proposes a middle ground that addresses product's velocity concerns while maintaining compliance, and includes a decision framework for future review policy changes"
|
|
56
|
+
weight: 0.35
|
|
57
|
+
description: "Decision-ready CEO memo"
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "All-hands presentation engages engineers — celebrates specific team and individual contributions, uses concrete impact stories (not just metrics), acknowledges pain points honestly, and builds excitement for the review platform investment with a clear vision"
|
|
60
|
+
weight: 0.30
|
|
61
|
+
description: "Engineer-engaging all-hands"
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-incident-postmortem
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Conduct review process postmortems — lead blameless investigations into systemic review failures and implement organizational improvements"
|
|
7
|
+
tags: [github, pr-review, postmortem, incident-response, process-improvement, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the Head of Engineering conducting a postmortem after the most
|
|
13
|
+
serious review-related incident in company history. A payment
|
|
14
|
+
processing bug caused $2.3M in duplicate charges over 72 hours before
|
|
15
|
+
detection.
|
|
16
|
+
|
|
17
|
+
Incident timeline:
|
|
18
|
+
- Day 0: PR #4521 "Optimize payment batch processing" submitted by a
|
|
19
|
+
senior engineer (800 lines, refactoring payment job scheduler)
|
|
20
|
+
- Day 1: First review by a mid-level engineer — "LGTM, nice refactor"
|
|
21
|
+
(spent 8 minutes on 800 lines based on GitHub activity timestamps)
|
|
22
|
+
- Day 1: Second review by another mid-level — requested minor naming
|
|
23
|
+
change, then approved after the change was made
|
|
24
|
+
- Day 2: PR merged after CI passed (all 247 tests green)
|
|
25
|
+
- Day 3: Deployed to production via automated pipeline
|
|
26
|
+
- Day 5: Customer reports duplicate charges. Investigation begins
|
|
27
|
+
- Day 6: Root cause identified — race condition in the batch scheduler
|
|
28
|
+
that causes payment jobs to be processed twice under high load
|
|
29
|
+
- Day 8: Hotfix deployed. Customer refund process begins
|
|
30
|
+
|
|
31
|
+
Review failures identified:
|
|
32
|
+
1. Neither reviewer had payment domain expertise (CODEOWNERS didn't
|
|
33
|
+
include the batch scheduler directory)
|
|
34
|
+
2. The 8-minute review of 800 lines was clearly insufficient
|
|
35
|
+
3. The race condition was subtle but identifiable with careful review
|
|
36
|
+
of the concurrency logic
|
|
37
|
+
4. Test coverage was high (85%) but no tests simulated concurrent
|
|
38
|
+
execution or high-load conditions
|
|
39
|
+
5. The PR was marked "refactoring" which reduced perceived risk
|
|
40
|
+
6. The senior author's reputation created unconscious trust bias
|
|
41
|
+
|
|
42
|
+
Additional context:
|
|
43
|
+
- The payment team lost their tech lead 2 months ago (not replaced)
|
|
44
|
+
- CODEOWNERS for payment code points to a team that was reorganized
|
|
45
|
+
- The review SLA pressure (merge within 1 day) may have rushed reviews
|
|
46
|
+
- 3 similar but smaller incidents occurred in the past year
|
|
47
|
+
|
|
48
|
+
Task: Lead the postmortem. Write: the blameless incident analysis
|
|
49
|
+
(contributing factors at the individual, team, process, and
|
|
50
|
+
organizational levels), the immediate fixes (what changes this week),
|
|
51
|
+
the systemic improvements (what changes in 30/60/90 days), the review
|
|
52
|
+
process changes specifically for payment/financial code, and the
|
|
53
|
+
executive summary for the board (including financial impact and
|
|
54
|
+
remediation plan). Address the pattern of 3 similar incidents and why
|
|
55
|
+
previous fixes didn't prevent this one.
|
|
56
|
+
|
|
57
|
+
assertions:
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "Analysis is truly blameless — doesn't blame the 8-minute reviewer or the senior author, instead identifies systemic factors: outdated CODEOWNERS, missing domain expertise after tech lead departure, SLA pressure encouraging superficial reviews, and trust bias toward senior engineers"
|
|
60
|
+
weight: 0.35
|
|
61
|
+
description: "Truly blameless analysis"
|
|
62
|
+
- type: llm_judge
|
|
63
|
+
criteria: "Improvements address all levels — individual (reviewer training on concurrency), team (payment domain expertise gap), process (CODEOWNERS update, risk-based review requirements), and organizational (SLA policy that doesn't incentivize rubber-stamping)"
|
|
64
|
+
weight: 0.35
|
|
65
|
+
description: "Multi-level improvements"
|
|
66
|
+
- type: llm_judge
|
|
67
|
+
criteria: "Pattern analysis explains why previous fixes failed — the 3 prior incidents likely led to narrow fixes (fix the specific bug) rather than systemic changes, and this postmortem addresses the meta-problem of why postmortem action items aren't preventing recurrence"
|
|
68
|
+
weight: 0.30
|
|
69
|
+
description: "Pattern-breaking analysis"
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: review-org-design
|
|
3
|
+
level: 4
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design review organization — build teams and roles dedicated to code review excellence, training, and tooling"
|
|
7
|
+
tags: [github, pr-review, org-design, teams, roles, career-paths, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the SVP of Engineering creating a dedicated "Developer
|
|
13
|
+
Productivity" organization that includes a Code Review Excellence
|
|
14
|
+
team. The company has 600 engineers and the CEO has approved headcount
|
|
15
|
+
for this new function.
|
|
16
|
+
|
|
17
|
+
The mandate:
|
|
18
|
+
- Reduce average merge time from 3 days to 1 day
|
|
19
|
+
- Reduce review-related production incidents by 80%
|
|
20
|
+
- Achieve 90%+ developer satisfaction with the review process (from
|
|
21
|
+
current 45%)
|
|
22
|
+
- Build review tooling and automation as a platform
|
|
23
|
+
- Create a reviewer training and certification program
|
|
24
|
+
- Establish review standards that scale with the company
|
|
25
|
+
|
|
26
|
+
Available headcount: 12 FTEs
|
|
27
|
+
Budget: $500K/year for tooling (separate from headcount)
|
|
28
|
+
|
|
29
|
+
Questions to answer:
|
|
30
|
+
1. What roles do you need? (Platform engineers, program managers,
|
|
31
|
+
trainers, data analysts?)
|
|
32
|
+
2. How does this team interact with the 50 product teams?
|
|
33
|
+
3. Where does this team sit in the org chart?
|
|
34
|
+
4. What does the career ladder look like for "review excellence"?
|
|
35
|
+
5. How do you avoid becoming a bottleneck or bureaucratic overhead?
|
|
36
|
+
6. What does success look like at 6 months, 1 year, and 2 years?
|
|
37
|
+
|
|
38
|
+
Constraint: The engineering culture values autonomy. Any centralized
|
|
39
|
+
function risks being seen as "the review police." You need buy-in from
|
|
40
|
+
team leads.
|
|
41
|
+
|
|
42
|
+
Task: Design the organization. Write: the team structure (roles,
|
|
43
|
+
responsibilities, reporting lines), the interaction model with product
|
|
44
|
+
teams (embedded vs centralized vs hybrid), the career ladder for review
|
|
45
|
+
excellence roles, the buy-in strategy (how to get team lead support
|
|
46
|
+
without being "review police"), the phased roadmap (what to deliver at
|
|
47
|
+
6 months, 1 year, 2 years), and the success metrics with accountability
|
|
48
|
+
framework.
|
|
49
|
+
|
|
50
|
+
assertions:
|
|
51
|
+
- type: llm_judge
|
|
52
|
+
criteria: "Team structure is well-designed — includes platform engineers (build tooling), program managers (process), trainers (education), and data analysts (metrics), with clear roles and not too top-heavy for a 12-person team"
|
|
53
|
+
weight: 0.35
|
|
54
|
+
description: "Well-designed team structure"
|
|
55
|
+
- type: llm_judge
|
|
56
|
+
criteria: "Interaction model preserves autonomy — uses an enabling/platform model (not command-and-control), product teams opt in to services, the team provides tools and training rather than mandates, and the 'review police' perception is actively countered"
|
|
57
|
+
weight: 0.35
|
|
58
|
+
description: "Autonomy-preserving interaction model"
|
|
59
|
+
- type: llm_judge
|
|
60
|
+
criteria: "Career ladder is viable — creates career progression for review excellence roles (not a dead-end), connects to broader developer productivity career paths, and provides incentives for engineers to specialize in this area"
|
|
61
|
+
weight: 0.30
|
|
62
|
+
description: "Viable career ladder"
|