Skip to content

feat(notify): Linux production boot clock, D-Bus delivery, and none-setup - #186

Draft
777genius wants to merge 5 commits into
feat/agent-notify-e2efrom
cursor/uap-installer-linux-clock-6c84
Draft

777genius wants to merge 5 commits into
feat/agent-notify-e2efrom
cursor/uap-installer-linux-clock-6c84

Conversation

@777genius

@777genius 777genius commented Sep 14, 2026

Copy link
Copy Markdown
Owner

This is the R3/P7 Linux runtime slice on top of #177. It is independent of the wizard/SDK stack and of the Windows P7 PR.

What landed

  • Production Linux journal clock uses trusted /proc/sys/kernel/random/boot_id via journal.DefaultClock().
  • notifier.SystemBootClock shares journal.LinuxBootSample.
  • Default Linux delivery is FreedesktopDelivery: bounded session-bus connect, NameHasOwner readiness, one Notify for navigation=none, no beeep after a possible D-Bus effect, no click-to-focus daemon.
  • Linux Status is eligible without native DecoderFloor. setup.Apply / Inspect accept Linux for navigation none and reject local .app routing.
  • Existing-installer setup-notifications enable --navigation none works without native.
  • Codex e2e now expects Linux none-setup configure to succeed (it is no longer an unsupported-OS warning).
  • Session-bus Notify fixture counts D-Bus worker calls with an atomic (fixes Ubuntu -race).

Honest non-goals

Open in Web Open in Cursor 

Production Linux now injects the trusted procfs boot_id into both the
journal clock and SystemBootClock, using CLOCK_BOOTTIME so deadlines
include suspend. Explicit notify uses a thin session D-Bus adapter for
navigation=none and never falls back to beeep after a possible effect.

setup.Apply stays macOS-only; this does not start the click-to-focus
daemon or claim native Linux E2E.

Co-authored-by: Илия <iliyazelenkog@gmail.com>
@coderabbitai

coderabbitai Bot commented Sep 14, 2026

Copy link
Copy Markdown

Important

Draft PR not reviewed

Draft PRs are not automatically reviewed by default.

  • Trigger a manual review

To automatically review draft PRs, update your CodeRabbit configuration:

reviews:
  auto_review:
    drafts: true

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@codecov

codecov Bot commented Sep 14, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 63.42857% with 64 lines in your changes missing coverage. Please review.
✅ Project coverage is 65.30%. Comparing base (89d8524) to head (0c4c170).

Files with missing lines Patch % Lines
internal/notifier/delivery_linux.go 63.07% 29 Missing and 19 partials ⚠️
internal/agentnotify/setup/setup.go 33.33% 5 Missing and 3 partials ⚠️
internal/agentnotify/journal/clock_linux.go 75.00% 4 Missing ⚠️
internal/notifier/delivery.go 66.66% 1 Missing and 1 partial ⚠️
internal/notifier/delivery_clock_linux.go 60.00% 1 Missing and 1 partial ⚠️
Additional details and impacted files
@@                    Coverage Diff                    @@
##           feat/agent-notify-e2e     #186      +/-   ##
=========================================================
+ Coverage                  65.27%   65.30%   +0.03%     
=========================================================
  Files                        168      170       +2     
  Lines                      17182    17333     +151     
=========================================================
+ Hits                       11215    11319     +104     
- Misses                      4360     4388      +28     
- Partials                    1607     1626      +19     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

cursoragent and others added 3 commits September 14, 2026 17:31
Status no longer requires a macOS native DecoderFloor on Linux. A
managed, non-recovery install is eligible for session D-Bus delivery.
Also give policy-disable recovery a 30s budget so Windows CI does not
starve several Commits on a shared 5s fixture.

Co-authored-by: Илия <iliyazelenkog@gmail.com>
Linux Apply/Inspect no longer fail as unsupported_platform. Session
delivery provisions the journal without a macOS native helper. Local
.app routing stays Darwin-only and still requires DecoderFloor 1.

Co-authored-by: Илия <iliyazelenkog@gmail.com>
The existing-installer enable path now provisions a journal without a
native helper. A real dbus-daemon test covers NameHasOwner readiness
and one Notify submit through the production session adapter.

Co-authored-by: Илия <iliyazelenkog@gmail.com>
…D-Bus test

Linux navigation-none setup now registers MCP, so the Codex e2e no longer
expects an unsupported-OS warning. The session-bus fixture counts Notify
calls with an atomic to match the D-Bus worker.

Co-authored-by: Илия <iliyazelenkog@gmail.com>
@cursor cursor Bot changed the title feat(notify): Linux production boot clock and session D-Bus delivery feat(notify): Linux production boot clock, D-Bus delivery, and none-setup Sep 14, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants