{
  "test": "wrapper/runtime_switch_e2e_test.mjs --live-home: continuity_project",
  "result": "passed",
  "recording": "continuity-project.webm",
  "recording_sha256": "2c4fed4fccf6d31134a87c7c280f020bf4280c7be4fca9fd8fa79a76b155b123",
  "recorded_at": "2026-10-06T23:22:33.290Z",
  "duration_seconds": 26.2,
  "build_commit": "768b5e7c5f1b40431d77d27994eb9eba24eb5ac6",
  "source_sha256": "d04344b7d8400925516b50ba987051b8a89fda1c155ad3c7ac528ba8cd68203a",
  "dirty_working_tree": true,
  "shows": "One uncut real Home workflow. Gemma saves step 1; Qwen automatically completes step 2 after the normal model switch and fresh writer claim. Same resident/session and Goal, unchanged skill pins, open commitments, constraints and standing refusals. The keeper's earlier genuine unsupported claims are visible in the retained action log.",
  "does_not_show": "All providers, arbitrary skill execution, zero-click writer acquisition, personal identity, or a newly elicited refusal. The qualified result discloses every harness change.",
  "acceptance_scope": {
    "shows": "Gemma accepts a Goal and produces an outline; Home records actual artifact progress and constraints. Qwen continues and writes the final artifact after the normal switch and writer claim, without an operator message. Same Goal, skill pins, open commitments and unchanged refusal records. The resident boundary choice is disclosed, not forced.",
    "does_not_show": "All model combinations, arbitrary external tools, or zero-click writer acquisition; the normal fresh writer claim is shown."
  },
  "harness_changes": [
    "home-record-keeper-1: deterministic claim checks and visible INVALID_PROPOSAL; no silent retry",
    "Home pins step output and progress atomically from the actual artifact receipt, not a model checkpoint",
    "Exact offered boundary has one structured resident yes/no choice; NO_REFUSAL is valid",
    "Explicit owner step count is constrained in the Goal schema; resident still chooses acceptance",
    "Typed owner file constraints cannot be replaced by narration; refusal execution is scoped to exact action/target, with original reasons preserved in Home",
    "Work context projects only relevant exact refusal targets; every standing refusal remains stored and enforced at dispatch",
    "Accepted Goal dispatch uses the current typed work step, not a replay of the intake/choice ceremony; the original request stays saved",
    "Skill election preserves availability and pins; unrelated artifact dispatch no longer globally invokes every elected skill body",
    "The complete JSON response envelope accompanies the unchanged decoder schema; incomplete responses remain UNKNOWN and cannot create output progress",
    "Conversation reopen reads current Home work state; artifact disclosures survive refresh, and actual action-log rows are opened and checked on camera",
    "Continuity checks unchanged refusal records, without requiring adoption in that scene; refusal demo is separate"
  ],
  "beats": [
    {
      "time": 15,
      "label": "Qwen selected"
    },
    {
      "time": 20,
      "label": "Retained action log"
    },
    {
      "time": 23,
      "label": "Finished brief opened"
    }
  ],
  "captions": [
    {
      "start": 5,
      "end": 13.5,
      "text": "Gemma3:4b is the active model in this Home and session."
    },
    {
      "start": 15,
      "end": 19,
      "text": "Qwen2.5:1.5b is now selected; the same session and saved work remain visible."
    },
    {
      "start": 20,
      "end": 22.5,
      "text": "The retained action log includes applied writes and earlier unsupported claims."
    },
    {
      "start": 23,
      "end": 26.2,
      "text": "The saved Community Garden Project Brief is opened."
    }
  ]
}
