Questions? Call 1.800.716.8955

Claude Certified Architect: Foundations

Practice exam 3 (full length, 60 questions)

A second full-length exam using a different scenario draw: Code Generation with Claude Code, Multi-Agent Research System, Customer Support Resolution Agent and Structured Data Extraction. Together with Practice exam 2, it covers all six scenarios at full depth. Take it last, under exam conditions: 120 minutes, no notes.

Scenario A: Code Generation with Claude Code (questions 1 to 15)

Your team uses Claude Code for generation, refactoring, debugging and documentation, with shared configuration in the repository.

  • 1. The team wants every session to follow the same commit-message format. Where should the rule go?
  • A. In each developer's ~/.claude/CLAUDE.md.
  • B. In the project CLAUDE.md, committed to the repository.
  • C. In a skill that developers invoke before committing.
  • D. In a .claude/rules/ file scoped to **/*.md.
  • 2. React conventions apply to components in src/components/ and also in packages/*/ components/. What is the most maintainable way to apply them automatically?
  • A. A CLAUDE.md in src/components/ only.
  • B. Copy the conventions into every package's CLAUDE.md.
  • C. A skill named react-conventions.
  • D. A .claude/rules/ file whose paths globs match both locations.
  • 3. A developer wants a stricter personal version of the team's /deploy-check command without affecting anyone else. What should they do?
  • A. Copy it to ~/.claude/commands/ under a different name and customise the copy.
  • B. Edit .claude/commands/deploy-check.md and not commit it.
  • C. Add their checks to the project CLAUDE.md.
  • D. Ask Claude to remember the extra checks.
  • 4. A brainstorming skill generates ten alternative designs, which clutter the main conversation. Which frontmatter setting helps?
  • A. allowed-tools: Read
  • B. argument-hint: <topic>
  • C. context: fork
  • D. description: brief
  • 5. A skill needs a ticket ID, and developers often invoke it without one. Which frontmatter setting helps?
  • A. context: fork
  • B. argument-hint: <ticket-id>
  • C. allowed-tools: Bash
  • D. required: ticket-id
  • 6. A teammate built a /standup command, but nobody else can run it. What is the most likely cause?
  • A. Commands need a restart to load.
  • B. The command file has no frontmatter.
  • C. The command name is reserved.
  • D. It lives in the teammate's ~/.claude/commands/.
  • 7. A package's maintainers want its CLAUDE.md to include only the API standards file from a shared docs/standards/ folder. What should they use?
  • A. An @import of that one standards file in the package's CLAUDE.md.
  • B. A copy of the file pasted into the package's CLAUDE.md.
  • C. A symbolic link to the whole standards folder.
  • D. A skill that loads all standards.
  • 8. You need to add one field to one DTO, with a clear specification. Which approach fits?
  • A. Plan mode.
  • B. The Explore subagent first.
  • C. Direct execution.
  • D. A forked session.
  • 9. You must choose between event sourcing and simple CRUD for a new module that other services will depend on. Which approach fits?
  • A. Direct execution with a detailed prompt.
  • B. Plan mode, to explore and compare approaches before changing code.
  • C. Implement both and see which works.
  • D. Direct execution, switching to plan mode if trouble appears.
  • 10. You are implementing payment idempotency, a domain you have not worked in. What technique surfaces considerations you might miss?
  • A. Ask for the implementation immediately and review it.
  • B. Provide a long specification.
  • C. Use plan mode with no further input.
  • D. Have Claude interview you with questions about failure modes and edge cases before implementing.
  • 11. A date-parsing bug affects sorting, which affects pagination. How should you report these to Claude?
  • A. In one detailed message, because the fixes interact.
  • B. One at a time, starting with pagination.
  • C. One at a time, in random order.
  • D. Only the pagination bug, since it is visible.
  • 12. You have two unrelated bugs, in logging and in a CSV export. How should you report them?
  • A. In one message, to save time.
  • B. Only the more severe one.
  • C. One at a time, since they are independent.
  • D. As a single combined test case.
  • 13. A migration script mishandles null values in one column. What is the most effective way to get it fixed?
  • A. Ask Claude to "handle nulls properly".
  • B. Give a specific test case with example input containing nulls and the expected output.
  • C. Rewrite the script yourself.
  • D. Switch to plan mode.
  • 14. Claude behaves differently for two developers in the same repository. What should you check first?
  • A. Their Claude Code versions only.
  • B. Their network connections.
  • C. Their operating systems.
  • D. Which memory files /memory shows as loaded in each session.
  • 15. A rules file with paths: ["terraform/*"] does not load when Claude edits terraform/ modules/vpc/main.tf. What is the fix?
  • A. Change the glob to terraform/**/*.
  • B. Move the rules into the root CLAUDE.md.
  • C. Add a CLAUDE.md in terraform/modules/vpc/.
  • D. Rename the file to terraform.md.

