diff --git a/docs/README.md b/docs/README.md index 1c113ed..e19ece3 100644 --- a/docs/README.md +++ b/docs/README.md @@ -29,6 +29,7 @@ ausdrücklich getrennt und dürfen nicht als bereits implementiert verstanden we - [Projektversionen und externer Modellaustausch](project-history-and-external-model-architecture.md) - [Zukünftige Dimensionierung](spec/06-future-sizing-and-calculations.md) - [Roadmap und Phasen](spec/07-implementation-phases-todo.md) +- [Aktueller Produkt-Backlog](spec/08-current-product-backlog.md) ## Fachliche Referenzspezifikation diff --git a/docs/spec/08-current-product-backlog.md b/docs/spec/08-current-product-backlog.md new file mode 100644 index 0000000..a741dc6 --- /dev/null +++ b/docs/spec/08-current-product-backlog.md @@ -0,0 +1,72 @@ +# Current Product Backlog + +This document records the next agreed product improvements. It describes +requirements and intended sequencing, not proof of implementation. + +## Circuit List Editor + +- Open the ProjectDevice drawer on the right so it does not cover the leading + circuit identifier and display-name columns. +- Format displayed power values in kW with at most three decimal places. +- Format displayed factors and percentage-like values with at most two decimal + places. +- Do not round persisted values; formatting applies only to the displayed + value outside edit mode. +- Replace the separate `Zeilensumme` and `Stromkreissumme` columns with one + `Gesamtsumme` column: + - device rows show their device-row total; + - circuit summary rows show the complete circuit total; + - compact single-device rows show the identical device/circuit total once. +- Collect the remaining editor interaction issues before changing additional + behavior. + +## Project History + +- 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 + metadata over storing a second free-form description of the same change. +- 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: + - `AV` (Allgemeine Stromversorgung) + - `SV` (Sicherheitsstromversorgung) + - `EV` (Ersatzstromversorgung) + - `USV` (Unterbrechungsfreie Stromversorgung) +- Include both fields in project snapshots and portable project + export/import. +- Persist changes through project commands so they remain undoable after a + restart. + +## Device Voltage Defaults + +- 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. +- Apply this default consistently when creating global devices, project + devices and manual circuit-list entries. +- Define explicit override behavior before implementation so a user-entered + exceptional voltage is not silently overwritten when phase type or project + settings change. + +## Project Overview Import + +- Add JSON project import to the project overview so a portable project file + can create a new project without first opening another project. +- Keep replacement of an existing project inside that project's settings. +- Validate format version and checksum before creating project data. + +## Recommended Sequence + +1. Circuit-list presentation improvements. +2. Project-overview import as a new project. +3. Distribution-board floor and supply fields. +4. Device voltage default and override semantics. +5. 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.