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.
Files changed (459) hide show
  1. package/courses/GENERATION_LOG.md +72 -0
  2. package/courses/api-error-handling/course.yaml +16 -0
  3. package/courses/api-error-handling/scenarios/level-1/error-response-format.yaml +131 -0
  4. package/courses/api-error-handling/scenarios/level-1/http-status-codes-basics.yaml +90 -0
  5. package/courses/api-error-handling/scenarios/level-1/rate-limiting-basics.yaml +135 -0
  6. package/courses/api-error-handling/scenarios/level-1/request-validation-errors.yaml +208 -0
  7. package/courses/api-error-handling/scenarios/level-2/circuit-breaker-pattern.yaml +189 -0
  8. package/courses/api-error-handling/scenarios/level-2/idempotency-retry-logic.yaml +159 -0
  9. package/courses/api-error-handling/scenarios/level-2/rfc-7807-problem-details.yaml +178 -0
  10. package/courses/api-error-handling/scenarios/level-2/webhook-error-handling.yaml +211 -0
  11. package/courses/api-error-handling/scenarios/level-3/distributed-tracing-errors.yaml +275 -0
  12. package/courses/aws-lambda-debugging/course.yaml +11 -0
  13. package/courses/aws-lambda-debugging/scenarios/level-1/api-gateway-integration.yaml +71 -0
  14. package/courses/aws-lambda-debugging/scenarios/level-1/cloudwatch-logs-basics.yaml +64 -0
  15. package/courses/aws-lambda-debugging/scenarios/level-1/cold-start-basics.yaml +70 -0
  16. package/courses/aws-lambda-debugging/scenarios/level-1/environment-variable-issues.yaml +72 -0
  17. package/courses/aws-lambda-debugging/scenarios/level-1/first-debugging-shift.yaml +73 -0
  18. package/courses/aws-lambda-debugging/scenarios/level-1/handler-import-errors.yaml +71 -0
  19. package/courses/aws-lambda-debugging/scenarios/level-1/iam-permission-errors.yaml +68 -0
  20. package/courses/aws-lambda-debugging/scenarios/level-1/invocation-errors.yaml +72 -0
  21. package/courses/aws-lambda-debugging/scenarios/level-1/lambda-timeout-errors.yaml +65 -0
  22. package/courses/aws-lambda-debugging/scenarios/level-1/memory-and-oom.yaml +70 -0
  23. package/courses/aws-lambda-debugging/scenarios/level-2/async-invocation-failures.yaml +72 -0
  24. package/courses/aws-lambda-debugging/scenarios/level-2/cold-start-optimization.yaml +76 -0
  25. package/courses/aws-lambda-debugging/scenarios/level-2/dynamodb-streams-debugging.yaml +70 -0
  26. package/courses/aws-lambda-debugging/scenarios/level-2/intermediate-debugging-shift.yaml +71 -0
  27. package/courses/aws-lambda-debugging/scenarios/level-2/lambda-concurrency-management.yaml +70 -0
  28. package/courses/aws-lambda-debugging/scenarios/level-2/lambda-layers-debugging.yaml +76 -0
  29. package/courses/aws-lambda-debugging/scenarios/level-2/sam-local-debugging.yaml +74 -0
  30. package/courses/aws-lambda-debugging/scenarios/level-2/sqs-event-source.yaml +72 -0
  31. package/courses/aws-lambda-debugging/scenarios/level-2/vpc-networking-issues.yaml +71 -0
  32. package/courses/aws-lambda-debugging/scenarios/level-2/xray-tracing.yaml +62 -0
  33. package/courses/aws-lambda-debugging/scenarios/level-3/advanced-debugging-shift.yaml +72 -0
  34. package/courses/aws-lambda-debugging/scenarios/level-3/container-image-lambda.yaml +79 -0
  35. package/courses/aws-lambda-debugging/scenarios/level-3/cross-account-invocation.yaml +72 -0
  36. package/courses/aws-lambda-debugging/scenarios/level-3/eventbridge-patterns.yaml +79 -0
  37. package/courses/aws-lambda-debugging/scenarios/level-3/iac-deployment-debugging.yaml +68 -0
  38. package/courses/aws-lambda-debugging/scenarios/level-3/kinesis-stream-processing.yaml +64 -0
  39. package/courses/aws-lambda-debugging/scenarios/level-3/lambda-at-edge.yaml +64 -0
  40. package/courses/aws-lambda-debugging/scenarios/level-3/lambda-extensions-debugging.yaml +67 -0
  41. package/courses/aws-lambda-debugging/scenarios/level-3/powertools-observability.yaml +79 -0
  42. package/courses/aws-lambda-debugging/scenarios/level-3/step-functions-debugging.yaml +80 -0
  43. package/courses/aws-lambda-debugging/scenarios/level-4/cost-optimization-strategy.yaml +67 -0
  44. package/courses/aws-lambda-debugging/scenarios/level-4/expert-debugging-shift.yaml +62 -0
  45. package/courses/aws-lambda-debugging/scenarios/level-4/incident-management-serverless.yaml +61 -0
  46. package/courses/aws-lambda-debugging/scenarios/level-4/multi-region-serverless.yaml +67 -0
  47. package/courses/aws-lambda-debugging/scenarios/level-4/observability-platform-design.yaml +71 -0
  48. package/courses/aws-lambda-debugging/scenarios/level-4/serverless-architecture-design.yaml +64 -0
  49. package/courses/aws-lambda-debugging/scenarios/level-4/serverless-data-architecture.yaml +66 -0
  50. package/courses/aws-lambda-debugging/scenarios/level-4/serverless-migration-strategy.yaml +65 -0
  51. package/courses/aws-lambda-debugging/scenarios/level-4/serverless-security-design.yaml +60 -0
  52. package/courses/aws-lambda-debugging/scenarios/level-4/serverless-testing-strategy.yaml +62 -0
  53. package/courses/aws-lambda-debugging/scenarios/level-5/board-serverless-strategy.yaml +63 -0
  54. package/courses/aws-lambda-debugging/scenarios/level-5/consulting-serverless-adoption.yaml +57 -0
  55. package/courses/aws-lambda-debugging/scenarios/level-5/industry-serverless-patterns.yaml +62 -0
  56. package/courses/aws-lambda-debugging/scenarios/level-5/ma-serverless-integration.yaml +75 -0
  57. package/courses/aws-lambda-debugging/scenarios/level-5/master-debugging-shift.yaml +61 -0
  58. package/courses/aws-lambda-debugging/scenarios/level-5/organizational-serverless-transformation.yaml +65 -0
  59. package/courses/aws-lambda-debugging/scenarios/level-5/regulatory-serverless.yaml +61 -0
  60. package/courses/aws-lambda-debugging/scenarios/level-5/serverless-economics.yaml +65 -0
  61. package/courses/aws-lambda-debugging/scenarios/level-5/serverless-future-technology.yaml +66 -0
  62. package/courses/aws-lambda-debugging/scenarios/level-5/serverless-platform-design.yaml +71 -0
  63. package/courses/docker-container-debugging/course.yaml +11 -0
  64. package/courses/docker-container-debugging/scenarios/level-1/container-exit-codes.yaml +59 -0
  65. package/courses/docker-container-debugging/scenarios/level-1/container-networking-basics.yaml +69 -0
  66. package/courses/docker-container-debugging/scenarios/level-1/docker-logs-debugging.yaml +67 -0
  67. package/courses/docker-container-debugging/scenarios/level-1/dockerfile-build-failures.yaml +71 -0
  68. package/courses/docker-container-debugging/scenarios/level-1/environment-variable-issues.yaml +74 -0
  69. package/courses/docker-container-debugging/scenarios/level-1/first-debugging-shift.yaml +70 -0
  70. package/courses/docker-container-debugging/scenarios/level-1/image-pull-failures.yaml +68 -0
  71. package/courses/docker-container-debugging/scenarios/level-1/port-mapping-issues.yaml +67 -0
  72. package/courses/docker-container-debugging/scenarios/level-1/resource-limits-oom.yaml +70 -0
  73. package/courses/docker-container-debugging/scenarios/level-1/volume-mount-problems.yaml +66 -0
  74. package/courses/docker-container-debugging/scenarios/level-2/container-health-checks.yaml +73 -0
  75. package/courses/docker-container-debugging/scenarios/level-2/docker-compose-debugging.yaml +66 -0
  76. package/courses/docker-container-debugging/scenarios/level-2/docker-exec-debugging.yaml +71 -0
  77. package/courses/docker-container-debugging/scenarios/level-2/image-layer-optimization.yaml +81 -0
  78. package/courses/docker-container-debugging/scenarios/level-2/intermediate-debugging-shift.yaml +73 -0
  79. package/courses/docker-container-debugging/scenarios/level-2/logging-and-log-rotation.yaml +76 -0
  80. package/courses/docker-container-debugging/scenarios/level-2/multi-stage-build-debugging.yaml +76 -0
  81. package/courses/docker-container-debugging/scenarios/level-2/network-debugging-tools.yaml +67 -0
  82. package/courses/docker-container-debugging/scenarios/level-2/pid1-signal-handling.yaml +71 -0
  83. package/courses/docker-container-debugging/scenarios/level-2/security-scanning-basics.yaml +67 -0
  84. package/courses/docker-container-debugging/scenarios/level-3/advanced-debugging-shift.yaml +77 -0
  85. package/courses/docker-container-debugging/scenarios/level-3/buildkit-optimization.yaml +67 -0
  86. package/courses/docker-container-debugging/scenarios/level-3/container-filesystem-debugging.yaml +70 -0
  87. package/courses/docker-container-debugging/scenarios/level-3/container-security-hardening.yaml +74 -0
  88. package/courses/docker-container-debugging/scenarios/level-3/disk-space-management.yaml +74 -0
  89. package/courses/docker-container-debugging/scenarios/level-3/docker-api-automation.yaml +72 -0
  90. package/courses/docker-container-debugging/scenarios/level-3/docker-daemon-issues.yaml +73 -0
  91. package/courses/docker-container-debugging/scenarios/level-3/docker-in-docker-ci.yaml +69 -0
  92. package/courses/docker-container-debugging/scenarios/level-3/overlay-network-debugging.yaml +70 -0
  93. package/courses/docker-container-debugging/scenarios/level-3/production-container-ops.yaml +71 -0
  94. package/courses/docker-container-debugging/scenarios/level-4/cicd-pipeline-design.yaml +66 -0
  95. package/courses/docker-container-debugging/scenarios/level-4/container-monitoring-observability.yaml +63 -0
  96. package/courses/docker-container-debugging/scenarios/level-4/container-orchestration-strategy.yaml +62 -0
  97. package/courses/docker-container-debugging/scenarios/level-4/container-performance-engineering.yaml +64 -0
  98. package/courses/docker-container-debugging/scenarios/level-4/container-security-architecture.yaml +66 -0
  99. package/courses/docker-container-debugging/scenarios/level-4/enterprise-image-management.yaml +58 -0
  100. package/courses/docker-container-debugging/scenarios/level-4/expert-debugging-shift.yaml +63 -0
  101. package/courses/docker-container-debugging/scenarios/level-4/incident-response-containers.yaml +70 -0
  102. package/courses/docker-container-debugging/scenarios/level-4/multi-environment-management.yaml +65 -0
  103. package/courses/docker-container-debugging/scenarios/level-4/stateful-service-containers.yaml +65 -0
  104. package/courses/docker-container-debugging/scenarios/level-5/board-infrastructure-strategy.yaml +58 -0
  105. package/courses/docker-container-debugging/scenarios/level-5/consulting-container-strategy.yaml +61 -0
  106. package/courses/docker-container-debugging/scenarios/level-5/container-platform-architecture.yaml +67 -0
  107. package/courses/docker-container-debugging/scenarios/level-5/container-platform-economics.yaml +67 -0
  108. package/courses/docker-container-debugging/scenarios/level-5/container-technology-evolution.yaml +67 -0
  109. package/courses/docker-container-debugging/scenarios/level-5/disaster-recovery-containers.yaml +66 -0
  110. package/courses/docker-container-debugging/scenarios/level-5/industry-container-patterns.yaml +71 -0
  111. package/courses/docker-container-debugging/scenarios/level-5/master-debugging-shift.yaml +62 -0
  112. package/courses/docker-container-debugging/scenarios/level-5/organizational-transformation.yaml +67 -0
  113. package/courses/docker-container-debugging/scenarios/level-5/regulatory-compliance-containers.yaml +61 -0
  114. package/courses/github-actions-cicd/course.yaml +10 -0
  115. package/courses/github-actions-cicd/scenarios/level-1/actions-and-runners.yaml +58 -0
  116. package/courses/github-actions-cicd/scenarios/level-1/basic-workflow-syntax.yaml +52 -0
  117. package/courses/github-actions-cicd/scenarios/level-1/branch-protection-checks.yaml +63 -0
  118. package/courses/github-actions-cicd/scenarios/level-1/environment-variables-secrets.yaml +65 -0
  119. package/courses/github-actions-cicd/scenarios/level-1/first-cicd-shift.yaml +62 -0
  120. package/courses/github-actions-cicd/scenarios/level-1/job-dependencies-outputs.yaml +62 -0
  121. package/courses/github-actions-cicd/scenarios/level-1/simple-ci-pipeline.yaml +57 -0
  122. package/courses/github-actions-cicd/scenarios/level-1/workflow-debugging.yaml +90 -0
  123. package/courses/github-actions-cicd/scenarios/level-1/workflow-status-notifications.yaml +59 -0
  124. package/courses/github-actions-cicd/scenarios/level-1/workflow-triggers.yaml +56 -0
  125. package/courses/github-actions-cicd/scenarios/level-2/concurrency-control.yaml +58 -0
  126. package/courses/github-actions-cicd/scenarios/level-2/conditional-execution.yaml +60 -0
  127. package/courses/github-actions-cicd/scenarios/level-2/custom-actions-development.yaml +55 -0
  128. package/courses/github-actions-cicd/scenarios/level-2/dependency-caching.yaml +58 -0
  129. package/courses/github-actions-cicd/scenarios/level-2/deployment-workflows.yaml +61 -0
  130. package/courses/github-actions-cicd/scenarios/level-2/github-packages-publishing.yaml +59 -0
  131. package/courses/github-actions-cicd/scenarios/level-2/intermediate-cicd-shift.yaml +68 -0
  132. package/courses/github-actions-cicd/scenarios/level-2/matrix-builds.yaml +59 -0
  133. package/courses/github-actions-cicd/scenarios/level-2/reusable-workflows.yaml +61 -0
  134. package/courses/github-actions-cicd/scenarios/level-2/workflow-cost-optimization.yaml +61 -0
  135. package/courses/github-actions-cicd/scenarios/level-3/advanced-cicd-shift.yaml +64 -0
  136. package/courses/github-actions-cicd/scenarios/level-3/compliance-automation.yaml +68 -0
  137. package/courses/github-actions-cicd/scenarios/level-3/docker-action-development.yaml +65 -0
  138. package/courses/github-actions-cicd/scenarios/level-3/github-environments.yaml +65 -0
  139. package/courses/github-actions-cicd/scenarios/level-3/monorepo-ci.yaml +68 -0
  140. package/courses/github-actions-cicd/scenarios/level-3/oidc-cloud-deployments.yaml +55 -0
  141. package/courses/github-actions-cicd/scenarios/level-3/release-automation.yaml +61 -0
  142. package/courses/github-actions-cicd/scenarios/level-3/security-hardening.yaml +63 -0
  143. package/courses/github-actions-cicd/scenarios/level-3/self-hosted-runners.yaml +60 -0
  144. package/courses/github-actions-cicd/scenarios/level-3/workflow-optimization.yaml +59 -0
  145. package/courses/github-actions-cicd/scenarios/level-4/cicd-data-architecture.yaml +63 -0
  146. package/courses/github-actions-cicd/scenarios/level-4/cicd-economics-roi.yaml +63 -0
  147. package/courses/github-actions-cicd/scenarios/level-4/cicd-executive-communication.yaml +58 -0
  148. package/courses/github-actions-cicd/scenarios/level-4/cicd-incident-response.yaml +60 -0
  149. package/courses/github-actions-cicd/scenarios/level-4/cicd-org-design.yaml +59 -0
  150. package/courses/github-actions-cicd/scenarios/level-4/cicd-platform-architecture.yaml +63 -0
  151. package/courses/github-actions-cicd/scenarios/level-4/cicd-training-program.yaml +65 -0
  152. package/courses/github-actions-cicd/scenarios/level-4/cicd-vendor-evaluation.yaml +59 -0
  153. package/courses/github-actions-cicd/scenarios/level-4/enterprise-cicd-governance.yaml +55 -0
  154. package/courses/github-actions-cicd/scenarios/level-4/expert-cicd-shift.yaml +60 -0
  155. package/courses/github-actions-cicd/scenarios/level-5/cicd-ai-future.yaml +63 -0
  156. package/courses/github-actions-cicd/scenarios/level-5/cicd-behavioral-science.yaml +70 -0
  157. package/courses/github-actions-cicd/scenarios/level-5/cicd-board-strategy.yaml +56 -0
  158. package/courses/github-actions-cicd/scenarios/level-5/cicd-consulting-engagement.yaml +61 -0
  159. package/courses/github-actions-cicd/scenarios/level-5/cicd-industry-benchmarks.yaml +63 -0
  160. package/courses/github-actions-cicd/scenarios/level-5/cicd-ma-integration.yaml +73 -0
  161. package/courses/github-actions-cicd/scenarios/level-5/cicd-product-development.yaml +68 -0
  162. package/courses/github-actions-cicd/scenarios/level-5/cicd-regulatory-landscape.yaml +72 -0
  163. package/courses/github-actions-cicd/scenarios/level-5/comprehensive-cicd-system.yaml +66 -0
  164. package/courses/github-actions-cicd/scenarios/level-5/master-cicd-shift.yaml +76 -0
  165. package/courses/github-pr-review/scenarios/level-2/api-change-review.yaml +82 -0
  166. package/courses/github-pr-review/scenarios/level-2/automated-review-tooling.yaml +53 -0
  167. package/courses/github-pr-review/scenarios/level-2/cross-team-review.yaml +61 -0
  168. package/courses/github-pr-review/scenarios/level-2/intermediate-review-shift.yaml +66 -0
  169. package/courses/github-pr-review/scenarios/level-2/performance-review-patterns.yaml +99 -0
  170. package/courses/github-pr-review/scenarios/level-2/review-disagreement-resolution.yaml +64 -0
  171. package/courses/github-pr-review/scenarios/level-2/review-metrics-analysis.yaml +63 -0
  172. package/courses/github-pr-review/scenarios/level-2/review-turnaround-sla.yaml +54 -0
  173. package/courses/github-pr-review/scenarios/level-2/stacked-pr-review.yaml +65 -0
  174. package/courses/github-pr-review/scenarios/level-3/advanced-review-shift.yaml +65 -0
  175. package/courses/github-pr-review/scenarios/level-3/ai-powered-review.yaml +58 -0
  176. package/courses/github-pr-review/scenarios/level-3/compliance-review-process.yaml +64 -0
  177. package/courses/github-pr-review/scenarios/level-3/cross-functional-review.yaml +60 -0
  178. package/courses/github-pr-review/scenarios/level-3/incident-driven-review.yaml +63 -0
  179. package/courses/github-pr-review/scenarios/level-3/large-scale-review-operations.yaml +55 -0
  180. package/courses/github-pr-review/scenarios/level-3/monorepo-review-process.yaml +68 -0
  181. package/courses/github-pr-review/scenarios/level-3/review-automation-platform.yaml +61 -0
  182. package/courses/github-pr-review/scenarios/level-3/review-culture-design.yaml +62 -0
  183. package/courses/github-pr-review/scenarios/level-3/review-data-pipeline.yaml +62 -0
  184. package/courses/github-pr-review/scenarios/level-4/enterprise-review-operations.yaml +61 -0
  185. package/courses/github-pr-review/scenarios/level-4/expert-review-shift.yaml +62 -0
  186. package/courses/github-pr-review/scenarios/level-4/review-data-architecture.yaml +69 -0
  187. package/courses/github-pr-review/scenarios/level-4/review-economics-roi.yaml +63 -0
  188. package/courses/github-pr-review/scenarios/level-4/review-executive-communication.yaml +61 -0
  189. package/courses/github-pr-review/scenarios/level-4/review-incident-postmortem.yaml +69 -0
  190. package/courses/github-pr-review/scenarios/level-4/review-org-design.yaml +62 -0
  191. package/courses/github-pr-review/scenarios/level-4/review-platform-architecture.yaml +64 -0
  192. package/courses/github-pr-review/scenarios/level-4/review-training-program.yaml +66 -0
  193. package/courses/github-pr-review/scenarios/level-4/review-vendor-evaluation.yaml +76 -0
  194. package/courses/github-pr-review/scenarios/level-5/comprehensive-review-system.yaml +68 -0
  195. package/courses/github-pr-review/scenarios/level-5/master-review-shift.yaml +73 -0
  196. package/courses/github-pr-review/scenarios/level-5/review-ai-future.yaml +69 -0
  197. package/courses/github-pr-review/scenarios/level-5/review-behavioral-science.yaml +66 -0
  198. package/courses/github-pr-review/scenarios/level-5/review-board-strategy.yaml +62 -0
  199. package/courses/github-pr-review/scenarios/level-5/review-consulting-engagement.yaml +62 -0
  200. package/courses/github-pr-review/scenarios/level-5/review-devtools-product.yaml +71 -0
  201. package/courses/github-pr-review/scenarios/level-5/review-industry-benchmarks.yaml +64 -0
  202. package/courses/github-pr-review/scenarios/level-5/review-ma-integration.yaml +76 -0
  203. package/courses/github-pr-review/scenarios/level-5/review-regulatory-landscape.yaml +78 -0
  204. package/courses/kubernetes-deployment-troubleshooting/course.yaml +12 -0
  205. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/configmap-secret-issues.yaml +69 -0
  206. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/crashloopbackoff.yaml +68 -0
  207. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/deployment-rollout.yaml +56 -0
  208. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/first-troubleshooting-shift.yaml +65 -0
  209. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/health-probe-failures.yaml +70 -0
  210. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/imagepullbackoff.yaml +57 -0
  211. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/kubectl-debugging-basics.yaml +56 -0
  212. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/oomkilled.yaml +70 -0
  213. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/pending-pods.yaml +68 -0
  214. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-1/service-not-reachable.yaml +66 -0
  215. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/dns-resolution-failures.yaml +63 -0
  216. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/helm-deployment-failures.yaml +63 -0
  217. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/hpa-scaling-issues.yaml +62 -0
  218. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/ingress-routing-issues.yaml +63 -0
  219. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/init-container-failures.yaml +63 -0
  220. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/intermediate-troubleshooting-shift.yaml +66 -0
  221. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/network-policy-blocking.yaml +67 -0
  222. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/persistent-volume-issues.yaml +69 -0
  223. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/rbac-permission-denied.yaml +57 -0
  224. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-2/resource-quota-limits.yaml +64 -0
  225. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/advanced-troubleshooting-shift.yaml +69 -0
  226. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/cluster-upgrade-failures.yaml +71 -0
  227. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/gitops-drift-detection.yaml +62 -0
  228. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/job-cronjob-failures.yaml +67 -0
  229. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/monitoring-alerting-gaps.yaml +64 -0
  230. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/multi-container-debugging.yaml +68 -0
  231. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/node-pressure-evictions.yaml +70 -0
  232. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/pod-disruption-budgets.yaml +59 -0
  233. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/service-mesh-debugging.yaml +64 -0
  234. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-3/statefulset-troubleshooting.yaml +69 -0
  235. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/capacity-planning.yaml +65 -0
  236. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/cost-optimization.yaml +57 -0
  237. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/disaster-recovery-design.yaml +56 -0
  238. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/executive-communication.yaml +62 -0
  239. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/expert-troubleshooting-shift.yaml +65 -0
  240. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/incident-management-process.yaml +59 -0
  241. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/multi-cluster-operations.yaml +62 -0
  242. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/multi-tenancy-design.yaml +55 -0
  243. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/platform-engineering.yaml +59 -0
  244. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-4/security-hardening.yaml +58 -0
  245. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/behavioral-science.yaml +62 -0
  246. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/board-strategy.yaml +61 -0
  247. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/cloud-native-future.yaml +65 -0
  248. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/comprehensive-platform.yaml +57 -0
  249. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/consulting-engagement.yaml +62 -0
  250. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/industry-benchmarks.yaml +58 -0
  251. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/ma-integration.yaml +62 -0
  252. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/master-troubleshooting-shift.yaml +73 -0
  253. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/product-development.yaml +65 -0
  254. package/courses/kubernetes-deployment-troubleshooting/scenarios/level-5/regulatory-compliance.yaml +76 -0
  255. package/courses/mysql-query-optimization/course.yaml +11 -0
  256. package/courses/mysql-query-optimization/scenarios/level-1/buffer-pool-basics.yaml +65 -0
  257. package/courses/mysql-query-optimization/scenarios/level-1/explain-basics.yaml +66 -0
  258. package/courses/mysql-query-optimization/scenarios/level-1/first-optimization-shift.yaml +78 -0
  259. package/courses/mysql-query-optimization/scenarios/level-1/innodb-index-fundamentals.yaml +68 -0
  260. package/courses/mysql-query-optimization/scenarios/level-1/join-basics.yaml +66 -0
  261. package/courses/mysql-query-optimization/scenarios/level-1/n-plus-one-queries.yaml +67 -0
  262. package/courses/mysql-query-optimization/scenarios/level-1/query-rewriting-basics.yaml +66 -0
  263. package/courses/mysql-query-optimization/scenarios/level-1/select-star-problems.yaml +68 -0
  264. package/courses/mysql-query-optimization/scenarios/level-1/slow-query-diagnosis.yaml +65 -0
  265. package/courses/mysql-query-optimization/scenarios/level-1/where-clause-optimization.yaml +65 -0
  266. package/courses/mysql-query-optimization/scenarios/level-2/buffer-pool-tuning.yaml +64 -0
  267. package/courses/mysql-query-optimization/scenarios/level-2/composite-index-design.yaml +71 -0
  268. package/courses/mysql-query-optimization/scenarios/level-2/covering-and-invisible-indexes.yaml +69 -0
  269. package/courses/mysql-query-optimization/scenarios/level-2/cte-and-window-functions.yaml +78 -0
  270. package/courses/mysql-query-optimization/scenarios/level-2/intermediate-optimization-shift.yaml +68 -0
  271. package/courses/mysql-query-optimization/scenarios/level-2/join-optimization.yaml +67 -0
  272. package/courses/mysql-query-optimization/scenarios/level-2/performance-schema-analysis.yaml +69 -0
  273. package/courses/mysql-query-optimization/scenarios/level-2/query-optimizer-hints.yaml +74 -0
  274. package/courses/mysql-query-optimization/scenarios/level-2/subquery-optimization.yaml +70 -0
  275. package/courses/mysql-query-optimization/scenarios/level-2/write-optimization.yaml +63 -0
  276. package/courses/mysql-query-optimization/scenarios/level-3/advanced-optimization-shift.yaml +71 -0
  277. package/courses/mysql-query-optimization/scenarios/level-3/connection-management.yaml +67 -0
  278. package/courses/mysql-query-optimization/scenarios/level-3/full-text-search.yaml +77 -0
  279. package/courses/mysql-query-optimization/scenarios/level-3/json-optimization.yaml +87 -0
  280. package/courses/mysql-query-optimization/scenarios/level-3/lock-contention-analysis.yaml +68 -0
  281. package/courses/mysql-query-optimization/scenarios/level-3/monitoring-alerting.yaml +63 -0
  282. package/courses/mysql-query-optimization/scenarios/level-3/online-schema-changes.yaml +79 -0
  283. package/courses/mysql-query-optimization/scenarios/level-3/partitioning-strategies.yaml +83 -0
  284. package/courses/mysql-query-optimization/scenarios/level-3/query-profiling-deep-dive.yaml +84 -0
  285. package/courses/mysql-query-optimization/scenarios/level-3/replication-optimization.yaml +66 -0
  286. package/courses/mysql-query-optimization/scenarios/level-4/aurora-vs-rds-evaluation.yaml +61 -0
  287. package/courses/mysql-query-optimization/scenarios/level-4/data-architecture.yaml +62 -0
  288. package/courses/mysql-query-optimization/scenarios/level-4/database-migration-planning.yaml +59 -0
  289. package/courses/mysql-query-optimization/scenarios/level-4/enterprise-governance.yaml +50 -0
  290. package/courses/mysql-query-optimization/scenarios/level-4/executive-communication.yaml +54 -0
  291. package/courses/mysql-query-optimization/scenarios/level-4/expert-optimization-shift.yaml +67 -0
  292. package/courses/mysql-query-optimization/scenarios/level-4/high-availability-architecture.yaml +60 -0
  293. package/courses/mysql-query-optimization/scenarios/level-4/optimizer-internals.yaml +62 -0
  294. package/courses/mysql-query-optimization/scenarios/level-4/performance-sla-design.yaml +52 -0
  295. package/courses/mysql-query-optimization/scenarios/level-4/read-replica-scaling.yaml +51 -0
  296. package/courses/mysql-query-optimization/scenarios/level-5/ai-database-future.yaml +45 -0
  297. package/courses/mysql-query-optimization/scenarios/level-5/behavioral-science.yaml +44 -0
  298. package/courses/mysql-query-optimization/scenarios/level-5/benchmark-design.yaml +47 -0
  299. package/courses/mysql-query-optimization/scenarios/level-5/board-strategy.yaml +48 -0
  300. package/courses/mysql-query-optimization/scenarios/level-5/comprehensive-platform.yaml +49 -0
  301. package/courses/mysql-query-optimization/scenarios/level-5/consulting-engagement.yaml +52 -0
  302. package/courses/mysql-query-optimization/scenarios/level-5/ma-database-integration.yaml +47 -0
  303. package/courses/mysql-query-optimization/scenarios/level-5/master-optimization-shift.yaml +56 -0
  304. package/courses/mysql-query-optimization/scenarios/level-5/product-development.yaml +48 -0
  305. package/courses/mysql-query-optimization/scenarios/level-5/regulatory-compliance.yaml +48 -0
  306. package/courses/postgresql-query-optimization/course.yaml +11 -0
  307. package/courses/postgresql-query-optimization/scenarios/level-1/explain-analyze-basics.yaml +80 -0
  308. package/courses/postgresql-query-optimization/scenarios/level-1/first-optimization-shift.yaml +77 -0
  309. package/courses/postgresql-query-optimization/scenarios/level-1/index-fundamentals.yaml +76 -0
  310. package/courses/postgresql-query-optimization/scenarios/level-1/join-basics.yaml +73 -0
  311. package/courses/postgresql-query-optimization/scenarios/level-1/n-plus-one-queries.yaml +62 -0
  312. package/courses/postgresql-query-optimization/scenarios/level-1/query-rewriting-basics.yaml +69 -0
  313. package/courses/postgresql-query-optimization/scenarios/level-1/select-star-problems.yaml +69 -0
  314. package/courses/postgresql-query-optimization/scenarios/level-1/slow-query-diagnosis.yaml +63 -0
  315. package/courses/postgresql-query-optimization/scenarios/level-1/vacuum-and-statistics.yaml +62 -0
  316. package/courses/postgresql-query-optimization/scenarios/level-1/where-clause-optimization.yaml +74 -0
  317. package/courses/postgresql-query-optimization/scenarios/level-2/autovacuum-tuning.yaml +76 -0
  318. package/courses/postgresql-query-optimization/scenarios/level-2/composite-index-design.yaml +81 -0
  319. package/courses/postgresql-query-optimization/scenarios/level-2/covering-indexes.yaml +74 -0
  320. package/courses/postgresql-query-optimization/scenarios/level-2/cte-optimization.yaml +83 -0
  321. package/courses/postgresql-query-optimization/scenarios/level-2/intermediate-optimization-shift.yaml +66 -0
  322. package/courses/postgresql-query-optimization/scenarios/level-2/join-optimization.yaml +72 -0
  323. package/courses/postgresql-query-optimization/scenarios/level-2/partial-and-expression-indexes.yaml +75 -0
  324. package/courses/postgresql-query-optimization/scenarios/level-2/query-planner-settings.yaml +62 -0
  325. package/courses/postgresql-query-optimization/scenarios/level-2/subquery-optimization.yaml +67 -0
  326. package/courses/postgresql-query-optimization/scenarios/level-2/window-function-optimization.yaml +63 -0
  327. package/courses/postgresql-query-optimization/scenarios/level-3/advanced-optimization-shift.yaml +71 -0
  328. package/courses/postgresql-query-optimization/scenarios/level-3/connection-pooling.yaml +60 -0
  329. package/courses/postgresql-query-optimization/scenarios/level-3/full-text-search-optimization.yaml +66 -0
  330. package/courses/postgresql-query-optimization/scenarios/level-3/jsonb-optimization.yaml +88 -0
  331. package/courses/postgresql-query-optimization/scenarios/level-3/lock-contention-analysis.yaml +80 -0
  332. package/courses/postgresql-query-optimization/scenarios/level-3/materialized-view-optimization.yaml +73 -0
  333. package/courses/postgresql-query-optimization/scenarios/level-3/parallel-query-execution.yaml +74 -0
  334. package/courses/postgresql-query-optimization/scenarios/level-3/partitioning-strategies.yaml +71 -0
  335. package/courses/postgresql-query-optimization/scenarios/level-3/specialized-index-types.yaml +67 -0
  336. package/courses/postgresql-query-optimization/scenarios/level-3/write-optimization.yaml +65 -0
  337. package/courses/postgresql-query-optimization/scenarios/level-4/data-architecture-analytics.yaml +64 -0
  338. package/courses/postgresql-query-optimization/scenarios/level-4/database-executive-communication.yaml +64 -0
  339. package/courses/postgresql-query-optimization/scenarios/level-4/database-migration-planning.yaml +57 -0
  340. package/courses/postgresql-query-optimization/scenarios/level-4/enterprise-database-governance.yaml +52 -0
  341. package/courses/postgresql-query-optimization/scenarios/level-4/expert-optimization-shift.yaml +73 -0
  342. package/courses/postgresql-query-optimization/scenarios/level-4/high-availability-architecture.yaml +62 -0
  343. package/courses/postgresql-query-optimization/scenarios/level-4/optimizer-internals.yaml +69 -0
  344. package/courses/postgresql-query-optimization/scenarios/level-4/performance-sla-design.yaml +58 -0
  345. package/courses/postgresql-query-optimization/scenarios/level-4/read-replica-optimization.yaml +62 -0
  346. package/courses/postgresql-query-optimization/scenarios/level-4/vendor-evaluation.yaml +73 -0
  347. package/courses/postgresql-query-optimization/scenarios/level-5/comprehensive-database-system.yaml +70 -0
  348. package/courses/postgresql-query-optimization/scenarios/level-5/database-ai-future.yaml +81 -0
  349. package/courses/postgresql-query-optimization/scenarios/level-5/database-behavioral-science.yaml +63 -0
  350. package/courses/postgresql-query-optimization/scenarios/level-5/database-board-strategy.yaml +77 -0
  351. package/courses/postgresql-query-optimization/scenarios/level-5/database-consulting-engagement.yaml +61 -0
  352. package/courses/postgresql-query-optimization/scenarios/level-5/database-industry-benchmarks.yaml +64 -0
  353. package/courses/postgresql-query-optimization/scenarios/level-5/database-ma-integration.yaml +71 -0
  354. package/courses/postgresql-query-optimization/scenarios/level-5/database-product-development.yaml +72 -0
  355. package/courses/postgresql-query-optimization/scenarios/level-5/database-regulatory-landscape.yaml +76 -0
  356. package/courses/postgresql-query-optimization/scenarios/level-5/master-optimization-shift.yaml +66 -0
  357. package/courses/rest-api-error-handling/course.yaml +11 -0
  358. package/courses/rest-api-error-handling/scenarios/level-1/authentication-errors.yaml +71 -0
  359. package/courses/rest-api-error-handling/scenarios/level-1/content-negotiation-errors.yaml +63 -0
  360. package/courses/rest-api-error-handling/scenarios/level-1/error-logging-basics.yaml +63 -0
  361. package/courses/rest-api-error-handling/scenarios/level-1/error-response-format.yaml +58 -0
  362. package/courses/rest-api-error-handling/scenarios/level-1/first-error-handling-shift.yaml +67 -0
  363. package/courses/rest-api-error-handling/scenarios/level-1/http-status-codes.yaml +46 -0
  364. package/courses/rest-api-error-handling/scenarios/level-1/not-found-errors.yaml +52 -0
  365. package/courses/rest-api-error-handling/scenarios/level-1/rate-limiting-errors.yaml +56 -0
  366. package/courses/rest-api-error-handling/scenarios/level-1/request-validation-errors.yaml +59 -0
  367. package/courses/rest-api-error-handling/scenarios/level-1/server-error-handling.yaml +55 -0
  368. package/courses/rest-api-error-handling/scenarios/level-2/api-versioning-errors.yaml +66 -0
  369. package/courses/rest-api-error-handling/scenarios/level-2/batch-request-errors.yaml +61 -0
  370. package/courses/rest-api-error-handling/scenarios/level-2/circuit-breaker-pattern.yaml +52 -0
  371. package/courses/rest-api-error-handling/scenarios/level-2/error-code-taxonomy.yaml +62 -0
  372. package/courses/rest-api-error-handling/scenarios/level-2/error-monitoring-alerting.yaml +53 -0
  373. package/courses/rest-api-error-handling/scenarios/level-2/intermediate-error-shift.yaml +69 -0
  374. package/courses/rest-api-error-handling/scenarios/level-2/pagination-errors.yaml +66 -0
  375. package/courses/rest-api-error-handling/scenarios/level-2/retry-and-idempotency.yaml +60 -0
  376. package/courses/rest-api-error-handling/scenarios/level-2/rfc7807-problem-details.yaml +60 -0
  377. package/courses/rest-api-error-handling/scenarios/level-2/webhook-error-handling.yaml +55 -0
  378. package/courses/rest-api-error-handling/scenarios/level-3/advanced-error-shift.yaml +72 -0
  379. package/courses/rest-api-error-handling/scenarios/level-3/api-gateway-errors.yaml +71 -0
  380. package/courses/rest-api-error-handling/scenarios/level-3/async-api-errors.yaml +67 -0
  381. package/courses/rest-api-error-handling/scenarios/level-3/caching-error-scenarios.yaml +65 -0
  382. package/courses/rest-api-error-handling/scenarios/level-3/chaos-engineering-apis.yaml +62 -0
  383. package/courses/rest-api-error-handling/scenarios/level-3/database-error-handling.yaml +79 -0
  384. package/courses/rest-api-error-handling/scenarios/level-3/distributed-error-propagation.yaml +63 -0
  385. package/courses/rest-api-error-handling/scenarios/level-3/error-budgets-sre.yaml +61 -0
  386. package/courses/rest-api-error-handling/scenarios/level-3/error-correlation.yaml +58 -0
  387. package/courses/rest-api-error-handling/scenarios/level-3/graphql-vs-rest-errors.yaml +73 -0
  388. package/courses/rest-api-error-handling/scenarios/level-4/compliance-error-handling.yaml +65 -0
  389. package/courses/rest-api-error-handling/scenarios/level-4/enterprise-error-governance.yaml +62 -0
  390. package/courses/rest-api-error-handling/scenarios/level-4/error-analytics-platform.yaml +65 -0
  391. package/courses/rest-api-error-handling/scenarios/level-4/error-cost-optimization.yaml +63 -0
  392. package/courses/rest-api-error-handling/scenarios/level-4/error-executive-communication.yaml +60 -0
  393. package/courses/rest-api-error-handling/scenarios/level-4/error-handling-architecture.yaml +67 -0
  394. package/courses/rest-api-error-handling/scenarios/level-4/error-org-design.yaml +68 -0
  395. package/courses/rest-api-error-handling/scenarios/level-4/error-sla-design.yaml +65 -0
  396. package/courses/rest-api-error-handling/scenarios/level-4/error-training-program.yaml +61 -0
  397. package/courses/rest-api-error-handling/scenarios/level-4/expert-error-shift.yaml +63 -0
  398. package/courses/rest-api-error-handling/scenarios/level-5/comprehensive-error-system.yaml +68 -0
  399. package/courses/rest-api-error-handling/scenarios/level-5/error-ai-future.yaml +75 -0
  400. package/courses/rest-api-error-handling/scenarios/level-5/error-behavioral-science.yaml +73 -0
  401. package/courses/rest-api-error-handling/scenarios/level-5/error-board-strategy.yaml +60 -0
  402. package/courses/rest-api-error-handling/scenarios/level-5/error-consulting-engagement.yaml +58 -0
  403. package/courses/rest-api-error-handling/scenarios/level-5/error-industry-benchmarks.yaml +72 -0
  404. package/courses/rest-api-error-handling/scenarios/level-5/error-ma-integration.yaml +68 -0
  405. package/courses/rest-api-error-handling/scenarios/level-5/error-product-development.yaml +66 -0
  406. package/courses/rest-api-error-handling/scenarios/level-5/error-regulatory-landscape.yaml +80 -0
  407. package/courses/rest-api-error-handling/scenarios/level-5/master-error-shift.yaml +73 -0
  408. package/courses/terraform-infrastructure-setup/course.yaml +11 -0
  409. package/courses/terraform-infrastructure-setup/scenarios/level-1/terraform-init-errors.yaml +72 -0
  410. package/dist/cli/commands/add.d.ts.map +1 -1
  411. package/dist/cli/commands/add.js +6 -5
  412. package/dist/cli/commands/add.js.map +1 -1
  413. package/dist/cli/commands/generate.d.ts.map +1 -1
  414. package/dist/cli/commands/generate.js +4 -0
  415. package/dist/cli/commands/generate.js.map +1 -1
  416. package/dist/cli/commands/list.d.ts.map +1 -1
  417. package/dist/cli/commands/list.js +6 -18
  418. package/dist/cli/commands/list.js.map +1 -1
  419. package/dist/cli/commands/train.d.ts.map +1 -1
  420. package/dist/cli/commands/train.js +18 -18
  421. package/dist/cli/commands/train.js.map +1 -1
  422. package/dist/cli/index.js +93 -55
  423. package/dist/cli/index.js.map +1 -1
  424. package/dist/cli/run-demo.js +2 -1
  425. package/dist/cli/run-demo.js.map +1 -1
  426. package/dist/cli/setup.d.ts +18 -0
  427. package/dist/cli/setup.d.ts.map +1 -0
  428. package/dist/cli/setup.js +154 -0
  429. package/dist/cli/setup.js.map +1 -0
  430. package/dist/engine/agent-bridge.d.ts +5 -2
  431. package/dist/engine/agent-bridge.d.ts.map +1 -1
  432. package/dist/engine/agent-bridge.js +36 -9
  433. package/dist/engine/agent-bridge.js.map +1 -1
  434. package/dist/engine/loader.d.ts +21 -0
  435. package/dist/engine/loader.d.ts.map +1 -1
  436. package/dist/engine/loader.js +54 -1
  437. package/dist/engine/loader.js.map +1 -1
  438. package/dist/engine/training-loop.d.ts.map +1 -1
  439. package/dist/engine/training-loop.js +1 -0
  440. package/dist/engine/training-loop.js.map +1 -1
  441. package/dist/engine/training.d.ts.map +1 -1
  442. package/dist/engine/training.js +1 -0
  443. package/dist/engine/training.js.map +1 -1
  444. package/dist/generator/skill-generator.d.ts +1 -1
  445. package/dist/generator/skill-generator.d.ts.map +1 -1
  446. package/dist/generator/skill-generator.js +21 -2
  447. package/dist/generator/skill-generator.js.map +1 -1
  448. package/dist/mcp/server.d.ts.map +1 -1
  449. package/dist/mcp/server.js +11 -26
  450. package/dist/mcp/server.js.map +1 -1
  451. package/dist/mcp/session-manager.d.ts +9 -4
  452. package/dist/mcp/session-manager.d.ts.map +1 -1
  453. package/dist/mcp/session-manager.js +65 -28
  454. package/dist/mcp/session-manager.js.map +1 -1
  455. package/dist/types/schemas.d.ts +38 -13
  456. package/dist/types/schemas.d.ts.map +1 -1
  457. package/dist/types/schemas.js +9 -5
  458. package/dist/types/schemas.js.map +1 -1
  459. package/package.json +1 -1
