# Functional Requirements: Circuit List Inside a Distribution Board ## Scope This specification focuses only on the circuit list inside one distribution board. Out of scope for this document: - project management - user accounts - permissions - full tender export - CAD integration - full norm-compliant electrical calculation - cloud deployment The first goal is a fast, spreadsheet-like editor for creating, editing, sorting and restructuring circuit lists. ## Sections The circuit list is grouped into sections. Default sections: | Section | Default prefix | |---|---| | Lighting | `-1F` | | Single-phase circuits | `-2F` | | Three-phase circuits | `-3F` | Sections are displayed as separator rows in the table, not as normal visible data columns. Example: ```text Lighting -1F1 Beleuchtung Flur -1F2 Beleuchtung Außen Single-phase circuits -2F1 Arbeitsplatzsteckdosen Büro -2F2 Handtrockner WC Three-phase circuits -3F1 Durchlauferhitzer ``` Internally, every circuit belongs to a section. In the UI, the section is shown as a grouping separator. ## Future Section Configuration Sections and numbering prefixes should later be configurable per project. Future project configurations may support: - one continuous numbering sequence without lighting/single-phase/three-phase separation - numbering grouped by RCD - numbering grouped by functional area - custom prefixes and suffixes - custom section names The first implementation may use the default sections, but the structure must not permanently hardcode them. ## Circuit Numbering / Equipment Identifiers Each circuit has an equipment identifier. Examples: - `-1F1` - `-1F2` - `-2F1` - `-2F2` - `-3F1` Default convention: - `-1Fx` = lighting circuits - `-2Fx` = single-phase circuits - `-3Fx` = three-phase circuits When a new circuit is created, the next identifier is calculated as: ```text highest existing number in the section + 1 ``` Example: Existing identifiers in single-phase section: - `-2F1` - `-2F2` - `-2F5` New circuit receives: - `-2F6` Gaps are not filled automatically. Gaps may be closed only by: - manually editing equipment identifiers - explicitly using a renumbering action ## Renumbering The app must never automatically renumber existing circuits after: - inserting a circuit - deleting a circuit - moving a circuit - moving a device - sorting a section - dragging rows - changing a device - synchronizing a linked project device Renumbering only happens through an explicit user action. Each section has a "Renumber section" action. The renumbering action: - keeps the current visual order - updates only circuits in that section - ignores device rows for numbering - does not affect other sections - uses the section prefix ## Reserve / Empty Circuits Empty circuits are allowed. An empty circuit may be used as a reserve circuit. If the last device is removed from a circuit, the user may choose: - keep empty circuit as reserve - delete circuit completely - cancel Reserve circuits remain visible and keep their equipment identifier unless manually changed or explicitly renumbered.