Worked Examples
Same transport, different meaning
/sessions returns 200, application/json and a three-session list totaling 65. /empty returns the same status/media type but an empty list: this is a valid result with total 0. /missing returns 404: even a parseable JSON body cannot satisfy the success contract.
A success status is only one boundary
/broken returns 200 and application/json but malformed JSON. Interpretation must fail before a report is produced. /wrong-type returns text/html, so rejection occurs before JSON parsing. Naming the failing boundary makes the defect easier to diagnose.
The untested network
A local exchange exercises client/server communication on one machine. It does not establish DNS resolution, TLS trust, Internet reliability, authentication or browser CORS behavior. Keep those limitations in the report; later semesters introduce them explicitly.