Based on main, and contains only this change. It conflicts with #12, which moves the test and type files this edits. Either can merge first; I'll rebase the other one onto main after it does.
Why. A reply stayed in the menu until you acted on the PR, or for up to 30 days, and there was no way to dismiss it. From public data alone there's no telling what you've seen. Tangled's notification service knows, and syncs read state with tangled.org, but it needs a sign-in. That's #11, which covers login, keyring token storage, refresh, re-prompting, and using atgc instead of our own OAuth client.
Changes. The extension now counts only PRs waiting for your review.
- Helper: it no longer searches for your PRs. Those were 2 searches of ~80 KB per refresh, its heaviest requests.
Item.kind,Snapshot.replies,Computed.repliesandTracked.youare gone, and Jetstream no longer wakes the helper for PRs you open elsewhere. Your own PRs on watched repos still don't count as waiting. - Extension:
- The replies pill,
tangled-reply-symbolic.svg, the Replies section and thecount-replieskey are gone. A stored value for the removed key is just ignored. - Notifications and overview search are review-only.
- The replies pill,
- Settings: the "You" description now says what the handle does.
- Docs and screenshots: the README, DESIGN and BACKLOG are updated, with signed-in mode raised to P2 and linked to #11, and the screenshots regenerated.
Tested.
- 71 tests pass, the typecheck passes, and the schema validates.
- Screenshots regenerated and reviewed: no replies pill, section or setting.
- Live, cold, against permadeath.com and lance.blue: 210 requests and 0.33 MB, against 337 requests before, with no searches. 64 PRs waiting.
🤖 Generated with Claude Code