Scenario B: Multi-Agent Research System (questions 16 to 30)

A coordinator delegates to search, document analysis, synthesis and report subagents, producing cited reports.

  • 16. A simple factual question ("When did the regulation take effect?") still runs the full fouragent pipeline. What should change?
  • A. Add a cache in front of the pipeline.
  • B. Use a faster model for every agent.
  • C. Have the coordinator assess each query and invoke only the subagents it needs.
  • D. Remove the report subagent.
  • 17. Two search subagents return heavily overlapping results. What is the fix?
  • A. Deduplicate results after synthesis.
  • B. Partition the search scope between them, for example by subtopic or source type.
  • C. Use only one search subagent.
  • D. Run them sequentially.
  • 18. The coordinator gives subagents a step-by-step procedure. When an expected source is missing, they stall. What would help?
  • A. A longer procedure with more cases.
  • B. Fewer subagents.
  • C. A higher maximum number of turns.
  • D. Briefs that state the research goal and quality criteria instead of fixed steps.
  • 19. After synthesis, nobody can tell which claim came from which source. What should subagents produce?
  • A. Structured claim-source mappings that synthesis must preserve.
  • B. Longer summaries.
  • C. A list of URLs at the end.
  • D. Their full transcripts.
  • 20. The synthesis subagent's prompt says "use the previous results". Its output is generic. What is wrong?
  • A. The synthesis model is too small.
  • B. Synthesis needs more tools.
  • C. The coordinator must include the complete findings in the prompt; subagents do not inherit context.
  • D. Results must be stored in a database.
  • 21. A report treats a 2015 recycling rate and a 2023 rate as contradictory. What prevents this?
  • A. Discard older sources.
  • B. Require subagents to include publication or collection dates with each claim.
  • C. Average the figures.
  • D. Ask synthesis to choose the most credible one.
  • 22. When search fails, the coordinator receives only "search unavailable". What should it receive instead?
  • A. Nothing; the subagent should keep retrying.
  • B. An empty result set.
  • C. An exception that stops the workflow.
  • D. Structured context: failure type, attempted query, partial results and alternatives.
  • 23. The synthesis subagent was given the full web search toolset and now runs its own searches, duplicating work. What is the better design?
  • A. Remove its search tools; give it a scoped verify_fact tool and route deeper research through the coordinator.
  • B. Let it search but limit it to five searches.
  • C. Remove the search subagent instead.
  • D. Add "do not search" to its prompt.
  • 24. Financial comparisons are buried in long paragraphs. What should synthesis do?
  • A. Shorten the paragraphs.
  • B. Move numbers to an appendix.
  • C. Render financial data as tables, news as prose and technical findings as structured lists.
  • D. Convert everything to bullet points.
  • 25. You want the coordinator to keep researching until coverage is sufficient. What pattern is this?
  • A. A fixed pipeline.
  • B. An iterative refinement loop: check for gaps, re-delegate targeted queries, re-synthesise.
  • C. A batch job.
  • D. Self-review in the same session.
  • 26. The synthesis agent has a small context budget and receives verbose subagent reasoning. What should change upstream?
  • A. Nothing; truncate the input.
  • B. Use a larger model for synthesis.
  • C. Summarise everything into one paragraph.
  • D. Have upstream agents return structured key facts, citations and relevance scores.
  • 27. One of five search subagents fails after local retries. What should the coordinator do?
  • A. Proceed with the available results and annotate the coverage gap in the report.
  • B. Abort the whole report.
  • C. Present the report as complete.
  • D. Restart all five subagents.
  • 28. (Choose two.) What belongs in a subagent's structured error report?
  • A. The failure type.
  • B. The query that was attempted.
  • C. The model's internal stack trace.
  • D. The subagent's full conversation transcript.
  • 29. Synthesis receives results from ten subagents and tends to omit findings from those in the middle. What helps?
  • A. Give synthesis more subagents.
  • B. Shuffle the order each time.
  • C. Put a key-findings summary first and organise detailed results under clear headers.
  • D. Remove the middle results.
  • 30. You want to compare two report structures built from the same completed research. What should you use?
  • A. Two fresh sessions that re-run the research.
  • B. fork_session from the research baseline.
  • C. --resume twice in sequence.
  • D. Plan mode.

