Skip to content

[Planning] RFC + ADRs for Curator Dashboard v2 refactoring#151

Open
misabegovic wants to merge 5 commits into
mainfrom
claude/review-curator-dashboard-bah58
Open

[Planning] RFC + ADRs for Curator Dashboard v2 refactoring#151
misabegovic wants to merge 5 commits into
mainfrom
claude/review-curator-dashboard-bah58

Conversation

@misabegovic
Copy link
Copy Markdown
Owner

  • RFC-0001: Curator Dashboard v2 — Per-Resource Suggestions, Reviews, Audio Tours
  • ADR-0003: Replace ContentChange with per-resource suggestion models
  • ADR-0004: Reviews management system with moderation workflow
  • ADR-0005: Audio tour generation integration in curator dashboard
  • Updated planning README index

ContentChange model doesn't work on production. Only PhotoSuggestion
functions. These documents plan the replacement with typed per-resource
models, addition of review moderation, and audio tour generation UI.

https://claude.ai/code/session_01BBodBtQ9TUrV2gU3Vjh1qS

- RFC-0001: Curator Dashboard v2 — Per-Resource Suggestions, Reviews, Audio Tours
- ADR-0003: Replace ContentChange with per-resource suggestion models
- ADR-0004: Reviews management system with moderation workflow
- ADR-0005: Audio tour generation integration in curator dashboard
- Updated planning README index

ContentChange model doesn't work on production. Only PhotoSuggestion
functions. These documents plan the replacement with typed per-resource
models, addition of review moderation, and audio tour generation UI.

https://claude.ai/code/session_01BBodBtQ9TUrV2gU3Vjh1qS
…ibutor, absorb PhotoSuggestion

Key design changes based on feedback:
- One pending suggestion per resource (unique constraint), not per curator
- Multiple curators contribute to the same suggestion via typed contribution models
- PhotoSuggestion absorbed into LocationSuggestion (unified text + photos)
- Contribution model has same typed columns as suggestion for audit trail

https://claude.ai/code/session_01BBodBtQ9TUrV2gU3Vjh1qS
- Location: video_url (string) → video_urls (JSONB array)
- Experience: add video_urls (JSONB array)
- Plan: add has_one_attached :cover_photo with fallback chain
- Experience/Plan: add image variants (thumb/medium/large)
- Updated ADR-0003 suggestion models with new fields
- Updated RFC-0001 with new model capabilities

https://claude.ai/code/session_01BBodBtQ9TUrV2gU3Vjh1qS
AI services currently write directly to database. This ADR introduces
origin tracking (human/ai_generated) on all suggestion models so AI
content goes through the same approval workflow as curator suggestions.

- origin enum + ai_service field on Suggestable concern
- AI services create suggestions instead of direct writes
- Dashboard shows Human/AI tabs separately
- System user (ai@usput.ba) for AI operations
- AudioTourGenerator stays direct (admin-only = explicit approval)
- New implementation phase 2.5 for AI pipeline adaptation
- Updated ADR-0003 migration and concern with origin fields

https://claude.ai/code/session_01BBodBtQ9TUrV2gU3Vjh1qS
@cursor
Copy link
Copy Markdown

cursor Bot commented Feb 5, 2026

You have run out of free Bugbot PR reviews for this billing cycle. This will reset on March 3.

To receive reviews on all of your PRs, visit the Cursor dashboard to activate Pro and start your 14-day free trial.

…o tours

Faza 1: Admin direct CRUD via Flipper per-actor flags
- Add flipper_id to User, admin_direct_crud? helper
- Dual-path controllers: admin = direct CRUD, curator = proposals

Faza 2: Per-resource suggestion models replacing ContentChange
- Suggestable concern with status/approve/reject/contribute workflow
- LocationSuggestion, ExperienceSuggestion, PlanSuggestion with typed columns
- Multi-curator contribution tracking (3 contribution models)
- Curator controllers for creating/editing suggestions
- Admin unified suggestion inbox + per-type approval panels
- 8 migrations with unique partial indexes

Faza 3: Reviews management with moderation + flagging
- moderation_status enum (unreviewed/approved/flagged/removed) on Review
- ReviewFlag model for curator flagging workflow
- Admin reviews controller with approve/remove actions

Faza 4: Audio tour generation integration
- AudioTourGenerateJob background job
- Admin-only generate_audio_tour action with rate limiting
- Location show page UI with locale dropdown + audio player

437 tests, 1423 assertions, 0 failures.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
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