Story
As a druthers user with private domain shelves, I want my profile endpoint /v1/public/{handle} to return 200 with an empty/private profile payload instead of 404, so visitors see my profile header and private state instead of a Page Not Found error.
Acceptance Criteria
Context
Raw capture: By default, if you have a public profile, you should display your top 5. BUG: If you have all domains private, you get a 404.
Channel Impact
- Web: companion ALeonard9/druthers-web (profile page top 5 & private state rendering)
- iOS: no impact — handles 200 response with private state flags naturally
- MCP: no impact — MCP profile lookup tool handles private status on 200
Estimate
- Recommended model: Sonnet 5 — routine API logic and error handling update
- Human effort: S — quick code review and verification of profile page rendering
Story
As a druthers user with private domain shelves, I want my profile endpoint
/v1/public/{handle}to return 200 with an empty/private profile payload instead of 404, so visitors see my profile header and private state instead of a Page Not Found error.Acceptance Criteria
/v1/public/{handle}returns HTTP 200 with profile header and private state indicators when all domain permissions are private.druthers-webhandles 200 private state response without triggering Next.jsnotFound().Context
Raw capture:
By default, if you have a public profile, you should display your top 5. BUG: If you have all domains private, you get a 404.Channel Impact
Estimate