Verify macOS idle and lock signals before Work reminder routing #100
Labels
No labels
needs-info
needs-triage
ready-for-agent
ready-for-human
v2
wayfinder:grilling
wayfinder:map
wayfinder:prototype
wayfinder:research
wayfinder:task
wayfinder:ticket
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
aiko/denpa#100
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Parent
aiko/denpa#98 and #99.
Why this is separate
The first routing slice treats only a fresh Windows OS activity report as active. A connected Work MacBook without a verified OS signal remains connected/unknown, not active. Do not promote a socket connection or a failed probe to "active", and do not infer a sitting or seam (denpatou ADR-0014). Personal and Work installs remain separate; this ticket does not bridge them.
Investigation / delivery
On the supported work MacBook, prototype a Tauri-native idle probe using Apple's Core Graphics
CGEventSource.secondsSinceLastEventTypeforkCGAnyInputEventTypein the combined session state. Determine a reliable lock/switch/sleep signal before reporting unlocked activity:CGSessionCopyCurrentDictionary's on-console key is not itself an unlock guarantee; do not silently depend on undocumented lock keys. Verify permissions/sandbox packaging and fail unknown when a signal is absent. Then add macOS reports through the existing authenticated expiring desktop-presence protocol. Linux is a separate environment-specific follow-up (logind hints are not universally trustworthy).Primary sources: https://developer.apple.com/documentation/coregraphics/cgeventsource/secondssincelasteventtype(_:eventtype:), https://developer.apple.com/documentation/coregraphics/cgsessioncopycurrentdictionary(), https://developer.apple.com/documentation/appkit/nsworkspace/sessiondidresignactivenotification, https://v2.tauri.app/start/prerequisites/ .
Acceptance
Blocked by
Work MacBook available for native verification; #99 desktop-presence contract and #65 Windows/connected-Android routing must be integrated first.