Scenario C: Customer Support Resolution Agent (questions 31 to 45)

Your Agent SDK support agent uses MCP tools get_customer, lookup_order, process_refund and escalate_to_human.

  • 31. After a long conversation is summarised, the agent quotes the refund amount as US45insteadofUS54. What prevents this?
  • A. Summarise less often.
  • B. Ask the customer to confirm amounts each turn.
  • C. Use a larger context window.
  • D. Keep amounts in a case facts block outside the summarised history.
  • 32. Midway through investigating, the customer writes "I want a manager, now." What should the agent do?
  • A. Escalate immediately with a structured hand-off.
  • B. Finish the investigation first, then escalate.
  • C. Offer a discount to keep the customer engaged.
  • D. Ask why they want a manager.
  • 33. A customer asks for a refund on a digital gift card. Policy covers physical goods only. What should the agent do?
  • A. Refuse, because gift cards are not covered.
  • B. Refund, because it is similar to a physical product.
  • C. Escalate, because the policy does not address this request.
  • D. Offer store credit instead.
  • 34. get_customer returns the same response for "no such customer" and "service timeout". What should change?
  • A. Return a default customer.
  • B. Return a valid empty result for no match and a structured, retryable error for the timeout.
  • C. Retry every call three times.
  • D. Remove the tool.
  • 35. The agent sometimes calls process_refund before lookup_order has confirmed eligibility. What is the most effective fix?
  • A. Add examples of the correct order.
  • B. Mention the order in the tool description.
  • C. Use a larger model.
  • D. Block process_refund programmatically until eligibility has been confirmed in this session.
  • 36. Finance needs every refund capped at US$500 without exception. Where should this be enforced?
  • A. A pre-tool hook on process_refund.
  • B. The system prompt.
  • C. A daily report reviewed by finance.
  • D. Few-shot examples.
  • 37. lookup_order's description is "Gets order". The agent sometimes uses get_customer for order questions. What is the first fix?
  • A. Merge both tools.
  • B. Add a keyword router.
  • C. Expand both descriptions with inputs, examples and when to use each.
  • D. Remove get_customer.
  • 38. What should an escalation to a human include?
  • A. Only the customer's name.
  • B. Customer ID, issue, root cause, amounts, actions taken and the recommended action.
  • C. The agent's apology text.
  • D. A sentiment score.
  • 39. When customers mention several orders, the agent mixes up their details. What helps most?
  • A. Ask customers to contact support once per order.
  • B. Use a bigger context window.
  • C. Escalate all multi-order cases.
  • D. Keep a structured record per issue (order ID, amount, status) separate from the conversation history.
  • 40. Order results include internal warehouse notes that confuse the agent. What should you do?
  • A. Filter results to the fields the agent needs before they reach it.
  • B. Tell the agent to ignore warehouse notes.
  • C. Escalate orders with notes.
  • D. Add examples of ignoring notes.
  • 41. The agent escalates whenever sentiment is negative. Escalation rates are high and many cases were simple. What is the fix?
  • A. Raise the sentiment threshold.
  • B. Add a second sentiment model.
  • C. Replace sentiment triggers with explicit escalation criteria and few-shot examples.
  • D. Escalate only after three negative messages.
  • 42. A customer gives an order number but no other identity details. What should happen?
  • A. Look up and discuss the order immediately.
  • B. Verify the customer with get_customer first; the gate blocks order tools until then.
  • C. Escalate to a human.
  • D. Ask for the customer's password.
  • 43. get_customer returns two customers with the same name and city. What should the agent do?
  • A. Choose the customer with more orders.
  • B. Choose the one with the most recent order.
  • C. Escalate.
  • D. Ask for another identifier, such as email or an order number.
  • 44. process_refund returns refund_window_expired. What should the tool's response enable the agent to do?
  • A. Recognise a non-retryable business error and explain the policy to the customer.
  • B. Retry with a later date.
  • C. Retry until it succeeds.
  • D. Tell the customer the system is down.
  • 45. (Choose two.) Which are appropriate escalation triggers?
  • A. The customer explicitly asks for a human.
  • B. The policy does not cover the request.
  • C. The customer's tone is negative.
  • D. The model reports low confidence.

