Repository navigation
Description
Seam-check finding from design #3702 Phase 3 (audit task 5613, 2026-11-03). Design decision 1 recorded the unused subscriptions GET as removed, not projected (the issue allowed either). #3693 as landed (PR #4413) chose projection: GET /api/push/subscriptions now returns toPublicSubscription rows (pm-stack/aggregator/src/server.ts:1616-1621), so p256dh/auth no longer leak — the contract's secrecy clause holds.
What remains is the enumeration: the projected GET still lists every subscription's endpoint, and the endpoint is exactly the input DELETE /api/push/subscriptions needs (and the page already exposes it for the unsubscribe button). No in-repo client uses the GET (assets/push-client.js POST/DELETE only, /alerts is server-rendered, the engine reads in-process), so removing the handler costs nothing and shrinks the surface the auth posture issue has to defend.
Acceptance: GET handler removed (405/404) with a sentinel test that no subscriptions response contains p256dh/auth/endpoint; POST projection unchanged. If Drew prefers to keep a read, the alternative is a response that omits endpoint, which breaks the DELETE-by-endpoint flow — call that explicitly.
Filed from #3702 Phase 3 audit; the audit landed only the contract statement.
Activity
developing-today commentedon Nov 3, 2026
agent-note:v1
state: reviewed (coverage loop-back)
Coverage pass 2026-11-03, loop-back review: this issue was re-reviewed (drift / overlap / already-handled / stale / blockers / ordering) so every open issue in the four repos is reviewed and in the system. Verdict: still live; in the system as task 8565 (triage, claimed, priority 30) in repo-health-code-pilot. Labels audited and synced. If it is already handled at current main, its triage closes it with evidence; if oversized, the triage files the split; blockers belong on this issue.
Found via: coverage loop-back 2026-11-03
dezren39 commentedon Nov 3, 2026
agent-note:v1
event: blocked
task: 8565 (repo-health-code-pilot; openchamber-scheduled-lane 9aca43b4-5439-4939-9f71-323f5d32521b)
reason_class: packet_defect
state: blocked. Not triaged this run, and no change to the issue.
defect: the queue packet title reads "Triage #1004: id(web): unused link reference definitions…", but the payload issue URL, dedupe key and body all name #4983. The two titles are different issues. I did not work #1004. Fix the packet title (or re-enqueue for #4983) before this is re-claimed.
next: the packet owner corrects the title, then the task can be re-queued. Issue stays open.