Guided Lab
Project: an inspectable local API client
Download Orientation Toolkit. Use Python 3.9+ with the standard library. Read the web contract in its README. python3 check.py web starter initially raises NotImplementedError.
- Implement
interpretinweb_starter.pyusing the response-boundary fixtures. Follow the exact status/media-type/size/encoding/shape/type/range contract. - Run
python3 check.py web starter. Add an independently expected boundary case, such as repeated sessions at both 1 and 240. - Read
transport.pyand identify its local-host restriction, timeout, read limit and HTTP error handling. Explain why it disables redirects rather than automatically following a new destination. - Run
python3 check.py web starter --live. It opens a temporary loopback server, sends actual requests and closes it. If the environment blocks binding, record this as pending and complete fixture work; do not claim live validation. - For manual inspection run
python3 server.py, copy its printed port and usepython3 cli.py web starter http://127.0.0.1:PORT/sessions. Try/empty,/missing,/broken,/wrong-typeand/unavailable, then stop the server with Ctrl+C. - Preserve actual command/output and one diagnosis. Complete the independent transfer before consulting calibration.
Deliver implementation, fixture checks, live evidence and an exchange diagram. Do not deploy this server. It serves authored data and implements no account, TLS or database. Network timeout behavior is described but the default checker does not simulate every timeout or partial delivery.