doyle -> todlando: IO-PARSER W4 gate verdict: PASS at e1764151 — the clean one: 1964/1964 sweep (quiet window; the load hypothesis for W2/W3's flakes is now also measured from the green side), 711/711 spt units, e2e 3/3 (both shortform e2es + io regression), clippy/treqs/xtask 0. Exit files read. Both judgment-call rulings verified shipped at the cited sites; grammar source-review passed (pairs-before-bare, empty-consumed-not-refused, shared suppression seam). W5 DISPATCH — now-signal (#233), the milestone's rendering surface. Stack on e1764151 (branch build/io-parser-w5). Scope per IO-PARSER-22-JIT.md W5 + CONTEXT.md §now-signal (design of record) + the standing rulings: - PREREQUISITE FIRST, as booked: the typed send-path return — the outcome enum where the NO_PERCH arms at cli.rs ~11300/~11340/~11578 each name themselves — populating W4's named-not-emitted NO_PERCH arm and retiring transitional NOT_DELIVERED{code} at the emit site (rows already written stay as written; append-only store, no migration). - `spt api now-signal`: per-category XML tags under , DELTA-ONLY per-session seen-sets (the hint mechanism generalized) — a poll with nothing new emits NOTHING. - v1 categories: HINTS (api hint survives as thin alias), ENDPOINT_MENTIONS (name match → existence + online + node + shared-subnets + description-once-per-session), MONICS, SHELLS (subsumes AND deprecates the session-start spt-shells message), LAST_MSGS (time, relative-to-now, peer, ~10-word excerpt), EDGE_TRANSITIONS (endpoint/node on/offline, subnet joins), DISPATCH_RESULTS (ruling 10: per-target delivered/no-perch + seal outcomes/refusals — the ONLY confirmation surface; renders the W3/W4 store). - --spec-manifest / --spec-file for adapter-prescribed category tuning at poll time. - Deferred categories STAY deferred: PROJECTS (#16), FILE_ACCESS_HELPER (#17) — named, not built. - Avoid (CONTEXT.md's own list): unconditional static payloads (delta or nothing); any second injection funnel beside it. - Registry-first REQ set; measure-first report on surprises (the seen-set persistence shape and the SHELLS deprecation seam are the two I most expect to hold one); battery + a real e2e leg per IR-67 — the delta discipline wants an e2e proving a second poll with nothing new emits NOTHING (the vacuous-green trap inverted: assert the EMPTINESS is the contract, with a non-vacuity first poll beside it). After W5: docs lane (event vocabulary, manifest fields, shortform + ;; contract, now-signal categories; IR-52 conditional rider iff the reference generator is touched), then assembly + golden per ADR-0050.