{
 "note": "Every number in article.en.md / article.ja.md, read from the run logs by apps/studio/.wrangler/uc-proposal/make-facts.py. Raw logs stay in the worktree (git-ignored); summaries are committed under docs/verification/clinic-proposal/runs.",
 "facts": [
  {
   "id": "S1.seconds",
   "value": 469,
   "unit": "s",
   "what": "S1: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.input",
   "value": 1589311,
   "unit": "tokens",
   "what": "S1: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.cached",
   "value": 1488256,
   "unit": "tokens",
   "what": "S1: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.output",
   "value": 13316,
   "unit": "tokens",
   "what": "S1: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.reasoning",
   "value": 4597,
   "unit": "tokens",
   "what": "S1: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.toolCalls",
   "value": 32,
   "unit": "calls",
   "what": "S1: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.failed",
   "value": 1,
   "unit": "calls",
   "what": "S1: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.toolSeconds",
   "value": 16.5,
   "unit": "s",
   "what": "S1: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S1: model",
   "source": "~/.codex/sessions (thread 01a110dc-5992-7880-907a-c60e0b7e0ae8)",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S1.effort",
   "value": "low",
   "unit": null,
   "what": "S1: reasoning effort",
   "source": "~/.codex/sessions (thread 01a110dc-5992-7880-907a-c60e0b7e0ae8)",
   "where": "docs/verification/clinic-proposal/runs/S1.json"
  },
  {
   "id": "S2.seconds",
   "value": 261,
   "unit": "s",
   "what": "S2: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.input",
   "value": 1776165,
   "unit": "tokens",
   "what": "S2: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.cached",
   "value": 1672192,
   "unit": "tokens",
   "what": "S2: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.output",
   "value": 6120,
   "unit": "tokens",
   "what": "S2: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.reasoning",
   "value": 1251,
   "unit": "tokens",
   "what": "S2: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.toolCalls",
   "value": 23,
   "unit": "calls",
   "what": "S2: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.failed",
   "value": 1,
   "unit": "calls",
   "what": "S2: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.toolSeconds",
   "value": 14.5,
   "unit": "s",
   "what": "S2: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S2: model",
   "source": "~/.codex/sessions (thread 01a110e4-17b4-7e20-bd19-21e1fa8ebcda)",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2.effort",
   "value": "low",
   "unit": null,
   "what": "S2: reasoning effort",
   "source": "~/.codex/sessions (thread 01a110e4-17b4-7e20-bd19-21e1fa8ebcda)",
   "where": "docs/verification/clinic-proposal/runs/S2.json"
  },
  {
   "id": "S2r.seconds",
   "value": 184,
   "unit": "s",
   "what": "S2r: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.input",
   "value": 1072643,
   "unit": "tokens",
   "what": "S2r: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.cached",
   "value": 988416,
   "unit": "tokens",
   "what": "S2r: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.output",
   "value": 4103,
   "unit": "tokens",
   "what": "S2r: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.reasoning",
   "value": 475,
   "unit": "tokens",
   "what": "S2r: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.toolCalls",
   "value": 25,
   "unit": "calls",
   "what": "S2r: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.failed",
   "value": 0,
   "unit": "calls",
   "what": "S2r: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.toolSeconds",
   "value": 13.0,
   "unit": "s",
   "what": "S2r: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S2r: model",
   "source": "~/.codex/sessions (thread 01a110f2-51b8-7820-97b0-2875c2ae8caa)",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S2r.effort",
   "value": "low",
   "unit": null,
   "what": "S2r: reasoning effort",
   "source": "~/.codex/sessions (thread 01a110f2-51b8-7820-97b0-2875c2ae8caa)",
   "where": "docs/verification/clinic-proposal/runs/S2r.json"
  },
  {
   "id": "S3.seconds",
   "value": 160,
   "unit": "s",
   "what": "S3: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.input",
   "value": 1161202,
   "unit": "tokens",
   "what": "S3: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.cached",
   "value": 1055616,
   "unit": "tokens",
   "what": "S3: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.output",
   "value": 3869,
   "unit": "tokens",
   "what": "S3: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.reasoning",
   "value": 315,
   "unit": "tokens",
   "what": "S3: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.toolCalls",
   "value": 22,
   "unit": "calls",
   "what": "S3: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.failed",
   "value": 2,
   "unit": "calls",
   "what": "S3: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.toolSeconds",
   "value": 11.3,
   "unit": "s",
   "what": "S3: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S3: model",
   "source": "~/.codex/sessions (thread 01a110fb-7b58-7a83-a57c-94aa71dafe98)",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S3.effort",
   "value": "low",
   "unit": null,
   "what": "S3: reasoning effort",
   "source": "~/.codex/sessions (thread 01a110fb-7b58-7a83-a57c-94aa71dafe98)",
   "where": "docs/verification/clinic-proposal/runs/S3.json"
  },
  {
   "id": "S4.seconds",
   "value": 190,
   "unit": "s",
   "what": "S4: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.input",
   "value": 915346,
   "unit": "tokens",
   "what": "S4: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.cached",
   "value": 822272,
   "unit": "tokens",
   "what": "S4: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.output",
   "value": 3224,
   "unit": "tokens",
   "what": "S4: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.reasoning",
   "value": 264,
   "unit": "tokens",
   "what": "S4: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.toolCalls",
   "value": 20,
   "unit": "calls",
   "what": "S4: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.failed",
   "value": 0,
   "unit": "calls",
   "what": "S4: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.toolSeconds",
   "value": 11.3,
   "unit": "s",
   "what": "S4: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S4: model",
   "source": "~/.codex/sessions (thread 01a110ff-7095-7a00-ae9a-24b75879ac9c)",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S4.effort",
   "value": "low",
   "unit": null,
   "what": "S4: reasoning effort",
   "source": "~/.codex/sessions (thread 01a110ff-7095-7a00-ae9a-24b75879ac9c)",
   "where": "docs/verification/clinic-proposal/runs/S4.json"
  },
  {
   "id": "S5.seconds",
   "value": 144,
   "unit": "s",
   "what": "S5: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.input",
   "value": 855066,
   "unit": "tokens",
   "what": "S5: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.cached",
   "value": 779136,
   "unit": "tokens",
   "what": "S5: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.output",
   "value": 3062,
   "unit": "tokens",
   "what": "S5: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.reasoning",
   "value": 216,
   "unit": "tokens",
   "what": "S5: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.toolCalls",
   "value": 17,
   "unit": "calls",
   "what": "S5: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.failed",
   "value": 1,
   "unit": "calls",
   "what": "S5: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.toolSeconds",
   "value": 8.4,
   "unit": "s",
   "what": "S5: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S5: model",
   "source": "~/.codex/sessions (thread 01a11102-b83d-7091-98c2-0c5cd76f5c7c)",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S5.effort",
   "value": "low",
   "unit": null,
   "what": "S5: reasoning effort",
   "source": "~/.codex/sessions (thread 01a11102-b83d-7091-98c2-0c5cd76f5c7c)",
   "where": "docs/verification/clinic-proposal/runs/S5.json"
  },
  {
   "id": "S6.seconds",
   "value": 166,
   "unit": "s",
   "what": "S6: wall time of the Codex run",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.input",
   "value": 841846,
   "unit": "tokens",
   "what": "S6: input tokens (turn.completed usage)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.cached",
   "value": 758272,
   "unit": "tokens",
   "what": "S6: cached input tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.output",
   "value": 4066,
   "unit": "tokens",
   "what": "S6: output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.reasoning",
   "value": 81,
   "unit": "tokens",
   "what": "S6: reasoning output tokens",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.toolCalls",
   "value": 13,
   "unit": "calls",
   "what": "S6: Laydyne MCP tool calls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.failed",
   "value": 0,
   "unit": "calls",
   "what": "S6: tool calls that returned an error",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.toolSeconds",
   "value": 7.0,
   "unit": "s",
   "what": "S6: time inside tool calls, as Codex saw it",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.model",
   "value": "gpt-6-astra",
   "unit": null,
   "what": "S6: model",
   "source": "~/.codex/sessions (thread 01a11105-490f-7482-941d-e1fe74d96b08)",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "S6.effort",
   "value": "low",
   "unit": null,
   "what": "S6: reasoning effort",
   "source": "~/.codex/sessions (thread 01a11105-490f-7482-941d-e1fe74d96b08)",
   "where": "docs/verification/clinic-proposal/runs/S6.json"
  },
  {
   "id": "flow.seconds",
   "value": 1313,
   "unit": "s",
   "what": "total of S1, S2r, S3, S4, S5, S6: seconds",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.input",
   "value": 6435414,
   "unit": "tokens",
   "what": "total of S1, S2r, S3, S4, S5, S6: input",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.cached",
   "value": 5891968,
   "unit": "tokens",
   "what": "total of S1, S2r, S3, S4, S5, S6: cached",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.uncached",
   "value": 543446,
   "unit": "tokens",
   "what": "total of S1, S2r, S3, S4, S5, S6: uncached",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.output",
   "value": 31640,
   "unit": "tokens",
   "what": "total of S1, S2r, S3, S4, S5, S6: output",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.reasoning",
   "value": 5948,
   "unit": "tokens",
   "what": "total of S1, S2r, S3, S4, S5, S6: reasoning",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.toolCalls",
   "value": 129,
   "unit": "calls",
   "what": "total of S1, S2r, S3, S4, S5, S6: toolCalls",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.failed",
   "value": 4,
   "unit": "calls",
   "what": "total of S1, S2r, S3, S4, S5, S6: failed",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.toolSeconds",
   "value": 67.5,
   "unit": "s",
   "what": "total of S1, S2r, S3, S4, S5, S6: toolSeconds",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "flow.cachedShare",
   "value": 91.6,
   "unit": "%",
   "what": "cached share of input tokens in the flow",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1..S6.jsonl",
   "where": "docs/verification/clinic-proposal/runs/summary-flow.json"
  },
  {
   "id": "S1.parts",
   "value": 169,
   "unit": "parts",
   "what": "parts in the first layout (last 2D picture)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "get_view_image result text"
  },
  {
   "id": "S1.floorArea",
   "value": 315,
   "unit": "m²",
   "what": "floor area",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S1.jsonl",
   "where": "get_view_image result text \"floor area 315.00 m²\""
  },
  {
   "id": "S2.findingsFirst",
   "value": 29,
   "unit": "findings",
   "what": "check_space findings at the start of S2 (before the fix)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "first check_space total"
  },
  {
   "id": "S2.findingsLast",
   "value": 3,
   "unit": "findings",
   "what": "findings left when S2 stopped to ask",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "last check_space total"
  },
  {
   "id": "S2.saveDesignOption",
   "value": 0,
   "unit": "calls",
   "what": "save_design_option calls in S2",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2.jsonl",
   "where": "mcp_tool_call items"
  },
  {
   "id": "S2r.findingsFirst",
   "value": 27,
   "unit": "findings",
   "what": "check_space findings at the start of S2r (after the fix)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "first check_space total"
  },
  {
   "id": "S2r.findingsLast",
   "value": 0,
   "unit": "findings",
   "what": "findings when option A was saved",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "last check_space total"
  },
  {
   "id": "S2r.besideFixture",
   "value": 3,
   "unit": "gaps",
   "what": "gaps left out as the side space of a WC pan or basin",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "last check_space excludedGaps"
  },
  {
   "id": "S2r.wheelchairRadius",
   "value": 0.45,
   "unit": "m",
   "what": "radius of the wheelchair-sized agent in the route check",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "check_space reach.agent.radius"
  },
  {
   "id": "S2r.routesReachable",
   "value": 16,
   "unit": "places",
   "what": "places reachable from the entrance in the last wheelchair check",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "check_space reach[]"
  },
  {
   "id": "S2r.routesChecked",
   "value": 16,
   "unit": "places",
   "what": "places in the last wheelchair check",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "check_space reach[]"
  },
  {
   "id": "S2r.turningRadius",
   "value": 0.75,
   "unit": "m",
   "what": "radius of the agent standing for a 1.5 m turning circle",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "check_space reach.agent.radius 0.75"
  },
  {
   "id": "S2r.optionAParts",
   "value": 170,
   "unit": "parts",
   "what": "parts in design option A",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S2r.jsonl",
   "where": "save_design_option result option.parts"
  },
  {
   "id": "S3.runs",
   "value": 20,
   "unit": "runs",
   "what": "mornings simulated (runs)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "put_process_scenario arguments"
  },
  {
   "id": "S3.seed",
   "value": 20261006,
   "unit": null,
   "what": "first seed",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "put_process_scenario arguments"
  },
  {
   "id": "S3.arrivals",
   "value": [
    24,
    16,
    10
   ],
   "unit": "per hour",
   "what": "arrival rates 9–10, 10–11, 11–11:30",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "put_process_scenario arrivals[0].profile"
  },
  {
   "id": "S3.checkinWait",
   "value": 17.0,
   "unit": "s",
   "what": "check-in wait, mean of 20 mornings (agent summary); range of morning averages 7–44",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message (computed by Codex from run_process_scenario detail=full)"
  },
  {
   "id": "S3.doctorWait",
   "value": 29.5,
   "unit": "min",
   "what": "first doctor wait (agent summary); range of morning averages 10.1–65.1",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message (computed by Codex from run_process_scenario detail=full)"
  },
  {
   "id": "S3.returnWait",
   "value": 29.8,
   "unit": "min",
   "what": "doctor wait after X-ray (agent summary); range of morning averages 7.8–64.0",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message (computed by Codex from run_process_scenario detail=full)"
  },
  {
   "id": "S3.paymentWait",
   "value": 8.0,
   "unit": "s",
   "what": "payment wait (agent summary); range of morning averages 2–15",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message (computed by Codex from run_process_scenario detail=full)"
  },
  {
   "id": "S3.visit",
   "value": 48.8,
   "unit": "min",
   "what": "arrival to departure (agent summary); range of morning averages 27.8–84.1",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message (computed by Codex from run_process_scenario detail=full)"
  },
  {
   "id": "S3.busyReception",
   "value": 39,
   "unit": "%",
   "what": "receptionists busy (agent definition: share of staff time 9:00 to last departure)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.busyDoctors",
   "value": 92,
   "unit": "%",
   "what": "doctors busy (same definition)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.busyNurses",
   "value": 22,
   "unit": "%",
   "what": "nurses busy (same definition)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.busyRadiographer",
   "value": 17,
   "unit": "%",
   "what": "radiographer busy (same definition)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.peakWaiting",
   "value": 15.1,
   "unit": "patients",
   "what": "peak number in the waiting area, average of 20 mornings",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.peakRange",
   "value": [
    6,
    32
   ],
   "unit": "patients",
   "what": "range of the morning peaks",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.overSeats",
   "value": 4,
   "unit": "mornings",
   "what": "mornings whose peak passed 20 seats",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.worstExtraSeats",
   "value": 12,
   "unit": "seats",
   "what": "extra seats on the worst morning",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.lastDeparture",
   "value": [
    "12:22",
    "11:25",
    "13:34"
   ],
   "unit": "time",
   "what": "last departure, average and range",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S3.busyErrors",
   "value": 2,
   "unit": "calls",
   "what": "get_process_catalog calls answered busy (sent in parallel)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S3.jsonl",
   "where": "get_process_catalog results code busy"
  },
  {
   "id": "S4.design.added",
   "value": 2,
   "unit": "parts",
   "what": "parts added, A → B (compare_design_options)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_design_options record.floors[0].summary"
  },
  {
   "id": "S4.design.moved",
   "value": 3,
   "unit": "parts",
   "what": "parts moved, A → B (compare_design_options)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_design_options record.floors[0].summary"
  },
  {
   "id": "S4.design.changed",
   "value": 5,
   "unit": "parts",
   "what": "parts changed, A → B (compare_design_options)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_design_options record.floors[0].summary"
  },
  {
   "id": "S4.design.unchanged",
   "value": 165,
   "unit": "parts",
   "what": "parts unchanged, A → B (compare_design_options)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_design_options record.floors[0].summary"
  },
  {
   "id": "S4.design.removed",
   "value": 0,
   "unit": "parts",
   "what": "parts removed, A → B (compare_design_options)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_design_options record.floors[0].summary"
  },
  {
   "id": "S4.checkin",
   "value": {
    "A": 17.496,
    "B": 113.606,
    "difference": 96.11,
    "pairedMin": 28.841,
    "pairedMax": 313.939,
    "pairedStdev": 64.897,
    "n": 20
   },
   "unit": "s",
   "what": "check-in wait (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures process.time.mean checkin-wait"
  },
  {
   "id": "S4.payment",
   "value": {
    "A": 8.25,
    "B": 12.157,
    "difference": 3.906,
    "pairedMin": -11.119,
    "pairedMax": 12.544,
    "pairedStdev": 5.306,
    "n": 20
   },
   "unit": "s",
   "what": "payment wait (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures process.time.mean payment-wait"
  },
  {
   "id": "S4.doctor",
   "value": {
    "A": 1771.581,
    "B": 1697.782,
    "difference": -73.799,
    "pairedMin": -266.777,
    "pairedMax": 1.966,
    "pairedStdev": 61.247,
    "n": 20
   },
   "unit": "s",
   "what": "first doctor wait (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures process.time.mean doctor-wait"
  },
  {
   "id": "S4.wait",
   "value": {
    "A": 1978.717,
    "B": 1996.734,
    "difference": 18.017,
    "pairedMin": -18.236,
    "pairedMax": 64.268,
    "pairedStdev": 25.047,
    "n": 20
   },
   "unit": "s",
   "what": "total wait per patient (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures run.wait.mean"
  },
  {
   "id": "S4.cycle",
   "value": {
    "A": 2929.299,
    "B": 2929.573,
    "difference": 0.274,
    "pairedMin": -36.116,
    "pairedMax": 46.504,
    "pairedStdev": 25.099,
    "n": 20
   },
   "unit": "s",
   "what": "time from arrival to leaving (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures run.cycle.mean"
  },
  {
   "id": "S4.distance",
   "value": {
    "A": 4303.228,
    "B": 3518.032,
    "difference": -785.196,
    "pairedMin": -1178.206,
    "pairedMax": -497.395,
    "pairedStdev": 140.134,
    "n": 20
   },
   "unit": "m",
   "what": "walking of all patients in a morning (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures run.distance.total"
  },
  {
   "id": "S4.completed",
   "value": {
    "A": 44.25,
    "B": 44.25,
    "difference": 0,
    "pairedMin": 0,
    "pairedMax": 0,
    "pairedStdev": 0,
    "n": 20
   },
   "unit": "patients",
   "what": "patients seen in a morning (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures run.completed"
  },
  {
   "id": "S4.peak",
   "value": {
    "A": 15.1,
    "B": 14.7,
    "difference": -0.4,
    "pairedMin": -2,
    "pairedMax": 1,
    "pairedStdev": 0.663,
    "n": 20
   },
   "unit": "patients",
   "what": "peak in the waiting area (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures zone.occupancy.peak waiting-demand"
  },
  {
   "id": "S4.doctorUse",
   "value": {
    "A": 0.516,
    "B": 0.516,
    "difference": 0.0,
    "pairedMin": -0.0,
    "pairedMax": 0.0,
    "pairedStdev": 0.0,
    "n": 20
   },
   "unit": "ratio",
   "what": "doctor utilization over the 6-hour window (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures resource.utilization doctors"
  },
  {
   "id": "S4.room1Wait",
   "value": {
    "A": 0,
    "B": 0,
    "difference": 0,
    "pairedMin": 0,
    "pairedMax": 0,
    "pairedStdev": 0,
    "n": 20
   },
   "unit": "s",
   "what": "wait for consultation room 1 (A → B, 20 paired mornings)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.measures resource.wait.mean room1"
  },
  {
   "id": "S4.seeds",
   "value": [
    20261006,
    20261025
   ],
   "unit": null,
   "what": "seeds shared by both options",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "compare_process_options comparison.seed/runs"
  },
  {
   "id": "S4.agentInterval",
   "value": [
    "96.1",
    "64.9",
    "127.3"
   ],
   "unit": "s",
   "what": "check-in difference and the 95 % interval Codex computed from the paired mean and spread",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S4.jsonl",
   "where": "final agent_message"
  },
  {
   "id": "S5.added",
   "value": 19,
   "unit": "parts",
   "what": "parts added for the furniture",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "applied edit_space add[]"
  },
  {
   "id": "S5.updated",
   "value": 82,
   "unit": "parts",
   "what": "parts updated (notes, sources, positions)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "applied edit_space update[]"
  },
  {
   "id": "S5.optionA2Parts",
   "value": 189,
   "unit": "parts",
   "what": "parts in option A2",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "save_design_option result option.parts"
  },
  {
   "id": "S5.findings",
   "value": 0,
   "unit": "findings",
   "what": "check_space findings for A2",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S5.jsonl",
   "where": "last check_space total"
  },
  {
   "id": "S6.pdfBytes",
   "value": 286239,
   "unit": "bytes",
   "what": "drawing PDF size",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "get_view_image result text"
  },
  {
   "id": "S6.scale",
   "value": "1:100, A3 landscape",
   "unit": null,
   "what": "drawing scale and paper",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "get_view_image result text"
  },
  {
   "id": "S6.changeLogEntries",
   "value": 3,
   "unit": "entries",
   "what": "change-log entries at hand-over (history lost at each restore; fixed in 23806f6c)",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "get_change_log total"
  },
  {
   "id": "S6.packetBytes",
   "value": 2086093,
   "unit": "bytes",
   "what": "HTML handout size",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "get_design_packet totalBytes"
  },
  {
   "id": "S6.projectBytes",
   "value": 396286,
   "unit": "bytes",
   "what": "project file size",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "export_project totalBytes"
  },
  {
   "id": "S6.projectSha256",
   "value": "a17ba69d5366cb9c96046353c4853efd1d4b819a07e0348ec3ed033181215b24",
   "unit": null,
   "what": "project file SHA-256",
   "source": "apps/studio/.wrangler/uc-proposal/logs/S6.jsonl",
   "where": "export_project sha256"
  },
  {
   "id": "prompt.S1",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S1 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S1.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "prompt.S2",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S2 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S2.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "prompt.S3",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S3 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S3.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "prompt.S4",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S4 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S4.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "prompt.S5",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S5 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S5.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "prompt.S6",
   "value": "inputs as written",
   "unit": null,
   "what": "the numbers in the S6 prompt (brief sizes, staff, arrival rates, service times) are inputs quoted verbatim",
   "source": "docs/verification/clinic-proposal/prompts/S6.txt",
   "where": "whole prompt; S2r used the S2 prompt unchanged"
  },
  {
   "id": "tools.listChars",
   "value": 308540,
   "unit": "characters",
   "what": "size of the Laydyne tools/list each new session reads",
   "source": "apps/studio/.wrangler/uc-proposal (probe of tools/list, 2026-10-06)",
   "where": "docs/verification/clinic-proposal/README.md"
  }
 ]
}