docs(plan): add Fase 15 — common items management (MVP2 reopened to 7 fases)
Adds a planned-phase doc for the next ask on top of the closed MVP2 cycle: weighted suggestion ordering + exclude items already on the active list. - Extends item_frequency (migration 026) with `weight integer` written via two admin-only SECURITY DEFINER RPCs (set_item_frequency_weight + purge_item_frequency). The client never writes weight directly — the existing all-deny policies on item_frequency stay in place. - fetchSuggestions reorders by `weight desc, use_count desc, last_used_at desc` and accepts an excludeNames arg to drop already-added items from the dropdown. - UI lives in /collective/manage as a 3-way segmented control per row (Hide / Normal / Boost mapping to -50 / 0 / 50). Admin writes; member read-only; guest hidden. Rebrand: MVP2 reopens from 6/6 ✅ to in-progress 6/7 ✅, with Fase 15 pending. Headers in fases 9–14 bump from "·N/6" + "fases 9 → 14" to "·N/7" + "fases 9 → 15". README status table + index updated, CLAUDE.md project status appends the Fase 15 pending paragraph. Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -19,13 +19,14 @@
|
||||
| Fase 6 — Deploy readiness | ✅ Completa (PWA generateSW + manifest + iconos placeholder + Kong rate-limit en invitaciones + rotación JWT dev + rotate-jwt.sh + `.env.erosi.example` + rls-audit.sh + `just lighthouse`). Rate-limit auth retirado — Keycloak brute-force nativa cubre el caso. Push notifications y iconos finales fuera de scope. |
|
||||
| Fase 7 — Collective-flow E2E tests | ✅ Completa (12 Playwright nuevos O-01..MC-05; 3 bugs latentes corregidos: RPC atómica `create_collective`, restore de `pendingInvitationToken` tras login, hidratación tardía de `$currentCollective` en manage; migración 013 trigger `role/aud` default). |
|
||||
| Fase 8 — Prod auth hardening | ✅ Completa (migración 014 extiende `role/aud` guard a UPDATE; `logout()` RP-initiated Keycloak end-session + ruta pública `/logged-out`). |
|
||||
| **MVP2** — Fase 9 → 14 | ✅ Completa (rama `mvp2`, 2026-05-18) |
|
||||
| **MVP2** — Fase 9 → 15 | 🔄 6/7 (fases 9–14 ✅ 2026-05-18; Fase 15 📋) |
|
||||
| ↳ Fase 9 — Polish + Dark Mode | ✅ |
|
||||
| ↳ Fase 10 — Spec completion | ✅ |
|
||||
| ↳ Fase 11 — Item tags + importance UX | ✅ |
|
||||
| ↳ Fase 12 — Section visibility | ✅ |
|
||||
| ↳ Fase 13 — Server administration | ✅ |
|
||||
| ↳ Fase 14 — PWA hardening | ✅ |
|
||||
| ↳ Fase 15 — Common items management | 📋 |
|
||||
| Suite de tests (pgTAP + Vitest + Playwright) | ✅ **476 tests verdes** (166 pgTAP + 173 integración + 47 unit + 89 E2E) + 1 rate-limit gated (`just test-rate-limit`). 3 skipped en `just test-all` (2 Realtime presence — upstream `handle_out/3` bug; 1 rate-limit — gated). |
|
||||
|
||||
---
|
||||
@@ -59,6 +60,7 @@ Las fases ya cerradas (0, 1, 2a) reflejan este patrón retroactivamente: la secc
|
||||
| **MVP2 — Fase 12** | [fase-12-section-visibility.md](plan/fase-12-section-visibility.md) | 1 semana |
|
||||
| **MVP2 — Fase 13** | [fase-13-server-admin.md](plan/fase-13-server-admin.md) | 2–3 semanas |
|
||||
| **MVP2 — Fase 14** | [fase-14-pwa-hardening.md](plan/fase-14-pwa-hardening.md) | 3–5 días |
|
||||
| **MVP2 — Fase 15** | [fase-15-common-items.md](plan/fase-15-common-items.md) | 3–5 días |
|
||||
|
||||
**Total estimado MVP (Fase 0–6): 11–16 semanas. MVP2 (Fase 9–14, rama `mvp2`): 10–14 semanas. Fase 7+8 entre MVP y MVP2 como cleanup post-launch.**
|
||||
|
||||
|
||||
Reference in New Issue
Block a user