Session snapshot should keep grid filters/page, Auto LIMIT overrides and warn on pending changes
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- mysql, postgresql, react, rust, sqlite, tauri, typescript
Direzione di ricerca
Start with docs/notes/plan-04-followups.md and docs/notes/integration-v1.md, then trace snapshot handling in src-tauri/src/session_state.rs and src-tauri/src/commands.rs and workspace/grid state in the listed TypeScript files. Run the existing snapshot and type shape tests first. Done means the listed restore, pending-change, deletion, retry, and edge-case behaviors work, old snapshots remain compatible, and the specified test and lint commands pass.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Context
Plan 4's session snapshot restores workspaces and tabs on restart, but not grid views: a restored table tab comes back without its filters (smoke run). Auto LIMIT per-tab overrides are in memory only, and pending grid changes are not in the snapshot while nothing asks before quitting with some. Several small session-state edge cases were also deferred.
To do
- Persist each table tab's grid view (filters, sort, page, FK trail) in the snapshot as optional fields (still version 1;
parseSnapshotalready ignores unknown fields, see R14). - Persist per-tab Auto LIMIT overrides (R9 in the plan 4 notes).
- Ask before quitting/closing the window with pending grid changes (they are not saved to the snapshot).
session_statekeeps a deleted connection's tab text until the next save: purge it indelete_connection(M3).- A failed
sessionSaveis retried only on the next change, not onbeforeunload. - A change during the initial restore becomes the baseline and is saved only on a later change.
- A restored workspace whose connection was deleted while open shows a dead Reconnect button with no message.
- An out-of-range active tab index still invalidates the whole session: clamp it instead.
- Task 1 minor:
load_sessiondetects a missing table by matching theno such tablestring.
Acceptance criteria
- Restart restores a filtered, paged table tab with its filters and page.
- Quitting with pending changes asks for confirmation.
- Deleting a connection removes its tab text from
session_state. - Snapshot tests cover the new optional fields and an old snapshot without them.
-
pnpm test && pnpm lintgreen (pluscargo clippy --all-targets -- -D warningsandpnpm test:rustwhen Rust changes)
Likely files touched
src-tauri/src/session_state.rs,src-tauri/src/commands.rssrc/stores/workspaces.ts,src/stores/gridViews.ts,src/features/workspace/src/lib/types.ts,src/lib/ipc.ts,types.shape.test.ts
Linked docs
docs/notes/plan-04-followups.md(R9, R14, M3, Task 1 and Task 4 minors)docs/notes/integration-v1.md("Follow-ups")docs/notes/integration-v1-smoke.md
- Lingua principale
- TypeScript
- Stelle
- 0
- Fork
- 0
- Merge medio
- 1h 19m
- PR unite (30g)
- 28
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di Cemoche/tablemax
-
area:frontend size:S status:ready type:bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
I maintainer di solito rispondono entro 1 giorno
-
area:backend size:S status:ready type:bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
I maintainer di solito rispondono entro 1 giorno
-
area:infra good first issue size:S status:ready type:bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 83/100
I maintainer di solito rispondono entro 1 giorno
-
area:docs good first issue size:S status:ready type:task
Difficoltà 1/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
area:infra size:S status:ready type:task
Difficoltà 2/5 1-3 ore Idoneità per principianti 74/100
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di Cemoche/tablemax
Issue simili
-
[BUG] rag: sentence content can cross the reported sentence boundariesForse già presa @LJK-ikun l’ha presa oggi. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
bug needs-triage
Difficoltà 2/5 1-3 ore Idoneità per principianti 70/100
I maintainer di solito rispondono entro 1 giorno
-
README: the Resource URI Schemas example's file://documents/* pattern only matches that literal URIAperta
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 88/100
platformatic/mcp#361 ·
I maintainer di solito rispondono entro 1 giorno
-
frontend
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
I maintainer di solito rispondono entro 1 giorno
-
Push: sem service worker ou sem VAPID, o interruptor de Notificações fica ligado sem avisar nadaAperta
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
melgarafael/DeskcommCRM#3164 ·
I maintainer di solito rispondono entro 1 giorno