Repository navigation
Lead Console browser notifications with the item's state - #1507
Merged
Merged
Conversation
A narrow toast cuts the body off after a few words, so the state now comes before the issue and title it is about.
Merged
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.
Summary
A Console browser notification's body now starts with the newest Needs you item's state. A toast that macOS cuts short still shows what happened (
Slow,Failed,Died, …), not just which issue it was about.new Notification(`${count} need you · ${host}`, { - body: `${subject} · ${issue-title} · ${state}`, + body: `${state} · ${subject} · ${issue-title}`, })console/README.mdnow describes the order.Seams under test: the browser
Notificationconstructor, stubbed as the OS seam inconsole/tests/notifications.test.cjs. Fetch, SSE, storage and Web Locks stay real.Evidence
cd console && node --test tests/notifications.test.cjsgives# pass 14 / # fail 0.npm test --prefix site: 51 pass, 0 fail.cargo test --no-fail-fast, plus the integration files aftersecurity_runin a second run): every failure was a sandboxed test that needs something this machine lacks. They failed withsandbox failed to start: socat is not on PATH(sandbox::tests, scoringgrading::sandboxed_*,model_graders,trial,bug_origins) orModuleNotFoundError: No module named 'tomllib'(bug_origins::settlement, Python < 3.11). None of them reads the Console notification body. CI covers them.Merge Danger
Door: two-way
The change only reorders a template string in an embedded browser asset.
Blast Radius: cosmetic
Only the text of Console browser notifications changes. Title, icon, click target, dedup across tabs and locking are unchanged.
Review coverage
Both axes read all 3 changed files:
console/README.md,console/tests/notifications.test.cjsandsrc/console/assets/notifications.js. There were no generated-output exclusions.Unaddressed findings
Standards
None. The one judgement call, README wording that said "its issue" when the subject is not always an issue, is fixed: the README now says "then what it is about and its title".
Spec
Slowis the row's.state, and it now leads the body (src/console/assets/notifications.js:60).src/logs/reading/inbox.rs:41-75), so the body always opens with one.dispatched Ticket run · 1 hr 52 min) carries an elapsed time. Putting it before the subject would push what the item is about out of the same truncated toast. That works against the issue's "before what it is about" ordering, rather than finishing it.Security
None. The change only reorders three
textContentstrings from the same-origin Inbox page into the body of a browserNotification, which renders plain text. No new source, sink, network request, storage key or navigation target is added.Closes #1493
Built with claude 2.1.312 · claude-opus-5-5 · high
Security review outcome
No unaddressed introduced findings.