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,61 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-training-program
|
|
3
|
+
level: 4
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design API error handling training — create a curriculum for building error handling expertise across an organization"
|
|
7
|
+
tags: [REST, API, training, curriculum, certification, onboarding, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're designing a company-wide API error handling training program
|
|
13
|
+
for your 800-engineer organization. Currently, error handling
|
|
14
|
+
knowledge is concentrated in 5 senior engineers who wrote the
|
|
15
|
+
original API framework.
|
|
16
|
+
|
|
17
|
+
Current problems the training must address:
|
|
18
|
+
- New hires take 6 weeks before they can debug production API errors
|
|
19
|
+
- 60% of API support tickets are "what does this error mean?"
|
|
20
|
+
- Code reviews show the same error handling mistakes repeatedly:
|
|
21
|
+
catching and swallowing errors, returning 200 with error bodies,
|
|
22
|
+
exposing stack traces, inconsistent error formats
|
|
23
|
+
- 3 P1 incidents in the last year were caused by poor error handling
|
|
24
|
+
- Teams copy-paste error handling code without understanding it
|
|
25
|
+
- No one outside the core 5 engineers understands distributed
|
|
26
|
+
error propagation
|
|
27
|
+
|
|
28
|
+
Target audience tiers:
|
|
29
|
+
1. All engineers: Read and understand API error responses, basic
|
|
30
|
+
debugging using correlation IDs and error logs
|
|
31
|
+
2. Backend developers: Write correct error handling code, implement
|
|
32
|
+
validation, use proper status codes
|
|
33
|
+
3. Platform engineers: Design error handling frameworks, build
|
|
34
|
+
monitoring, implement circuit breakers
|
|
35
|
+
4. On-call engineers: Diagnose and resolve production error
|
|
36
|
+
scenarios under time pressure
|
|
37
|
+
|
|
38
|
+
Constraints:
|
|
39
|
+
- Maximum 3 hours of training per engineer per quarter
|
|
40
|
+
- Must be available asynchronously (remote-first)
|
|
41
|
+
- Must show measurable impact within 6 months
|
|
42
|
+
- Must reduce error-related support tickets by 50%
|
|
43
|
+
|
|
44
|
+
Task: Design the complete training program. Write: the curriculum
|
|
45
|
+
for each tier, the hands-on exercises (sandbox API with intentional
|
|
46
|
+
errors), the certification system, the measurement framework, and
|
|
47
|
+
the rollout plan.
|
|
48
|
+
|
|
49
|
+
assertions:
|
|
50
|
+
- type: llm_judge
|
|
51
|
+
criteria: "Curriculum is tier-appropriate — all engineers learn to read errors and use correlation IDs, backend devs learn to write correct error handling, platform engineers learn framework design and monitoring, and on-call engineers practice incident scenarios. Each tier builds on the previous"
|
|
52
|
+
weight: 0.35
|
|
53
|
+
description: "Tier-appropriate curriculum"
|
|
54
|
+
- type: llm_judge
|
|
55
|
+
criteria: "Hands-on exercises are practical — uses a sandbox API with intentional errors (status code mistakes, information leakage, missing validation, cascade failures), exercises are progressive in difficulty, and on-call training includes simulated incidents with time pressure"
|
|
56
|
+
weight: 0.35
|
|
57
|
+
description: "Practical hands-on exercises"
|
|
58
|
+
- type: llm_judge
|
|
59
|
+
criteria: "Measurement framework proves impact — tracks leading indicators (training completion, exercise pass rates, code review error catch rates) and lagging indicators (support ticket volume, incident count, time-to-resolve), with clear before/after comparison methodology"
|
|
60
|
+
weight: 0.30
|
|
61
|
+
description: "Impact-proving measurements"
|
|
@@ -0,0 +1,63 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: expert-error-shift
|
|
3
|
+
level: 4
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Expert error handling shift — manage a multi-dimensional API reliability crisis with business, technical, and organizational dimensions"
|
|
7
|
+
tags: [REST, API, error-handling, shift-simulation, crisis, expert]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the VP of Engineering. It's Monday morning and three
|
|
13
|
+
crises landed simultaneously over the weekend.
|
|
14
|
+
|
|
15
|
+
Crisis 1 — Major customer data exposure via error responses:
|
|
16
|
+
A security researcher published a blog post showing that your API's
|
|
17
|
+
error responses leak sensitive data. Examples:
|
|
18
|
+
- GET /users/123 returns 403 with the user's email in the error:
|
|
19
|
+
"User alice@company.com does not have access to this resource"
|
|
20
|
+
- Failed login returns different errors for "user not found" vs
|
|
21
|
+
"wrong password" (account enumeration)
|
|
22
|
+
- 500 errors expose database schema in stack traces
|
|
23
|
+
The blog post has 50K views. Your security team estimates 6 months
|
|
24
|
+
of error logs containing exposed PII. GDPR implications.
|
|
25
|
+
|
|
26
|
+
Crisis 2 — Enterprise customer threatening $10M contract termination:
|
|
27
|
+
Your largest customer's integration broke Friday night because you
|
|
28
|
+
deployed a change to error response format (from custom JSON to
|
|
29
|
+
RFC 7807) without warning. Their error parsing broke, causing their
|
|
30
|
+
system to treat all your API responses as errors. They lost $500K
|
|
31
|
+
in weekend transactions and want $1M in damages.
|
|
32
|
+
|
|
33
|
+
Crisis 3 — Internal team revolt:
|
|
34
|
+
The engineering team is frustrated. An email to all-engineering
|
|
35
|
+
went viral internally: "We've spent 6 months building a new error
|
|
36
|
+
handling framework and leadership keeps changing requirements.
|
|
37
|
+
First it was JSON, then RFC 7807, then custom extensions. The
|
|
38
|
+
migration is 20% done and now we're told to add GDPR compliance
|
|
39
|
+
fields. Nobody knows what the actual standard is. 8 teams have
|
|
40
|
+
paused migration entirely."
|
|
41
|
+
|
|
42
|
+
You have a board meeting Wednesday where you must address all three.
|
|
43
|
+
|
|
44
|
+
Task: Navigate all 3 crises. Write: the security response plan
|
|
45
|
+
(data exposure containment and GDPR notification), the customer
|
|
46
|
+
recovery plan (contract preservation and compensation), the
|
|
47
|
+
internal alignment plan (single standard, clear migration path),
|
|
48
|
+
and the board briefing that unifies all three into a coherent
|
|
49
|
+
strategy.
|
|
50
|
+
|
|
51
|
+
assertions:
|
|
52
|
+
- type: llm_judge
|
|
53
|
+
criteria: "Security response is thorough — assesses the actual data exposure (6 months of logs), plans GDPR Article 33 notification (72 hours), fixes the three specific leaks (PII in errors, account enumeration, stack traces), and addresses the researcher's report publicly"
|
|
54
|
+
weight: 0.35
|
|
55
|
+
description: "Thorough security response"
|
|
56
|
+
- type: llm_judge
|
|
57
|
+
criteria: "Customer recovery preserves the relationship — acknowledges the breaking change without defensiveness, offers meaningful compensation, implements a change notification process to prevent recurrence, and provides a migration support package. Addresses the contract termination threat directly"
|
|
58
|
+
weight: 0.35
|
|
59
|
+
description: "Relationship-preserving customer recovery"
|
|
60
|
+
- type: llm_judge
|
|
61
|
+
criteria: "Internal alignment is decisive — makes a clear decision on the error standard (RFC 7807 with specific extensions), provides a single migration document, addresses team frustration empathetically, and the board briefing connects all three crises as symptoms of one root cause (lack of error handling governance)"
|
|
62
|
+
weight: 0.30
|
|
63
|
+
description: "Decisive internal alignment"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: comprehensive-error-system
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design a comprehensive API error handling system — architect a 5-layer error platform for a Fortune 500 company"
|
|
7
|
+
tags: [REST, API, comprehensive, enterprise, architecture, Fortune-500, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the CTO of a Fortune 500 company ($15B revenue, 5,000
|
|
13
|
+
engineers) designing a unified API error handling system. The
|
|
14
|
+
company has 6 business units acquired over 12 years, each with
|
|
15
|
+
different API stacks, error handling approaches, and cultures.
|
|
16
|
+
|
|
17
|
+
Current state:
|
|
18
|
+
- BU1 Fintech (1,500 eng): REST APIs, RFC 7807, sophisticated
|
|
19
|
+
error handling, PCI DSS/SOC 2 compliant, 50,000 API consumers
|
|
20
|
+
- BU2 Healthcare (1,000 eng): REST + HL7 FHIR, HIPAA compliant,
|
|
21
|
+
custom error format, 5,000 API consumers
|
|
22
|
+
- BU3 E-commerce (800 eng): REST + GraphQL, basic error handling,
|
|
23
|
+
no compliance framework, 20,000 API consumers
|
|
24
|
+
- BU4 IoT (400 eng): MQTT + REST, custom binary error codes,
|
|
25
|
+
no standard format, 2,000 device integrations
|
|
26
|
+
- BU5 Government (200 eng): REST, FedRAMP compliant, NIST 800-53,
|
|
27
|
+
verbose audit trails, 500 government consumers
|
|
28
|
+
- BU6 AI Platform (100 eng): gRPC + REST, no error standard,
|
|
29
|
+
streaming errors for long-running ML tasks, 1,000 consumers
|
|
30
|
+
|
|
31
|
+
Design the error handling system in 5 layers:
|
|
32
|
+
|
|
33
|
+
Layer 1 — Error Standards: Unified error format that accommodates
|
|
34
|
+
REST, GraphQL, gRPC, and MQTT. Error code registry shared across
|
|
35
|
+
all 6 BUs.
|
|
36
|
+
Layer 2 — Error Infrastructure: Logging, tracing, metrics pipeline
|
|
37
|
+
that ingests errors from all protocols and stacks.
|
|
38
|
+
Layer 3 — Error Intelligence: Analytics, anomaly detection,
|
|
39
|
+
prediction, and AI-powered root cause analysis across all BUs.
|
|
40
|
+
Layer 4 — Error Compliance: Audit trails, PII handling, data
|
|
41
|
+
residency, and reporting that satisfies all 5 compliance frameworks
|
|
42
|
+
simultaneously.
|
|
43
|
+
Layer 5 — Error Experience: Consumer-facing error documentation,
|
|
44
|
+
SDKs, self-service debugging tools, and developer portal.
|
|
45
|
+
|
|
46
|
+
Constraints:
|
|
47
|
+
- $25M budget over 3 years
|
|
48
|
+
- Cannot break any BU's existing API consumers
|
|
49
|
+
- Must handle protocol diversity (REST, GraphQL, gRPC, MQTT, HL7)
|
|
50
|
+
- Must satisfy 5 compliance frameworks simultaneously
|
|
51
|
+
- Must handle 2B+ error events per day across all BUs
|
|
52
|
+
|
|
53
|
+
Task: Design all 5 layers with migration strategy, 3-year roadmap,
|
|
54
|
+
and board presentation for approval.
|
|
55
|
+
|
|
56
|
+
assertions:
|
|
57
|
+
- type: llm_judge
|
|
58
|
+
criteria: "5-layer design accommodates protocol diversity — the unified error format works across REST (JSON), GraphQL (extensions), gRPC (status codes + details), MQTT (custom payloads), and HL7 FHIR (OperationOutcome). Each BU's specific needs are addressed without forcing one-size-fits-all"
|
|
59
|
+
weight: 0.35
|
|
60
|
+
description: "Protocol-accommodating 5-layer design"
|
|
61
|
+
- type: llm_judge
|
|
62
|
+
criteria: "Migration plan is phased and non-disruptive — phases BUs by readiness and complexity, provides adapter layers so existing consumers aren't broken, and the 3-year roadmap has quarterly milestones with clear deliverables per BU"
|
|
63
|
+
weight: 0.35
|
|
64
|
+
description: "Non-disruptive migration plan"
|
|
65
|
+
- type: llm_judge
|
|
66
|
+
criteria: "Budget allocation is justified — $25M distributed across layers, BUs, and years with build-vs-buy decisions, ROI projection showing when investment pays back, and the compliance unification saves the company from maintaining 5 separate compliance programs"
|
|
67
|
+
weight: 0.30
|
|
68
|
+
description: "Justified budget allocation"
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-ai-future
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Design AI-powered API error handling — build systems that predict, prevent, and auto-remediate API errors using machine learning"
|
|
7
|
+
tags: [REST, API, AI, machine-learning, prediction, auto-remediation, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the Head of AI/ML at an API platform company. The CEO
|
|
13
|
+
wants to build "self-healing APIs" — APIs that predict errors
|
|
14
|
+
before they happen, automatically remediate common issues, and
|
|
15
|
+
learn from every incident.
|
|
16
|
+
|
|
17
|
+
Current capabilities:
|
|
18
|
+
- 2B API requests/day across 500 endpoints
|
|
19
|
+
- 2 years of historical error data (logs, traces, metrics)
|
|
20
|
+
- Error pattern library: 500 known error patterns
|
|
21
|
+
- Current MTTR: 45 minutes (target: <5 minutes)
|
|
22
|
+
- ML infrastructure: MLflow, Kubernetes, GPU cluster
|
|
23
|
+
|
|
24
|
+
Desired AI capabilities:
|
|
25
|
+
|
|
26
|
+
1. Error prediction:
|
|
27
|
+
- Predict error spikes 30 minutes before they happen
|
|
28
|
+
- Input: latency trends, error rate derivatives, deployment events,
|
|
29
|
+
infrastructure metrics, traffic patterns
|
|
30
|
+
- Target: "Endpoint X will exceed 1% error rate in 30 minutes"
|
|
31
|
+
|
|
32
|
+
2. Automatic root cause analysis:
|
|
33
|
+
- Given an error spike, identify the root cause in <2 minutes
|
|
34
|
+
- Currently: engineers manually trace through 20 services
|
|
35
|
+
- Target: "Error caused by memory leak in Service Y, introduced
|
|
36
|
+
in commit abc123 deployed at 2:30 PM"
|
|
37
|
+
|
|
38
|
+
3. Auto-remediation:
|
|
39
|
+
- For known error patterns, take automatic corrective action
|
|
40
|
+
- Examples: restart pods, scale up, roll back deployments, enable
|
|
41
|
+
circuit breakers, increase timeout thresholds
|
|
42
|
+
- Safety: human approval for risky actions
|
|
43
|
+
|
|
44
|
+
4. Error message generation:
|
|
45
|
+
- Generate contextual, helpful error messages based on the request
|
|
46
|
+
context, user history, and error type
|
|
47
|
+
- Current: "Internal server error"
|
|
48
|
+
- Target: "Your payment couldn't be processed because your card
|
|
49
|
+
issuer declined the transaction. This sometimes happens with
|
|
50
|
+
international purchases. Try a different card or contact your
|
|
51
|
+
bank."
|
|
52
|
+
|
|
53
|
+
5. API consumer error assistance:
|
|
54
|
+
- Chatbot that helps API consumers debug their integration errors
|
|
55
|
+
- Uses historical error patterns and documentation
|
|
56
|
+
|
|
57
|
+
Task: Design the AI error handling system. For each of the 5
|
|
58
|
+
capabilities, write: the ML model design (features, architecture,
|
|
59
|
+
training data), the safety framework (when to act automatically
|
|
60
|
+
vs require human approval), the feedback loop (how the system
|
|
61
|
+
learns from outcomes), and the ethical considerations.
|
|
62
|
+
|
|
63
|
+
assertions:
|
|
64
|
+
- type: llm_judge
|
|
65
|
+
criteria: "ML designs are technically sound — error prediction uses time-series features with appropriate models (LSTM, transformer, or gradient boosting), root cause analysis uses causal inference or graph neural networks on service dependency data, and training data requirements are realistic given 2 years of historical data"
|
|
66
|
+
weight: 0.35
|
|
67
|
+
description: "Technically sound ML designs"
|
|
68
|
+
- type: llm_judge
|
|
69
|
+
criteria: "Safety framework prevents AI-caused incidents — defines confidence thresholds for automatic action vs human approval, has rollback mechanisms for auto-remediation, prevents feedback loops (auto-scaling triggering more errors), and addresses the risk of AI taking wrong corrective actions"
|
|
70
|
+
weight: 0.35
|
|
71
|
+
description: "Incident-preventing safety framework"
|
|
72
|
+
- type: llm_judge
|
|
73
|
+
criteria: "Ethical considerations are thoughtful — addresses bias in error message generation (accessibility, language), transparency (users should know when AI generated the message), accountability (who's responsible when auto-remediation fails), and data privacy (ML models trained on potentially sensitive error data)"
|
|
74
|
+
weight: 0.30
|
|
75
|
+
description: "Thoughtful ethical considerations"
|
|
@@ -0,0 +1,73 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-behavioral-science
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Apply behavioral science to API errors — use psychology research to design error messages and systems that drive correct developer behavior"
|
|
7
|
+
tags: [REST, API, behavioral-science, psychology, developer-experience, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're a researcher studying how API error messages affect developer
|
|
13
|
+
behavior. Your company's API has 10,000 active developers, and
|
|
14
|
+
you've been given budget to run A/B tests on error messages and
|
|
15
|
+
error handling UX.
|
|
16
|
+
|
|
17
|
+
Your research questions:
|
|
18
|
+
1. Do better error messages reduce support tickets?
|
|
19
|
+
2. Do error messages affect integration quality?
|
|
20
|
+
3. Can error UX prevent common mistakes?
|
|
21
|
+
4. Do developers trust APIs more when errors are well-handled?
|
|
22
|
+
|
|
23
|
+
Behavioral observations from your developer research:
|
|
24
|
+
|
|
25
|
+
Observation 1 — Anchoring effect:
|
|
26
|
+
When developers see their first error from your API (during
|
|
27
|
+
onboarding), it anchors their perception of your API quality.
|
|
28
|
+
Developers who hit a well-formatted 400 with clear guidance had
|
|
29
|
+
3x higher completion rates than those who hit a cryptic 500.
|
|
30
|
+
|
|
31
|
+
Observation 2 — Learned helplessness:
|
|
32
|
+
After 3+ unhelpful error messages, developers stop reading them
|
|
33
|
+
and go straight to support. 40% of support tickets say "I got an
|
|
34
|
+
error" without including the error message.
|
|
35
|
+
|
|
36
|
+
Observation 3 — Copy-paste behavior:
|
|
37
|
+
70% of developers copy-paste error messages into Google. Error
|
|
38
|
+
messages that are unique strings are more findable than generic
|
|
39
|
+
ones.
|
|
40
|
+
|
|
41
|
+
Observation 4 — Completion bias:
|
|
42
|
+
Developers who are 80% done integrating will push through bad
|
|
43
|
+
error handling. Developers who hit errors in the first 20% are
|
|
44
|
+
5x more likely to abandon the integration entirely.
|
|
45
|
+
|
|
46
|
+
Observation 5 — Social proof:
|
|
47
|
+
Error pages that say "500 developers hit this same error this
|
|
48
|
+
month — here's how they fixed it" have 60% lower support tickets.
|
|
49
|
+
|
|
50
|
+
Observation 6 — Loss aversion:
|
|
51
|
+
Developers respond more to "This error will cause payment failures
|
|
52
|
+
in production" than "Fixing this will improve reliability."
|
|
53
|
+
|
|
54
|
+
Task: Design a behavioral science-informed error handling system.
|
|
55
|
+
Write: the A/B test designs for each observation (hypothesis,
|
|
56
|
+
control, treatment, metrics), the error message framework based on
|
|
57
|
+
the research findings, the developer journey map showing where
|
|
58
|
+
errors have the most impact, and the recommendations for the API
|
|
59
|
+
team.
|
|
60
|
+
|
|
61
|
+
assertions:
|
|
62
|
+
- type: llm_judge
|
|
63
|
+
criteria: "A/B test designs are methodologically sound — each has a clear hypothesis, control and treatment groups, primary and secondary metrics, sample size considerations, and expected effect size. The tests are ethical (no degradation of error handling for the control group)"
|
|
64
|
+
weight: 0.35
|
|
65
|
+
description: "Sound A/B test methodology"
|
|
66
|
+
- type: llm_judge
|
|
67
|
+
criteria: "Error message framework applies behavioral insights — addresses anchoring (great first-error experience), learned helplessness (always helpful messages), searchability (unique error strings), completion bias (extra help during onboarding), social proof (community solutions), and loss aversion (production impact warnings)"
|
|
68
|
+
weight: 0.35
|
|
69
|
+
description: "Behavioral insight application"
|
|
70
|
+
- type: llm_judge
|
|
71
|
+
criteria: "Developer journey map is insightful — identifies the critical moments where errors have outsized impact (onboarding, first production deployment, scaling), and the recommendations are actionable for the API team with expected impact on support tickets and developer retention"
|
|
72
|
+
weight: 0.30
|
|
73
|
+
description: "Insightful developer journey map"
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-board-strategy
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Present API reliability strategy to the board — build a multi-year investment case for API error handling excellence"
|
|
7
|
+
tags: [REST, API, board, strategy, investment, reliability, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're the CTO presenting to the board of directors. Your company
|
|
13
|
+
(a $2B revenue API-first platform) needs board approval for a
|
|
14
|
+
$15M, 3-year API reliability investment. Two board members are
|
|
15
|
+
skeptical: "Our APIs work fine. Why spend $15M on error handling?"
|
|
16
|
+
|
|
17
|
+
Your business case data:
|
|
18
|
+
- Current annual cost of API errors: $25M (direct + indirect)
|
|
19
|
+
- Customer churn due to reliability: $8M/year
|
|
20
|
+
- Competitive disadvantage: 3 enterprise deals lost to competitors
|
|
21
|
+
with better API reliability (total contract value: $12M)
|
|
22
|
+
- Regulatory risk: $5M potential fines (PCI DSS, GDPR findings)
|
|
23
|
+
- Engineering productivity lost to error debugging: $4M/year
|
|
24
|
+
|
|
25
|
+
Proposed investment breakdown ($15M over 3 years):
|
|
26
|
+
- Year 1 ($7M): Error handling platform, tracing, monitoring
|
|
27
|
+
- Year 2 ($5M): AI-powered error prediction, SLO automation
|
|
28
|
+
- Year 3 ($3M): Self-healing APIs, proactive error prevention
|
|
29
|
+
|
|
30
|
+
Projected returns:
|
|
31
|
+
- Year 1: $8M savings (quick wins + customer retention)
|
|
32
|
+
- Year 2: $15M savings + $5M new revenue (reliability as feature)
|
|
33
|
+
- Year 3: $20M savings + $10M new revenue (market differentiation)
|
|
34
|
+
|
|
35
|
+
Board member profiles:
|
|
36
|
+
- Chair (former CEO): cares about competitive positioning
|
|
37
|
+
- Finance chair: skeptical, wants hard ROI numbers
|
|
38
|
+
- Technology committee: wants architectural confidence
|
|
39
|
+
- Risk committee: worried about regulatory exposure
|
|
40
|
+
- New member (VC partner): wants growth story, not maintenance
|
|
41
|
+
|
|
42
|
+
Task: Write the board presentation and supporting materials.
|
|
43
|
+
Include: the 3-year strategy narrative, the financial model (ROI
|
|
44
|
+
calculation, NPV, payback period), the risk mitigation argument,
|
|
45
|
+
the competitive differentiation story, and the prepared responses
|
|
46
|
+
for each skeptical board member.
|
|
47
|
+
|
|
48
|
+
assertions:
|
|
49
|
+
- type: llm_judge
|
|
50
|
+
criteria: "Financial model is rigorous — ROI calculation shows $15M investment returning $58M+ over 3 years, NPV is positive at reasonable discount rate, payback period is under 18 months. Numbers are broken down by category and year, not just totals. The finance chair would find this credible"
|
|
51
|
+
weight: 0.35
|
|
52
|
+
description: "Rigorous financial model"
|
|
53
|
+
- type: llm_judge
|
|
54
|
+
criteria: "Strategy narrative is compelling — connects error handling to business outcomes (customer retention, competitive wins, regulatory compliance, developer productivity), positions the investment as growth enabler (not just cost reduction), and addresses each board member's specific concern"
|
|
55
|
+
weight: 0.35
|
|
56
|
+
description: "Compelling strategy narrative"
|
|
57
|
+
- type: llm_judge
|
|
58
|
+
criteria: "Skeptic responses are prepared — has specific answers for 'our APIs work fine' (data shows $25M in hidden costs), 'why $15M?' (each component justified with alternatives), and the VC's growth concern (reliability enables enterprise tier pricing). Responses are data-backed, not defensive"
|
|
59
|
+
weight: 0.30
|
|
60
|
+
description: "Prepared skeptic responses"
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-consulting-engagement
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Lead an API error handling consulting engagement — transform a client's error handling from ad-hoc to world-class in 12 weeks"
|
|
7
|
+
tags: [REST, API, consulting, transformation, engagement, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're a principal consultant at an API reliability firm. A Series
|
|
13
|
+
C fintech company ($200M valuation, 400 engineers) hired you for
|
|
14
|
+
a 12-week engagement after their API errors caused a $5M loss and
|
|
15
|
+
made the news.
|
|
16
|
+
|
|
17
|
+
Discovery findings (Week 1):
|
|
18
|
+
- 80 microservices, no consistent error handling
|
|
19
|
+
- 12 different error response formats
|
|
20
|
+
- No distributed tracing (debugging takes hours)
|
|
21
|
+
- Error logs contain PII (GDPR violation risk)
|
|
22
|
+
- No error budgets or SLOs defined
|
|
23
|
+
- On-call rotation causes 30% engineer burnout
|
|
24
|
+
- API consumers receive error messages like "null", "undefined",
|
|
25
|
+
"[object Object]", and full Java stack traces
|
|
26
|
+
- Rate limiting exists but returns HTML error pages (not JSON)
|
|
27
|
+
- Webhook delivery has no retry logic (events lost daily)
|
|
28
|
+
- 3 compliance frameworks apply (PCI DSS, SOC 2, GDPR) but no
|
|
29
|
+
compliance-aware error handling
|
|
30
|
+
|
|
31
|
+
Client expectations:
|
|
32
|
+
- "Fix the critical issues in the first 4 weeks"
|
|
33
|
+
- "Leave us with a system we can maintain ourselves"
|
|
34
|
+
- "Train our team so we don't need consultants again"
|
|
35
|
+
- "Show our board measurable improvement"
|
|
36
|
+
|
|
37
|
+
Budget: $500K for the engagement
|
|
38
|
+
Your team: You + 2 senior consultants + 1 junior consultant
|
|
39
|
+
|
|
40
|
+
Task: Design the 12-week engagement plan. Write: the weekly
|
|
41
|
+
deliverables, the quick wins (first 4 weeks), the systematic
|
|
42
|
+
improvements (weeks 5-10), the handoff plan (weeks 11-12), the
|
|
43
|
+
client team training approach, and the success metrics report
|
|
44
|
+
for the board.
|
|
45
|
+
|
|
46
|
+
assertions:
|
|
47
|
+
- type: llm_judge
|
|
48
|
+
criteria: "12-week plan is structured and realistic — first 4 weeks fix critical issues (PII in logs, stack traces in responses, webhook retry), weeks 5-10 build systematic improvements (error standard, tracing, SLOs, compliance), weeks 11-12 hand off with documentation and training. Each week has specific deliverables and the 4-person team capacity is realistic"
|
|
49
|
+
weight: 0.35
|
|
50
|
+
description: "Structured realistic engagement plan"
|
|
51
|
+
- type: llm_judge
|
|
52
|
+
criteria: "Quick wins deliver visible impact — addresses the highest-risk items first (PII exposure for GDPR, stack trace leakage for security, webhook reliability for data integrity), and shows measurable improvement within 4 weeks that the client can present to their board"
|
|
53
|
+
weight: 0.35
|
|
54
|
+
description: "Impactful quick wins"
|
|
55
|
+
- type: llm_judge
|
|
56
|
+
criteria: "Handoff ensures sustainability — training program for the client team, documentation of standards and architecture decisions, monitoring dashboards the client can operate, and a 30/60/90 day post-engagement checkup plan"
|
|
57
|
+
weight: 0.30
|
|
58
|
+
description: "Sustainable handoff"
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-industry-benchmarks
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Analyze API error handling industry benchmarks — compare error handling maturity across industries and define best-in-class standards"
|
|
7
|
+
tags: [REST, API, benchmarks, industry-analysis, maturity-model, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
You're writing the definitive "State of API Error Handling 2026"
|
|
13
|
+
report. You've surveyed 500 companies and analyzed 200 public APIs.
|
|
14
|
+
Your data reveals significant gaps between industry leaders and
|
|
15
|
+
the median.
|
|
16
|
+
|
|
17
|
+
Survey data across industries:
|
|
18
|
+
|
|
19
|
+
Financial Services (75 companies):
|
|
20
|
+
- Error format adoption: 80% RFC 7807, 15% custom, 5% no standard
|
|
21
|
+
- Avg error response time: 45ms (leaders: 15ms)
|
|
22
|
+
- Error rate (5xx): 0.02% (leaders: 0.005%)
|
|
23
|
+
- Distributed tracing adoption: 90%
|
|
24
|
+
- Error budget adoption: 65%
|
|
25
|
+
- Compliance-aware error handling: 95%
|
|
26
|
+
|
|
27
|
+
Healthcare (50 companies):
|
|
28
|
+
- Error format adoption: 30% RFC 7807, 40% HL7/FHIR errors, 30% custom
|
|
29
|
+
- Avg error response time: 200ms (leaders: 50ms)
|
|
30
|
+
- Error rate (5xx): 0.15% (leaders: 0.03%)
|
|
31
|
+
- Distributed tracing: 40%
|
|
32
|
+
- PHI in error responses: 25% (violation)
|
|
33
|
+
- Audit trail completeness: 60%
|
|
34
|
+
|
|
35
|
+
E-commerce (100 companies):
|
|
36
|
+
- Error format adoption: 45% RFC 7807, 35% custom, 20% no standard
|
|
37
|
+
- Avg error response time: 80ms (leaders: 20ms)
|
|
38
|
+
- Error rate (5xx): 0.08% (leaders: 0.01%)
|
|
39
|
+
- Retry and idempotency: 55%
|
|
40
|
+
- Circuit breaker adoption: 40%
|
|
41
|
+
- Error cost tracking: 15%
|
|
42
|
+
|
|
43
|
+
SaaS/B2B (150 companies):
|
|
44
|
+
- Error format adoption: 60% RFC 7807, 30% custom, 10% no standard
|
|
45
|
+
- API error documentation quality: 4.2/10 average
|
|
46
|
+
- Error message actionability: 35% have actionable messages
|
|
47
|
+
- Webhook error handling: 50% have retry logic
|
|
48
|
+
- Error SLA in contracts: 25%
|
|
49
|
+
|
|
50
|
+
Public Sector (25 companies):
|
|
51
|
+
- Error format adoption: 15% RFC 7807, 20% custom, 65% no standard
|
|
52
|
+
- FedRAMP compliance: 40%
|
|
53
|
+
- Error audit trails: 30%
|
|
54
|
+
|
|
55
|
+
Task: Write the industry benchmark report. Include: the maturity
|
|
56
|
+
model (5 levels with criteria), the industry comparison analysis,
|
|
57
|
+
the gap analysis (where each industry needs to improve most), the
|
|
58
|
+
recommendations per industry, and the predictions for 2027-2028.
|
|
59
|
+
|
|
60
|
+
assertions:
|
|
61
|
+
- type: llm_judge
|
|
62
|
+
criteria: "Maturity model is well-defined — 5 levels from ad-hoc to world-class with specific criteria at each level (error format, tracing, SLOs, compliance, cost tracking). Each level has clear indicators and the model can be used for self-assessment"
|
|
63
|
+
weight: 0.35
|
|
64
|
+
description: "Well-defined maturity model"
|
|
65
|
+
- type: llm_judge
|
|
66
|
+
criteria: "Industry analysis is insightful — identifies why financial services leads (regulatory pressure, direct revenue impact), why healthcare lags (complex standards, legacy systems), and provides specific benchmarks each industry should target. The data is analyzed, not just presented"
|
|
67
|
+
weight: 0.35
|
|
68
|
+
description: "Insightful industry analysis"
|
|
69
|
+
- type: llm_judge
|
|
70
|
+
criteria: "Predictions are grounded — forecasts based on trends in the data (RFC 7807 adoption curve, AI integration, regulatory pressure), not speculation. Includes specific predictions like 'by 2028, 80% of APIs will use Problem Details' with supporting reasoning"
|
|
71
|
+
weight: 0.30
|
|
72
|
+
description: "Grounded predictions"
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
meta:
|
|
2
|
+
id: error-ma-integration
|
|
3
|
+
level: 5
|
|
4
|
+
course: rest-api-error-handling
|
|
5
|
+
type: output
|
|
6
|
+
description: "Integrate API error handling post-M&A — unify error handling across two companies with incompatible API platforms"
|
|
7
|
+
tags: [REST, API, M&A, integration, unification, migration, master]
|
|
8
|
+
|
|
9
|
+
state: {}
|
|
10
|
+
|
|
11
|
+
trigger: |
|
|
12
|
+
Your company ($5B revenue, 3,000 engineers) just acquired a
|
|
13
|
+
competitor ($1B revenue, 800 engineers). Both companies have
|
|
14
|
+
extensive API platforms that must be integrated. The board
|
|
15
|
+
mandated "unified API experience within 18 months."
|
|
16
|
+
|
|
17
|
+
Acquirer (your company) API platform:
|
|
18
|
+
- 200 REST APIs, RFC 7807 error format
|
|
19
|
+
- OpenTelemetry distributed tracing
|
|
20
|
+
- Error budgets with SLOs per endpoint
|
|
21
|
+
- Centralized error analytics (Datadog)
|
|
22
|
+
- Multi-region (US, EU)
|
|
23
|
+
- Compliance: SOC 2, PCI DSS, GDPR
|
|
24
|
+
- Languages: Go, TypeScript
|
|
25
|
+
- API gateway: Kong
|
|
26
|
+
|
|
27
|
+
Acquired company API platform:
|
|
28
|
+
- 150 REST APIs + 30 GraphQL APIs, custom error format
|
|
29
|
+
- No distributed tracing (per-service logging only)
|
|
30
|
+
- No SLOs (alert-based monitoring only)
|
|
31
|
+
- Fragmented monitoring (Sentry, CloudWatch, custom dashboards)
|
|
32
|
+
- Single region (US-East)
|
|
33
|
+
- Compliance: HIPAA (healthcare data)
|
|
34
|
+
- Languages: Java, Python
|
|
35
|
+
- API gateway: AWS API Gateway
|
|
36
|
+
|
|
37
|
+
Integration challenges:
|
|
38
|
+
1. Different error formats (RFC 7807 vs custom)
|
|
39
|
+
2. Different error codes (same name, different meaning)
|
|
40
|
+
3. Overlapping endpoints (both have /users, /payments, etc.)
|
|
41
|
+
4. Different auth systems (OAuth2 vs API keys)
|
|
42
|
+
5. Combined compliance: need SOC 2 + PCI DSS + GDPR + HIPAA
|
|
43
|
+
6. Customer migration (3,000 + 1,200 API consumers)
|
|
44
|
+
7. Cultural differences (startup velocity vs enterprise stability)
|
|
45
|
+
|
|
46
|
+
The acquired company's CTO is resistant: "Our error handling works
|
|
47
|
+
fine for our customers. Why should we change?"
|
|
48
|
+
|
|
49
|
+
Task: Design the 18-month integration plan. Write: the unified
|
|
50
|
+
error handling standard (accounting for both platforms), the
|
|
51
|
+
migration strategy for both sets of API consumers, the compliance
|
|
52
|
+
unification approach, the organizational integration (combining
|
|
53
|
+
platform teams), and the change management strategy for the
|
|
54
|
+
acquired company.
|
|
55
|
+
|
|
56
|
+
assertions:
|
|
57
|
+
- type: llm_judge
|
|
58
|
+
criteria: "Unified standard accommodates both platforms — doesn't simply impose the acquirer's standard on the acquired company, but creates a unified format that handles both REST and GraphQL, incorporates the best practices from both platforms, and adds HIPAA compliance to the existing SOC 2/PCI DSS/GDPR framework"
|
|
59
|
+
weight: 0.35
|
|
60
|
+
description: "Accommodating unified standard"
|
|
61
|
+
- type: llm_judge
|
|
62
|
+
criteria: "Migration strategy preserves customer experience — phases the migration so no API consumer experiences breaking changes, provides migration tooling (adapters, SDKs, documentation), and handles the 4,200 combined consumers with backward-compatible error format evolution"
|
|
63
|
+
weight: 0.35
|
|
64
|
+
description: "Customer-preserving migration"
|
|
65
|
+
- type: llm_judge
|
|
66
|
+
criteria: "Change management addresses resistance — acknowledges the acquired CTO's concerns, identifies what the acquired platform does well (adopt those practices), and the organizational integration plan combines teams without creating winners and losers"
|
|
67
|
+
weight: 0.30
|
|
68
|
+
description: "Resistance-addressing change management"
|