{
  "input_hash": "eef07addc48f84383b46bb2b3f14cad1e8c5c8e2944ab2457153789952b78255",
  "output_hash": "7425b2fdf8cc487246eb0a3319912dd24eaa34403ac784d10a2045fc9e8132cb",
  "output": {
    "state": {
      "schema_version": "sim-1.0.0",
      "record_id": "saltwind-sound-01-state",
      "record_status": "SIMULATION",
      "source": {
        "kind": "INITIALIZATION",
        "campaign_id": "saltwind-sound-01",
        "turn_id": "turn-001",
        "notes": "Fresh synthetic Saltwind initialization under explicit GM simulation authorization; no historical campaign imports."
      },
      "generation": {
        "source_version": "saltwind-sound-01-turn-001",
        "generated_at": "2026-09-07T16:19:05.375Z",
        "tool_version": "simulation-runner-1.0.0"
      },
      "campaign": {
        "id": "saltwind-sound-01",
        "name": "Simulation: Saltwind Sound",
        "rules_version": "saltwind-v0.2-sim1",
        "status": "ACTIVE",
        "current_turn": 1
      },
      "calendar": {
        "current_key": "Y01-M07",
        "display_label": "Early autumn, Year 1",
        "year": 1,
        "month": 7,
        "next_key": "Y01-M08",
        "legacy_source_label": null
      },
      "turn": {
        "id": "turn-001",
        "number": 1,
        "status": "ANALYZED",
        "deadline": "2026-09-07T16:19:05.375Z",
        "maximum_submission_words": 1500,
        "current_blocker": null,
        "status_history": [
          {
            "status": "OPEN",
            "at": "2026-09-07T16:19:05.375Z",
            "approval_id": null
          },
          {
            "status": "INTAKE_LOCKED",
            "at": "2026-09-07T16:19:05.435Z",
            "approval_id": null
          },
          {
            "status": "ANALYZED",
            "at": "2026-09-07T16:20:00.625Z",
            "approval_id": null
          }
        ],
        "intake": [
          {
            "id": "T001-I-player1",
            "player_id": "player1",
            "classification": "VALID",
            "counts_as_miss": false,
            "consecutive_misses_before": 0,
            "consecutive_misses_after": 0,
            "word_count": 1005,
            "byte_count": 5879,
            "archive_path": "turns/turn-001/intake/player1/submission.md",
            "checksum_sha256": "c0b26cb67095e11728943d782662758d5fe87fc407e236835469a3f73c8a0540",
            "ruling_id": null
          },
          {
            "id": "T001-I-player2",
            "player_id": "player2",
            "classification": "VALID",
            "counts_as_miss": false,
            "consecutive_misses_before": 0,
            "consecutive_misses_after": 0,
            "word_count": 1050,
            "byte_count": 6388,
            "archive_path": "turns/turn-001/intake/player2/submission.md",
            "checksum_sha256": "1f8ffaba5b1b031f34a3697b99aa6db75e3b030982920a4fbc9b65fbfd622488",
            "ruling_id": null
          },
          {
            "id": "T001-I-player3",
            "player_id": "player3",
            "classification": "VALID",
            "counts_as_miss": false,
            "consecutive_misses_before": 0,
            "consecutive_misses_after": 0,
            "word_count": 738,
            "byte_count": 4580,
            "archive_path": "turns/turn-001/intake/player3/submission.md",
            "checksum_sha256": "b2282dda910dec496641b97e25bd6b2470d702da89aa6128291c314f8c1eb753",
            "ruling_id": null
          },
          {
            "id": "T001-I-player4",
            "player_id": "player4",
            "classification": "VALID",
            "counts_as_miss": false,
            "consecutive_misses_before": 0,
            "consecutive_misses_after": 0,
            "word_count": 883,
            "byte_count": 5287,
            "archive_path": "turns/turn-001/intake/player4/submission.md",
            "checksum_sha256": "3c6aba5192128c980f0f9941880017a76b3a7e92beabff11050d6177ef5b2c4d",
            "ruling_id": null
          }
        ]
      },
      "players": [
        {
          "id": "player1",
          "clan_id": "saltmere",
          "leader_character_id": "saltmere-leader",
          "leader_title": "Leader of Saltmere",
          "control_status": "ACTIVE",
          "eligible": true,
          "expected_submission": true,
          "consecutive_misses": 0,
          "influence": "SUPPORTIVE"
        },
        {
          "id": "player2",
          "clan_id": "keelstrand",
          "leader_character_id": "keelstrand-leader",
          "leader_title": "Leader of Keelstrand",
          "control_status": "ACTIVE",
          "eligible": true,
          "expected_submission": true,
          "consecutive_misses": 0,
          "influence": "SUPPORTIVE"
        },
        {
          "id": "player3",
          "clan_id": "high-barley",
          "leader_character_id": "high-barley-leader",
          "leader_title": "Leader of High Barley",
          "control_status": "ACTIVE",
          "eligible": true,
          "expected_submission": true,
          "consecutive_misses": 0,
          "influence": "SUPPORTIVE"
        },
        {
          "id": "player4",
          "clan_id": "ternhaven",
          "leader_character_id": "ternhaven-leader",
          "leader_title": "Leader of Ternhaven",
          "control_status": "ACTIVE",
          "eligible": true,
          "expected_submission": true,
          "consecutive_misses": 0,
          "influence": "SUPPORTIVE"
        }
      ],
      "places": [
        {
          "id": "sound",
          "name": "Saltwind Sound",
          "kind": "REGION",
          "population": null,
          "summary": "A mundane narrow coastal sound with four resident communities, navigable shore segments and uncertain reception. No compulsory regional crisis.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere",
          "name": "Saltmere",
          "kind": "SETTLEMENT",
          "population": 151,
          "summary": "Your village stands on the western shallows of a narrow sound. Brine pools lie east, garden strips on the low rise west, and a coppice beyond them. A shingle path leads north to an empty marker beach; reeds conceal the shore south. The tidal mud looks walkable from above but holds deep runnels. Your two shallow fishing skiffs can follow the western shore in settled weather; neither is suited to an exposed crossing in a gale.",
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand",
          "name": "Keelstrand",
          "kind": "SETTLEMENT",
          "population": 149,
          "summary": "Your settlement occupies the northern timbered creek of the sound. The boat shed sits above the tide; the nearest straight timber grows uphill and must be dragged down a stony track. A western shore path reaches an empty marker beach in half a fair-weather day. A pack trail climbs southeast toward grazing country. Beyond its first ridge you have no current map. Your old fishing boat works within the creek; the unfinished larger boat cannot yet float.",
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley",
          "name": "High Barley",
          "kind": "SETTLEMENT",
          "population": 153,
          "summary": "Your village lies on a southern upland shelf above the eastern side of the sound. Fields surround the houses; rough grazing and a spring lie uphill. A pack trail runs northwest over a ridge; another descends east through alder ground toward distant coastal smoke. A small stream ford near the east descent rises after rain. You own pack goats and hauling frames, not a seaworthy boat. No coast-to-coast shortcut crosses the steep central ravine.",
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven",
          "name": "Ternhaven",
          "kind": "SETTLEMENT",
          "population": 150,
          "summary": "Your village sits inside the southeastern hooked inlet. Its inner landing is sheltered; beyond the bar, wind and ebb can make even a short boat journey dangerous. An alder path climbs west to a stream ford and upland meadow. The coast curves north around the eastern arm of the sound. Two small fishing boats work near shore; you have no current safe-weather survey of the full sound.",
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "characters": [
        {
          "id": "saltmere-leader",
          "name": "Leader of Saltmere",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "Recognized player leader with modern memories",
          "goals": [
            "Determined by isolated player submissions"
          ],
          "fears": [
            "Not prescribed"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c1",
          "name": "Nessa",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "pan tender",
          "goals": [
            "protect skilled work and her witnessed fuel promise"
          ],
          "fears": [
            "being treated as expendable"
          ],
          "relationships": [
            "saltmere-r1"
          ],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c2",
          "name": "Orin",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "net captain",
          "goals": [
            "preserve the catch and fair household shares"
          ],
          "fears": [
            "losing food to production targets"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c3",
          "name": "Sava",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "basket and drying-rack maker",
          "goals": [
            "test small improvements without wasting supplies"
          ],
          "fears": [
            "being ordered to scale an untested device"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c4",
          "name": "Fen",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "bank and water keeper",
          "goals": [
            "maintain safe banks and clean drinking water"
          ],
          "fears": [
            "a warning being dismissed"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c5",
          "name": "Evi",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "shore walker",
          "goals": [
            "keep routes usable and journeys bounded"
          ],
          "fears": [
            "being sent onto mud without a retreat"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-c6",
          "name": "Daro",
          "status": "ACTIVE",
          "home_place_id": "saltmere",
          "role": "storekeeper",
          "goals": [
            "make ration and fuel allocations believable"
          ],
          "fears": [
            "being accused of hiding shortages"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-leader",
          "name": "Leader of Keelstrand",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "Recognized player leader with modern memories",
          "goals": [
            "Determined by isolated player submissions"
          ],
          "fears": [
            "Not prescribed"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c1",
          "name": "Mara",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "master carpenter",
          "goals": [
            "finish a durable boat and retain the yard’s reputation"
          ],
          "fears": [
            "being forced to launch unsafe work"
          ],
          "relationships": [
            "keelstrand-r1"
          ],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c2",
          "name": "Arel",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "fishing household speaker",
          "goals": [
            "receive the boat promised for shared food contributions"
          ],
          "fears": [
            "another indefinite postponement"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c3",
          "name": "Tor",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "shelter keeper",
          "goals": [
            "get dry sleeping spaces before cold rain"
          ],
          "fears": [
            "the yard always taking first claim"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c4",
          "name": "Ivo",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "timber and path scout",
          "goals": [
            "bring back usable timber safely"
          ],
          "fears": [
            "a preventable lifting accident"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c5",
          "name": "Pell",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "rope worker with a strained wrist",
          "goals": [
            "teach sound lashings while recovering"
          ],
          "fears": [
            "being expected to haul before healing"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-c6",
          "name": "Venn",
          "status": "ACTIVE",
          "home_place_id": "keelstrand",
          "role": "garden and pack keeper",
          "goals": [
            "keep food moving without stripping local work"
          ],
          "fears": [
            "journeys that consume the harvest hands"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-leader",
          "name": "Leader of High Barley",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "Recognized player leader with modern memories",
          "goals": [
            "Determined by isolated player submissions"
          ],
          "fears": [
            "Not prescribed"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c1",
          "name": "Hesta",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "field steward",
          "goals": [
            "bring the barley under cover before rain"
          ],
          "fears": [
            "avoidable crop loss"
          ],
          "relationships": [
            "high-barley-r1"
          ],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c2",
          "name": "Cal",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "care rota keeper",
          "goals": [
            "make dependent care a real labor commitment"
          ],
          "fears": [
            "quiet abandonment of less productive households"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c3",
          "name": "Beren",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "seed and threshing keeper",
          "goals": [
            "protect seed and dry handling"
          ],
          "fears": [
            "eating next year’s seed to conceal a shortfall"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c4",
          "name": "Osa",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "goat and pack handler",
          "goals": [
            "use modest transport reliably"
          ],
          "fears": [
            "overloaded animals on wet slopes"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c5",
          "name": "Leth",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "storehouse keeper",
          "goals": [
            "separate good grain from damp lots"
          ],
          "fears": [
            "being blamed before the stores are inspected"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-c6",
          "name": "Jun",
          "status": "ACTIVE",
          "home_place_id": "high-barley",
          "role": "spring and ford watcher",
          "goals": [
            "keep safe water and a usable descent"
          ],
          "fears": [
            "a crossing attempted during rising water"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-leader",
          "name": "Leader of Ternhaven",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "Recognized player leader with modern memories",
          "goals": [
            "Determined by isolated player submissions"
          ],
          "fears": [
            "Not prescribed"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c1",
          "name": "Del",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "keeper of hospitality customs",
          "goals": [
            "honor a bounded welcome without shame"
          ],
          "fears": [
            "a visitor turned away in immediate danger"
          ],
          "relationships": [
            "ternhaven-r1"
          ],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c2",
          "name": "Ves",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "household stores speaker",
          "goals": [
            "protect resident meals and dry beds"
          ],
          "fears": [
            "open-ended promises charged to unwilling homes"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c3",
          "name": "Ruan",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "net and landing captain",
          "goals": [
            "keep crews fishing and landings orderly"
          ],
          "fears": [
            "hosting duties swallowing safe fishing days"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c4",
          "name": "Kiri",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "boat and mooring tender",
          "goals": [
            "inspect gear before winter strain"
          ],
          "fears": [
            "being pressured to launch with suspect rope"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c5",
          "name": "Seli",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "alder-path guide",
          "goals": [
            "make careful journeys with clear return terms"
          ],
          "fears": [
            "being treated as an unlimited messenger"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-c6",
          "name": "Wen",
          "status": "ACTIVE",
          "home_place_id": "ternhaven",
          "role": "well and hearth keeper",
          "goals": [
            "maintain water and clean sleeping spaces"
          ],
          "fears": [
            "crowding around damp bedding"
          ],
          "relationships": [],
          "initiative": "May continue familiar tasks, inspect an observed problem, warn or appeal within known local capacity. No unobserved plans or foreign secrets are known.",
          "red_line": "Will object to immediate unsupported danger; further escalation requires established cause and means.",
          "escalation_position": "Ordinary cooperation with voiced local disagreement; no violent mobilization.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "visitor-ressa",
          "name": "Ressa",
          "status": "ACTIVE",
          "home_place_id": "sound",
          "role": "Independent seasonal basket mender traveling with two adult kin",
          "goals": [
            "Trade repairs for food while keeping the party safe"
          ],
          "fears": [
            "Being stranded after a refused open-ended demand"
          ],
          "relationships": [],
          "initiative": "Currently outside the immediate village routes on the southern coast. May approach Ternhaven during a suitable autumn travel window, carrying only personally observed news. No compulsory arrival; no knowledge of current private village conflicts.",
          "red_line": "Will not accept indefinite forced labor.",
          "escalation_position": "Small unarmed traveling household; bargaining or departure, no capacity to seize a village.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "factions": [
        {
          "id": "saltmere-households",
          "name": "Saltmere households",
          "scope": "LOCAL",
          "member_summary": "Resident households with differing labor, food and care interests; not a unanimous bloc.",
          "leader_ids": [
            "saltmere-c1",
            "saltmere-c2"
          ],
          "interests": [
            "Household safety",
            "Credible allocation of finite labor"
          ],
          "controlled_resources": [
            "Household work time and customary shares"
          ],
          "current_agenda": "Nessa, who tends the pans, asks for the dry billets promised at the last gathering. Orin, whose household fishes, points at the smoking rack and says fish will spoil if the pans take everything. Neither claims that all production must continue: both want the cost of a reduction to be acknowledged. Several families will work on either task, but cannot do both at once.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-households",
          "name": "Keelstrand households",
          "scope": "LOCAL",
          "member_summary": "Resident households with differing labor, food and care interests; not a unanimous bloc.",
          "leader_ids": [
            "keelstrand-c1",
            "keelstrand-c2"
          ],
          "interests": [
            "Household safety",
            "Credible allocation of finite labor"
          ],
          "controlled_resources": [
            "Household work time and customary shares"
          ],
          "current_agenda": "Mara promised Arel and the fishing households a sound boat before the late-autumn runs. Arel has helped feed the yard and wants that promise kept. Tor asks that roof crews come first, showing you the wet blanket. Mara says the hull can be safely paused if covered; finishing it while making every roof sound will require more skilled hands than the yard has.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-households",
          "name": "High Barley households",
          "scope": "LOCAL",
          "member_summary": "Resident households with differing labor, food and care interests; not a unanimous bloc.",
          "leader_ids": [
            "high-barley-c1",
            "high-barley-c2"
          ],
          "interests": [
            "Household safety",
            "Credible allocation of finite labor"
          ],
          "controlled_resources": [
            "Household work time and customary shares"
          ],
          "current_agenda": "Hesta wants every able pair of hands in the fields during this dry interval. Cal reminds her that dependents still need feeding and tending, and brings you the unfilled household rota. Beren says some sheaves can wait, but not all the exposed crop through repeated rain. Counting caregivers twice will not bring the grain in sooner.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-households",
          "name": "Ternhaven households",
          "scope": "LOCAL",
          "member_summary": "Resident households with differing labor, food and care interests; not a unanimous bloc.",
          "leader_ids": [
            "ternhaven-c1",
            "ternhaven-c2"
          ],
          "interests": [
            "Household safety",
            "Credible allocation of finite labor"
          ],
          "controlled_resources": [
            "Household work time and customary shares"
          ],
          "current_agenda": "Del recalls an old obligation to give seasonal visitors a dry first night and a meal. Ves asks whether an old welcome now means feeding whoever arrives all winter. No visitors are presently here and no arrival date is agreed. Ruan says limits spoken before arrival would be easier to honor than angry exclusions at the door.",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "facts": [
        {
          "id": "saltmere-scene",
          "subject_id": "saltmere",
          "statement": "A gust carries white dust across the salt shed. At the hearth, two women hold opposite ends of the same split log. Neither pulls. Beyond them, wet nets drip onto the earth, and people stop talking when you step through the doorway.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-premise",
          "subject_id": "saltmere",
          "statement": "You have awakened without memory of your old identity. You remember ordinary life in a modern society, but no modern equipment has come with you. The 151 people here treat you as their leader. Specific skills may be established through what you credibly attempt; doing or teaching work takes time.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-calendar",
          "subject_id": "saltmere",
          "statement": "It is Early autumn, Year 1 (Y01-M07). The mornings are cool, with intermittent rain and occasional drying days. People expect wetter mid-autumn, stronger late-autumn winds, then short winter days, frost and occasional snow. Sea ice is not dependable. Weather can interrupt outdoor drying and travel; no particular storm or loss is foretold. Preparing roofs, fuel and stores now can work.",
          "domain": "WEATHER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-map",
          "subject_id": "saltmere",
          "statement": "Your village stands on the western shallows of a narrow sound. Brine pools lie east, garden strips on the low rise west, and a coppice beyond them. A shingle path leads north to an empty marker beach; reeds conceal the shore south. The tidal mud looks walkable from above but holds deep runnels. Your two shallow fishing skiffs can follow the western shore in settled weather; neither is suited to an exposed crossing in a gale.",
          "domain": "GEOGRAPHY",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-conditions",
          "subject_id": "saltmere",
          "statement": "The storekeeper shows you dry fish, peas and barley sufficient for several weeks of ordinary meals, with garden roots still to lift. There are spare salt cakes, working pans, repairable nets, hand axes and few spare cutting edges. No forge operates here. The dry wood stack cannot sustain both full salt boiling and the customary smoking of the autumn catch. Willow cutting and air drying can add future fuel, but fresh wood will not immediately replace dry billets. Houses are standing; two thatched roofs need patching. Drinking water comes from a spring above the pools. There is no present outbreak or organized armed threat.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-dispute",
          "subject_id": "saltmere",
          "statement": "Nessa, who tends the pans, asks for the dry billets promised at the last gathering. Orin, whose household fishes, points at the smoking rack and says fish will spoil if the pans take everything. Neither claims that all production must continue: both want the cost of a reduction to be acknowledged. Several families will work on either task, but cannot do both at once.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-warning",
          "subject_id": "saltmere",
          "statement": "After the last high tide, a thin damp line remained under the western pan bank. Fen says the bank has held for years but asks to inspect it at low water before another full boiling. You can see the line; you do not yet know what lies inside the bank.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-opportunity",
          "subject_id": "saltmere",
          "statement": "Sava has woven a small raised drying rack whose fish stayed clean during the last fair spell. It has not been tested through prolonged rain. A sheltered clay hollow could store covered firewood if drained. These are possibilities for patient local work, not reasons you must leave home.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-neighbors",
          "subject_id": "saltmere",
          "statement": "Evi shows you a shaped timber offcut washed onto the marker beach, bearing three chisel notches. From the rise, on clear mornings, you can see smoke north across the creek but cannot count houses. Evi has previously walked as far as the empty marker beach, half a fair-weather day north, and knows its tide retreat. She offers to guide a small party there or carry a message if you choose. No meeting or reply is promised.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-custom",
          "subject_id": "saltmere",
          "statement": "At fuel allocations, each hearth lays a stone beside the claimant it supports. The stones witness a promise; they do not give every household a veto. People currently accept your leadership and await a decision. You may keep work local, change priorities or seek information without promising anyone a grand new order.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-contacts",
          "subject_id": "saltmere",
          "statement": "Nessa is your pan tender. Orin is your net captain. Sava is your basket and drying-rack maker. Fen is your bank and water keeper. Evi is your shore walker. Daro is your storekeeper.",
          "domain": "CHARACTER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player1"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-concealed",
          "subject_id": "saltmere",
          "statement": "A burrowing channel runs inside the western pan bank; it has not reached the spring. Fen knows only the damp line, not the channel. Inspection and packing can contain it; repeated full pans during high tides without repairs can widen seepage and lose brine or work time. Collapse, injury or spring contamination is not automatic.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "saltmere-capacity",
          "subject_id": "saltmere",
          "statement": "151 residents, roughly 78 adults able to share heavy work; caregiving and meals occupy a substantial part of every day. Existing food about six weeks at ordinary consumption, with dependable small catches and roots if local labor continues. Dry fuel about six weeks for cooking alone or three with both industries at full rate; reduced salt output and air drying can preserve independent winter viability. No numeric automatic depletion rule.",
          "domain": "RESOURCE",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-scene",
          "subject_id": "keelstrand",
          "statement": "Rain has stopped on the half-built hull. Under its ribs, a child has arranged little boats from scraps. Above you, a roof mat lifts in the wind. A carpenter sets down her adze when the shelter keeper brings a leaking sleeping blanket into the boat shed.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-premise",
          "subject_id": "keelstrand",
          "statement": "You have awakened without memory of your old identity. You remember ordinary life in a modern society, but no modern equipment has come with you. The 149 people here treat you as their leader. Specific skills may be established through what you credibly attempt; doing or teaching work takes time.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-calendar",
          "subject_id": "keelstrand",
          "statement": "It is Early autumn, Year 1 (Y01-M07). The mornings are cool, with intermittent rain and occasional drying days. People expect wetter mid-autumn, stronger late-autumn winds, then short winter days, frost and occasional snow. Sea ice is not dependable. Weather can interrupt outdoor drying and travel; no particular storm or loss is foretold. Preparing roofs, fuel and stores now can work.",
          "domain": "WEATHER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-map",
          "subject_id": "keelstrand",
          "statement": "Your settlement occupies the northern timbered creek of the sound. The boat shed sits above the tide; the nearest straight timber grows uphill and must be dragged down a stony track. A western shore path reaches an empty marker beach in half a fair-weather day. A pack trail climbs southeast toward grazing country. Beyond its first ridge you have no current map. Your old fishing boat works within the creek; the unfinished larger boat cannot yet float.",
          "domain": "GEOGRAPHY",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-conditions",
          "subject_id": "keelstrand",
          "statement": "Households have dried fish, beans and roots sufficient for several weeks, with garden crops still available. Timber and seasoned offcuts are plentiful by coastal standards, but sound cordage, resin and sharp tool edges are limited. Roof thatch is gathered but needs hands to tie it. Four houses leak over sleeping places. Most villagers are healthy; Pell is nursing a strained wrist and cannot haul beams. There is no standing force beyond ordinary watch and hunting tools.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-dispute",
          "subject_id": "keelstrand",
          "statement": "Mara promised Arel and the fishing households a sound boat before the late-autumn runs. Arel has helped feed the yard and wants that promise kept. Tor asks that roof crews come first, showing you the wet blanket. Mara says the hull can be safely paused if covered; finishing it while making every roof sound will require more skilled hands than the yard has.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-warning",
          "subject_id": "keelstrand",
          "statement": "Ivo points out powder beneath one old shed brace and a change in the door gap after rain. The shed still stands. Nobody has opened the brace to see how deep the damage goes. A heavy lift beneath it could be postponed, shored or inspected.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-opportunity",
          "subject_id": "keelstrand",
          "statement": "Offcuts can repair smaller craft or make simple sled runners. Pell can demonstrate clean lashings while seated; training will occupy both learners and teacher. Covering the hull and renegotiating its delivery would preserve the investment, though people may disagree over what is owed.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-neighbors",
          "subject_id": "keelstrand",
          "statement": "Venn brings a sack with barley husks caught in its seams, found beside the uphill pack trail, and recalls hearing a distant stock bell there before the last rain. Ivo has walked the western route to the marker beach, half a day away, where salt-smelling cord was once tied around a stake. Neither knows a neighboring leader or their current needs. You could investigate a route, send a bounded message or remain home. A small party following the pack trail can reach the first ridge in a day and return before dark only if it turns back early.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-custom",
          "subject_id": "keelstrand",
          "statement": "Promises made in the yard are spoken over a laid keel with witnesses. Changed circumstances can reopen terms; that does not make the first promise imaginary. Households accept your authority, while expecting you to say whose work waits.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-contacts",
          "subject_id": "keelstrand",
          "statement": "Mara is your master carpenter. Arel is your fishing household speaker. Tor is your shelter keeper. Ivo is your timber and path scout. Pell is your rope worker with a strained wrist. Venn is your garden and pack keeper.",
          "domain": "CHARACTER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player2"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-concealed",
          "subject_id": "keelstrand",
          "statement": "Rot is deep at the foot of the old shed brace but the adjacent frame remains sound. Ivo has observed powder and door movement only. An unsupported heavy hull lift can buckle this brace; inspection or temporary shores substantially reduce that risk. No sabotage, concealed enemy or inevitable collapse exists.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-capacity",
          "subject_id": "keelstrand",
          "statement": "149 residents, about 76 adults sharing heavy work. Food about six weeks plus garden roots and creek fishing; fuel adequate for ordinary cooking and partial heating with replenishment from managed offcuts. A dry local winter is feasible by staging the boat and roofs. Finishing hull requires the scarce carpenter plus several helpers for much of the month; full roof repair competes for that labor.",
          "domain": "RESOURCE",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-scene",
          "subject_id": "high-barley",
          "statement": "Cut stalks rasp against your legs on the path into the yard. A row of sheaves waits outside the storehouse. At the threshing cloth, a tired man rocks a sleeping child with one foot while keeping grain away from the damp edge.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-premise",
          "subject_id": "high-barley",
          "statement": "You have awakened without memory of your old identity. You remember ordinary life in a modern society, but no modern equipment has come with you. The 153 people here treat you as their leader. Specific skills may be established through what you credibly attempt; doing or teaching work takes time.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-calendar",
          "subject_id": "high-barley",
          "statement": "It is Early autumn, Year 1 (Y01-M07). The mornings are cool, with intermittent rain and occasional drying days. People expect wetter mid-autumn, stronger late-autumn winds, then short winter days, frost and occasional snow. Sea ice is not dependable. Weather can interrupt outdoor drying and travel; no particular storm or loss is foretold. Preparing roofs, fuel and stores now can work.",
          "domain": "WEATHER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-map",
          "subject_id": "high-barley",
          "statement": "Your village lies on a southern upland shelf above the eastern side of the sound. Fields surround the houses; rough grazing and a spring lie uphill. A pack trail runs northwest over a ridge; another descends east through alder ground toward distant coastal smoke. A small stream ford near the east descent rises after rain. You own pack goats and hauling frames, not a seaworthy boat. No coast-to-coast shortcut crosses the steep central ravine.",
          "domain": "GEOGRAPHY",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-conditions",
          "subject_id": "high-barley",
          "statement": "The standing barley is ripe. Covered old grain and beans will feed ordinary meals for several weeks, with milk, roots and a modest flock besides. A successful local harvest would cover winter eating and next year’s seed; the margin depends on drying and preserving the crop. Seed is kept separately by custom. Sickles, threshing cloths and baskets work, but dry covered floor space is tight. Homes are weatherproof except for minor eave leaks. Several caregivers are exhausted; there is no epidemic or present military threat.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-dispute",
          "subject_id": "high-barley",
          "statement": "Hesta wants every able pair of hands in the fields during this dry interval. Cal reminds her that dependents still need feeding and tending, and brings you the unfilled household rota. Beren says some sheaves can wait, but not all the exposed crop through repeated rain. Counting caregivers twice will not bring the grain in sooner.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-warning",
          "subject_id": "high-barley",
          "statement": "An earthy smell rises from the lowest store bay after rain, and one sack has a dark patch underneath. Leth says the upper racks smell clean. The smell is evidence of damp, not proof that all grain is spoiled; an inspection can distinguish usable stores from damaged portions.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-opportunity",
          "subject_id": "high-barley",
          "statement": "A disused wool loft could take raised drying hurdles if cleared and kept ventilated. Osa can use the goats to shift small loads without pulling every caregiver into the fields. A smaller surplus may be a sound choice if it preserves care and seed.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-neighbors",
          "subject_id": "high-barley",
          "statement": "Osa found fresh pack impressions on the northwest ridge trail; their destination is beyond the village’s current map. On clear evenings, Jun sees smoke east below the alder descent and has heard gulls and a carried bell. Jun knows the ford and can lead a cautious descent to an empty lower meadow in a day. A message party could continue toward the smoke after checking the route, but no neighbor’s reception or stores are known. You need not make that journey during harvest.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-custom",
          "subject_id": "high-barley",
          "statement": "At harvest, households set aside a covered bowl for those who cannot come to the field. The bowl is a witnessed obligation rather than a claim that care takes no work. People accept your leadership but watch who is asked to carry the burden.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-contacts",
          "subject_id": "high-barley",
          "statement": "Hesta is your field steward. Cal is your care rota keeper. Beren is your seed and threshing keeper. Osa is your goat and pack handler. Leth is your storehouse keeper. Jun is your spring and ford watcher.",
          "domain": "CHARACTER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player3"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-concealed",
          "subject_id": "high-barley",
          "statement": "A cracked buried drain directs rainwater beneath the lowest store bay. Leth knows the smell and dark sack but not the buried crack. Untreated damp can spoil that bay gradually. Raised storage, sorting, drainage or using the loft can contain loss; it does not justify declaring the whole harvest poisoned.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-capacity",
          "subject_id": "high-barley",
          "statement": "153 residents, about 79 adults available across heavy work and care. Old food five weeks plus milk and roots; harvest potential enough for six winter months and protected seed, but sustained rain and drying labor constrain the usable surplus. Fuel from local brush and managed woodland is adequate with gathering. A smaller surplus and bounded care rota are independently viable.",
          "domain": "RESOURCE",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-scene",
          "subject_id": "ternhaven",
          "statement": "A kettle swings above the landing hearth while the inlet lies still beyond the bar. Beside it, spare sleeping mats are stacked against sacks of meal. The person counting the mats has stopped at the same place twice. Out on the beach, a net crew waves you toward a catch that needs sorting.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-premise",
          "subject_id": "ternhaven",
          "statement": "You have awakened without memory of your old identity. You remember ordinary life in a modern society, but no modern equipment has come with you. The 150 people here treat you as their leader. Specific skills may be established through what you credibly attempt; doing or teaching work takes time.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-calendar",
          "subject_id": "ternhaven",
          "statement": "It is Early autumn, Year 1 (Y01-M07). The mornings are cool, with intermittent rain and occasional drying days. People expect wetter mid-autumn, stronger late-autumn winds, then short winter days, frost and occasional snow. Sea ice is not dependable. Weather can interrupt outdoor drying and travel; no particular storm or loss is foretold. Preparing roofs, fuel and stores now can work.",
          "domain": "WEATHER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-map",
          "subject_id": "ternhaven",
          "statement": "Your village sits inside the southeastern hooked inlet. Its inner landing is sheltered; beyond the bar, wind and ebb can make even a short boat journey dangerous. An alder path climbs west to a stream ford and upland meadow. The coast curves north around the eastern arm of the sound. Two small fishing boats work near shore; you have no current safe-weather survey of the full sound.",
          "domain": "GEOGRAPHY",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-conditions",
          "subject_id": "ternhaven",
          "statement": "Dry fish, roots and barley meal support several weeks of ordinary meals. Local catches and root beds can sustain the community if crews retain time for them. Fuel and mending twine are adequate for ordinary work but not limitless. Most roofs are sound; the landing hall has a damp corner. The fresh-water well is uphill of the beach. A few children have seasonal coughs, with no evidence of an outbreak. Hospitality uses food, dry space and labor that are already doing other work.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-dispute",
          "subject_id": "ternhaven",
          "statement": "Del recalls an old obligation to give seasonal visitors a dry first night and a meal. Ves asks whether an old welcome now means feeding whoever arrives all winter. No visitors are presently here and no arrival date is agreed. Ruan says limits spoken before arrival would be easier to honor than angry exclusions at the door.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-warning",
          "subject_id": "ternhaven",
          "statement": "Kiri shows you a pale frayed strand in the outer mooring rope and says the float jerked sharply on the last ebb. The rope still holds the small working boat. The cause and condition below water have not been inspected. The inner beach remains available for hauling boats above the tide.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-opportunity",
          "subject_id": "ternhaven",
          "statement": "An upper drying ledge could take racks without occupying guest space. Guests could be offered bounded work or service if they consent; there is no assurance any will come or accept. Maintaining local catches and limiting hospitality can be a complete strategy.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-neighbors",
          "subject_id": "ternhaven",
          "statement": "Seli saw smoke above the westward slope after the last clear evening and found barley husks beside the upper ford on an earlier walk. She can reach that ford in a day along the alder path. Del remembers traveling basket menders who sometimes use this landing in autumn, but knows neither their present position nor other leaders’ wishes. A shore or uphill message is possible if someone makes the journey. Smoke and old visits establish that you are not alone, not that a treaty exists.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-custom",
          "subject_id": "ternhaven",
          "statement": "The first guest meal is traditionally placed at the edge of the hearth where both host and visitor can see it. Older hosts disagree about what follows that first night. You hold the recognized leadership seat; an honest limit, a negotiated welcome or a quiet month of local work remains yours to choose.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-contacts",
          "subject_id": "ternhaven",
          "statement": "Del is your keeper of hospitality customs. Ves is your household stores speaker. Ruan is your net and landing captain. Kiri is your boat and mooring tender. Seli is your alder-path guide. Wen is your well and hearth keeper.",
          "domain": "CHARACTER",
          "value": null,
          "visibility": {
            "scope": "PLAYERS",
            "player_ids": [
              "player4"
            ]
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-concealed",
          "subject_id": "ternhaven",
          "statement": "The mooring rope is rubbing against an old submerged stone edge outside the inner beach; no person has cut it. Kiri knows the fray and jerking only. Inspection, replacement or hauling inland can prevent a break. A break could lose gear if the outer mooring continues in rough ebb, but cannot on its own justify drowning a leader.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-capacity",
          "subject_id": "ternhaven",
          "statement": "150 residents, about 77 adults sharing heavy work and care. Food five to six weeks plus sustainable local fishing and roots if crews are maintained. Fuel enough for ordinary month with local replenishment. The hall can house a small visiting party briefly; prolonged support of a large party displaces resident stores and dry-space uses. Refusing future nonemergency hospitality carries no automatic survival penalty.",
          "domain": "RESOURCE",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "sound-geography",
          "subject_id": "sound",
          "statement": "Objective geography: Saltmere on west shallows; Keelstrand at north creek; High Barley on southeast upland shelf; Ternhaven inside southeast hook below High Barley. Saltmere–Keelstrand shore trail takes one fair-weather day, with marker beach midway. Keelstrand–High Barley ridge pack trail takes two fair-weather days one way; High Barley–Ternhaven alder/ford path takes two fair-weather days one way, lower meadow/ford midway. Keelstrand–Ternhaven shore boat journey takes two daylight stages in settled weather, with beach stops; Saltmere–Ternhaven takes two daylight stages around shore or one exposed day across sound in suitable craft and weather. Listed craft support sheltered legs, not automatic exposed crossings. Heavy loads roughly double walking times. Rain can close the ford for a day or more; riders must inspect water level. Winter journeys need dry stores, companions and turnback margins, often doubling fair-weather times. Every community has at least one locally known approach to a connecting route, so a deliberate bounded expedition can make contact by Turn 002, or earlier if supported. No leader knows exact foreign geography from this fact.",
          "domain": "GEOGRAPHY",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "sound-weather-range",
          "subject_id": "sound",
          "statement": "Calendar Y01-M07 to M12: early, mid, late autumn then early, mid, late winter. Seasonal rain, gusts, frost and occasional snow constrain drying, fishing, care and travel. Do not prescribe a catastrophe. Establish actual weather and consequences during adjudication, preserve sensible preparation, and do not add new survival mechanics.",
          "domain": "WEATHER",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "sound-visitors",
          "subject_id": "sound",
          "statement": "Ressa and two adult kin are independent seasonal basket menders south along the coast. Del recalls past traveling menders but has no current location or arrival commitment. They can bring only directly observed route conditions and voluntary messages. Their agency is conditional, not a scheduled encounter. No external army, organized predatory faction, magic, or predetermined winner exists.",
          "domain": "WORLD",
          "value": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "knowledge": [
        {
          "id": "K-saltmere-scene",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-scene",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-premise",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-premise",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-calendar",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-calendar",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-map",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-map",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-conditions",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-conditions",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-dispute",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-dispute",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-warning",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-warning",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-opportunity",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-opportunity",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-neighbors",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-neighbors",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-custom",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-custom",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-saltmere-contacts",
          "holder_id": "saltmere-leader",
          "player_id": "player1",
          "fact_id": "saltmere-contacts",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-scene",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-scene",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-premise",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-premise",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-calendar",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-calendar",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-map",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-map",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-conditions",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-conditions",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-dispute",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-dispute",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-warning",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-warning",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-opportunity",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-opportunity",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-neighbors",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-neighbors",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-custom",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-custom",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-keelstrand-contacts",
          "holder_id": "keelstrand-leader",
          "player_id": "player2",
          "fact_id": "keelstrand-contacts",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-scene",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-scene",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-premise",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-premise",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-calendar",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-calendar",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-map",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-map",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-conditions",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-conditions",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-dispute",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-dispute",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-warning",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-warning",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-opportunity",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-opportunity",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-neighbors",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-neighbors",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-custom",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-custom",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-high-barley-contacts",
          "holder_id": "high-barley-leader",
          "player_id": "player3",
          "fact_id": "high-barley-contacts",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-scene",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-scene",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-premise",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-premise",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-calendar",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-calendar",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-map",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-map",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-conditions",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-conditions",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-dispute",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-dispute",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-warning",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-warning",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-opportunity",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-opportunity",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-neighbors",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-neighbors",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-custom",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-custom",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        },
        {
          "id": "K-ternhaven-contacts",
          "holder_id": "ternhaven-leader",
          "player_id": "player4",
          "fact_id": "ternhaven-contacts",
          "epistemic_status": "OBSERVED",
          "confidence": "CONFIRMED",
          "source_type": "INITIAL",
          "propagation_path": [],
          "learned_turn": 0
        }
      ],
      "relationships": [
        {
          "id": "saltmere-r1",
          "source_id": "saltmere-c1",
          "target_id": "saltmere-c2",
          "basis": "Nessa, who tends the pans, asks for the dry billets promised at the last gathering. Orin, whose household fishes, points at the smoking rack and says fish will spoil if the pans take everything. Neither claims that all production must continue: both want the cost of a reduction to be acknowledged. Several families will work on either task, but cannot do both at once.",
          "stance": "Disagrees over the present allocation, while accepting ordinary discussion.",
          "intensity": "MATERIAL",
          "confidence": "CONFIRMED",
          "obligation_ids": [
            "saltmere-custom"
          ],
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-r1",
          "source_id": "keelstrand-c1",
          "target_id": "keelstrand-c2",
          "basis": "Mara promised Arel and the fishing households a sound boat before the late-autumn runs. Arel has helped feed the yard and wants that promise kept. Tor asks that roof crews come first, showing you the wet blanket. Mara says the hull can be safely paused if covered; finishing it while making every roof sound will require more skilled hands than the yard has.",
          "stance": "Disagrees over the present allocation, while accepting ordinary discussion.",
          "intensity": "MATERIAL",
          "confidence": "CONFIRMED",
          "obligation_ids": [
            "keelstrand-custom"
          ],
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-r1",
          "source_id": "high-barley-c1",
          "target_id": "high-barley-c2",
          "basis": "Hesta wants every able pair of hands in the fields during this dry interval. Cal reminds her that dependents still need feeding and tending, and brings you the unfilled household rota. Beren says some sheaves can wait, but not all the exposed crop through repeated rain. Counting caregivers twice will not bring the grain in sooner.",
          "stance": "Disagrees over the present allocation, while accepting ordinary discussion.",
          "intensity": "MATERIAL",
          "confidence": "CONFIRMED",
          "obligation_ids": [
            "high-barley-custom"
          ],
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-r1",
          "source_id": "ternhaven-c1",
          "target_id": "ternhaven-c2",
          "basis": "Del recalls an old obligation to give seasonal visitors a dry first night and a meal. Ves asks whether an old welcome now means feeding whoever arrives all winter. No visitors are presently here and no arrival date is agreed. Ruan says limits spoken before arrival would be easier to honor than angry exclusions at the door.",
          "stance": "Disagrees over the present allocation, while accepting ordinary discussion.",
          "intensity": "MATERIAL",
          "confidence": "CONFIRMED",
          "obligation_ids": [
            "ternhaven-custom"
          ],
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "institutions": [],
      "obligations": [
        {
          "id": "saltmere-custom",
          "party_ids": [
            "saltmere-c1",
            "saltmere-c2",
            "saltmere-leader"
          ],
          "terms": "At fuel allocations, each hearth lays a stone beside the claimant it supports. The stones witness a promise; they do not give every household a veto. People currently accept your leadership and await a decision. You may keep work local, change priorities or seek information without promising anyone a grand new order.",
          "status": "ACTIVE",
          "witness_ids": [
            "saltmere-c3"
          ],
          "due_key": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-custom",
          "party_ids": [
            "keelstrand-c1",
            "keelstrand-c2",
            "keelstrand-leader"
          ],
          "terms": "Promises made in the yard are spoken over a laid keel with witnesses. Changed circumstances can reopen terms; that does not make the first promise imaginary. Households accept your authority, while expecting you to say whose work waits.",
          "status": "ACTIVE",
          "witness_ids": [
            "keelstrand-c3"
          ],
          "due_key": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-custom",
          "party_ids": [
            "high-barley-c1",
            "high-barley-c2",
            "high-barley-leader"
          ],
          "terms": "At harvest, households set aside a covered bowl for those who cannot come to the field. The bowl is a witnessed obligation rather than a claim that care takes no work. People accept your leadership but watch who is asked to carry the burden.",
          "status": "ACTIVE",
          "witness_ids": [
            "high-barley-c3"
          ],
          "due_key": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-custom",
          "party_ids": [
            "ternhaven-c1",
            "ternhaven-c2",
            "ternhaven-leader"
          ],
          "terms": "The first guest meal is traditionally placed at the edge of the hearth where both host and visitor can see it. Older hosts disagree about what follows that first night. You hold the recognized leadership seat; an honest limit, a negotiated welcome or a quiet month of local work remains yours to choose.",
          "status": "ACTIVE",
          "witness_ids": [
            "ternhaven-c3"
          ],
          "due_key": null,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "pressures": [
        {
          "id": "saltmere-pressure",
          "subject_id": "saltmere",
          "name": "Opening allocation conflict",
          "state": "Nessa, who tends the pans, asks for the dry billets promised at the last gathering. Orin, whose household fishes, points at the smoking rack and says fish will spoil if the pans take everything. Neither claims that all production must continue: both want the cost of a reduction to be acknowledged. Several families will work on either task, but cannot do both at once.",
          "progress": null,
          "maximum": null,
          "status": "ACTIVE",
          "last_updated_turn": 0,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "keelstrand-pressure",
          "subject_id": "keelstrand",
          "name": "Opening allocation conflict",
          "state": "Mara promised Arel and the fishing households a sound boat before the late-autumn runs. Arel has helped feed the yard and wants that promise kept. Tor asks that roof crews come first, showing you the wet blanket. Mara says the hull can be safely paused if covered; finishing it while making every roof sound will require more skilled hands than the yard has.",
          "progress": null,
          "maximum": null,
          "status": "ACTIVE",
          "last_updated_turn": 0,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "high-barley-pressure",
          "subject_id": "high-barley",
          "name": "Opening allocation conflict",
          "state": "Hesta wants every able pair of hands in the fields during this dry interval. Cal reminds her that dependents still need feeding and tending, and brings you the unfilled household rota. Beren says some sheaves can wait, but not all the exposed crop through repeated rain. Counting caregivers twice will not bring the grain in sooner.",
          "progress": null,
          "maximum": null,
          "status": "ACTIVE",
          "last_updated_turn": 0,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        },
        {
          "id": "ternhaven-pressure",
          "subject_id": "ternhaven",
          "name": "Opening allocation conflict",
          "state": "Del recalls an old obligation to give seasonal visitors a dry first night and a meal. Ves asks whether an old welcome now means feeding whoever arrives all winter. No visitors are presently here and no arrival date is agreed. Ruan says limits spoken before arrival would be easier to honor than angry exclusions at the door.",
          "progress": null,
          "maximum": null,
          "status": "ACTIVE",
          "last_updated_turn": 0,
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "rules": [
        {
          "id": "saltwind-baseline",
          "name": "Frozen v0.2 simulation baseline",
          "status": "ACTIVE",
          "scope": "CAMPAIGN",
          "effect": "Mundane causality; 1500 words; simultaneous monthly turns; six anchored scores and P=.65 mean+.35 minimum; causal uncertainty target and prerequisites; persistent bounded character agency; privacy; specific AI_GM elimination and emergent activation gates within SIMULATION only. General mechanics fixed; source rules bundle supplies detail.",
          "approval_id": "SIM-BOOTSTRAP-saltwind-sound-01",
          "visibility": {
            "scope": "GM_ONLY",
            "player_ids": []
          },
          "provenance": {
            "source_kind": "PRIOR_STATE",
            "source_ids": [
              "SALTWIND-INITIALIZATION"
            ]
          }
        }
      ],
      "attractors": [],
      "decisions": [],
      "approvals": [
        {
          "id": "SIM-BOOTSTRAP-saltwind-sound-01",
          "kind": "RULE_ACTIVATION",
          "authority": "SIMULATION_POLICY",
          "approved_at": "2026-09-07T16:18:33.294Z",
          "target_ids": [
            "saltwind-baseline"
          ],
          "scope": "Run configuration imports the selected rules as simulation baseline only."
        }
      ],
      "state_changes": [],
      "results": [],
      "deliveries": []
    },
    "analysis": {
      "analyses": [
        {
          "agency": "Fen welcomes low-water inspection and clay reinforcement, feeling heard. Nessa accepts the fuel reduction because her skilled role is honored with test boiling, solar work, and salt curing. Orin is satisfied that fish take priority over industrial salt. Sava takes pride in rack improvements. Evi follows strict observational orders at the marker beach. Household tension subsides under fair compromise.",
          "interpretation": "The leader addresses the fuel shortage by prioritizing dry billets for smoking the autumn catch while suspending full pan boiling. Fen and the leader inspect the western pan bank at low water and reinforce it with clay and sod before authorizing any boiling. Nessa's crew maintains solar brine shallows and uses existing salt cakes to dry-salt fish. Sava builds canopied drying racks. Daro lifts garden roots and inventories stores. Reed teams patch two roofs, willow coppicing begins with a drained seasoning hollow, and Evi conducts a strictly observational scout north to the marker beach.",
          "intrinsic_range": "High intrinsic feasibility. Shifting billets to smoking and utilizing cold dry-salting prevents fish spoilage without exceeding wood reserves. Inspecting and packing the bank easily detects the concealed burrow before structural failure. Coppicing and trenching are well within village labor capacity, and observational shore scouting carries minimal risk under fair autumn weather.",
          "player_id": "player1",
          "scores": [
            {
              "evidence": "Sets an unambiguous primary direction prioritizing fish smoking over salt boiling while explicitly protecting pan bank integrity. Instructions to Fen, Nessa, Orin, Sava, Daro, and Evi are mutually compatible with clear completion conditions.",
              "score": 4
            },
            {
              "evidence": "Disciplined attention: explicitly pauses full salt boiling to concentrate labor and fuel on catch preservation, root harvesting, and drainage, deferring outward expansion and keeping scouting strictly bounded and observational.",
              "score": 4
            },
            {
              "evidence": "Assigns specific owners across all tasks (Fen, Nessa, Orin, Sava, Daro, Evi). Sequences bank inspection before heavy boiling and hollow drainage before wood stacking, aligning labor across simultaneous operations.",
              "score": 4
            },
            {
              "evidence": "Deeply integrates Saltmere facts: addresses the damp pan line, matches fuel to store capacity, employs dry salt cakes to stretch billets, patches roofs with marsh reed, and respects terrain constraints.",
              "score": 5
            },
            {
              "evidence": "Skillfully honors the stone-laying fuel custom by placing stones for Orin and between claimants, validating Nessa's skilled work with test boiling and dry salting, preventing household grievance through transparent compromise.",
              "score": 4
            },
            {
              "evidence": "Establishes clear feedback loops: inspecting seepage at spring low tide before authorizing boiling, testing Sava's canopied racks against drizzle, and providing strict retreat and non-engagement rules for Evi's patrol.",
              "score": 4
            }
          ]
        },
        {
          "agency": "Arel accepts hull deferral due to guaranteed food shares, dry sleeping spaces, and an overhauled fishing craft. Mara appreciates protecting the hull from rot rather than rushing defective work. Tor secures dry homes for the vulnerable. Pell finds meaningful authority teaching youth despite his wrist. Ivo diligently shores the brace and respects scouting boundaries.",
          "interpretation": "The leader halts construction of the large hull, sealing it under thatch, to divert carpentry and labor toward repairing four leaking roofs and overhauling the existing fishing boat. Arel's fishing households are compensated with guaranteed garden rations and priority roof repairs. Mara and Ivo shore the boat shed's rotting brace with temporary props before lifting. Pell conducts a seated lashing school for apprentices to supply roof ties and cordage inspection. Heavy offcuts become drag-sleds. Venn lifts roots and beans into straw pits. Ivo scouts the southeast trail to the ridge line with a mandatory midday return.",
          "intrinsic_range": "High intrinsic feasibility. Pausing the hull removes the primary labor bottleneck, allowing thatch tying and old boat overhaul to proceed simultaneously. Shoring the shed corner prevents brace collapse during autumn winds. Drag-sleds reduce rope wear on stony tracks. A single-day ridge scout with a midday turnaround is completely safe in early autumn.",
          "player_id": "player2",
          "scores": [
            {
              "evidence": "Delivers clear, decisive instructions: safely pause big hull construction, overhaul the existing fishing boat, prioritize leaking sleeping quarters, and conduct bounded ridge and shore reconnaissance without ambiguity.",
              "score": 4
            },
            {
              "evidence": "Exceptional discipline under pressure: formally halts the primary capital project to protect four leaking roofs and food supply, explicitly deferring hull completion to spring and forbidding overnight travel on trails.",
              "score": 5
            },
            {
              "evidence": "Masterful coordination: pairs injured rope-worker Pell with apprentices to tie thatch, shapes sled runners from timber offcuts to ease hauling, and shores the suspect boat shed brace before any lifting occurs.",
              "score": 5
            },
            {
              "evidence": "Directly engages established reality: shores the powdering shed brace, uses Pell's teaching capacity despite his wrist injury, respects known timber dragging bottlenecks, and honors the laid-keel custom with witnesses.",
              "score": 5
            },
            {
              "evidence": "Exceptional conflict resolution: clasps hands over the keel, compensates fishing households with guaranteed garden rations and priority roof repairs, maintaining yard legitimacy while securing cooperation from competing factions.",
              "score": 5
            },
            {
              "evidence": "Sets concrete decision rules: inspect and sister the shed brace before resuming shed work, and enforces a mandatory midday turnaround for Ivo's ridge scout regardless of findings.",
              "score": 4
            }
          ]
        },
        {
          "agency": "Cal and exhausted caregivers feel deeply valued and relieved by protected rotas and communal child watching. Hesta accepts paced cutting because goat hauling keeps sheaves moving without field bottlenecks. Beren and Leth willingly organize the loft and dunnage, protecting seed grain. Jun faithfully observes the lower approaches from the safe shelf. Community solidarity is strongly reinforced.",
          "interpretation": "The leader establishes Cal's dependent care rota, gathers children and elders in central shelters, and strictly observes the covered bowl at meals. Barley harvesting is paced strictly to daily hauling and drying capacity during dry weather. Leth and the leader inspect the damp lower store bay, sorting spoiled grain and installing raised dunnage. Beren converts the disused wool loft into ventilated drying hurdles and marks upper seed racks. Osa uses pack goats with hauling frames to transport sheaves, while dwelling eaves are patched. Jun watches the spring and ford from above; outward journeys are refused.",
          "intrinsic_range": "Very high intrinsic feasibility. Pacing harvest to processing prevents crop spoilage outside. Dunnage and loft hurdles neutralize storehouse floor dampness from the buried cracked drain. Goat hauling relieves caregivers from heavy field labor. Refusing descent down the alder path conserves energy and avoids premature exposure.",
          "player_id": "player3",
          "scores": [
            {
              "evidence": "Establishes a coherent governing policy: pace the barley harvest strictly to drying and store throughput, protect dependent care, convert the wool loft, and prohibit premature external travel.",
              "score": 4
            },
            {
              "evidence": "Concentrates finite attention on food preservation and shelter integrity, explicitly refusing to send outward expeditions to the coast or lower meadow until winter stores and seed are secured.",
              "score": 4
            },
            {
              "evidence": "Deploys pack goats to haul sheaves from field margins, relieving caregivers; clears the wool loft for hurdle drying; and organizes communal dependent care in central sheltered spaces to free willing hands.",
              "score": 4
            },
            {
              "evidence": "Thoroughly grounded in High Barley's conditions: leverages pack goats on slopes, inspects the lower store bay dampness, marks upper seed racks, clears the disused wool loft, and upholds the covered-bowl custom.",
              "score": 5
            },
            {
              "evidence": "Resolves the core labor clash by formally establishing Cal's care rota and observing the traditional covered bowl, preventing caregiver burnout while honoring agricultural contributors, achieving village harmony without coercion.",
              "score": 5
            },
            {
              "evidence": "Paces harvesting to weather and drying space rather than blind cutting; sorts suspect grain for immediate consumption versus composting; and instructs lookouts to report ridge strangers without initiating contact.",
              "score": 4
            }
          ]
        },
        {
          "agency": "Del feels traditional hospitality is honored by the sacred first-night welcome. Ves and Ruan are reassured that winter stores and dry space will not be drained by idle visitors. Kiri appreciates the caution regarding the mooring rope. Seli undertakes the upland scout with clear boundaries, observing from cover and seeking peaceful engagement only with traveling artisans.",
          "interpretation": "The leader establishes a balanced hospitality doctrine: travelers receive an honorable first night with shelter and hearth food, followed by clear requirements for reciprocal labor or respectful departure with travel rations. Both fishing boats are hauled above high tide pending slack-water inspection and repair of the chafing mooring line. Ruan fishes safe inshore waters; drying racks are built on the upper ledge. Leaking hall roof seams are pitched, firewood stacked, roots harvested, and coughing children kept warm. Seli conducts a 3-day scout along the alder path toward the upper ford to investigate smoke and barley signs.",
          "intrinsic_range": "High intrinsic feasibility. Hauling boats inland immediately eliminates the danger of line parting on the submerged rock. Upper ledge racks prevent drying clutter in living quarters. Stating hospitality terms upfront avoids sudden conflict. A 3-day scout to the stream ford is well within the 1-day travel time along the alder path.",
          "player_id": "player4",
          "scores": [
            {
              "evidence": "Articulates a clear two-stage hospitality doctrine (unconditional first night, conditional second day work or departure) and establishes clear operational directives for boat hauling, ledge drying, and path scouting.",
              "score": 4
            },
            {
              "evidence": "Prioritizes immediate marine safety, food drying, and roof repair; bounds fishing strictly within the hooked inlet; and limits hospitality obligations to protect winter food stores.",
              "score": 4
            },
            {
              "evidence": "Coordinates immediate hauling of boats above high tide while scheduling calm slack-water inspection of the underwater mooring; assigns drying ledge construction, roof mending, and an alder path scout in parallel.",
              "score": 4
            },
            {
              "evidence": "Directly addresses the frayed mooring and underwater drag, uses the landing hearth custom, monitors seasonal coughs near hearths, protects the uphill wellhead, and recognizes the dangers of the inlet bar.",
              "score": 4
            },
            {
              "evidence": "Reconciles Del's hospitality tradition with Ves and Ruan's resource concerns by honoring initial welcome while setting transparent, dignified work terms for subsequent days, preventing bitter exclusion or overextension.",
              "score": 4
            },
            {
              "evidence": "Implements immediate preventative boat hauling pending mooring inspection, and gives Seli clear reconnaissance rules: observe from concealment, approach peaceful menders, but withdraw immediately from superior numbers or threats.",
              "score": 4
            }
          ]
        }
      ],
      "candidates": [
        {
          "affected_player_ids": [
            "player1"
          ],
          "alternatives": [
            "Enforce Nessa's prior fuel promise for full boiling, risking bank failure and rotting fish.",
            "Cancel pan maintenance entirely, alienating pan tenders and leaving bank seepage unaddressed."
          ],
          "established_fact_ids": [
            "saltmere-dispute",
            "saltmere-warning",
            "saltmere-concealed",
            "saltmere-conditions",
            "saltmere-custom"
          ],
          "id": "T001-D01",
          "recommendation": "Approve the compromise allocation: dry billets prioritized for fish smoking while boiling is paused; bank burrow inspected at low tide and packed with clay and sod; cold dry-salting and Sava's canopied racks absorb surplus catch; Evi conducts bounded marker beach scout.",
          "title": "Saltmere Fuel Allocation, Pan Bank Reinforcement, and Food Preservation",
          "type": "GROUPED_REVERSIBLE"
        },
        {
          "affected_player_ids": [
            "player2"
          ],
          "alternatives": [
            "Force continued construction of the large hull, leaving four homes leaking and risking shed brace collapse.",
            "Halt hull construction without compensatory food guarantees, alienating fishing households."
          ],
          "established_fact_ids": [
            "keelstrand-dispute",
            "keelstrand-warning",
            "keelstrand-concealed",
            "keelstrand-conditions",
            "keelstrand-custom"
          ],
          "id": "T001-D02",
          "recommendation": "Approve pausing the large hull with protective thatch, shoring the rotting shed brace before heavy work, using Pell's apprentices to tie thatch on leaking roofs, guaranteeing food shares to fishing households, and overhauling the old boat.",
          "title": "Keelstrand Hull Construction Pause, Shed Shoring, and Roofing Priority",
          "type": "GROUPED_REVERSIBLE"
        },
        {
          "affected_player_ids": [
            "player3"
          ],
          "alternatives": [
            "Force caregivers into field labor for an emergency harvest, causing household burnout and bottlenecked crop spoilage.",
            "Condemn the entire lower storehouse as poisoned, destroying salvageable grain needlessly."
          ],
          "established_fact_ids": [
            "high-barley-dispute",
            "high-barley-warning",
            "high-barley-concealed",
            "high-barley-conditions",
            "high-barley-custom"
          ],
          "id": "T001-D03",
          "recommendation": "Approve the protected care rota and covered bowl custom, pacing barley cutting to daily drying capacity; inspect the damp lower store bay and install dunnage while converting the wool loft to raised drying hurdles; refuse descent to the lower coast.",
          "title": "High Barley Care Rota Protection, Storehouse Salvage, and Harvest Pacing",
          "type": "GROUPED_REVERSIBLE"
        },
        {
          "affected_player_ids": [
            "player3",
            "player4"
          ],
          "alternatives": [
            "Treat the scout approach as a hostile raid, triggering armed alarm and withdrawal in High Barley.",
            "Force an immediate summit meeting between leaders, violating travel times and scout caution orders."
          ],
          "established_fact_ids": [
            "sound-geography",
            "high-barley-map",
            "ternhaven-map",
            "ternhaven-neighbors",
            "high-barley-neighbors"
          ],
          "id": "T001-D04",
          "recommendation": "Seli reaches the stream ford and meadow on a 3-day scout, finding signs of upland culture; Jun observes the approach from the high shelf above the ford. Distant visual recognition occurs without physical contact or treaty commitments, establishing mutual awareness.",
          "title": "Eastern Trail Reconnaissance: Ternhaven Alder Scout and High Barley Ford Surveillance",
          "type": "CROSS_PLAYER"
        },
        {
          "affected_player_ids": [
            "player4"
          ],
          "alternatives": [
            "Keep boats tied to the chafing mooring, risking line breakage and vessel loss during autumn ebb tides.",
            "Refuse all hospitality unconditionally, breaking custom and inciting internal dissent with Del."
          ],
          "established_fact_ids": [
            "ternhaven-dispute",
            "ternhaven-warning",
            "ternhaven-concealed",
            "ternhaven-conditions",
            "ternhaven-custom",
            "sound-visitors"
          ],
          "id": "T001-D05",
          "recommendation": "Approve hauling craft onto inner beach above high tide to avoid underwater chafing until the mooring line is inspected at slack tide; build upper ledge drying racks; enact the two-stage hospitality rule balancing first-night welcome with reciprocal labor.",
          "title": "Ternhaven Mooring Line Relocation, Boat Safety, and Hospitality Rule Enactment",
          "type": "GROUPED_REVERSIBLE"
        }
      ],
      "pressure_reviews": [
        {
          "causal_range": "Range spans from unilateral fuel seizure and pan strike to witnessed compromise allocating fuel to fish smoking while maintaining solar pans and dry salting.",
          "concepts": [
            "resource allocation",
            "fuel scarcity",
            "broken promise",
            "food preservation",
            "workplace dispute"
          ],
          "id": "PR-001",
          "trigger": "Dry fuel scarcity forcing an immediate conflict between industrial salt boiling and household catch preservation."
        },
        {
          "causal_range": "Range spans from factional rift and refused fishing support to formal witnessed renegotiation granting roof priority and food compensation.",
          "concepts": [
            "broken promise",
            "disputed priorities",
            "shelter scarcity",
            "witnessed oath",
            "labor bottleneck",
            "status negotiation"
          ],
          "id": "PR-002",
          "trigger": "Witnessed shipbuilding vow colliding with leaking roofs and scarce carpentry labor ahead of seasonal rains."
        },
        {
          "causal_range": "Range spans from caregiver exhaustion and bitter domestic division to structured care rotas, ceremonial recognition, and paced harvesting.",
          "concepts": [
            "harvest pressure",
            "caregiver exhaustion",
            "labor allocation",
            "communal obligation",
            "social balance",
            "vulnerable dependents"
          ],
          "id": "PR-003",
          "trigger": "Urgent barley harvest demands threatening the physical collapse and exclusion of dependent caregivers."
        },
        {
          "causal_range": "Range spans from harsh xenophobic exclusion damaging cultural legitimacy to uncontrolled food depletion, bounded by a structured two-stage hospitality policy.",
          "concepts": [
            "hospitality custom",
            "resource scarcity",
            "stranger anxiety",
            "traditional obligation",
            "conditional welcome",
            "community boundaries"
          ],
          "id": "PR-004",
          "trigger": "Ancestral guest welcome customs clashing with winter food scarcity and fears of open-ended parasitism."
        }
      ],
      "synthesis": "All four leaders adopt highly grounded, conservative early-autumn consolidation strategies focused on food preservation, roof integrity, and resolving internal allocation disputes before seasonal weather worsens. In Saltmere and Keelstrand, potentially fracture-inducing conflicts over fuel and shipbuilding are de-escalated through witnessed compromises that pair deferred production with alternative preservation and priority shelter. In High Barley and Ternhaven, structural policies resolve tensions surrounding caregiver exhaustion and hospitality obligations.\n\nSimultaneous actions and collision order resolve cleanly without destructive interference:\n1. Marine and Structural Precautions: Ternhaven's immediate hauling of craft onto the inner beach and Keelstrand's shoring of the boat shed brace safely neutralize hidden mechanical risks (submerged stone chafing and rotting brace failure) before catastrophic damage occurs. Saltmere's low-water bank inspection uncovers burrowing seepage early, enabling clay-and-sod reinforcement.\n2. Scouting and Information Propagation:\n   - West / North: Player 1's scout (Evi) reaches the marker beach, observing flotsam and distant smoke across the creek from concealment, and retreats before nightfall. Player 2's scout (Ivo) spends the primary window checking the southeast trail to the ridge line, spotting distant upland grazing before turning back at midday. Ivo's secondary beach check either occurs on a different day or finds only faint distant footprints; neither party attempts crossing or contact.\n   - East / Upland: Player 4's scout (Seli) advances along the alder path to the stream ford. Concurrently, Player 3's watcher (Jun) maintains high-point surveillance over the ford and east descent while High Barley concentrates on harvest. Seli detects signs of upland cultivation and distant bells, leaving peaceful observational markers or exchanging distant visual signals with Jun across the ravine. No direct confrontation or treaty occurs, preserving realistic contact pacing.\n3. Agency and Social Stability: Named NPCs across all clans respond positively to leaders who validate grievances and respect customary procedures (stone-laying, keel vows, covered bowls, hearth meals). No leader overreaches or forces premature contact, leaving all four communities well-positioned for mid-autumn with preserved stores, weather-tight shelters, and intact legitimacy."
    },
    "powers": [
      {
        "player_id": "player1",
        "power": {
          "value": 0.8216666666666665,
          "band": "Strong",
          "target": 0.6828124999999999,
          "uncertainty": 0.1
        }
      },
      {
        "player_id": "player2",
        "power": {
          "value": 0.8866666666666667,
          "band": "Strong",
          "target": 0.74375,
          "uncertainty": 0.1
        }
      },
      {
        "player_id": "player3",
        "power": {
          "value": 0.8433333333333333,
          "band": "Strong",
          "target": 0.7031249999999999,
          "uncertainty": 0.1
        }
      },
      {
        "player_id": "player4",
        "power": {
          "value": 0.8,
          "band": "Strong",
          "target": 0.6625000000000001,
          "uncertainty": 0.1
        }
      }
    ]
  }
}