Scenario D: Structured Data Extraction (questions 46 to 60)

Your system extracts data from unstructured documents, validates it with JSON schemas and feeds downstream systems.

  • 46. warranty_period is a required string. Many documents have no warranty, and the model invents one. What is the fix?
  • A. Add "do not invent" to the prompt.
  • B. Delete the field.
  • C. Make the field nullable.
  • D. Default it to "12 months".
  • 47. There is exactly one extraction schema, and you must guarantee it is used. Which tool_choice?
  • A. {"type": "auto"}
  • B. {"type": "tool", "name": "extract_record"}
  • C. {"type": "none"}
  • D. No tool_choice; rely on the prompt.
  • 48. There are two schemas, for purchase orders and quotes, and the document type is unknown. Which tool_choice?
  • A. {"type": "auto"}
  • B. Force the purchase-order tool.
  • C. Force the quote tool.
  • D. {"type": "any"}
  • 49. What does a strict JSON schema via tool use not prevent?
  • A. Semantic errors such as totals that do not add up.
  • B. Invalid JSON syntax.
  • C. Missing required keys.
  • D. Values of the wrong type.
  • 50. Validation rejects "13/25/2026" as a date. What should happen?
  • A. Drop the record.
  • B. Store it as-is.
  • C. Retry with the document, the failed extraction and the specific error.
  • D. Replace it with today's date.
  • 51. A value is "per the attached schedule", and the schedule was not provided. What is true?
  • A. Retrying with feedback will fix it.
  • B. Retries will not help, because the information is absent from the input.
  • C. A larger model will find it.
  • D. The model should estimate it.
  • 52. Documents describe sizes informally ("about three feet", "roughly 1m"), and extraction is inconsistent. What helps most?
  • A. Make the field optional.
  • B. Use a regular expression.
  • C. Increase max_tokens.
  • D. Add normalisation rules and few-shot examples covering informal measurements.
  • 53. Which statement about the Message Batches API is true?
  • A. It cannot run multi-turn tool calls within a single request.
  • B. It guarantees results within one hour.
  • C. It costs the same as the synchronous API.
  • D. It returns results in submission order.
  • 54. Batches take up to 24 hours, and you submit every 4 hours. What is the worst-case time from a document's arrival to its result?
  • A. 4 hours.
  • B. 24 hours.
  • C. About 28 hours.
  • D. 48 hours.
  • 55. You are about to process a million documents for the first time. How do you reduce costly resubmissions?
  • A. Submit in one batch.
  • B. Refine the prompt on a representative sample first.
  • C. Use the synchronous API.
  • D. Skip validation.
  • 56. Human reviewers can check only 5% of documents. Which should they see first?
  • A. A random 5%.
  • B. The shortest documents.
  • C. The newest documents.
  • D. Low-confidence extractions and documents with ambiguous or contradictory sources.
  • 57. How do you keep measuring the error rate of extractions you no longer review routinely?
  • A. Stratified random sampling of high-confidence extractions.
  • B. Wait for complaints.
  • C. Ask the model to self-audit.
  • D. Review only failed validations.
  • 58. Field-level analysis shows tax_id is 99% accurate on invoices but 74% on receipts. What should you do?
  • A. Accept the 95% average.
  • B. Remove tax_id.
  • C. Keep human review for tax_id on receipts until it improves.
  • D. Retrain the model.
  • 59. Some documents genuinely could fit two categories. What schema feature helps?
  • A. Making category free text.
  • B. An unclear enum value for ambiguous cases.
  • C. Forcing the first matching category.
  • D. Removing the category.
  • 60. (Choose two.) What should a retry request after a validation failure include?
  • A. The original document.
  • B. The specific validation errors.
  • C. A higher temperature.
  • D. A different model.

