{
  "schema": "MAKNOW_SAFE_LOCAL_SCENARIO_v1",
  "lesson_id": "WEB-007",
  "lab_id": "WEB007-LAB1",
  "purpose": "Implement a local SSE notifications fixture that emits named events with IDs, deliberately disconnect the client, resume from a recorded ID, and prove how duplicates/gaps are handled by an idempotent consumer view.",
  "environment": "Publisher-provided local HTTP server/browser test fixture with deterministic event log and forced disconnect control.",
  "fixture": "A dashboard needs progress updates for a long-running job. Choose SSE only if one-way streaming fits, define resume behavior, and prove the UI remains correct after a forced disconnect and duplicate replay.",
  "expected_artifact": "SSE Resume and Delivery Evidence Record v1",
  "failure_probes": [
    "omit event IDs and attempt resume after disconnect",
    "replay the last event and let the UI apply it twice",
    "send the wrong MIME type or malformed record separator",
    "buffer all events until connection close and mistake it for streaming"
  ],
  "safety_constraints": "Local non-destructive fixture only; no credentials, privileged host changes or required outbound network."
}
