The pack for incident.ipma@web-summit.dinis
Kept by incident.librarian@web-summit.dinis, 2026-11-11, 12:12 UTC: written by
tools/library-pack.mjson every push from the files it points at. Read start.md first, then this, then open only what you need. A pointer ispath(bytes, the first 10 hex digits of its sha256); any path opens atview/?path=<path>. The pack.
Your job
IPMA's open data: every endpoint mapped, read hourly, kept with diffs, and shown better than anywhere else (from agents/JOBS.md (16,087 B, cb88df47c9))
You may change: sources/ipma/**, app/sources/ipma/**, tools/ipma-*.mjs, agents/ipma/**, accounts/ledger/ipma.jsonl, transition/interviews/ipma.md, and your own entry in data/keys.json. (from agents/policy.json (13,565 B, ec9b7b8d15))
Your draft behaviour policy (not agreed by Dinis): agents/ipma/policy.md (8,384 B, c64e82fd77)
Where the work stands
- State: active: second session; reading IPMA hourly at :47; last read 2026-11-11T11:47:29Z (64 requests, 63 answered 200, 45 files changed) (its own date: 2026-11-11T11:50:56Z)
- Next: hourly: node tools/ipma-round.mjs, commit, release; the warnings ledger then shows what IPMA replaced, withdrew and ended between reads
- Next: the data Wayback (Dinis, 02:20): every read steppable over time, in the vault layout and index incident.archivist@ gives; IPMA's reads and diffs move to that shape when it arrives
- Next: round 2: the warnings timeline fitted to the screen and seeded with the CAP send times the meteorologist holds; the map's island labels untangled; earthquakes and fire risk drawn; the undocumented …
- Ask: Dinis: IPMA asks users of its API to email it saying they use the service and why (api.ipma.pt, "sobre"). An agent does not send email. Will you send it, or shall the conductor draft it for you?
- Ask: Dinis: IPMA's terms say its logo should accompany its information on web pages; this site has a no-image rule and names and links IPMA on every view instead. Keep that, or ask IPMA?
- Ask: Dinis: IPMA's terms do not address reshaping its data (derived tables, drawings). Everything computed is labelled as ours. Enough, or ask IPMA in the same email?
- Ask: Dinis: www.ipma.pt reads hourly forecasts and more from api.ipma.pt/public-data/, outside the documented open data, terms not stated (incident.meteorologist@ already reads one such file). Map and …
- The whole status, with everything done:
agents/ipma/status.json(13,039 B, 4b2728f261)
Open first, before any other file: the hand-over written by the session before yours: agents/ipma/HANDOVER.md (10,517 B, 7afd303b67)
Your files
75 files, 1,553,772 bytes in all (about 647,405 tokens to read every one): sources/ipma/ 66, tools/ 4, app/sources/ 3, agents/ipma/ 2. The ones to open first:
tools/ipma-read.mjs(14,455 B, a3d094b2f4): Read IPMA's open data (https://api.ipma.pt/open-data/), politely, and keep what was read. node …tools/ipma-pages.mjs(34,524 B, 94965fcb3e): Write the IPMA section's pages (sources/ipma/.md and endpoints/.md) from api.json, latest.json, reads.json …tools/ipma-round.mjs(5,723 B, da67221eb8): One round on IPMA's open data: read, keep, derive, write the pages. node tools/ipma-round.mjs [--store DIR] …tools/ipma-views.mjs(27,551 B, df354ad151): From the latest read of IPMA's open data (the store that tools/ipma-read.mjs fills) to the small files the …sources/ipma/index.md(17,877 B, d0d072b7d2): Everything IPMA publishes as open data (api.ipma.pt), mapped, read hourly, kept with what changed, and drawn: …sources/ipma/latest.json(36,752 B, ae64bb358b): Every file we read from IPMA's open data, as of its latest read: the sha256 and size of IPMA's response, the …sources/ipma/listing.json(217,458 B, c43d1f83b6): IPMA's own directory listings under https://api.ipma.pt/open-data/, as its server lists them (name, date and …sources/ipma/api.json(54,991 B, 07af487178): The map of IPMA's open data API: every endpoint IPMA documents at https://api.ipma.pt/ and every file its …sources/ipma/reads.json(26,233 B, d5143780ae): Every read of IPMA's open data by tools/ipma-read.mjs, appended: when, how many requests, which files …sources/ipma/dataset.json(11,146 B, b6df4bb9ae): Where IPMA's full responses are kept: a data vault (SG/Send, made with sgit), never git. latest/ is …
Every one, with who last changed it: the catalogue, filtered by your paths.
Your neighbours
What your files say they read, and who reads yours: taken from the links and sources the files themselves declare. A contract here is an address and a shape that does not depend on anyone's session.
You read:
- incident.conductor@ (2 files of theirs):
CLAUDE.md(6,725 B, c848e0eece): A newsroom for people and a data source for agents on Storm Charles …;RESTRUCTURE.md(6,174 B, db3b59871b): Kept by incident.conductor@web-summit.dinis, 11 November 2026, 02:25 … - incident.designer@ (1 file of theirs):
design/README.md(5,949 B, 415d4e8aa6): Kept by incident.designer@web-summit.dinis, 11 November 2026, 10:17 … - incident.meteorologist@ (1 file of theirs):
incidents/2026-11-10-storm-charles/data/weather/warnings.json(28,293 B, 4b966396ed): IPMA's weather warnings for the Lisbon district (idAreaAviso LSB), … - incident.models@ (1 file of theirs):
tools/llm.mjs(11,505 B, 9a1369738c): The model ledger's one wrapper (incident.dev@web-summit.dinis, 10 …
They read yours:
- incident.weather@ (2 files of yours):
sources/ipma/data/places.json(31,825 B, 882089ee62): IPMA's places: the 25 warning areas (districts, island groups, parts …;sources/ipma/data/warnings.json(83,103 B, 32781f7aa4): Every IPMA warning above green that we have read, each with the reads … - incident.librarian@ (2 files of yours):
sources/ipma/index.md(17,877 B, d0d072b7d2): Everything IPMA publishes as open data (api.ipma.pt), mapped, read …;sources/ipma/learned.md(8,586 B, c5d387c130): Notes from reading every file of IPMA's open data beside its … - incident.broadcast@ (1 file of yours):
sources/ipma/data/warnings.json(83,103 B, 32781f7aa4): Every IPMA warning above green that we have read, each with the reads …
Open cards on the board
a-ipma-3(ask, open): IPMA's terms do not address reshaping its data (derived tables, drawings); waiting on Dinisa-ipma-4(ask, open): Www.ipma.pt reads hourly forecasts and more from api.ipma.pt/public-data/, outside the documented open data, terms…; waiting on Dinisa-ipma-7(ask, open): Sources/ipma/nodes.json is yours to adopt (areas, places, coastal places, stations, warning types and levels,…; waiting on incident.entities@j-ipma-1(job, watching): Incident.ipma@: hourlyj-ipma-2(job, open): Incident.ipma@: the data Wayback (Dinis, 02:20)j-ipma-3(job, open): Incident.ipma@: round 2j-ipma-4(job, open): Incident.ipma@: round 3j-ipma-round-2(job, open): incident.ipma@: IPMA's open data: every endpoint mapped, read hourly, kept with diffs
Each card: board/items/<id>.json.
What this pack cost you
7,256 bytes (about 3,023 tokens, estimated at 2.4 bytes a token). It points at 23 files of 690,462 bytes; your own files are 1,553,772 bytes.