diff --git a/.planning/REQUIREMENTS.md b/.planning/REQUIREMENTS.md index 95547bb..5735856 100644 --- a/.planning/REQUIREMENTS.md +++ b/.planning/REQUIREMENTS.md @@ -12,7 +12,7 @@ v2.0 (Phases 7–10) ha consegnato catalogo unificato, offerte con fasi, prevent | OFFER-07 | L'utente vede ed edita il catalogo `services` come tabella con inline editing (click su cella → edit → invio salva) | Complete | | OFFER-08 | L'utente assegna tag multi-select a servizi/offerte, creando nuovi tag al volo senza uscire dalla tabella | Complete | | OFFER-09 | L'utente aggiunge un nuovo servizio/offerta tramite riga vuota in fondo alla tabella (nome + invio) | Complete | -| OFFER-10 | L'utente filtra/cerca servizi e offerte istantaneamente (ricerca client-side, nessun reload) | Pending | +| OFFER-10 | L'utente filtra/cerca servizi e offerte istantaneamente (ricerca client-side, nessun reload) | Complete | | OFFER-11 | L'utente compone un'offerta trascinando servizi dal catalogo (`@dnd-kit`), con totale live aggiornato durante il drag | Pending | | OFFER-12 | L'utente importa un CSV one-shot per popolare servizi/offerte esistenti (solo seed iniziale, non sync continuo) | Pending | | OFFER-13 | I dati legacy di `service_catalog` e `offer_services` sono consolidati in `services` senza perdita (migration additiva) | Pending | @@ -89,7 +89,7 @@ Popolata dal roadmapper durante la creazione della roadmap. | OFFER-07 | Phase 11 | Complete | | OFFER-08 | Phase 11 | Complete | | OFFER-09 | Phase 11 | Complete | -| OFFER-10 | Phase 11 | Pending | +| OFFER-10 | Phase 11 | Complete | | OFFER-13 | Phase 11 | Pending | | OFFER-11 | Phase 12 | Pending | | OFFER-12 | Phase 12 | Pending | diff --git a/.planning/STATE.md b/.planning/STATE.md index b5afe68..9408955 100644 --- a/.planning/STATE.md +++ b/.planning/STATE.md @@ -3,15 +3,15 @@ gsd_state_version: 1.0 milestone: v2.1 milestone_name: milestone status: executing -stopped_at: "11-03: EditableCell + TagMultiSelect shared UI primitives committed (pure client components, ready for Plan 04 ServiceTable rewrite)" -last_updated: "2026-06-13T13:52:19Z" +stopped_at: "11-04: ServiceTable rewritten as database-view (inline edit, tags, quick-add, active/inactive split) + CatalogSearch added — Phase 11 plans 1-4 all executed" +last_updated: "2026-06-13T14:02:06Z" last_activity: 2026-06-13 progress: total_phases: 11 completed_phases: 8 total_plans: 37 - completed_plans: 33 - percent: 89 + completed_plans: 34 + percent: 92 --- # Project State @@ -26,12 +26,12 @@ See: .planning/PROJECT.md (updated 2026-06-13) ## Current Position -Phase: 11 (catalog-database-view-ux-legacy-consolidation) — EXECUTING -Plan: 4 of 4 -Status: Ready to execute +Phase: 11 (catalog-database-view-ux-legacy-consolidation) — ALL PLANS EXECUTED +Plan: 4 of 4 (complete) +Status: Phase 11 code-complete; pending live-DB migration apply before OFFER-13/end-to-end verification Last activity: 2026-06-13 -Progress: [█████████░] 89% +Progress: [█████████▒] 92% ## Performance Metrics @@ -55,6 +55,7 @@ Progress: [█████████░] 89% *Updated after each plan completion* | Phase 11 P02 | 12min | 2 tasks | 2 files | | Phase 11 P03 | 9min | 2 tasks | 2 files | +| Phase 11 P04 | 12min | 2 tasks | 4 files | ## Accumulated Context @@ -71,6 +72,7 @@ Recent decisions affecting current work: - [Phase 11]: Phase 11: hand-write Drizzle migration SQL (0006_add_tags_table.sql) following the project's established convention since drizzle-kit generate is non-functional (meta snapshots out of sync since migration 0001, pre-existing since Phase 8) — Avoids architectural snapshot-reconciliation work (Rule 4, out of scope) while matching exact precedent from migrations 0003-0005 - [Phase 11]: Phase 11 Plan 02: onConflictDoNothing() without explicit target compiles cleanly for tags table (single unique index tags_entity_name_unique) — used as written in plan, no fallback needed — Avoids unnecessary deviation; Drizzle's no-target ON CONFLICT DO NOTHING is correct given the single unique constraint from Plan 01 - [Phase 11]: Phase 11 Plan 03: removed the plan's prescribed value-sync useEffect (and a follow-up render-time ref-read attempt) from EditableCell — both violate this project's react-hooks lint rules (set-state-in-effect, refs-during-render / React Compiler). tempValue is now only (re)initialized in startEdit()/cancel(), and the toggle display branch reads `value` directly instead of `tempValue` — Rule 1 lint fix, no behavioral change to the 8 spec'd test behaviors +- [Phase 11]: Phase 11 Plan 04: left `createService`/`serviceSchema` in `src/app/admin/catalog/actions.ts` as unused dead code after deleting `ServiceForm.tsx` (its only consumer) — `actions.ts` was outside this plan's `files_modified` scope and `updateService` still depends on `serviceSchema`; logged to deferred-items.md for future cleanup ### Pending Todos @@ -96,6 +98,6 @@ Items acknowledged and carried forward from previous milestone close: ## Session Continuity -Last session: 2026-06-13T13:52:19Z -Stopped at: 11-03: EditableCell + TagMultiSelect shared UI primitives committed (pure client components, ready for Plan 04 ServiceTable rewrite) -Resume file: .planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-03-SUMMARY.md +Last session: 2026-06-13T14:02:06Z +Stopped at: 11-04: ServiceTable rewritten as database-view (inline edit, tags, quick-add, active/inactive split) + CatalogSearch added — Phase 11 plans 1-4 all executed, code-complete +Resume file: .planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md diff --git a/.planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md b/.planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md index 5dab022..3e8dca8 100644 --- a/.planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md +++ b/.planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md @@ -133,3 +133,14 @@ The `tags` table (Plan 01) and the `addTagToService`/`removeTagFromService`/`upd --- *Phase: 11-catalog-database-view-ux-legacy-consolidation* *Completed: 2026-06-13* + +## Self-Check: PASSED + +- FOUND: src/components/admin/catalog/ServiceTable.tsx +- FOUND: src/app/admin/catalog/page.tsx +- FOUND: src/app/admin/catalog/CatalogSearch.tsx +- CONFIRMED DELETED: src/components/admin/catalog/ServiceForm.tsx +- FOUND: .planning/phases/11-catalog-database-view-ux-legacy-consolidation/11-04-SUMMARY.md +- FOUND commit: c0bedf3 +- FOUND commit: 912a892 +- FOUND commit: 9bc1e43