Make device sync atomic and undoable
This commit is contained in:
@@ -156,8 +156,12 @@ These remain for migration/legacy views. New circuit-list interactions must use
|
||||
- returns all linked circuit device rows with distribution-board/circuit context and field differences
|
||||
- `POST /project-devices/projects/:projectId/:projectDeviceId/synchronize`
|
||||
- applies only explicitly selected fields to explicitly selected linked rows
|
||||
- `POST /project-devices/projects/:projectId/:projectDeviceId/restore`
|
||||
- restores the captured pre-sync values for session-local undo
|
||||
- `POST /project-devices/projects/:projectId/:projectDeviceId/disconnect`
|
||||
- disconnects explicitly selected rows without changing their local values
|
||||
- `POST /project-devices/projects/:projectId/:projectDeviceId/reconnect`
|
||||
- restores a disconnected link if the row has not been linked elsewhere meanwhile
|
||||
|
||||
`displayName` is included in the comparison but is not selected by default in the UI. Updating a
|
||||
project device never triggers synchronization implicitly.
|
||||
|
||||
@@ -9,5 +9,3 @@
|
||||
- Sorting is view-only until users explicitly apply sorted order.
|
||||
- Cross-section circuit drag-reorder is intentionally blocked.
|
||||
- Legacy consumer and circuit-first paths coexist; migration is transitional and still requires operational discipline.
|
||||
- Project-device synchronization and disconnect actions are explicit, but are not yet connected to an undo command.
|
||||
- Multi-row project-device synchronization is sequential and not yet wrapped in one database transaction.
|
||||
|
||||
Reference in New Issue
Block a user