AEC Twin

An empty building twin: a live operational view of your own model, not a design review of it. Drop an IFC (or glTF/GLB/OBJ/STEP) building, then wire the readings a building actually reports — zone temperature, setpoint, CO₂, occupancy, energy — and let the model carry them. Adds four things to Digital Twin that a building needs and a machine does not: SPACES (zones — a named volume that holds a reading, derived straight from the model's IFCSPACE elements with zones.deriveFromIfc, or authored as boxes when the model is a mesh dump), ROLLUPS (a datasource field with mode:'aggregate' turns 40 zone readings into the one number an operator watches — site load, worst zone, mean deviation), OCCUPANCY (mode:'schedule' gives each zone the setpoint it was actually asked to hold at this hour, so a weekend setback stops reading as a fault), and an ALARM LIST (any threshold rule with revert:true latches into a timestamped, acknowledgeable log — a colour on a mesh says a limit is breached now, it cannot say what tripped at 03:12). Also adds discipline toggles (IFC elements auto-classify onto the five disciplines on import) and X/Y/Z section planes surfaced as buttons — a Y cut is a floor plan, which is how you look at one storey of a twin. Nothing ships pre-placed: a sensor path is matched by plain string and nothing validates it, so a pre-wired gauge or zone would read a path your building doesn't publish and sit at —. What the twin holds prints as a PDF: the space schedule with each space's volume and the sensor path that colours it, which doubles as the mapping between the model and the BMS.