Persist Revit CSV configuration

This commit is contained in:
2026-08-02 16:33:18 +02:00
parent da689af518
commit 219da5ec3b
22 changed files with 2508 additions and 27 deletions
+11 -4
View File
@@ -250,13 +250,20 @@ not change the project revision or undo/redo stacks. Restoring a server-stored
snapshot verifies its checksum and the current-state hash, replaces supported
project data atomically and records a new `restore` revision with a complete
inverse command. Restore can therefore be undone and redone after a restart.
Current snapshot schema version 2 additionally stores whether the project is a
public building. Supported baseline version 1 snapshots are upgraded with
`isPublicBuilding = false`; pre-baseline snapshots remain unsupported. Both
versions contain circuit-group identity, distribution-board components and the
Current snapshot schema version 3 additionally stores the optional project-wide
Revit CSV configuration. Version 2 snapshots are upgraded with an empty external
configuration. Supported baseline version 1 snapshots are additionally upgraded
with `isPublicBuilding = false`; pre-baseline snapshots remain unsupported. All
supported versions contain circuit-group identity, distribution-board components and the
separate circuit/component protection records. Portable duplicate imports
remap component ids and protection-owner references together with the existing
project graph.
Project-wide Revit CSV configuration uses
`external-csv-configuration.update`. Its complete expected/target snapshot is
persisted through the shared project-command transaction, so create, update,
delete, Undo and Redo are revision-safe. Snapshot schema 3, restore and portable
project duplication preserve the configuration; duplication remaps its internal
id and project link.
The central revision boundary creates an automatic logical snapshot after each
25 new revisions and retains only the newest 12 automatic snapshots per
project. Named snapshots are never removed by this retention policy.