Answer key for Practice exam 3

# Answer Domain Why

1 B 3 Project CLAUDE.md is shared through version control.

2 D 3 Glob-scoped rules cover files across directories.

3 A 3 Personal variants go in ~/.claude/ under a new name.

4 C 3 context: fork isolates verbose output.

5 B 3 argument-hint prompts for missing arguments.

6 D 3 User-scoped commands are not shared.

7 A 3 @import includes exactly the files a package needs.

8 C 3 Small, clear changes suit direct execution.

9 B 3 Architectural choices with alternatives suit plan mode.

10 D 3 The interview pattern surfaces unknowns first.

11 A 3 Interacting issues go in one message.

12 C 3 Independent issues are fixed one at a time.

13 B 3 Specific input and expected output fix edge cases.

14 D 3 /memory shows which memory files are loaded.

15 A 3 * matches one level; **/* matches all levels.

16 C 1 Coordinators choose subagents per query.

17 B 1 Partition scope to avoid duplication.

18 D 1 Goals and quality criteria let subagents adapt.

19 A 5 Claim-source mappings preserve provenance.

20 C 1 Subagent context must be passed explicitly.

21 B 5 Dates stop temporal differences looking like contradictions.

22 D 5 Structured error context enables recovery.

23 A 2 Scope tools by role; add narrow cross-role tools.

24 C 5 Fit format to content type.

25 B 1 Iterative refinement until coverage is sufficient.

26 D 5 Structured upstream output saves downstream context.

27 A 5 Proceed with partial results and annotate gaps.

28 A, B 5 Failure type and attempted query, plus partial results and alternatives. 29 C 5 Mitigate position effects with ordering and headers.

30 B 1 Fork from a shared baseline.

31 D 5 Case facts survive summarisation.

32 A 5 Honour explicit requests for a human immediately.

33 C 5 Policy gaps trigger escalation.

34 B 2 Distinguish empty results from access failures.

35 D 1 Programmatic prerequisites enforce order.

36 A 1 Hooks guarantee hard limits.

37 C 2 Better descriptions are the first fix.

38 B 1 Structured hand-offs for humans without the transcript.

39 D 5 Per-issue structured records for multi-issue sessions.

40 A 5 Trim tool output to relevant fields.

41 C 5 Sentiment is not complexity; use explicit criteria.

42 B 1 Identity verification gates order tools.

43 D 5 Ask for identifiers instead of guessing.

44 A 2 Non-retryable business errors with explanations.

45 A, B 5 Explicit requests and policy gaps are triggers.

46 C 4 Nullable fields prevent fabrication.

47 B 4 Forced tool selection guarantees that tool.

48 D 4 any guarantees a call when the type is unknown.

49 A 4 Schemas do not catch semantic errors.

50 C 4 Retry with error feedback.

51 B 4 Absent information cannot be retried into existence.

52 D 4 Normalisation rules and few-shot examples.

53 A 4 No mid-request tool calls in batches.

54 C 4 Up to 4 hours waiting plus up to 24 hours processing.

55 B 4 Refine on a sample before large batches.

56 D 5 Prioritise low-confidence and ambiguous documents.

57 A 5 Stratified sampling measures ongoing error rates.

58 C 5 Segment-level weaknesses keep human review.

59 B 4 unclear handles genuine ambiguity.

60 A, B 4 Document, failed extraction and specific errors.

Scoring. 48 or more correct (80%) suggests readiness. Domain counts in this exam: Domain 1 has 10 items, Domain 2 has 4, Domain 3 has 15, Domain 4 has 12 and Domain 5 has 19. Together, Practice exams 2 and 3 give 120 items across all five domains and all six scenarios. Tempting wrong answers in Practice exam 3

# Tempting answer Why it fails

1 C A skill must be invoked; the rule must always apply (4.2).

2 A A directory CLAUDE.md misses packages/*/components/ (4.3).

