diff --git a/3ca0-announcements-purgatory.md b/3ca0-announcements-purgatory.md index e985258..d66558b 100644 --- a/3ca0-announcements-purgatory.md +++ b/3ca0-announcements-purgatory.md @@ -65,6 +65,18 @@ This prevents serving announcements for repositories that may never receive stat - Created worktree: worktrees/3ca0-announcements-purgatory - Ready to begin implementation +### 2026-01-23 [Design Session] +- Conducted extensive architectural review with multiple iterations +- Clarified requirements based on user feedback: + - Problem: Prevent serving empty bare repos indefinitely (misleads clients) + - Trigger: Git data arrival promotes announcements (not state events) + - Indexing: Must use (pubkey, identifier) tuple (identifier not unique) + - Expiry extension: Two places (state event arrival AND git auth) + - Edge cases: Newer announcements replace older, service list changes +- Created design document: `docs/explanation/announcements-purgatory-design.md` +- OpenCode conversation: https://opencode.ai/c/01JJBXPFVVQVX5RVQF2KQBQZJR +- Next: User to review design document before implementation begins + ## Implementation Considerations - **Data Structure**: Need separate storage for purgatory announcements (HashMap keyed by repo identifier?)