aboutsummaryrefslogtreecommitdiffstats
path: root/docs/superpowers/plans/2026-09-15-notifyd.md
AgeCommit message (Collapse)AuthorFilesLines
10 hoursdocs: fix the expire_timeout direction in the spec and planDanilo M.1-10/+14
The freedesktop spec says -1 means the server decides and 0 means never; the spec and plan had them reversed, which the shipped code inherited and the live handover test caught. Corrected to match the spec, libnotify's -1 default and dunst.
10 hoursdocs: correct the snooze check count to fiveDanilo M.1-1/+1
The check has five assertions, not four.
10 hoursdocs: fix the runtime dir collision in the check scriptDanilo M.1-1/+2
The daemon binary was built at $tmp/notifyd, the same name RuntimeDir() gives under XDG_RUNTIME_DIR, so the two collided. The runtime dir moves to $tmp/run, which is what the shipped script does.
10 hoursdocs: give the plan's test files the GPLv2 headerDanilo M.1-0/+44
The test snippets omitted the header the global constraints require on every .go file, which a task review flagged against the first one shipped. The snippets now carry it, so later tasks do not repeat the gap.
10 hoursdocs: record the notifyd repo as createdDanilo M.1-4/+4
Public under the Linux cgit section, cloned to ~/Programming/GIT/notifyd, so Task 1 Step 1 is done and the executor starts at Step 2.
10 hoursdocs: add the notifyd implementation planDanilo M.1-0/+1780
Plan one of two for the notification daemon: the Go daemon and notifyctl in their own repo. The renderer plan is separate because the daemon is working, testable software on its own, exercised through notifyctl. The policy is pure and tested without a bus; the store's expiry, dismissal and eviction are separate lifetimes, which the store tests pin; and test-notifyctl.sh runs the daemon and CLI on a private session bus against a temporary runtime directory.