Skip to content

Add OS notification platform services - #65

Merged
1bye merged 5 commits into
mainfrom
codex/os-notifications-19
Nov 12, 2026
Merged

1bye merged 5 commits into
mainfrom
codex/os-notifications-19

Conversation

@1bye

@1bye 1bye commented Nov 12, 2026 •

Copy link
Copy Markdown
Owner

Refs #19

Rake apps can post and dismiss OS notifications through their shared platform service. Native delivery uses the pinned host APIs; macOS authorization is awaited before posting, browser authorization starts in a user event, and clicks activate the app and deliver a validated URL through the existing activation inbox.

Includes a documented public API, explicit unsupported/unpackaged behavior, bounded payload ownership, denial and callback tests, browser adapter tests, Foundation controls, platform requirements, and documentation/changelog links. The App builder change is one additive startup call. Native Windows/Linux permission remains Unknown because the delivery API exposes no permission query or receipt; Linux banner replacement/retraction is unavailable in the pinned host adapter.

Validation:

  • cargo test -p rake-app -p rake-foundation
  • cargo test -p rake-app --no-default-features --lib --test platform
  • cargo test -p rake-app --features view-test-support --lib (88 passed)
  • cargo clippy --workspace --all-targets -- -D warnings
  • cargo fmt --check, cargo run -p rake-app-cli -- format, cargo run -p rake-app-cli -- lint (732 files, no diagnostics)
  • python3 scripts/check-spacing.py
  • Default and headless Web library checks, Rustdoc with warnings denied, and node scripts/test-platform.mjs
  • Foundation native debug bundle built on macOS; ad-hoc signature verified with codesign --verify --strict --deep, and CFBundleIdentifier confirmed as com.example.rake.foundation

Remaining:

  • Verify real packaged notification delivery and click payloads on macOS, Windows, Linux and Web using the documented Foundation procedure. Headless host tests do not prove OS banners or permission UI.
  • Verify the Web bundle with a matching bindings CLI; it is absent on this Mac, and no tools were installed.
  • CI is green: seven checks passed; the extended check is intentionally skipped on pull requests. Removed the local worktree, local branch, target directory, generated package and task logs. The PR remains draft.

🤖 Generated with Claude Code

1bye and others added 4 commits November 12, 2026 13:46
Refs #19

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Keep browser gesture checks compatible with hosts that do not expose userActivation. Apply the repository spacing rules.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Gate the native error import and cover hosts without userActivation.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1bye
1bye marked this pull request as ready for review November 12, 2026 15:15
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@1bye
1bye merged commit 2b17b94 into main Nov 12, 2026
8 checks passed
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.

1 participant