Repair the review collector contract
Objectives
Halcyon Clinics needs a read-only review export. The draft collector treats throttling as end-of-data and calls string-valued decisions acceptable because they parse. Its author also proposes putting the credential in the query string so troubleshooting is easier.
Write the YAML plan using the fixture contract. Fill every empty scalar, use actual YAML booleans for flags, and preserve incomplete-run failures. This plan specifies behavior; it does not contain a live secret.
Export contract and acceptance requirements
Resource: /reviews; read-only collection method required. Response media type: application/json. Schema: approved is required and boolean; reject invalid records. Paging: next_cursor; stop only at null; snapshot contains 243 records. Throttle: HTTP 429, Retry-After: 20; retry the pending page after the delay. On exhausted retries: mark the run incomplete. Credential: bearer token in Authorization header, never query parameters.
Checks the server runs (6)
- Read the specified JSON collection
- Reject non-boolean decisions
- Follow cursors and reconcile the population
- Respect the throttle and preserve the pending page
- Fail closed on exhausted retries
- Keep bearer credentials in the authorization header
Check names are all you see here: the expectations that decide pass or fail, and the reference solution, stay on the server.
Step-by-step hints
The guided walkthrough, in full. It is free: no XP cost, and it does not touch the paid hint ladder or the reveal gate.
- Step 1
Choose the read boundary
Identify the method that requests no state change, the collection address, and the representation media type supplied by the contract.
Read the specified JSON collection
- Step 2
Validate meaning after parsing
Find the decision property's required type and decide whether a type mismatch can enter the evidence set.
Reject non-boolean decisions
- Step 3
Define collection completion
Use the response continuation field, its terminal condition and the independent population count. A page limit is not the population size.
Follow cursors and reconcile the population
- Step 4
Separate delay from failure
Translate the fixture's throttle response into a delay without moving collection progress. Decide how a run must be labelled if recovery is exhausted.
Respect the throttle and preserve the pending pageFail closed on exhausted retries
- Step 5
Keep the secret out of the address
Locate the credential's transport field and credential scheme in the contract. Specify placement rather than copying a real credential.
Keep bearer credentials in the authorization header
Rules summary
XP on pass
40 bonus XP the first time every check goes green.
Paid hints
2 available. Each costs 25% of the lab XP (about 10 XP).
Reveal solution
Scores 0 XP and unlocks only after 3 check runs.
Attempt cap
60 check runs per learner. The runner warns you in the last 10.
Drafts
Your editor content is saved in this browser, so a reload will not lose work.
Walkthrough
Always free and never penalised: use it before spending a hint.