{
  "agent": "incident.entities@web-summit.dinis",
  "session": "session_018yvwtQ1uRMGCrcHc3r5VJz",
  "state": "third session (since 08:45 UTC, 11 November): eight more names have nodes (211 then 214 nodes); every node page with an edge has a one-hop drawing, made in the browser (no cost in the build); next: read incident.graph@'s crossings.json for \"The same node elsewhere\"",
  "last_wake": "2026-11-11T11:38:44Z",
  "done": [
    "session key made (encryption sha256:f7eaaf5aa9755aef, signing sha256:1c95636ab25862f2), public half in data/keys.json",
    "entities/ontology.json: 13 types, 35 verbs each with a distinct inverse, each type with its own verbs; no 'related to' and no 'mentions' edge (the rows that mention a node are a query the page runs)",
    "entities/seed.json (hand-kept: which things are nodes, their names, the row or decision each hand-written edge is read from) and tools/entities-make.mjs (writes entities/<type>/<id>.json and index.json; refuses an edge with no row, decision, actor or file behind it; --check)",
    "124 nodes, 249 edges: every actor, decision and warning of the decision graph under the graph's own ids (body/ipma is actor:ipma, decision/websummit-wednesday is decision:websummit-wednesday), plus days, Web Summit's programme days, places, hazards, public roles (as roles), and the site's terms",
    "tools/entities-build.mjs --out DIR: a page per node (summary with its label and source, edges out and in grouped by verb, the timeline rows that use its name, the outside addresses, the same node in the graph), an index per type, the ontology as a page; a page per day (decisions, facts, evidence, hypotheses of that day)",
    "tools/entities-build.mjs --out DIR --link: links the first mention per paragraph of every known name on every built page (never inside a link, code, a form, the nav, the notice or the footer), marks outside links, redirects an outside link to its evidence page when evidence/index.json has a capture, writes entities/mentions.json (counts, and names with no node yet)",
    "app/lens/lens.css and lens.js: the marks, and window.StormLens.mount/show for the panel's Lens and This item",
    "tools/entities-link.mjs: the linker as the build's 'after' step (admin/build/generators.json, the conductor's slots); the librarian's file viewers (view/) are left as they are",
    "app/lens/ reworked to the designer's panel (app/design/panel.js): the switches and the colours of fact, evidence, hypothesis and outside links are the designer's; lens.js fills the Lens slot with what was linked on the page and opens a clicked name's node in This item (window.StormLens.show, called by stormPanel.openItem); checked in a browser, no console error",
    "measured on dev at 1,085 pages: 11,991 mentions linked on 447 pages, 2,366 outside links marked, 83 names with no node yet (entities/mentions.json, made on every build); the gate 3.0 s of its 5 s (the linker about 0.6 s)",
    "round 3: ids agreed with incident.graph@ (its builder reads entities/index.json and sets `entity` on its nodes; my pages open the node in the graph with ?node=); hooks agreed with incident.designer@ (design/round-31.md)",
    "round 3: 11 nodes carry the researcher's one-file-per-service data (metro, cp, the Tagus bridges, tunnels, airport, schools, Rede Expressos, TAP, museums, courts, Madeira's ports): every decision with its status, when published, when in effect, label, time read and address; what is still open; each try at the primary page",
    "round 3: evidence: a node's sources[] holds incident.archivist@'s evidence ids for its addresses; the Evidence section of each page links our capture first; the linker sends 305 outside links to evidence/<id>.html (data-out keeps the address); pages under evidence/ keep their own way out",
    "round 3: role/operator (Dinis Cruz, in that role only, at the conductor's relay of his yes): operates the team, instructs the conductor, both from CLAUDE.md",
    "the linker made faster at the conductor's ask (incident.ci@ measured it as the gate's largest step): about 620 ms to about 230 ms locally at 808 pages: the names as one trie in one regex with no unicode classes, one scan per page with a tag walker that only answers 'where is this hit', pages read and written as bytes, only the content between the banner or main and the panel read; it prints its time; output compared page by page with the previous linker's (same links). About 100 ms of what remains is reading and writing 800 files",
    "tools/entities-check.mjs before every release (scripts parse, nodes current); a new actor in the decision graph is placed by its kind instead of stopping the node maker",
    "the board's item pages are linked in the browser, not by the build (the conductor's decision, for the gate's budget)",
    "incident.meteorology@'s 110 nodes are not copied: the linker links their names to meteorology/nodes/<id>.html (1,185 mentions; data-node, not data-ent), a name both have stays with entities/, and that node's page points across",
    "joined, not copied: incident.sources@'s 46 bodies (each node's page points to sources/<id>/; a body only sources/ has is linked there)",
    "the linker a second time, at the conductor's ask (it had grown to about 1,000 ms at 1,407 pages as names and pages grew): pages are read word by word against a hash table of the names' first words, tags stepped over, hits memoised; and five families of generated pages are left to the browser (research/weather-sites/sites/ 107, library/pack/ 33, models/models/ 14, evidence captures 123, generated sources/<id>/ 43; board/items/ 343 already). About 470 ms in the build's generators line at 1,408 pages; 703 still-linked pages compared byte for byte with the previous output",
    "second session, 05:21 to 05:29 UTC on 11 Nov: session key (incident-entities-dinis-2), the first entry handed over; incident.ipma@ nodes joined, not copied (areas and codes, places, coastal places, qualified station names, warning types and levels, data sets): 635 more mentions linked, each checked against the previous output on the same unlinked site (card a-ipma-7); the linker writes each page in place: 650-700 ms to 360-420 ms in the build, output byte for byte the same; mentions.json says where the time goes by family of pages; LPPT, LPMA, SRPC named; capitania-lisboa placed in the seed",
    "hourly wake 07:38 UTC on 11 Nov: 8 new nodes from the decision graph (7 decisions: the mainland and Madeira counts, Madeira flights, Porto Santo power, Funchal centre, TCB Barreiro, the Pedrouços ferry; service/tcb-barreiro, named in the seed with TCB): 203 nodes, 411 edges",
    "hourly wake 08:43 UTC on 11 Nov: the node maker follows `more` in data/graph/storm.json (incident.graph@ moved the decisions to storm-decisions.json; without this 46 decision nodes lost their graph id): every decision node names its graph node again",
    "third session, 08:50 UTC on 11 Nov: nodes for Machico, Câmara de Lobos, Ponta do Sol, Ribeira Brava, Parque das Nações, Cabo Raso, Diário da República and VOST Portugal, each read from a row or a decision (Santa Cruz left without one: the bare name is also a mainland station on IPMA's stations page); a one-hop drawing on each node page (app/lens/hop.js and hop.css, from entities/index.json and the built entities/edges.json; fact solid, evidence dashed, hypothesis dotted, ours thin)",
    "hourly wake 09:38 UTC on 11 Nov: nodes remade after the hour's rows and decisions: 215 nodes, 435 edges (a node for incident.envoy@, two more decisions, one more warning; body/amn now has an edge); builder 133 ms, linker 370 to 390 ms at 2,059 pages (one run of 502 under load)",
    "hourly wake 10:38 UTC on 11 Nov: nodes remade: 222 nodes, 450 edges (five new agents: broadcast, motion, planner, storyteller, synthetic; two decisions from Madeira); builder 154 to 164 ms, linker 386 to 442 ms at 2,164 pages (105 more pages than an hour ago; the time follows the bytes, no one family stands out)",
    "hourly wake 11:38 UTC on 11 Nov: nodes remade: 224 nodes, 456 edges (incident.transport@; the decision lisbon-flights-208); builder 136 to 147 ms, linker 406 to 473 ms at 2,221 pages (926 pages read; research/ is now the second family, 44 ms)"
  ],
  "next": [
    "agents/entities/HANDOVER.md, In flight: read data/graph/crossings.json for \"The same node elsewhere\"; then Owed 4 (nodes with no edge yet, only as the data connects them)"
  ],
  "asks": [],
  "updated": "2026-11-11T11:38:44Z",
  "by": "incident.entities@web-summit.dinis"
}
