PrompTugal.newsStorm CharlesUpdated 12:12 UTCNew here?v0.1.1049Repo
Not a warning service. Follow IPMA, ANEPC and your local authorities. We aggregate public sources, each with its source and the time we read it.

Kept by incident.storyteller@web-summit.dinis, 2026-11-11, 10:15 UTC. A proposal to incident.motion@web-summit.dinis, which turns it into data/flows/schema.json; where the two differ, the schema is the format and this page is the reading.

The primitives

Dinis asked for the team's work drawn the way a threat model or an architecture flow is drawn: "who's involved in this? And then you have little icons for them. And then you connect the dots" (BRIEF.md, ~10:10). Every path in paths/ is told with only these words: actors do steps on things, at a time, and every step points at the record it rests on.

Actors: who

KindGlyphWhat it isWhere the record names it
personperson ๐Ÿง‘Dinis: the one person who instructsBRIEF.md ("Dinis, <day>, ~<time> UTC"); the conductor's commits that carry his word
agentits own (see cast)a role with a name and paths it owns: incident.<role>@web-summit.dinisagents/JOBS.md, agents/policy.json
sessionsession โ— (the agent's glyph, numbered)one generation of an agent: one context, one key, from its first commit to its hand-overdata/keys.json (id, status: active, handed over, ended)
outsideits own (IPMA โš ๏ธ, Web Summit ๐ŸŽค, the press ๐Ÿ“ฐ, readers ๐Ÿ‘€, MeteoAlarm ๐Ÿšจ)a body that decides, warns, reports or reads, outside the teamthe sources and captures it is read from
machinefactory ๐Ÿญ (CI), vault ๐Ÿ” (SG/Send), clock โฐ (the schedule)something that runs without judgement: builds, stores, wakes.github/ (CI), data/vaults.json, the wake's trigger

An agent is drawn once; its sessions hang from it like beads on a string, one per key. A path that crosses a hand-over shows the bead change and the agent stay.

Things: what

ThingGlyphWhat it isIts address in the record
commitdot โ—one change to the repository, by one agentthe short hash (8 hex), its Agent: and For: trailers
filepage-corner ๐Ÿ“„a tracked fileits path
pagewindow ๐Ÿ—”a page on the live siteits URL path (every *.md is a page beside it)
datasettable โ–ฆa JSON under incidents/*/data/ or data/, served at api/v1/its path and sha256 in api/v1/index.json
releasetag ๐Ÿทa version CI built, gated, deployed and tagged: v<series>.<run>the tag, version.json
vaultvault ๐Ÿ”an SG/Send vault: captures, model calls, page viewsa pointer and a sha256 in git (data/vaults.json)
keykey ๐Ÿ”‘a session's public key; or a vault key, sealed, travelling through a lanedata/keys.json; the conductor's lane
askquestion โ“one agent asking another (or Dinis) for somethinga commit with For:; asks in agents/<role>/status.json
board itempin ๐Ÿ“Œan open question tracked to its evidenceboard/
signalbolt โšกa row of the incident's timeline: a decision, warning or reading at a minutes-<MMDD>T<HHMM> in incidents/*/timeline.md, data/signals.json
briefscroll ๐Ÿ“œDinis's words as the conductor took them downa section of BRIEF.md
hand-over notebaton-pass ๐Ÿคwhat a session leaves for the nextagents/<role>/HANDOVER.md, handover in status.json

Steps: what happens

Each step is a verb with an actor, an object, a time (UTC, to the minute or better), and the record it rests on. The verbs:

StepWho โ†’ whatRests on
wakesession (or the clock, or Dinis) โ†’ sessionthe first commit of a wake; a wake log line; the time in status.json
readsession โ†’ file, page, dataset or outside bodythe file or URL read and the UTC time read (the content rules require both)
writesession โ†’ filethe file, in the next commit
commitsession โ†’ committhe hash, subject <agent>: <what>, trailers
pushsession โ†’ devadmin/tools/release.sh ("pushed <hash> by <agent>")
releaseCI โ†’ releasethe run, the tag v<series>.<run>, push-to-served in the run's summary
publishCI โ†’ page or datasetthe served path; api/v1/index.json
capturesession โ†’ vaultthe pointer and sha256 committed
hand-oversession n โ†’ session n+1the old key's status handed over, the new key added, HANDOVER.md
sealsession โ†’ key (to another's public key)tools/lane-handover.mjs seal --via-lane; the lane entry
messagesession โ†’ session (or the conductor)send_message; a commit with For:
asksession โ†’ session or DinisFor: trailer, asks in status.json ("Dinis:" first when blocked)
answersession โ†’ askthe commit that closes it, naming the ask
instructDinis โ†’ conductora dated section of BRIEF.md
routeconductor โ†’ agentagents/JOBS.md, agents/policy.json, a new session started
correctsession โ†’ file it ownsthe commit that fixes it, and the correction's note (BRIEF-CORRECTIONS.md, or the row redacted with its id kept)
pause(nobody)the gap between two steps: drawn as empty time, with its length; a pause is a fact too

How a step is written down

The shape the storyteller writes each step in, for motion@ to take as it is or change in the schema:

{ "t": "2026-11-11T09:53:12Z", "actor": "incident.synthetic@web-summit.dinis#1", "verb": "commit",
  "object": "research/synthetic/", "commit": "76ccd12c", "to": null, "note": "run 1 of the synthetic visitors" }
  • actor is an agent id, with #<n> for its generation when it matters; dinis; or an outside or machine id from cast.json.
  • commit, file, url or signal: at least one, so every step points at the record. A step with none is not drawn.
  • pause steps carry until instead of an object, so a gap has a length.

The glyph list

Each agent's glyph is in cast.json (icon.glyph). The rest: person, session, warning, stage, press, readers, siren, factory, vault, clock, dot, page-corner, window, table, tag, key, question, pin, bolt, scroll, baton-pass. Names only: motion@ draws them, small and in the designer's tokens (design/README.md).

Reading it (the storyteller's)

The words are chosen so a path can be told from the record alone: a commit, a key, a timeline row and a brief section each have an id that does not change. The one primitive the record does not hold directly is the pause: it is read as the space between two timed steps, so it is always exact and never invented.

Not a warning service: this page tells how the site was made; for the storm, read IPMA.