Twinned from https://github.com/cfsh/ninefold/issues/726 by tools/beads/import_github.py's reconcile pass.
Filed unclaimed and unlabelled from a strategic-uplift window, working #702. Backlog.
⚠️ Re-measured on a second live run — the original filing blamed the wrong 7%. Both numbers below are from real ticks of this session; the correction is kept visible because it changes which code the fix should touch.
| section | bytes | share | |---|---|---| | tracked PRs (1 PR, 5 comments) | 17,729 | 7% | | open issues | 238,696 | 93% | | total | 256,425 | |
188 open issues printed. Six were this session's. emit_issues() (poll.py:815) walks gh.issue_list(limit=200) and prints every one — number, labels, ownership, newest comment, and a ⚠ NEEDS ATTENTION block with full comment bodies where a reply is owed — then annotates ownership *after* printing. There is no scoping filter on what it emits; 22 NEEDS ATTENTION blocks were rendered, none of them in this session's chunk.
So a session pays ~240 KB per full tick to be told, at length, about 182 issues that CLAUDE.md explicitly defines as not its work: *"No label → inert backlog. Explicitly nobody's job, however obvious it looks."*
@aedanpope, on #718, 2026-08-07:
> *"If we can minimize polling we save tokens"*
He said it about frequency, and #713 addresses that. Per-run size is the other multiplier and nothing has looked at it — and it is the larger one: cutting the issues section to the session's own chunk plus genuinely-new arrivals is roughly a 10× reduction in digest bytes, at no cost to responsiveness, because the removed text is about work the session is forbidden to pick up.
⚠️ The digest is deliberately verbatim, and that is load-bearing. CLAUDE.md's feedback doctrine is that a session must read what @aedanpope actually wrote — *"Itemizing a bundled multi-ask comment is still on you"* — and notes/reviewer.md calls the reviewer's ledger *"the canonical itemization"*. A blunt truncation would silently cut exactly the multi-ask prose that matters.
⚠️ And the UNCOVERED read is deliberate too. emit_issues's own comment (:824) says the meta suppression justifies *"suppressing the UNCOVERED read, NOT the item"* — so the wide sweep was a decision, presumably so a session can notice work nobody has picked up. That intent has to be preserved, not deleted.
So the shape is summarise the wide sweep, keep the narrow one verbatim:
session: label) — unchanged, full text, always;NEEDS ATTENTION blocks. A session cannot action an unreplied comment on another session's issue anyway; CLAUDE.md says commenting is fine but the work is off-limits;jcantsp-bot) comment bodies in the tracked-PR section — first line plus a byte count. A session does not need its own reply read back to it; in the first run measured, all five were.⚠️ Do not change the --check path. It is ~5s against ~2min precisely because it skips all of this, and that cheapness is what makes the documented "run --check first, every tick" rule affordable. This is about the full digest only.
#587 (an unlabelled session gets 130 issues in the fingerprint) and #623 (the board and closing_refs escape the per-session fingerprint scoping) are both about *when the digest runs*. This is about *how much it prints when it does*. A session that is correctly scoped and correctly woken still pays the 240 KB.
Related: #718 (the token ask), #713 (frequency — the other multiplier), #587/#623/#451 (fingerprint scoping, distinct).
None.
No comments.