Undo/redo module
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 5/5
- Geschätzter Aufwand
- Über eine Woche
- Anfängerfreundlichkeit
- 35/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Ruhig
- Tech-Stack
- typescript
- Bereich
- developer-experience
Rechercherichtung
This issue names no files or tests. Start by reading the kernel module API in blocked issue #28 and tracing the write pipeline's undo-snapshot/emit stage. Done means atomic batches, including dependency cascades, undo and redo together; stack state updates reactively; and removing the module lets its code tree-shake from the bundle.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Parent
https://github.com/TanStack/time/issues/25
What to build
Extract undo/redo into a proper module that wraps atomic write batches, not individual field mutations. A single user action (e.g. move event + cascaded dependent shifts) is undone as one step — not as a sequence of individual commits.
Acceptance criteria
- `UndoRedoModule` plugs into the kernel via the module API (#28), hooking the `undo-snapshot/emit` stage of the write pipeline
- `undo()` reverses the most recent atomic batch (all events in the batch revert together)
- `redo()` re-applies a reversed batch
- `canUndo()` / `canRedo()` reflect the current stack state reactively
- A dependency cascade (move + N propagated dependents) is treated as one batch — one `undo()` call reverses it entirely
- Removing the `UndoRedoModule` causes undo/redo code to tree-shake out of the bundle
Blocked by
- Vorherrschende Sprache
- TypeScript
- Sterne
- 620
- Forks
- 6
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Hat eine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus TanStack/time
-
Dependency DashboardOffen
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 5/100
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 25/100
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 32/100
-
enhancement
Schwierigkeit 4/5 3-5 Tage Anfängerfreundlichkeit 35/100
-
enhancement
Schwierigkeit 5/5 Über eine Woche Anfängerfreundlichkeit 35/100
Ähnliche Issues
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 85/100
formbricks/formbricks#9918 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
thecodacus/pithagoras#364 ·
Maintainer antworten meist innerhalb von 1 Tag
-
Schwierigkeit 1/5 Unter einer Stunde Anfängerfreundlichkeit 72/100
openclimatefix/quartz-frontend#823 ·
Maintainer antworten meist innerhalb von 4 Tagen
-
area:agent-manager community needs-triage
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 76/100
Maintainer antworten meist innerhalb von 1 Tag
-
`contacts.create` posts to `/audiences/undefined/contacts` when `audienceId` is undefinedEvtl. vergeben @RaphaelFakhri hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 70/100
resend/resend-node#1176 ·
Maintainer antworten meist innerhalb von 1 Tag