Trainer's Guide — Advanced Level, Session 9
“Certification scenarios”
Program : Applied AI — Yann Isola
Audience : Solutions architects preparing for certification Claude Certified Architect
Duration : 2:00 a.m. (+ 10 min recommended break halfway through)
Prerequisites: Sessions 1 to 8 of the advanced level (API Claude, tool use, MCP, Claude Code, advanced prompt engineering, context & reliability). This session does not present any new concept : it assembles everything that has been seen, from the exact angle of the examination.
Material : interactive web page of the session (webpage/index.html — scenario analyzer, domain coverage tracker, timed exam simulator), projector, score sheet per participant.
Educational objectives
At the end of the session, each participant knows:
- Describe the format of the exam: 60 questions, 90 minutes ⚠, MCQ (MCQ = Multiple Choice Questionnaire) and questions based on scenarios, success threshold 72% ⚠ (i.e. 720 on a scale of 100 to 1000), 4 scenarios drawn from 8, no penalty for a wrong answer.
- Map the 5 areas of the exam and their weighting: Architecture & agent orchestration (27%), tool design & MCP integration (18%), Configuration & workflows Claude Code (20%), Prompt engineering & structured output (20%), Context management & reliability (15%).
- Analyze each of the 8 scenarios of the exam: identify the expected architectural decisions, the recurring pitfalls and the areas called for.
- Apply the “root cause → least effort → guarantee required” reading grid to eliminate distractors from a certification multiple choice question.
- Self-assess its coverage of the 5 areas and build a revision plan prioritized by weighting.
- Manage exam time: 90 seconds per question on average ⚠, marking and second pass strategy.
⚠ Session convention: all figures marked ⚠ (exam format, number of questions, duration, threshold, weightings) are volatile . They reflect the exam guide at the time of writing. Absolute reflex: check the official Anthropic certification page before booking the exam.
Timed plan
| Block | Duration | Content |
|---|---|---|
| 0. Opening | 5 mins | Exam format, rules of the game, session method |
| 1. The MCQ reading grid | 10 mins | Anatomy of a certification question, method of elimination |
| 2. Scenarios 1 & 8 — Customer support & agentic tools | 20 mins | Routing, escalation, preconditions, tool selection and chaining |
| 3. Scenarios 3 & 7 — Multi-agents & Conversational AI | 20 mins | Coordinator/subagents, consensus, stateful sessions, memory |
| Break | 10 mins | |
| 4. Scenarios 2, 4 & 5 — Claude Code (dev, productivity, CI/CD) | 25 mins | CLAUDE.md, slash commands, plan mode, headless, PR review |
| 5. Scenario 6 — Extraction of structured data | 15 mins | JSON schemas, validation, edge cases, trust calibration |
| 6. Exam simulator | 20 mins | Timed mini-exam (web page), collective correction |
| 7. Revision plan & fence | 5 mins | Domain tracker, prioritization, review logistics |
Block 0 — Opening (5 min)
Tagline message: “You have eight sessions of material in your head. The exam won't ask you to recite it: it will put you in the shoes of an architect facing a dysfunctional system, with four plausible fixes — three of which are well-constructed traps. Today, we learn to think like the author of the question. »
The format, black on white
Project and comment on this table (volatile figures ⚠):
| Setting | Value ⚠ |
|---|---|
| Number of questions | 60 |
| Duration | 90 minutes (or 90 seconds/question on average) |
| Kind | MCQ, 1 correct answer out of 4 + scenario-based questions |
| Rating | Scale 100–1000, threshold 720 (≈ 72 %) |
| Penalty for error | None — answer all questions, always |
| Scenarios | 4 drawn randomly from 8 |
Three practical consequences to hammer home:
- No penalty → we never leave a question empty. Even at random, there is a 25% chance of winning.
- 4 scenarios out of 8 → we cannot make a dead end. Each scenario must be mastered, because we don't know which ones will fall.
- 72% threshold → we are entitled to ~16 errors out of 60. This is comfortable if the 3 heaviest areas (27 + 20 + 20 = 67% of the exam) are solid.
The 5 areas and their weight
| Domain | Weighting | ≈ Questions out of 60 ⚠ |
|---|---|---|
| 1. Architecture & agent orchestration | 27 % | ~16 |
| 2. Tool design & MCP integration | 18 % | ~11 |
| 3. Setup & workflows Claude Code | 20 % | ~12 |
| 4. Prompt engineering & structured output | 20 % | ~12 |
| 5. Context management & reliability | 15 % | ~9 |
Strategy point: Domain 1 weighs almost twice as much as Domain 5. An hour of review on agent orchestration “returns” statistically more than an hour on context management — but be careful, the domains intersect in the scenarios: a “customer support” question can evaluate Domain 5 (escalation).
Block 1 — The MCQ reading grid (10 min)
1.1 Anatomy of a certification question
Each question follows the same skeleton:
- Situation — a system in production with a measured symptom (“in 12% of cases, the agent jumps
get_customer… ») ; - Question — almost always some variation of “what change is the most effective ? » or “what is the first stage ? » ;
- Four options — one correct, three distractors constructed according to identifiable recipes.
Emphasize the trap words in the statement: “most effective”, “the first step”, “with the least effort”, “the best”. These are not ornaments: they mean that several options may be technically valid , and which is decided by the cost/impact ratio or by the logical order of intervention.
1.2 The four families of distractors
Have the room build this table (she saw enough questions in previous sessions to fill it):
| Distractor family | Signature | Typical example |
|---|---|---|
| The magic prompt | Solve by prompt which requires a deterministic guarantee | “Improve the prompt system” in the face of a critical business rule |
| Over-engineering | A heavy component (ML classifier, routing layer) for a simple problem | “Train a separate classifier” when explicit criteria are sufficient |
| The invented functionality | A flag, variable or file that does not exist | CLAUDE_HEADLESS=true , --batch , .claude/config.json |
| The symptom, not the cause | A plausible fix that addresses another problem | “Sentiment Analysis” for an escalation calibration problem |
1.3 The reading grid in three questions
To be applied systematically, in order:
- What is the root cause? (not the symptom - reread the situation, the numerical data points to the cause)
- Does the rule require a deterministic guarantee or is probabilistic compliance sufficient? (deterministic → programmatic hooks/preconditions; probabilistic → prompt/few-shot)
- Of the options that address the cause, which has the best effort/impact ratio? (certification rewards the simplest correction that resolves the problem)
Chalkboard demo with Question 1 of the exam guide (preconditions blocking process_refund ): unfold the grid step by step. Response A (programmatic precondition) comes out in 30 seconds, because the situation says “incorrect reimbursements” = critical business rule = deterministic guarantee required = prompt options (B, C) fall automatically.
Block 2 — Scenarios 1 & 8: Customer support & agentic tools (20 min)
2.1 Scenario 1 — Customer Support Agent
The guide’s statement: agent built with the Claude Agent SDK (SDK = Software Development Kit) to manage returns, billing disputes and account issues. MCP tools (MCP = Model Context Protocol): get_customer , lookup_order , process_refund , escalate_to_human . Objective: resolution at first contact > 80% with appropriate escalation.
Domains summoned: 1 (orchestration, preconditions), 2 (tool descriptions, structured errors), 5 (escalation, ambiguity).
The expected architectural decisions — to be displayed on the board:
| Problem in the scenario | Architect response expected | Why not the alternatives |
|---|---|---|
| Agent skips ID verification before refund | Programmatic precondition (hook) which blocks process_refund as long as get_customer did not return a verified ID |
The prompt = probabilistic conformity; money demands determinism |
Bad routing between get_customer And lookup_order |
Enrich tool descriptions : input formats, examples, limitations, when to use one vs the other | Descriptions are the #1 selection mechanism; the few-shot comes after |
| Poorly calibrated escalation (escalates simple cases, keeps complex cases) | Explicit escalation criteria + few-shot examples in the system prompt | Self-perceived confidence is unreliable; the feeling ≠ complexity |
| Multiple customer matches for one name | Request additional credentials to the user | No heuristic assumptions about identity |
| Explicit request to speak to a human | Immediate escalation , without prior investigation | Delaying an explicit request degrades satisfaction and violates the escalation contract |
Point of attention feeling: the scenario mentions sentiment analysis. On examination, it almost always appears distractor : the feeling (anger, frustration) is a tone signal, not a reliable indicator of the complexity of the case nor an escalation criterion in itself. An irate customer may have a trivial problem; a calm customer, an inextricable political exception. Good practice: feeling can modulate your of the response, but the escalation is decided on explicit policy criteria .
Transfer protocol (handoff): when escalating, produce a structured summary — client ID, reason, actions already attempted, recommended action. A classic exam question opposes “transferring the raw conversation” (bad: the human must reread everything) to “structured summary” (good).
2.2 Scenario 8 — Agentic AI tools
Honest context to give: this scenario is reported by candidates but less documented in community guides ⚠. It covers three transversal skills: tool selection, chaining, error recovery . Good news: everything is already covered by Domains 1 and 2 — it’s a recombination.
Tool selection — the rules to know by heart:
- Too many tools per agent reduced the reliability of the selection (the canonical example: 18 tools instead of 4-5). The exam answer: Restrict the toolset to the scope of the role.
- Ambiguous or overlapping descriptions → poor routing. First correction: rewrite/rename (
analyze_content→extract_web_results). tool_choice:"auto"(the model can respond in text),"any"(must call a tool, any tool),{"type": "tool", "name": "..."}(forced tool). Typical question: “guarantee structured output when multiple schemas exist” →"any"; “guarantee a precise tool first” → forced selection.
Chaining — two patterns:
- Chaining imposed by the software (preconditions, hooks) when the order is a business rule;
- Prompt-guided chaining when order is a preference. The exam tests the ability to choose the right one.
Error recovery — the taxonomy to recite:
| Error category | Example | Retryable? | Good response from the tool |
|---|---|---|---|
| Transient | timeout, service unavailable | Yes | errorCategory: "transient", isRetryable: true |
| Validation | invalid input format | Yes, after correcting the entry | Message specifying the expected format |
| Job | reimbursement above policy threshold | No | retryable: false + readable explanation |
| Permission | Access denied | No (climb) | Distinguish from a valid empty result |
The gold trap of Domain 2: distinguish “access failure” (you have to decide whether to retry or escalate) from “valid empty result” (the search worked, there are just no matches). A tool that returns an empty set in case of timeout masks failure as success — definite anti-model under examination.
Block 3 — Scenarios 3 & 7: Multi-agents & Conversational AI (20 min)
3.1 Scenario 3 — Multi-agent search system
The guide’s statement: coordinator who delegates to specialized sub-agents (web search, document analysis, synthesis, report generation). Output: full reports with quotes .
Domains summoned: 1 (heavily — this is the heart of the 27%), 2 (tool allocation), 5 (error propagation, provenance).
Hub-and-spoke architecture — the invariants:
- The coordinator owns all the communication inter-agents: decomposition, delegation, aggregation, error management. The subagents do not speak directly to each other (observability).
- Subagents have an isolated context : they do not inherit not of the coordinator’s history. Any necessary context must be explicitly included in their prompt . Recurring review question: a sub-agent produces an off-topic result → probable cause: the context of the previous phases was not transmitted to it.
- Parallelism : several calls
Taskin a single turn of the coordinator generate parallel sub-agents. THEallowedToolsof the coordinator must include"Task". - Prompts of the coordinator in objectives and quality criteria , not in step-by-step instructions (otherwise we lose the adaptivity which justifies multi-agents).
The three classic failures of scenario 3 — and their diagnosis:
| Symptom | Root cause | Correction |
|---|---|---|
| The report only covers part of the subject | Too narrow decomposition by the coordinator (he divided “creative industries” into 3 visual sub-themes) | Review the coordinator's decomposition prompt — the sub-agents did what they were asked to do |
| Subagent timeout → entire workflow fails or generic status | Poorly designed error propagation | Structured error context : type of failure, query attempted, partial results, alternatives — the coordinator decides |
| Latency +40% due to back and forth verification | The summary is passed back by the coordinator for each simple check | Graduated Least Privilege : give synthesis a tool verify_fact limited for the 85% of simple cases, keep the coordinator path for the complex |
Consensus and contradictions — the expected pattern: two credible sources give contradictory figures (40% vs 12%). The correct exam answer is not Never to choose heuristically, neither to escalate by blocking everything, nor to transmit without marking the conflict. It is : keep both values, explicitly annotate the conflict with source attribution, and let the coordinator reconcile . Add publication dates (a “contradiction” is often a temporal difference).
Quotes and provenance: the attribution is lost in the summary if we do not preserve the “affirmation → source” correspondences. Require structured output from subagents: assertion, URL/document name, citation, date. Refer to session 8 for full chain of provenance.
3.2 Scenario 7 — Conversational AI architectural models
The guide’s statement: multi-turn conversational systems — context window management, persistence of instructions across turns, memory strategies, design of tools for safe execution, ambiguous or contradictory inputs.
Domains summoned: 5 (heavily), 1, 4.
Structuring reminder #1 (the most tested): the API is stateless (stateless). Each query must return all necessary history. There is no "server-side session" in the Core Messages API. Stateful sessions are a application responsibility (or a feature of the SDK/Claude Code: --resume , fork_session ).
Memory strategies — the decision board:
| Strategy | Principle | When | Risk |
|---|---|---|---|
| Complete history | Returning everything at every turn | Short conversations | Saturation + quadratic cost |
| Sliding window | Keep only the last N turns | Sessions where the distant past doesn't matter | Loss of commitments made early |
| Progressive summary | Summarizing ancient tricks | Long sessions | THE numerical values, dates, amounts dissolve into vague summaries |
| Hybrid (summary + recent verbatim + block of facts) | Old summary + N verbatim rounds + persistent “case facts” excluding summary | Serious production | Implementation complexity |
The “case facts” pattern is the reflex response: extract transactional facts (order number, amounts, decisions taken, commitments) in a persistent block never summarized , injected at each turn. This is the #1 risk avoidance of the progressive summary.
Persistence of instructions: the instructions of the system prompt are diluted in very long conversations (“lost in the middle” effect: the model handles the beginning and the end well, less the middle). Parades: reinject critical constraints near the end of the context, structure with XML tags (XML = eXtensible Markup Language) separating system / data / instructions.
Ambiguous or contradictory entries: ask for clarification when the ambiguity relates to an irreversible action; for multi-aspect requests, explicitly break it down into separate elements and handle them one by one.
Block 4 — Scenarios 2, 4 & 5: Claude Code (25 min)
This is the densest block: three scenarios for Domain 3 (20%) plus part of Domain 1. Announce the structure: configuration (S2) → productivity (S4) → CI/CD (S5).
4.1 Scenario 2 — Code generation with Claude Code
The four configuration mechanisms — hierarchy to know by heart:
| Mechanism | Location | Scope | Shared via VCS (VCS = Version Control System)? |
|---|---|---|---|
| CLAUDE.md user | ~/.claude/CLAUDE.md |
All sessions of this user | No |
| CLAUDE.md project | CLAUDE.md root or .claude/CLAUDE.md |
The whole team on this repository | Yes |
| CLAUDE.md directory | project subdirectory | Files in this subtree | Yes |
| Targeted rules | .claude/rules/*.md with frontmatter paths: (global patterns) |
Loaded uniquely by editing corresponding files | Yes |
The classic examination diagnosis: “a new member of the team does not have the conventions” → they are at the level user instead of the level project . Variant: “testing conventions must apply to files **/*.test.tsx scattered everywhere » → .claude/rules/ with glob pattern, not A CLAUDE.md by directory (the files concerned are in too many directories), not everything in the CLAUDE.md root (constant context load).
Modularization: syntax @path (@./standards/coding-style.md ) to include external files; .claude/rules/ themes (testing.md, api-conventions.md) rather than a CLAUDE.md monolithic.
Slash Commands and Skills:
- Orders of project :
.claude/commands/(versioned, the whole team); orders personal :~/.claude/commands/. - Skills:
.claude/skills/with frontmatterSKILL.md—context: fork(execution in an isolated context, does not pollute the main session — reflex response for verbose skills),allowed-tools(tool restriction),argument-hint(parameter guidance).
Planning mode vs. direct execution — the decision rule:
- Outline mode : significant changes, several viable approaches, architectural decisions (restructuring a monolith, migration affecting dozens of files). Allows safe exploration before modification.
- Direct execution : simple and well understood change (a validation to add, a bug with clear stack trace in a single file).
- The subagent Explore isolates verbose discovery output (context protection).
- The answer “start live and switch to plan when things get stuck” is a distraction: it’s reactive, we’re already paying for the recovery.
4.2 Scenario 4 — Developer productivity tools
Integrated tools — who does what (almost guaranteed exam question):
| Tool | Use | Do not confuse with |
|---|---|---|
| grep | Search in the content files (function names, error messages, imports) | Glob (filenames) |
| Globe | Find files by name/extension patterns | Grep (content) |
| Read/Write | Read/write whole file | Edit (targeted modification) |
| Edit | Precise change by text match unique ; if not unique → fail → fallback Read + Write | |
| bash | Shell commands (tests, build, git) |
The exploration pattern of an unknown code base: Grep entry points → Read to trace flows → build understanding incrementally . On exam: “the agent must understand how function X is used through wrapper modules” → Grep on the name, then Read call sites.
MCP in Claude Code:
- Scope project :
.mcp.json(shared, for the team); scope user :~/.claude.json(personal experiences). - Secrets: Substitution of environment variables in
.mcp.json(${GITHUB_TOKEN}) — Never token in plain text in a versioned file. - THE MCP resources serve as “content catalogs” (database schemas, summaries) to avoid repeated calls to exploratory tools.
- Prefer MCP servers community to in-house servers for standard integrations (GitHub, databases).
4.3 Scenario 5 — Claude Code for continuous integration
Headless mode (headless = headless, non-interactive) — the exact flags:
# Le pipeline reste bloqué ? Il manque -p (--print) :
claude -p "Analyse cette pull request pour les problèmes de sécurité"
# Sortie structurée exploitable par le pipeline :
claude -p "Revue de sécurité de ce diff" \
--output-format json \
--json-schema review_schema.json
Recurring distractors: CLAUDE_HEADLESS=true , --batch , stdin redirection — Non-existent features or workarounds . The documented answer is -p / --print ⚠.
Architecture of an automated PR review (PR = Pull Request, merge request):
- Independent body for the review : the session which generated the code is less effective in revising it (it keeps its reasoning context and does not question its own decisions). Revise = new instance without generation context.
- CLAUDE.md as CI context : testing standards, review criteria, available fixtures — this is what makes the review relevant to THIS project.
- Minimize false positives : criteria explicit and categorical (“report: bugs, security; ignore: minor style”) rather than “be more conservative” (ineffective generic guidance). High false positive rates in one category undermine confidence in all others → temporarily disable noisy categories.
- Re-execution after new commits : include previous review results to only report new/uncorrected.
- Great PR : passes per file + inter-file integration pass (dilution of attention in a single pass — see session 8). The distractor: “take a model with a larger context window” — a larger window does not correct the quality of attention.
Batch vs real time in CI: verification blocking before merge → Synchronous API (developers wait); report of night (technical debt, weekly audit) → Message Batches API (−50% ⚠, processing window up to 24 hours ⚠, no latency SLA — SLA = Service Level Agreement, service level commitment). The Batch API does not support multi-turn tool calls in a query ⚠; correlation by custom_id ; in case of partial failure, resubmit only the failed elements.
Block 5 — Scenario 6: Extraction of structured data (15 min)
The guide’s statement: extract information from unstructured documents (invoices, contracts, semi-structured documents), validate using JSON schemas (JSON = JavaScript Object Notation), maintain high precision, manage edge cases.
Domains summoned: 4 (heavily), 5 (trusted calibration, human supervision).
5.1 The Reliable Extraction Stack — From Bottom to Top
tool_use+ JSON schema = the most reliable way to guarantee output conforming to the schematic. Eliminate errors from syntax JSON. Withtool_choice: "any"or forced, the model cannot respond in free text.- But the schema does not prevent semantic errors : totals that do not reconcile, value in the wrong field. Certain point of review: “we have a strict schema, why are there still errors?” » → the diagram validates the shape , not the sense .
- Design of the scheme against hallucination: fields optional/nullable when the source may not contain the information (a required field forces the model to invent); enums with
"other"/"unclear"+ detail field for extensibility. - Semantic self-check: extract at once
calculated_total(sum of rows) andstated_total(total displayed) to detect differences by programmatic comparison. - Retry with error feedback: return the original document + the incorrect extraction + the precise validation errors . Absolute limit: retry is ineffective if the information is absent from the source (it is in an external document) — detect it and route through human review, not loop.
- Few-shot for ambiguous cases: 2-4 examples showing correct extraction on documents different structures — the few-shot reduces extraction hallucinations.
5.2 Calibration and human supervision (Domain 5 in scenario 6)
The trap of aggregated metrics: “97% overall accuracy” can hide 60% on a minority document type or on a specific field. Exam Answers:
- Stratified random sampling high-confidence extractions (detect new error patterns);
- Accuracy by document type and field before automating anything;
- Field-level confidence scores , calibrated on a labeled validation set;
- Human Review Routing low confidence or ambiguous source extractions.
Expected production release sequence: sample → prompt iteration on the sample → stratified validation → calibrated confidence thresholds → automation with continuous sampling. Any exam option that automates 100% from “overall accuracy is good” is a distractor.
Block 6 — Exam simulator (20 min)
Unfolded:
- Open session web page, tab Exam simulator . 12 questions, 18 timed minutes (real pace: 90 seconds/question).
- Each participant works alone, under examination conditions (no documentation).
- At the end: individual score + collective correction of the 3 most failed questions (the page displays the room statistics if the trainer records the scores by show of hands).
During the correction, hammer out the method, not the answer: for each failed question, have people verbalize: “Which distractor family got me?” » (magic prompt / over-engineering / invented feature / symptom). The objective is for everyone to leave with the awareness of her dominant bias.
Time strategy to transmit:
- First pass: respond to everything that comes out < 60 sec, mark the rest ;
- Second passage: the marked questions, with the remaining time;
- Last minute: no empty questions (no penalty);
- Scenario-based questions take longer to read: read the question before the situation to know what to look for.
Block 7 — Revision plan & closing (5 mins)
- Domain tracker (web page, dedicated tab): each participant self-evaluates on the skills of the 5 areas with a level of confidence (🟢 mastered / 🟡 to review / 🔴 gap). The page calculates a readiness score weighted by exam weights .
- Prioritization rule: first revise the 🔴 of the heavy domains (D1 27%, D3 20%, D4 20%), then the 🟡. A 🔴 in D1 statistically costs ~4 questions; a 🔴 in D5, ~1.5.
- Logistics : check the official Anthropic page ⚠ for up-to-date terms and conditions (registration, monitoring, language, ironing policy). Remember that all numbers this session are volatile .
- Exit ticket: each participant notes their weakest scenario and their revision window. Announce the exercises (S1 architecture design, S3 comparison of approaches, S6 evaluation grid) and session 10.
Certification pitfalls — trainer’s cheat sheet
To distribute or project at the end of the session. The most profitable “quirks”:
- Deterministic vs probabilistic : critical business rule (money, identity, compliance) → hooks/preconditions, never the prompt alone.
- Tool descriptions = selection mechanism n°1. First correction in case of bad routing, before few-shot or routing layer.
- Subagents = isolated context. Nothing is inherited; everything happens explicitly in the prompt.
- Decomposition too narrow : when coverage of a report is partial, suspect the coordinator, not the subagents.
- Structured error > generic status ; access failure ≠ valid empty result; never mask failure as success.
-p/--printfor headless;--output-format json+--json-schemafor the IC.CLAUDE_HEADLESS,--batch: do not exist ⚠..claude/commands/= team (versioned);~/.claude/commands/= personal. Same logic for.mcp.json(project) vs~/.claude.json(user)..claude/rules/+ glob patterns when conventions apply per file type across the entire code base.- JSON schema = syntax guaranteed, semantics not guaranteed. Nullable field against hallucination; useless retry if the information is missing from the source.
- Batch : −50% ⚠, ≤ 24 h ⚠, no SLA → never for blocking;
custom_idto correlate; resubmit only failures. - Low self-review : independent body to review; passes per file + integration pass for large PRs; “larger context window” does not repair attention.
- Feeling ≠ complexity; self-rated confidence ≠ reliable. Escalation on explicit criteria; explicit human request = immediate escalation.
- Progressive summary dilutes the numbers → “case facts” block persisting outside the summary.
- Aggregated metrics lie → stratify by document type and field; confidence at field level.
- No penalty on the exam → respond to everything, always.
Appendix — Correspondence scenarios × domains
| Scenario | D1 (27%) | D2 (18%) | D3 (20%) | D4 (20%) | D5 (15%) |
|---|---|---|---|---|---|
| S1 Customer Support | ●● | ●● | ● | ●● | |
| S2 Code generation | ● | ●●● | ● | ||
| S3 Multi-agent search | ●●● | ● | ●● | ||
| S4 Dev Productivity | ● | ●● | ●● | ● | |
| S5 Claude CI/CD code | ●●● | ●● | ● | ||
| S6 Structured extraction | ● | ●●● | ●● | ||
| S7 Conversational AI | ●● | ● | ● | ●●● | |
| S8 Agentic Tools | ●● | ●●● | ● | ● |
(●●● = dominant domain, ●● = strongly present, ● = present)
Strategic reading: D1 and D3 are everywhere — impossible to be weak there. D2 focuses on S1/S4/S8. D4 is mainly played on S5/S6. D5 is diffuse but peaks on S7.