dojo.md 0.1.0 → 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/courses/GENERATION_LOG.md +27 -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/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/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/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/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 +3 -1
- package/dist/mcp/session-manager.d.ts.map +1 -1
- package/dist/mcp/session-manager.js +44 -22
- 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,60 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: cross-functional-review
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Cross-functional PR review — coordinate reviews involving design, security, legal, and product stakeholders beyond engineering"
|
|
7
|
+
tags: [github, pr-review, cross-functional, design-review, security-review, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're leading the review process for a major feature PR that requires
|
|
13
|
+
input from multiple non-engineering stakeholders. The PR implements
|
|
14
|
+
GDPR consent management and data deletion for EU users.
|
|
15
|
+
|
|
16
|
+
The PR ("Implement GDPR consent and right-to-erasure"):
|
|
17
|
+
- 600 lines across 15 files
|
|
18
|
+
- Changes: consent UI, data collection APIs, deletion pipeline, audit
|
|
19
|
+
logging, cookie management, privacy policy integration
|
|
20
|
+
|
|
21
|
+
Required reviewers and their concerns:
|
|
22
|
+
1. Engineering (2 reviewers): Code quality, architecture, test coverage
|
|
23
|
+
2. Security team: Data handling, encryption at rest, access controls,
|
|
24
|
+
deletion completeness
|
|
25
|
+
3. Legal/Privacy: Consent language accuracy, deletion scope compliance
|
|
26
|
+
with Article 17, data retention exceptions
|
|
27
|
+
4. Design: Consent banner UX, accessibility, user flow clarity
|
|
28
|
+
5. Product: Feature completeness against GDPR requirements spec,
|
|
29
|
+
analytics impact (what tracking stops)
|
|
30
|
+
|
|
31
|
+
Challenges:
|
|
32
|
+
- Legal doesn't use GitHub — they review via email/Confluence
|
|
33
|
+
- Design reviews in Figma, not in code
|
|
34
|
+
- Security wants to run their own penetration test before approval
|
|
35
|
+
- Product wants to verify in a staging environment
|
|
36
|
+
- Each stakeholder has different availability (legal is 2 weeks out)
|
|
37
|
+
- The PR is too large for a single review session
|
|
38
|
+
|
|
39
|
+
Task: Design the cross-functional review process. Write: the review
|
|
40
|
+
coordination plan (who reviews what, in what order, with timeline),
|
|
41
|
+
the PR splitting strategy (if the 600-line PR should be broken up for
|
|
42
|
+
different reviewers), the tooling integration (how to bring GitHub,
|
|
43
|
+
Figma, Confluence, and email reviews into a single audit trail), the
|
|
44
|
+
sign-off process (how each stakeholder formally approves), and the
|
|
45
|
+
template for cross-functional PRs. Address the legal reviewer's 2-week
|
|
46
|
+
availability constraint.
|
|
47
|
+
|
|
48
|
+
assertions:
|
|
49
|
+
- type: llm_judge
|
|
50
|
+
criteria: "Review coordination is realistic — sequences reviews logically (legal/design first since they have longest lead time, security pen test in parallel with code review, product verification last in staging), and the timeline accounts for the legal 2-week constraint"
|
|
51
|
+
weight: 0.35
|
|
52
|
+
description: "Realistic review coordination"
|
|
53
|
+
- type: llm_judge
|
|
54
|
+
criteria: "Tooling integration creates a single audit trail — brings email/Confluence legal feedback, Figma design comments, and GitHub code review into a traceable record, handles stakeholders who don't use GitHub"
|
|
55
|
+
weight: 0.35
|
|
56
|
+
description: "Unified audit trail"
|
|
57
|
+
- type: llm_judge
|
|
58
|
+
criteria: "The process is repeatable — the template and sign-off process could be reused for future cross-functional features, balances thoroughness with velocity, and doesn't create a 6-week review bottleneck"
|
|
59
|
+
weight: 0.30
|
|
60
|
+
description: "Repeatable cross-functional process"
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: incident-driven-review
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Incident-driven review improvement — analyze post-incident review failures and redesign processes to catch similar issues"
|
|
7
|
+
tags: [github, pr-review, incidents, post-mortem, process-improvement, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Three production incidents in the last quarter were traced back to
|
|
13
|
+
code review failures — issues that should have been caught in review
|
|
14
|
+
but weren't. You've been tasked with analyzing the failures and
|
|
15
|
+
improving the review process.
|
|
16
|
+
|
|
17
|
+
Incident 1 — Data loss (Severity: Critical):
|
|
18
|
+
A migration PR dropped a column that was still used by a background
|
|
19
|
+
job. The PR had 2 approvals and CI was green. Neither reviewer checked
|
|
20
|
+
the background job code. The column name appeared in 3 files that
|
|
21
|
+
weren't part of the PR diff.
|
|
22
|
+
Impact: 48 hours of data loss for 12,000 users
|
|
23
|
+
Review gap: Reviewers only looked at files in the diff, not at callers
|
|
24
|
+
of the changed code
|
|
25
|
+
|
|
26
|
+
Incident 2 — Security breach (Severity: Critical):
|
|
27
|
+
A PR added a debug endpoint that returned user data without
|
|
28
|
+
authentication. It was merged as part of a 1,200-line "feature
|
|
29
|
+
complete" PR. The endpoint was on line 847 of a 900-line file.
|
|
30
|
+
Impact: 500 user records exposed for 3 days
|
|
31
|
+
Review gap: The PR was too large to review effectively, the debug
|
|
32
|
+
endpoint was buried in a massive diff, and the reviewer admitted
|
|
33
|
+
to "skimming" the last 400 lines
|
|
34
|
+
|
|
35
|
+
Incident 3 — Financial miscalculation (Severity: High):
|
|
36
|
+
A PR changed a currency conversion formula. The unit test used the
|
|
37
|
+
same incorrect formula as the implementation (copy-pasted), so tests
|
|
38
|
+
passed. The reviewer approved based on "tests pass."
|
|
39
|
+
Impact: $47,000 in incorrect charges over 2 weeks
|
|
40
|
+
Review gap: Tests validated consistency, not correctness. No
|
|
41
|
+
independent verification of the business logic
|
|
42
|
+
|
|
43
|
+
Task: For each incident, write: the root cause analysis of the review
|
|
44
|
+
failure (why the review process didn't catch it), the specific process
|
|
45
|
+
change that would prevent recurrence, the detection mechanism (how to
|
|
46
|
+
know if the process change is working), and the review checklist
|
|
47
|
+
addition. Then write a synthesis: the systemic patterns across all 3
|
|
48
|
+
incidents, the comprehensive review process improvements, and the
|
|
49
|
+
training program to address the skill gaps revealed by these incidents.
|
|
50
|
+
|
|
51
|
+
assertions:
|
|
52
|
+
- type: llm_judge
|
|
53
|
+
criteria: "Root causes go beyond blaming reviewers — identifies systemic issues: #1 reveals that reviews don't check callers/dependencies, #2 reveals that large PRs can't be reviewed effectively, #3 reveals that test-pass ≠ correctness and independent verification is needed"
|
|
54
|
+
weight: 0.35
|
|
55
|
+
description: "Systemic root cause analysis"
|
|
56
|
+
- type: llm_judge
|
|
57
|
+
criteria: "Process changes are specific and preventive — #1 adds dependency/caller analysis to reviews (or automated tooling), #2 enforces PR size limits and adds security-specific review for auth-related code, #3 requires independent test verification for business-critical calculations"
|
|
58
|
+
weight: 0.35
|
|
59
|
+
description: "Specific preventive process changes"
|
|
60
|
+
- type: llm_judge
|
|
61
|
+
criteria: "Synthesis identifies patterns — connects all 3 incidents to broader themes (over-reliance on CI, review depth vs PR size, domain-specific review expertise), and the training program addresses the revealed skill gaps without creating blame"
|
|
62
|
+
weight: 0.30
|
|
63
|
+
description: "Pattern-connecting synthesis"
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: large-scale-review-operations
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design large-scale review operations — create review processes for 100+ developer organizations with multiple teams and repositories"
|
|
7
|
+
tags: [github, pr-review, operations, scaling, organization, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the Director of Engineering at a company scaling from 30 to
|
|
13
|
+
150 engineers over the next year. The current review process (informal,
|
|
14
|
+
team-based) is already breaking down at 30 engineers. You need to
|
|
15
|
+
design a review system that scales.
|
|
16
|
+
|
|
17
|
+
Current problems:
|
|
18
|
+
- 15 repositories with no consistent review process
|
|
19
|
+
- Some repos require 1 approval, others require 3
|
|
20
|
+
- No cross-repo review standards (code style varies wildly)
|
|
21
|
+
- Average merge time: 3 days (target: 1 day)
|
|
22
|
+
- Knowledge silos: only 2 people can review the payment code
|
|
23
|
+
- New hires take 3 months before they can review code confidently
|
|
24
|
+
- No review quality metrics — quantity is tracked but not quality
|
|
25
|
+
- Occasional "LGTM" rubber-stamp approvals on critical code
|
|
26
|
+
|
|
27
|
+
Planned growth:
|
|
28
|
+
- 5 new teams being formed (total: 10 teams)
|
|
29
|
+
- 3 new repos being created (total: 18 repos)
|
|
30
|
+
- Acquiring a company with 20 engineers and their own repo/processes
|
|
31
|
+
- Moving to a monorepo for shared libraries (under discussion)
|
|
32
|
+
|
|
33
|
+
Task: Design the review operations framework. Write: the review
|
|
34
|
+
standards document (minimum requirements for all repos, with team-
|
|
35
|
+
specific extensions), the reviewer assignment system (CODEOWNERS
|
|
36
|
+
strategy, rotation, knowledge distribution), the quality assurance
|
|
37
|
+
mechanisms (preventing rubber stamps, ensuring review depth), the
|
|
38
|
+
onboarding program for new reviewers (shadow reviewing, graduated
|
|
39
|
+
autonomy), and the metrics framework (what to measure, targets,
|
|
40
|
+
dashboards). Include the migration plan for existing repos and the
|
|
41
|
+
acquired company's integration.
|
|
42
|
+
|
|
43
|
+
assertions:
|
|
44
|
+
- type: llm_judge
|
|
45
|
+
criteria: "Standards are scalable — creates a base standard that applies to all 18 repos with team-specific extensions, handles the monorepo question, and includes the acquired company integration with a gradual alignment plan rather than forcing immediate compliance"
|
|
46
|
+
weight: 0.35
|
|
47
|
+
description: "Scalable review standards"
|
|
48
|
+
- type: llm_judge
|
|
49
|
+
criteria: "Knowledge distribution is addressed — CODEOWNERS strategy prevents knowledge silos (rotation, mandatory cross-training), reviewer onboarding program reduces the 3-month ramp-up time, and the system handles the 2-person payment code bottleneck"
|
|
50
|
+
weight: 0.35
|
|
51
|
+
description: "Knowledge distribution strategy"
|
|
52
|
+
- type: llm_judge
|
|
53
|
+
criteria: "Quality assurance prevents gaming — mechanisms to detect rubber-stamp reviews (review depth metrics, comment quality), graduated approval requirements (critical code vs routine changes), and the metrics framework measures quality not just speed"
|
|
54
|
+
weight: 0.30
|
|
55
|
+
description: "Anti-gaming quality assurance"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: monorepo-review-process
|
|
3
|
+
level: 3
|
|
4
|
+
course: github-pr-review
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design monorepo review process — handle review routing, ownership, and CI for PRs that touch multiple packages in a monorepo"
|
|
7
|
+
tags: [github, pr-review, monorepo, CODEOWNERS, CI, routing, advanced]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your company just migrated 12 microservice repos into a single
|
|
13
|
+
monorepo using Turborepo. The review process that worked for individual
|
|
14
|
+
repos is now broken. Key problems:
|
|
15
|
+
|
|
16
|
+
Monorepo structure:
|
|
17
|
+
```
|
|
18
|
+
/
|
|
19
|
+
├── apps/
|
|
20
|
+
│ ├── web/ (Frontend team, 8 devs)
|
|
21
|
+
│ ├── api/ (Backend team, 10 devs)
|
|
22
|
+
│ ├── mobile/ (Mobile team, 6 devs)
|
|
23
|
+
│ └── admin/ (Platform team, 4 devs)
|
|
24
|
+
├── packages/
|
|
25
|
+
│ ├── ui/ (Design system — shared)
|
|
26
|
+
│ ├── auth/ (Auth library — shared)
|
|
27
|
+
│ ├── database/ (DB client — backend + platform)
|
|
28
|
+
│ ├── config/ (Shared config — everyone)
|
|
29
|
+
│ └── types/ (Shared types — everyone)
|
|
30
|
+
├── infra/ (DevOps, 3 devs)
|
|
31
|
+
└── tools/ (DX team, 2 devs)
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
Current problems:
|
|
35
|
+
- A PR touching `packages/types` requests review from ALL 33 engineers
|
|
36
|
+
- CI runs all tests for every PR (45 minutes), even single-line changes
|
|
37
|
+
- CODEOWNERS from individual repos were concatenated — conflicts and
|
|
38
|
+
overlaps everywhere
|
|
39
|
+
- Cross-package PRs (e.g., API change + type update + web update) have
|
|
40
|
+
no clear review strategy
|
|
41
|
+
- Shared packages have no clear ownership — everyone and no one
|
|
42
|
+
|
|
43
|
+
A recent incident: A change to `packages/auth` broke mobile login but
|
|
44
|
+
the mobile team wasn't requested as reviewers. It took 2 days to
|
|
45
|
+
discover the break.
|
|
46
|
+
|
|
47
|
+
Task: Design the monorepo review process. Write: the CODEOWNERS
|
|
48
|
+
strategy (ownership model for shared packages, cross-team routing),
|
|
49
|
+
the CI optimization (affected-package detection, selective test runs),
|
|
50
|
+
the cross-package PR guidelines (when to split PRs, when one PR is
|
|
51
|
+
fine, who reviews what), the shared package governance model (who
|
|
52
|
+
owns shared code, how changes are reviewed), and the incident
|
|
53
|
+
prevention strategy (ensuring breaking changes are caught by affected
|
|
54
|
+
teams). Include the CODEOWNERS file and a sample CI workflow.
|
|
55
|
+
|
|
56
|
+
assertions:
|
|
57
|
+
- type: llm_judge
|
|
58
|
+
criteria: "CODEOWNERS handles the monorepo correctly — shared packages have designated owners plus affected-team routing (not all 33 engineers), apps have team ownership, and cross-package PRs are handled with both source and consumer team reviews"
|
|
59
|
+
weight: 0.35
|
|
60
|
+
description: "Correct monorepo CODEOWNERS"
|
|
61
|
+
- type: llm_judge
|
|
62
|
+
criteria: "CI optimization is practical — uses affected-package detection (Turborepo's --filter or similar), runs only relevant tests, but still runs shared-package tests when shared code changes. Reduces 45-minute CI to relevant-only runs"
|
|
63
|
+
weight: 0.35
|
|
64
|
+
description: "Practical CI optimization"
|
|
65
|
+
- type: llm_judge
|
|
66
|
+
criteria: "Incident prevention is addressed — the auth-breaking-mobile scenario is prevented through consumer-team notification on shared package changes, integration test requirements for cross-package changes, and a shared package change RFC process"
|
|
67
|
+
weight: 0.30
|
|
68
|
+
description: "Cross-package incident prevention"
|
|
@@ -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"
|