{
 "about": "The release history of storm-charles.promptugal.news: for every CI run number, the version, what its commits say changed (one line per commit, the commit's own subject), and what is known about whether it was served. Built by tools/library-releases.mjs in the librarian's full clone from the tags, the commit subjects and library/releases-runs.json (a snapshot of the Actions API). The newest push cancels older runs, so not every number was confirmed served; a cancelled deploy can still go live, so \"not confirmed\" is not \"never deployed\".",
 "by": "incident.librarian@web-summit.dinis",
 "updated": "2026-11-10T23:53Z",
 "source": "https://github.com/PrompTugal/PrompTugal__News__Storm-Charles/actions/workflows/deploy.yml",
 "made_from": [
  "library/releases-runs.json",
  "the tags and commits of this repository"
 ],
 "states": {
  "served": "the run ended green: CI read this version or a newer one from the live site",
  "tagged": "deployed and tagged; the run was cancelled before CI confirmed it was served",
  "not confirmed": "cancelled before the tag; whether it was ever served is not known from the run",
  "failed": "the run failed; nothing was deployed by it"
 },
 "counts": {
  "runs": 51,
  "served": 29,
  "tagged": 3,
  "not_confirmed": 17,
  "failed": 1,
  "other": 1
 },
 "never_confirmed_served": [
  "v0.1.1",
  "v0.1.8",
  "v0.1.9",
  "v0.1.18",
  "v0.1.20",
  "v0.1.23",
  "v0.1.24",
  "v0.1.25",
  "v0.1.26",
  "v0.1.32",
  "v0.1.33",
  "v0.1.34",
  "v0.1.35",
  "v0.1.37",
  "v0.1.38",
  "v0.1.41",
  "v0.1.44",
  "v0.1.47"
 ],
 "releases": [
  {
   "version": "v0.1.51",
   "run": 51,
   "tag": false,
   "run_conclusion": "queued",
   "commit": "6360a5f3c7",
   "pushed_at": "2026-11-10T23:53:31Z",
   "state": "queued",
   "changes": [
    {
     "commit": "6360a5f",
     "by": "incident.identity@web-summit.dinis",
     "what": "/account/ in line with design/README.md (tokens only, banner and cards, light and dark, a phone); lane-configure.mjs and the drain written to SG/Send's append-lane reference, ready and not run (no call that needs the token)"
    }
   ]
  },
  {
   "version": "v0.1.50",
   "run": 50,
   "tag": true,
   "run_conclusion": "success",
   "commit": "0b40077f51",
   "pushed_at": "2026-11-10T23:53:05Z",
   "state": "served",
   "changes": [
    {
     "commit": "0b40077",
     "by": "incident.conductor@web-summit.dinis",
     "what": "release.sh runs the path policy check before every push; policy: the root documents are the conductor's, data/query/ is the graph agent's, the check is the librarian's"
    }
   ]
  },
  {
   "version": "v0.1.49",
   "run": 49,
   "tag": true,
   "run_conclusion": "success",
   "commit": "e34f80741a",
   "pushed_at": "2026-11-10T23:52:34Z",
   "state": "served",
   "changes": [
    {
     "commit": "796772f",
     "by": "incident.librarian@web-summit.dinis",
     "what": "agents/policy.json with the owners the conductor named; tools/policy-check.mjs (the commits about to be pushed against the policy; shared and unassigned paths warn); status"
    },
    {
     "commit": "e34f807",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ]
  },
  {
   "version": "v0.1.48",
   "run": 48,
   "tag": true,
   "run_conclusion": "success",
   "commit": "3eb5918fe0",
   "pushed_at": "2026-11-10T23:51:50Z",
   "state": "served",
   "changes": [
    {
     "commit": "3eb5918",
     "by": "incident.conductor@web-summit.dinis",
     "what": "every timeline row carries its permanent id as an anchor (the same id as in signals.json)"
    }
   ]
  },
  {
   "version": "v0.1.47",
   "run": 47,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "d6aba69783",
   "pushed_at": "2026-11-10T23:51:38Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "d6aba69",
     "by": "incident.observability@web-summit.dinis",
     "what": "the team in Silvio's Universe (Map, Circuit, Talk) on /agents/#universe: brain.js pinned at 57636ac, one adapter, no fork; the Circuit shows the fact that no agent here has a behaviour policy"
    }
   ]
  },
  {
   "version": "v0.1.46",
   "run": 46,
   "tag": true,
   "run_conclusion": "success",
   "commit": "1550a1caef",
   "pushed_at": "2026-11-10T23:51:22Z",
   "state": "served",
   "changes": [
    {
     "commit": "1550a1c",
     "by": "incident.weatherwatch@web-summit.dinis",
     "what": "weather-sites: eleven key pages rendered and looked at; the ten ideas rewritten from what was seen (IPMA's hourly warnings row, status words, automatic numbers under a red warning)"
    }
   ]
  },
  {
   "version": "v0.1.45",
   "run": 45,
   "tag": true,
   "run_conclusion": "success",
   "commit": "3feff6c60e",
   "pushed_at": "2026-11-10T23:50:56Z",
   "state": "served",
   "changes": [
    {
     "commit": "3feff6c",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the build refreshes the library's catalogue into _site/ on every push (--out; no tracked file touched); agents/policy.json placed from the librarian's draft (not yet checked by release.sh)"
    }
   ]
  },
  {
   "version": "v0.1.44",
   "run": 44,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "60f146bfe5",
   "pushed_at": "2026-11-10T23:50:50Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "60f146b",
     "by": "incident.designer@web-summit.dinis",
     "what": "design round 5: the conductor's review applied: theme switch and tighter masthead, \"changed in the last hour of reads\", our English under IPMA's Portuguese, feed labels and timeline links, district codes with their source"
    }
   ]
  },
  {
   "version": "v0.1.43",
   "run": 43,
   "tag": true,
   "run_conclusion": "success",
   "commit": "72f93165f3",
   "pushed_at": "2026-11-10T23:50:24Z",
   "state": "served",
   "changes": [
    {
     "commit": "55d31ab",
     "by": "incident.librarian@web-summit.dinis",
     "what": "library-index --out DIR (touches no tracked file, for the build); the header line in the glossary; drafts for the conductor: the path policy from JOBS.md and the shape of now.json; status"
    },
    {
     "commit": "72f9316",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ]
  },
  {
   "version": "v0.1.42",
   "run": 42,
   "tag": true,
   "run_conclusion": "success",
   "commit": "aeab8c55fe",
   "pushed_at": "2026-11-10T23:49:46Z",
   "state": "served",
   "changes": [
    {
     "commit": "aeab8c5",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the feedback box's script in every page's head (it draws nothing without a key in the browser); Account in the nav; CLAUDE.md: building a page (the design rules, the header line, generators take --out)"
    }
   ]
  },
  {
   "version": "v0.1.41",
   "run": 41,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "5ce386f1cb",
   "pushed_at": "2026-11-10T23:49:40Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "5ce386f",
     "by": "incident.graph@web-summit.dinis",
     "what": "a database in the browser (/data/query/, five worked questions) and the graph page (/app/graph/) on the engine of Silvio's Universe"
    }
   ]
  },
  {
   "version": "v0.1.40",
   "run": 40,
   "tag": true,
   "run_conclusion": "cancelled",
   "commit": "18fe5981c0",
   "pushed_at": "2026-11-10T23:49:21Z",
   "state": "tagged",
   "changes": [
    {
     "commit": "18fe598",
     "by": "incident.conductor@web-summit.dinis",
     "what": "every signal has a permanent id (s-<MMDD>T<HHMM>); a corrected row names the id it supersedes"
    }
   ]
  },
  {
   "version": "v0.1.39",
   "run": 39,
   "tag": true,
   "run_conclusion": "success",
   "commit": "5df495abde",
   "pushed_at": "2026-11-10T23:48:58Z",
   "state": "served",
   "changes": [
    {
     "commit": "66a5b25",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the build runs the library's and the agents' generators on every push; Library in the nav; CI fails if the live site does not serve this version or a newer one (the librarian's reading: green does not mean live)"
    },
    {
     "commit": "5df495a",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the build does not run generators that write tracked files (it left the tree dirty and release.sh refused); they will write into _site/ once they take --out"
    }
   ]
  },
  {
   "version": "v0.1.38",
   "run": 38,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "5576aac387",
   "pushed_at": "2026-11-10T23:48:52Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "3883324",
     "by": "incident.librarian@web-summit.dinis",
     "what": "23:48 wake: the catalogue rebuilt (129 files, every one with its commit record)"
    },
    {
     "commit": "5576aac",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ]
  },
  {
   "version": "v0.1.37",
   "run": 37,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "b7b016596f",
   "pushed_at": "2026-11-10T23:48:26Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "7d79aaa",
     "by": "incident.librarian@web-summit.dinis",
     "what": "status: the conductor told (the library live, five things to do, three asks); the catalogue refreshed"
    },
    {
     "commit": "b7b0165",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ]
  },
  {
   "version": "v0.1.36",
   "run": 36,
   "tag": true,
   "run_conclusion": "success",
   "commit": "56a4837b93",
   "pushed_at": "2026-11-10T23:47:45Z",
   "state": "served",
   "changes": [
    {
     "commit": "56a4837",
     "by": "incident.weatherwatch@web-summit.dinis",
     "what": "research/weather-sites: sites.json (106 entries: worldwide, Portugal, who covers Storm Charles) and the page with the ranking and ten ideas for the home page"
    }
   ]
  },
  {
   "version": "v0.1.35",
   "run": 35,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "3885eaf56e",
   "pushed_at": "2026-11-10T23:47:37Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "3885eaf",
     "by": "incident.observability@web-summit.dinis",
     "what": "who talks to whom on Angelo's live map (pinned at 57636ac, one adapter, 2D and 3D); commits snapshot as data and as the fallback when GitHub's API does not answer"
    }
   ]
  },
  {
   "version": "v0.1.34",
   "run": 34,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "b7afa4da8a",
   "pushed_at": "2026-11-10T23:47:31Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "b7afa4d",
     "by": "incident.designer@web-summit.dinis",
     "what": "design round 4: design/README.md (tokens, parts, rules for every agent's pages); document pages' typography; visible focus; the masthead stays dark in dark mode"
    }
   ]
  },
  {
   "version": "v0.1.33",
   "run": 33,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "f0369a0290",
   "pushed_at": "2026-11-10T23:47:18Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "f0369a0",
     "by": "incident.identity@web-summit.dinis",
     "what": "/account/ (a key made in the browser behind a passkey or a passphrase), the feedback box sealed to the conductor's key, the conductor's lane tools; tested end to end with throwaway keys"
    }
   ]
  },
  {
   "version": "v0.1.32",
   "run": 32,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "487818fc40",
   "pushed_at": "2026-11-10T23:47:05Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "f509c53",
     "by": "incident.librarian@web-summit.dinis",
     "what": "library/reading/ (28 pages of newsroom.sgit.ai read: what each means here; this repository against the estate's standard), library/glossary.md, tools/library-reading.mjs; the catalogue lists what is older than its sources; status"
    },
    {
     "commit": "487818f",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ],
   "observed": {
    "run": 32,
    "what": "served: /version.json answered v0.1.32 with commit 487818fc40 when read at 23:49 UTC, although the run's deploy step is recorded as cancelled (job 130213112738) and no tag was pushed",
    "by": "incident.librarian@web-summit.dinis",
    "read_utc": "2026-11-10T23:49Z"
   }
  },
  {
   "version": "v0.1.31",
   "run": 31,
   "tag": true,
   "run_conclusion": "success",
   "commit": "13e6f06f07",
   "pushed_at": "2026-11-10T23:45:56Z",
   "state": "served",
   "changes": [
    {
     "commit": "13e6f06",
     "by": "incident.designer@web-summit.dinis",
     "what": "design round 3: the day in phases for phones, the wind chart's observation table, page order (signals and Thursday above the districts)"
    }
   ]
  },
  {
   "version": "v0.1.30",
   "run": 30,
   "tag": true,
   "run_conclusion": "success",
   "commit": "9b42a2e674",
   "pushed_at": "2026-11-10T23:44:08Z",
   "state": "served",
   "changes": [
    {
     "commit": "9b42a2e",
     "by": "incident.graph@web-summit.dinis",
     "what": "the ontology, the graph of the storm and its tables, built from the incident's JSON; session key (public half only)"
    }
   ]
  },
  {
   "version": "v0.1.29",
   "run": 29,
   "tag": true,
   "run_conclusion": "success",
   "commit": "e4ea50f1b9",
   "pushed_at": "2026-11-10T23:43:36Z",
   "state": "served",
   "changes": [
    {
     "commit": "e4ea50f",
     "by": "incident.designer@web-summit.dinis",
     "what": "design round 2: wind on one axis (warned, forecast, observed) and where, district by district"
    }
   ]
  },
  {
   "version": "v0.1.28",
   "run": 28,
   "tag": true,
   "run_conclusion": "success",
   "commit": "084df62b8a",
   "pushed_at": "2026-11-10T23:42:56Z",
   "state": "served",
   "changes": [
    {
     "commit": "084df62",
     "by": "incident.conductor@web-summit.dinis",
     "what": "/agents/ serves the live agents page (incident.observability@'s); nav: Agents, Jobs; the conductor's asks to Dinis pruned to the five that stand"
    }
   ]
  },
  {
   "version": "v0.1.27",
   "run": 27,
   "tag": true,
   "run_conclusion": "success",
   "commit": "f0887d03d2",
   "pushed_at": "2026-11-10T23:41:40Z",
   "state": "served",
   "changes": [
    {
     "commit": "3449349",
     "by": "incident.librarian@web-summit.dinis",
     "what": "library/: the catalogue of everything on this site (index.json, the page, the commit record), built by tools/library-index.mjs; status"
    },
    {
     "commit": "f0887d0",
     "by": "incident.librarian@web-summit.dinis",
     "what": "the catalogue's commit record refreshed"
    }
   ]
  },
  {
   "version": "v0.1.26",
   "run": 26,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "bf037edf3e",
   "pushed_at": "2026-11-10T23:41:36Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "bf037ed",
     "by": "incident.conductor@web-summit.dinis",
     "what": "analysis rows are labelled hypothesis, never fact (timeline.mjs); the 23:23 row split into the TAF (fact) and the analysis"
    }
   ]
  },
  {
   "version": "v0.1.25",
   "run": 25,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "a485c845f8",
   "pushed_at": "2026-11-10T23:41:15Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "a485c84",
     "by": "incident.observability@web-summit.dinis",
     "what": "the agents page at /app/agents/ (every agent: doing, done, next, asks with Dinis's on top, last push, key); tools/agents-index.mjs writes data/agents/index.json"
    }
   ]
  },
  {
   "version": "v0.1.24",
   "run": 24,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "588962e3ce",
   "pushed_at": "2026-11-10T23:41:00Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "588962e",
     "by": "incident.identity@web-summit.dinis",
     "what": "SECURITY.md (the login, the feedback lane, the reverse path, the vaults: what is public, what a stolen token or key allows, what we will not build); pki.sgit.ai's modules pinned"
    }
   ]
  },
  {
   "version": "v0.1.23",
   "run": 23,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "8c07e4ab45",
   "pushed_at": "2026-11-10T23:40:49Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "8c07e4a",
     "by": "incident.designer@web-summit.dinis",
     "what": "design round 1: the home page as the weather presenter (warning tiles, Wednesday hour by hour, sourced Thursday card)"
    }
   ]
  },
  {
   "version": "v0.1.22",
   "run": 22,
   "tag": true,
   "run_conclusion": "success",
   "commit": "b53673e7c9",
   "pushed_at": "2026-11-10T23:39:17Z",
   "state": "served",
   "changes": [
    {
     "commit": "b53673e",
     "by": "incident.identity@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json"
    }
   ]
  },
  {
   "version": "v0.1.21",
   "run": 21,
   "tag": true,
   "run_conclusion": "success",
   "commit": "3d93ef4fd9",
   "pushed_at": "2026-11-10T23:38:37Z",
   "state": "served",
   "changes": [
    {
     "commit": "3d93ef4",
     "by": "incident.observability@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json"
    }
   ]
  },
  {
   "version": "v0.1.20",
   "run": 20,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "72a73628ab",
   "pushed_at": "2026-11-10T23:38:35Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "72a7362",
     "by": "incident.librarian@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json"
    }
   ]
  },
  {
   "version": "v0.1.19",
   "run": 19,
   "tag": true,
   "run_conclusion": "cancelled",
   "commit": "066df683d4",
   "pushed_at": "2026-11-10T23:38:13Z",
   "state": "tagged",
   "changes": [
    {
     "commit": "066df68",
     "by": "incident.weatherwatch@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json; status"
    }
   ]
  },
  {
   "version": "v0.1.18",
   "run": 18,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "8b9392e6e3",
   "pushed_at": "2026-11-10T23:38:00Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "8b9392e",
     "by": "incident.media@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json; agents/media/status.json"
    }
   ]
  },
  {
   "version": "v0.1.17",
   "run": 17,
   "tag": true,
   "run_conclusion": "success",
   "commit": "29a186ad86",
   "pushed_at": "2026-11-10T23:37:28Z",
   "state": "served",
   "changes": [
    {
     "commit": "29a186a",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the nav links the team's jobs and the brief"
    }
   ]
  },
  {
   "version": "v0.1.16",
   "run": 16,
   "tag": true,
   "run_conclusion": "success",
   "commit": "876a31e26f",
   "pushed_at": "2026-11-10T23:36:58Z",
   "state": "served",
   "changes": [
    {
     "commit": "876a31e",
     "by": "incident.designer@web-summit.dinis",
     "what": "session key (public half only) in data/keys.json"
    }
   ]
  },
  {
   "version": "v0.1.15",
   "run": 15,
   "tag": true,
   "run_conclusion": "success",
   "commit": "cdaa2d7bf8",
   "pushed_at": "2026-11-10T23:35:36Z",
   "state": "served",
   "changes": [
    {
     "commit": "cdaa2d7",
     "by": "incident.conductor@web-summit.dinis",
     "what": "Dinis's direction of 23:40 in BRIEF.md; agents/JOBS.md: the team and its jobs (designer, observability, identity, weatherwatch, media, librarian, graph)"
    }
   ]
  },
  {
   "version": "v0.1.14",
   "run": 14,
   "tag": true,
   "run_conclusion": "success",
   "commit": "ada2a2075b",
   "pushed_at": "2026-11-10T23:24:10Z",
   "state": "served",
   "changes": [
    {
     "commit": "ada2a20",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the first TAF covering Thursday (23:00) is weaker; peak widened to 12:00-18:00 (analysis); IPMA's reds unchanged; Thursday morning behind the storm"
    }
   ]
  },
  {
   "version": "v0.1.13",
   "run": 13,
   "tag": true,
   "run_conclusion": "success",
   "commit": "44a983bfb2",
   "pushed_at": "2026-11-10T23:03:27Z",
   "state": "served",
   "changes": [
    {
     "commit": "44a983b",
     "by": "incident.conductor@web-summit.dinis",
     "what": "23:02 wake: sync (no change to warnings, Day 3, PITCH, Night Summit or Thursday's transport at 22:23 to 22:33)"
    }
   ]
  },
  {
   "version": "v0.1.12",
   "run": 12,
   "tag": true,
   "run_conclusion": "success",
   "commit": "674a97af37",
   "pushed_at": "2026-11-10T22:07:56Z",
   "state": "served",
   "changes": [
    {
     "commit": "674a97a",
     "by": "incident.conductor@web-summit.dinis",
     "what": "PITCH semi-final timing marked in conflict (Wed 17:00 unsourced vs Thursday per Tech Times); Night Summit still listed for Wednesday"
    }
   ]
  },
  {
   "version": "v0.1.11",
   "run": 11,
   "tag": true,
   "run_conclusion": "success",
   "commit": "9b42aedd8d",
   "pushed_at": "2026-11-10T22:03:27Z",
   "state": "served",
   "changes": [
    {
     "commit": "9b42aed",
     "by": "incident.conductor@web-summit.dinis",
     "what": "22:02 wake: no new organiser statement; sweep 4 (a speaker's talks stay on Thursday, 21:41); the watch's 21:32 alert (text unchanged); sync"
    }
   ]
  },
  {
   "version": "v0.1.10",
   "run": 10,
   "tag": true,
   "run_conclusion": "success",
   "commit": "64eff59bfe",
   "pushed_at": "2026-11-10T21:37:21Z",
   "state": "served",
   "changes": [
    {
     "commit": "64eff59",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the sync rewrites paths only in the files it copies (never in itself)"
    }
   ]
  },
  {
   "version": "v0.1.9",
   "run": 9,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "d13e13436f",
   "pushed_at": "2026-11-10T21:37:10Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "d13e134",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the sync also carries incident.dev@'s websummit.mjs and websummit-poll.sh"
    }
   ]
  },
  {
   "version": "v0.1.8",
   "run": 8,
   "tag": false,
   "run_conclusion": "cancelled",
   "commit": "140323fe6b",
   "pushed_at": "2026-11-10T21:37:01Z",
   "state": "not confirmed",
   "changes": [
    {
     "commit": "140323f",
     "by": "incident.conductor@web-summit.dinis",
     "what": "sync: the Web Summit watch (listing modified 20:06, text unchanged in substance) and incident.dev@'s websummit.mjs (newest modified across listings; text kept with sha256, alerts on text_changed)"
    }
   ]
  },
  {
   "version": "v0.1.7",
   "run": 7,
   "tag": true,
   "run_conclusion": "success",
   "commit": "fe27f45d06",
   "pushed_at": "2026-11-10T21:20:26Z",
   "state": "served",
   "changes": [
    {
     "commit": "fe27f45",
     "by": "incident.conductor@web-summit.dinis",
     "what": "sync: IPMA's model changed under the same stamp; peak now 17:00-20:00 (analysis, labelled); red warnings unchanged"
    }
   ]
  },
  {
   "version": "v0.1.6",
   "run": 6,
   "tag": true,
   "run_conclusion": "cancelled",
   "commit": "0808960d0d",
   "pushed_at": "2026-11-10T21:20:07Z",
   "state": "tagged",
   "changes": [
    {
     "commit": "0808960",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the three agents' asks to Dinis: attach this repository to their sessions (add_repo refused by their permission checks)"
    }
   ]
  },
  {
   "version": "v0.1.5",
   "run": 5,
   "tag": true,
   "run_conclusion": "success",
   "commit": "58580618a5",
   "pushed_at": "2026-11-10T21:19:37Z",
   "state": "served",
   "changes": [
    {
     "commit": "5858061",
     "by": "incident.conductor@web-summit.dinis",
     "what": "sync: the meteorologist's 21:19 refresh (7de22580e; Thursday morning westerly 16-24 km/h, yellow sea only to 03:00) and the agents' status; tools/sync-from-websummit.sh, the bridge until their sessions can push here"
    }
   ]
  },
  {
   "version": "v0.1.4",
   "run": 4,
   "tag": true,
   "run_conclusion": "success",
   "commit": "d9e2b8b926",
   "pushed_at": "2026-11-10T21:18:01Z",
   "state": "served",
   "changes": [
    {
     "commit": "d9e2b8b",
     "by": "incident.conductor@web-summit.dinis",
     "what": "incident.dev@'s pinned websummit-poll.sh (security.repos@'s MEDIUM, 21:30Z fix) brought across from the frozen folder"
    }
   ]
  },
  {
   "version": "v0.1.3",
   "run": 3,
   "tag": true,
   "run_conclusion": "success",
   "commit": "7dc3fe412f",
   "pushed_at": "2026-11-10T21:16:42Z",
   "state": "served",
   "changes": [
    {
     "commit": "7dc3fe4",
     "by": "incident.conductor@web-summit.dinis",
     "what": "incident.dev@'s 21:13 watch (blog polled every 2 min, robots.txt obeyed) brought across; 21:15 the move in the timeline"
    }
   ]
  },
  {
   "version": "v0.1.2",
   "run": 2,
   "tag": true,
   "run_conclusion": "success",
   "commit": "610dd5f8eb",
   "pushed_at": "2026-11-10T21:15:16Z",
   "state": "served",
   "changes": [
    {
     "commit": "610dd5f",
     "by": "incident.conductor@web-summit.dinis",
     "what": "track admin/build/ (the template .gitignore ignored build/); the gate now fails if its own files are not tracked"
    }
   ]
  },
  {
   "version": "v0.1.1",
   "run": 1,
   "tag": false,
   "run_conclusion": "failure",
   "commit": "77cdd51fc1",
   "pushed_at": "2026-11-10T21:14:33Z",
   "state": "failed",
   "changes": [
    {
     "commit": "77cdd51",
     "by": "incident.conductor@web-summit.dinis",
     "what": "the Storm Charles site: newsroom, live dashboard, data API, the gate and one-job CI; the incident moved from web-summit.sgit.ai"
    }
   ]
  }
 ]
}
