Repository navigation
board: keep the interests backlog depth when the digest is late - #67
Merged
Merged
Conversation
Two bugs, one root: the interests tier's staleness banner and its backlog depth were mutually exclusive, and the suite could not see it because its fixtures aged with the calendar. - `_render_html` built the stale summary as "N paper(s) · <warning>", dropping the "· M more days behind it" the fresh summary carries. That text is also what `_EXTRA_JS` swaps in via `data-stale-text`, so even a fresh render lost the depth the moment the browser recomputed staleness. A late digest is exactly when the depth matters — how many days are queued behind the one on screen is what tells you whether to keep tapping 🧹. `behind` now rides on both texts. - tests/test_board.py pinned its own dates but not its clock, so `_tree`'s "last digest: 2026-08-26" went stale on 2026-08-28 and two tests started failing on a calendar day rather than a code change. `_snap_with_remote` and `_interests` now pin `generated` the way `_inbox` already did. The failures were real, not just fixture drift: the render they caught is the one the board shows right now, with the nightly digest running late. 169 tests pass; make validate green.
…lack-paper-post-hk43r7
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Found while diagnosing the missing 2026-08-28
#paperspost. The digest itself was fine — every cron in Mind and Memory was delivered ~11h late on the 27th and not at all on the 28th (recorded in PyAutoMinddraft/bug/ci/scheduled_runs_delivered_hours_late.md). But chasing it surfaced two bugs here, with one root.mainis red — this PR is what clears ittests/test_board.pypinned its fixture dates but not its clock, so_tree'slast digest: 2026-08-26crossed the staleness threshold this morning and two tests began failing on a calendar day rather than on a code change.That was a prediction when this PR was opened; it is now observed.
validatefailed onmainon both of today's digest commits:inbox: appended:1, stamped:2026-08-28interests: appended:10, stamped:2026-08-28Both with the same
2 failed, 166 passed:Nothing had pushed to
mainbetween the fixtures ageing out and those commits, which is the only reason it stayed green until 13:14Z._snap_with_remoteand_interestsnow pingenerated, exactly as_inboxalready did with its own calibrated date.The failure was real, not just fixture drift
_render_htmlbuilt the interests stale summary asN paper(s) · <warning>, dropping the· M more days behind itthat the fresh summary carries. That same string is what_EXTRA_JSswaps in viadata-stale-text, so even a fresh render lost the depth the moment the browser recomputed staleness.The effect: the board hides how many days are queued behind the batch on screen precisely when the digest is late — which is when you most need to know whether to keep tapping 🧹. The markdown renderer was never affected; only the HTML board.
behindnow rides on both texts.Verification
make validategreen.test_the_backlog_depth_survives_the_stale_bannerwas checked non-vacuous: revertingscripts/board.pyalone makes it fail.mainmerged in, so this is tested against today's filed papers.No behaviour change to the fresh path, the sweep, the lapse window, or any action URL.