Files
summercms/.planning/phases/13-p-ytarium-api-wishlist-notifications-csv-credentials-public/13-DISCUSSION-LOG.md
2026-10-02 18:17:03 +02:00

59 lines
2.6 KiB
Markdown

# Phase 13: Płytarium API — wishlist, notifications, CSV, credentials, public routes - Discussion Log
> **Audit trail only.** Do not use as input to planning, research, or execution agents.
> Decisions are captured in CONTEXT.md — this log preserves the alternatives considered.
**Date:** 2026-10-02
**Phase:** 13-p-ytarium-api-wishlist-notifications-csv-credentials-public
**Areas discussed:** Phase 13/14 boundary, Wishlist mail & digest, User plugin register hook, Parity evidence
---
## Phase 13/14 boundary
| Question | Options | Selected |
|----------|---------|----------|
| Wishlist match/apply-release | Move to Phase 14 / Port with Discogs client in 13 | Move to Phase 14 |
| Credential /test endpoints | CRUD in 13, /test in 14 / All in 13 behind an interface | CRUD in 13, /test in 14 |
| CSV split | Routes in 13, job bodies in 14 / Whole CSV in 14 / Whole CSV in 13 | Routes in 13, job bodies in 14 |
| Interim job behaviour | Register no worker; rows wait / You decide | Register no worker; rows wait |
---
## Wishlist mail & digest
| Question | Options | Selected |
|----------|---------|----------|
| Purchase mail | River job in the same tx / Inline like PHP | River job in the same tx |
| Digest split | Bell + queue row in 13, job in 14 / Whole digest in 13 / Whole digest in 14 | Bell + queue row in 13, job in 14 |
| Item-added trigger location | You decide / Extend GORM hook / Explicit service call | You decide |
---
## User plugin register hook
| Question | Options | Selected |
|----------|---------|----------|
| How invitation_token reaches fonoteka | Generic Payload field / Typed InvitationToken field / Fonoteka-side wrapper | Generic Payload field |
| Approve additive sm-user-plugin change | Yes, additive only / No | Yes, additive only |
| Bootstrap registration | Reuse user plugin's register service / You decide | Reuse user plugin's register service |
---
## Parity evidence
| Question | Options | Selected |
|----------|---------|----------|
| New flow recordings (multi) | nuxt-wishlist / nuxt-csv + export / public anonymous / mcp-wishlist + onboarding | All four |
| Side-effect verification | DB + realtime goldens, mail in Go tests / Go tests only | DB + realtime goldens, mail in Go tests |
---
## Claude's Discretion
- Item-added trigger location (hook vs explicit call), handler file layout, job kind names, interim behaviour of the `selected_discogs_id` branch, recorded-vs-Go-tested error cases, plan split.
## Deferred Ideas
- Phase 14: wishlist match/apply-release, credential /test, CSV and digest workers, `selected_discogs_id` branch, prune-notifications command.