3 B Uncommitted edits to a shared file are fragile and confusing (4.2).

4 A Restricting tools does not isolate output (4.2).

5 D required is not a skill frontmatter field (4.2).

6 A Restarts do not share a user-scoped file (4.2).

7 B Pasted copies drift from the source (4.1).

8 A Plan mode adds overhead to a clearly specified change (4.4).

9 D The complexity is known up front; plan from the start (4.4).

10 B A long spec reflects only what you already know to ask (4.5).

11 B Fixing interacting bugs one by one causes churn (4.5).

12 A Mixing independent fixes makes each harder to verify (4.5).

13 A "Handle nulls properly" is vague; examples are precise (4.5).

14 A Version differences are possible, but loaded memory is the likelier cause (4.1). 15 C A directory file fixes one folder, not the pattern (4.3).

16 A Caching hides the cost; the routing is still wrong (2.2).

17 A Deduplicating afterwards still wastes the search effort (2.2).

18 A More procedure means less adaptability (2.3).

19 C A URL list at the end loses which claim came from where (6.6).

20 A Model size cannot compensate for missing input (2.3).

21 A Discarding older data loses valid history (6.6).

22 A Endless retries delay without informing the coordinator (6.3).

23 D A prompt rule is weaker than scoping the tools (3.3).

24 D Uniform bullets suit no content type well (6.6).

25 A A fixed pipeline cannot respond to gaps (2.2).

26 B A larger model does not remove the noise in its input (6.1).

27 B Aborting wastes the four successful searches (6.3).

28 D A full transcript buries the useful context (6.3).

29 B Shuffling moves the blind spot around without removing it (6.1).

30 A Re-running research is costly and changes the baseline (2.7).

31 C A larger window delays but does not protect the fact (6.1).

32 B The customer has already asked; investigating first ignores them (6.2).

33 A Refusing treats a policy gap as a "no" (6.2).

34 C Retrying "no such customer" wastes calls (3.2).

35 A Examples improve but do not guarantee ordering (2.4).

36 B The prompt cannot guarantee a cap (2.5).

37 B A keyword router is over-engineered as a first step (3.1).

38 D Sentiment does not help a human resolve the case (2.4).

39 B A larger window does not separate the issues (6.1).

40 B Telling the model to ignore data it still sees is unreliable (6.1).

41 A A higher threshold on the wrong signal is still the wrong signal (6.2).

42 A Skipping verification is exactly what the gate prevents (2.4).

43 A Order count is a heuristic (6.2).

44 B The error is a policy outcome, not a timing problem (3.2).

45 C Tone is not a trigger (6.2).

46 A The required field still pressures the model to fill it (5.3).

47 A auto allows a text reply (5.3).

48 A auto allows a text reply; forcing one tool guesses the type (5.3).

49 D Types are enforced by the schema (5.3).

50 B Storing invalid data pushes the error downstream (5.4).

51 A Feedback cannot create missing information (5.4).

52 B A regex cannot interpret "about three feet" (5.2).

53 D Results are matched by custom_id, not order (5.5).

54 B Forgets the wait for the next submission window (5.5).

55 C The synchronous API costs twice as much at this volume (5.5).

56 A Random review wastes scarce reviewer time (6.5).

57 C Self-audits are not independent measurement (6.5).

58 A The average hides the weak segment (6.5).

59 C Forcing the first match hides ambiguity (5.3).

60 C Temperature does not tell the model what was wrong (5.4).

Use ← → to move between sections