@@ -0,0 +1,71 @@
1
+ meta:
2
+ id: review-devtools-product
3
+ level: 5
4
+ course: github-pr-review
5
+ type: output
6
+ description: "Build a review DevTools product — design and launch a code review SaaS product as a startup co-founder"
7
+ tags: [github, pr-review, product, startup, SaaS, go-to-market, master]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You're the co-founder/CPO of a startup building "ReviewIQ" — an
13
+ AI-powered code review platform. You've raised $5M in seed funding
14
+ and have 12 months of runway. Your thesis: code review is broken at
15
+ scale and the market is ready for a purpose-built solution.
16
+
17
+ Market analysis:
18
+ - TAM: $4.2B (developer productivity tools market)
19
+ - SAM: $800M (code review and quality tools)
20
+ - SOM: $80M (AI-powered review for GitHub-based teams)
21
+ - Competitors: CodeRabbit ($12M ARR), Sourcery ($5M ARR), GitHub
22
+ Copilot code review (free, basic), Graphite (focused on stacking)
23
+ - Gap: No tool combines AI review + analytics + workflow automation
24
+ in a single platform
25
+
26
+ Product vision:
27
+ 1. AI Reviewer: Catches bugs, security issues, and style violations
28
+ with <5% false positive rate
29
+ 2. Review Analytics: Team-level and org-level metrics with benchmarks
30
+ 3. Smart Assignment: Expertise-based reviewer assignment with load
31
+ balancing
32
+ 4. Review Workflow: Custom review workflows (different rules per repo,
33
+ team, risk level)
34
+ 5. Developer Experience: Integrates into GitHub's native review UI
35
+
36
+ Technical constraints:
37
+ - Must work with GitHub (80% of target market)
38
+ - Customer code must never leave their environment (enterprise
39
+ requirement)
40
+ - Must handle repos with 500K+ lines without timeout
41
+ - Must work with monorepos and polyglot codebases
42
+
43
+ Go-to-market constraints:
44
+ - 12-month runway ($5M, burn rate $400K/month)
45
+ - 6-person engineering team (including you)
46
+ - Need to reach $1M ARR to raise Series A
47
+ - Developer-led growth (PLG) is the primary motion
48
+
49
+ Task: Design the complete product strategy. Write: the product
50
+ roadmap (MVP scope for Month 1-3, growth features for Month 4-8,
51
+ enterprise features for Month 9-12), the technical architecture
52
+ (handle the privacy constraint with on-prem or edge deployment), the
53
+ pricing strategy (free tier, team, enterprise — with specific limits),
54
+ the PLG go-to-market plan (developer adoption → team adoption →
55
+ enterprise sale), and the competitive positioning (how to win against
56
+ GitHub Copilot's free review and funded competitors). Include the
57
+ metrics dashboard for the board and the 12-month financial projection.
58
+
59
+ assertions:
60
+ - type: llm_judge
61
+ criteria: "MVP scope is achievable by a 6-person team in 3 months — focuses on one killer feature (likely AI review or analytics, not everything), defers enterprise features, and the scope decision is justified with competitive analysis"
62
+ weight: 0.35
63
+ description: "Achievable MVP scope"
64
+ - type: llm_judge
65
+ criteria: "Technical architecture solves the privacy constraint — proposes a viable approach for keeping customer code private (edge deployment, customer-hosted inference, or GitHub App with minimal data transmission), and this doesn't compromise the AI quality"
66
+ weight: 0.35
67
+ description: "Privacy-solving technical architecture"
68
+ - type: llm_judge
69
+ criteria: "GTM strategy reaches $1M ARR in 12 months — the PLG funnel is realistic (free users → team conversion → enterprise expansion), pricing tiers incentivize team adoption, and the competitive positioning against GitHub Copilot is credible (not just 'we're better')"
70
+ weight: 0.30
71
+ description: "ARR-reaching GTM strategy"
@@ -0,0 +1,64 @@
1
+ meta:
2
+ id: review-industry-benchmarks
3
+ level: 5
4
+ course: github-pr-review
5
+ type: output
6
+ description: "Publish industry benchmarks — create the definitive 'State of Code Review' report with cross-industry analysis and strategic insights"
7
+ tags: [github, pr-review, benchmarks, research, industry-analysis, master]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You're the Head of Engineering Research at a developer tools company
13
+ publishing the annual "State of Code Review 2026" report. This report
14
+ is read by 50,000+ engineering leaders and influences industry
15
+ practices. You have survey data from 2,500 organizations.
16
+
17
+ Raw data highlights:
18
+ - Average merge time by company size:
19
+ Startup (<50 eng): 0.8 days | Mid (50-500): 2.1 days |
20
+ Enterprise (500+): 4.3 days
21
+ - Review practices adoption:
22
+ Required reviews: 89% | CODEOWNERS: 52% | AI review tools: 34% |
23
+ Review training: 18% | Review metrics: 27%
24
+ - Developer satisfaction with review:
25
+ Very satisfied: 15% | Satisfied: 35% | Neutral: 25% |
26
+ Dissatisfied: 18% | Very dissatisfied: 7%
27
+ - Correlation data:
28
+ Teams with review training: 2.3x fewer review-related incidents
29
+ Teams using AI review: 35% faster first review, no change in bug
30
+ detection rate
31
+ Teams with stale review dismissal: 40% fewer post-merge issues
32
+ Teams tracking review metrics: 1.8x faster improvement velocity
33
+ - Industry breakdown (merge time):
34
+ Fintech: 3.2 days | Healthcare: 4.8 days | SaaS: 1.5 days |
35
+ Gaming: 0.9 days | Government: 7.1 days | E-commerce: 1.8 days
36
+ - Emerging trends:
37
+ 28% considering "review-free" paths for AI-generated code
38
+ 45% exploring AI as first reviewer before human review
39
+ 62% report "review fatigue" as top developer experience issue
40
+ 33% have reduced required approvals in the last year
41
+
42
+ Task: Write the "State of Code Review 2026" report. Include: the
43
+ executive summary (key findings in 1 page), the benchmarking
44
+ methodology (how data was collected, limitations, statistical
45
+ significance), the cross-industry analysis (why healthcare and
46
+ government are slow, what gaming and SaaS do differently), the
47
+ emerging trends analysis (AI review, review-free paths, review
48
+ fatigue — with predictions), and the strategic recommendations by
49
+ company size. Each section should include data visualizations
50
+ described in text and key takeaways.
51
+
52
+ assertions:
53
+ - type: llm_judge
54
+ criteria: "Benchmarking methodology is credible — describes data collection, sample sizes, statistical methods, and explicitly states limitations (survival bias, self-selection, correlation ≠ causation). The methodology section would withstand peer review"
55
+ weight: 0.35
56
+ description: "Credible benchmarking methodology"
57
+ - type: llm_judge
58
+ criteria: "Cross-industry analysis reveals insights — explains why industries differ (healthcare: compliance overhead, gaming: rapid iteration culture, government: audit requirements), identifies transferable practices, and doesn't just present data but interprets it"
59
+ weight: 0.35
60
+ description: "Insightful cross-industry analysis"
61
+ - type: llm_judge
62
+ criteria: "Predictions and recommendations are bold but grounded — makes specific predictions about AI review adoption, review-free paths, and review fatigue trends, with recommendations tailored by company size and industry. Addresses the controversial 'review-free for AI code' trend thoughtfully"
63
+ weight: 0.30
64
+ description: "Bold grounded predictions"
@@ -0,0 +1,76 @@
1
+ meta:
2
+ id: review-ma-integration
3
+ level: 5
4
+ course: github-pr-review
5
+ type: output
6
+ description: "M&A review integration — harmonize code review processes across acquired companies with different engineering cultures"
7
+ tags: [github, pr-review, M&A, integration, culture, harmonization, master]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You're the CTO overseeing the technical integration of 3 recently
13
+ acquired companies into the parent company. Each has a radically
14
+ different code review culture, and you need to create a unified
15
+ review process that preserves the best of each while meeting the
16
+ parent company's compliance requirements.
17
+
18
+ Parent company (800 engineers):
19
+ - GitHub Enterprise, strict 2-reviewer requirement
20
+ - CODEOWNERS, branch protection, SOC 2/PCI DSS compliance
21
+ - Average merge time: 2 days, developer satisfaction: 72%
22
+ - Strong tooling: automated review assignment, SLA tracking, analytics
23
+ - Weakness: perceived as "bureaucratic" by some teams
24
+
25
+ Acquisition A — Fast-moving SaaS startup (120 engineers):
26
+ - GitHub Cloud, 1-reviewer requirement, frequent self-merges
27
+ - No CODEOWNERS, minimal branch protection
28
+ - Average merge time: 4 hours, developer satisfaction: 85%
29
+ - Culture: "Ship fast, fix fast," trunk-based development
30
+ - Strength: Incredible velocity. Weakness: 3x incident rate
31
+
32
+ Acquisition B — Enterprise security company (200 engineers):
33
+ - GitLab self-hosted, 3-reviewer requirement including mandatory
34
+ security review
35
+ - Average merge time: 8 days, developer satisfaction: 45%
36
+ - Culture: "Every line must be perfect." Zero incidents but very slow
37
+ - Strength: Security rigor. Weakness: Engineering burnout, 30% attrition
38
+
39
+ Acquisition C — AI/ML research lab (80 engineers):
40
+ - Mix of GitHub and Jupyter notebooks in shared drives
41
+ - No formal review process — pair programming and "demo day" reviews
42
+ - No merge times (no PRs), developer satisfaction: 90%
43
+ - Culture: Academic, collaborative, experimental
44
+ - Strength: Innovation. Weakness: Production code quality varies wildly
45
+
46
+ Integration constraints:
47
+ - Must unify on GitHub Enterprise within 12 months
48
+ - Must achieve SOC 2 compliance across all entities within 18 months
49
+ - Must not lose more than 10% of acquired talent (especially from A
50
+ and C where culture change risk is highest)
51
+ - Must maintain each acquisition's product velocity during integration
52
+ - Budget: $1.5M for integration tooling and training
53
+
54
+ Task: Design the M&A review integration strategy. Write: the
55
+ assessment of each acquisition's review culture (strengths to preserve,
56
+ gaps to close), the unified review framework (minimum standard +
57
+ team-specific extensions), the migration plan for each acquisition
58
+ (phased, with specific milestones and risk mitigations), the culture
59
+ integration approach (how to merge 4 different review cultures without
60
+ destroying what works), and the retention risk mitigation plan.
61
+ Include the 18-month timeline and the executive dashboard for tracking
62
+ integration progress.
63
+
64
+ assertions:
65
+ - type: llm_judge
66
+ criteria: "Assessment preserves strengths — Acquisition A's velocity practices are identified for adoption (not just compliance), B's security rigor informs the security review standard, and C's collaborative culture inspires pair/mob programming practices. Integration isn't one-way assimilation"
67
+ weight: 0.35
68
+ description: "Strength-preserving assessment"
69
+ - type: llm_judge
70
+ criteria: "Migration plans are tailored — A gets gradual compliance addition without killing velocity (start with CODEOWNERS, then branch protection), B gets process streamlining (reduce from 3 to 2 reviewers, optimize security review), C gets formalization without bureaucracy (lightweight PR process for production code, freedom for research)"
71
+ weight: 0.35
72
+ description: "Tailored migration plans"
73
+ - type: llm_judge
74
+ criteria: "Retention risk is specifically addressed — identifies flight risks (A's engineers who value speed, C's researchers who value freedom), proposes specific retention mechanisms (cultural ambassadors, review process autonomy periods, transparent timeline), and the 10% attrition target is tracked"
75
+ weight: 0.30
76
+ description: "Specific retention risk mitigation"
@@ -0,0 +1,78 @@
1
+ meta:
2
+ id: review-regulatory-landscape
3
+ level: 5
4
+ course: github-pr-review
5
+ type: output
6
+ description: "Navigate the regulatory landscape for code review — analyze how global regulations shape review requirements and prepare for emerging compliance frameworks"
7
+ tags: [github, pr-review, regulatory, compliance, global, master]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You're the Chief Compliance Officer of a global software company
13
+ operating in 35 countries. You need to map the regulatory landscape
14
+ for code review and change management, as regulations increasingly
15
+ require demonstrable software quality controls.
16
+
17
+ Current regulatory requirements affecting code review:
18
+
19
+ 1. EU AI Act (effective 2026):
20
+ - High-risk AI systems require documented development processes
21
+ - Code changes to AI models need traceable review and testing
22
+ - Your AI-powered recommendation engine and fraud detection system
23
+ are classified as "high-risk"
24
+ - Penalty: up to 7% of global annual turnover
25
+
26
+ 2. SEC Cybersecurity Rules (2024+):
27
+ - Material cybersecurity incidents must be disclosed within 4 days
28
+ - Board must demonstrate oversight of cybersecurity risk management
29
+ - Code review is part of the "reasonable controls" expectation
30
+ - Your financial reporting software processes $50B annually
31
+
32
+ 3. DORA (Digital Operational Resilience Act, EU):
33
+ - ICT change management must be documented and tested
34
+ - Third-party ICT risk (including code review tools) must be managed
35
+ - Incident response must include root cause analysis of code changes
36
+ - Applies to your financial services customers in the EU
37
+
38
+ 4. India's DPDP Act + China's PIPL:
39
+ - Data processing code changes must have privacy review
40
+ - Cross-border data flow code must have additional scrutiny
41
+ - You have engineering teams in Bangalore and Shanghai
42
+
43
+ 5. Proposed US legislation:
44
+ - "Software Liability Act" draft would make companies liable for
45
+ known vulnerabilities that passed code review
46
+ - Bipartisan support, expected to pass within 2 years
47
+ - Would require "reasonable review practices" (undefined)
48
+
49
+ Emerging trends:
50
+ - Supply chain security regulations (NIST SSDF, EU CRA)
51
+ - AI-specific code review requirements (model governance)
52
+ - "Software bill of materials" requirements affecting dependency PRs
53
+ - Insurance underwriters requiring code review evidence for cyber
54
+ insurance renewals
55
+
56
+ Task: Map the regulatory landscape. Write: the regulatory matrix
57
+ (which regulations apply to which codebases, by jurisdiction and risk
58
+ level), the compliance gap analysis (where current review practices
59
+ fall short), the unified compliance framework (one review process
60
+ that satisfies all applicable regulations), the future-proofing
61
+ strategy (how to prepare for proposed and emerging regulations), and
62
+ the executive brief for the board on regulatory risk and investment
63
+ needed. Include the timeline for compliance milestones and the
64
+ consequences of non-compliance.
65
+
66
+ assertions:
67
+ - type: llm_judge
68
+ criteria: "Regulatory matrix is comprehensive — maps each regulation to affected codebases, identifies overlapping requirements (e.g., EU AI Act + DORA both require documentation), and notes jurisdictional complexity (different requirements in EU, US, India, China)"
69
+ weight: 0.35
70
+ description: "Comprehensive regulatory matrix"
71
+ - type: llm_judge
72
+ criteria: "Unified framework satisfies all regulations efficiently — doesn't create separate review processes per regulation, identifies the superset of requirements, and implements the most stringent standard as the baseline with lighter paths for lower-risk code"
73
+ weight: 0.35
74
+ description: "Efficient unified compliance framework"
75
+ - type: llm_judge
76
+ criteria: "Future-proofing strategy is forward-looking — prepares for the Software Liability Act, supply chain regulations, and AI governance requirements before they take effect, with a regulatory monitoring process that detects new requirements early"
77
+ weight: 0.30
78
+ description: "Forward-looking future-proofing"
@@ -0,0 +1,12 @@
1
+ id: kubernetes-deployment-troubleshooting
2
+ name: "Kubernetes Deployment Troubleshooting"
3
+ description: >
4
+ Master Kubernetes deployment troubleshooting from pod debugging basics
5
+ to enterprise platform operations. Learn to diagnose CrashLoopBackOff,
6
+ ImagePullBackOff, OOMKilled pods, fix networking and service issues,
7
+ manage storage and RBAC, optimize resources with HPA/VPA, implement
8
+ GitOps pipelines, and design multi-cluster disaster recovery
9
+ strategies for large-scale Kubernetes deployments.
10
+ levels: 5
11
+ scenarios_per_level: 10
12
+ tags: [development, Kubernetes, DevOps, troubleshooting, containers, deployment, cloud-native]
@@ -0,0 +1,69 @@
1
+ meta:
2
+ id: configmap-secret-issues
3
+ level: 1
4
+ course: kubernetes-deployment-troubleshooting
5
+ type: output
6
+ description: "Debug ConfigMap and Secret issues — diagnose missing environment variables, mount failures, and configuration mismatches"
7
+ tags: [Kubernetes, ConfigMap, Secret, environment-variables, configuration, beginner]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ Your application deployed successfully but is returning 500 errors.
13
+ The logs show it can't find its configuration:
14
+
15
+ $ kubectl get pods
16
+ NAME READY STATUS RESTARTS AGE
17
+ auth-svc-2b3c4d5e-fg67 1/1 Running 0 2m
18
+
19
+ $ kubectl logs auth-svc-2b3c4d5e-fg67
20
+ Error: Missing required environment variable: JWT_SECRET
21
+ Error: Missing required environment variable: REDIS_URL
22
+ Error: Configuration validation failed, shutting down...
23
+ Process exited with code 1
24
+
25
+ Wait — the pod status shows Running, not CrashLoopBackOff? That's
26
+ because the container has a startup delay and the crash happened after
27
+ the liveness probe window.
28
+
29
+ $ kubectl describe pod auth-svc-2b3c4d5e-fg67
30
+ Environment:
31
+ DATABASE_URL: <set to the key 'DATABASE_URL' in secret 'auth-secrets'>
32
+ JWT_SECRET: <set to the key 'JWT_SECRET' in secret 'auth-secrets'>
33
+ REDIS_URL: <set to the key 'REDIS_URL' in configmap 'auth-config'>
34
+
35
+ $ kubectl get secret auth-secrets -o jsonpath='{.data}' | jq
36
+ {
37
+ "DATABASE_URL": "cG9zdGdyZXM6Ly8uLi4="
38
+ }
39
+
40
+ The secret exists but only has DATABASE_URL — JWT_SECRET is missing
41
+ from the secret! And the ConfigMap:
42
+
43
+ $ kubectl get configmap auth-config
44
+ Error from server (NotFound): configmaps "auth-config" not found
45
+
46
+ The ConfigMap doesn't exist at all. Two issues:
47
+ 1. Secret auth-secrets is missing the JWT_SECRET key
48
+ 2. ConfigMap auth-config was never created
49
+
50
+ Task: Explain how ConfigMaps and Secrets work in Kubernetes. Write:
51
+ how pods consume configuration (env vars vs volume mounts), what
52
+ happens when a referenced ConfigMap/Secret is missing (pod may or may
53
+ not start depending on optional flag), how to debug missing config,
54
+ the difference between ConfigMaps and Secrets, and best practices for
55
+ configuration management.
56
+
57
+ assertions:
58
+ - type: llm_judge
59
+ criteria: "ConfigMap and Secret consumption is explained — two methods: environment variables (envFrom or env with valueFrom) and volume mounts. envFrom loads all keys, env with valueFrom loads specific keys. Volume mounts project keys as files. If a referenced ConfigMap/Secret doesn't exist, the pod fails to start unless the reference is marked as optional"
60
+ weight: 0.35
61
+ description: "ConfigMap/Secret consumption"
62
+ - type: llm_judge
63
+ criteria: "Debugging steps are systematic — check pod events (kubectl describe pod), verify ConfigMap/Secret exists (kubectl get cm/secret), inspect keys (kubectl get secret -o jsonpath or -o yaml), verify key names match what the deployment references, check if the reference is in the correct namespace. Shows how base64 encoding works for secrets"
64
+ weight: 0.35
65
+ description: "Debugging steps"
66
+ - type: llm_judge
67
+ criteria: "Differences and best practices are covered — ConfigMaps for non-sensitive config, Secrets for sensitive data (base64 encoded, can be encrypted at rest in etcd). Best practices: use optional references where appropriate, validate config in CI/CD, use sealed-secrets or external secret managers for production, consider volume mounts for auto-updates vs env vars requiring restart"
68
+ weight: 0.30
69
+ description: "Differences and best practices"
@@ -0,0 +1,68 @@
1
+ meta:
2
+ id: crashloopbackoff
3
+ level: 1
4
+ course: kubernetes-deployment-troubleshooting
5
+ type: output
6
+ description: "Debug CrashLoopBackOff — diagnose why a pod keeps crashing and restarting, using kubectl logs, describe, and events"
7
+ tags: [Kubernetes, CrashLoopBackOff, debugging, pod-lifecycle, beginner]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You deployed a new version of your API service and kubectl shows:
13
+
14
+ $ kubectl get pods
15
+ NAME READY STATUS RESTARTS AGE
16
+ api-server-7b8f9c4d-x2k9l 0/1 CrashLoopBackOff 5 3m
17
+ api-server-7b8f9c4d-m4p7q 0/1 CrashLoopBackOff 5 3m
18
+ api-server-7b8f9c4d-r9n1j 0/1 CrashLoopBackOff 5 3m
19
+
20
+ All 3 replicas are in CrashLoopBackOff. The previous version was
21
+ running fine. The team is panicking because the API is down.
22
+
23
+ kubectl describe pod api-server-7b8f9c4d-x2k9l shows:
24
+ State: Waiting
25
+ Reason: CrashLoopBackOff
26
+ Last State: Terminated
27
+ Reason: Error
28
+ Exit Code: 1
29
+ Started: 2025-12-01T10:00:05Z
30
+ Finished: 2025-12-01T10:00:06Z
31
+
32
+ Events:
33
+ Warning BackOff 3m kubelet Back-off restarting failed container
34
+
35
+ kubectl logs api-server-7b8f9c4d-x2k9l shows:
36
+ Error: connect ECONNREFUSED 10.100.50.3:5432
37
+ Error: Unable to connect to database
38
+ Process exited with code 1
39
+
40
+ The application requires a PostgreSQL database connection. The
41
+ database is running in the same cluster as a StatefulSet. Nothing
42
+ changed about the database — only the API image was updated.
43
+
44
+ Investigation reveals:
45
+ - The new image version changed the env var name from DATABASE_URL
46
+ to DB_CONNECTION_STRING
47
+ - The ConfigMap still has DATABASE_URL
48
+ - The container starts, fails to connect (wrong env var), and exits
49
+
50
+ Task: Explain how to debug CrashLoopBackOff. Write: what
51
+ CrashLoopBackOff means (the restart backoff mechanism), the debugging
52
+ workflow (kubectl logs → describe → events), common causes (app crash,
53
+ missing env vars, missing dependencies, OOM, wrong command), the fix
54
+ for this specific case, and how to prevent this in the future.
55
+
56
+ assertions:
57
+ - type: llm_judge
58
+ criteria: "CrashLoopBackOff is explained — the container starts, crashes, Kubernetes restarts it with exponential backoff (10s, 20s, 40s... up to 5 minutes). Exit code 1 indicates application error (not OOMKilled=137, not SIGTERM=143). The backoff means Kubernetes is waiting longer between each restart attempt"
59
+ weight: 0.35
60
+ description: "CrashLoopBackOff explained"
61
+ - type: llm_judge
62
+ criteria: "Debugging workflow is systematic — (1) kubectl logs <pod> to see application error, (2) kubectl logs <pod> --previous if container already restarted, (3) kubectl describe pod to see events, exit codes, and container state, (4) check env vars with kubectl exec (if pod stays up) or kubectl get cm/secret. Identifies the env var mismatch as root cause"
63
+ weight: 0.35
64
+ description: "Systematic debugging workflow"
65
+ - type: llm_judge
66
+ criteria: "Fix and prevention are practical — immediate fix: update ConfigMap to include DB_CONNECTION_STRING, or update deployment to map the old var name. Prevention: validate env vars in CI/CD, use health checks (readiness probe on DB connection), and consider using a shared config schema between app versions"
67
+ weight: 0.30
68
+ description: "Fix and prevention"
@@ -0,0 +1,56 @@
1
+ meta:
2
+ id: deployment-rollout
3
+ level: 1
4
+ course: kubernetes-deployment-troubleshooting
5
+ type: output
6
+ description: "Debug deployment rollout issues — understand rolling updates, rollback, and why a deployment might get stuck"
7
+ tags: [Kubernetes, Deployment, rollout, rolling-update, rollback, beginner]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You updated your deployment to a new image version but the rollout
13
+ is stuck. Old pods are still running alongside partially updated ones:
14
+
15
+ $ kubectl rollout status deployment/user-svc
16
+ Waiting for deployment "user-svc" spec update to be observed...
17
+ Waiting for rollout to finish: 1 out of 3 new replicas have been updated...
18
+
19
+ $ kubectl get pods
20
+ NAME READY STATUS RESTARTS AGE
21
+ user-svc-7a8b9c0d-old1 1/1 Running 0 2h
22
+ user-svc-7a8b9c0d-old2 1/1 Running 0 2h
23
+ user-svc-7a8b9c0d-old3 1/1 Running 0 2h
24
+ user-svc-3e4f5g6h-new1 0/1 CrashLoopBackOff 4 5m
25
+
26
+ The deployment strategy is RollingUpdate with maxSurge=1 and
27
+ maxUnavailable=0. The new pod keeps crashing, so the rollout can't
28
+ proceed (it needs at least 1 new pod Ready before terminating old ones).
29
+
30
+ $ kubectl logs user-svc-3e4f5g6h-new1
31
+ Error: Cannot connect to database — migration v15 not applied
32
+ The new version requires a database migration that wasn't run.
33
+
34
+ The deployment is stuck: new pods crash, old pods keep serving traffic,
35
+ but the deployment never completes. After 10 minutes the
36
+ progressDeadlineSeconds (default 600s) will mark it as Failed.
37
+
38
+ Task: Explain how Kubernetes deployment rollouts work. Write: the
39
+ RollingUpdate strategy (maxSurge, maxUnavailable), what happens when
40
+ a rollout gets stuck, how to check rollout status and history, how
41
+ to rollback (kubectl rollout undo), progressDeadlineSeconds, and the
42
+ Recreate strategy as an alternative.
43
+
44
+ assertions:
45
+ - type: llm_judge
46
+ criteria: "Rolling update mechanics are explained — maxSurge controls how many extra pods can be created during update, maxUnavailable controls how many pods can be down. With maxSurge=1 maxUnavailable=0, Kubernetes creates 1 new pod, waits for it to be Ready, then terminates 1 old pod. If the new pod never becomes Ready, the rollout stalls"
47
+ weight: 0.35
48
+ description: "Rolling update mechanics"
49
+ - type: llm_judge
50
+ criteria: "Stuck rollout debugging is explained — kubectl rollout status shows progress, kubectl rollout history shows revision history, progressDeadlineSeconds (default 600s) marks deployment as Failed if no progress within deadline. A stuck rollout means old pods continue serving traffic (safe but incomplete update)"
51
+ weight: 0.35
52
+ description: "Stuck rollout debugging"
53
+ - type: llm_judge
54
+ criteria: "Rollback and alternatives are covered — kubectl rollout undo deployment/<name> reverts to previous revision, kubectl rollout undo --to-revision=N reverts to specific version. Recreate strategy: terminates all old pods before creating new ones (causes downtime but avoids version mixing). kubectl rollout pause/resume for controlled rollouts"
55
+ weight: 0.30
56
+ description: "Rollback and alternatives"
@@ -0,0 +1,65 @@
1
+ meta:
2
+ id: first-troubleshooting-shift
3
+ level: 1
4
+ course: kubernetes-deployment-troubleshooting
5
+ type: output
6
+ description: "Combined troubleshooting shift — diagnose multiple pod failures across a namespace using the full beginner debugging toolkit"
7
+ tags: [Kubernetes, troubleshooting, debugging, combined, shift-simulation, beginner]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ You're on-call and get paged: "Multiple services down in staging
13
+ namespace." You run:
14
+
15
+ $ kubectl get pods -n staging
16
+ NAME READY STATUS RESTARTS AGE
17
+ api-gw-5a6b7c8d-e9f0 0/1 CrashLoopBackOff 6 15m
18
+ user-svc-1g2h3i4j-k5l6 0/1 ImagePullBackOff 0 15m
19
+ order-svc-7m8n9o0p-q1r2 0/1 Pending 0 15m
20
+ payment-svc-3s4t5u6v-w7x8 1/1 Running 0 15m
21
+ notification-svc-9a0b-c1d2 0/1 Running 0 15m
22
+
23
+ Five services, four different problems:
24
+
25
+ 1. api-gw — CrashLoopBackOff, exit code 1
26
+ Logs: "Error: REDIS_HOST environment variable not set"
27
+ The ConfigMap was deleted during a cleanup.
28
+
29
+ 2. user-svc — ImagePullBackOff
30
+ Events: "Failed to pull image 'registry.company.com/user-svc:v3.2.1':
31
+ unauthorized"
32
+ The registry token expired overnight.
33
+
34
+ 3. order-svc — Pending
35
+ Events: "0/3 nodes are available: 3 Insufficient memory"
36
+ Requests 4Gi memory but largest available is 2Gi.
37
+
38
+ 4. payment-svc — Running but 0/1 Ready? No, it shows 1/1, but the
39
+ Service has no endpoints. Label mismatch: Service selector
40
+ app=payment, pod label app=payment-svc.
41
+
42
+ 5. notification-svc — Running, 0/1 Ready
43
+ Readiness probe failing: HTTP 503 on /ready
44
+ The downstream email service is unreachable.
45
+
46
+ Task: Walk through diagnosing all five issues. Write: the triage
47
+ approach (start with kubectl get pods, identify status patterns), the
48
+ debugging steps for each issue type (CrashLoopBackOff → logs,
49
+ ImagePullBackOff → events, Pending → describe, Service issues →
50
+ endpoints, Readiness → probe config), and how to prioritize which to
51
+ fix first in a real incident.
52
+
53
+ assertions:
54
+ - type: llm_judge
55
+ criteria: "All five issues are correctly diagnosed — (1) CrashLoopBackOff from missing ConfigMap causing missing env var, (2) ImagePullBackOff from expired registry credentials, (3) Pending from insufficient memory on nodes, (4) Service-pod label mismatch causing empty endpoints despite pod running, (5) Readiness probe failing due to downstream dependency. Each diagnosis maps to the correct kubectl command"
56
+ weight: 0.35
57
+ description: "All issues diagnosed"
58
+ - type: llm_judge
59
+ criteria: "Triage methodology is systematic — start with kubectl get pods for overview, group by status type, check most impactful services first. Use kubectl describe for events, kubectl logs for application errors, kubectl get endpoints for service connectivity. Prioritize: fix what unblocks the most services first (e.g., ConfigMap might affect multiple services)"
60
+ weight: 0.35
61
+ description: "Triage methodology"
62
+ - type: llm_judge
63
+ criteria: "Fixes and prioritization are practical — prioritize payment-svc (revenue-critical, quick label fix), then api-gw (gateway affects all downstream, recreate ConfigMap), then user-svc (refresh registry token), then order-svc (scale down request or add capacity), then notification-svc (investigate downstream dependency). Shows the actual kubectl fix commands"
64
+ weight: 0.30
65
+ description: "Fixes and prioritization"
@@ -0,0 +1,70 @@
1
+ meta:
2
+ id: health-probe-failures
3
+ level: 1
4
+ course: kubernetes-deployment-troubleshooting
5
+ type: output
6
+ description: "Debug health probe failures — understand liveness, readiness, and startup probes and why misconfigured probes cause restarts or traffic loss"
7
+ tags: [Kubernetes, health-probes, liveness, readiness, startup, beginner]
8
+
9
+ state: {}
10
+
11
+ trigger: |
12
+ Your application is running but keeps getting restarted, and users
13
+ report intermittent 503 errors:
14
+
15
+ $ kubectl get pods
16
+ NAME READY STATUS RESTARTS AGE
17
+ web-app-4a5b6c7d-mn01 1/1 Running 12 1h
18
+ web-app-4a5b6c7d-op23 0/1 Running 0 30s
19
+ web-app-4a5b6c7d-qr45 1/1 Running 8 1h
20
+
21
+ $ kubectl describe pod web-app-4a5b6c7d-mn01
22
+ Containers:
23
+ web-app:
24
+ Liveness: http-get http://:8080/healthz delay=5s timeout=1s
25
+ period=10s #success=1 #failure=3
26
+ Readiness: http-get http://:8080/ready delay=5s timeout=1s
27
+ period=10s #success=1 #failure=3
28
+
29
+ Events:
30
+ Warning Unhealthy 2m kubelet Liveness probe failed: HTTP probe
31
+ failed with statuscode: 503
32
+ Normal Killing 2m kubelet Container web-app failed liveness
33
+ check, will be restarted
34
+ Warning Unhealthy 30s kubelet Readiness probe failed: HTTP probe
35
+ failed with statuscode: 503
36
+
37
+ The application takes 45 seconds to fully start up (loading caches,
38
+ warming connections). But the liveness probe starts checking at 5
39
+ seconds with only 3 failures allowed (5s + 3*10s = 35s), so it kills
40
+ the container before it's ready.
41
+
42
+ Additionally, the readiness probe uses the same aggressive timing,
43
+ so during startup the pod is removed from the Service endpoints,
44
+ causing 503s for users.
45
+
46
+ Problems:
47
+ 1. Liveness probe starts too early — kills the container during startup
48
+ 2. No startup probe — would protect the container during initialization
49
+ 3. Readiness probe timing causes premature endpoint removal
50
+
51
+ Task: Explain Kubernetes health probes. Write: the difference between
52
+ liveness, readiness, and startup probes, what each one controls (restart
53
+ vs traffic vs startup protection), how to configure timing parameters
54
+ (initialDelaySeconds, periodSeconds, failureThreshold, timeoutSeconds),
55
+ common misconfiguration patterns, and best practices for slow-starting
56
+ applications.
57
+
58
+ assertions:
59
+ - type: llm_judge
60
+ criteria: "All three probe types are explained — liveness: kills and restarts the container if it fails (detects deadlocks/hangs), readiness: removes pod from Service endpoints if it fails (controls traffic routing), startup: disables liveness/readiness until it succeeds (protects slow-starting containers). Each probe serves a different purpose and should not use the same endpoint"
61
+ weight: 0.35
62
+ description: "Probe types explained"
63
+ - type: llm_judge
64
+ criteria: "Timing parameters are explained with the math — initialDelaySeconds (wait before first check), periodSeconds (interval between checks), failureThreshold (consecutive failures before action), timeoutSeconds (per-check timeout). Total startup tolerance = initialDelaySeconds + (failureThreshold * periodSeconds). In this case: 5 + (3*10) = 35s < 45s startup time, so the container gets killed"
65
+ weight: 0.35
66
+ description: "Timing parameters explained"
67
+ - type: llm_judge
68
+ criteria: "Fix and best practices are practical — add a startup probe with generous timeout (e.g., failureThreshold=30, periodSeconds=5 = 150s window), keep liveness probe for runtime health only (not startup), make readiness check actual dependency availability, never use the same endpoint for all three probes if they serve different purposes"
69
+ weight: 0.30
70
+ description: "Fix and best practices"