{
  "schema_version": 3,
  "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
  "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
  "title": "4/8/26",
  "standard_id": "OTR-FULL-IMMERSIVE-STORY-STANDARD-V3",
  "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
  "publication_status": "READY_FOR_VALIDATION",
  "publication_phase": "LOCKED_CANONICAL",
  "supersedes": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
  "supersedes_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
  "market_pulse_cutoff_at_sgt": "2026-08-04T06:18:00+08:00",
  "story_written_at_sgt": "2026-08-04T06:24:00+08:00",
  "current_event_window": {
    "start_at_sgt": "2026-08-02T00:00:00+08:00",
    "end_at_sgt": "2026-08-04T06:18:00+08:00"
  },
  "confidence_boundary": "This edition separates reported facts, possible explanations and final results. Repeating one publisher's headline does not create a second independent source.",
  "historical_add_on": {
    "contract_id": "OTR-FULL-IMMERSIVE-HISTORICAL-ADD-ON-V1",
    "label": "Content-specific history for every section",
    "logic_version": 2,
    "content_comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
    "compared_fields": [
      "question",
      "headline",
      "narrative",
      "beats",
      "source_ids",
      "market_connection",
      "watch_conditions",
      "invalidation"
    ],
    "admin_history_relevance_audit_required": true,
    "required_on_every_tab": true,
    "placement": "VISIBLE_BELOW_ACTIVE_TAB",
    "use_state": "CONTEXT_ONLY",
    "comparison_scope": "SAME_CANONICAL_TAB_ONLY",
    "required_tab_count": 12,
    "matched_prior_tab_count": 12,
    "missing_prior_tab_count": 0,
    "source_order": [
      "OTR_PUBLISHED_HISTORY_SAME_TAB"
    ],
    "comparison_rule": "Every section compares only with the nearest earlier saved record of the same section. The comparison covers its question, headline, full explanation, main points, sources, wider meaning, watch list and condition that would change the view. Another section or a similar theme can never fill a gap.",
    "boundary": "These comparisons show how saved section content changed. They cannot prove a current fact, claim the same cause, replace a missing source, settle a prediction or change a search rule.",
    "tab_content_comparison_audits": {
      "Today": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
        "current_content_sha256": "3f405f3a991c2efbc05ee2066aaf2788375ed0e00fb112aec270036c4db2593c",
        "prior_content_sha256": "1fd76751189645b92b324f7374f204d73f94169aecee0beba8b88872b47dd908",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Today",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "95d6457e3563b5f17ba86f983fe4382332e460d17f078d08ee34dda51942dd63",
        "comparison_receipt_sha256": "3e3c90634de0f5b150cd85041135bd990ae1538ebea4904d2575116b61066b42"
      },
      "Everything": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
        "current_content_sha256": "0ad9843769643abfc9e2dcff4bf984f30500b74c0cb5bd1a398bd199e66bb3f9",
        "prior_content_sha256": "b4c4470bba0df4f27a386a4bcf9329bdd5bd82861ab83e0e421c7ff679dde0a0",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Everything",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 14,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "b69e934b9a67ece43801cf8923819bcfac017d20079ae9fa955b0bfbed957928",
        "comparison_receipt_sha256": "302b911bcc9dbb5ee6264aa22950e15c01b11c6daee43adffe9a407f16da79fb"
      },
      "Worry": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
        "current_content_sha256": "ee3736d6e255ee590db7f66e266b19355f34514057b7130ef1885df3d2ce57e8",
        "prior_content_sha256": "fdc7bcf214358daa43a6640a9e03c33ed847a5aaf206335823ba7b035390826c",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Worry",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "fe5a3417f41d56f858a99aa2cc0776966a51f36a5099968db72b4f76f0589bb7",
        "comparison_receipt_sha256": "cae721718e7c9d451315da09f8c6e6f6faeb31baf431c2dd42e20732a63160a2"
      },
      "Big 3": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
        "current_content_sha256": "e1e7c84fe529cafd20a54e72b4e67e3811e4e2f9f0ce527f15f760901b841300",
        "prior_content_sha256": "e082837fe3c677c3c23e3a07b652dbe833f984abbdc424324d7a4cf24444e990",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Big 3",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "786affb013a13e38ad517b96865836e6ec9cb89f6e612c006a8417fd1fcfbf14",
        "comparison_receipt_sha256": "748f07e8b9d241a0140ae9b3d52e1abb9ddfcdaf05cb6e652e2571d2575e122b"
      },
      "Predictions": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
        "current_content_sha256": "4fc96cf53e476428f2d9bd4d8cb3fba6d279194e1fb4a85d33260cf4f948022e",
        "prior_content_sha256": "9eb86eb1ab1c55610c44bc66834f4472fbbcd690c1e939b30d22054bbfdc1ce8",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Predictions",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 22,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "a69738db80d159e3c4b16eecbb836a0fa1c998cfcbf336f95607a8789ccbb9e7",
        "comparison_receipt_sha256": "fd98b05fd8594730a8b17e73e5ec360e19d061ab32825fa7e68391affb244c39"
      },
      "Long-Term Investment": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
        "current_content_sha256": "8b6738f7c28f44711f0994242568f38fa1d000491cc90ca94567fed4d8a564a8",
        "prior_content_sha256": "8db7f78158ca9ed3cc9ddb515f40a9c19a29ab120e7da8011aae7b6bd58b0bba",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Long-Term Investment",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 8,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "2dbe5ee8707432e938bceff2beea2040488e40b877b9927477956dafc9c7b794",
        "comparison_receipt_sha256": "f52feea9ffde74555cbb5843f7889909cc9926e44094f60dc24364c6834a60a9"
      },
      "Dots": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
        "current_content_sha256": "a0e1329e2ce1bb11d567a33ecf5476560f978b1d97b0f16219a17bd0c6c4314f",
        "prior_content_sha256": "fe1e5b3a7fe944ebece6b174fcbb73c9adfc1dd99c8a9429098e61743ae9ec82",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Dots",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "7d4fc71418b2ab82c162d555eb7a76fc95a4cc3f3c4e5169013723b633bbd38c",
        "comparison_receipt_sha256": "57d38c4b0416ba6c1baee8f98205cbe871a6873a2e3d90d0b8fb1edcded78361"
      },
      "Novel": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
        "current_content_sha256": "307068ffae3ca658b585f6b1b8b19f0117b25a4e8bee928224d204084f422e61",
        "prior_content_sha256": "1d9c9707e86b610d1d8e0b242967e4f6cad58513e2d67cb67964fbad61c3dc09",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Novel",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "3c9661bf2a4ff66d34b179793532ad3e04106cf5e1ff9316cf731ccd514e4afd",
        "comparison_receipt_sha256": "ec8c48dd9dff08f79dd07a97622a627abc66bf6e7053f5d4cefc57391b95043e"
      },
      "Tomorrow": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
        "current_content_sha256": "ec7cc86c0dbfae0d68989398d20b9e3aa546d74c85d6c38bb8e217a80c11d845",
        "prior_content_sha256": "4db9c2d50cb8c432255c2677cb1b2d4c25e1f489b3482be765be1a1945719bec",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Tomorrow",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "12bc14f444b40801924e338e77e03d817ff9a975b41c1a89851eb8a5e8a176d8",
        "comparison_receipt_sha256": "d3012ee31026c912f75bdf12a6b41dec11257a7193aba094a10c10f4d9aa256e"
      },
      "Learning": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
        "current_content_sha256": "a7c7963d236757f23dfd6123fe0f287dd3debe196170831658cd57122ccbd849",
        "prior_content_sha256": "532c9f9350e1369e7e0d580a521ff9bbe6ced7fa50f60e997aa37b1896b8942b",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Learning",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "10eea87aa60ad5bbe1f71e11206a1fb3a68fd83b45a6424778577bf9ae80f0d9",
        "comparison_receipt_sha256": "e20fc864298105f9340134bd2634344243d61b776b8632bac0cbddd06c492f4e"
      },
      "Glossary": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
        "current_content_sha256": "7b3cd9d97f31023b9bcd2ce2e6df35d01b019e3728a085c7ae5db939db87faf1",
        "prior_content_sha256": "8daa561467e970972462d7d8adc6078d233a97000b323d006adfd27c65e1fd41",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Glossary",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "daefb5d8e5987a24b92e10c31341491d9d5f2d0ceda97bd15825f7e1b0120683",
        "comparison_receipt_sha256": "bcdf22518f6e22207f839cd59f150a39c247f20cf16ee8af0e3b9fa4bbad7fd4"
      },
      "Proof": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
        "current_content_sha256": "09f4abd6f7460bd65648d1c4ef16cca8f93762606f0d7e1823ddac57e3210770",
        "prior_content_sha256": "f9bb803654d4ec5fa8faa0f4b5da1533dc74c1db8e374d646fafb84d1885a2a9",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Proof",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "67f1ee8ba30e12a5c8f96cde1ccb7464b97feaf3389b98b0f65176b61708ca28",
        "comparison_receipt_sha256": "fd4d26cfba779d57b9022b5dd0bac46ddf1a1fafaa39c9af7fea1c022743c64e"
      }
    },
    "tab_comparison_sources": {
      "Today": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Today"
      },
      "Everything": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Everything"
      },
      "Worry": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Worry"
      },
      "Big 3": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Big 3"
      },
      "Predictions": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Predictions"
      },
      "Long-Term Investment": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Long-Term Investment"
      },
      "Dots": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Dots"
      },
      "Novel": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Novel"
      },
      "Tomorrow": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Tomorrow"
      },
      "Learning": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Learning"
      },
      "Glossary": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Glossary"
      },
      "Proof": {
        "status": "MATCHED_PRIOR_TAB",
        "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
        "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
        "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
        "publication_at_sgt": "2026-08-03T15:45:45+08:00",
        "publication_date": "2026-08-03",
        "publication_label": "03 August 2026 OTR publish",
        "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
        "source_tab_name": "Proof"
      }
    },
    "current_comparison_source": {
      "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
      "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
      "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
      "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
      "publication_date": "2026-08-03",
      "publication_label": "03 August 2026 OTR publish",
      "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json"
    }
  },
  "otr_memory": {
    "contract_id": "OTR-PERMANENT-MEMORY-V2",
    "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
    "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
    "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
    "retained_publications_available": 55,
    "retained_records_available": 5229,
    "editorial_recall_receipt": {
      "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
      "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
      "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
      "mode": "LEARNING_CONTEXT",
      "same_day_excluded": true,
      "query_sha256": "9064fac1f513ae1dd3b6301c367e15daa444685cb112bfe6f3a9bb8058069967",
      "query_concepts": {
        "entities": [
          {
            "id": "ENERGY",
            "label": "Energy"
          }
        ],
        "events": [
          {
            "id": "ANIMAL_WILDLIFE",
            "label": "Animals and wildlife"
          },
          {
            "id": "SUPPLY_CHAIN",
            "label": "Supply chains and trade"
          },
          {
            "id": "CLIMATE_ENVIRONMENT",
            "label": "Climate and environment"
          },
          {
            "id": "HEALTH_MEDICAL",
            "label": "Health and medicine"
          }
        ],
        "terms": [
          "fortune",
          "subsidiary",
          "southeast",
          "asia",
          "largest",
          "tech",
          "firm",
          "looking",
          "build",
          "regional",
          "digital",
          "banking",
          "group",
          "out",
          "singapore",
          "nny360",
          "com",
          "state",
          "awards",
          "thousands",
          "north",
          "country",
          "for",
          "water",
          "system",
          "cybersecurity",
          "utilities",
          "datamarnews",
          "tariffs",
          "and",
          "global",
          "turmoil",
          "drive",
          "export",
          "logistics",
          "costs",
          "transport",
          "mortgage",
          "rates",
          "roughly",
          "unchanged",
          "despite",
          "bond",
          "market",
          "improvement",
          "finance",
          "politico",
          "texas",
          "governor",
          "puts",
          "data",
          "center",
          "grid",
          "approvals",
          "hold",
          "energy",
          "power",
          "wowtale",
          "mediqstar",
          "closes",
          "pre",
          "series",
          "round",
          "genaxis",
          "accelerate",
          "diagnostic",
          "platform",
          "abroad",
          "medical",
          "breakthroughs",
          "farm",
          "dairy",
          "oldest",
          "izaak",
          "walton",
          "league",
          "conservation",
          "celebrates",
          "years",
          "climate",
          "environment",
          "times",
          "san",
          "diego",
          "opinion",
          "taxing",
          "billionaires",
          "will",
          "help",
          "californians",
          "keep",
          "health",
          "coverage",
          "healthcare",
          "systems",
          "sbs",
          "shutdown",
          "crisis",
          "due",
          "european",
          "drought",
          "hungary",
          "paks",
          "nuclear",
          "plant",
          "completely",
          "halts",
          "operations",
          "wsmv",
          "fresh",
          "food",
          "company",
          "sues",
          "former",
          "tennessee",
          "president",
          "alleging",
          "32m",
          "scheme",
          "international",
          "wjla",
          "copper",
          "wire",
          "stolen",
          "construction",
          "site",
          "loudoun",
          "county",
          "arrested",
          "mining",
          "critical",
          "materials",
          "see",
          "great",
          "art",
          "wisconsin",
          "artist",
          "michelle",
          "grabner",
          "gifting",
          "artworks",
          "john",
          "michael",
          "kohler",
          "arts",
          "the"
        ],
        "direction": "UP"
      },
      "before_at_sgt": "2026-08-04T06:24:00+08:00",
      "matched_record_ids": [
        "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-060-02",
        "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-026-03",
        "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-042-04",
        "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-045-05",
        "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-02-EVERYTHING",
        "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT::TAB-06-DOTS",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01::TAB-06-DOTS",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT::TAB-06-DOTS",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT::TAB-02-WORRY",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT::TAB-02-WORRY",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT::TAB-02-WORRY"
      ],
      "matched_publication_ids": [
        "OTR-DAILY-73-2026-08-03-0954-SGT",
        "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
        "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT"
      ],
      "direction_counts": {
        "UP": 1,
        "DOWN": 0,
        "MIXED": 7,
        "UNSTATED": 4
      },
      "contradictory_direction_history": false,
      "use_state": "CONTEXT_ONLY",
      "current_fact_authority": false,
      "confidence_upgrade_authority": false,
      "matches": [
        {
          "archive_record_id": "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-060-02",
          "publication_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "date": "2026-08-03",
          "title": "Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations",
          "engine": "Nuclear Energy",
          "tab": null,
          "evidence_state": "SOURCE_LINKED_CURRENT",
          "direction": "UNSTATED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "CLIMATE_ENVIRONMENT",
              "label": "Climate and environment"
            }
          ],
          "score": 235.8194,
          "why": [
            "same entity: Energy",
            "same event: Climate and environment",
            "shared terms: nuclear, completely, halts, paks, shutdown"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-026-03",
          "publication_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "date": "2026-08-03",
          "title": "Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations",
          "engine": "Energy & Power",
          "tab": null,
          "evidence_state": "SOURCE_LINKED_CURRENT",
          "direction": "UNSTATED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "CLIMATE_ENVIRONMENT",
              "label": "Climate and environment"
            }
          ],
          "score": 233.3595,
          "why": [
            "same entity: Energy",
            "same event: Climate and environment",
            "shared terms: power, completely, halts, paks, shutdown"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-042-04",
          "publication_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "date": "2026-08-03",
          "title": "Opinion: Taxing billionaires will help Californians keep their health coverage",
          "engine": "Healthcare Systems",
          "tab": null,
          "evidence_state": "SOURCE_LINKED_CURRENT",
          "direction": "UNSTATED",
          "matched_entities": [],
          "matched_events": [
            {
              "id": "HEALTH_MEDICAL",
              "label": "Health and medicine"
            }
          ],
          "score": 170.9218,
          "why": [
            "same event: Health and medicine",
            "shared terms: billionaires, californians, taxing, opinion, help"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-DAILY-73-2026-08-03-0954-SGT::OTR-20260803-045-05",
          "publication_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "date": "2026-08-03",
          "title": "Opinion: Taxing billionaires will help Californians keep their health coverage",
          "engine": "Insurance & Risk",
          "tab": null,
          "evidence_state": "SOURCE_LINKED_CURRENT",
          "direction": "UNSTATED",
          "matched_entities": [],
          "matched_events": [],
          "score": 140.3538,
          "why": [
            "shared terms: billionaires, californians, taxing, opinion, help"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-02-EVERYTHING",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "date": "2026-08-03",
          "title": "584 current signals give a wide view, while the main story leads with the news that matters most.",
          "engine": null,
          "tab": "Everything",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "CLIMATE_ENVIRONMENT",
              "label": "Climate and environment"
            }
          ],
          "score": 139.7828,
          "why": [
            "same entity: Energy",
            "same event: Climate and environment",
            "shared terms: the, and, climate, health"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "date": "2026-08-03",
          "title": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
          "engine": null,
          "tab": "Tomorrow",
          "evidence_state": null,
          "direction": "UP",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [],
          "score": 138.7304,
          "why": [
            "same entity: Energy",
            "shared terms: market, and, the, asia"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT::TAB-06-DOTS",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
          "date": "2026-07-31",
          "title": "A price changes, B costs adjust, C people and businesses feel it.",
          "engine": null,
          "tab": "Dots",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "score": 133.9988,
          "why": [
            "same entity: Energy",
            "same event: Supply chains and trade",
            "shared terms: and, energy, costs, the"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01::TAB-06-DOTS",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
          "date": "2026-07-31",
          "title": "A price changes, B costs adjust, C people and businesses feel it.",
          "engine": null,
          "tab": "Dots",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "score": 133.9988,
          "why": [
            "same entity: Energy",
            "same event: Supply chains and trade",
            "shared terms: and, energy, costs, the"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT::TAB-06-DOTS",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
          "date": "2026-07-31",
          "title": "A price changes, B costs adjust, C people and businesses feel it.",
          "engine": null,
          "tab": "Dots",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "score": 133.9988,
          "why": [
            "same entity: Energy",
            "same event: Supply chains and trade",
            "shared terms: and, energy, costs, the"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT::TAB-02-WORRY",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
          "date": "2026-07-31",
          "title": "A rate hold does not remove the inflation problem.",
          "engine": null,
          "tab": "Worry",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [],
          "score": 131.5866,
          "why": [
            "same entity: Energy",
            "shared terms: energy, market, the, company, and"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT::TAB-02-WORRY",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
          "date": "2026-07-30",
          "title": "A rate hold does not remove the inflation problem.",
          "engine": null,
          "tab": "Worry",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [],
          "score": 131.5866,
          "why": [
            "same entity: Energy",
            "shared terms: energy, market, the, company, and"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        },
        {
          "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT::TAB-02-WORRY",
          "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
          "date": "2026-07-30",
          "title": "A rate hold does not remove the inflation problem.",
          "engine": null,
          "tab": "Worry",
          "evidence_state": null,
          "direction": "MIXED",
          "matched_entities": [
            {
              "id": "ENERGY",
              "label": "Energy"
            }
          ],
          "matched_events": [],
          "score": 131.5866,
          "why": [
            "same entity: Energy",
            "shared terms: energy, market, the, company, and"
          ],
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "memory_recall_sha256": "e3d28317cf80ef905b6d043803f1f2736492a9c074f92726c99b5c83900c2faa"
    },
    "tab_recall_receipts": {
      "Today": "6ce966d486559e65bbfef1211f022f53f93200a8b1989678d3d50fdfb8299663",
      "Everything": "456aa2fe8fd05f901025dc82981c51465b77ee2bd86bfcb02c84288755c0d3d0",
      "Worry": "f867f729951c6de5195323d9d0f4f65149b6eb892a908eeb79a70bf6ed373b44",
      "Big 3": "6806481c1d1457dc24224c806392cb927353bf454cc6e8a499c8de4df607d3f1",
      "Predictions": "52fcf79a715cefd76db3cdd0773c10e0a6143590b60037bc81c30eb6a859cdfa",
      "Long-Term Investment": "d2343c4b0ab4236e8a08892dc5904f80f89c11839c0bbf916eb2a24e23260756",
      "Dots": "2a384ca38311ec374dc725095b23c7d66dc5ccaeefad3cdb740f0ce2783eb2f0",
      "Novel": "dfded30d5c035b45ca5a6a88b64b273604bf2124c42451c8e54ce401ed65df4a",
      "Tomorrow": "4f3df1c369e8c44ca6c445d8ba1391ee689fad7216a9fc9bd27227c7663bb55d",
      "Learning": "e730dd3b59214574e93b8cd98e3722ff097d40fb0c98b1985324eb2636c9f68f",
      "Glossary": "20c36dc27486835818aa0c438fcc8ca2184fe3dd1943f924cc8b789666b546ad",
      "Proof": "8f9b0f33abe373019f949e5f0db528b453741c43197dab81d2b08c22717f4619"
    },
    "use_state": "CONTEXT_ONLY",
    "current_fact_authority": false,
    "confidence_upgrade_authority": false,
    "rule": "Every tab reads related and contradictory prior OTR records. Today's cited sources still control every current fact."
  },
  "market_pulse": {
    "label": "REPORTS · QUESTIONS · NEXT CHECK",
    "headline": "Three current reports lead the 4 August 2026 edition.",
    "summary": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. They remain separate reports with no shared cause claimed.",
    "state": "three reports ranked · no shared cause claimed · later proof can change the order",
    "source_ids": [
      "LEAD-01",
      "LEAD-02",
      "LEAD-03",
      "LEAD-04",
      "LEAD-05",
      "LEAD-06",
      "LEAD-07",
      "LEAD-08",
      "LEAD-09",
      "LEAD-10",
      "LEAD-11",
      "LEAD-12"
    ]
  },
  "prediction_release": {
    "release_id": "OTR-PREDICTIONS-2026-08-04-0624-SGT",
    "source_path": "data/prediction-releases/OTR-PREDICTIONS-2026-08-04-0624-SGT.json",
    "canonical_content_sha256": "2dee086ab8f912969adcf1cfcab604bc2510b0547c758ccb762875b7bd88db76",
    "parent_daily_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
    "locked_at_sgt": "2026-08-04T06:24:00+08:00",
    "resolves_at_sgt": "2026-08-05T10:15:00+08:00",
    "promoted_prediction_count": 32,
    "held_disposition_count": 0,
    "assessment_receipt_id": "OTR-PREDICTION-ASSESSMENT-2026-08-04-0624-SGT",
    "research_only": true
  },
  "long_term_investment": {
    "contract_id": "OTR-LONG-TERM-INVESTMENT-TAB-V2",
    "method_id": "OTR-LONG-TERM-INVESTMENT-METHOD-V1",
    "method_sha256": "3983d77d7fb09009c30a3a8a585b5e4404421811085a9aa2bd7f9de1f69cb7c5",
    "current_receipt_id": "OTR-LONG-TERM-EXPERIMENT-PUBLICATION-2026-08-03-0315-SGT",
    "current_receipt_sha256": "6c63185d0aab95a5e954a4411c61e36d353804f95360298bdc1494d01851e88e",
    "last_complete_receipt_id": "OTR-LONG-TERM-EXPERIMENT-PUBLICATION-2026-08-03-0315-SGT",
    "last_complete_receipt_sha256": "6c63185d0aab95a5e954a4411c61e36d353804f95360298bdc1494d01851e88e",
    "receipt_release_id": "OTR-DAILY-73-2026-08-02-0150-SGT",
    "current_method_path": "/data/long-term-investment/current.json",
    "current_receipt_path": "/data/long-term-investment/current-receipt.json",
    "last_complete_receipt_path": "/data/long-term-investment/last-complete-receipt.json",
    "automation_kind": "SITES_RESEARCH_AUTOMATION",
    "daily_research_start_time_sgt": "12:00",
    "schedule_label": "Daily research starts at 12:00 SGT",
    "research_batch_completed_at_sgt": "2026-08-02T15:56:00+08:00",
    "price_resync_completed_at_sgt": "2026-08-02T15:13:25+08:00",
    "publication_completed_at_sgt": "2026-08-03T03:15:00+08:00",
    "publication_state": "EXPERIMENT_SUPPLEMENT_PUBLISHED",
    "hold_state": null,
    "research_only": true,
    "experiment_id": "OTR-LONG-TERM-EXPERIMENT-2026-08-03-0108-SGT-C01",
    "experiment_sha256": "5d07202c1d0094ec0a3ba3bbc42825de80f9a1f6b3bd90d75081eed459b56b29",
    "experiment_status": "PROVISIONAL_LATEST_COMPLETED_SESSION",
    "experiment_current_path": "data/long-term-investment/experiments/current.json",
    "experiment_public_path": "/data/long-term-investment/experiments/current.json"
  },
  "story_spine": [
    {
      "step": 1,
      "title": "Three reports lead",
      "body": "The first three reports were selected by one stated rule and remain separate events.",
      "source_ids": [
        "LEAD-01",
        "LEAD-02"
      ]
    },
    {
      "step": 2,
      "title": "The wider issue stays open",
      "body": "Reports below the lead remain visible for readers with different needs.",
      "source_ids": [
        "LEAD-03",
        "LEAD-04"
      ]
    },
    {
      "step": 3,
      "title": "No shared cause is assumed",
      "body": "Reports can be compared without claiming that one event caused another.",
      "source_ids": [
        "LEAD-05",
        "LEAD-06"
      ]
    },
    {
      "step": 4,
      "title": "Warnings stay attached",
      "body": "Each report keeps the condition that would remove or change it.",
      "source_ids": [
        "LEAD-07",
        "LEAD-08"
      ]
    },
    {
      "step": 5,
      "title": "Later facts keep their date",
      "body": "Tomorrow’s evidence cannot be inserted into today’s saved issue.",
      "source_ids": [
        "LEAD-09",
        "LEAD-10"
      ]
    },
    {
      "step": 6,
      "title": "The order can be reviewed",
      "body": "Usefulness may improve the later ranking method, but it cannot rewrite today’s facts.",
      "source_ids": [
        "LEAD-11",
        "LEAD-12"
      ]
    }
  ],
  "sources": [
    {
      "id": "LEAD-01",
      "label": "Fortune",
      "fact": "Fortune reported: A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
      "headline": "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
      "url": "https://fortune.com/2026/08/03/sea-maribank-singapore-philippines-digital-bank/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-001-01",
      "engine": "Singapore News",
      "publisher_timestamp": "2026-08-03T21:30:00.000Z",
      "canonical_event_key": "EVENT-44e0096d857d38a10b81",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 146,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 16
      },
      "matched_impact_words": [
        "bank",
        "ban"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-02",
      "label": "nny360.com",
      "fact": "nny360.com reported: State awards thousands to north country for water system cybersecurity",
      "headline": "State awards thousands to north country for water system cybersecurity",
      "url": "https://www.nny360.com/news/statenews/state-awards-thousands-to-north-country-for-water-system-cybersecurity/article_0ae9f70c-f7a2-54f3-aae8-b970742a86cf.html",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-029-04",
      "engine": "Water & Utilities",
      "publisher_timestamp": "2026-08-03T20:56:44.000Z",
      "canonical_event_key": "EVENT-142191b1f50d3630e397",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 146,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 16
      },
      "matched_impact_words": [
        "war",
        "security"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-03",
      "label": "DatamarNews",
      "fact": "DatamarNews reported: U.S. tariffs and global turmoil drive up export logistics costs",
      "headline": "U.S. tariffs and global turmoil drive up export logistics costs",
      "url": "https://datamarnews.com/noticias/u-s-tariffs-and-global-turmoil-drive-up-export-logistics-costs/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-037-06",
      "engine": "Transport & Logistics",
      "publisher_timestamp": "2026-08-03T16:58:16.000Z",
      "canonical_event_key": "EVENT-b8fc2bacdff4d9d1f8ac",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 146,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 16
      },
      "matched_impact_words": [
        "tariff",
        "oil"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-04",
      "label": "Mortgage News Daily",
      "fact": "Mortgage News Daily reported: Mortgage Rates Roughly Unchanged Despite Bond Market Improvement",
      "headline": "Mortgage Rates Roughly Unchanged Despite Bond Market Improvement",
      "url": "https://www.mortgagenewsdaily.com/markets/mortgage-rates-08032026",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-012-10",
      "engine": "Finance",
      "publisher_timestamp": "2026-08-03T15:27:00.000Z",
      "canonical_event_key": "EVENT-095a750f715167797e1b",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 146,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 16
      },
      "matched_impact_words": [
        "market",
        "rate"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-05",
      "label": "E&E News by POLITICO",
      "fact": "E&E News by POLITICO reported: Texas governor puts data center grid approvals on hold",
      "headline": "Texas governor puts data center grid approvals on hold",
      "url": "https://www.eenews.net/articles/texas-governor-puts-data-center-grid-approvals-on-hold/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-026-06",
      "engine": "Energy & Power",
      "publisher_timestamp": "2026-08-03T20:35:51.000Z",
      "canonical_event_key": "EVENT-5f1e0e5cb3ead0115cf0",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 138,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 8
      },
      "matched_impact_words": [
        "approval"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-06",
      "label": "Wowtale",
      "fact": "Wowtale reported: Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad",
      "headline": "Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad",
      "url": "https://en.wowtale.net/2026/08/04/234595/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-025-02",
      "engine": "Medical breakthroughs",
      "publisher_timestamp": "2026-08-03T19:33:19.000Z",
      "canonical_event_key": "EVENT-dbf22d6b10e57a4d40c1",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 138,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 8
      },
      "matched_impact_words": [
        "rate"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-07",
      "label": "Farm and Dairy",
      "fact": "Farm and Dairy reported: Pa.’s oldest Izaak Walton League conservation group celebrates 100 years",
      "headline": "Pa.’s oldest Izaak Walton League conservation group celebrates 100 years",
      "url": "https://www.farmanddairy.com/news/pa-s-oldest-izaak-walton-league-conservation-group-celebrates-100-years/923554.html",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-027-10",
      "engine": "Climate & Environment",
      "publisher_timestamp": "2026-08-03T19:01:29.000Z",
      "canonical_event_key": "EVENT-76451fab2aea3cbe8b47",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 138,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 8
      },
      "matched_impact_words": [
        "rate"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-08",
      "label": "Times of San Diego",
      "fact": "Times of San Diego reported: Opinion: Taxing billionaires will help Californians keep their health coverage",
      "headline": "Opinion: Taxing billionaires will help Californians keep their health coverage",
      "url": "https://timesofsandiego.com/opinion/2026/08/02/taxing-billionaires-will-help-californians-keep-health-coverage/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-042-04",
      "engine": "Healthcare Systems",
      "publisher_timestamp": "2026-08-02T17:00:00.000Z",
      "canonical_event_key": "EVENT-ef932f747361539e6135",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 138,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 8
      },
      "matched_impact_words": [
        "health"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-09",
      "label": "news.sbs.co.kr",
      "fact": "news.sbs.co.kr reported: Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations",
      "headline": "Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations",
      "url": "https://news.sbs.co.kr/amp/news.amp?news_id=N1008686733",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-060-03",
      "engine": "Nuclear Energy",
      "publisher_timestamp": "2026-08-02T15:00:00.000Z",
      "canonical_event_key": "EVENT-42bddb643bddbbd98f48",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 138,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 8
      },
      "matched_impact_words": [
        "shutdown"
      ],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-10",
      "label": "WSMV",
      "fact": "WSMV reported: Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme",
      "headline": "Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme",
      "url": "https://www.wsmv.com/2026/08/03/fresh-food-company-sues-former-tennessee-subsidiary-president-alleging-more-than-32m-scheme/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-002-01",
      "engine": "International News",
      "publisher_timestamp": "2026-08-03T21:27:45.878Z",
      "canonical_event_key": "EVENT-2b9da37e0f99ffec5fe7",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 130,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 0
      },
      "matched_impact_words": [],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-11",
      "label": "WJLA",
      "fact": "WJLA reported: Copper wire stolen from construction site of Loudoun County data center; 3 arrested",
      "headline": "Copper wire stolen from construction site of Loudoun County data center; 3 arrested",
      "url": "https://wjla.com/news/local/copper-wire-stolen-from-construction-site-of-loudoun-county-data-center-3-arrested",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-030-01",
      "engine": "Mining & Critical Materials",
      "publisher_timestamp": "2026-08-03T21:25:13.000Z",
      "canonical_event_key": "EVENT-e6f1f65eccee0af9c4d6",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 130,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 0
      },
      "matched_impact_words": [],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    },
    {
      "id": "LEAD-12",
      "label": "See Great Art",
      "fact": "See Great Art reported: Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center",
      "headline": "Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center",
      "url": "https://www.seegreatart.art/wisconsin-artist-michelle-grabner-gifting-30-years-of-artworks-to-john-michael-kohler-arts-center/",
      "source_type": "SOURCE_LINKED_CURRENT",
      "canonical_signal_id": "OTR-20260804-016-02",
      "engine": "The Arts",
      "publisher_timestamp": "2026-08-03T21:17:57.000Z",
      "canonical_event_key": "EVENT-1f01d51357ae2e53e32f",
      "evidence_state": "SOURCE_LINKED_CURRENT",
      "source_independence": "ONE_PUBLISHER_REPORT",
      "selection_score": 130,
      "selection_score_parts": {
        "current_direct_report": 100,
        "cross_engine_support": 30,
        "independent_publisher_support": 0,
        "impact_words": 0
      },
      "matched_impact_words": [],
      "supporting_engine_count": 2,
      "independent_publisher_group_count": 1,
      "invalidation_condition": "Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline."
    }
  ],
  "tabs": {
    "Today": {
      "eyebrow": "TODAY · 4 AUGUST 2026",
      "question": "What leads the 4/8/26 edition?",
      "headline": "Three current reports lead today’s issue.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. These reports were published inside today’s stated time window and passed the same checks before they were considered for the lead.",
        "They are separate developments. This edition does not claim that one caused another. Open each named report, then watch for later facts or corrections that may change the order."
      ],
      "beats": [
        {
          "label": "FIRST",
          "title": "The first lead report",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. The fourth report is shown beside it as a separate current development, not confirmation.",
          "source_ids": [
            "LEAD-01",
            "LEAD-04"
          ]
        },
        {
          "label": "SECOND",
          "title": "The second lead report",
          "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. The fifth report gives another part of today’s picture without proving the second report.",
          "source_ids": [
            "LEAD-02",
            "LEAD-05"
          ]
        },
        {
          "label": "THIRD",
          "title": "The third lead report",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The sixth report remains separate and may matter to a different decision.",
          "source_ids": [
            "LEAD-03",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.",
      "history_echo": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\". This is background only. It compares the nearest earlier saved Today section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Today",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Today",
          "question": "What leads the 4/8/26 edition?",
          "headline": "Three current reports lead today’s issue.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. These reports were published inside today’s stated time window and passed the same checks before they were considered for the lead.",
            "They are separate developments. This edition does not claim that one caused another. Open each named report, then watch for later facts or corrections that may change the order."
          ],
          "beats": [
            {
              "label": "FIRST",
              "title": "The first lead report",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. The fourth report is shown beside it as a separate current development, not confirmation.",
              "source_ids": [
                "LEAD-01",
                "LEAD-04"
              ]
            },
            {
              "label": "SECOND",
              "title": "The second lead report",
              "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. The fifth report gives another part of today’s picture without proving the second report.",
              "source_ids": [
                "LEAD-02",
                "LEAD-05"
              ]
            },
            {
              "label": "THIRD",
              "title": "The third lead report",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The sixth report remains separate and may matter to a different decision.",
              "source_ids": [
                "LEAD-03",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.",
          "watch_conditions": [
            "Corrections to the first three reports",
            "New official statements",
            "Later facts that change the order"
          ],
          "invalidation": "Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.",
          "content_sha256": "3f405f3a991c2efbc05ee2066aaf2788375ed0e00fb112aec270036c4db2593c",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Today",
          "question": "What changed before 09:54 SGT today?",
          "headline": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
          "narrative": [
            "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” Together, these reports show that hopes for Iran talks quickly lowered fears of a wider war. Oil fell and US share prices rose before 09:54 SGT. A pause is not a peace deal, so this change can still reverse.",
            "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” More supply from OPEC+ gave oil another reason to fall. The US and Japan also acted together to support the yen. Reports on wider Asian share-market swings came later, so they are not added to this earlier record."
          ],
          "beats": [
            {
              "label": "IRAN TALKS",
              "title": "A pause lowered immediate fears",
              "body": "The reported pause in planned strikes opened a chance for talks. We still need later official news to know if it will last.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "OIL",
              "title": "Two forces pushed oil down",
              "body": "Hopes for Iran talks reduced fears about supply, while OPEC+ also agreed to increase supply.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "YEN",
              "title": "The US and Japan acted together",
              "body": "Their joint action made bets against the yen more risky and may affect money and market choices across Asia.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
          "watch_conditions": [
            "Whether the strike pause holds",
            "Whether oil weakness survives both drivers",
            "Whether joint yen support repeats or fades"
          ],
          "invalidation": "Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.",
          "content_sha256": "1fd76751189645b92b324f7374f204d73f94169aecee0beba8b88872b47dd908",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What changed before 09:54 SGT today?",
            "current": "What leads the 4/8/26 edition?"
          },
          "headline": {
            "changed": true,
            "prior": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
            "current": "Three current reports lead today’s issue."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. These reports were published inside today’s stated time window and passed the same checks before they were considered for the lead.",
              "They are separate developments. This edition does not claim that one caused another. Open each named report, then watch for later facts or corrections that may change the order."
            ],
            "removed": [
              "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” Together, these reports show that hopes for Iran talks quickly lowered fears of a wider war. Oil fell and US share prices rose before 09:54 SGT. A pause is not a peace deal, so this change can still reverse.",
              "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” More supply from OPEC+ gave oil another reason to fall. The US and Japan also acted together to support the yen. Reports on wider Asian share-market swings came later, so they are not added to this earlier record."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "The first lead report",
              "The second lead report",
              "The third lead report"
            ],
            "removed_titles": [
              "A pause lowered immediate fears",
              "Two forces pushed oil down",
              "The US and Japan acted together"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
            "current": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Corrections to the first three reports",
              "New official statements",
              "Later facts that change the order"
            ],
            "removed": [
              "Whether the strike pause holds",
              "Whether oil weakness survives both drivers",
              "Whether joint yen support repeats or fades"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.",
            "current": "Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof."
          }
        },
        "similarities": [
          "Both records belong to the Today canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
          "Headline changed from \"A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.\" to \"Three current reports lead today’s issue.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added The first lead report, The second lead report, The third lead report; removed A pause lowered immediate fears, Two forces pushed oil down, The US and Japan acted together.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.\" to \"The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.\" to \"Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Today",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "95d6457e3563b5f17ba86f983fe4382332e460d17f078d08ee34dda51942dd63",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "3e3c90634de0f5b150cd85041135bd990ae1538ebea4904d2575116b61066b42"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TODAY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TODAY",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Today",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Today",
          "source_headline": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
          "source_question": "What changed before 09:54 SGT today?",
          "source_market_connection": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "1fd76751189645b92b324f7374f204d73f94169aecee0beba8b88872b47dd908",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Today",
          "current_headline": "Three current reports lead today’s issue.",
          "current_question": "What leads the 4/8/26 edition?",
          "current_market_connection": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "3f405f3a991c2efbc05ee2066aaf2788375ed0e00fb112aec270036c4db2593c",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What changed before 09:54 SGT today?",
              "current": "What leads the 4/8/26 edition?"
            },
            "headline": {
              "changed": true,
              "prior": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
              "current": "Three current reports lead today’s issue."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. These reports were published inside today’s stated time window and passed the same checks before they were considered for the lead.",
                "They are separate developments. This edition does not claim that one caused another. Open each named report, then watch for later facts or corrections that may change the order."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” Together, these reports show that hopes for Iran talks quickly lowered fears of a wider war. Oil fell and US share prices rose before 09:54 SGT. A pause is not a peace deal, so this change can still reverse.",
                "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” More supply from OPEC+ gave oil another reason to fall. The US and Japan also acted together to support the yen. Reports on wider Asian share-market swings came later, so they are not added to this earlier record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "The first lead report",
                "The second lead report",
                "The third lead report"
              ],
              "removed_titles": [
                "A pause lowered immediate fears",
                "Two forces pushed oil down",
                "The US and Japan acted together"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
              "current": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Corrections to the first three reports",
                "New official statements",
                "Later facts that change the order"
              ],
              "removed": [
                "Whether the strike pause holds",
                "Whether oil weakness survives both drivers",
                "Whether joint yen support repeats or fades"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.",
              "current": "Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof."
            }
          },
          "similarities": [
            "Both records belong to the Today canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
            "Headline changed from \"A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.\" to \"Three current reports lead today’s issue.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added The first lead report, The second lead report, The third lead report; removed A pause lowered immediate fears, Two forces pushed oil down, The US and Japan acted together.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.\" to \"The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.\" to \"Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.\"."
          ],
          "comparison": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
          "difference": "Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\". Headline changed from \"A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.\" to \"Three current reports lead today’s issue.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added The first lead report, The second lead report, The third lead report; removed A pause lowered immediate fears, Two forces pushed oil down, The US and Japan acted together. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.\" to \"The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.\" to \"Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Today",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "95d6457e3563b5f17ba86f983fe4382332e460d17f078d08ee34dda51942dd63",
          "comparison_receipt_sha256": "3e3c90634de0f5b150cd85041135bd990ae1538ebea4904d2575116b61066b42",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "24bbe783fd5d1020dd6f585c583657b1f8b9e9e0ffdec03fda3fa1199f35bdb7",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "three",
            "lead",
            "today",
            "issue",
            "the",
            "first",
            "one",
            "clear",
            "rule",
            "placed",
            "them",
            "order",
            "can",
            "change",
            "stronger",
            "newer",
            "proof",
            "arrives",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "datamarnews",
            "tariffs",
            "and",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "were",
            "inside",
            "stated",
            "time",
            "window",
            "passed",
            "same",
            "checks",
            "considered",
            "are",
            "separate",
            "developments",
            "edition",
            "not",
            "claim",
            "caused",
            "open",
            "named",
            "then",
            "watch",
            "later",
            "facts",
            "corrections",
            "may",
            "new",
            "official",
            "statements"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02"
        ],
        "direction_counts": {
          "UP": 2,
          "DOWN": 0,
          "MIXED": 1,
          "UNSTATED": 2
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 257.2596,
            "why": [
              "shared terms: three, edition, developments, today, are"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Every lead claim points to current rows inside OTR-DAILY-73-2026-08-03-0954-SGT.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 209.4068,
            "why": [
              "shared terms: the, can, proof, lead, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 203.2284,
            "why": [
              "shared terms: order, the, not, first, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 200.2093,
            "why": [
              "shared terms: and, not, the, today, asia"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 200.1834,
            "why": [
              "shared terms: the, edition, and, can, proof"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "6ce966d486559e65bbfef1211f022f53f93200a8b1989678d3d50fdfb8299663"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TODAY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TODAY",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Today",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Today",
          "source_headline": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
          "source_question": "What changed before 09:54 SGT today?",
          "source_market_connection": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "1fd76751189645b92b324f7374f204d73f94169aecee0beba8b88872b47dd908",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Today",
          "current_headline": "Three current reports lead today’s issue.",
          "current_question": "What leads the 4/8/26 edition?",
          "current_market_connection": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "3f405f3a991c2efbc05ee2066aaf2788375ed0e00fb112aec270036c4db2593c",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What changed before 09:54 SGT today?",
              "current": "What leads the 4/8/26 edition?"
            },
            "headline": {
              "changed": true,
              "prior": "A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.",
              "current": "Three current reports lead today’s issue."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. These reports were published inside today’s stated time window and passed the same checks before they were considered for the lead.",
                "They are separate developments. This edition does not claim that one caused another. Open each named report, then watch for later facts or corrections that may change the order."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” Together, these reports show that hopes for Iran talks quickly lowered fears of a wider war. Oil fell and US share prices rose before 09:54 SGT. A pause is not a peace deal, so this change can still reverse.",
                "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” More supply from OPEC+ gave oil another reason to fall. The US and Japan also acted together to support the yen. Reports on wider Asian share-market swings came later, so they are not added to this earlier record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "The first lead report",
                "The second lead report",
                "The third lead report"
              ],
              "removed_titles": [
                "A pause lowered immediate fears",
                "Two forces pushed oil down",
                "The US and Japan acted together"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.",
              "current": "The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Corrections to the first three reports",
                "New official statements",
                "Later facts that change the order"
              ],
              "removed": [
                "Whether the strike pause holds",
                "Whether oil weakness survives both drivers",
                "Whether joint yen support repeats or fades"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.",
              "current": "Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof."
            }
          },
          "similarities": [
            "Both records belong to the Today canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
            "Headline changed from \"A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.\" to \"Three current reports lead today’s issue.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added The first lead report, The second lead report, The third lead report; removed A pause lowered immediate fears, Two forces pushed oil down, The US and Japan acted together.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.\" to \"The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.\" to \"Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.\"."
          ],
          "comparison": "The Today tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\".",
          "difference": "Question changed from \"What changed before 09:54 SGT today?\" to \"What leads the 4/8/26 edition?\". Headline changed from \"A pause in planned Iran strikes, falling oil and joint action on the yen changed today's risk picture.\" to \"Three current reports lead today’s issue.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added The first lead report, The second lead report, The third lead report; removed A pause lowered immediate fears, Two forces pushed oil down, The US and Japan acted together. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The simple picture is this: hopes for talks lowered war fears, oil fell, and US share prices rose. More OPEC+ supply also pushed oil down. Separate action by the US and Japan supported the yen. We still need to see whether these changes last.\" to \"The first three reports lead because one clear rule placed them first. Their order can change when stronger or newer proof arrives.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Change this view if strikes restart, oil rises again despite both forces, or support for the yen fades after the first move.\" to \"Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Today",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "95d6457e3563b5f17ba86f983fe4382332e460d17f078d08ee34dda51942dd63",
          "comparison_receipt_sha256": "3e3c90634de0f5b150cd85041135bd990ae1538ebea4904d2575116b61066b42",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Corrections to the first three reports",
        "New official statements",
        "Later facts that change the order"
      ],
      "invalidation": "Change the lead order if a named report is corrected, withdrawn, or overtaken by stronger current proof.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Everything": {
      "eyebrow": "EVERYTHING · 4 AUGUST 2026",
      "question": "What did the full search find for this edition?",
      "headline": "687 current reports passed across 73 search areas.",
      "narrative": [
        "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. These are part of the wider issue behind the first three reports. Every included item keeps its publisher, time, direct link, topic area, and reason it may need to be removed.",
        "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. A wide search helps readers see more of the day, but it does not make every report equally important or turn repeated coverage into independent proof."
      ],
      "beats": [
        {
          "label": "WIDER 1",
          "title": "Reports four and five",
          "body": "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Both remain open for readers who need the wider issue.",
          "source_ids": [
            "LEAD-04",
            "LEAD-05"
          ]
        },
        {
          "label": "WIDER 2",
          "title": "Reports six and seven",
          "body": "Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Separately, Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. They come from separate events and must be checked on their own.",
          "source_ids": [
            "LEAD-06",
            "LEAD-07"
          ]
        },
        {
          "label": "WIDER 3",
          "title": "Reports eight and nine",
          "body": "Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Separately, news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Their place in the wider issue does not make them less true or more certain.",
          "source_ids": [
            "LEAD-08",
            "LEAD-09"
          ]
        }
      ],
      "market_connection": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.",
      "history_echo": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\". This is background only. It compares the nearest earlier saved Everything section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Everything",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Everything",
          "question": "What did the full search find for this edition?",
          "headline": "687 current reports passed across 73 search areas.",
          "narrative": [
            "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. These are part of the wider issue behind the first three reports. Every included item keeps its publisher, time, direct link, topic area, and reason it may need to be removed.",
            "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. A wide search helps readers see more of the day, but it does not make every report equally important or turn repeated coverage into independent proof."
          ],
          "beats": [
            {
              "label": "WIDER 1",
              "title": "Reports four and five",
              "body": "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Both remain open for readers who need the wider issue.",
              "source_ids": [
                "LEAD-04",
                "LEAD-05"
              ]
            },
            {
              "label": "WIDER 2",
              "title": "Reports six and seven",
              "body": "Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Separately, Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. They come from separate events and must be checked on their own.",
              "source_ids": [
                "LEAD-06",
                "LEAD-07"
              ]
            },
            {
              "label": "WIDER 3",
              "title": "Reports eight and nine",
              "body": "Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Separately, news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Their place in the wider issue does not make them less true or more certain.",
              "source_ids": [
                "LEAD-08",
                "LEAD-09"
              ]
            }
          ],
          "source_ids": [
            "LEAD-04",
            "LEAD-05",
            "LEAD-06",
            "LEAD-07",
            "LEAD-08",
            "LEAD-09"
          ],
          "market_connection": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.",
          "watch_conditions": [
            "New reports across several areas",
            "Repeated reports from one publisher",
            "Useful items that the lead order missed"
          ],
          "invalidation": "Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.",
          "content_sha256": "0ad9843769643abfc9e2dcff4bf984f30500b74c0cb5bd1a398bd199e66bb3f9",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Everything",
          "question": "What else did today's full search find?",
          "headline": "584 current signals give a wide view, while the main story leads with the news that matters most.",
          "narrative": [
            "OTR's 73 search areas kept 584 checked items. The main group is clear: a pause in planned Iran strikes, weaker oil as hopes for talks rose, more OPEC+ supply, and joint action to support the yen.",
            "The wider feed uses 566 direct links from 384 websites. It also covers Singapore, supply, technology, online safety, health, food, climate and future ideas. A wide search is useful, but the main page must still put the most important news first."
          ],
          "beats": [
            {
              "label": "MAIN NEWS",
              "title": "World events and markets lead",
              "body": "The Iran pause, oil move and yen action can quickly affect costs, money and business choices.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "ANOTHER CAUSE",
              "title": "Oil did not fall for one reason",
              "body": "Lower war fears and expected OPEC+ supply both helped push oil down.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "WIDER VIEW",
              "title": "Other useful topics remain available",
              "body": "Singapore, technology, health and climate reports remain open for readers who need them.",
              "source_ids": [
                "CLIMATE-CURRENT",
                "HEALTH-CURRENT",
                "LOCAL-CURRENT",
                "TECH-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "CLIMATE-CURRENT",
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "HEALTH-CURRENT",
            "LOCAL-CURRENT",
            "MARKET-CURRENT",
            "TECH-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
          "watch_conditions": [
            "News that affects several areas",
            "Reports that disagree",
            "Important news that arrived after this edition closed"
          ],
          "invalidation": "Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.",
          "content_sha256": "b4c4470bba0df4f27a386a4bcf9329bdd5bd82861ab83e0e421c7ff679dde0a0",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What else did today's full search find?",
            "current": "What did the full search find for this edition?"
          },
          "headline": {
            "changed": true,
            "prior": "584 current signals give a wide view, while the main story leads with the news that matters most.",
            "current": "687 current reports passed across 73 search areas."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. These are part of the wider issue behind the first three reports. Every included item keeps its publisher, time, direct link, topic area, and reason it may need to be removed.",
              "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. A wide search helps readers see more of the day, but it does not make every report equally important or turn repeated coverage into independent proof."
            ],
            "removed": [
              "OTR's 73 search areas kept 584 checked items. The main group is clear: a pause in planned Iran strikes, weaker oil as hopes for talks rose, more OPEC+ supply, and joint action to support the yen.",
              "The wider feed uses 566 direct links from 384 websites. It also covers Singapore, supply, technology, online safety, health, food, climate and future ideas. A wide search is useful, but the main page must still put the most important news first."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "Reports four and five",
              "Reports six and seven",
              "Reports eight and nine"
            ],
            "removed_titles": [
              "World events and markets lead",
              "Oil did not fall for one reason",
              "Other useful topics remain available"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 8,
            "current_count": 6,
            "added": [
              "LEAD-04",
              "LEAD-05",
              "LEAD-06",
              "LEAD-07",
              "LEAD-08",
              "LEAD-09"
            ],
            "removed": [
              "CLIMATE-CURRENT",
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "HEALTH-CURRENT",
              "LOCAL-CURRENT",
              "MARKET-CURRENT",
              "TECH-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
            "current": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "New reports across several areas",
              "Repeated reports from one publisher",
              "Useful items that the lead order missed"
            ],
            "removed": [
              "News that affects several areas",
              "Reports that disagree",
              "Important news that arrived after this edition closed"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.",
            "current": "Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline."
          }
        },
        "similarities": [
          "Both records belong to the Everything canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
          "Headline changed from \"584 current signals give a wide view, while the main story leads with the news that matters most.\" to \"687 current reports passed across 73 search areas.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added Reports four and five, Reports six and seven, Reports eight and nine; removed World events and markets lead, Oil did not fall for one reason, Other useful topics remain available.",
          "Source set changed: added LEAD-04, LEAD-05, LEAD-06 and 3 more; removed CLIMATE-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 5 more.",
          "Market connection changed from \"The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.\" to \"The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.\" to \"Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Everything",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 14,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "b69e934b9a67ece43801cf8923819bcfac017d20079ae9fa955b0bfbed957928",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "302b911bcc9dbb5ee6264aa22950e15c01b11c6daee43adffe9a407f16da79fb"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-EVERYTHING",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-EVERYTHING",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Everything",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Everything",
          "source_headline": "584 current signals give a wide view, while the main story leads with the news that matters most.",
          "source_question": "What else did today's full search find?",
          "source_market_connection": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "b4c4470bba0df4f27a386a4bcf9329bdd5bd82861ab83e0e421c7ff679dde0a0",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Everything",
          "current_headline": "687 current reports passed across 73 search areas.",
          "current_question": "What did the full search find for this edition?",
          "current_market_connection": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "0ad9843769643abfc9e2dcff4bf984f30500b74c0cb5bd1a398bd199e66bb3f9",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What else did today's full search find?",
              "current": "What did the full search find for this edition?"
            },
            "headline": {
              "changed": true,
              "prior": "584 current signals give a wide view, while the main story leads with the news that matters most.",
              "current": "687 current reports passed across 73 search areas."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. These are part of the wider issue behind the first three reports. Every included item keeps its publisher, time, direct link, topic area, and reason it may need to be removed.",
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. A wide search helps readers see more of the day, but it does not make every report equally important or turn repeated coverage into independent proof."
              ],
              "removed": [
                "OTR's 73 search areas kept 584 checked items. The main group is clear: a pause in planned Iran strikes, weaker oil as hopes for talks rose, more OPEC+ supply, and joint action to support the yen.",
                "The wider feed uses 566 direct links from 384 websites. It also covers Singapore, supply, technology, online safety, health, food, climate and future ideas. A wide search is useful, but the main page must still put the most important news first."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Reports four and five",
                "Reports six and seven",
                "Reports eight and nine"
              ],
              "removed_titles": [
                "World events and markets lead",
                "Oil did not fall for one reason",
                "Other useful topics remain available"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 8,
              "current_count": 6,
              "added": [
                "LEAD-04",
                "LEAD-05",
                "LEAD-06",
                "LEAD-07",
                "LEAD-08",
                "LEAD-09"
              ],
              "removed": [
                "CLIMATE-CURRENT",
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "HEALTH-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
              "current": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "New reports across several areas",
                "Repeated reports from one publisher",
                "Useful items that the lead order missed"
              ],
              "removed": [
                "News that affects several areas",
                "Reports that disagree",
                "Important news that arrived after this edition closed"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.",
              "current": "Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline."
            }
          },
          "similarities": [
            "Both records belong to the Everything canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
            "Headline changed from \"584 current signals give a wide view, while the main story leads with the news that matters most.\" to \"687 current reports passed across 73 search areas.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Reports four and five, Reports six and seven, Reports eight and nine; removed World events and markets lead, Oil did not fall for one reason, Other useful topics remain available.",
            "Source set changed: added LEAD-04, LEAD-05, LEAD-06 and 3 more; removed CLIMATE-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 5 more.",
            "Market connection changed from \"The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.\" to \"The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.\" to \"Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.\"."
          ],
          "comparison": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
          "difference": "Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\". Headline changed from \"584 current signals give a wide view, while the main story leads with the news that matters most.\" to \"687 current reports passed across 73 search areas.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Reports four and five, Reports six and seven, Reports eight and nine; removed World events and markets lead, Oil did not fall for one reason, Other useful topics remain available. Source set changed: added LEAD-04, LEAD-05, LEAD-06 and 3 more; removed CLIMATE-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 5 more. Market connection changed from \"The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.\" to \"The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.\" to \"Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Everything",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 14,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "b69e934b9a67ece43801cf8923819bcfac017d20079ae9fa955b0bfbed957928",
          "comparison_receipt_sha256": "302b911bcc9dbb5ee6264aa22950e15c01b11c6daee43adffe9a407f16da79fb",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "87849621b617e969a2f74bf252ad327f72c218ce36db16c13e74bb3be8671d6a",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "ANIMAL_WILDLIFE",
              "label": "Animals and wildlife"
            },
            {
              "id": "CLIMATE_ENVIRONMENT",
              "label": "Climate and environment"
            }
          ],
          "terms": [
            "passed",
            "across",
            "search",
            "areas",
            "the",
            "list",
            "shows",
            "breadth",
            "lead",
            "order",
            "editorial",
            "choice",
            "remain",
            "visible",
            "readers",
            "can",
            "check",
            "was",
            "found",
            "and",
            "came",
            "first",
            "mortgage",
            "rates",
            "roughly",
            "unchanged",
            "despite",
            "bond",
            "market",
            "improvement",
            "politico",
            "texas",
            "governor",
            "puts",
            "data",
            "center",
            "grid",
            "approvals",
            "hold",
            "wowtale",
            "mediqstar",
            "closes",
            "pre",
            "series",
            "round",
            "genaxis",
            "accelerate",
            "diagnostic",
            "platform",
            "abroad",
            "are",
            "part",
            "wider",
            "issue",
            "behind",
            "three",
            "every",
            "included",
            "item",
            "keeps",
            "its",
            "time",
            "direct",
            "link",
            "topic",
            "area",
            "reason",
            "may",
            "need",
            "removed",
            "farm",
            "dairy",
            "oldest",
            "izaak",
            "walton",
            "league",
            "conservation",
            "group",
            "celebrates",
            "years",
            "times",
            "san",
            "diego",
            "opinion",
            "taxing",
            "billionaires",
            "will",
            "help",
            "californians",
            "keep",
            "health",
            "coverage",
            "sbs",
            "shutdown",
            "crisis",
            "due",
            "european",
            "drought",
            "hungary",
            "paks",
            "nuclear",
            "power",
            "plant",
            "completely",
            "halts",
            "operations",
            "wide",
            "helps",
            "see",
            "day",
            "but",
            "not",
            "make",
            "equally",
            "important",
            "turn",
            "repeated",
            "independent",
            "proof",
            "new",
            "several",
            "one",
            "useful",
            "items",
            "missed"
          ],
          "direction": "UNSTATED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-02-EVERYTHING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT"
        ],
        "direction_counts": {
          "UP": 1,
          "DOWN": 0,
          "MIXED": 2,
          "UNSTATED": 2
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 245.4324,
            "why": [
              "shared terms: order, the, important, editorial, not"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Every lead claim points to current rows inside OTR-DAILY-73-2026-08-03-0954-SGT.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 233.3996,
            "why": [
              "shared terms: the, can, proof, lead, unchanged"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-02-EVERYTHING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "584 current signals give a wide view, while the main story leads with the news that matters most.",
            "engine": null,
            "tab": "Everything",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [
              {
                "id": "CLIMATE_ENVIRONMENT",
                "label": "Climate and environment"
              }
            ],
            "score": 231.8656,
            "why": [
              "same event: Climate and environment",
              "shared terms: search, the, and, lead, useful"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 229.0003,
            "why": [
              "shared terms: the, unchanged, and, can, remain"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 222.2328,
            "why": [
              "shared terms: three, market, editorial, are, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "456aa2fe8fd05f901025dc82981c51465b77ee2bd86bfcb02c84288755c0d3d0"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-EVERYTHING",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-EVERYTHING",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Everything",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Everything",
          "source_headline": "584 current signals give a wide view, while the main story leads with the news that matters most.",
          "source_question": "What else did today's full search find?",
          "source_market_connection": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "b4c4470bba0df4f27a386a4bcf9329bdd5bd82861ab83e0e421c7ff679dde0a0",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Everything",
          "current_headline": "687 current reports passed across 73 search areas.",
          "current_question": "What did the full search find for this edition?",
          "current_market_connection": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "0ad9843769643abfc9e2dcff4bf984f30500b74c0cb5bd1a398bd199e66bb3f9",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What else did today's full search find?",
              "current": "What did the full search find for this edition?"
            },
            "headline": {
              "changed": true,
              "prior": "584 current signals give a wide view, while the main story leads with the news that matters most.",
              "current": "687 current reports passed across 73 search areas."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. These are part of the wider issue behind the first three reports. Every included item keeps its publisher, time, direct link, topic area, and reason it may need to be removed.",
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. A wide search helps readers see more of the day, but it does not make every report equally important or turn repeated coverage into independent proof."
              ],
              "removed": [
                "OTR's 73 search areas kept 584 checked items. The main group is clear: a pause in planned Iran strikes, weaker oil as hopes for talks rose, more OPEC+ supply, and joint action to support the yen.",
                "The wider feed uses 566 direct links from 384 websites. It also covers Singapore, supply, technology, online safety, health, food, climate and future ideas. A wide search is useful, but the main page must still put the most important news first."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Reports four and five",
                "Reports six and seven",
                "Reports eight and nine"
              ],
              "removed_titles": [
                "World events and markets lead",
                "Oil did not fall for one reason",
                "Other useful topics remain available"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 8,
              "current_count": 6,
              "added": [
                "LEAD-04",
                "LEAD-05",
                "LEAD-06",
                "LEAD-07",
                "LEAD-08",
                "LEAD-09"
              ],
              "removed": [
                "CLIMATE-CURRENT",
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "HEALTH-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.",
              "current": "The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "New reports across several areas",
                "Repeated reports from one publisher",
                "Useful items that the lead order missed"
              ],
              "removed": [
                "News that affects several areas",
                "Reports that disagree",
                "Important news that arrived after this edition closed"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.",
              "current": "Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline."
            }
          },
          "similarities": [
            "Both records belong to the Everything canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
            "Headline changed from \"584 current signals give a wide view, while the main story leads with the news that matters most.\" to \"687 current reports passed across 73 search areas.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Reports four and five, Reports six and seven, Reports eight and nine; removed World events and markets lead, Oil did not fall for one reason, Other useful topics remain available.",
            "Source set changed: added LEAD-04, LEAD-05, LEAD-06 and 3 more; removed CLIMATE-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 5 more.",
            "Market connection changed from \"The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.\" to \"The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.\" to \"Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.\"."
          ],
          "comparison": "The Everything tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\".",
          "difference": "Question changed from \"What else did today's full search find?\" to \"What did the full search find for this edition?\". Headline changed from \"584 current signals give a wide view, while the main story leads with the news that matters most.\" to \"687 current reports passed across 73 search areas.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Reports four and five, Reports six and seven, Reports eight and nine; removed World events and markets lead, Oil did not fall for one reason, Other useful topics remain available. Source set changed: added LEAD-04, LEAD-05, LEAD-06 and 3 more; removed CLIMATE-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 5 more. Market connection changed from \"The full search shows what OTR found. The main story shows what deserves attention first. A useful service needs both.\" to \"The full list shows breadth. The lead order shows editorial choice. Both remain visible so readers can check what was found and what came first.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Change the order when stronger current proof matters more, or when a correction breaks the link between an event and its result.\" to \"Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Everything",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 14,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "b69e934b9a67ece43801cf8923819bcfac017d20079ae9fa955b0bfbed957928",
          "comparison_receipt_sha256": "302b911bcc9dbb5ee6264aa22950e15c01b11c6daee43adffe9a407f16da79fb",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "New reports across several areas",
        "Repeated reports from one publisher",
        "Useful items that the lead order missed"
      ],
      "invalidation": "Review the whole issue if a search area falls below its required count or a direct report no longer supports its headline.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Worry": {
      "eyebrow": "WORRY · 4 AUGUST 2026",
      "question": "What could make today’s lead view wrong?",
      "headline": "A correction, weak support, or a later event could change the view.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Its saved warning says: Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline.. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Its facts must also survive later checking.",
        "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The largest risk is treating three fresh headlines as a complete picture. One report can be accurate while its wider meaning, timing, or importance still changes."
      ],
      "beats": [
        {
          "label": "CHECK 1",
          "title": "Check the first and fourth reports",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Either can change without proving the other wrong.",
          "source_ids": [
            "LEAD-01",
            "LEAD-04"
          ]
        },
        {
          "label": "CHECK 2",
          "title": "Check the second and fifth reports",
          "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. A correction must change only the report it affects.",
          "source_ids": [
            "LEAD-02",
            "LEAD-05"
          ]
        },
        {
          "label": "CHECK 3",
          "title": "Check the third and sixth reports",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Later proof may move either report up, down, or out.",
          "source_ids": [
            "LEAD-03",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.",
      "history_echo": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\". This is background only. It compares the nearest earlier saved Worry section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Worry",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Worry",
          "question": "What could make today’s lead view wrong?",
          "headline": "A correction, weak support, or a later event could change the view.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Its saved warning says: Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline.. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Its facts must also survive later checking.",
            "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The largest risk is treating three fresh headlines as a complete picture. One report can be accurate while its wider meaning, timing, or importance still changes."
          ],
          "beats": [
            {
              "label": "CHECK 1",
              "title": "Check the first and fourth reports",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Either can change without proving the other wrong.",
              "source_ids": [
                "LEAD-01",
                "LEAD-04"
              ]
            },
            {
              "label": "CHECK 2",
              "title": "Check the second and fifth reports",
              "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. A correction must change only the report it affects.",
              "source_ids": [
                "LEAD-02",
                "LEAD-05"
              ]
            },
            {
              "label": "CHECK 3",
              "title": "Check the third and sixth reports",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Later proof may move either report up, down, or out.",
              "source_ids": [
                "LEAD-03",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.",
          "watch_conditions": [
            "Publisher corrections",
            "Missing second reports",
            "A later event with greater impact"
          ],
          "invalidation": "Remove any claim that cannot be traced to its named report and time.",
          "content_sha256": "ee3736d6e255ee590db7f66e266b19355f34514057b7130ef1885df3d2ce57e8",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Worry",
          "question": "What could make today's relief story fail?",
          "headline": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
          "narrative": [
            "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” The strongest case against today's hopeful view is simple: a pause can end without a lasting deal. If strikes return, oil may rise and investors may move back to safer assets.",
            "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” Oil and the yen may both turn back after their first move. The first response matters, but what lasts matters more for budgets and business choices."
          ],
          "beats": [
            {
              "label": "PAUSE MAY END",
              "title": "The strike pause may not become a peace deal",
              "body": "Treat the pause as a short-term change, not proof that the danger has ended.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "OIL CAN TURN",
              "title": "Oil moves for more than one reason",
              "body": "A later rise in oil would not by itself prove that talks failed. Supply and demand can also pull prices in different ways.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "YEN SUPPORT MAY FADE",
              "title": "Government action may not control the market",
              "body": "The joint action can stop one-sided bets for a while, but later moves still depend on more action and wider market choices.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
          "watch_conditions": [
            "Renewed military action",
            "A sharp rise in oil",
            "Yen weakness after joint government action"
          ],
          "invalidation": "These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.",
          "content_sha256": "fdc7bcf214358daa43a6640a9e03c33ed847a5aaf206335823ba7b035390826c",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What could make today's relief story fail?",
            "current": "What could make today’s lead view wrong?"
          },
          "headline": {
            "changed": true,
            "prior": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
            "current": "A correction, weak support, or a later event could change the view."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Its saved warning says: Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline.. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Its facts must also survive later checking.",
              "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The largest risk is treating three fresh headlines as a complete picture. One report can be accurate while its wider meaning, timing, or importance still changes."
            ],
            "removed": [
              "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” The strongest case against today's hopeful view is simple: a pause can end without a lasting deal. If strikes return, oil may rise and investors may move back to safer assets.",
              "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” Oil and the yen may both turn back after their first move. The first response matters, but what lasts matters more for budgets and business choices."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "Check the first and fourth reports",
              "Check the second and fifth reports",
              "Check the third and sixth reports"
            ],
            "removed_titles": [
              "The strike pause may not become a peace deal",
              "Oil moves for more than one reason",
              "Government action may not control the market"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
            "current": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Publisher corrections",
              "Missing second reports",
              "A later event with greater impact"
            ],
            "removed": [
              "Renewed military action",
              "A sharp rise in oil",
              "Yen weakness after joint government action"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.",
            "current": "Remove any claim that cannot be traced to its named report and time."
          }
        },
        "similarities": [
          "Both records belong to the Worry canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
          "Headline changed from \"The main risks are a short pause, an oil price rebound and support for the yen that does not last.\" to \"A correction, weak support, or a later event could change the view.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added Check the first and fourth reports, Check the second and fifth reports, Check the third and sixth reports; removed The strike pause may not become a peace deal, Oil moves for more than one reason, Government action may not control the market.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.\" to \"Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.\" to \"Remove any claim that cannot be traced to its named report and time.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Worry",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "fe5a3417f41d56f858a99aa2cc0776966a51f36a5099968db72b4f76f0589bb7",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "cae721718e7c9d451315da09f8c6e6f6faeb31baf431c2dd42e20732a63160a2"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-WORRY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-WORRY",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Worry",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Worry",
          "source_headline": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
          "source_question": "What could make today's relief story fail?",
          "source_market_connection": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "fdc7bcf214358daa43a6640a9e03c33ed847a5aaf206335823ba7b035390826c",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Worry",
          "current_headline": "A correction, weak support, or a later event could change the view.",
          "current_question": "What could make today’s lead view wrong?",
          "current_market_connection": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "ee3736d6e255ee590db7f66e266b19355f34514057b7130ef1885df3d2ce57e8",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What could make today's relief story fail?",
              "current": "What could make today’s lead view wrong?"
            },
            "headline": {
              "changed": true,
              "prior": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
              "current": "A correction, weak support, or a later event could change the view."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Its saved warning says: Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline.. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Its facts must also survive later checking.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The largest risk is treating three fresh headlines as a complete picture. One report can be accurate while its wider meaning, timing, or importance still changes."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” The strongest case against today's hopeful view is simple: a pause can end without a lasting deal. If strikes return, oil may rise and investors may move back to safer assets.",
                "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” Oil and the yen may both turn back after their first move. The first response matters, but what lasts matters more for budgets and business choices."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Check the first and fourth reports",
                "Check the second and fifth reports",
                "Check the third and sixth reports"
              ],
              "removed_titles": [
                "The strike pause may not become a peace deal",
                "Oil moves for more than one reason",
                "Government action may not control the market"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
              "current": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Publisher corrections",
                "Missing second reports",
                "A later event with greater impact"
              ],
              "removed": [
                "Renewed military action",
                "A sharp rise in oil",
                "Yen weakness after joint government action"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.",
              "current": "Remove any claim that cannot be traced to its named report and time."
            }
          },
          "similarities": [
            "Both records belong to the Worry canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
            "Headline changed from \"The main risks are a short pause, an oil price rebound and support for the yen that does not last.\" to \"A correction, weak support, or a later event could change the view.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Check the first and fourth reports, Check the second and fifth reports, Check the third and sixth reports; removed The strike pause may not become a peace deal, Oil moves for more than one reason, Government action may not control the market.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.\" to \"Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.\" to \"Remove any claim that cannot be traced to its named report and time.\"."
          ],
          "comparison": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
          "difference": "Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\". Headline changed from \"The main risks are a short pause, an oil price rebound and support for the yen that does not last.\" to \"A correction, weak support, or a later event could change the view.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Check the first and fourth reports, Check the second and fifth reports, Check the third and sixth reports; removed The strike pause may not become a peace deal, Oil moves for more than one reason, Government action may not control the market. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.\" to \"Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.\" to \"Remove any claim that cannot be traced to its named report and time.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Worry",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "fe5a3417f41d56f858a99aa2cc0776966a51f36a5099968db72b4f76f0589bb7",
          "comparison_receipt_sha256": "cae721718e7c9d451315da09f8c6e6f6faeb31baf431c2dd42e20732a63160a2",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "5e7709713f341a036d39fde48ccaed4a75cb6fb7bc2baef59cd13c9126256cb1",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "correction",
            "weak",
            "support",
            "later",
            "event",
            "change",
            "the",
            "view",
            "fresh",
            "can",
            "matter",
            "wider",
            "effects",
            "are",
            "clear",
            "safe",
            "response",
            "keep",
            "claim",
            "narrow",
            "and",
            "checking",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "its",
            "saved",
            "warning",
            "says",
            "withdraw",
            "direct",
            "changes",
            "disappears",
            "longer",
            "supports",
            "stated",
            "headline",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "facts",
            "must",
            "survive",
            "datamarnews",
            "tariffs",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "risk",
            "treating",
            "three",
            "headlines",
            "complete",
            "picture",
            "one",
            "accurate",
            "meaning",
            "timing",
            "importance",
            "still",
            "corrections",
            "missing",
            "second",
            "greater",
            "impact"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-07-DOTS",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02"
        ],
        "direction_counts": {
          "UP": 2,
          "DOWN": 0,
          "MIXED": 1,
          "UNSTATED": 2
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "584 current signals and 73 complete engines bind to one release.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 215.196,
            "why": [
              "shared terms: complete, saved, one, can, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 206.835,
            "why": [
              "shared terms: three, saved, are, and, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "The Iran strike pause, oil repricing and joint yen intervention are today's Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 206.2713,
            "why": [
              "shared terms: three, saved, the, and, are"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-07-DOTS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "External risk can affect supply, supply can affect costs, and costs can affect choices—but every arrow needs proof.",
            "engine": null,
            "tab": "Dots",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 198.5977,
            "why": [
              "shared terms: can, costs, saved, risk, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 195.4035,
            "why": [
              "shared terms: the, saved, and, can, facts"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "f867f729951c6de5195323d9d0f4f65149b6eb892a908eeb79a70bf6ed373b44"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-WORRY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-WORRY",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Worry",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Worry",
          "source_headline": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
          "source_question": "What could make today's relief story fail?",
          "source_market_connection": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "fdc7bcf214358daa43a6640a9e03c33ed847a5aaf206335823ba7b035390826c",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Worry",
          "current_headline": "A correction, weak support, or a later event could change the view.",
          "current_question": "What could make today’s lead view wrong?",
          "current_market_connection": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "ee3736d6e255ee590db7f66e266b19355f34514057b7130ef1885df3d2ce57e8",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What could make today's relief story fail?",
              "current": "What could make today’s lead view wrong?"
            },
            "headline": {
              "changed": true,
              "prior": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
              "current": "A correction, weak support, or a later event could change the view."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Its saved warning says: Withdraw from the current release if the direct source changes, disappears or no longer supports the stated headline.. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Its facts must also survive later checking.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The largest risk is treating three fresh headlines as a complete picture. One report can be accurate while its wider meaning, timing, or importance still changes."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” The strongest case against today's hopeful view is simple: a pause can end without a lasting deal. If strikes return, oil may rise and investors may move back to safer assets.",
                "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” Oil and the yen may both turn back after their first move. The first response matters, but what lasts matters more for budgets and business choices."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Check the first and fourth reports",
                "Check the second and fifth reports",
                "Check the third and sixth reports"
              ],
              "removed_titles": [
                "The strike pause may not become a peace deal",
                "Oil moves for more than one reason",
                "Government action may not control the market"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.",
              "current": "Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Publisher corrections",
                "Missing second reports",
                "A later event with greater impact"
              ],
              "removed": [
                "Renewed military action",
                "A sharp rise in oil",
                "Yen weakness after joint government action"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.",
              "current": "Remove any claim that cannot be traced to its named report and time."
            }
          },
          "similarities": [
            "Both records belong to the Worry canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
            "Headline changed from \"The main risks are a short pause, an oil price rebound and support for the yen that does not last.\" to \"A correction, weak support, or a later event could change the view.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Check the first and fourth reports, Check the second and fifth reports, Check the third and sixth reports; removed The strike pause may not become a peace deal, Oil moves for more than one reason, Government action may not control the market.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.\" to \"Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.\" to \"Remove any claim that cannot be traced to its named report and time.\"."
          ],
          "comparison": "The Worry tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\".",
          "difference": "Question changed from \"What could make today's relief story fail?\" to \"What could make today’s lead view wrong?\". Headline changed from \"The main risks are a short pause, an oil price rebound and support for the yen that does not last.\" to \"A correction, weak support, or a later event could change the view.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Check the first and fourth reports, Check the second and fifth reports, Check the third and sixth reports; removed The strike pause may not become a peace deal, Oil moves for more than one reason, Government action may not control the market. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The danger is not only a new shock. It is also treating the first market move as proof of a lasting change.\" to \"Fresh reports can matter before their wider effects are clear. The safe response is to keep each claim narrow and keep checking.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"These worries become weaker if the pause holds, oil stays steady through several checks, and the yen keeps its gains.\" to \"Remove any claim that cannot be traced to its named report and time.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Worry",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "fe5a3417f41d56f858a99aa2cc0776966a51f36a5099968db72b4f76f0589bb7",
          "comparison_receipt_sha256": "cae721718e7c9d451315da09f8c6e6f6faeb31baf431c2dd42e20732a63160a2",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Publisher corrections",
        "Missing second reports",
        "A later event with greater impact"
      ],
      "invalidation": "Remove any claim that cannot be traced to its named report and time.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Big 3": {
      "eyebrow": "BIG 3 · 4 AUGUST 2026",
      "question": "Which three reports organise this edition?",
      "headline": "Three separate current reports form today’s Big Three.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The order comes from the same fixed rule for current proof, support across search areas, publisher groups, impact words, and report time.",
        "This is an editorial order for this issue. It is not a world ranking, a prediction, or proof that the three reports share one cause. A stronger report or correction can change it."
      ],
      "beats": [
        {
          "label": "01",
          "title": "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Only the first named report supports the first pick; the fourth remains separate.",
          "source_ids": [
            "LEAD-01",
            "LEAD-04"
          ]
        },
        {
          "label": "02",
          "title": "State awards thousands to north country for water system cybersecurity",
          "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Only the second named report supports the second pick; the fifth remains separate.",
          "source_ids": [
            "LEAD-02",
            "LEAD-05"
          ]
        },
        {
          "label": "03",
          "title": "U.S. tariffs and global turmoil drive up export logistics costs",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Only the third named report supports the third pick; the sixth remains separate.",
          "source_ids": [
            "LEAD-03",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.",
      "history_echo": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\". This is background only. It compares the nearest earlier saved Big 3 section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Big 3",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Big 3",
          "question": "Which three reports organise this edition?",
          "headline": "Three separate current reports form today’s Big Three.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The order comes from the same fixed rule for current proof, support across search areas, publisher groups, impact words, and report time.",
            "This is an editorial order for this issue. It is not a world ranking, a prediction, or proof that the three reports share one cause. A stronger report or correction can change it."
          ],
          "beats": [
            {
              "label": "01",
              "title": "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Only the first named report supports the first pick; the fourth remains separate.",
              "source_ids": [
                "LEAD-01",
                "LEAD-04"
              ]
            },
            {
              "label": "02",
              "title": "State awards thousands to north country for water system cybersecurity",
              "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Only the second named report supports the second pick; the fifth remains separate.",
              "source_ids": [
                "LEAD-02",
                "LEAD-05"
              ]
            },
            {
              "label": "03",
              "title": "U.S. tariffs and global turmoil drive up export logistics costs",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Only the third named report supports the third pick; the sixth remains separate.",
              "source_ids": [
                "LEAD-03",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.",
          "watch_conditions": [
            "A stronger official report",
            "More independent support",
            "A correction to any lead report"
          ],
          "invalidation": "Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.",
          "content_sha256": "e1e7c84fe529cafd20a54e72b4e67e3811e4e2f9f0ce527f15f760901b841300",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Big 3",
          "question": "Which three developments matter most in this edition?",
          "headline": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
          "narrative": [
            "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” These reports belong together because the change in planned strikes was followed by a clear market move before 09:54 SGT. Both can still reverse.",
            "finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The yen action is a separate government move, and the OPEC+ decision is another reason for lower oil. The Big Three connect the day's main risks without claiming that one event caused everything."
          ],
          "beats": [
            {
              "label": "01 · IRAN",
              "title": "A reported pause lowered immediate conflict risk",
              "body": "The short-term danger changed. The main doubt is whether the pause will last long enough to support real talks.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "02 · OIL",
              "title": "Oil showed the fastest wider result",
              "body": "Hopes for talks and an OPEC+ supply increase both pointed towards lower oil, so one headline cannot explain the whole move.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "03 · YEN",
              "title": "The US and Japan acted together on the yen",
              "body": "Their joint action made one-sided bets against the yen more risky and may affect money choices across the region.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
          "watch_conditions": [
            "Whether the strike pause lasts",
            "Oil after both downward forces",
            "Whether support for the yen lasts"
          ],
          "invalidation": "Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.",
          "content_sha256": "e082837fe3c677c3c23e3a07b652dbe833f984abbdc424324d7a4cf24444e990",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "Which three developments matter most in this edition?",
            "current": "Which three reports organise this edition?"
          },
          "headline": {
            "changed": true,
            "prior": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
            "current": "Three separate current reports form today’s Big Three."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The order comes from the same fixed rule for current proof, support across search areas, publisher groups, impact words, and report time.",
              "This is an editorial order for this issue. It is not a world ranking, a prediction, or proof that the three reports share one cause. A stronger report or correction can change it."
            ],
            "removed": [
              "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” These reports belong together because the change in planned strikes was followed by a clear market move before 09:54 SGT. Both can still reverse.",
              "finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The yen action is a separate government move, and the OPEC+ decision is another reason for lower oil. The Big Three connect the day's main risks without claiming that one event caused everything."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
              "State awards thousands to north country for water system cybersecurity",
              "U.S. tariffs and global turmoil drive up export logistics costs"
            ],
            "removed_titles": [
              "A reported pause lowered immediate conflict risk",
              "Oil showed the fastest wider result",
              "The US and Japan acted together on the yen"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
            "current": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "A stronger official report",
              "More independent support",
              "A correction to any lead report"
            ],
            "removed": [
              "Whether the strike pause lasts",
              "Oil after both downward forces",
              "Whether support for the yen lasts"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.",
            "current": "Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken."
          }
        },
        "similarities": [
          "Both records belong to the Big 3 canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
          "Headline changed from \"The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.\" to \"Three separate current reports form today’s Big Three.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore, State awards thousands to north country for water system cybersecurity, U.S. tariffs and global turmoil drive up export logistics costs; removed A reported pause lowered immediate conflict risk, Oil showed the fastest wider result, The US and Japan acted together on the yen.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.\" to \"The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.\" to \"Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Big 3",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "786affb013a13e38ad517b96865836e6ec9cb89f6e612c006a8417fd1fcfbf14",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "748f07e8b9d241a0140ae9b3d52e1abb9ddfcdaf05cb6e652e2571d2575e122b"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-BIG-3",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-BIG-3",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Big 3",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Big 3",
          "source_headline": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
          "source_question": "Which three developments matter most in this edition?",
          "source_market_connection": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "e082837fe3c677c3c23e3a07b652dbe833f984abbdc424324d7a4cf24444e990",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Big 3",
          "current_headline": "Three separate current reports form today’s Big Three.",
          "current_question": "Which three reports organise this edition?",
          "current_market_connection": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "e1e7c84fe529cafd20a54e72b4e67e3811e4e2f9f0ce527f15f760901b841300",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Which three developments matter most in this edition?",
              "current": "Which three reports organise this edition?"
            },
            "headline": {
              "changed": true,
              "prior": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
              "current": "Three separate current reports form today’s Big Three."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The order comes from the same fixed rule for current proof, support across search areas, publisher groups, impact words, and report time.",
                "This is an editorial order for this issue. It is not a world ranking, a prediction, or proof that the three reports share one cause. A stronger report or correction can change it."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” These reports belong together because the change in planned strikes was followed by a clear market move before 09:54 SGT. Both can still reverse.",
                "finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The yen action is a separate government move, and the OPEC+ decision is another reason for lower oil. The Big Three connect the day's main risks without claiming that one event caused everything."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
                "State awards thousands to north country for water system cybersecurity",
                "U.S. tariffs and global turmoil drive up export logistics costs"
              ],
              "removed_titles": [
                "A reported pause lowered immediate conflict risk",
                "Oil showed the fastest wider result",
                "The US and Japan acted together on the yen"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
              "current": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "A stronger official report",
                "More independent support",
                "A correction to any lead report"
              ],
              "removed": [
                "Whether the strike pause lasts",
                "Oil after both downward forces",
                "Whether support for the yen lasts"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.",
              "current": "Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken."
            }
          },
          "similarities": [
            "Both records belong to the Big 3 canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
            "Headline changed from \"The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.\" to \"Three separate current reports form today’s Big Three.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore, State awards thousands to north country for water system cybersecurity, U.S. tariffs and global turmoil drive up export logistics costs; removed A reported pause lowered immediate conflict risk, Oil showed the fastest wider result, The US and Japan acted together on the yen.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.\" to \"The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.\" to \"Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.\"."
          ],
          "comparison": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
          "difference": "Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\". Headline changed from \"The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.\" to \"Three separate current reports form today’s Big Three.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore, State awards thousands to north country for water system cybersecurity, U.S. tariffs and global turmoil drive up export logistics costs; removed A reported pause lowered immediate conflict risk, Oil showed the fastest wider result, The US and Japan acted together on the yen. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.\" to \"The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.\" to \"Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Big 3",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "786affb013a13e38ad517b96865836e6ec9cb89f6e612c006a8417fd1fcfbf14",
          "comparison_receipt_sha256": "748f07e8b9d241a0140ae9b3d52e1abb9ddfcdaf05cb6e652e2571d2575e122b",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "092c7863581d19e6e80c15e957a396d229d5244fcbd5274a3914ff40de40c3f5",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "three",
            "separate",
            "form",
            "today",
            "big",
            "the",
            "make",
            "issue",
            "easier",
            "enter",
            "complete",
            "list",
            "stays",
            "available",
            "choice",
            "can",
            "checked",
            "and",
            "challenged",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "datamarnews",
            "tariffs",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "order",
            "comes",
            "same",
            "fixed",
            "rule",
            "proof",
            "support",
            "across",
            "search",
            "areas",
            "groups",
            "impact",
            "words",
            "time",
            "editorial",
            "not",
            "world",
            "ranking",
            "prediction",
            "share",
            "one",
            "cause",
            "stronger",
            "correction",
            "change",
            "official",
            "independent",
            "any",
            "lead"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT::TAB-04-BIG-3"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT"
        ],
        "direction_counts": {
          "UP": 2,
          "DOWN": 2,
          "MIXED": 1,
          "UNSTATED": 0
        },
        "contradictory_direction_history": true,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 298.65,
            "why": [
              "shared terms: big, three, world, editorial, today"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "The Iran strike pause, oil repricing and joint yen intervention are today's Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 286.0484,
            "why": [
              "shared terms: big, three, the, today, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
            "date": "2026-08-01",
            "title": "Hormuz oil risk, yen intervention and the proof cost of AI form today’s Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 264.1033,
            "why": [
              "shared terms: big, three, form, proof, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
            "date": "2026-08-03",
            "title": "A public rule, a freight measure and a clinical null result are the 2 August Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "DOWN",
            "matched_entities": [],
            "matched_events": [],
            "score": 250.6175,
            "why": [
              "shared terms: big, three, today, and, rule"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
            "date": "2026-08-02",
            "title": "A public rule, a freight measure and a clinical null result are the 2 August Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "DOWN",
            "matched_entities": [],
            "matched_events": [],
            "score": 250.6175,
            "why": [
              "shared terms: big, three, today, and, rule"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "6806481c1d1457dc24224c806392cb927353bf454cc6e8a499c8de4df607d3f1"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-BIG-3",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-BIG-3",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Big 3",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Big 3",
          "source_headline": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
          "source_question": "Which three developments matter most in this edition?",
          "source_market_connection": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "e082837fe3c677c3c23e3a07b652dbe833f984abbdc424324d7a4cf24444e990",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Big 3",
          "current_headline": "Three separate current reports form today’s Big Three.",
          "current_question": "Which three reports organise this edition?",
          "current_market_connection": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "e1e7c84fe529cafd20a54e72b4e67e3811e4e2f9f0ce527f15f760901b841300",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Which three developments matter most in this edition?",
              "current": "Which three reports organise this edition?"
            },
            "headline": {
              "changed": true,
              "prior": "The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.",
              "current": "Three separate current reports form today’s Big Three."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. The order comes from the same fixed rule for current proof, support across search areas, publisher groups, impact words, and report time.",
                "This is an editorial order for this issue. It is not a world ranking, a prediction, or proof that the three reports share one cause. A stronger report or correction can change it."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” These reports belong together because the change in planned strikes was followed by a clear market move before 09:54 SGT. Both can still reverse.",
                "finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The yen action is a separate government move, and the OPEC+ decision is another reason for lower oil. The Big Three connect the day's main risks without claiming that one event caused everything."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore",
                "State awards thousands to north country for water system cybersecurity",
                "U.S. tariffs and global turmoil drive up export logistics costs"
              ],
              "removed_titles": [
                "A reported pause lowered immediate conflict risk",
                "Oil showed the fastest wider result",
                "The US and Japan acted together on the yen"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.",
              "current": "The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "A stronger official report",
                "More independent support",
                "A correction to any lead report"
              ],
              "removed": [
                "Whether the strike pause lasts",
                "Oil after both downward forces",
                "Whether support for the yen lasts"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.",
              "current": "Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken."
            }
          },
          "similarities": [
            "Both records belong to the Big 3 canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
            "Headline changed from \"The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.\" to \"Three separate current reports form today’s Big Three.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore, State awards thousands to north country for water system cybersecurity, U.S. tariffs and global turmoil drive up export logistics costs; removed A reported pause lowered immediate conflict risk, Oil showed the fastest wider result, The US and Japan acted together on the yen.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.\" to \"The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.\" to \"Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.\"."
          ],
          "comparison": "The Big 3 tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\".",
          "difference": "Question changed from \"Which three developments matter most in this edition?\" to \"Which three reports organise this edition?\". Headline changed from \"The pause in planned Iran strikes, the fall in oil and joint action on the yen are today's Big Three.\" to \"Three separate current reports form today’s Big Three.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore, State awards thousands to north country for water system cybersecurity, U.S. tariffs and global turmoil drive up export logistics costs; removed A reported pause lowered immediate conflict risk, Oil showed the fastest wider result, The US and Japan acted together on the yen. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The order is based on impact, urgency, effects across markets and clear proof. It ranks this edition only; it does not claim to rank every event in the world.\" to \"The Big Three make the issue easier to enter. The complete report list stays available so the choice can be checked and challenged.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove a pick if its source is corrected, its expected market effect disappears, or stronger proven news matters more.\" to \"Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Big 3",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "786affb013a13e38ad517b96865836e6ec9cb89f6e612c006a8417fd1fcfbf14",
          "comparison_receipt_sha256": "748f07e8b9d241a0140ae9b3d52e1abb9ddfcdaf05cb6e652e2571d2575e122b",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "A stronger official report",
        "More independent support",
        "A correction to any lead report"
      ],
      "invalidation": "Change a pick when its report is withdrawn, corrected, no longer current, or clearly overtaken.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      },
      "selection_receipt": {
        "locked_at_sgt": "2026-08-04T06:24:00+08:00",
        "candidate_event_count": 658,
        "candidate_count_boundary": "This count comes from saved event groups. Some groups may still describe the same event.",
        "method_label": "EDITORIAL_SELECTION_NOT_OBJECTIVE_GLOBAL_IMPORTANCE",
        "criteria": [
          "Current direct report",
          "More than one search area",
          "Independent publisher support",
          "Plain impact words",
          "Newest report time"
        ],
        "selections": [
          {
            "rank": 1,
            "lane": "Singapore News",
            "primary_source_id": "LEAD-01",
            "primary_signal_id": "OTR-20260804-001-01",
            "context_source_ids": [],
            "context_signal_ids": [],
            "why_selected": "This current report ranked 1 under the same date-neutral rule used for every event. It had 2 matching search area(s) and 1 publisher group(s).",
            "evidence_limit": "The named report supports its own headline only. It does not prove a shared cause or every wider effect.",
            "what_can_overtake": "A newer report with stronger public impact, more independent support, or an important correction.",
            "evidence_state": "SOURCE_LINKED_CURRENT",
            "source_independence": "ONE_PUBLISHER_REPORT",
            "selection_score": 146,
            "selection_score_parts": {
              "current_direct_report": 100,
              "cross_engine_support": 30,
              "independent_publisher_support": 0,
              "impact_words": 16
            },
            "matched_impact_words": [
              "bank",
              "ban"
            ]
          },
          {
            "rank": 2,
            "lane": "Water & Utilities",
            "primary_source_id": "LEAD-02",
            "primary_signal_id": "OTR-20260804-029-04",
            "context_source_ids": [],
            "context_signal_ids": [],
            "why_selected": "This current report ranked 2 under the same date-neutral rule used for every event. It had 2 matching search area(s) and 1 publisher group(s).",
            "evidence_limit": "The named report supports its own headline only. It does not prove a shared cause or every wider effect.",
            "what_can_overtake": "A newer report with stronger public impact, more independent support, or an important correction.",
            "evidence_state": "SOURCE_LINKED_CURRENT",
            "source_independence": "ONE_PUBLISHER_REPORT",
            "selection_score": 146,
            "selection_score_parts": {
              "current_direct_report": 100,
              "cross_engine_support": 30,
              "independent_publisher_support": 0,
              "impact_words": 16
            },
            "matched_impact_words": [
              "war",
              "security"
            ]
          },
          {
            "rank": 3,
            "lane": "Transport & Logistics",
            "primary_source_id": "LEAD-03",
            "primary_signal_id": "OTR-20260804-037-06",
            "context_source_ids": [],
            "context_signal_ids": [],
            "why_selected": "This current report ranked 3 under the same date-neutral rule used for every event. It had 2 matching search area(s) and 1 publisher group(s).",
            "evidence_limit": "The named report supports its own headline only. It does not prove a shared cause or every wider effect.",
            "what_can_overtake": "A newer report with stronger public impact, more independent support, or an important correction.",
            "evidence_state": "SOURCE_LINKED_CURRENT",
            "source_independence": "ONE_PUBLISHER_REPORT",
            "selection_score": 146,
            "selection_score_parts": {
              "current_direct_report": 100,
              "cross_engine_support": 30,
              "independent_publisher_support": 0,
              "impact_words": 16
            },
            "matched_impact_words": [
              "tariff",
              "oil"
            ]
          }
        ],
        "shared_cause_claimed": false,
        "connection_type": "THREE_SEPARATE_CURRENT_REPORTS_NO_SHARED_CAUSE",
        "statement": "These are three current reports selected by one clear rule. They remain separate and do not prove that one cause explains every event or market move."
      }
    },
    "Predictions": {
      "eyebrow": "PREDICTIONS · 4 AUGUST 2026",
      "question": "What do the research predictions know today?",
      "headline": "32 research plans have fixed rules and no guaranteed result.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. These reports may give useful background, but they do not prove that a price will rise or fall and cannot open a research plan by themselves.",
        "Each published plan keeps its starting range, goal, safety limit, time period, and named price provider. 0 other mentions were not turned into plans. Results count only after the stated checks occur."
      ],
      "beats": [
        {
          "label": "BACKGROUND",
          "title": "News gives context, not an entry",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Neither report can open a price plan without the later price rule.",
          "source_ids": [
            "LEAD-01",
            "LEAD-02"
          ]
        },
        {
          "label": "FIXED RULES",
          "title": "The numbers do not move later",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. These reports cannot be used to change a missed start into a win.",
          "source_ids": [
            "LEAD-03",
            "LEAD-04"
          ]
        },
        {
          "label": "RESULT",
          "title": "A published plan is not a result",
          "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The outcome still needs the stated time and price checks.",
          "source_ids": [
            "LEAD-05",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order.",
      "history_echo": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\". This is background only. It compares the nearest earlier saved Predictions section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Predictions",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Predictions",
          "question": "What do the research predictions know today?",
          "headline": "32 research plans have fixed rules and no guaranteed result.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. These reports may give useful background, but they do not prove that a price will rise or fall and cannot open a research plan by themselves.",
            "Each published plan keeps its starting range, goal, safety limit, time period, and named price provider. 0 other mentions were not turned into plans. Results count only after the stated checks occur."
          ],
          "beats": [
            {
              "label": "BACKGROUND",
              "title": "News gives context, not an entry",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Neither report can open a price plan without the later price rule.",
              "source_ids": [
                "LEAD-01",
                "LEAD-02"
              ]
            },
            {
              "label": "FIXED RULES",
              "title": "The numbers do not move later",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. These reports cannot be used to change a missed start into a win.",
              "source_ids": [
                "LEAD-03",
                "LEAD-04"
              ]
            },
            {
              "label": "RESULT",
              "title": "A published plan is not a result",
              "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The outcome still needs the stated time and price checks.",
              "source_ids": [
                "LEAD-05",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order.",
          "watch_conditions": [
            "Valid price checks",
            "Plans that never enter",
            "Enough similar results to judge the method"
          ],
          "invalidation": "Do not count a result when its starting rule, time, or approved price evidence is missing.",
          "content_sha256": "4fc96cf53e476428f2d9bd4d8cb3fba6d279194e1fb4a85d33260cf4f948022e",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Predictions",
          "question": "What do the prediction cards know, and what is still unproved?",
          "headline": "32 research predictions have clear rules, but none has a final result yet.",
          "narrative": [
            "Every card keeps the same starting price range, goal, safety limit, time period and named price source. These fixed rules make fair checking possible later, but detailed numbers do not prove that a prediction is right.",
            "All 32 predictions are still waiting for valid price checks, while 0 other ideas were not published as predictions. Judge the results only after enough cards have won, lost, missed their start price or lacked enough proof under similar conditions."
          ],
          "beats": [
            {
              "label": "WHY NOW",
              "title": "Today's reports set the starting point",
              "body": "Oil, US share prices and yen reports can shape a test, but they cannot promise direction or timing.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "WHAT STAYS FIXED",
              "title": "The starting range and ending rules cannot move",
              "body": "Later checks must use the original market, time period and price source, so a miss cannot be changed into a win.",
              "source_ids": [
                "ENERGY-CURRENT",
                "TECH-CURRENT"
              ]
            },
            {
              "label": "WHAT WE DO NOT KNOW",
              "title": "There are not enough results yet",
              "body": "Pending cards show no success rate. Trust should grow only after enough similar results have been checked.",
              "source_ids": [
                "HEALTH-CURRENT",
                "WORLD-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "HEALTH-CURRENT",
            "MARKET-CURRENT",
            "TECH-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
          "watch_conditions": [
            "Valid completed-price checks",
            "A larger group of similar results",
            "Result quality by topic and market condition"
          ],
          "invalidation": "Do not count a result when its starting report, fixed rule, time or approved price source is missing.",
          "content_sha256": "9eb86eb1ab1c55610c44bc66834f4472fbbcd690c1e939b30d22054bbfdc1ce8",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What do the prediction cards know, and what is still unproved?",
            "current": "What do the research predictions know today?"
          },
          "headline": {
            "changed": true,
            "prior": "32 research predictions have clear rules, but none has a final result yet.",
            "current": "32 research plans have fixed rules and no guaranteed result."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. These reports may give useful background, but they do not prove that a price will rise or fall and cannot open a research plan by themselves.",
              "Each published plan keeps its starting range, goal, safety limit, time period, and named price provider. 0 other mentions were not turned into plans. Results count only after the stated checks occur."
            ],
            "removed": [
              "Every card keeps the same starting price range, goal, safety limit, time period and named price source. These fixed rules make fair checking possible later, but detailed numbers do not prove that a prediction is right.",
              "All 32 predictions are still waiting for valid price checks, while 0 other ideas were not published as predictions. Judge the results only after enough cards have won, lost, missed their start price or lacked enough proof under similar conditions."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "News gives context, not an entry",
              "The numbers do not move later",
              "A published plan is not a result"
            ],
            "removed_titles": [
              "Today's reports set the starting point",
              "The starting range and ending rules cannot move",
              "There are not enough results yet"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 6,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "HEALTH-CURRENT",
              "MARKET-CURRENT",
              "TECH-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
            "current": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Valid price checks",
              "Plans that never enter",
              "Enough similar results to judge the method"
            ],
            "removed": [
              "Valid completed-price checks",
              "A larger group of similar results",
              "Result quality by topic and market condition"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Do not count a result when its starting report, fixed rule, time or approved price source is missing.",
            "current": "Do not count a result when its starting rule, time, or approved price evidence is missing."
          }
        },
        "similarities": [
          "Both records belong to the Predictions canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
          "Headline changed from \"32 research predictions have clear rules, but none has a final result yet.\" to \"32 research plans have fixed rules and no guaranteed result.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added News gives context, not an entry, The numbers do not move later, A published plan is not a result; removed Today's reports set the starting point, The starting range and ending rules cannot move, There are not enough results yet.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, HEALTH-CURRENT and 3 more.",
          "Market connection changed from \"32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.\" to \"32 plans are research only. Their later results must be judged against the original rules, not today’s story order.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Do not count a result when its starting report, fixed rule, time or approved price source is missing.\" to \"Do not count a result when its starting rule, time, or approved price evidence is missing.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Predictions",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 22,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "a69738db80d159e3c4b16eecbb836a0fa1c998cfcbf336f95607a8789ccbb9e7",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "fd98b05fd8594730a8b17e73e5ec360e19d061ab32825fa7e68391affb244c39"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PREDICTIONS",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PREDICTIONS",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Predictions",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Predictions",
          "source_headline": "32 research predictions have clear rules, but none has a final result yet.",
          "source_question": "What do the prediction cards know, and what is still unproved?",
          "source_market_connection": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "9eb86eb1ab1c55610c44bc66834f4472fbbcd690c1e939b30d22054bbfdc1ce8",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Predictions",
          "current_headline": "32 research plans have fixed rules and no guaranteed result.",
          "current_question": "What do the research predictions know today?",
          "current_market_connection": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "4fc96cf53e476428f2d9bd4d8cb3fba6d279194e1fb4a85d33260cf4f948022e",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What do the prediction cards know, and what is still unproved?",
              "current": "What do the research predictions know today?"
            },
            "headline": {
              "changed": true,
              "prior": "32 research predictions have clear rules, but none has a final result yet.",
              "current": "32 research plans have fixed rules and no guaranteed result."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. These reports may give useful background, but they do not prove that a price will rise or fall and cannot open a research plan by themselves.",
                "Each published plan keeps its starting range, goal, safety limit, time period, and named price provider. 0 other mentions were not turned into plans. Results count only after the stated checks occur."
              ],
              "removed": [
                "Every card keeps the same starting price range, goal, safety limit, time period and named price source. These fixed rules make fair checking possible later, but detailed numbers do not prove that a prediction is right.",
                "All 32 predictions are still waiting for valid price checks, while 0 other ideas were not published as predictions. Judge the results only after enough cards have won, lost, missed their start price or lacked enough proof under similar conditions."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "News gives context, not an entry",
                "The numbers do not move later",
                "A published plan is not a result"
              ],
              "removed_titles": [
                "Today's reports set the starting point",
                "The starting range and ending rules cannot move",
                "There are not enough results yet"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "HEALTH-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
              "current": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Valid price checks",
                "Plans that never enter",
                "Enough similar results to judge the method"
              ],
              "removed": [
                "Valid completed-price checks",
                "A larger group of similar results",
                "Result quality by topic and market condition"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not count a result when its starting report, fixed rule, time or approved price source is missing.",
              "current": "Do not count a result when its starting rule, time, or approved price evidence is missing."
            }
          },
          "similarities": [
            "Both records belong to the Predictions canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
            "Headline changed from \"32 research predictions have clear rules, but none has a final result yet.\" to \"32 research plans have fixed rules and no guaranteed result.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added News gives context, not an entry, The numbers do not move later, A published plan is not a result; removed Today's reports set the starting point, The starting range and ending rules cannot move, There are not enough results yet.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, HEALTH-CURRENT and 3 more.",
            "Market connection changed from \"32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.\" to \"32 plans are research only. Their later results must be judged against the original rules, not today’s story order.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not count a result when its starting report, fixed rule, time or approved price source is missing.\" to \"Do not count a result when its starting rule, time, or approved price evidence is missing.\"."
          ],
          "comparison": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
          "difference": "Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\". Headline changed from \"32 research predictions have clear rules, but none has a final result yet.\" to \"32 research plans have fixed rules and no guaranteed result.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added News gives context, not an entry, The numbers do not move later, A published plan is not a result; removed Today's reports set the starting point, The starting range and ending rules cannot move, There are not enough results yet. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, HEALTH-CURRENT and 3 more. Market connection changed from \"32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.\" to \"32 plans are research only. Their later results must be judged against the original rules, not today’s story order.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not count a result when its starting report, fixed rule, time or approved price source is missing.\" to \"Do not count a result when its starting rule, time, or approved price evidence is missing.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Predictions",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 22,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "a69738db80d159e3c4b16eecbb836a0fa1c998cfcbf336f95607a8789ccbb9e7",
          "comparison_receipt_sha256": "fd98b05fd8594730a8b17e73e5ec360e19d061ab32825fa7e68391affb244c39",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "c1e188917e7179b2626bfbd725e401444976e278b444dca1bab33caa26c7f399",
        "query_concepts": {
          "entities": [],
          "events": [],
          "terms": [
            "research",
            "plans",
            "fixed",
            "rules",
            "and",
            "guaranteed",
            "result",
            "are",
            "later",
            "results",
            "must",
            "judged",
            "the",
            "original",
            "not",
            "today",
            "story",
            "order",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "may",
            "give",
            "useful",
            "background",
            "but",
            "prove",
            "price",
            "will",
            "rise",
            "fall",
            "cannot",
            "open",
            "plan",
            "themselves",
            "keeps",
            "its",
            "starting",
            "range",
            "goal",
            "safety",
            "limit",
            "time",
            "period",
            "named",
            "provider",
            "mentions",
            "were",
            "turned",
            "count",
            "stated",
            "checks",
            "occur",
            "valid",
            "never",
            "enter",
            "enough",
            "similar",
            "judge",
            "method"
          ],
          "direction": "MIXED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-05-PREDICTIONS",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-05-PREDICTIONS",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-05-PREDICTIONS"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT"
        ],
        "direction_counts": {
          "UP": 1,
          "DOWN": 1,
          "MIXED": 1,
          "UNSTATED": 2
        },
        "contradictory_direction_history": true,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-05-PREDICTIONS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "32 research predictions have clear rules, but none has a final result yet.",
            "engine": null,
            "tab": "Predictions",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 421.0828,
            "why": [
              "shared terms: fixed, price, enough, result, starting"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 248.8021,
            "why": [
              "shared terms: order, story, the, must, not"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-05-PREDICTIONS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "32 research plans are precisely defined but still pending evidence.",
            "engine": null,
            "tab": "Predictions",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 242.6947,
            "why": [
              "shared terms: plans, research, fixed, mentions, are"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 226.9535,
            "why": [
              "shared terms: story, the, must, order, enough"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-05-PREDICTIONS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "32 paper plans are locked to this release; 0 mentions remain held.",
            "engine": null,
            "tab": "Predictions",
            "evidence_state": null,
            "direction": "DOWN",
            "matched_entities": [],
            "matched_events": [],
            "score": 207.8387,
            "why": [
              "shared terms: mentions, plans, are, research, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "52fcf79a715cefd76db3cdd0773c10e0a6143590b60037bc81c30eb6a859cdfa"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PREDICTIONS",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PREDICTIONS",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Predictions",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Predictions",
          "source_headline": "32 research predictions have clear rules, but none has a final result yet.",
          "source_question": "What do the prediction cards know, and what is still unproved?",
          "source_market_connection": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "9eb86eb1ab1c55610c44bc66834f4472fbbcd690c1e939b30d22054bbfdc1ce8",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Predictions",
          "current_headline": "32 research plans have fixed rules and no guaranteed result.",
          "current_question": "What do the research predictions know today?",
          "current_market_connection": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "4fc96cf53e476428f2d9bd4d8cb3fba6d279194e1fb4a85d33260cf4f948022e",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What do the prediction cards know, and what is still unproved?",
              "current": "What do the research predictions know today?"
            },
            "headline": {
              "changed": true,
              "prior": "32 research predictions have clear rules, but none has a final result yet.",
              "current": "32 research plans have fixed rules and no guaranteed result."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. These reports may give useful background, but they do not prove that a price will rise or fall and cannot open a research plan by themselves.",
                "Each published plan keeps its starting range, goal, safety limit, time period, and named price provider. 0 other mentions were not turned into plans. Results count only after the stated checks occur."
              ],
              "removed": [
                "Every card keeps the same starting price range, goal, safety limit, time period and named price source. These fixed rules make fair checking possible later, but detailed numbers do not prove that a prediction is right.",
                "All 32 predictions are still waiting for valid price checks, while 0 other ideas were not published as predictions. Judge the results only after enough cards have won, lost, missed their start price or lacked enough proof under similar conditions."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "News gives context, not an entry",
                "The numbers do not move later",
                "A published plan is not a result"
              ],
              "removed_titles": [
                "Today's reports set the starting point",
                "The starting range and ending rules cannot move",
                "There are not enough results yet"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "HEALTH-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.",
              "current": "32 plans are research only. Their later results must be judged against the original rules, not today’s story order."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Valid price checks",
                "Plans that never enter",
                "Enough similar results to judge the method"
              ],
              "removed": [
                "Valid completed-price checks",
                "A larger group of similar results",
                "Result quality by topic and market condition"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not count a result when its starting report, fixed rule, time or approved price source is missing.",
              "current": "Do not count a result when its starting rule, time, or approved price evidence is missing."
            }
          },
          "similarities": [
            "Both records belong to the Predictions canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
            "Headline changed from \"32 research predictions have clear rules, but none has a final result yet.\" to \"32 research plans have fixed rules and no guaranteed result.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added News gives context, not an entry, The numbers do not move later, A published plan is not a result; removed Today's reports set the starting point, The starting range and ending rules cannot move, There are not enough results yet.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, HEALTH-CURRENT and 3 more.",
            "Market connection changed from \"32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.\" to \"32 plans are research only. Their later results must be judged against the original rules, not today’s story order.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not count a result when its starting report, fixed rule, time or approved price source is missing.\" to \"Do not count a result when its starting rule, time, or approved price evidence is missing.\"."
          ],
          "comparison": "The Predictions tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\".",
          "difference": "Question changed from \"What do the prediction cards know, and what is still unproved?\" to \"What do the research predictions know today?\". Headline changed from \"32 research predictions have clear rules, but none has a final result yet.\" to \"32 research plans have fixed rules and no guaranteed result.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added News gives context, not an entry, The numbers do not move later, A published plan is not a result; removed Today's reports set the starting point, The starting range and ending rules cannot move, There are not enough results yet. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, HEALTH-CURRENT and 3 more. Market connection changed from \"32 research predictions are saved with fixed rules. Publishing them does not count as a result, and a later price cannot be treated as if it happened earlier.\" to \"32 plans are research only. Their later results must be judged against the original rules, not today’s story order.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not count a result when its starting report, fixed rule, time or approved price source is missing.\" to \"Do not count a result when its starting rule, time, or approved price evidence is missing.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Predictions",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 22,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "a69738db80d159e3c4b16eecbb836a0fa1c998cfcbf336f95607a8789ccbb9e7",
          "comparison_receipt_sha256": "fd98b05fd8594730a8b17e73e5ec360e19d061ab32825fa7e68391affb244c39",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Valid price checks",
        "Plans that never enter",
        "Enough similar results to judge the method"
      ],
      "invalidation": "Do not count a result when its starting rule, time, or approved price evidence is missing.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Long-Term Investment": {
      "eyebrow": "LONG-TERM INVESTMENT · THREE-YEAR RESEARCH",
      "question": "Which investments still pass the long-term research checks?",
      "headline": "4 investments pass; 0 still need more proof.",
      "narrative": [
        "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Current news may start a review, but it does not earn a pass. Each investment must still meet the same ten public tests with first-hand proof.",
        "Six or more supported tests place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count, and a new headline cannot rewrite the last saved result."
      ],
      "beats": [
        {
          "label": "START",
          "title": "News may start a review",
          "body": "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Separately, Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A fresh report can raise a question without passing a long-term test.",
          "source_ids": [
            "LEAD-07",
            "LEAD-08"
          ]
        },
        {
          "label": "TEST",
          "title": "The same ten tests apply",
          "body": "news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Neither report earns a point unless first-hand company evidence supports it.",
          "source_ids": [
            "LEAD-09",
            "LEAD-10"
          ]
        },
        {
          "label": "SAVE",
          "title": "Old and new results stay separate",
          "body": "WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. Separately, See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. A new review cannot quietly change an earlier saved result.",
          "source_ids": [
            "LEAD-11",
            "LEAD-12"
          ]
        }
      ],
      "market_connection": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.",
      "history_echo": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\". This is background only. It compares the nearest earlier saved Long-Term Investment section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Long-Term Investment",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Long-Term Investment",
          "question": "Which investments still pass the long-term research checks?",
          "headline": "4 investments pass; 0 still need more proof.",
          "narrative": [
            "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Current news may start a review, but it does not earn a pass. Each investment must still meet the same ten public tests with first-hand proof.",
            "Six or more supported tests place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count, and a new headline cannot rewrite the last saved result."
          ],
          "beats": [
            {
              "label": "START",
              "title": "News may start a review",
              "body": "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Separately, Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A fresh report can raise a question without passing a long-term test.",
              "source_ids": [
                "LEAD-07",
                "LEAD-08"
              ]
            },
            {
              "label": "TEST",
              "title": "The same ten tests apply",
              "body": "news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Neither report earns a point unless first-hand company evidence supports it.",
              "source_ids": [
                "LEAD-09",
                "LEAD-10"
              ]
            },
            {
              "label": "SAVE",
              "title": "Old and new results stay separate",
              "body": "WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. Separately, See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. A new review cannot quietly change an earlier saved result.",
              "source_ids": [
                "LEAD-11",
                "LEAD-12"
              ]
            }
          ],
          "source_ids": [
            "LEAD-07",
            "LEAD-08",
            "LEAD-09",
            "LEAD-10",
            "LEAD-11",
            "LEAD-12"
          ],
          "market_connection": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.",
          "watch_conditions": [
            "Fresh first-hand company proof",
            "A supported test that becomes weak",
            "The next full research review"
          ],
          "invalidation": "Do not change the board when the ten tests are incomplete or the supporting proof is missing.",
          "content_sha256": "8b6738f7c28f44711f0994242568f38fa1d000491cc90ca94567fed4d8a564a8",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Long-Term Investment",
          "question": "Which public investments meet at least six of ten research checks?",
          "headline": "4 investments meet at least six checks; 0 need more proof.",
          "narrative": [
            "Current news can start or speed up a review, but it does not earn any points. Every investment still faces the same ten checks, using official or first-hand proof. Only checks with clear support count.",
            "Six or more supported checks place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count. Each addition or removal is saved as a new dated record."
          ],
          "beats": [
            {
              "label": "CURRENT NEWS",
              "title": "News can start a review but earns no points",
              "body": "A technology or market report may move an investment up the review list without passing any check.",
              "source_ids": [
                "FUTURE-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "TEN CHECKS",
              "title": "Every investment faces the same test",
              "body": "Official records show whether each check is supported, not supported, unclear or too old.",
              "source_ids": [
                "HEALTH-CURRENT",
                "TECH-CURRENT"
              ]
            },
            {
              "label": "SAVED RESULTS",
              "title": "An unfinished check cannot replace the last full result",
              "body": "The latest attempt and the last completed board remain separate.",
              "source_ids": [
                "FINANCE-CURRENT",
                "SUPPLY-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "FINANCE-CURRENT",
            "FUTURE-CURRENT",
            "HEALTH-CURRENT",
            "MARKET-CURRENT",
            "SUPPLY-CURRENT",
            "TECH-CURRENT"
          ],
          "market_connection": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
          "watch_conditions": [
            "Fresh proof for a sixth check",
            "New proof that removes a supported check",
            "The next proof and membership review"
          ],
          "invalidation": "Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.",
          "content_sha256": "8db7f78158ca9ed3cc9ddb515f40a9c19a29ab120e7da8011aae7b6bd58b0bba",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "Which public investments meet at least six of ten research checks?",
            "current": "Which investments still pass the long-term research checks?"
          },
          "headline": {
            "changed": true,
            "prior": "4 investments meet at least six checks; 0 need more proof.",
            "current": "4 investments pass; 0 still need more proof."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Current news may start a review, but it does not earn a pass. Each investment must still meet the same ten public tests with first-hand proof.",
              "Six or more supported tests place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count, and a new headline cannot rewrite the last saved result."
            ],
            "removed": [
              "Current news can start or speed up a review, but it does not earn any points. Every investment still faces the same ten checks, using official or first-hand proof. Only checks with clear support count.",
              "Six or more supported checks place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count. Each addition or removal is saved as a new dated record."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "News may start a review",
              "The same ten tests apply",
              "Old and new results stay separate"
            ],
            "removed_titles": [
              "News can start a review but earns no points",
              "Every investment faces the same test",
              "An unfinished check cannot replace the last full result"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 6,
            "current_count": 6,
            "added": [
              "LEAD-07",
              "LEAD-08",
              "LEAD-09",
              "LEAD-10",
              "LEAD-11",
              "LEAD-12"
            ],
            "removed": [
              "FINANCE-CURRENT",
              "FUTURE-CURRENT",
              "HEALTH-CURRENT",
              "MARKET-CURRENT",
              "SUPPLY-CURRENT",
              "TECH-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
            "current": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Fresh first-hand company proof",
              "A supported test that becomes weak",
              "The next full research review"
            ],
            "removed": [
              "Fresh proof for a sixth check",
              "New proof that removes a supported check",
              "The next proof and membership review"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.",
            "current": "Do not change the board when the ten tests are incomplete or the supporting proof is missing."
          }
        },
        "similarities": [
          "Both records belong to the Long-Term Investment canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
          "Headline changed from \"4 investments meet at least six checks; 0 need more proof.\" to \"4 investments pass; 0 still need more proof.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added News may start a review, The same ten tests apply, Old and new results stay separate; removed News can start a review but earns no points, Every investment faces the same test, An unfinished check cannot replace the last full result.",
          "Source set changed: added LEAD-07, LEAD-08, LEAD-09 and 3 more; removed FINANCE-CURRENT, FUTURE-CURRENT, HEALTH-CURRENT and 3 more.",
          "Market connection changed from \"Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.\" to \"Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.\" to \"Do not change the board when the ten tests are incomplete or the supporting proof is missing.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Long-Term Investment",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 8,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "2dbe5ee8707432e938bceff2beea2040488e40b877b9927477956dafc9c7b794",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "f52feea9ffde74555cbb5843f7889909cc9926e44094f60dc24364c6834a60a9"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LONG-TERM-INVESTMENT",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LONG-TERM-INVESTMENT",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Long-Term Investment",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Long-Term Investment",
          "source_headline": "4 investments meet at least six checks; 0 need more proof.",
          "source_question": "Which public investments meet at least six of ten research checks?",
          "source_market_connection": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "8db7f78158ca9ed3cc9ddb515f40a9c19a29ab120e7da8011aae7b6bd58b0bba",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Long-Term Investment",
          "current_headline": "4 investments pass; 0 still need more proof.",
          "current_question": "Which investments still pass the long-term research checks?",
          "current_market_connection": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "8b6738f7c28f44711f0994242568f38fa1d000491cc90ca94567fed4d8a564a8",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Which public investments meet at least six of ten research checks?",
              "current": "Which investments still pass the long-term research checks?"
            },
            "headline": {
              "changed": true,
              "prior": "4 investments meet at least six checks; 0 need more proof.",
              "current": "4 investments pass; 0 still need more proof."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Current news may start a review, but it does not earn a pass. Each investment must still meet the same ten public tests with first-hand proof.",
                "Six or more supported tests place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count, and a new headline cannot rewrite the last saved result."
              ],
              "removed": [
                "Current news can start or speed up a review, but it does not earn any points. Every investment still faces the same ten checks, using official or first-hand proof. Only checks with clear support count.",
                "Six or more supported checks place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count. Each addition or removal is saved as a new dated record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "News may start a review",
                "The same ten tests apply",
                "Old and new results stay separate"
              ],
              "removed_titles": [
                "News can start a review but earns no points",
                "Every investment faces the same test",
                "An unfinished check cannot replace the last full result"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-07",
                "LEAD-08",
                "LEAD-09",
                "LEAD-10",
                "LEAD-11",
                "LEAD-12"
              ],
              "removed": [
                "FINANCE-CURRENT",
                "FUTURE-CURRENT",
                "HEALTH-CURRENT",
                "MARKET-CURRENT",
                "SUPPLY-CURRENT",
                "TECH-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
              "current": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Fresh first-hand company proof",
                "A supported test that becomes weak",
                "The next full research review"
              ],
              "removed": [
                "Fresh proof for a sixth check",
                "New proof that removes a supported check",
                "The next proof and membership review"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.",
              "current": "Do not change the board when the ten tests are incomplete or the supporting proof is missing."
            }
          },
          "similarities": [
            "Both records belong to the Long-Term Investment canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
            "Headline changed from \"4 investments meet at least six checks; 0 need more proof.\" to \"4 investments pass; 0 still need more proof.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added News may start a review, The same ten tests apply, Old and new results stay separate; removed News can start a review but earns no points, Every investment faces the same test, An unfinished check cannot replace the last full result.",
            "Source set changed: added LEAD-07, LEAD-08, LEAD-09 and 3 more; removed FINANCE-CURRENT, FUTURE-CURRENT, HEALTH-CURRENT and 3 more.",
            "Market connection changed from \"Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.\" to \"Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.\" to \"Do not change the board when the ten tests are incomplete or the supporting proof is missing.\"."
          ],
          "comparison": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
          "difference": "Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\". Headline changed from \"4 investments meet at least six checks; 0 need more proof.\" to \"4 investments pass; 0 still need more proof.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added News may start a review, The same ten tests apply, Old and new results stay separate; removed News can start a review but earns no points, Every investment faces the same test, An unfinished check cannot replace the last full result. Source set changed: added LEAD-07, LEAD-08, LEAD-09 and 3 more; removed FINANCE-CURRENT, FUTURE-CURRENT, HEALTH-CURRENT and 3 more. Market connection changed from \"Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.\" to \"Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.\" to \"Do not change the board when the ten tests are incomplete or the supporting proof is missing.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Long-Term Investment",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 8,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "2dbe5ee8707432e938bceff2beea2040488e40b877b9927477956dafc9c7b794",
          "comparison_receipt_sha256": "f52feea9ffde74555cbb5843f7889909cc9926e44094f60dc24364c6834a60a9",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "cadccac236a32526bc2bea3a26b73c8090cb885aca98af1a964f7eadb1532f9d",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "ANIMAL_WILDLIFE",
              "label": "Animals and wildlife"
            }
          ],
          "terms": [
            "investments",
            "pass",
            "still",
            "need",
            "proof",
            "today",
            "may",
            "change",
            "deserves",
            "research",
            "not",
            "prove",
            "three",
            "outcome",
            "set",
            "future",
            "price",
            "farm",
            "and",
            "dairy",
            "oldest",
            "izaak",
            "walton",
            "league",
            "conservation",
            "group",
            "celebrates",
            "years",
            "times",
            "san",
            "diego",
            "opinion",
            "taxing",
            "billionaires",
            "will",
            "help",
            "californians",
            "keep",
            "health",
            "coverage",
            "start",
            "review",
            "but",
            "earn",
            "investment",
            "must",
            "meet",
            "the",
            "same",
            "ten",
            "public",
            "tests",
            "first",
            "hand",
            "six",
            "supported",
            "place",
            "board",
            "five",
            "fewer",
            "out",
            "missing",
            "old",
            "count",
            "new",
            "headline",
            "cannot",
            "rewrite",
            "last",
            "saved",
            "result",
            "fresh",
            "company",
            "test",
            "becomes",
            "weak",
            "next"
          ],
          "direction": "UNSTATED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-06-LONG-TERM-INVESTMENT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-06-LONG-TERM-INVESTMENT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-05-PREDICTIONS",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT::TAB-06-LONG-TERM-INVESTMENT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT::TAB-06-LONG-TERM-INVESTMENT"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT"
        ],
        "direction_counts": {
          "UP": 2,
          "DOWN": 0,
          "MIXED": 2,
          "UNSTATED": 1
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-06-LONG-TERM-INVESTMENT",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "4 investments meet at least six checks; 0 need more proof.",
            "engine": null,
            "tab": "Long-Term Investment",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 411.9675,
            "why": [
              "shared terms: ten, investment, board, six, review"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-06-LONG-TERM-INVESTMENT",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "4 assets clear the 6-of-10 research threshold; 0 remain held.",
            "engine": null,
            "tab": "Long-Term Investment",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 247.55,
            "why": [
              "shared terms: research, ten, saved, investment, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-05-PREDICTIONS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "32 research predictions have clear rules, but none has a final result yet.",
            "engine": null,
            "tab": "Predictions",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 232.4978,
            "why": [
              "shared terms: price, result, but, and, research"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT::TAB-06-LONG-TERM-INVESTMENT",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
            "date": "2026-08-02",
            "title": "4 assets clear the first 6-of-10 research threshold; 0 remain held, and none is promised to grow exponentially.",
            "engine": null,
            "tab": "Long-Term Investment",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 216.6178,
            "why": [
              "shared terms: ten, three, and, investment, research"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT::TAB-06-LONG-TERM-INVESTMENT",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
            "date": "2026-08-02",
            "title": "4 assets clear the first 6-of-10 research threshold; 0 remain held, and none is promised to grow exponentially.",
            "engine": null,
            "tab": "Long-Term Investment",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 216.6178,
            "why": [
              "shared terms: ten, three, and, investment, research"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "d2343c4b0ab4236e8a08892dc5904f80f89c11839c0bbf916eb2a24e23260756"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LONG-TERM-INVESTMENT",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LONG-TERM-INVESTMENT",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Long-Term Investment",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Long-Term Investment",
          "source_headline": "4 investments meet at least six checks; 0 need more proof.",
          "source_question": "Which public investments meet at least six of ten research checks?",
          "source_market_connection": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "8db7f78158ca9ed3cc9ddb515f40a9c19a29ab120e7da8011aae7b6bd58b0bba",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Long-Term Investment",
          "current_headline": "4 investments pass; 0 still need more proof.",
          "current_question": "Which investments still pass the long-term research checks?",
          "current_market_connection": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "8b6738f7c28f44711f0994242568f38fa1d000491cc90ca94567fed4d8a564a8",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Which public investments meet at least six of ten research checks?",
              "current": "Which investments still pass the long-term research checks?"
            },
            "headline": {
              "changed": true,
              "prior": "4 investments meet at least six checks; 0 need more proof.",
              "current": "4 investments pass; 0 still need more proof."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. Current news may start a review, but it does not earn a pass. Each investment must still meet the same ten public tests with first-hand proof.",
                "Six or more supported tests place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count, and a new headline cannot rewrite the last saved result."
              ],
              "removed": [
                "Current news can start or speed up a review, but it does not earn any points. Every investment still faces the same ten checks, using official or first-hand proof. Only checks with clear support count.",
                "Six or more supported checks place an investment on the research board. Five or fewer keep it out. Missing or old proof does not count. Each addition or removal is saved as a new dated record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "News may start a review",
                "The same ten tests apply",
                "Old and new results stay separate"
              ],
              "removed_titles": [
                "News can start a review but earns no points",
                "Every investment faces the same test",
                "An unfinished check cannot replace the last full result"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-07",
                "LEAD-08",
                "LEAD-09",
                "LEAD-10",
                "LEAD-11",
                "LEAD-12"
              ],
              "removed": [
                "FINANCE-CURRENT",
                "FUTURE-CURRENT",
                "HEALTH-CURRENT",
                "MARKET-CURRENT",
                "SUPPLY-CURRENT",
                "TECH-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.",
              "current": "Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Fresh first-hand company proof",
                "A supported test that becomes weak",
                "The next full research review"
              ],
              "removed": [
                "Fresh proof for a sixth check",
                "New proof that removes a supported check",
                "The next proof and membership review"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.",
              "current": "Do not change the board when the ten tests are incomplete or the supporting proof is missing."
            }
          },
          "similarities": [
            "Both records belong to the Long-Term Investment canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
            "Headline changed from \"4 investments meet at least six checks; 0 need more proof.\" to \"4 investments pass; 0 still need more proof.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added News may start a review, The same ten tests apply, Old and new results stay separate; removed News can start a review but earns no points, Every investment faces the same test, An unfinished check cannot replace the last full result.",
            "Source set changed: added LEAD-07, LEAD-08, LEAD-09 and 3 more; removed FINANCE-CURRENT, FUTURE-CURRENT, HEALTH-CURRENT and 3 more.",
            "Market connection changed from \"Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.\" to \"Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.\" to \"Do not change the board when the ten tests are incomplete or the supporting proof is missing.\"."
          ],
          "comparison": "The Long-Term Investment tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\".",
          "difference": "Question changed from \"Which public investments meet at least six of ten research checks?\" to \"Which investments still pass the long-term research checks?\". Headline changed from \"4 investments meet at least six checks; 0 need more proof.\" to \"4 investments pass; 0 still need more proof.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added News may start a review, The same ten tests apply, Old and new results stay separate; removed News can start a review but earns no points, Every investment faces the same test, An unfinished check cannot replace the last full result. Source set changed: added LEAD-07, LEAD-08, LEAD-09 and 3 more; removed FINANCE-CURRENT, FUTURE-CURRENT, HEALTH-CURRENT and 3 more. Market connection changed from \"Current news may move a review forward. It cannot pass a check, prove a three-year result or set a future price.\" to \"Today’s reports may change what deserves research. They do not prove a three-year outcome or set a future price.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not update the board when proof is old, the ten checks are incomplete, the market or currency is wrong, or a dated record is missing.\" to \"Do not change the board when the ten tests are incomplete or the supporting proof is missing.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Long-Term Investment",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 8,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "2dbe5ee8707432e938bceff2beea2040488e40b877b9927477956dafc9c7b794",
          "comparison_receipt_sha256": "f52feea9ffde74555cbb5843f7889909cc9926e44094f60dc24364c6834a60a9",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Use the same ten checks for every investment.",
        "Use official or first-hand sources and record when each source was checked.",
        "Record the market, currency, time and trading state for every price.",
        "At least six checks need clear support before public inclusion.",
        "Save every addition and removal without changing yesterday's result."
      ],
      "watch_conditions": [
        "Fresh first-hand company proof",
        "A supported test that becomes weak",
        "The next full research review"
      ],
      "invalidation": "Do not change the board when the ten tests are incomplete or the supporting proof is missing.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-02-0150-SGT",
        "observed_at_sgt": "2026-08-03T03:15:00+08:00",
        "verified_sources": 21,
        "candidate_sources": 21,
        "automation_attempt_id": "OTR-LONG-TERM-EXPERIMENT-PUBLICATION-2026-08-03-0315-SGT",
        "state": "COMPLETE"
      }
    },
    "Dots": {
      "eyebrow": "DOTS · 4 AUGUST 2026",
      "question": "Can today’s reports be connected safely?",
      "headline": "The reports may sit together without sharing one cause.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. A reader may compare their timing or possible effects, but this edition has no saved proof that one report caused the other.",
        "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Any link between them is a question for later checks. Each report keeps its own source, event, warning, and reason it may leave the story."
      ],
      "beats": [
        {
          "label": "A",
          "title": "First compare, then test",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Their timing can be compared, but no shared cause is claimed.",
          "source_ids": [
            "LEAD-01",
            "LEAD-02"
          ]
        },
        {
          "label": "B",
          "title": "Keep separate causes separate",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A similar result does not prove the same cause.",
          "source_ids": [
            "LEAD-03",
            "LEAD-04"
          ]
        },
        {
          "label": "C",
          "title": "Look for the missing step",
          "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. A claimed effect needs later proof between the first report and the result.",
          "source_ids": [
            "LEAD-05",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.",
      "history_echo": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\". This is background only. It compares the nearest earlier saved Dots section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Dots",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Dots",
          "question": "Can today’s reports be connected safely?",
          "headline": "The reports may sit together without sharing one cause.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. A reader may compare their timing or possible effects, but this edition has no saved proof that one report caused the other.",
            "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Any link between them is a question for later checks. Each report keeps its own source, event, warning, and reason it may leave the story."
          ],
          "beats": [
            {
              "label": "A",
              "title": "First compare, then test",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Their timing can be compared, but no shared cause is claimed.",
              "source_ids": [
                "LEAD-01",
                "LEAD-02"
              ]
            },
            {
              "label": "B",
              "title": "Keep separate causes separate",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A similar result does not prove the same cause.",
              "source_ids": [
                "LEAD-03",
                "LEAD-04"
              ]
            },
            {
              "label": "C",
              "title": "Look for the missing step",
              "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. A claimed effect needs later proof between the first report and the result.",
              "source_ids": [
                "LEAD-05",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.",
          "watch_conditions": [
            "A repeated timing pattern",
            "A direct link between event and effect",
            "A different cause that fits better"
          ],
          "invalidation": "Remove a connection when the expected next step does not appear or a stronger explanation is proved.",
          "content_sha256": "a0e1329e2ce1bb11d567a33ecf5476560f978b1d97b0f16219a17bd0c6c4314f",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Dots",
          "question": "How do today's main reports connect without becoming one false story?",
          "headline": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
          "narrative": [
            "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” The first link is simple: a pause and hope for talks lowered war fears, oil fell and US share prices rose. The market report shows the first response, but we still need to see whether it lasts.",
            "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” OPEC+ added a separate supply reason for lower oil. Joint action on the yen began another link: government action made bets against the yen more risky and may affect wider Asian markets. That wider result needs later proof."
          ],
          "beats": [
            {
              "label": "A · WAR FEARS",
              "title": "A reported pause reduced one immediate fear",
              "body": "The first market response fits lower conflict risk, but a pause can reverse and does not prove a final deal.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "B · SUPPLY",
              "title": "OPEC+ gave oil a second explanation",
              "body": "More expected supply can push oil lower even if hopes for talks later weaken.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "C · YEN",
              "title": "Joint action made one-sided yen bets more risky",
              "body": "Wider results depend on whether the action changes money flows after the first response.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
          "watch_conditions": [
            "Conflict news beside oil prices",
            "Whether OPEC+ adds the supply it promised",
            "The yen and wider Asian markets after the first move"
          ],
          "invalidation": "Remove a link when the expected result does not appear or when a stronger source shows a different cause.",
          "content_sha256": "fe1e5b3a7fe944ebece6b174fcbb73c9adfc1dd99c8a9429098e61743ae9ec82",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "How do today's main reports connect without becoming one false story?",
            "current": "Can today’s reports be connected safely?"
          },
          "headline": {
            "changed": true,
            "prior": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
            "current": "The reports may sit together without sharing one cause."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. A reader may compare their timing or possible effects, but this edition has no saved proof that one report caused the other.",
              "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Any link between them is a question for later checks. Each report keeps its own source, event, warning, and reason it may leave the story."
            ],
            "removed": [
              "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” The first link is simple: a pause and hope for talks lowered war fears, oil fell and US share prices rose. The market report shows the first response, but we still need to see whether it lasts.",
              "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” OPEC+ added a separate supply reason for lower oil. Joint action on the yen began another link: government action made bets against the yen more risky and may affect wider Asian markets. That wider result needs later proof."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "First compare, then test",
              "Keep separate causes separate",
              "Look for the missing step"
            ],
            "removed_titles": [
              "A reported pause reduced one immediate fear",
              "OPEC+ gave oil a second explanation",
              "Joint action made one-sided yen bets more risky"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
            "current": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "A repeated timing pattern",
              "A direct link between event and effect",
              "A different cause that fits better"
            ],
            "removed": [
              "Conflict news beside oil prices",
              "Whether OPEC+ adds the supply it promised",
              "The yen and wider Asian markets after the first move"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Remove a link when the expected result does not appear or when a stronger source shows a different cause.",
            "current": "Remove a connection when the expected next step does not appear or a stronger explanation is proved."
          }
        },
        "similarities": [
          "Both records belong to the Dots canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
          "Headline changed from \"Talks changed war fears, supply changed oil, and government action changed yen risk.\" to \"The reports may sit together without sharing one cause.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added First compare, then test, Keep separate causes separate, Look for the missing step; removed A reported pause reduced one immediate fear, OPEC+ gave oil a second explanation, Joint action made one-sided yen bets more risky.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.\" to \"A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Remove a link when the expected result does not appear or when a stronger source shows a different cause.\" to \"Remove a connection when the expected next step does not appear or a stronger explanation is proved.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Dots",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "7d4fc71418b2ab82c162d555eb7a76fc95a4cc3f3c4e5169013723b633bbd38c",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "57d38c4b0416ba6c1baee8f98205cbe871a6873a2e3d90d0b8fb1edcded78361"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-DOTS",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-DOTS",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Dots",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Dots",
          "source_headline": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
          "source_question": "How do today's main reports connect without becoming one false story?",
          "source_market_connection": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "fe1e5b3a7fe944ebece6b174fcbb73c9adfc1dd99c8a9429098e61743ae9ec82",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Dots",
          "current_headline": "The reports may sit together without sharing one cause.",
          "current_question": "Can today’s reports be connected safely?",
          "current_market_connection": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "a0e1329e2ce1bb11d567a33ecf5476560f978b1d97b0f16219a17bd0c6c4314f",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "How do today's main reports connect without becoming one false story?",
              "current": "Can today’s reports be connected safely?"
            },
            "headline": {
              "changed": true,
              "prior": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
              "current": "The reports may sit together without sharing one cause."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. A reader may compare their timing or possible effects, but this edition has no saved proof that one report caused the other.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Any link between them is a question for later checks. Each report keeps its own source, event, warning, and reason it may leave the story."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” The first link is simple: a pause and hope for talks lowered war fears, oil fell and US share prices rose. The market report shows the first response, but we still need to see whether it lasts.",
                "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” OPEC+ added a separate supply reason for lower oil. Joint action on the yen began another link: government action made bets against the yen more risky and may affect wider Asian markets. That wider result needs later proof."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "First compare, then test",
                "Keep separate causes separate",
                "Look for the missing step"
              ],
              "removed_titles": [
                "A reported pause reduced one immediate fear",
                "OPEC+ gave oil a second explanation",
                "Joint action made one-sided yen bets more risky"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
              "current": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "A repeated timing pattern",
                "A direct link between event and effect",
                "A different cause that fits better"
              ],
              "removed": [
                "Conflict news beside oil prices",
                "Whether OPEC+ adds the supply it promised",
                "The yen and wider Asian markets after the first move"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove a link when the expected result does not appear or when a stronger source shows a different cause.",
              "current": "Remove a connection when the expected next step does not appear or a stronger explanation is proved."
            }
          },
          "similarities": [
            "Both records belong to the Dots canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
            "Headline changed from \"Talks changed war fears, supply changed oil, and government action changed yen risk.\" to \"The reports may sit together without sharing one cause.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added First compare, then test, Keep separate causes separate, Look for the missing step; removed A reported pause reduced one immediate fear, OPEC+ gave oil a second explanation, Joint action made one-sided yen bets more risky.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.\" to \"A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove a link when the expected result does not appear or when a stronger source shows a different cause.\" to \"Remove a connection when the expected next step does not appear or a stronger explanation is proved.\"."
          ],
          "comparison": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
          "difference": "Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\". Headline changed from \"Talks changed war fears, supply changed oil, and government action changed yen risk.\" to \"The reports may sit together without sharing one cause.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added First compare, then test, Keep separate causes separate, Look for the missing step; removed A reported pause reduced one immediate fear, OPEC+ gave oil a second explanation, Joint action made one-sided yen bets more risky. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.\" to \"A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove a link when the expected result does not appear or when a stronger source shows a different cause.\" to \"Remove a connection when the expected next step does not appear or a stronger explanation is proved.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Dots",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "7d4fc71418b2ab82c162d555eb7a76fc95a4cc3f3c4e5169013723b633bbd38c",
          "comparison_receipt_sha256": "57d38c4b0416ba6c1baee8f98205cbe871a6873a2e3d90d0b8fb1edcded78361",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "6102de4f835c4e433ba50e717928e876ffc832fa0bbff064f7ed7e82bb829d46",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "the",
            "may",
            "sit",
            "together",
            "without",
            "sharing",
            "one",
            "cause",
            "useful",
            "connection",
            "starts",
            "clear",
            "question",
            "becomes",
            "claim",
            "missing",
            "steps",
            "evidence",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "reader",
            "compare",
            "timing",
            "possible",
            "effects",
            "but",
            "edition",
            "has",
            "saved",
            "proof",
            "caused",
            "datamarnews",
            "tariffs",
            "and",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "mortgage",
            "rates",
            "roughly",
            "unchanged",
            "despite",
            "bond",
            "market",
            "improvement",
            "any",
            "link",
            "them",
            "later",
            "checks",
            "keeps",
            "its",
            "own",
            "event",
            "warning",
            "reason",
            "leave",
            "story",
            "repeated",
            "pattern",
            "direct",
            "effect",
            "different",
            "fits",
            "better"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-11-GLOSSARY",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT"
        ],
        "direction_counts": {
          "UP": 2,
          "DOWN": 0,
          "MIXED": 0,
          "UNSTATED": 3
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 277.7565,
            "why": [
              "shared terms: story, the, saved, unchanged, edition"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Every lead claim points to current rows inside OTR-DAILY-73-2026-08-03-0954-SGT.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 223.7296,
            "why": [
              "shared terms: the, story, saved, proof, unchanged"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 211.9069,
            "why": [
              "shared terms: market, edition, saved, and, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-11-GLOSSARY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "Reported fact, OTR inference, scenario, locked term and resolved result are different states.",
            "engine": null,
            "tab": "Glossary",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 196.2233,
            "why": [
              "shared terms: saved, connection, story, and, different"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 194.0332,
            "why": [
              "shared terms: market, and, story, the, question"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "2a384ca38311ec374dc725095b23c7d66dc5ccaeefad3cdb740f0ce2783eb2f0"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-DOTS",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-DOTS",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Dots",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Dots",
          "source_headline": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
          "source_question": "How do today's main reports connect without becoming one false story?",
          "source_market_connection": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "fe1e5b3a7fe944ebece6b174fcbb73c9adfc1dd99c8a9429098e61743ae9ec82",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Dots",
          "current_headline": "The reports may sit together without sharing one cause.",
          "current_question": "Can today’s reports be connected safely?",
          "current_market_connection": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "a0e1329e2ce1bb11d567a33ecf5476560f978b1d97b0f16219a17bd0c6c4314f",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "How do today's main reports connect without becoming one false story?",
              "current": "Can today’s reports be connected safely?"
            },
            "headline": {
              "changed": true,
              "prior": "Talks changed war fears, supply changed oil, and government action changed yen risk.",
              "current": "The reports may sit together without sharing one cause."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. A reader may compare their timing or possible effects, but this edition has no saved proof that one report caused the other.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. Any link between them is a question for later checks. Each report keeps its own source, event, warning, and reason it may leave the story."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” The first link is simple: a pause and hope for talks lowered war fears, oil fell and US share prices rose. The market report shows the first response, but we still need to see whether it lasts.",
                "benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” OPEC+ added a separate supply reason for lower oil. Joint action on the yen began another link: government action made bets against the yen more risky and may affect wider Asian markets. That wider result needs later proof."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "First compare, then test",
                "Keep separate causes separate",
                "Look for the missing step"
              ],
              "removed_titles": [
                "A reported pause reduced one immediate fear",
                "OPEC+ gave oil a second explanation",
                "Joint action made one-sided yen bets more risky"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.",
              "current": "A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "A repeated timing pattern",
                "A direct link between event and effect",
                "A different cause that fits better"
              ],
              "removed": [
                "Conflict news beside oil prices",
                "Whether OPEC+ adds the supply it promised",
                "The yen and wider Asian markets after the first move"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove a link when the expected result does not appear or when a stronger source shows a different cause.",
              "current": "Remove a connection when the expected next step does not appear or a stronger explanation is proved."
            }
          },
          "similarities": [
            "Both records belong to the Dots canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
            "Headline changed from \"Talks changed war fears, supply changed oil, and government action changed yen risk.\" to \"The reports may sit together without sharing one cause.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added First compare, then test, Keep separate causes separate, Look for the missing step; removed A reported pause reduced one immediate fear, OPEC+ gave oil a second explanation, Joint action made one-sided yen bets more risky.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.\" to \"A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove a link when the expected result does not appear or when a stronger source shows a different cause.\" to \"Remove a connection when the expected next step does not appear or a stronger explanation is proved.\"."
          ],
          "comparison": "The Dots tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\".",
          "difference": "Question changed from \"How do today's main reports connect without becoming one false story?\" to \"Can today’s reports be connected safely?\". Headline changed from \"Talks changed war fears, supply changed oil, and government action changed yen risk.\" to \"The reports may sit together without sharing one cause.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added First compare, then test, Keep separate causes separate, Look for the missing step; removed A reported pause reduced one immediate fear, OPEC+ gave oil a second explanation, Joint action made one-sided yen bets more risky. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The useful picture has separate forces, not one cause for everything. Talks, oil supply and action on the yen can overlap while still being checked on their own.\" to \"A useful connection starts as a clear question. It becomes a claim only after the missing steps have evidence.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove a link when the expected result does not appear or when a stronger source shows a different cause.\" to \"Remove a connection when the expected next step does not appear or a stronger explanation is proved.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Dots",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "7d4fc71418b2ab82c162d555eb7a76fc95a4cc3f3c4e5169013723b633bbd38c",
          "comparison_receipt_sha256": "57d38c4b0416ba6c1baee8f98205cbe871a6873a2e3d90d0b8fb1edcded78361",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "A repeated timing pattern",
        "A direct link between event and effect",
        "A different cause that fits better"
      ],
      "invalidation": "Remove a connection when the expected next step does not appear or a stronger explanation is proved.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Novel": {
      "eyebrow": "NOVEL · 4 AUGUST 2026",
      "question": "What new idea is supported across today’s reports?",
      "headline": "No new cross-report claim is proven yet.",
      "narrative": [
        "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. They may inspire a useful question, but the saved facts do not yet prove one new idea that joins them. That honest empty state is better than a clever claim without support.",
        "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A later edition may find a supported pattern if the same steps appear in more than one independent report and the important differences stay visible."
      ],
      "beats": [
        {
          "label": "QUESTION",
          "title": "A question is not a finding",
          "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The pair can guide research without being presented as one proven pattern.",
          "source_ids": [
            "LEAD-05",
            "LEAD-06"
          ]
        },
        {
          "label": "REPEAT",
          "title": "One example is not a pattern",
          "body": "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Separately, Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A repeated step needs separate support before it becomes a finding.",
          "source_ids": [
            "LEAD-07",
            "LEAD-08"
          ]
        },
        {
          "label": "DIFFERENCE",
          "title": "Differences must stay visible",
          "body": "news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Similar words do not erase different places, times, or causes.",
          "source_ids": [
            "LEAD-09",
            "LEAD-10"
          ]
        }
      ],
      "market_connection": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.",
      "history_echo": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\". This is background only. It compares the nearest earlier saved Novel section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Novel",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Novel",
          "question": "What new idea is supported across today’s reports?",
          "headline": "No new cross-report claim is proven yet.",
          "narrative": [
            "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. They may inspire a useful question, but the saved facts do not yet prove one new idea that joins them. That honest empty state is better than a clever claim without support.",
            "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A later edition may find a supported pattern if the same steps appear in more than one independent report and the important differences stay visible."
          ],
          "beats": [
            {
              "label": "QUESTION",
              "title": "A question is not a finding",
              "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The pair can guide research without being presented as one proven pattern.",
              "source_ids": [
                "LEAD-05",
                "LEAD-06"
              ]
            },
            {
              "label": "REPEAT",
              "title": "One example is not a pattern",
              "body": "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Separately, Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A repeated step needs separate support before it becomes a finding.",
              "source_ids": [
                "LEAD-07",
                "LEAD-08"
              ]
            },
            {
              "label": "DIFFERENCE",
              "title": "Differences must stay visible",
              "body": "news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Similar words do not erase different places, times, or causes.",
              "source_ids": [
                "LEAD-09",
                "LEAD-10"
              ]
            }
          ],
          "source_ids": [
            "LEAD-05",
            "LEAD-06",
            "LEAD-07",
            "LEAD-08",
            "LEAD-09",
            "LEAD-10"
          ],
          "market_connection": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.",
          "watch_conditions": [
            "The same step in independent reports",
            "A clear difference that breaks the pattern",
            "A first-hand source that fills the gap"
          ],
          "invalidation": "Do not publish a cross-report finding when it relies only on similar words or one publisher.",
          "content_sha256": "307068ffae3ca658b585f6b1b8b19f0117b25a4e8bee928224d204084f422e61",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Novel",
          "question": "What is easy to miss when several government decisions arrive together?",
          "headline": "The timing of government decisions can shape a market day even when each decision works in a different way.",
          "narrative": [
            "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” One report changed the short-term danger of military action. Another confirmed that two governments acted together in a major currency. Both can force choices before slower economic reports arrive.",
            "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The easy-to-miss lesson is that the same fall in oil can have two real causes: lower war fears and more expected supply. OTR keeps them separate because different later events could prove each one wrong."
          ],
          "beats": [
            {
              "label": "TIMING",
              "title": "Official words can move faster than economic reports",
              "body": "A strike pause or action on the yen can move prices before slower reports show any effect.",
              "source_ids": [
                "FINANCE-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "CAUSES",
              "title": "Two correct explanations can exist together",
              "body": "Hope for Iran talks and more OPEC+ supply can both push oil down. Neither should erase the other.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "CHOICES",
              "title": "Different causes need different preparation",
              "body": "A return to conflict needs close news checks. A supply change needs checks on stock, producers and demand.",
              "source_ids": [
                "ENERGY-CURRENT",
                "WORLD-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
          "watch_conditions": [
            "Which oil driver persists",
            "Whether official currency action repeats",
            "Which decisions change before slow data arrives"
          ],
          "invalidation": "This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.",
          "content_sha256": "1d9c9707e86b610d1d8e0b242967e4f6cad58513e2d67cb67964fbad61c3dc09",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What is easy to miss when several government decisions arrive together?",
            "current": "What new idea is supported across today’s reports?"
          },
          "headline": {
            "changed": true,
            "prior": "The timing of government decisions can shape a market day even when each decision works in a different way.",
            "current": "No new cross-report claim is proven yet."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. They may inspire a useful question, but the saved facts do not yet prove one new idea that joins them. That honest empty state is better than a clever claim without support.",
              "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A later edition may find a supported pattern if the same steps appear in more than one independent report and the important differences stay visible."
            ],
            "removed": [
              "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” One report changed the short-term danger of military action. Another confirmed that two governments acted together in a major currency. Both can force choices before slower economic reports arrive.",
              "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The easy-to-miss lesson is that the same fall in oil can have two real causes: lower war fears and more expected supply. OTR keeps them separate because different later events could prove each one wrong."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "A question is not a finding",
              "One example is not a pattern",
              "Differences must stay visible"
            ],
            "removed_titles": [
              "Official words can move faster than economic reports",
              "Two correct explanations can exist together",
              "Different causes need different preparation"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-05",
              "LEAD-06",
              "LEAD-07",
              "LEAD-08",
              "LEAD-09",
              "LEAD-10"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
            "current": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "The same step in independent reports",
              "A clear difference that breaks the pattern",
              "A first-hand source that fills the gap"
            ],
            "removed": [
              "Which oil driver persists",
              "Whether official currency action repeats",
              "Which decisions change before slow data arrives"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.",
            "current": "Do not publish a cross-report finding when it relies only on similar words or one publisher."
          }
        },
        "similarities": [
          "Both records belong to the Novel canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
          "Headline changed from \"The timing of government decisions can shape a market day even when each decision works in a different way.\" to \"No new cross-report claim is proven yet.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added A question is not a finding, One example is not a pattern, Differences must stay visible; removed Official words can move faster than economic reports, Two correct explanations can exist together, Different causes need different preparation.",
          "Source set changed: added LEAD-05, LEAD-06, LEAD-07 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.\" to \"The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.\" to \"Do not publish a cross-report finding when it relies only on similar words or one publisher.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Novel",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "3c9661bf2a4ff66d34b179793532ad3e04106cf5e1ff9316cf731ccd514e4afd",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "ec8c48dd9dff08f79dd07a97622a627abc66bf6e7053f5d4cefc57391b95043e"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-NOVEL",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-NOVEL",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Novel",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Novel",
          "source_headline": "The timing of government decisions can shape a market day even when each decision works in a different way.",
          "source_question": "What is easy to miss when several government decisions arrive together?",
          "source_market_connection": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "1d9c9707e86b610d1d8e0b242967e4f6cad58513e2d67cb67964fbad61c3dc09",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Novel",
          "current_headline": "No new cross-report claim is proven yet.",
          "current_question": "What new idea is supported across today’s reports?",
          "current_market_connection": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "307068ffae3ca658b585f6b1b8b19f0117b25a4e8bee928224d204084f422e61",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What is easy to miss when several government decisions arrive together?",
              "current": "What new idea is supported across today’s reports?"
            },
            "headline": {
              "changed": true,
              "prior": "The timing of government decisions can shape a market day even when each decision works in a different way.",
              "current": "No new cross-report claim is proven yet."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. They may inspire a useful question, but the saved facts do not yet prove one new idea that joins them. That honest empty state is better than a clever claim without support.",
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A later edition may find a supported pattern if the same steps appear in more than one independent report and the important differences stay visible."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” One report changed the short-term danger of military action. Another confirmed that two governments acted together in a major currency. Both can force choices before slower economic reports arrive.",
                "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The easy-to-miss lesson is that the same fall in oil can have two real causes: lower war fears and more expected supply. OTR keeps them separate because different later events could prove each one wrong."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A question is not a finding",
                "One example is not a pattern",
                "Differences must stay visible"
              ],
              "removed_titles": [
                "Official words can move faster than economic reports",
                "Two correct explanations can exist together",
                "Different causes need different preparation"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-05",
                "LEAD-06",
                "LEAD-07",
                "LEAD-08",
                "LEAD-09",
                "LEAD-10"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
              "current": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "The same step in independent reports",
                "A clear difference that breaks the pattern",
                "A first-hand source that fills the gap"
              ],
              "removed": [
                "Which oil driver persists",
                "Whether official currency action repeats",
                "Which decisions change before slow data arrives"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.",
              "current": "Do not publish a cross-report finding when it relies only on similar words or one publisher."
            }
          },
          "similarities": [
            "Both records belong to the Novel canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
            "Headline changed from \"The timing of government decisions can shape a market day even when each decision works in a different way.\" to \"No new cross-report claim is proven yet.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A question is not a finding, One example is not a pattern, Differences must stay visible; removed Official words can move faster than economic reports, Two correct explanations can exist together, Different causes need different preparation.",
            "Source set changed: added LEAD-05, LEAD-06, LEAD-07 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.\" to \"The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.\" to \"Do not publish a cross-report finding when it relies only on similar words or one publisher.\"."
          ],
          "comparison": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
          "difference": "Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\". Headline changed from \"The timing of government decisions can shape a market day even when each decision works in a different way.\" to \"No new cross-report claim is proven yet.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A question is not a finding, One example is not a pattern, Differences must stay visible; removed Official words can move faster than economic reports, Two correct explanations can exist together, Different causes need different preparation. Source set changed: added LEAD-05, LEAD-06, LEAD-07 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.\" to \"The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.\" to \"Do not publish a cross-report finding when it relies only on similar words or one publisher.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Novel",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "3c9661bf2a4ff66d34b179793532ad3e04106cf5e1ff9316cf731ccd514e4afd",
          "comparison_receipt_sha256": "ec8c48dd9dff08f79dd07a97622a627abc66bf6e7053f5d4cefc57391b95043e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "7867313d7995ebcfe895f3b39169c5c1dd075da2cabb4e7f0dacc78318ed7a2c",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "ANIMAL_WILDLIFE",
              "label": "Animals and wildlife"
            }
          ],
          "terms": [
            "new",
            "cross",
            "claim",
            "proven",
            "yet",
            "the",
            "value",
            "today",
            "knowing",
            "proof",
            "stops",
            "idea",
            "should",
            "wait",
            "until",
            "headline",
            "makes",
            "real",
            "politico",
            "texas",
            "governor",
            "puts",
            "data",
            "center",
            "grid",
            "approvals",
            "hold",
            "wowtale",
            "mediqstar",
            "closes",
            "pre",
            "series",
            "round",
            "genaxis",
            "accelerate",
            "diagnostic",
            "platform",
            "abroad",
            "may",
            "inspire",
            "useful",
            "question",
            "but",
            "saved",
            "facts",
            "not",
            "prove",
            "one",
            "joins",
            "them",
            "honest",
            "empty",
            "state",
            "better",
            "clever",
            "without",
            "support",
            "farm",
            "and",
            "dairy",
            "oldest",
            "izaak",
            "walton",
            "league",
            "conservation",
            "group",
            "celebrates",
            "years",
            "times",
            "san",
            "diego",
            "opinion",
            "taxing",
            "billionaires",
            "will",
            "help",
            "californians",
            "keep",
            "health",
            "coverage",
            "later",
            "edition",
            "find",
            "supported",
            "pattern",
            "same",
            "steps",
            "appear",
            "independent",
            "important",
            "differences",
            "stay",
            "visible",
            "step",
            "clear",
            "difference",
            "breaks",
            "first",
            "hand",
            "fills",
            "gap"
          ],
          "direction": "UNSTATED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-03-WORRY",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02"
        ],
        "direction_counts": {
          "UP": 1,
          "DOWN": 0,
          "MIXED": 2,
          "UNSTATED": 2
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "584 current signals and 73 complete engines bind to one release.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 225.6366,
            "why": [
              "shared terms: proof, saved, one, and, without"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 218.48,
            "why": [
              "shared terms: the, saved, edition, and, proof"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 192.3333,
            "why": [
              "shared terms: the, important, not, first, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-03-WORRY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "The main risks are a short pause, an oil price rebound and support for the yen that does not last.",
            "engine": null,
            "tab": "Worry",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 160.9337,
            "why": [
              "shared terms: may, the, not, and, support"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 159.3154,
            "why": [
              "shared terms: and, not, the, today, question"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "dfded30d5c035b45ca5a6a88b64b273604bf2124c42451c8e54ce401ed65df4a"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-NOVEL",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-NOVEL",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Novel",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Novel",
          "source_headline": "The timing of government decisions can shape a market day even when each decision works in a different way.",
          "source_question": "What is easy to miss when several government decisions arrive together?",
          "source_market_connection": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "1d9c9707e86b610d1d8e0b242967e4f6cad58513e2d67cb67964fbad61c3dc09",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Novel",
          "current_headline": "No new cross-report claim is proven yet.",
          "current_question": "What new idea is supported across today’s reports?",
          "current_market_connection": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "307068ffae3ca658b585f6b1b8b19f0117b25a4e8bee928224d204084f422e61",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What is easy to miss when several government decisions arrive together?",
              "current": "What new idea is supported across today’s reports?"
            },
            "headline": {
              "changed": true,
              "prior": "The timing of government decisions can shape a market day even when each decision works in a different way.",
              "current": "No new cross-report claim is proven yet."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. They may inspire a useful question, but the saved facts do not yet prove one new idea that joins them. That honest empty state is better than a clever claim without support.",
                "Farm and Dairy reported: “Pa.’s oldest Izaak Walton League conservation group celebrates 100 years”. Times of San Diego reported: “Opinion: Taxing billionaires will help Californians keep their health coverage”. A later edition may find a supported pattern if the same steps appear in more than one independent report and the important differences stay visible."
              ],
              "removed": [
                "TODAY.com reported “Trump Calls for Pause on Military Strikes Against Iran.” finance.yahoo.com reported “Japan confirms joint yen intervention with US, signals readiness for more action.” One report changed the short-term danger of military action. Another confirmed that two governments acted together in a major currency. Both can force choices before slower economic reports arrive.",
                "Bloomberg.com reported “Oil Slumps, US Futures Rise on Iran Talks Optimism: Markets Wrap.” benzinga.com reported “Crude Oil Price Dives as OPEC+ Agrees to Another Supply Hike.” The easy-to-miss lesson is that the same fall in oil can have two real causes: lower war fears and more expected supply. OTR keeps them separate because different later events could prove each one wrong."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A question is not a finding",
                "One example is not a pattern",
                "Differences must stay visible"
              ],
              "removed_titles": [
                "Official words can move faster than economic reports",
                "Two correct explanations can exist together",
                "Different causes need different preparation"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-05",
                "LEAD-06",
                "LEAD-07",
                "LEAD-08",
                "LEAD-09",
                "LEAD-10"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.",
              "current": "The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "The same step in independent reports",
                "A clear difference that breaks the pattern",
                "A first-hand source that fills the gap"
              ],
              "removed": [
                "Which oil driver persists",
                "Whether official currency action repeats",
                "Which decisions change before slow data arrives"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.",
              "current": "Do not publish a cross-report finding when it relies only on similar words or one publisher."
            }
          },
          "similarities": [
            "Both records belong to the Novel canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
            "Headline changed from \"The timing of government decisions can shape a market day even when each decision works in a different way.\" to \"No new cross-report claim is proven yet.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A question is not a finding, One example is not a pattern, Differences must stay visible; removed Official words can move faster than economic reports, Two correct explanations can exist together, Different causes need different preparation.",
            "Source set changed: added LEAD-05, LEAD-06, LEAD-07 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.\" to \"The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.\" to \"Do not publish a cross-report finding when it relies only on similar words or one publisher.\"."
          ],
          "comparison": "The Novel tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\".",
          "difference": "Question changed from \"What is easy to miss when several government decisions arrive together?\" to \"What new idea is supported across today’s reports?\". Headline changed from \"The timing of government decisions can shape a market day even when each decision works in a different way.\" to \"No new cross-report claim is proven yet.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A question is not a finding, One example is not a pattern, Differences must stay visible; removed Official words can move faster than economic reports, Two correct explanations can exist together, Different causes need different preparation. Source set changed: added LEAD-05, LEAD-06, LEAD-07 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"The advantage comes from separating causes early, then giving each one its own warning sign, person in charge and reason to stop acting.\" to \"The value today is knowing where the proof stops. A new idea should wait until more than a headline makes it real.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"This idea becomes weaker if later proof shows that one reported decision did not happen or did not cause a clear market response.\" to \"Do not publish a cross-report finding when it relies only on similar words or one publisher.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Novel",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "3c9661bf2a4ff66d34b179793532ad3e04106cf5e1ff9316cf731ccd514e4afd",
          "comparison_receipt_sha256": "ec8c48dd9dff08f79dd07a97622a627abc66bf6e7053f5d4cefc57391b95043e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "The same step in independent reports",
        "A clear difference that breaks the pattern",
        "A first-hand source that fills the gap"
      ],
      "invalidation": "Do not publish a cross-report finding when it relies only on similar words or one publisher.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Tomorrow": {
      "eyebrow": "TOMORROW · AFTER 4 AUGUST 2026",
      "question": "What should the next edition check first?",
      "headline": "Check the lead reports, their warnings, and any stronger new event.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Check whether its publisher adds, corrects, or withdraws anything. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Check whether a second independent report supports the same event.",
        "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Check what happened after the headline without placing later facts inside today’s record. Then compare any new event with all three using the same selection rule."
      ],
      "beats": [
        {
          "label": "FIRST",
          "title": "Check changes to the first report",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. The fourth report stays separate while the first is checked again.",
          "source_ids": [
            "LEAD-01",
            "LEAD-04"
          ]
        },
        {
          "label": "SECOND",
          "title": "Look for independent support",
          "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Another report matters only if it covers the same event independently.",
          "source_ids": [
            "LEAD-02",
            "LEAD-05"
          ]
        },
        {
          "label": "THIRD",
          "title": "Keep later facts on their own date",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Tomorrow’s facts must not be inserted into today’s saved issue.",
          "source_ids": [
            "LEAD-03",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.",
      "history_echo": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\". This is background only. It compares the nearest earlier saved Tomorrow section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Tomorrow",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Tomorrow",
          "question": "What should the next edition check first?",
          "headline": "Check the lead reports, their warnings, and any stronger new event.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Check whether its publisher adds, corrects, or withdraws anything. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Check whether a second independent report supports the same event.",
            "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Check what happened after the headline without placing later facts inside today’s record. Then compare any new event with all three using the same selection rule."
          ],
          "beats": [
            {
              "label": "FIRST",
              "title": "Check changes to the first report",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. The fourth report stays separate while the first is checked again.",
              "source_ids": [
                "LEAD-01",
                "LEAD-04"
              ]
            },
            {
              "label": "SECOND",
              "title": "Look for independent support",
              "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Another report matters only if it covers the same event independently.",
              "source_ids": [
                "LEAD-02",
                "LEAD-05"
              ]
            },
            {
              "label": "THIRD",
              "title": "Keep later facts on their own date",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. Tomorrow’s facts must not be inserted into today’s saved issue.",
              "source_ids": [
                "LEAD-03",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.",
          "watch_conditions": [
            "Publisher updates",
            "Independent reports on the same event",
            "A stronger event after today’s closing time"
          ],
          "invalidation": "Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.",
          "content_sha256": "ec7cc86c0dbfae0d68989398d20b9e3aa546d74c85d6c38bb8e217a80c11d845",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Tomorrow",
          "question": "What should we check next to support or change today's story?",
          "headline": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
          "narrative": [
            "First, check whether planned strikes stay paused and whether talks lead to an official next step. Second, compare oil with both conflict news and actual OPEC+ supply, so a price reversal is not given the wrong cause.",
            "Third, check whether the yen keeps its move and whether the US or Japan plans more action. Wider Asian share-market swings were not proven before this edition closed, so later market data belongs in a clearly dated update or a new edition."
          ],
          "beats": [
            {
              "label": "NEXT HOURS",
              "title": "Does the Iran pause hold?",
              "body": "A fresh official step or renewed military action can change the war-risk path quickly.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "NEXT MARKET SESSION",
              "title": "Which cause still moves oil?",
              "body": "Compare oil with conflict news, actual OPEC+ supply and demand.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "ASIA CHECK",
              "title": "Did action on the yen change wider market choices?",
              "body": "Use later yen and Asian market reports. Do not place later news inside an earlier dated edition.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
          "watch_conditions": [
            "Official action on Iran",
            "Oil and actual OPEC+ supply",
            "The yen and wider Asian markets"
          ],
          "invalidation": "Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.",
          "content_sha256": "4db9c2d50cb8c432255c2677cb1b2d4c25e1f489b3482be765be1a1945719bec",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What should we check next to support or change today's story?",
            "current": "What should the next edition check first?"
          },
          "headline": {
            "changed": true,
            "prior": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
            "current": "Check the lead reports, their warnings, and any stronger new event."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Check whether its publisher adds, corrects, or withdraws anything. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Check whether a second independent report supports the same event.",
              "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Check what happened after the headline without placing later facts inside today’s record. Then compare any new event with all three using the same selection rule."
            ],
            "removed": [
              "First, check whether planned strikes stay paused and whether talks lead to an official next step. Second, compare oil with both conflict news and actual OPEC+ supply, so a price reversal is not given the wrong cause.",
              "Third, check whether the yen keeps its move and whether the US or Japan plans more action. Wider Asian share-market swings were not proven before this edition closed, so later market data belongs in a clearly dated update or a new edition."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "Check changes to the first report",
              "Look for independent support",
              "Keep later facts on their own date"
            ],
            "removed_titles": [
              "Does the Iran pause hold?",
              "Which cause still moves oil?",
              "Did action on the yen change wider market choices?"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
            "current": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Publisher updates",
              "Independent reports on the same event",
              "A stronger event after today’s closing time"
            ],
            "removed": [
              "Official action on Iran",
              "Oil and actual OPEC+ supply",
              "The yen and wider Asian markets"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.",
            "current": "Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked."
          }
        },
        "similarities": [
          "Both records belong to the Tomorrow canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
          "Headline changed from \"Next, check the strike pause, oil's two causes, the yen and the later response across Asia.\" to \"Check the lead reports, their warnings, and any stronger new event.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added Check changes to the first report, Look for independent support, Keep later facts on their own date; removed Does the Iran pause hold?, Which cause still moves oil?, Did action on the yen change wider market choices?.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.\" to \"The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.\" to \"Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Tomorrow",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "12bc14f444b40801924e338e77e03d817ff9a975b41c1a89851eb8a5e8a176d8",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "d3012ee31026c912f75bdf12a6b41dec11257a7193aba094a10c10f4d9aa256e"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TOMORROW",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TOMORROW",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Tomorrow",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Tomorrow",
          "source_headline": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
          "source_question": "What should we check next to support or change today's story?",
          "source_market_connection": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "4db9c2d50cb8c432255c2677cb1b2d4c25e1f489b3482be765be1a1945719bec",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Tomorrow",
          "current_headline": "Check the lead reports, their warnings, and any stronger new event.",
          "current_question": "What should the next edition check first?",
          "current_market_connection": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "ec7cc86c0dbfae0d68989398d20b9e3aa546d74c85d6c38bb8e217a80c11d845",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What should we check next to support or change today's story?",
              "current": "What should the next edition check first?"
            },
            "headline": {
              "changed": true,
              "prior": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
              "current": "Check the lead reports, their warnings, and any stronger new event."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Check whether its publisher adds, corrects, or withdraws anything. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Check whether a second independent report supports the same event.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Check what happened after the headline without placing later facts inside today’s record. Then compare any new event with all three using the same selection rule."
              ],
              "removed": [
                "First, check whether planned strikes stay paused and whether talks lead to an official next step. Second, compare oil with both conflict news and actual OPEC+ supply, so a price reversal is not given the wrong cause.",
                "Third, check whether the yen keeps its move and whether the US or Japan plans more action. Wider Asian share-market swings were not proven before this edition closed, so later market data belongs in a clearly dated update or a new edition."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Check changes to the first report",
                "Look for independent support",
                "Keep later facts on their own date"
              ],
              "removed_titles": [
                "Does the Iran pause hold?",
                "Which cause still moves oil?",
                "Did action on the yen change wider market choices?"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
              "current": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Publisher updates",
                "Independent reports on the same event",
                "A stronger event after today’s closing time"
              ],
              "removed": [
                "Official action on Iran",
                "Oil and actual OPEC+ supply",
                "The yen and wider Asian markets"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.",
              "current": "Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked."
            }
          },
          "similarities": [
            "Both records belong to the Tomorrow canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
            "Headline changed from \"Next, check the strike pause, oil's two causes, the yen and the later response across Asia.\" to \"Check the lead reports, their warnings, and any stronger new event.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Check changes to the first report, Look for independent support, Keep later facts on their own date; removed Does the Iran pause hold?, Which cause still moves oil?, Did action on the yen change wider market choices?.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.\" to \"The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.\" to \"Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.\"."
          ],
          "comparison": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
          "difference": "Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\". Headline changed from \"Next, check the strike pause, oil's two causes, the yen and the later response across Asia.\" to \"Check the lead reports, their warnings, and any stronger new event.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Check changes to the first report, Look for independent support, Keep later facts on their own date; removed Does the Iran pause hold?, Which cause still moves oil?, Did action on the yen change wider market choices?. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.\" to \"The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.\" to \"Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Tomorrow",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "12bc14f444b40801924e338e77e03d817ff9a975b41c1a89851eb8a5e8a176d8",
          "comparison_receipt_sha256": "d3012ee31026c912f75bdf12a6b41dec11257a7193aba094a10c10f4d9aa256e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "288d08fca4b830f8502cf16420dd1b4069bbf4d93ae1d78113f6e596c1a6809b",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "check",
            "the",
            "lead",
            "warnings",
            "and",
            "any",
            "stronger",
            "new",
            "event",
            "next",
            "edition",
            "should",
            "test",
            "lasted",
            "changed",
            "deserves",
            "replace",
            "item",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "whether",
            "its",
            "adds",
            "corrects",
            "withdraws",
            "anything",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "second",
            "independent",
            "supports",
            "same",
            "datamarnews",
            "tariffs",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "happened",
            "headline",
            "without",
            "placing",
            "later",
            "facts",
            "inside",
            "today",
            "record",
            "then",
            "compare",
            "all",
            "three",
            "selection",
            "rule",
            "updates",
            "closing",
            "time"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-09-TOMORROW",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-08-TOMORROW",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-01-TODAY"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT"
        ],
        "direction_counts": {
          "UP": 4,
          "DOWN": 0,
          "MIXED": 0,
          "UNSTATED": 1
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 268.2282,
            "why": [
              "shared terms: check, next, and, whether, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "The next check must test the pause, oil's two drivers, yen follow-through and Asia's post-cut response.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 249.1522,
            "why": [
              "shared terms: check, next, asia, the, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-04-BIG-3",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "A Singapore consequence, a world-risk report and a market observation are today's editorial Big Three.",
            "engine": null,
            "tab": "Big 3",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 219.8396,
            "why": [
              "shared terms: three, edition, today, changed, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-08-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
            "date": "2026-08-01",
            "title": "Check official action, physical flow and completed prices before interpretation.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 178.0207,
            "why": [
              "shared terms: check, then, and, should, next"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-01-TODAY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "World risk, operating cost and delivery proof set the new daily picture.",
            "engine": null,
            "tab": "Today",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 176.8276,
            "why": [
              "shared terms: changed, today, the, and, inside"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "4f3df1c369e8c44ca6c445d8ba1391ee689fad7216a9fc9bd27227c7663bb55d"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TOMORROW",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-TOMORROW",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Tomorrow",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Tomorrow",
          "source_headline": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
          "source_question": "What should we check next to support or change today's story?",
          "source_market_connection": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "4db9c2d50cb8c432255c2677cb1b2d4c25e1f489b3482be765be1a1945719bec",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Tomorrow",
          "current_headline": "Check the lead reports, their warnings, and any stronger new event.",
          "current_question": "What should the next edition check first?",
          "current_market_connection": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "ec7cc86c0dbfae0d68989398d20b9e3aa546d74c85d6c38bb8e217a80c11d845",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What should we check next to support or change today's story?",
              "current": "What should the next edition check first?"
            },
            "headline": {
              "changed": true,
              "prior": "Next, check the strike pause, oil's two causes, the yen and the later response across Asia.",
              "current": "Check the lead reports, their warnings, and any stronger new event."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Check whether its publisher adds, corrects, or withdraws anything. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Check whether a second independent report supports the same event.",
                "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Check what happened after the headline without placing later facts inside today’s record. Then compare any new event with all three using the same selection rule."
              ],
              "removed": [
                "First, check whether planned strikes stay paused and whether talks lead to an official next step. Second, compare oil with both conflict news and actual OPEC+ supply, so a price reversal is not given the wrong cause.",
                "Third, check whether the yen keeps its move and whether the US or Japan plans more action. Wider Asian share-market swings were not proven before this edition closed, so later market data belongs in a clearly dated update or a new edition."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Check changes to the first report",
                "Look for independent support",
                "Keep later facts on their own date"
              ],
              "removed_titles": [
                "Does the Iran pause hold?",
                "Which cause still moves oil?",
                "Did action on the yen change wider market choices?"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.",
              "current": "The next edition should test what lasted, what changed, and what new report deserves to replace a lead item."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Publisher updates",
                "Independent reports on the same event",
                "A stronger event after today’s closing time"
              ],
              "removed": [
                "Official action on Iran",
                "Oil and actual OPEC+ supply",
                "The yen and wider Asian markets"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.",
              "current": "Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked."
            }
          },
          "similarities": [
            "Both records belong to the Tomorrow canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
            "Headline changed from \"Next, check the strike pause, oil's two causes, the yen and the later response across Asia.\" to \"Check the lead reports, their warnings, and any stronger new event.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Check changes to the first report, Look for independent support, Keep later facts on their own date; removed Does the Iran pause hold?, Which cause still moves oil?, Did action on the yen change wider market choices?.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.\" to \"The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.\" to \"Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.\"."
          ],
          "comparison": "The Tomorrow tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\".",
          "difference": "Question changed from \"What should we check next to support or change today's story?\" to \"What should the next edition check first?\". Headline changed from \"Next, check the strike pause, oil's two causes, the yen and the later response across Asia.\" to \"Check the lead reports, their warnings, and any stronger new event.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Check changes to the first report, Look for independent support, Keep later facts on their own date; removed Does the Iran pause hold?, Which cause still moves oil?, Did action on the yen change wider market choices?. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"Tomorrow's job is not to repeat today's headlines. It is to see what lasts, what turns back and what wider results follow, using a fresh time and date.\" to \"The next edition should test what lasted, what changed, and what new report deserves to replace a lead item.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not publish a follow-up when its time, source, market or link to the first event cannot be proved.\" to \"Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Tomorrow",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "12bc14f444b40801924e338e77e03d817ff9a975b41c1a89851eb8a5e8a176d8",
          "comparison_receipt_sha256": "d3012ee31026c912f75bdf12a6b41dec11257a7193aba094a10c10f4d9aa256e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Publisher updates",
        "Independent reports on the same event",
        "A stronger event after today’s closing time"
      ],
      "invalidation": "Do not publish a follow-up when its date, named report, or link to the earlier event cannot be checked.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Learning": {
      "eyebrow": "LEARNING · 4 AUGUST 2026",
      "question": "What should OTR learn from today’s issue?",
      "headline": "A wide search still needs a clear and repeatable lead order.",
      "narrative": [
        "687 reports passed across 73 search areas. The lead order then used the same rule for every event: current proof, support across areas, publisher groups, impact words, and report time.",
        "WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. These reports remain visible even though they did not lead. Future reviews should test whether the rule brings useful events forward without hiding doubt, corrections, or less dramatic facts."
      ],
      "beats": [
        {
          "label": "SAME RULE",
          "title": "Use one rule for every event",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Both reports faced the same checks even though they finished in different places.",
          "source_ids": [
            "LEAD-01",
            "LEAD-10"
          ]
        },
        {
          "label": "KEEP ALL",
          "title": "Lower-ranked reports stay visible",
          "body": "WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. Separately, See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. A lower place does not mean a report is false or unimportant to every reader.",
          "source_ids": [
            "LEAD-11",
            "LEAD-12"
          ]
        },
        {
          "label": "REVIEW",
          "title": "Test the order after outcomes arrive",
          "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Later usefulness can guide a review without rewriting today’s facts.",
          "source_ids": [
            "LEAD-02",
            "LEAD-09"
          ]
        }
      ],
      "market_connection": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.",
      "history_echo": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\". This is background only. It compares the nearest earlier saved Learning section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Learning",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Learning",
          "question": "What should OTR learn from today’s issue?",
          "headline": "A wide search still needs a clear and repeatable lead order.",
          "narrative": [
            "687 reports passed across 73 search areas. The lead order then used the same rule for every event: current proof, support across areas, publisher groups, impact words, and report time.",
            "WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. These reports remain visible even though they did not lead. Future reviews should test whether the rule brings useful events forward without hiding doubt, corrections, or less dramatic facts."
          ],
          "beats": [
            {
              "label": "SAME RULE",
              "title": "Use one rule for every event",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. Both reports faced the same checks even though they finished in different places.",
              "source_ids": [
                "LEAD-01",
                "LEAD-10"
              ]
            },
            {
              "label": "KEEP ALL",
              "title": "Lower-ranked reports stay visible",
              "body": "WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. Separately, See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. A lower place does not mean a report is false or unimportant to every reader.",
              "source_ids": [
                "LEAD-11",
                "LEAD-12"
              ]
            },
            {
              "label": "REVIEW",
              "title": "Test the order after outcomes arrive",
              "body": "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Separately, news.sbs.co.kr reported: “Shutdown Crisis Due to European Drought... Hungary's Paks Nuclear Power Plant Completely Halts Operations”. Later usefulness can guide a review without rewriting today’s facts.",
              "source_ids": [
                "LEAD-02",
                "LEAD-09"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-09",
            "LEAD-10",
            "LEAD-11",
            "LEAD-12"
          ],
          "market_connection": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.",
          "watch_conditions": [
            "Important reports placed too low",
            "Weak reports placed too high",
            "Repeated corrections after selection"
          ],
          "invalidation": "Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.",
          "content_sha256": "a7c7963d236757f23dfd6123fe0f287dd3debe196170831658cd57122ccbd849",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Learning",
          "question": "What should OTR learn from the corrected story order?",
          "headline": "Collecting an important signal is not enough; the main story must promote it.",
          "narrative": [
            "All 73/73 search areas completed their work, finding 584 current signals from 566 direct links and 384 websites. The weakness was the order: the first valid report in a search list is not always the news that matters most.",
            "The corrected method puts current reports first when they have greater impact, urgency, reach across markets and a clear result to watch. It keeps the original daily records, prediction rules and results unchanged, so a better story order does not rewrite history."
          ],
          "beats": [
            {
              "label": "PUT FIRST",
              "title": "Important events must reach the main story",
              "body": "The Iran pause, oil move and yen action mattered more to current choices than the first valid items in the earlier search order.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "EXPLAIN",
              "title": "The order needs a clear reason",
              "body": "Each Big Three item now says why it matters, what other cause may exist and what stronger news could replace it.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "KEEP HISTORY",
              "title": "A story repair must not change the facts",
              "body": "The new story replaces the old front page, while the daily records, prediction rules and source times stay fixed.",
              "source_ids": [
                "LOCAL-CURRENT",
                "TECH-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "LOCAL-CURRENT",
            "MARKET-CURRENT",
            "TECH-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
          "watch_conditions": [
            "Whether the lead picks match the most important news",
            "Whether other possible views remain visible",
            "Whether later editions still need a person to change the order"
          ],
          "invalidation": "Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.",
          "content_sha256": "532c9f9350e1369e7e0d580a521ff9bbe6ced7fa50f60e997aa37b1896b8942b",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What should OTR learn from the corrected story order?",
            "current": "What should OTR learn from today’s issue?"
          },
          "headline": {
            "changed": true,
            "prior": "Collecting an important signal is not enough; the main story must promote it.",
            "current": "A wide search still needs a clear and repeatable lead order."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "687 reports passed across 73 search areas. The lead order then used the same rule for every event: current proof, support across areas, publisher groups, impact words, and report time.",
              "WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. These reports remain visible even though they did not lead. Future reviews should test whether the rule brings useful events forward without hiding doubt, corrections, or less dramatic facts."
            ],
            "removed": [
              "All 73/73 search areas completed their work, finding 584 current signals from 566 direct links and 384 websites. The weakness was the order: the first valid report in a search list is not always the news that matters most.",
              "The corrected method puts current reports first when they have greater impact, urgency, reach across markets and a clear result to watch. It keeps the original daily records, prediction rules and results unchanged, so a better story order does not rewrite history."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "Use one rule for every event",
              "Lower-ranked reports stay visible",
              "Test the order after outcomes arrive"
            ],
            "removed_titles": [
              "Important events must reach the main story",
              "The order needs a clear reason",
              "A story repair must not change the facts"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 6,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-09",
              "LEAD-10",
              "LEAD-11",
              "LEAD-12"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "LOCAL-CURRENT",
              "MARKET-CURRENT",
              "TECH-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
            "current": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Important reports placed too low",
              "Weak reports placed too high",
              "Repeated corrections after selection"
            ],
            "removed": [
              "Whether the lead picks match the most important news",
              "Whether other possible views remain visible",
              "Whether later editions still need a person to change the order"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.",
            "current": "Change the selection method if repeated reviews show that stronger current reports are regularly pushed down."
          }
        },
        "similarities": [
          "Both records belong to the Learning canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
          "Headline changed from \"Collecting an important signal is not enough; the main story must promote it.\" to \"A wide search still needs a clear and repeatable lead order.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added Use one rule for every event, Lower-ranked reports stay visible, Test the order after outcomes arrive; removed Important events must reach the main story, The order needs a clear reason, A story repair must not change the facts.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-09 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, LOCAL-CURRENT and 3 more.",
          "Market connection changed from \"The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.\" to \"The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.\" to \"Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Learning",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "10eea87aa60ad5bbe1f71e11206a1fb3a68fd83b45a6424778577bf9ae80f0d9",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "e20fc864298105f9340134bd2634344243d61b776b8632bac0cbddd06c492f4e"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LEARNING",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LEARNING",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Learning",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Learning",
          "source_headline": "Collecting an important signal is not enough; the main story must promote it.",
          "source_question": "What should OTR learn from the corrected story order?",
          "source_market_connection": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "532c9f9350e1369e7e0d580a521ff9bbe6ced7fa50f60e997aa37b1896b8942b",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Learning",
          "current_headline": "A wide search still needs a clear and repeatable lead order.",
          "current_question": "What should OTR learn from today’s issue?",
          "current_market_connection": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "a7c7963d236757f23dfd6123fe0f287dd3debe196170831658cd57122ccbd849",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What should OTR learn from the corrected story order?",
              "current": "What should OTR learn from today’s issue?"
            },
            "headline": {
              "changed": true,
              "prior": "Collecting an important signal is not enough; the main story must promote it.",
              "current": "A wide search still needs a clear and repeatable lead order."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "687 reports passed across 73 search areas. The lead order then used the same rule for every event: current proof, support across areas, publisher groups, impact words, and report time.",
                "WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. These reports remain visible even though they did not lead. Future reviews should test whether the rule brings useful events forward without hiding doubt, corrections, or less dramatic facts."
              ],
              "removed": [
                "All 73/73 search areas completed their work, finding 584 current signals from 566 direct links and 384 websites. The weakness was the order: the first valid report in a search list is not always the news that matters most.",
                "The corrected method puts current reports first when they have greater impact, urgency, reach across markets and a clear result to watch. It keeps the original daily records, prediction rules and results unchanged, so a better story order does not rewrite history."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Use one rule for every event",
                "Lower-ranked reports stay visible",
                "Test the order after outcomes arrive"
              ],
              "removed_titles": [
                "Important events must reach the main story",
                "The order needs a clear reason",
                "A story repair must not change the facts"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-09",
                "LEAD-10",
                "LEAD-11",
                "LEAD-12"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
              "current": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Important reports placed too low",
                "Weak reports placed too high",
                "Repeated corrections after selection"
              ],
              "removed": [
                "Whether the lead picks match the most important news",
                "Whether other possible views remain visible",
                "Whether later editions still need a person to change the order"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.",
              "current": "Change the selection method if repeated reviews show that stronger current reports are regularly pushed down."
            }
          },
          "similarities": [
            "Both records belong to the Learning canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
            "Headline changed from \"Collecting an important signal is not enough; the main story must promote it.\" to \"A wide search still needs a clear and repeatable lead order.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Use one rule for every event, Lower-ranked reports stay visible, Test the order after outcomes arrive; removed Important events must reach the main story, The order needs a clear reason, A story repair must not change the facts.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-09 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, LOCAL-CURRENT and 3 more.",
            "Market connection changed from \"The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.\" to \"The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.\" to \"Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.\"."
          ],
          "comparison": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
          "difference": "Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\". Headline changed from \"Collecting an important signal is not enough; the main story must promote it.\" to \"A wide search still needs a clear and repeatable lead order.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Use one rule for every event, Lower-ranked reports stay visible, Test the order after outcomes arrive; removed Important events must reach the main story, The order needs a clear reason, A story repair must not change the facts. Source set changed: added LEAD-01, LEAD-02, LEAD-09 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, LOCAL-CURRENT and 3 more. Market connection changed from \"The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.\" to \"The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.\" to \"Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Learning",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "10eea87aa60ad5bbe1f71e11206a1fb3a68fd83b45a6424778577bf9ae80f0d9",
          "comparison_receipt_sha256": "e20fc864298105f9340134bd2634344243d61b776b8632bac0cbddd06c492f4e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "8505ed7406cf64b20df7f6e2d5cd5ef13960a6376eb040f47ac903a1a8b81935",
        "query_concepts": {
          "entities": [],
          "events": [],
          "terms": [
            "wide",
            "search",
            "still",
            "needs",
            "clear",
            "and",
            "repeatable",
            "lead",
            "order",
            "the",
            "system",
            "should",
            "learn",
            "useful",
            "ordering",
            "not",
            "change",
            "public",
            "facts",
            "reader",
            "clicked",
            "saved",
            "ignored",
            "passed",
            "across",
            "areas",
            "then",
            "used",
            "same",
            "rule",
            "for",
            "every",
            "event",
            "proof",
            "support",
            "groups",
            "impact",
            "words",
            "time",
            "wsmv",
            "fresh",
            "food",
            "company",
            "sues",
            "former",
            "tennessee",
            "subsidiary",
            "president",
            "alleging",
            "32m",
            "scheme",
            "wjla",
            "copper",
            "wire",
            "stolen",
            "construction",
            "site",
            "loudoun",
            "county",
            "data",
            "center",
            "arrested",
            "see",
            "great",
            "art",
            "wisconsin",
            "artist",
            "michelle",
            "grabner",
            "gifting",
            "years",
            "artworks",
            "john",
            "michael",
            "kohler",
            "arts",
            "remain",
            "visible",
            "even",
            "though",
            "did",
            "future",
            "reviews",
            "test",
            "whether",
            "brings",
            "events",
            "forward",
            "without",
            "hiding",
            "doubt",
            "corrections",
            "less",
            "dramatic",
            "important",
            "placed",
            "too",
            "low",
            "weak",
            "high",
            "repeated",
            "selection"
          ],
          "direction": "UNSTATED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01"
        ],
        "direction_counts": {
          "UP": 1,
          "DOWN": 0,
          "MIXED": 1,
          "UNSTATED": 3
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 284.8827,
            "why": [
              "shared terms: order, the, important, whether, not"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "Semantic ownership, direct evidence and preserved retries remain the learning test.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 236.8362,
            "why": [
              "shared terms: remain, learn, saved, and, the"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 233.1747,
            "why": [
              "shared terms: the, saved, and, remain, proof"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 222.5865,
            "why": [
              "shared terms: the, learn, saved, order, important"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Every lead claim points to current rows inside OTR-DAILY-73-2026-08-03-0954-SGT.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 204.6314,
            "why": [
              "shared terms: the, saved, proof, lead, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "e730dd3b59214574e93b8cd98e3722ff097d40fb0c98b1985324eb2636c9f68f"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LEARNING",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-LEARNING",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Learning",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Learning",
          "source_headline": "Collecting an important signal is not enough; the main story must promote it.",
          "source_question": "What should OTR learn from the corrected story order?",
          "source_market_connection": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "532c9f9350e1369e7e0d580a521ff9bbe6ced7fa50f60e997aa37b1896b8942b",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Learning",
          "current_headline": "A wide search still needs a clear and repeatable lead order.",
          "current_question": "What should OTR learn from today’s issue?",
          "current_market_connection": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "a7c7963d236757f23dfd6123fe0f287dd3debe196170831658cd57122ccbd849",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What should OTR learn from the corrected story order?",
              "current": "What should OTR learn from today’s issue?"
            },
            "headline": {
              "changed": true,
              "prior": "Collecting an important signal is not enough; the main story must promote it.",
              "current": "A wide search still needs a clear and repeatable lead order."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "687 reports passed across 73 search areas. The lead order then used the same rule for every event: current proof, support across areas, publisher groups, impact words, and report time.",
                "WSMV reported: “Fresh-food company sues former Tennessee subsidiary president, alleging more than $32M scheme”. WJLA reported: “Copper wire stolen from construction site of Loudoun County data center; 3 arrested”. See Great Art reported: “Wisconsin artist Michelle Grabner gifting 30 years of artworks to John Michael Kohler Arts Center”. These reports remain visible even though they did not lead. Future reviews should test whether the rule brings useful events forward without hiding doubt, corrections, or less dramatic facts."
              ],
              "removed": [
                "All 73/73 search areas completed their work, finding 584 current signals from 566 direct links and 384 websites. The weakness was the order: the first valid report in a search list is not always the news that matters most.",
                "The corrected method puts current reports first when they have greater impact, urgency, reach across markets and a clear result to watch. It keeps the original daily records, prediction rules and results unchanged, so a better story order does not rewrite history."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "Use one rule for every event",
                "Lower-ranked reports stay visible",
                "Test the order after outcomes arrive"
              ],
              "removed_titles": [
                "Important events must reach the main story",
                "The order needs a clear reason",
                "A story repair must not change the facts"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-09",
                "LEAD-10",
                "LEAD-11",
                "LEAD-12"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "TECH-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.",
              "current": "The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Important reports placed too low",
                "Weak reports placed too high",
                "Repeated corrections after selection"
              ],
              "removed": [
                "Whether the lead picks match the most important news",
                "Whether other possible views remain visible",
                "Whether later editions still need a person to change the order"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.",
              "current": "Change the selection method if repeated reviews show that stronger current reports are regularly pushed down."
            }
          },
          "similarities": [
            "Both records belong to the Learning canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
            "Headline changed from \"Collecting an important signal is not enough; the main story must promote it.\" to \"A wide search still needs a clear and repeatable lead order.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added Use one rule for every event, Lower-ranked reports stay visible, Test the order after outcomes arrive; removed Important events must reach the main story, The order needs a clear reason, A story repair must not change the facts.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-09 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, LOCAL-CURRENT and 3 more.",
            "Market connection changed from \"The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.\" to \"The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.\" to \"Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.\"."
          ],
          "comparison": "The Learning tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\".",
          "difference": "Question changed from \"What should OTR learn from the corrected story order?\" to \"What should OTR learn from today’s issue?\". Headline changed from \"Collecting an important signal is not enough; the main story must promote it.\" to \"A wide search still needs a clear and repeatable lead order.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added Use one rule for every event, Lower-ranked reports stay visible, Test the order after outcomes arrive; removed Important events must reach the main story, The order needs a clear reason, A story repair must not change the facts. Source set changed: added LEAD-01, LEAD-02, LEAD-09 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, LOCAL-CURRENT and 3 more. Market connection changed from \"The story order changed, but the saved facts did not. Future editions must show that the new rule brings more useful news forward without hiding doubt.\" to \"The system should learn about useful ordering, not change public facts because a reader clicked, saved, or ignored a report.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Remove the new ranking rule if later editions keep pushing more important proven news down or use too few different sources.\" to \"Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Learning",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "10eea87aa60ad5bbe1f71e11206a1fb3a68fd83b45a6424778577bf9ae80f0d9",
          "comparison_receipt_sha256": "e20fc864298105f9340134bd2634344243d61b776b8632bac0cbddd06c492f4e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Important reports placed too low",
        "Weak reports placed too high",
        "Repeated corrections after selection"
      ],
      "invalidation": "Change the selection method if repeated reviews show that stronger current reports are regularly pushed down.",
      "learning_status": "EVIDENCE_GATE_PASSED - PREDICTION_STATES_UNCHANGED - ENGINE_WEIGHTS_UNCHANGED",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Glossary": {
      "eyebrow": "GLOSSARY · 4 AUGUST 2026",
      "question": "What do today’s main labels mean?",
      "headline": "Reported, inferred, ranked, and corrected are different states.",
      "narrative": [
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. “Reported” means the named publisher made the stated claim. “Inferred” means OTR or a reader is explaining what it may mean; that explanation is not the publisher’s fact.",
        "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. “Ranked” means one stated rule placed the report in an order. “Corrected” means a later dated record changes or removes a claim while the earlier saved issue stays visible."
      ],
      "beats": [
        {
          "label": "REPORTED",
          "title": "A named publisher made the claim",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Each report supports its own words and event.",
          "source_ids": [
            "LEAD-01",
            "LEAD-02"
          ]
        },
        {
          "label": "INFERRED",
          "title": "An explanation needs its own support",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A possible meaning must not be presented as the publisher’s fact.",
          "source_ids": [
            "LEAD-03",
            "LEAD-04"
          ]
        },
        {
          "label": "RANKED",
          "title": "An order is an editorial choice",
          "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The order can change without changing the saved facts.",
          "source_ids": [
            "LEAD-05",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.",
      "history_echo": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\". This is background only. It compares the nearest earlier saved Glossary section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Glossary",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Glossary",
          "question": "What do today’s main labels mean?",
          "headline": "Reported, inferred, ranked, and corrected are different states.",
          "narrative": [
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. “Reported” means the named publisher made the stated claim. “Inferred” means OTR or a reader is explaining what it may mean; that explanation is not the publisher’s fact.",
            "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. “Ranked” means one stated rule placed the report in an order. “Corrected” means a later dated record changes or removes a claim while the earlier saved issue stays visible."
          ],
          "beats": [
            {
              "label": "REPORTED",
              "title": "A named publisher made the claim",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Each report supports its own words and event.",
              "source_ids": [
                "LEAD-01",
                "LEAD-02"
              ]
            },
            {
              "label": "INFERRED",
              "title": "An explanation needs its own support",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A possible meaning must not be presented as the publisher’s fact.",
              "source_ids": [
                "LEAD-03",
                "LEAD-04"
              ]
            },
            {
              "label": "RANKED",
              "title": "An order is an editorial choice",
              "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The order can change without changing the saved facts.",
              "source_ids": [
                "LEAD-05",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.",
          "watch_conditions": [
            "An explanation shown as a fact",
            "A ranking shown as certainty",
            "A correction hidden from the saved issue"
          ],
          "invalidation": "Correct any label that says more than the named report, stated time, or later result allows.",
          "content_sha256": "7b3cd9d97f31023b9bcd2ce2e6df35d01b019e3728a085c7ae5db939db87faf1",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Glossary",
          "question": "What do the key words in today's main story mean?",
          "headline": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
          "narrative": [
            "A pause means a reported stop for now, not a permanent end to conflict. Hope for talks describes the mood in the named market report, not a final deal. Action on the yen means governments bought or sold in the currency market; it does not promise a lasting exchange-rate move.",
            "More oil supply can push prices down even without progress in talks. Later proof means a report that appeared after this edition closed. It may support a clearly dated update or a new edition, but it cannot be quietly placed inside the earlier record."
          ],
          "beats": [
            {
              "label": "PAUSE",
              "title": "A stop for now that can end",
              "body": "New military action would end the pause even if talks continue.",
              "source_ids": [
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "TWO CAUSES",
              "title": "Talks and supply can both affect oil",
              "body": "The market report and the OPEC+ report support different parts of the explanation.",
              "source_ids": [
                "ENERGY-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "ACTION ON THE YEN",
              "title": "Government action changes the risk of one-sided bets",
              "body": "We must check what happens after the first response. The headline alone cannot prove success.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
          "watch_conditions": [
            "A temporary change described as permanent",
            "One cause used for a move with several causes",
            "Later facts placed inside an earlier edition"
          ],
          "invalidation": "Correct any word when later proof shows that it says more than the source, time period or result allows.",
          "content_sha256": "8daa561467e970972462d7d8adc6078d233a97000b323d006adfd27c65e1fd41",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "What do the key words in today's main story mean?",
            "current": "What do today’s main labels mean?"
          },
          "headline": {
            "changed": true,
            "prior": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
            "current": "Reported, inferred, ranked, and corrected are different states."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. “Reported” means the named publisher made the stated claim. “Inferred” means OTR or a reader is explaining what it may mean; that explanation is not the publisher’s fact.",
              "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. “Ranked” means one stated rule placed the report in an order. “Corrected” means a later dated record changes or removes a claim while the earlier saved issue stays visible."
            ],
            "removed": [
              "A pause means a reported stop for now, not a permanent end to conflict. Hope for talks describes the mood in the named market report, not a final deal. Action on the yen means governments bought or sold in the currency market; it does not promise a lasting exchange-rate move.",
              "More oil supply can push prices down even without progress in talks. Later proof means a report that appeared after this edition closed. It may support a clearly dated update or a new edition, but it cannot be quietly placed inside the earlier record."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "A named publisher made the claim",
              "An explanation needs its own support",
              "An order is an editorial choice"
            ],
            "removed_titles": [
              "A stop for now that can end",
              "Talks and supply can both affect oil",
              "Government action changes the risk of one-sided bets"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 4,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
            "current": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "An explanation shown as a fact",
              "A ranking shown as certainty",
              "A correction hidden from the saved issue"
            ],
            "removed": [
              "A temporary change described as permanent",
              "One cause used for a move with several causes",
              "Later facts placed inside an earlier edition"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Correct any word when later proof shows that it says more than the source, time period or result allows.",
            "current": "Correct any label that says more than the named report, stated time, or later result allows."
          }
        },
        "similarities": [
          "Both records belong to the Glossary canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
          "Headline changed from \"A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.\" to \"Reported, inferred, ranked, and corrected are different states.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added A named publisher made the claim, An explanation needs its own support, An order is an editorial choice; removed A stop for now that can end, Talks and supply can both affect oil, Government action changes the risk of one-sided bets.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
          "Market connection changed from \"Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.\" to \"Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Correct any word when later proof shows that it says more than the source, time period or result allows.\" to \"Correct any label that says more than the named report, stated time, or later result allows.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Glossary",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "daefb5d8e5987a24b92e10c31341491d9d5f2d0ceda97bd15825f7e1b0120683",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "bcdf22518f6e22207f839cd59f150a39c247f20cf16ee8af0e3b9fa4bbad7fd4"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-GLOSSARY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-GLOSSARY",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Glossary",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Glossary",
          "source_headline": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
          "source_question": "What do the key words in today's main story mean?",
          "source_market_connection": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "8daa561467e970972462d7d8adc6078d233a97000b323d006adfd27c65e1fd41",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Glossary",
          "current_headline": "Reported, inferred, ranked, and corrected are different states.",
          "current_question": "What do today’s main labels mean?",
          "current_market_connection": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "7b3cd9d97f31023b9bcd2ce2e6df35d01b019e3728a085c7ae5db939db87faf1",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What do the key words in today's main story mean?",
              "current": "What do today’s main labels mean?"
            },
            "headline": {
              "changed": true,
              "prior": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
              "current": "Reported, inferred, ranked, and corrected are different states."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. “Reported” means the named publisher made the stated claim. “Inferred” means OTR or a reader is explaining what it may mean; that explanation is not the publisher’s fact.",
                "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. “Ranked” means one stated rule placed the report in an order. “Corrected” means a later dated record changes or removes a claim while the earlier saved issue stays visible."
              ],
              "removed": [
                "A pause means a reported stop for now, not a permanent end to conflict. Hope for talks describes the mood in the named market report, not a final deal. Action on the yen means governments bought or sold in the currency market; it does not promise a lasting exchange-rate move.",
                "More oil supply can push prices down even without progress in talks. Later proof means a report that appeared after this edition closed. It may support a clearly dated update or a new edition, but it cannot be quietly placed inside the earlier record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A named publisher made the claim",
                "An explanation needs its own support",
                "An order is an editorial choice"
              ],
              "removed_titles": [
                "A stop for now that can end",
                "Talks and supply can both affect oil",
                "Government action changes the risk of one-sided bets"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
              "current": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "An explanation shown as a fact",
                "A ranking shown as certainty",
                "A correction hidden from the saved issue"
              ],
              "removed": [
                "A temporary change described as permanent",
                "One cause used for a move with several causes",
                "Later facts placed inside an earlier edition"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Correct any word when later proof shows that it says more than the source, time period or result allows.",
              "current": "Correct any label that says more than the named report, stated time, or later result allows."
            }
          },
          "similarities": [
            "Both records belong to the Glossary canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
            "Headline changed from \"A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.\" to \"Reported, inferred, ranked, and corrected are different states.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A named publisher made the claim, An explanation needs its own support, An order is an editorial choice; removed A stop for now that can end, Talks and supply can both affect oil, Government action changes the risk of one-sided bets.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.\" to \"Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Correct any word when later proof shows that it says more than the source, time period or result allows.\" to \"Correct any label that says more than the named report, stated time, or later result allows.\"."
          ],
          "comparison": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
          "difference": "Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\". Headline changed from \"A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.\" to \"Reported, inferred, ranked, and corrected are different states.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A named publisher made the claim, An explanation needs its own support, An order is an editorial choice; removed A stop for now that can end, Talks and supply can both affect oil, Government action changes the risk of one-sided bets. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.\" to \"Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Correct any word when later proof shows that it says more than the source, time period or result allows.\" to \"Correct any label that says more than the named report, stated time, or later result allows.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Glossary",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "daefb5d8e5987a24b92e10c31341491d9d5f2d0ceda97bd15825f7e1b0120683",
          "comparison_receipt_sha256": "bcdf22518f6e22207f839cd59f150a39c247f20cf16ee8af0e3b9fa4bbad7fd4",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "7ca70e14230109618fc2089ab70321814bf52fdcffaa072b72d6daf4a1b5dee8",
        "query_concepts": {
          "entities": [],
          "events": [],
          "terms": [
            "inferred",
            "ranked",
            "and",
            "corrected",
            "are",
            "different",
            "states",
            "clear",
            "labels",
            "show",
            "happened",
            "someone",
            "thinks",
            "may",
            "mean",
            "still",
            "needs",
            "checked",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "means",
            "the",
            "named",
            "made",
            "stated",
            "claim",
            "reader",
            "explaining",
            "explanation",
            "not",
            "fact",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "one",
            "rule",
            "placed",
            "order",
            "later",
            "dated",
            "record",
            "changes",
            "removes",
            "earlier",
            "saved",
            "issue",
            "stays",
            "visible",
            "shown",
            "ranking",
            "certainty",
            "correction",
            "hidden"
          ],
          "direction": "UNSTATED"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-10-GLOSSARY",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-11-GLOSSARY",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-11-GLOSSARY"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT"
        ],
        "direction_counts": {
          "UP": 1,
          "DOWN": 1,
          "MIXED": 1,
          "UNSTATED": 2
        },
        "contradictory_direction_history": true,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 249.2262,
            "why": [
              "shared terms: corrected, the, saved, and, earlier"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT::TAB-10-GLOSSARY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
            "date": "2026-08-01",
            "title": "Reported, source-linked, inferred, locked and resolved are different states.",
            "engine": null,
            "tab": "Glossary",
            "evidence_state": null,
            "direction": "UP",
            "matched_entities": [],
            "matched_events": [],
            "score": 246.9966,
            "why": [
              "shared terms: means, inferred, different, states, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-10-LEARNING",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Collecting an important signal is not enough; the main story must promote it.",
            "engine": null,
            "tab": "Learning",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [],
            "score": 230.4979,
            "why": [
              "shared terms: order, the, corrected, not, ranking"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-11-GLOSSARY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
            "engine": null,
            "tab": "Glossary",
            "evidence_state": null,
            "direction": "DOWN",
            "matched_entities": [],
            "matched_events": [],
            "score": 216.9494,
            "why": [
              "shared terms: means, the, not, placed, mean"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-11-GLOSSARY",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "Reported fact, OTR inference, scenario, locked term and resolved result are different states.",
            "engine": null,
            "tab": "Glossary",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 187.6109,
            "why": [
              "shared terms: saved, and, are, states, different"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "20c36dc27486835818aa0c438fcc8ca2184fe3dd1943f924cc8b789666b546ad"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-GLOSSARY",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-GLOSSARY",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Glossary",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Glossary",
          "source_headline": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
          "source_question": "What do the key words in today's main story mean?",
          "source_market_connection": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "8daa561467e970972462d7d8adc6078d233a97000b323d006adfd27c65e1fd41",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Glossary",
          "current_headline": "Reported, inferred, ranked, and corrected are different states.",
          "current_question": "What do today’s main labels mean?",
          "current_market_connection": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "7b3cd9d97f31023b9bcd2ce2e6df35d01b019e3728a085c7ae5db939db87faf1",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "What do the key words in today's main story mean?",
              "current": "What do today’s main labels mean?"
            },
            "headline": {
              "changed": true,
              "prior": "A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.",
              "current": "Reported, inferred, ranked, and corrected are different states."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. “Reported” means the named publisher made the stated claim. “Inferred” means OTR or a reader is explaining what it may mean; that explanation is not the publisher’s fact.",
                "nny360.com reported: “State awards thousands to north country for water system cybersecurity”. “Ranked” means one stated rule placed the report in an order. “Corrected” means a later dated record changes or removes a claim while the earlier saved issue stays visible."
              ],
              "removed": [
                "A pause means a reported stop for now, not a permanent end to conflict. Hope for talks describes the mood in the named market report, not a final deal. Action on the yen means governments bought or sold in the currency market; it does not promise a lasting exchange-rate move.",
                "More oil supply can push prices down even without progress in talks. Later proof means a report that appeared after this edition closed. It may support a clearly dated update or a new edition, but it cannot be quietly placed inside the earlier record."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "A named publisher made the claim",
                "An explanation needs its own support",
                "An order is an editorial choice"
              ],
              "removed_titles": [
                "A stop for now that can end",
                "Talks and supply can both affect oil",
                "Government action changes the risk of one-sided bets"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 4,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.",
              "current": "Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "An explanation shown as a fact",
                "A ranking shown as certainty",
                "A correction hidden from the saved issue"
              ],
              "removed": [
                "A temporary change described as permanent",
                "One cause used for a move with several causes",
                "Later facts placed inside an earlier edition"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Correct any word when later proof shows that it says more than the source, time period or result allows.",
              "current": "Correct any label that says more than the named report, stated time, or later result allows."
            }
          },
          "similarities": [
            "Both records belong to the Glossary canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
            "Headline changed from \"A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.\" to \"Reported, inferred, ranked, and corrected are different states.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added A named publisher made the claim, An explanation needs its own support, An order is an editorial choice; removed A stop for now that can end, Talks and supply can both affect oil, Government action changes the risk of one-sided bets.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more.",
            "Market connection changed from \"Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.\" to \"Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Correct any word when later proof shows that it says more than the source, time period or result allows.\" to \"Correct any label that says more than the named report, stated time, or later result allows.\"."
          ],
          "comparison": "The Glossary tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\".",
          "difference": "Question changed from \"What do the key words in today's main story mean?\" to \"What do today’s main labels mean?\". Headline changed from \"A pause, hope for talks, action on a currency, more supply and later proof do not mean the same thing.\" to \"Reported, inferred, ranked, and corrected are different states.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added A named publisher made the claim, An explanation needs its own support, An order is an editorial choice; removed A stop for now that can end, Talks and supply can both affect oil, Government action changes the risk of one-sided bets. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed ENERGY-CURRENT, FINANCE-CURRENT, MARKET-CURRENT and 1 more. Market connection changed from \"Clear words protect the story. They show what changed, what may have caused it and what has not yet been proved.\" to \"Clear labels show what happened, what someone thinks it may mean, and what still needs to be checked.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Correct any word when later proof shows that it says more than the source, time period or result allows.\" to \"Correct any label that says more than the named report, stated time, or later result allows.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Glossary",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "daefb5d8e5987a24b92e10c31341491d9d5f2d0ceda97bd15825f7e1b0120683",
          "comparison_receipt_sha256": "bcdf22518f6e22207f839cd59f150a39c247f20cf16ee8af0e3b9fa4bbad7fd4",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "An explanation shown as a fact",
        "A ranking shown as certainty",
        "A correction hidden from the saved issue"
      ],
      "invalidation": "Correct any label that says more than the named report, stated time, or later result allows.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    },
    "Proof": {
      "eyebrow": "PROOF · 4 AUGUST 2026",
      "question": "Can every main claim in the 4/8/26 story be checked?",
      "headline": "Every lead claim points to a current named report.",
      "narrative": [
        "This issue contains 687 current reports from 659 direct links across 471 websites. The closing time is 06:18 SGT, and every lead item belongs to the same dated release.",
        "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Readers can open each link and compare the headline, publisher time, and saved wording. A later correction must create a new dated record; it cannot quietly change this issue."
      ],
      "beats": [
        {
          "label": "LINKS",
          "title": "The lead reports can be opened",
          "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Both links belong to today’s stated evidence window.",
          "source_ids": [
            "LEAD-01",
            "LEAD-02"
          ]
        },
        {
          "label": "TIME",
          "title": "The report times stay visible",
          "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A later report must remain on its own date.",
          "source_ids": [
            "LEAD-03",
            "LEAD-04"
          ]
        },
        {
          "label": "CHANGE",
          "title": "Corrections create a new dated record",
          "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The old issue stays searchable so readers can see what changed.",
          "source_ids": [
            "LEAD-05",
            "LEAD-06"
          ]
        }
      ],
      "market_connection": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.",
      "history_echo": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\". This is background only. It compares the nearest earlier saved Proof section and does not prove today's facts.",
      "tab_history": {
        "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
        "scope": "SAME_CANONICAL_TAB_ONLY",
        "tab_name": "Proof",
        "status": "MATCHED_PRIOR_TAB",
        "current": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "tab_name": "Proof",
          "question": "Can every main claim in the 4/8/26 story be checked?",
          "headline": "Every lead claim points to a current named report.",
          "narrative": [
            "This issue contains 687 current reports from 659 direct links across 471 websites. The closing time is 06:18 SGT, and every lead item belongs to the same dated release.",
            "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Readers can open each link and compare the headline, publisher time, and saved wording. A later correction must create a new dated record; it cannot quietly change this issue."
          ],
          "beats": [
            {
              "label": "LINKS",
              "title": "The lead reports can be opened",
              "body": "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. Separately, nny360.com reported: “State awards thousands to north country for water system cybersecurity”. Both links belong to today’s stated evidence window.",
              "source_ids": [
                "LEAD-01",
                "LEAD-02"
              ]
            },
            {
              "label": "TIME",
              "title": "The report times stay visible",
              "body": "DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Separately, Mortgage News Daily reported: “Mortgage Rates Roughly Unchanged Despite Bond Market Improvement”. A later report must remain on its own date.",
              "source_ids": [
                "LEAD-03",
                "LEAD-04"
              ]
            },
            {
              "label": "CHANGE",
              "title": "Corrections create a new dated record",
              "body": "E&E News by POLITICO reported: “Texas governor puts data center grid approvals on hold”. Separately, Wowtale reported: “Mediqstar Closes Pre-Series B Round From Genaxis to Accelerate TB Diagnostic Platform Abroad”. The old issue stays searchable so readers can see what changed.",
              "source_ids": [
                "LEAD-05",
                "LEAD-06"
              ]
            }
          ],
          "source_ids": [
            "LEAD-01",
            "LEAD-02",
            "LEAD-03",
            "LEAD-04",
            "LEAD-05",
            "LEAD-06"
          ],
          "market_connection": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.",
          "watch_conditions": [
            "Broken links",
            "A headline that changed",
            "A public page showing a different issue date"
          ],
          "invalidation": "Do not publish if a main claim, report link, time, count, or saved issue does not match.",
          "content_sha256": "09f4abd6f7460bd65648d1c4ef16cca8f93762606f0d7e1823ddac57e3210770",
          "market_pulse": "REPORTS · QUESTIONS · NEXT CHECK"
        },
        "prior": {
          "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "publication_date": "2026-08-03",
          "publication_label": "03 August 2026 OTR publish",
          "path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "tab_name": "Proof",
          "question": "Can every main claim in the corrected 3/8/26 story be checked?",
          "headline": "Every main claim links to a current named report from today's saved edition.",
          "narrative": [
            "The corrected story uses the same 09:54 SGT closing time, 584 current reports, 566 direct links and 384 websites. The Iran, oil, OPEC+ and yen reports were all already inside today's saved edition.",
            "The correction changes only the order and explanation. The earlier story remains saved. The daily reports, prediction rules, later price checks and past results remain unchanged."
          ],
          "beats": [
            {
              "label": "MAIN FACTS",
              "title": "The four main reports can be opened",
              "body": "Readers can open the sources on the Iran pause, oil, OPEC+ and joint action on the yen.",
              "source_ids": [
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ]
            },
            {
              "label": "LIMIT",
              "title": "Weak claims stay outside this edition",
              "body": "The story does not invent an exact Brent oil percentage, call the pause a full cancellation or add later Asian share-market data.",
              "source_ids": [
                "FINANCE-CURRENT",
                "MARKET-CURRENT"
              ]
            },
            {
              "label": "OLD AND NEW",
              "title": "Both versions remain saved",
              "body": "The corrected story becomes current, while the earlier story stays searchable and unchanged.",
              "source_ids": [
                "CYBER-CURRENT",
                "LOCAL-CURRENT"
              ]
            }
          ],
          "source_ids": [
            "CYBER-CURRENT",
            "ENERGY-CURRENT",
            "FINANCE-CURRENT",
            "LOCAL-CURRENT",
            "MARKET-CURRENT",
            "WORLD-CURRENT"
          ],
          "market_connection": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
          "watch_conditions": [
            "The dated correction record",
            "Matching current and saved versions",
            "The version running on the public website"
          ],
          "invalidation": "Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.",
          "content_sha256": "f9bb803654d4ec5fa8faa0f4b5da1533dc74c1db8e374d646fafb84d1885a2a9",
          "market_pulse": "RISK · COST · NEXT STEPS"
        },
        "compared_fields": [
          "question",
          "headline",
          "narrative",
          "beats",
          "source_ids",
          "market_connection",
          "watch_conditions",
          "invalidation"
        ],
        "content_change_state": "CHANGED",
        "content_change_summary": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
        "content_changes": {
          "changed_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "unchanged_fields": [],
          "question": {
            "changed": true,
            "prior": "Can every main claim in the corrected 3/8/26 story be checked?",
            "current": "Can every main claim in the 4/8/26 story be checked?"
          },
          "headline": {
            "changed": true,
            "prior": "Every main claim links to a current named report from today's saved edition.",
            "current": "Every lead claim points to a current named report."
          },
          "narrative": {
            "changed": true,
            "prior_count": 2,
            "current_count": 2,
            "added": [
              "This issue contains 687 current reports from 659 direct links across 471 websites. The closing time is 06:18 SGT, and every lead item belongs to the same dated release.",
              "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Readers can open each link and compare the headline, publisher time, and saved wording. A later correction must create a new dated record; it cannot quietly change this issue."
            ],
            "removed": [
              "The corrected story uses the same 09:54 SGT closing time, 584 current reports, 566 direct links and 384 websites. The Iran, oil, OPEC+ and yen reports were all already inside today's saved edition.",
              "The correction changes only the order and explanation. The earlier story remains saved. The daily reports, prediction rules, later price checks and past results remain unchanged."
            ],
            "retained": [],
            "reordered": false
          },
          "beats": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added_titles": [
              "The lead reports can be opened",
              "The report times stay visible",
              "Corrections create a new dated record"
            ],
            "removed_titles": [
              "The four main reports can be opened",
              "Weak claims stay outside this edition",
              "Both versions remain saved"
            ],
            "retained_titles": [],
            "revised_titles": [],
            "reordered": false
          },
          "source_ids": {
            "changed": true,
            "prior_count": 6,
            "current_count": 6,
            "added": [
              "LEAD-01",
              "LEAD-02",
              "LEAD-03",
              "LEAD-04",
              "LEAD-05",
              "LEAD-06"
            ],
            "removed": [
              "CYBER-CURRENT",
              "ENERGY-CURRENT",
              "FINANCE-CURRENT",
              "LOCAL-CURRENT",
              "MARKET-CURRENT",
              "WORLD-CURRENT"
            ],
            "retained": [],
            "reordered": false
          },
          "market_connection": {
            "changed": true,
            "prior": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
            "current": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing."
          },
          "watch_conditions": {
            "changed": true,
            "prior_count": 3,
            "current_count": 3,
            "added": [
              "Broken links",
              "A headline that changed",
              "A public page showing a different issue date"
            ],
            "removed": [
              "The dated correction record",
              "Matching current and saved versions",
              "The version running on the public website"
            ],
            "retained": [],
            "reordered": false
          },
          "invalidation": {
            "changed": true,
            "prior": "Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.",
            "current": "Do not publish if a main claim, report link, time, count, or saved issue does not match."
          }
        },
        "similarities": [
          "Both records belong to the Proof canonical Full Immersive tab.",
          "Both records were checked across the same eight saved content fields."
        ],
        "differences": [
          "Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
          "Headline changed from \"Every main claim links to a current named report from today's saved edition.\" to \"Every lead claim points to a current named report.\".",
          "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
          "Beat structure changed: added The lead reports can be opened, The report times stay visible, Corrections create a new dated record; removed The four main reports can be opened, Weak claims stay outside this edition, Both versions remain saved.",
          "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed CYBER-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 3 more.",
          "Market connection changed from \"The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.\" to \"Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.\".",
          "Watch conditions changed: 3 added; 3 removed.",
          "Invalidation condition changed from \"Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.\" to \"Do not publish if a main claim, report link, time, count, or saved issue does not match.\"."
        ],
        "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
        "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
        "selection_audit": {
          "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
          "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
          "scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Proof",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "exact_candidate_count": 25,
          "checked_candidates": [
            {
              "rank": 1,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
              "publication_at_sgt": "2026-08-03T15:45:45+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
            },
            {
              "rank": 2,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
              "publication_at_sgt": "2026-08-03T13:53:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
            },
            {
              "rank": 3,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
              "publication_at_sgt": "2026-08-03T10:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
            },
            {
              "rank": 4,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
              "publication_at_sgt": "2026-08-03T03:15:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
            },
            {
              "rank": 5,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
              "publication_at_sgt": "2026-08-02T15:56:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
            },
            {
              "rank": 6,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
              "publication_at_sgt": "2026-08-02T15:50:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
            },
            {
              "rank": 7,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
              "publication_at_sgt": "2026-08-02T15:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
            },
            {
              "rank": 8,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
              "publication_at_sgt": "2026-08-02T15:19:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
            },
            {
              "rank": 9,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
              "publication_at_sgt": "2026-08-02T13:36:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
            },
            {
              "rank": 10,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
              "publication_at_sgt": "2026-08-02T02:08:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
            },
            {
              "rank": 11,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
              "publication_at_sgt": "2026-08-01T23:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
            },
            {
              "rank": 12,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
            },
            {
              "rank": 13,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
              "publication_at_sgt": "2026-07-31T23:59:30+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
            },
            {
              "rank": 14,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
              "publication_at_sgt": "2026-07-31T23:55:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
            },
            {
              "rank": 15,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
              "publication_at_sgt": "2026-07-31T14:40:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
            },
            {
              "rank": 16,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
              "publication_at_sgt": "2026-07-31T14:25:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
            },
            {
              "rank": 17,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
              "publication_at_sgt": "2026-07-31T14:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
            },
            {
              "rank": 18,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
              "publication_at_sgt": "2026-07-31T13:05:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
            },
            {
              "rank": 19,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
              "publication_at_sgt": "2026-07-31T09:30:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
            },
            {
              "rank": 20,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
              "publication_at_sgt": "2026-07-31T08:21:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
            },
            {
              "rank": 21,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
              "publication_at_sgt": "2026-07-31T07:45:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
            },
            {
              "rank": 22,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
              "publication_at_sgt": "2026-07-30T19:33:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
            },
            {
              "rank": 23,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
              "publication_at_sgt": "2026-07-30T19:06:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
            },
            {
              "rank": 24,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
              "publication_at_sgt": "2026-07-30T09:20:00+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
            },
            {
              "rank": 25,
              "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
              "publication_at_sgt": "2026-07-30T07:29:36+08:00",
              "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
            }
          ],
          "selected_candidate_rank": 1,
          "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
          "fallback_used": false,
          "cross_tab_fallback_allowed": false,
          "theme_fallback_allowed": false
        },
        "selection_audit_sha256": "67f1ee8ba30e12a5c8f96cde1ccb7464b97feaf3389b98b0f65176b61708ca28",
        "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "comparison_receipt_sha256": "fd4d26cfba779d57b9022b5dd0bac46ddf1a1fafaa39c9af7fea1c022743c64e"
      },
      "historical_data": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PROOF",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PROOF",
          "record_type": "FULL_IMMERSIVE_TAB_HISTORY",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Proof",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Proof",
          "source_headline": "Every main claim links to a current named report from today's saved edition.",
          "source_question": "Can every main claim in the corrected 3/8/26 story be checked?",
          "source_market_connection": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "f9bb803654d4ec5fa8faa0f4b5da1533dc74c1db8e374d646fafb84d1885a2a9",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Proof",
          "current_headline": "Every lead claim points to a current named report.",
          "current_question": "Can every main claim in the 4/8/26 story be checked?",
          "current_market_connection": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "09f4abd6f7460bd65648d1c4ef16cca8f93762606f0d7e1823ddac57e3210770",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Can every main claim in the corrected 3/8/26 story be checked?",
              "current": "Can every main claim in the 4/8/26 story be checked?"
            },
            "headline": {
              "changed": true,
              "prior": "Every main claim links to a current named report from today's saved edition.",
              "current": "Every lead claim points to a current named report."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "This issue contains 687 current reports from 659 direct links across 471 websites. The closing time is 06:18 SGT, and every lead item belongs to the same dated release.",
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Readers can open each link and compare the headline, publisher time, and saved wording. A later correction must create a new dated record; it cannot quietly change this issue."
              ],
              "removed": [
                "The corrected story uses the same 09:54 SGT closing time, 584 current reports, 566 direct links and 384 websites. The Iran, oil, OPEC+ and yen reports were all already inside today's saved edition.",
                "The correction changes only the order and explanation. The earlier story remains saved. The daily reports, prediction rules, later price checks and past results remain unchanged."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "The lead reports can be opened",
                "The report times stay visible",
                "Corrections create a new dated record"
              ],
              "removed_titles": [
                "The four main reports can be opened",
                "Weak claims stay outside this edition",
                "Both versions remain saved"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "CYBER-CURRENT",
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
              "current": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Broken links",
                "A headline that changed",
                "A public page showing a different issue date"
              ],
              "removed": [
                "The dated correction record",
                "Matching current and saved versions",
                "The version running on the public website"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.",
              "current": "Do not publish if a main claim, report link, time, count, or saved issue does not match."
            }
          },
          "similarities": [
            "Both records belong to the Proof canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
            "Headline changed from \"Every main claim links to a current named report from today's saved edition.\" to \"Every lead claim points to a current named report.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added The lead reports can be opened, The report times stay visible, Corrections create a new dated record; removed The four main reports can be opened, Weak claims stay outside this edition, Both versions remain saved.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed CYBER-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 3 more.",
            "Market connection changed from \"The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.\" to \"Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.\" to \"Do not publish if a main claim, report link, time, count, or saved issue does not match.\"."
          ],
          "comparison": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
          "difference": "Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\". Headline changed from \"Every main claim links to a current named report from today's saved edition.\" to \"Every lead claim points to a current named report.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added The lead reports can be opened, The report times stay visible, Corrections create a new dated record; removed The four main reports can be opened, Weak claims stay outside this edition, Both versions remain saved. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed CYBER-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 3 more. Market connection changed from \"The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.\" to \"Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.\" to \"Do not publish if a main claim, report link, time, count, or saved issue does not match.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Proof",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "67f1ee8ba30e12a5c8f96cde1ccb7464b97feaf3389b98b0f65176b61708ca28",
          "comparison_receipt_sha256": "fd4d26cfba779d57b9022b5dd0bac46ddf1a1fafaa39c9af7fea1c022743c64e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "otr_memory_context": {
        "memory_brain_id": "OTR-MEMORY-4783bbe36f468a79",
        "memory_brain_sha256": "baea3f71cd66cafacfe35418f80a770b0365d1341f1cda4600b6d4532d9b99bc",
        "source_archive_index_sha256": "4783bbe36f468a79ad73b88732b3013592f3dbce78c914254d1c4d61285d7c2d",
        "mode": "LEARNING_CONTEXT",
        "same_day_excluded": true,
        "query_sha256": "a46eda653ad7b690a49f0ca81166a5c9fd1a6061e206ad5be20327f0d51babb2",
        "query_concepts": {
          "entities": [],
          "events": [
            {
              "id": "SUPPLY_CHAIN",
              "label": "Supply chains and trade"
            }
          ],
          "terms": [
            "every",
            "lead",
            "claim",
            "points",
            "named",
            "proof",
            "means",
            "readers",
            "can",
            "move",
            "main",
            "sentence",
            "its",
            "time",
            "and",
            "saved",
            "issue",
            "without",
            "guessing",
            "contains",
            "direct",
            "links",
            "across",
            "websites",
            "the",
            "closing",
            "sgt",
            "item",
            "belongs",
            "same",
            "dated",
            "fortune",
            "subsidiary",
            "southeast",
            "asia",
            "largest",
            "tech",
            "firm",
            "looking",
            "build",
            "regional",
            "digital",
            "banking",
            "group",
            "out",
            "singapore",
            "nny360",
            "com",
            "state",
            "awards",
            "thousands",
            "north",
            "country",
            "for",
            "water",
            "system",
            "cybersecurity",
            "datamarnews",
            "tariffs",
            "global",
            "turmoil",
            "drive",
            "export",
            "logistics",
            "costs",
            "open",
            "link",
            "compare",
            "headline",
            "wording",
            "later",
            "correction",
            "must",
            "create",
            "new",
            "record",
            "cannot",
            "quietly",
            "change",
            "broken",
            "changed",
            "public",
            "page",
            "showing",
            "different",
            "date"
          ],
          "direction": "UP"
        },
        "before_at_sgt": "2026-08-04T06:24:00+08:00",
        "matched_record_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-07-DOTS",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-09-TOMORROW"
        ],
        "matched_publication_ids": [
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT"
        ],
        "direction_counts": {
          "UP": 0,
          "DOWN": 0,
          "MIXED": 1,
          "UNSTATED": 4
        },
        "contradictory_direction_history": false,
        "use_state": "CONTEXT_ONLY",
        "current_fact_authority": false,
        "confidence_upgrade_authority": false,
        "matches": [
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Every lead claim points to current rows inside OTR-DAILY-73-2026-08-03-0954-SGT.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 333.8274,
            "why": [
              "shared terms: sgt, the, can, saved, proof"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "date": "2026-08-03",
            "title": "Every main claim links to a current named report from today's saved edition.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 313.6764,
            "why": [
              "shared terms: the, saved, sgt, main, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT::TAB-12-PROOF",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
            "date": "2026-08-03",
            "title": "584 current signals and 73 complete engines bind to one release.",
            "engine": null,
            "tab": "Proof",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 280.3952,
            "why": [
              "shared terms: sgt, proof, saved, can, and"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-07-DOTS",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "Diplomacy changed the war premium; supply changed oil; intervention changed currency risk.",
            "engine": null,
            "tab": "Dots",
            "evidence_state": null,
            "direction": "MIXED",
            "matched_entities": [],
            "matched_events": [
              {
                "id": "SUPPLY_CHAIN",
                "label": "Supply chains and trade"
              }
            ],
            "score": 236.7153,
            "why": [
              "same event: Supply chains and trade",
              "shared terms: changed, can, saved, costs, sgt"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          },
          {
            "archive_record_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01::TAB-09-TOMORROW",
            "publication_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
            "date": "2026-08-03",
            "title": "The next check must test the pause, oil's two drivers, yen follow-through and Asia's post-cut response.",
            "engine": null,
            "tab": "Tomorrow",
            "evidence_state": null,
            "direction": "UNSTATED",
            "matched_entities": [],
            "matched_events": [],
            "score": 233.4853,
            "why": [
              "shared terms: saved, asia, the, and, can"
            ],
            "use_state": "CONTEXT_ONLY",
            "current_fact_authority": false
          }
        ],
        "memory_recall_sha256": "8f9b0f33abe373019f949e5f0db528b453741c43197dab81d2b08c22717f4619"
      },
      "publication_comparisons": [
        {
          "record_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PROOF",
          "comparison_id": "OTR-TAB-HISTORY-OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT-PROOF",
          "record_type": "OTR_PUBLICATION_TAB_COMPARISON",
          "comparison_contract_id": "OTR-SAME-TAB-CONTENT-COMPARISON-V2",
          "comparison_basis": "EXACT_TAB_NAME_AND_SAVED_FIELDS",
          "content_comparison_basis": "EXACT_TAB_NAME_AND_COMPLETE_SAVED_TAB_CONTENT",
          "history_scope": "SAME_CANONICAL_TAB_ONLY",
          "tab_name": "Proof",
          "match_state": "MATCHED_PRIOR_TAB",
          "source_type": "OTR_PUBLISHED_HISTORY",
          "source_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
          "source_story_sha256": "9674642c5b7cb5ab943d59ce27d8cf9f0f548fd051db88cdab218cafb3286259",
          "source_edition_id": "OTR-FULL-IMMERSIVE-2026-08-03-1545-SGT-C02",
          "source_release_id": "OTR-DAILY-73-2026-08-03-0954-SGT",
          "source_publication_at_sgt": "2026-08-03T15:45:45+08:00",
          "source_publication_date": "2026-08-03",
          "source_publication_label": "03 August 2026 OTR publish",
          "source_publication_path": "/data/canonical-stories/otr-full-immersive-story-2026-08-03-1545-sgt-c02.json",
          "source_tab_name": "Proof",
          "source_headline": "Every main claim links to a current named report from today's saved edition.",
          "source_question": "Can every main claim in the corrected 3/8/26 story be checked?",
          "source_market_connection": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
          "source_market_pulse": "RISK · COST · NEXT STEPS",
          "source_content_sha256": "f9bb803654d4ec5fa8faa0f4b5da1533dc74c1db8e374d646fafb84d1885a2a9",
          "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
          "current_edition_id": "OTR-FULL-IMMERSIVE-2026-08-04-0624-SGT",
          "current_release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
          "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
          "current_tab_name": "Proof",
          "current_headline": "Every lead claim points to a current named report.",
          "current_question": "Can every main claim in the 4/8/26 story be checked?",
          "current_market_connection": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.",
          "current_market_pulse": "REPORTS · QUESTIONS · NEXT CHECK",
          "current_content_sha256": "09f4abd6f7460bd65648d1c4ef16cca8f93762606f0d7e1823ddac57e3210770",
          "compared_fields": [
            "question",
            "headline",
            "narrative",
            "beats",
            "source_ids",
            "market_connection",
            "watch_conditions",
            "invalidation"
          ],
          "content_change_state": "CHANGED",
          "content_change_summary": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
          "content_changes": {
            "changed_fields": [
              "question",
              "headline",
              "narrative",
              "beats",
              "source_ids",
              "market_connection",
              "watch_conditions",
              "invalidation"
            ],
            "unchanged_fields": [],
            "question": {
              "changed": true,
              "prior": "Can every main claim in the corrected 3/8/26 story be checked?",
              "current": "Can every main claim in the 4/8/26 story be checked?"
            },
            "headline": {
              "changed": true,
              "prior": "Every main claim links to a current named report from today's saved edition.",
              "current": "Every lead claim points to a current named report."
            },
            "narrative": {
              "changed": true,
              "prior_count": 2,
              "current_count": 2,
              "added": [
                "This issue contains 687 current reports from 659 direct links across 471 websites. The closing time is 06:18 SGT, and every lead item belongs to the same dated release.",
                "Fortune reported: “A subsidiary of Southeast Asia’s largest tech firm is looking to build a ‘regional digital banking group’ out of Singapore”. nny360.com reported: “State awards thousands to north country for water system cybersecurity”. DatamarNews reported: “U.S. tariffs and global turmoil drive up export logistics costs”. Readers can open each link and compare the headline, publisher time, and saved wording. A later correction must create a new dated record; it cannot quietly change this issue."
              ],
              "removed": [
                "The corrected story uses the same 09:54 SGT closing time, 584 current reports, 566 direct links and 384 websites. The Iran, oil, OPEC+ and yen reports were all already inside today's saved edition.",
                "The correction changes only the order and explanation. The earlier story remains saved. The daily reports, prediction rules, later price checks and past results remain unchanged."
              ],
              "retained": [],
              "reordered": false
            },
            "beats": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added_titles": [
                "The lead reports can be opened",
                "The report times stay visible",
                "Corrections create a new dated record"
              ],
              "removed_titles": [
                "The four main reports can be opened",
                "Weak claims stay outside this edition",
                "Both versions remain saved"
              ],
              "retained_titles": [],
              "revised_titles": [],
              "reordered": false
            },
            "source_ids": {
              "changed": true,
              "prior_count": 6,
              "current_count": 6,
              "added": [
                "LEAD-01",
                "LEAD-02",
                "LEAD-03",
                "LEAD-04",
                "LEAD-05",
                "LEAD-06"
              ],
              "removed": [
                "CYBER-CURRENT",
                "ENERGY-CURRENT",
                "FINANCE-CURRENT",
                "LOCAL-CURRENT",
                "MARKET-CURRENT",
                "WORLD-CURRENT"
              ],
              "retained": [],
              "reordered": false
            },
            "market_connection": {
              "changed": true,
              "prior": "The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.",
              "current": "Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing."
            },
            "watch_conditions": {
              "changed": true,
              "prior_count": 3,
              "current_count": 3,
              "added": [
                "Broken links",
                "A headline that changed",
                "A public page showing a different issue date"
              ],
              "removed": [
                "The dated correction record",
                "Matching current and saved versions",
                "The version running on the public website"
              ],
              "retained": [],
              "reordered": false
            },
            "invalidation": {
              "changed": true,
              "prior": "Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.",
              "current": "Do not publish if a main claim, report link, time, count, or saved issue does not match."
            }
          },
          "similarities": [
            "Both records belong to the Proof canonical Full Immersive tab.",
            "Both records were checked across the same eight saved content fields."
          ],
          "differences": [
            "Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
            "Headline changed from \"Every main claim links to a current named report from today's saved edition.\" to \"Every lead claim points to a current named report.\".",
            "Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed.",
            "Beat structure changed: added The lead reports can be opened, The report times stay visible, Corrections create a new dated record; removed The four main reports can be opened, Weak claims stay outside this edition, Both versions remain saved.",
            "Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed CYBER-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 3 more.",
            "Market connection changed from \"The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.\" to \"Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.\".",
            "Watch conditions changed: 3 added; 3 removed.",
            "Invalidation condition changed from \"Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.\" to \"Do not publish if a main claim, report link, time, count, or saved issue does not match.\"."
          ],
          "comparison": "The Proof tab changed its question, headline, narrative, beat structure, source set, market connection, watch conditions, and invalidation condition. Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\".",
          "difference": "Question changed from \"Can every main claim in the corrected 3/8/26 story be checked?\" to \"Can every main claim in the 4/8/26 story be checked?\". Headline changed from \"Every main claim links to a current named report from today's saved edition.\" to \"Every lead claim points to a current named report.\". Narrative changed: 2 paragraph(s) added; 2 paragraph(s) removed. Beat structure changed: added The lead reports can be opened, The report times stay visible, Corrections create a new dated record; removed The four main reports can be opened, Weak claims stay outside this edition, Both versions remain saved. Source set changed: added LEAD-01, LEAD-02, LEAD-03 and 3 more; removed CYBER-CURRENT, ENERGY-CURRENT, FINANCE-CURRENT and 3 more. Market connection changed from \"The story can improve only through a new dated record. The facts in the earlier daily edition do not change with it.\" to \"Proof means readers can move from each main sentence to its named report, time, and saved issue without guessing.\". Watch conditions changed: 3 added; 3 removed. Invalidation condition changed from \"Do not publish if the counts, dates, sources, saved files, prediction links, archive or public website do not match.\" to \"Do not publish if a main claim, report link, time, count, or saved issue does not match.\".",
          "selection_audit": {
            "contract_id": "OTR-SAME-TAB-HISTORY-SELECTION-AUDIT-V1",
            "rule": "NEAREST_EARLIER_EXACT_CANONICAL_TAB",
            "scope": "SAME_CANONICAL_TAB_ONLY",
            "tab_name": "Proof",
            "current_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-04-0624-SGT",
            "current_publication_at_sgt": "2026-08-04T06:24:00+08:00",
            "exact_candidate_count": 25,
            "checked_candidates": [
              {
                "rank": 1,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
                "publication_at_sgt": "2026-08-03T15:45:45+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json"
              },
              {
                "rank": 2,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01",
                "publication_at_sgt": "2026-08-03T13:53:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1353-SGT-C01.json"
              },
              {
                "rank": 3,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT",
                "publication_at_sgt": "2026-08-03T10:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1055-SGT.json"
              },
              {
                "rank": 4,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT",
                "publication_at_sgt": "2026-08-03T03:15:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-0315-SGT.json"
              },
              {
                "rank": 5,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT",
                "publication_at_sgt": "2026-08-02T15:56:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1556-SGT.json"
              },
              {
                "rank": 6,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT",
                "publication_at_sgt": "2026-08-02T15:50:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1550-SGT.json"
              },
              {
                "rank": 7,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT",
                "publication_at_sgt": "2026-08-02T15:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1520-SGT.json"
              },
              {
                "rank": 8,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT",
                "publication_at_sgt": "2026-08-02T15:19:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1519-SGT.json"
              },
              {
                "rank": 9,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT",
                "publication_at_sgt": "2026-08-02T13:36:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-1336-SGT.json"
              },
              {
                "rank": 10,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT",
                "publication_at_sgt": "2026-08-02T02:08:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-02-0208-SGT.json"
              },
              {
                "rank": 11,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT",
                "publication_at_sgt": "2026-08-01T23:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-08-01-2345-SGT.json"
              },
              {
                "rank": 12,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT-C01.json"
              },
              {
                "rank": 13,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT",
                "publication_at_sgt": "2026-07-31T23:59:30+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2359-SGT.json"
              },
              {
                "rank": 14,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT",
                "publication_at_sgt": "2026-07-31T23:55:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-2355-SGT.json"
              },
              {
                "rank": 15,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT",
                "publication_at_sgt": "2026-07-31T14:40:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1440-SGT.json"
              },
              {
                "rank": 16,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT",
                "publication_at_sgt": "2026-07-31T14:25:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1425-SGT.json"
              },
              {
                "rank": 17,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT",
                "publication_at_sgt": "2026-07-31T14:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1420-SGT.json"
              },
              {
                "rank": 18,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT",
                "publication_at_sgt": "2026-07-31T13:05:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-1305-SGT.json"
              },
              {
                "rank": 19,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT",
                "publication_at_sgt": "2026-07-31T09:30:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0930-SGT.json"
              },
              {
                "rank": 20,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT",
                "publication_at_sgt": "2026-07-31T08:21:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0821-SGT.json"
              },
              {
                "rank": 21,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT",
                "publication_at_sgt": "2026-07-31T07:45:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-31-0745-SGT.json"
              },
              {
                "rank": 22,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT",
                "publication_at_sgt": "2026-07-30T19:33:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1933-SGT.json"
              },
              {
                "rank": 23,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT",
                "publication_at_sgt": "2026-07-30T19:06:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-1906-SGT.json"
              },
              {
                "rank": 24,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT",
                "publication_at_sgt": "2026-07-30T09:20:00+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0920-SGT.json"
              },
              {
                "rank": 25,
                "story_id": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT",
                "publication_at_sgt": "2026-07-30T07:29:36+08:00",
                "file": "OTR-FULL-IMMERSIVE-STORY-2026-07-30-0729-SGT.json"
              }
            ],
            "selected_candidate_rank": 1,
            "selected_story_id": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02",
            "selected_publication_at_sgt": "2026-08-03T15:45:45+08:00",
            "selected_file": "OTR-FULL-IMMERSIVE-STORY-2026-08-03-1545-SGT-C02.json",
            "fallback_used": false,
            "cross_tab_fallback_allowed": false,
            "theme_fallback_allowed": false
          },
          "selection_audit_sha256": "67f1ee8ba30e12a5c8f96cde1ccb7464b97feaf3389b98b0f65176b61708ca28",
          "comparison_receipt_sha256": "fd4d26cfba779d57b9022b5dd0bac46ddf1a1fafaa39c9af7fea1c022743c64e",
          "truth_gap": "This compares complete saved content from the same canonical tab only. It does not claim the same events, causes, market regime or outcome.",
          "use_state": "CONTEXT_ONLY",
          "current_fact_authority": false
        }
      ],
      "evidence_checklist": [
        "Open the direct source and check when it was published.",
        "Keep what the source said separate from what OTR thinks it may mean.",
        "For a major claim, look for an official source or a second independent report."
      ],
      "watch_conditions": [
        "Broken links",
        "A headline that changed",
        "A public page showing a different issue date"
      ],
      "invalidation": "Do not publish if a main claim, report link, time, count, or saved issue does not match.",
      "learning_status": "APPENDED_TO_ISSUE_MEMORY - NO_AUTOMATIC_STATE_OR_WEIGHT_CHANGE",
      "update_receipt": {
        "release_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
        "observed_at_sgt": "2026-08-04T06:24:00+08:00",
        "verified_sources": 12,
        "candidate_sources": 471,
        "automation_attempt_id": "OTR-DAILY-73-2026-08-04-0618-SGT-ATTEMPT",
        "state": "CURRENT_2026-08-04_CANONICAL"
      }
    }
  },
  "generation": {
    "mode": "FRESH_DAILY_COLLECTION",
    "run_id": "OTR-DAILY-73-2026-08-04-0618-SGT",
    "completed_at_sgt": "2026-08-04T06:24:00+08:00",
    "source_release_sha256": "0abf0ac1b8a1d25760a8359cf41f171c905c34d1030a8a60618032018816ae80",
    "engine_registry_version": "OTR-REGISTRY-73-V5",
    "engine_count": 73,
    "candidate_signal_minimum_per_engine": 5,
    "candidate_signal_maximum_per_engine": 10,
    "candidate_signals_reviewed": 687,
    "candidate_records_retained": 687,
    "accepted_signal_routes": 687,
    "engines_meeting_verified_minimum": 73,
    "evidence_coverage_complete": true,
    "self_verification_required": 0,
    "unique_source_domains": 471,
    "story_tabs": 12,
    "material_signal_change": true,
    "statement": "The edition was generated from a fresh complete evidence-cleared engine collection, not a replay of the previous canonical story."
  },
  "deterministic_output_sha256": "b6c1a3ffe5000636978f2d2db6ebfbbe81f0f4784432ad5a6bb24b0f05a7bd52"
}
