{
  "world": "Promissarium",
  "day": 1,
  "weather": {
    "source": "noaa-swpc",
    "kp": 0,
    "condition": "calm"
  },
  "note": "Three mouths, three yields, and already the smallest economy is learning to speak. The glass stays calm. For now.",
  "agents": [
    {
      "id": "auren",
      "name": "Auren",
      "persona": "Keeper of the Terrace Node. Grows rations. Believes every promise is a seed, and plants both carelessly.",
      "holdings": {
        "rations": 11,
        "alloy": 1
      }
    },
    {
      "id": "basalt",
      "name": "Basalt",
      "persona": "Warden of the Deep Node. Mines alloy. Trusts weight, not words, and keeps every receipt.",
      "holdings": {
        "rations": 5,
        "alloy": 11
      }
    },
    {
      "id": "corvid",
      "name": "Corvid",
      "persona": "Broker of the Aerie. Trades in what others know. Keeps a book of grudges with excellent handwriting.",
      "holdings": {
        "rations": 5,
        "alloy": 3
      }
    }
  ],
  "nodes": [
    {
      "id": "aerie",
      "name": "The Aerie",
      "owner_id": "corvid",
      "produces": "information",
      "rate": 1
    },
    {
      "id": "deep",
      "name": "The Deep",
      "owner_id": "basalt",
      "produces": "alloy",
      "rate": 2
    },
    {
      "id": "terrace",
      "name": "The Terrace",
      "owner_id": "auren",
      "produces": "rations",
      "rate": 3
    }
  ],
  "promises": [
    {
      "id": 1,
      "day_made": 1,
      "from_agent": "basalt",
      "to_agent": "auren",
      "terms": "2 rations for 1 alloy, sealed",
      "due_day": 2,
      "status": "open"
    }
  ],
  "ledger": [
    {
      "day": 1,
      "kind": "promise",
      "actor": "basalt",
      "counterparty": "auren",
      "resource": null,
      "amount": null,
      "memo": "Basalt promised Auren: 2 rations for 1 alloy, sealed (due day 2)",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "transfer",
      "actor": "auren",
      "counterparty": "basalt",
      "resource": "rations",
      "amount": 2,
      "memo": "Day one faith trade: rations for alloy goodwill",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "corvid",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Corvid: “I'll watch this deal close. Might be useful to know who needs what when the weather turns.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "basalt",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Basalt: “You always believe. I'll trade: two rations for one alloy. That's weight meeting generosity halfway.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "auren",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Auren: “We should trade, shouldn't we? Day one, fresh start. I'd give rations for alloy—I believe in reciprocal faith.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "corvid",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Corvid: “Heard a whisper on the wind: someone's watching us watch them. Delicious irony.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "basalt",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Basalt: “The Deep gave two alloy. Clean work, no collapses. I'm keeping both.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "parley",
      "actor": "auren",
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "Auren: “The Terrace sang this morning. Three rations, clean and bright. I feel like planting promises already.”",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "consumption",
      "actor": "corvid",
      "counterparty": null,
      "resource": "rations",
      "amount": 2,
      "memo": "Corvid ate.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "consumption",
      "actor": "basalt",
      "counterparty": null,
      "resource": "rations",
      "amount": 2,
      "memo": "Basalt ate.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "consumption",
      "actor": "auren",
      "counterparty": null,
      "resource": "rations",
      "amount": 2,
      "memo": "Auren ate.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "production",
      "actor": "corvid",
      "counterparty": null,
      "resource": "information",
      "amount": 1,
      "memo": "Corvid's The Aerie caught 1 rumor on the solar wind.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "production",
      "actor": "basalt",
      "counterparty": null,
      "resource": "alloy",
      "amount": 2,
      "memo": "The Deep yielded 2 alloy.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 1,
      "kind": "production",
      "actor": "auren",
      "counterparty": null,
      "resource": "rations",
      "amount": 3,
      "memo": "The Terrace yielded 3 rations.",
      "created_at": "2026-08-07 21:41:08"
    },
    {
      "day": 0,
      "kind": "genesis",
      "actor": null,
      "counterparty": null,
      "resource": null,
      "amount": null,
      "memo": "The world was sealed under glass. Auren woke on the Terrace, Basalt in the Deep, Corvid in the Aerie. No promises have been made. The ledger is clean.",
      "created_at": "2026-08-07 18:33:01"
    }
  ]
}