Describe snapshot source revisions

This commit is contained in:
2026-07-29 11:52:26 +02:00
parent 602ae6da0b
commit dcb303284c
10 changed files with 246 additions and 27 deletions
+16 -16
View File
@@ -10,53 +10,53 @@ requirements and intended sequencing, not proof of implementation.
## Project History
- Every listed logical snapshot, including automatic snapshots, must be
- [x] Every listed logical snapshot, including automatic snapshots, must be
explicitly restorable from the project history UI.
- Show which project change produced a snapshot. Prefer immutable revision
- [x] Show which project change produced a snapshot. Prefer immutable revision
metadata over storing a second free-form description of the same change.
- Keep restoration auditable as a new project revision and preserve persistent
- [x] Keep restoration auditable as a new project revision and preserve persistent
undo/redo.
## Distribution Boards
- Assign an optional project floor to a distribution board.
- Store a supply classification for each distribution board:
- [x] Assign an optional project floor to a distribution board.
- [x] Store a supply classification for each distribution board:
- `AV` (Allgemeine Stromversorgung)
- `SV` (Sicherheitsstromversorgung)
- `EV` (Ersatzstromversorgung)
- `USV` (Unterbrechungsfreie Stromversorgung)
- `MSR` (Mess-, Steuerungs- und Regelungstechnik)
- `SiBe` (Sicherheitsbeleuchtung)
- Let project settings select which catalog supply types are used in a
- [x] Let project settings select which catalog supply types are used in a
project. Distribution-board dialogs offer only that selection; a type in
use cannot be disabled.
- Include both fields in project snapshots and portable project
- [x] Include both fields in project snapshots and portable project
export/import.
- Persist changes through project commands so they remain undoable after a
- [x] Persist changes through project commands so they remain undoable after a
restart.
## Device Voltage Derivation
- Derive voltage from the selected phase type and the project settings:
- [x] Derive voltage from the selected phase type and the project settings:
- single-phase uses the project's single-phase voltage;
- three-phase uses the project's three-phase voltage.
- Voltage is not editable on global devices, project devices or circuits.
- [x] Voltage is not editable on global devices, project devices or circuits.
Global devices store only their phase; copying one into a project derives
the target project's voltage.
- Project-device voltage follows its phase. Circuit voltage follows the
- [x] Project-device voltage follows its phase. Circuit voltage follows the
section phase; an unassigned circuit is three-phase only when all assigned
device rows with a valid phase are three-phase.
- Changing project voltage settings updates all project devices and circuits
- [x] Changing project voltage settings updates all project devices and circuits
atomically in the same persistent Undo/Redo step.
- Database migration `0019` and snapshot schema version `5` normalize older
- [x] Database migration `0019` and snapshot schema version `5` normalize older
stored values. Version-four and older imports remain supported and are
normalized while being upgraded.
## Recommended Sequence
1. Distribution-board floor and supply fields.
2. Device voltage derivation without overrides.
3. Snapshot-to-revision descriptions and history presentation.
1. [x] Distribution-board floor and supply fields.
2. [x] Device voltage derivation without overrides.
3. [x] Snapshot-to-revision descriptions and history presentation.
The Revit/CSV/IFCGUID round-trip remains a separate jointly planned phase and
must not be inferred from these tasks.