Skip to content

obbpr - #113

Closed
mmattbtw wants to merge 183 commits into
mainfrom
obbpr
Closed

obbpr#113
mmattbtw wants to merge 183 commits into
mainfrom
obbpr

Conversation

@mmattbtw

@mmattbtw mmattbtw commented Aug 11, 2026

Copy link
Copy Markdown
Member

Superseded by 33 stacked PRs grouped by commit order and area. Merge from the bottom of the dependency chain, starting with #195. Each subsequent PR targets the preceding branch. PR #194 continues above the final stack branch.

The original obbpr branch is preserved unchanged at d3cf209d6ab5ae6d3b2b7ac353b3dbb7d54fe133. To return to the original review setup, reopen this PR and retarget #194 to obbpr. No original commits were rewritten or removed.

The final stack branch has the identical tree and commit as obbpr. These are draft PRs because the historical checkpoints have not been independently built or tested during this split. Existing main merges are preserved; the stack has not been rebased onto newer main changes.

Oldest to newest:

  1. feat(teal): add appview and live Jetstream ingestion
  2. feat(profile): add onboarding and listener identity
  3. feat(feed): add explore discovery and infinite scrolling
  4. feat(music): add artist and album pages
  5. style(amethyst): refresh the interface and remove legacy naming
  6. fix(feed): paginate actor plays and repair profile and cover rendering
  7. feat(music): order album tracks and add artist imagery
  8. feat(social): add lexicons, indexing, and read APIs
  9. feat(social): add posts, replies, playlists, badges, and notifications
  10. feat(amethyst): add composer modal and profile editing
  11. fix(cadet): add network backfill and identity updates
  12. chore(dev): add the stable Cloudflare preview workflow
  13. feat(feed): add posts and separate home feed tabs
  14. feat(amethyst): add listen permalink pages
  15. feat(graph): index follows and add profile follow controls
  16. feat(social): add post permalinks, viewer state, and AT URI routes
  17. feat(profile): add artist leaderboards and listening stats
  18. fix(core): recover ingestion, lexicon CI, and feed pagination
  19. feat(profile): show posts on profiles
  20. feat(teal): handle account lifecycle and profile top albums
  21. feat(amethyst): add individual and bulk scrobble editing
  22. fix(auth): restore issuer clients and verify public OAuth metadata
  23. fix(core): harden service and frontend paths and refresh dependencies
  24. fix(teal): unblock ingestion, repair track links, and remove badges
  25. feat(music): deduplicate albums and automate catalog normalization
  26. refactor(lexicons): adopt AT Protocol validation and fix notification links
  27. feat(amethyst): group notifications and show post context
  28. fix(music): classify complete discographies and support artist slugs
  29. feat(amethyst): add cohesive dark mode
  30. feat(teal): add manual album listens and durable ingestion retries
  31. fix(amethyst): use Teal identity in the sidebar and new posts
  32. fix(core): integrate stable namespaces and harden search and ingestion
  33. fix(ci): stabilize Rust lexicon generation in service images

mmattbtw added 30 commits June 9, 2025 09:44
- lexicon stolen from place.stream.richtext.facet lol
Build the Teal-branded Amethyst feed UI, expose matching Aqua XRPC fields, and make Cadet the durable Jetstream ingestion path. Add Compose services, same-origin XRPC proxying, OAuth tunnel notes, and a working project handoff checklist.
Capture checkpoint commit discipline, todo handoff updates, OrbStack preview startup, same-origin XRPC proxying, and Cloudflare OAuth callback verification for future sessions.
Remove Amethyst demo fallback data, replace blocking discriminant lookups with normal async awaits, and read canonical extended artist joins from Aqua so live Jetstream records reach the public feed with artist metadata.
# Conflicts:
#	packages/lexicons/lex-gen.sh
Publish Teal profile records through a polished onboarding wizard, prefill setup from the signed-in Bluesky identity, and render public Bluesky profile data with a clear disclaimer when a listener has not created a Teal profile yet.
Decode blob-backed Teal profiles without the Jacquard owned-value CID link failure, refresh handles on updates, preserve the same decoder for CAR backfills, and cover create, update, and tombstone delete behavior with a Postgres integration test.
This was referenced Sep 10, 2026
@mmattbtw mmattbtw closed this Sep 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants