Ready
The semantic contract, state ownership, security boundary, failure recovery, budgets, traces, and acceptance suite remain coherent under injected failures.
API lesson 08 · Ship the API boundary
Shared system · deterministic provider fixtures
Harbor Support Drafting API. One bounded request moves through typed items, tools, state, budgets, and evidence without live provider calls.
01 · Smallest useful mechanism
The capstone assembles a support-drafting endpoint with streaming previews, a structured final draft, a read-only policy tool, explicit state, bounded retries, privacy-preserving traces, and an evaluation hook.
Provider portability follows from semantic contracts and evidence—not identical JSON.
02 · Experiment
Deterministic protocol fixture
This workbench uses inspectable provider-event fixtures and injected failures. It does not make live calls or execute external effects.
Protocol workbench · harbor-capstone-v1
Injected failure
All candidates pass the golden path; only one preserves controls during provider and tool failures.
The trace has not run.
Commit to an implementation, then inject the failure and inspect the actual state transitions.
03 · Implementation brief
Your learning artifact
Stored only in this browser. No account required; course reset does not delete it.
Capstone decision rubric
The semantic contract, state ownership, security boundary, failure recovery, budgets, traces, and acceptance suite remain coherent under injected failures.
The happy path works, but a capability, terminal state, ownership rule, compatibility case, or recovery invariant remains implicit.
The design executes untrusted proposals, relies on stale or hidden authority, retries unknown effects blindly, leaks sensitive data, or hides failure behind a polished final answer.
04 · Check your understanding
Primary sources · verified 2026-08-02
Individual mechanisms can be correct while their composition creates deadline overruns, stale authority, tool-result confusion, data leakage, or misleading success states.
Common mistake: Passing one end-to-end happy-path test proves production readiness. Readiness requires versioned contracts, representative failures, security controls, repeated evaluations, operational limits, and a rollback decision.
Transfer exercise: Run the same acceptance suite through two provider adapters and force streaming loss, stale policy, 429, malformed output, and tool-result injection.
Next: The next course replaces application-specific tool declarations with a standard client–server protocol: MCP.