diff --git a/documentation/S05-LicensedAcceptance-Preflight.md b/documentation/S05-LicensedAcceptance-Preflight.md new file mode 100644 index 00000000..5b5d5cf7 --- /dev/null +++ b/documentation/S05-LicensedAcceptance-Preflight.md @@ -0,0 +1,84 @@ +# S05 - Licensed Phase A GUI acceptance - PREFLIGHT (not acceptance) + +Roadmap: SAM `documentation/SIMULATION_ROADMAP_Q4_2026.md`, task S05. + +**This is a preflight and rehearsal, not the S05 acceptance record.** Formal S05 acceptance needs S01-S04 merged with green +final-head CI, then every case run from the real UI on that merged content. When this was written, S03 (SAM_UI#242) and +S04 (SAM_UI#243) were open and unmerged. **No case below is an S05 PASS.** + +Status values: **PASS**, **FAIL**, **NOT RUN**, **BLOCKED**. Rehearsal results are labelled "rehearsal" and never count as +acceptance results. + +## Status update (2026-10-20): validated against the merged S03/S04 +- S03 merged as SAM_UI#242 `1e460bbe`, S04 as SAM_UI#243 `307cb0e3`, both with green final-head CI. The SAM_UI code tree of + `307cb0e3` equals the rehearsal tree `8aafcb06`: `git diff 8aafcb06 307cb0e3` touches only `PROJECT_PROGRESS.md` and the + S04 record. The rehearsal therefore exercised exactly the merged SAM_UI code. +- **Correction, case 4 is not post-F1 evidence.** The rehearsal app and the developer-built producers took + `SAM.Weather.dll` from this laptop's `SAM\build`, built 2026-10-17, before SAM#212 (F1, 2026-10-19). The F1 code is absent + from that binary (sha256 `f99f827f…`, the same in `app-int`, `SAM_Tas\build` and the OpenStudio producer folder). So case 4 + ran with the pre-F1 EPW writer. Explicit-EPW cases (3, 5) and the Tas-only case 1 do not use the EPW writer and are not + affected. +- Owner decision (2026-10-20): `SAM_COMMIT` is accepted as a temporary requirement for developer-built producers in Both + runs until S06. The value must be the SAM commit the producers were built from; it does not prove packaged-app provenance. +- Formal acceptance is a separate record on a fresh build of the dependency stack at the `sow/2026-Q4` tips: + `documentation/S05-LicensedAcceptance.md`. **No result in this preflight record is an acceptance result.** + +## Rehearsal build (2026-10-19) +- **Tree:** local integration merge `8aafcb06` (not pushed): `sow/2026-Q4` `4d7f5bd8` + S04 head `b19b80ab` + S03 head + `2724f0c5`. The one textual conflict, both PRs appending to `OpenStudioSimulationTests.RealRun_…`, was resolved by keeping + both blocks. +- **Full `SAM.Analytical.UI.WPF.Tests` on that tree:** **2926/2926 PASS** (2860 + 52 S03 + 14 S04). +- **App:** `Application\SAM Analytical\SAM Analytical.csproj` built with MSBuild (VS 18) `-restore -t:Build -p:Configuration=Release` + into `C:\TasOut\s05pre\app-int\`. `APPDATA`/`USERPROFILE` were redirected to `C:\TasOut\s05pre\sandbox`, so the installed + SAM and `%APPDATA%\SAM` were not touched. Exit 0, 495 files. Machine-local. +- **TAS:** 9.5.7 (licensed). Its `TBD.Document` COM server is `C:\Program Files\Environmental Design Solutions Ltd\Tas\TBD.exe`. +- **Producers:** developer builds `SAM_Tas\build\benchmark-tas.exe` and `SAM_OpenStudio\benchmark\...\benchmark-openstudio.exe`. + They ran with `SAM_COMMIT` set by hand (S03 finding: without it they refuse) and with OpenStudio 3.10.0 `bin` first on + `PATH`. +- **Fixtures** (machine-local, `C:\TasOut\s01b\inputs`): `box-aperture.json` (sha256 `99ba2ab9…`) and `Budapest.epw` (`472ffb4e…`). +- **Drivers:** the S01b UI Automation drivers in `documentation/evidence/s01b-20261019/tools/` were used unchanged. + `drive-tas.ps1` covers Energy Simulation and Run Simulation > Tas, with `-BlockTsd` refusal injection. `drive-both.ps1` + covers Run Simulation > Both. +- **Results unchanged by S03/S04:** case 3's `comparison.csv` has the same content as the committed pre-S03/S04 S01b run B2 + (`documentation/evidence/s01b-20261019/cases/B2-cand-both-success/`, same model and EPW). Only line endings differ, from + the Git checkout. Both engines' B1a model metrics are bit-identical. +- **Evidence:** `documentation/evidence/s05-preflight-20261019/`, which holds each case's driver log, message-box text or + diagnostics, and manifest, plus three screenshots. + +## Acceptance matrix + +Every case runs `SAM Analytical.exe` through the ribbon, on the licensed laptop, built isolated from the merged content. +Engine numbers are recorded, not judged: numerical agreement is not a criterion. + +| # | Case | Steps | Observable status (must match what the engines did) | Expected artifacts | Failure message | Proof | Rehearsal result (integration build, real ribbon) | +|---|---|---|---|---|---|---|---| +| 1 | Tas only | Run Simulation > Tas on the box; dialog defaults (model weather), Full Year ticked | success box; model replaced by the TAS result | `box.tbd/.tsd/.json`; **`box.tas-run.json`** `status: Succeeded`, TAS `9.5.7.0` + TBD.exe hash, weather source, the `WorkflowSettings` that ran | none | driver log, message box, `tas-run.json`; for acceptance also persisted values vs baseline (`compare-persisted.ps1`) | **Rehearsal PASS.** Message "Model successfuly converted"; `status: Succeeded`; weather `Embedded`; `T3DRoute: GbXML`, `SimulateTo: 365` (`c1-tas-run-simulation/`) | +| 2 | OpenStudio only | Run Simulation > OpenStudio on the box, explicit EPW | Succeeded summary; open model unchanged | run folder: `openstudio-run.json` `Succeeded`, OSM/OSW/SQL, result model with view state; CLI hash, E+ version from `eplusout.err` | none | manifest, result model, screenshot | **NOT RUN** from the ribbon: no driver. Code path ran with real OpenStudio (S03 evidence `openstudio-*`; S04 `RealRun_…`). | +| 3 | Both | Run Simulation > Both on the box, explicit EPW, **in two separate app sessions** | `Compared`; comparison window opens | `engine-comparison-run.json`, two B1a, comparison csv/md/summary; S03 provenance per producer; S04 identical snapshot and canonical hash across sessions | none | manifests, B1a, comparison window | **Rehearsal PASS** with manual `SAM_COMMIT`. Both sessions `Compared`, snapshot `0c30db14…`, both producers `canonicalModelHash` `05c1e334…` (`c3a-…`, `c3b-…`). Gate "Fail" is engine agreement, not a criterion. **Without `SAM_COMMIT`: FAIL** (developer producers refuse, S03 evidence) - owner decision / S06 | +| 4 | Box, embedded post-F1 weather | as 3 with no EPW chosen | as 3; weather `Embedded` | as 3; `provenance.weather.source: Embedded`, exported EPW hash | none | as 3 | **Rehearsal PASS** with manual `SAM_COMMIT`: `Compared`, weather `Embedded`, same snapshot and canonical hash as 3 (`c4-both-embedded/`). Tas-only embedded is case 1. **Not post-F1** (pre-F1 `SAM.Weather.dll`, see the 2026-10-20 status update). | +| 5 | Box, explicit EPW | as 3 with `Budapest.epw` | as 3 | as 3; `weather.source: File`, EPW hash `472ffb4e…` | none | as 3 | **Rehearsal PASS** (same runs as 3). | +| 6 | One multizone model | as 3 on a multizone fixture | as 3 | as 3 | none | as 3 | **BLOCKED**: no committed multizone fixture with cleared provenance. HungaryHouse is machine-local and unconfirmed (owner decision 3). | +| 7 | Injected Tas refusal | Energy Simulation with `-BlockTsd` (a directory at `box.tsd`) | "Simulation failed" box: TAS return code 0, error log, TAS-SIM-001; model not replaced | `box.tas-run.json` `status: Failed` with the same failure text | "Simulation failed: the TAS simulation did not complete ..." | driver log, message box, `tas-run.json` | **Rehearsal PASS.** Box title "Simulation failed", return code 0, TAS-SIM-001 lines; `tas-run.json` `Failed` with the same text (`c7-…`). The driver's close step timed out with the app open (as in S01b case E3); the app was closed by hand. TAS opened its error log in Notepad (TAS behaviour). | +| 8 | Cancellation | Start Both / OpenStudio, press Cancel while a producer runs | `Cancelled`; producer tree killed; no comparison | manifest `status: Cancelled` with provenance | none | manifest, process list | **NOT RUN**: no driver. Unit level: `SimulationRunProvenanceTests`, `TasRunManifestTests`. | +| 9 | Concurrent-start refusal | While Both runs, try every other entry point | each refused: "... is already running for this model, so nothing was started." | first run's artifacts only | the S02 text | screenshots, folder listing | **NOT RUN**: no driver. Unit level: S02 `SimulationConcurrencyGuardTests`. | + +## Remaining blockers before formal S05 +1. S03 (#242) and S04 (#243) merged with green final-head CI. Whichever merges second needs the RealRun conflict resolved. +2. Both prerequisite: an owner decision on `SAM_COMMIT` for developer-built producers, or wait for S06's stamped producers. +3. A multizone fixture with cleared provenance (owner decision 3). +4. New UI Automation drivers: + - Run Simulation > OpenStudio; + - Cancel during Both and during OpenStudio; + - a concurrent start, which needs a long first run (for example the S01b blocking wrapper). +5. The OpenStudio CLI/SDK mismatch on `PATH` (S03 finding) should be settled, ideally in S06, before acceptance evidence is + archived. + +## Formal acceptance procedure (after merge) +1. Fetch `sow/2026-Q4` with S01-S04 merged. +2. Build the app isolated, as above. +3. Run cases 1-9 with the drivers. +4. Collect manifests, driver logs and screenshots in `documentation/evidence/s05-/`. +5. Record PASS/FAIL/NOT RUN/BLOCKED per case in the S05 record, and report GitHub CI separately. + +Recommended for the S05 session: new session, Claude Opus 5.5, effort High, Build mode. It is a separate, licensed, +GUI-driven task on merged content, and it needs the three new drivers. diff --git a/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/04-message-box.png b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/04-message-box.png new file mode 100644 index 00000000..2d2d8907 Binary files /dev/null and b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/04-message-box.png differ diff --git a/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/box.tas-run.json b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/box.tas-run.json new file mode 100644 index 00000000..fc2821b5 --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/box.tas-run.json @@ -0,0 +1,702 @@ +{ + "schema": "sam-ui.tas-run/1", + "id": "b6920aaa", + "status": "Succeeded", + "startedUtc": "2026-10-19T21:39:50.0326982Z", + "finishedUtc": "2026-10-19T21:40:07.8120464Z", + "durationSeconds": 17.779, + "sourcePath": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\box-aperture.json", + "projectName": "box", + "model": { + "name": "000000_SAM_AnalyticalModel", + "guid": "1988f7b93ec047d0b87bf9cb345d9eab" + }, + "outputs": { + "directory": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\out", + "tbd": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\out\\box.tbd", + "tsd": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\out\\box.tsd" + }, + "refusal": null, + "failure": null, + "notes": [], + "error": null, + "provenance": { + "schema": "sam-ui.run-provenance/1", + "route": "Tas", + "application": { + "entryAssembly": { + "name": "SAM Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM Analytical.dll", + "sha256": "sha256:5fab33710523275b11cdee257b34c2cbf6b258456de4d538936baa5de4f4c4f4" + }, + "sourceRevision": "unknown", + "sourceRevisionOf": "the \u002Bbuild metadata of SAM.Analytical.UI.WPF\u0027s InformationalVersion; SAM_Deploy installers stamp their SAM_Deploy commit, which pins every repository", + "components": [ + { + "name": "SAM.Core", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Core.dll", + "sha256": "sha256:7a3c7b15908467342c60cde31b565dc026b47f8a0cd1e3160c14bf163559d8a9" + }, + { + "name": "SAM.Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.dll", + "sha256": "sha256:9576dcd158e3545d73f6b29706b73af7d20c09325193257927bc46ee31119970" + }, + { + "name": "SAM.Analytical.UI.WPF", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.UI.WPF.dll", + "sha256": "sha256:181d310ed607579fa39a49506437e60d8188b7486cc45d8a261c59167788426c" + }, + { + "name": "SAM.Analytical.Tas", + "version": "1.0.0.0", + "informationalVersion": "unknown", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Tas.dll", + "sha256": "sha256:84fb3e619305760131318c4a2dbaede84133abbe4d21fd08f9ab8a4fb4d91300" + } + ] + }, + "engine": { + "comServer": "TBD.Document", + "executable": { + "path": "C:\\Program Files\\Environmental Design Solutions Ltd\\Tas\\TBD.exe", + "sha256": "sha256:aa658fcdeec8f5e3acbd64523376b5a7362c499beecc280715edca64851e49ae", + "fileVersion": "2, 0, 0, 1", + "productVersion": "9.5.7.0" + }, + "version": "9.5.7.0" + }, + "weather": { + "source": "Embedded", + "name": "HUN_CEN_Budapest.Met.Center, 128400, SRC-TMYx", + "contentSha256": "sha256:7666c3a7e89324372b595aa685aeac965588eb39a8096f02cb2fa7c3ca33a65b", + "contentHashOf": "the SAM WeatherData JSON given to TAS without its own Guid, canonical JSON v1 (SAM_Validation)", + "file": "unknown" + }, + "designDays": { + "source": "DerivedFromWeather", + "heating": [ + "Budapest.Met.Center ANN HTG 100% CONDS DB" + ], + "cooling": [ + "Budapest.Met.Center ANN CLG 0% CONDS DB=\u003EGRad" + ], + "usedForSizing": true + }, + "settings": { + "inputs": { + "simulate": true, + "fullYearSimulation": true, + "fullYearSimulationFrom": 1, + "fullYearSimulationTo": 365, + "sizing": true, + "unmetHours": false, + "useWidths": false, + "solarCalculationMethod": "TAS", + "directT3D": false, + "updateConstructionLayersByPanelType": true, + "createTM59": false, + "createSAP": false, + "createTPD": false, + "createPartL": false, + "printRoomDataSheets": false, + "zoneCategory": "(none)" + }, + "workflow": { + "_type": "SAM.Analytical.Tas.WorkflowSettings,SAM.Analytical.Tas", + "Path_TBD": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\out\\box.tbd", + "Path_gbXML": "C:\\TasOut\\s05pre\\runs\\c1-tas-run-simulation\\out\\box.xml", + "T3DRoute": "GbXML", + "WeatherData": { + "name": "HUN_CEN_Budapest.Met.Center, 128400, SRC-TMYx", + "contentSha256": "sha256:7666c3a7e89324372b595aa685aeac965588eb39a8096f02cb2fa7c3ca33a65b" + }, + "DesignDays_Heating": [ + { + "_type": "SAM.Analytical.DesignDay,SAM.Analytical", + "Data": [ + { + "Name": "DryBulbTemperature", + "Values": [ + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9 + ] + }, + { + "Name": "WetBulbTemperature", + "Values": [ + -16.3, + -16.5, + -16.6, + -16.3, + -15.4, + -15.2, + -16.1, + -16.2, + -15.9, + -14.5, + -15.2, + -13.5, + -14.4, + -14.5, + -14.5, + -15, + -15.8, + -15.1, + -14.1, + -13.8, + -13.8, + -13, + -12.8, + -14.6 + ] + }, + { + "Name": "RelativeHumidity", + "Values": [ + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65 + ] + }, + { + "Name": "AtmosphericPressure", + "Values": [ + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310 + ] + }, + { + "Name": "GlobalSolarRadiation", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "DiffuseSolarRadiation", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindDirection", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindSpeed", + "Values": [ + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4 + ] + }, + { + "Name": "CloudCover", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ], + "Name": "Budapest.Met.Center ANN HTG 100% CONDS DB", + "Description": "Heating Design Day automated :) \n *calculated from weather data as day with min temp - single value and its wind speed all remaining values are zero", + "Year": 2018, + "Month": 2, + "Day": 8 + } + ], + "DesignDays_Cooling": [ + { + "_type": "SAM.Analytical.DesignDay,SAM.Analytical", + "Data": [ + { + "Name": "DryBulbTemperature", + "Values": [ + 21.1, + 21.7, + 22.4, + 22.6, + 23.1, + 23.8, + 22.1, + 23.9, + 25.6, + 27.2, + 28.9, + 30.6, + 32.2, + 33.9, + 33.2, + 32.6, + 32, + 31.3, + 24.4, + 23.3, + 22.8, + 22.9, + 23, + 23.1 + ] + }, + { + "Name": "WetBulbTemperature", + "Values": [ + 19.1, + 19.6, + 20, + 20.7, + 20.4, + 20.1, + 21.9, + 19.4, + 18.9, + 18.3, + 17.8, + 17.2, + 16.6, + 16.1, + 15.7, + 15.1, + 14.6, + 14, + 24.2, + 23.2, + 21.7, + 20.7, + 19.5, + 18.7 + ] + }, + { + "Name": "RelativeHumidity", + "Values": [ + 89, + 88, + 86, + 89, + 85, + 80, + 100, + 76, + 66, + 58, + 51, + 45, + 39, + 35, + 35, + 35, + 35, + 35, + 99, + 99, + 93, + 87, + 80, + 76 + ] + }, + { + "Name": "AtmosphericPressure", + "Values": [ + 99788, + 99758, + 99718, + 99733, + 99677, + 99631, + 99825, + 99544, + 99514, + 99484, + 99455, + 99425, + 99395, + 99365, + 99333, + 99300, + 99267, + 99235, + 99709, + 99788, + 99829, + 99830, + 99830, + 99831 + ] + }, + { + "Name": "GlobalSolarRadiation", + "Values": [ + 0, + 0, + 0, + 22, + 101, + 141, + 251, + 523, + 739, + 851, + 903, + 896, + 835, + 680, + 501, + 357, + 208, + 71, + 4, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "DiffuseSolarRadiation", + "Values": [ + 0, + 0, + 0, + 22, + 83, + 123, + 200, + 259, + 205, + 154, + 177, + 211, + 193, + 230, + 243, + 179, + 120, + 49, + 4, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindDirection", + "Values": [ + 140, + 138, + 159, + 198, + 177, + 195, + 168, + 84, + 263, + 204, + 23, + 77, + 315, + 164, + 277, + 95, + 27, + 292, + 97, + 160, + 79, + 147, + 74, + 40 + ] + }, + { + "Name": "WindSpeed", + "Values": [ + 1, + 1, + 1, + 1, + 0.8, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.8, + 1.5, + 2.3, + 3.1, + 3.8, + 4.6, + 4.6, + 4.6, + 4.6, + 4.6 + ] + }, + { + "Name": "CloudCover", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ], + "Name": "Budapest.Met.Center ANN CLG 0% CONDS DB=\u003EGRad", + "Description": "Cooling Design Day automated :) \n *calculated from weather data as day with max temp and then radation replaced from max global radation day and cloud cover removed", + "Year": 2018, + "Month": 7, + "Day": 1 + } + ], + "SurfaceOutputSpecs": [ + { + "_type": "SAM.Core.Tas.SurfaceOutputSpec,SAM.Core.Tas", + "Name": "Tas.Simulate", + "Guid": "7b153648-6933-4daf-9a4c-9e6801ef9af4", + "ApertureData": true, + "Condensation": false, + "Convection": false, + "SolarGain": true, + "Conduction": true, + "LongWave": false, + "Temperature": true + } + ], + "UnmetHours": false, + "Simulate": true, + "Sizing": true, + "UpdateZones": true, + "UseWidths": false, + "AddIZAMs": true, + "RemoveIZAMs": false, + "RemoveMechanicalVentilationGains": false, + "SimulateFrom": 1, + "SimulateTo": 365, + "RemoveExistingTBD": false, + "UpdateWindowPositionType": false + } + }, + "unknown": { + "application.sourceRevision": "this build\u0027s InformationalVersion \u00271.0.0\u0027 has no source revision after \u0027\u002B\u0027 (a local developer build); the component SHA-256 values identify the binaries", + "application.components[SAM.Analytical.Tas].informationalVersion": "the assembly carries no InformationalVersion", + "weather.file": "the weather is the model\u0027s embedded WeatherData, not a file; contentSha256 identifies it" + } + } +} \ No newline at end of file diff --git a/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/message-box.txt b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/message-box.txt new file mode 100644 index 00000000..cabf72cd --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c1-tas-run-simulation/message-box.txt @@ -0,0 +1,3 @@ +Title: +Model successfuly converted. + Time elapsed: 0min18sec diff --git a/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/06-compare-tab-Provenance.png b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/06-compare-tab-Provenance.png new file mode 100644 index 00000000..9a87fbb7 Binary files /dev/null and b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/06-compare-tab-Provenance.png differ diff --git a/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/diagnostics.txt b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/diagnostics.txt new file mode 100644 index 00000000..80b394bc --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/diagnostics.txt @@ -0,0 +1,28 @@ +Banner: Gate Fail: 6 match, 0 warn, 10 fail (4 contributing to numerical status, 6 informational and excluded); 2 missing on one engine, 0 unit mismatch, 0 not reported. Spaces: 1 matched, 0 only in Tas, 0 only in OpenStudio. + +Overall gate: Fail (numerical Fail, coverage Warn, provenance Pass, reconciliation Pass) +Metrics: 6 match, 0 warn, 10 fail, 2 N/A; 16 of 18 required metrics comparable. Tolerance profile 'default'. A band is a tolerance band, not an engineering verdict (SAM_UI#232/#233). + +Spaces: Tas 1, OpenStudio 1; matched by GUID 1, by name 0. + +Model total vs sum of spaces: + TAS floorArea: model 50, sum of 1 spaces 50 m2 -> Match + TAS volume: model 150, sum of 1 spaces 150 m3 -> Match + OpenStudio floorArea: model 50, sum of 1 spaces 50 m2 -> Match + OpenStudio volume: model 150, sum of 1 spaces 150 m3 -> Match + +Tas run: Success + Note: Shared gbXML was exported from the source model (no --gbxml supplied). + Result sources: SAM.Analytical.Tas + +OpenStudio run: Success + Warning: [SAM-OS-IC-001] Warning: Pollutant generation is not converted (EnergyPlus generic contaminant modelling is out of scope) (SAM InternalCondition 9e54af09-65fb-4f64-98d7-200db3be2457) → SAM_InternalCondition_S39_OfficeOpen_30b69a1f + Note: [SAM-OS-RUN-002] Information: Annual weather source: explicit EPW (weather.epw) + Note: [SAM-OS-RUN-002] Information: Ground temperatures taken from the SAM model WeatherData (depth 0.5 m set, 12 monthly values) + Note: [SAM-OS-RUN-002] Information: No design-day source supplied; sizing-period runs stay disabled unless OpenStudioConversionOptions.RunSizingPeriods overrides + Result sources: SAM.Analytical.OpenStudio + +Run: Compared - C:\TasOut\s05pre\runs\c3a-both-explicit-session1\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8 +Tas producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_Tas\build\benchmark-tas.exe, exit code 0, 21.2 s, log C:\TasOut\s05pre\runs\c3a-both-explicit-session1\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\benchmark-tas.log +OpenStudio producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_OpenStudio\benchmark\SAM.Analytical.OpenStudio.Benchmark\bin\x64\Release\net8.0\benchmark-openstudio.exe, exit code 0, 7 s, log C:\TasOut\s05pre\runs\c3a-both-explicit-session1\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\benchmark-openstudio.log +Run record: C:\TasOut\s05pre\runs\c3a-both-explicit-session1\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\engine-comparison-run.json diff --git a/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/engine-comparison-run.json b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/engine-comparison-run.json new file mode 100644 index 00000000..3ebe9d09 --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c3a-both-explicit-session1/engine-comparison-run.json @@ -0,0 +1,231 @@ +{ + "schema": "sam-ui.engine-comparison-run/1", + "id": "17a4f3e8", + "status": "Compared", + "startedUtc": "2026-10-19T21:42:31.3711916Z", + "finishedUtc": "2026-10-19T21:43:00.0315148Z", + "sourcePath": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\box-aperture.json", + "modelName": "000000_SAM_AnalyticalModel", + "snapshot": { + "path": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\snapshot.json", + "sha256": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05" + }, + "weather": { + "source": "File", + "path": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\weather.epw", + "sha256": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "producers": [ + { + "engine": "Tas", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-TAS.json" + ], + "exitCode": 0, + "durationSeconds": 21.168, + "log": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-tas.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-TAS.json", + "error": null, + "succeeded": true + }, + { + "engine": "OpenStudio", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\openstudio" + ], + "exitCode": 0, + "durationSeconds": 7.041, + "log": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-openstudio.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-OpenStudio.json", + "error": null, + "succeeded": true + } + ], + "gate": "Fail", + "reports": [ + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\comparison.md", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\comparison.csv", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\comparison-summary.json" + ], + "diagnostics": [], + "error": null, + "provenance": { + "schema": "sam-ui.run-provenance/1", + "route": "Both", + "application": { + "entryAssembly": { + "name": "SAM Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM Analytical.dll", + "sha256": "sha256:5fab33710523275b11cdee257b34c2cbf6b258456de4d538936baa5de4f4c4f4" + }, + "sourceRevision": "unknown", + "sourceRevisionOf": "the \u002Bbuild metadata of SAM.Analytical.UI.WPF\u0027s InformationalVersion; SAM_Deploy installers stamp their SAM_Deploy commit, which pins every repository", + "components": [ + { + "name": "SAM.Core", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Core.dll", + "sha256": "sha256:7a3c7b15908467342c60cde31b565dc026b47f8a0cd1e3160c14bf163559d8a9" + }, + { + "name": "SAM.Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.dll", + "sha256": "sha256:9576dcd158e3545d73f6b29706b73af7d20c09325193257927bc46ee31119970" + }, + { + "name": "SAM.Analytical.UI.WPF", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.UI.WPF.dll", + "sha256": "sha256:181d310ed607579fa39a49506437e60d8188b7486cc45d8a261c59167788426c" + }, + { + "name": "SAM.Analytical.Benchmark", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.dll", + "sha256": "sha256:5242c29fc8f21dab17129ef7f83a0c890b5fcd65012765c122913685af8d4f83" + }, + { + "name": "SAM.Analytical.Benchmark.Compare", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.Compare.dll", + "sha256": "sha256:e387fc07802de71731825f0e77f37d9ed2f70301cba8096e82684872291170a9" + } + ] + }, + "producers": { + "Tas": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "sha256": "sha256:07ab3e45b107bdd28a7d6b3622d05014b1edb95e015f86e5dc3e9c7a9ab3fbd2", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.dll", + "sha256": "sha256:7a70ba2d29f4cf49da2f7074fff7aabe356c98ddd3bd4b95fb54cba47ca3c412", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-TAS.json" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "e84aeff687033354e3f17891635fdf10d42ad68f", + "engine": { + "kind": "TAS", + "name": "Tas", + "version": "9.5.7.0", + "sdkVersion": "unknown" + }, + "route": "Native-TAS", + "weather": { + "identity": "weather", + "hash": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + }, + "OpenStudio": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "sha256": "sha256:644059197b0638bdbfcf7d41b3a7c375b40198a7f53336d907c3e727619a5e06", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.dll", + "sha256": "sha256:dfc912b3192ec93c23f165761feaa6bea44732e958c359c6f52dea22a173c060", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c3a-both-explicit-session1\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214231_17a4f3e8\\openstudio" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "d4216f3525c01ca762c1b3e9b6d099733d037f54", + "engine": { + "kind": "OpenStudio", + "name": "EnergyPlus", + "version": "25.1.0", + "sdkVersion": "3.10.0" + }, + "route": "Native-OpenStudio", + "weather": { + "identity": "weather", + "hash": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + } + }, + "environment": { + "SAM_COMMIT": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "RUNNER_COMMIT": "not set" + }, + "weather": { + "source": "File", + "sha256": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3", + "originalPath": "C:\\TasOut\\s01b\\inputs\\Budapest.epw" + }, + "designDays": { + "source": "chosen by each producer from the snapshot (SAM_UI passes none): see producers.\u003Cengine\u003E.reported.designDaySource" + }, + "settings": { + "producers": "each producer\u0027s arguments (producers.\u003Cengine\u003E.arguments) and its built-in workflow settings, which its executable SHA-256 pins" + }, + "unknown": { + "application.sourceRevision": "this build\u0027s InformationalVersion \u00271.0.0\u0027 has no source revision after \u0027\u002B\u0027 (a local developer build); the component SHA-256 values identify the binaries", + "producers.Tas.reported.engine.sdkVersion": "the producer reported none (null in its B1a document; its warnings and notes say why)" + } + } +} \ No newline at end of file diff --git a/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/diagnostics.txt b/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/diagnostics.txt new file mode 100644 index 00000000..ec7752da --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/diagnostics.txt @@ -0,0 +1,28 @@ +Banner: Gate Fail: 6 match, 0 warn, 10 fail (4 contributing to numerical status, 6 informational and excluded); 2 missing on one engine, 0 unit mismatch, 0 not reported. Spaces: 1 matched, 0 only in Tas, 0 only in OpenStudio. + +Overall gate: Fail (numerical Fail, coverage Warn, provenance Pass, reconciliation Pass) +Metrics: 6 match, 0 warn, 10 fail, 2 N/A; 16 of 18 required metrics comparable. Tolerance profile 'default'. A band is a tolerance band, not an engineering verdict (SAM_UI#232/#233). + +Spaces: Tas 1, OpenStudio 1; matched by GUID 1, by name 0. + +Model total vs sum of spaces: + TAS floorArea: model 50, sum of 1 spaces 50 m2 -> Match + TAS volume: model 150, sum of 1 spaces 150 m3 -> Match + OpenStudio floorArea: model 50, sum of 1 spaces 50 m2 -> Match + OpenStudio volume: model 150, sum of 1 spaces 150 m3 -> Match + +Tas run: Success + Note: Shared gbXML was exported from the source model (no --gbxml supplied). + Result sources: SAM.Analytical.Tas + +OpenStudio run: Success + Warning: [SAM-OS-IC-001] Warning: Pollutant generation is not converted (EnergyPlus generic contaminant modelling is out of scope) (SAM InternalCondition 9e54af09-65fb-4f64-98d7-200db3be2457) → SAM_InternalCondition_S39_OfficeOpen_30b69a1f + Note: [SAM-OS-RUN-002] Information: Annual weather source: explicit EPW (weather.epw) + Note: [SAM-OS-RUN-002] Information: Ground temperatures taken from the SAM model WeatherData (depth 0.5 m set, 12 monthly values) + Note: [SAM-OS-RUN-002] Information: No design-day source supplied; sizing-period runs stay disabled unless OpenStudioConversionOptions.RunSizingPeriods overrides + Result sources: SAM.Analytical.OpenStudio + +Run: Compared - C:\TasOut\s05pre\runs\c3b-both-explicit-session2\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8 +Tas producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_Tas\build\benchmark-tas.exe, exit code 0, 20.6 s, log C:\TasOut\s05pre\runs\c3b-both-explicit-session2\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\benchmark-tas.log +OpenStudio producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_OpenStudio\benchmark\SAM.Analytical.OpenStudio.Benchmark\bin\x64\Release\net8.0\benchmark-openstudio.exe, exit code 0, 7.6 s, log C:\TasOut\s05pre\runs\c3b-both-explicit-session2\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\benchmark-openstudio.log +Run record: C:\TasOut\s05pre\runs\c3b-both-explicit-session2\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\engine-comparison-run.json diff --git a/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/engine-comparison-run.json b/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/engine-comparison-run.json new file mode 100644 index 00000000..bcfa2313 --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c3b-both-explicit-session2/engine-comparison-run.json @@ -0,0 +1,231 @@ +{ + "schema": "sam-ui.engine-comparison-run/1", + "id": "46369df8", + "status": "Compared", + "startedUtc": "2026-10-19T21:43:26.4232231Z", + "finishedUtc": "2026-10-19T21:43:54.9529839Z", + "sourcePath": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\box-aperture.json", + "modelName": "000000_SAM_AnalyticalModel", + "snapshot": { + "path": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\snapshot.json", + "sha256": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05" + }, + "weather": { + "source": "File", + "path": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\weather.epw", + "sha256": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "producers": [ + { + "engine": "Tas", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-TAS.json" + ], + "exitCode": 0, + "durationSeconds": 20.562, + "log": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-tas.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-TAS.json", + "error": null, + "succeeded": true + }, + { + "engine": "OpenStudio", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\openstudio" + ], + "exitCode": 0, + "durationSeconds": 7.611, + "log": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-openstudio.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-OpenStudio.json", + "error": null, + "succeeded": true + } + ], + "gate": "Fail", + "reports": [ + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\comparison.md", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\comparison.csv", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\comparison-summary.json" + ], + "diagnostics": [], + "error": null, + "provenance": { + "schema": "sam-ui.run-provenance/1", + "route": "Both", + "application": { + "entryAssembly": { + "name": "SAM Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM Analytical.dll", + "sha256": "sha256:5fab33710523275b11cdee257b34c2cbf6b258456de4d538936baa5de4f4c4f4" + }, + "sourceRevision": "unknown", + "sourceRevisionOf": "the \u002Bbuild metadata of SAM.Analytical.UI.WPF\u0027s InformationalVersion; SAM_Deploy installers stamp their SAM_Deploy commit, which pins every repository", + "components": [ + { + "name": "SAM.Core", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Core.dll", + "sha256": "sha256:7a3c7b15908467342c60cde31b565dc026b47f8a0cd1e3160c14bf163559d8a9" + }, + { + "name": "SAM.Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.dll", + "sha256": "sha256:9576dcd158e3545d73f6b29706b73af7d20c09325193257927bc46ee31119970" + }, + { + "name": "SAM.Analytical.UI.WPF", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.UI.WPF.dll", + "sha256": "sha256:181d310ed607579fa39a49506437e60d8188b7486cc45d8a261c59167788426c" + }, + { + "name": "SAM.Analytical.Benchmark", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.dll", + "sha256": "sha256:5242c29fc8f21dab17129ef7f83a0c890b5fcd65012765c122913685af8d4f83" + }, + { + "name": "SAM.Analytical.Benchmark.Compare", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.Compare.dll", + "sha256": "sha256:e387fc07802de71731825f0e77f37d9ed2f70301cba8096e82684872291170a9" + } + ] + }, + "producers": { + "Tas": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "sha256": "sha256:07ab3e45b107bdd28a7d6b3622d05014b1edb95e015f86e5dc3e9c7a9ab3fbd2", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.dll", + "sha256": "sha256:7a70ba2d29f4cf49da2f7074fff7aabe356c98ddd3bd4b95fb54cba47ca3c412", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-TAS.json" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "e84aeff687033354e3f17891635fdf10d42ad68f", + "engine": { + "kind": "TAS", + "name": "Tas", + "version": "9.5.7.0", + "sdkVersion": "unknown" + }, + "route": "Native-TAS", + "weather": { + "identity": "weather", + "hash": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + }, + "OpenStudio": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "sha256": "sha256:644059197b0638bdbfcf7d41b3a7c375b40198a7f53336d907c3e727619a5e06", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.dll", + "sha256": "sha256:dfc912b3192ec93c23f165761feaa6bea44732e958c359c6f52dea22a173c060", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c3b-both-explicit-session2\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214326_46369df8\\openstudio" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "d4216f3525c01ca762c1b3e9b6d099733d037f54", + "engine": { + "kind": "OpenStudio", + "name": "EnergyPlus", + "version": "25.1.0", + "sdkVersion": "3.10.0" + }, + "route": "Native-OpenStudio", + "weather": { + "identity": "weather", + "hash": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + } + }, + "environment": { + "SAM_COMMIT": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "RUNNER_COMMIT": "not set" + }, + "weather": { + "source": "File", + "sha256": "sha256:472ffb4e2f10867600949a392ce46891fc1bd05f2fc8d8917a99bca7d26209c3", + "originalPath": "C:\\TasOut\\s01b\\inputs\\Budapest.epw" + }, + "designDays": { + "source": "chosen by each producer from the snapshot (SAM_UI passes none): see producers.\u003Cengine\u003E.reported.designDaySource" + }, + "settings": { + "producers": "each producer\u0027s arguments (producers.\u003Cengine\u003E.arguments) and its built-in workflow settings, which its executable SHA-256 pins" + }, + "unknown": { + "application.sourceRevision": "this build\u0027s InformationalVersion \u00271.0.0\u0027 has no source revision after \u0027\u002B\u0027 (a local developer build); the component SHA-256 values identify the binaries", + "producers.Tas.reported.engine.sdkVersion": "the producer reported none (null in its B1a document; its warnings and notes say why)" + } + } +} \ No newline at end of file diff --git a/documentation/evidence/s05-preflight-20261019/c4-both-embedded/diagnostics.txt b/documentation/evidence/s05-preflight-20261019/c4-both-embedded/diagnostics.txt new file mode 100644 index 00000000..dacebedc --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c4-both-embedded/diagnostics.txt @@ -0,0 +1,28 @@ +Banner: Gate Fail: 6 match, 0 warn, 10 fail (4 contributing to numerical status, 6 informational and excluded); 2 missing on one engine, 0 unit mismatch, 0 not reported. Spaces: 1 matched, 0 only in Tas, 0 only in OpenStudio. + +Overall gate: Fail (numerical Fail, coverage Warn, provenance Pass, reconciliation Pass) +Metrics: 6 match, 0 warn, 10 fail, 2 N/A; 16 of 18 required metrics comparable. Tolerance profile 'default'. A band is a tolerance band, not an engineering verdict (SAM_UI#232/#233). + +Spaces: Tas 1, OpenStudio 1; matched by GUID 1, by name 0. + +Model total vs sum of spaces: + TAS floorArea: model 50, sum of 1 spaces 50 m2 -> Match + TAS volume: model 150, sum of 1 spaces 150 m3 -> Match + OpenStudio floorArea: model 50, sum of 1 spaces 50 m2 -> Match + OpenStudio volume: model 150, sum of 1 spaces 150 m3 -> Match + +Tas run: Success + Note: Shared gbXML was exported from the source model (no --gbxml supplied). + Result sources: SAM.Analytical.Tas + +OpenStudio run: Success + Warning: [SAM-OS-IC-001] Warning: Pollutant generation is not converted (EnergyPlus generic contaminant modelling is out of scope) (SAM InternalCondition 9e54af09-65fb-4f64-98d7-200db3be2457) → SAM_InternalCondition_S39_OfficeOpen_30b69a1f + Note: [SAM-OS-RUN-002] Information: Annual weather source: explicit EPW (weather.epw) + Note: [SAM-OS-RUN-002] Information: Ground temperatures taken from the SAM model WeatherData (depth 0.5 m set, 12 monthly values) + Note: [SAM-OS-RUN-002] Information: No design-day source supplied; sizing-period runs stay disabled unless OpenStudioConversionOptions.RunSizingPeriods overrides + Result sources: SAM.Analytical.OpenStudio + +Run: Compared - C:\TasOut\s05pre\runs\c4-both-embedded\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08 +Tas producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_Tas\build\benchmark-tas.exe, exit code 0, 20.1 s, log C:\TasOut\s05pre\runs\c4-both-embedded\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\benchmark-tas.log +OpenStudio producer: completed, C:\Users\michal\Documents\GitHub\SAM-BIM\SAM_OpenStudio\benchmark\SAM.Analytical.OpenStudio.Benchmark\bin\x64\Release\net8.0\benchmark-openstudio.exe, exit code 0, 6.9 s, log C:\TasOut\s05pre\runs\c4-both-embedded\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\benchmark-openstudio.log +Run record: C:\TasOut\s05pre\runs\c4-both-embedded\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\engine-comparison-run.json diff --git a/documentation/evidence/s05-preflight-20261019/c4-both-embedded/engine-comparison-run.json b/documentation/evidence/s05-preflight-20261019/c4-both-embedded/engine-comparison-run.json new file mode 100644 index 00000000..72aebfca --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c4-both-embedded/engine-comparison-run.json @@ -0,0 +1,232 @@ +{ + "schema": "sam-ui.engine-comparison-run/1", + "id": "b1daab08", + "status": "Compared", + "startedUtc": "2026-10-19T21:44:18.8134799Z", + "finishedUtc": "2026-10-19T21:44:46.4376217Z", + "sourcePath": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\box-aperture.json", + "modelName": "000000_SAM_AnalyticalModel", + "snapshot": { + "path": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\snapshot.json", + "sha256": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05" + }, + "weather": { + "source": "Embedded", + "path": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\weather.epw", + "sha256": "sha256:e1353bd2600a401f76262d52a8e16176a15dc45a4967e58d9107c374704abf7c" + }, + "producers": [ + { + "engine": "Tas", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-TAS.json" + ], + "exitCode": 0, + "durationSeconds": 20.109, + "log": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-tas.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-TAS.json", + "error": null, + "succeeded": true + }, + { + "engine": "OpenStudio", + "executable": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\openstudio" + ], + "exitCode": 0, + "durationSeconds": 6.915, + "log": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-openstudio.log", + "benchmark": "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-OpenStudio.json", + "error": null, + "succeeded": true + } + ], + "gate": "Fail", + "reports": [ + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\comparison.md", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\comparison.csv", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\comparison-summary.json" + ], + "diagnostics": [], + "error": null, + "provenance": { + "schema": "sam-ui.run-provenance/1", + "route": "Both", + "application": { + "entryAssembly": { + "name": "SAM Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM Analytical.dll", + "sha256": "sha256:5fab33710523275b11cdee257b34c2cbf6b258456de4d538936baa5de4f4c4f4" + }, + "sourceRevision": "unknown", + "sourceRevisionOf": "the \u002Bbuild metadata of SAM.Analytical.UI.WPF\u0027s InformationalVersion; SAM_Deploy installers stamp their SAM_Deploy commit, which pins every repository", + "components": [ + { + "name": "SAM.Core", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Core.dll", + "sha256": "sha256:7a3c7b15908467342c60cde31b565dc026b47f8a0cd1e3160c14bf163559d8a9" + }, + { + "name": "SAM.Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.dll", + "sha256": "sha256:9576dcd158e3545d73f6b29706b73af7d20c09325193257927bc46ee31119970" + }, + { + "name": "SAM.Analytical.UI.WPF", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.UI.WPF.dll", + "sha256": "sha256:181d310ed607579fa39a49506437e60d8188b7486cc45d8a261c59167788426c" + }, + { + "name": "SAM.Analytical.Benchmark", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.dll", + "sha256": "sha256:5242c29fc8f21dab17129ef7f83a0c890b5fcd65012765c122913685af8d4f83" + }, + { + "name": "SAM.Analytical.Benchmark.Compare", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Benchmark.Compare.dll", + "sha256": "sha256:e387fc07802de71731825f0e77f37d9ed2f70301cba8096e82684872291170a9" + } + ] + }, + "producers": { + "Tas": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.exe", + "sha256": "sha256:07ab3e45b107bdd28a7d6b3622d05014b1edb95e015f86e5dc3e9c7a9ab3fbd2", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_Tas\\build\\benchmark-tas.dll", + "sha256": "sha256:7a70ba2d29f4cf49da2f7074fff7aabe356c98ddd3bd4b95fb54cba47ca3c412", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\weather.epw", + "--tbd", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\tas\\000000_SAM_AnalyticalModel.tbd", + "--out", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-TAS.json" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "e84aeff687033354e3f17891635fdf10d42ad68f", + "engine": { + "kind": "TAS", + "name": "Tas", + "version": "9.5.7.0", + "sdkVersion": "unknown" + }, + "route": "Native-TAS", + "weather": { + "identity": "weather", + "hash": "sha256:e1353bd2600a401f76262d52a8e16176a15dc45a4967e58d9107c374704abf7c" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + }, + "OpenStudio": { + "executable": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.exe", + "sha256": "sha256:644059197b0638bdbfcf7d41b3a7c375b40198a7f53336d907c3e727619a5e06", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0", + "assembly": { + "path": "C:\\Users\\michal\\Documents\\GitHub\\SAM-BIM\\SAM_OpenStudio\\benchmark\\SAM.Analytical.OpenStudio.Benchmark\\bin\\x64\\Release\\net8.0\\benchmark-openstudio.dll", + "sha256": "sha256:dfc912b3192ec93c23f165761feaa6bea44732e958c359c6f52dea22a173c060", + "fileVersion": "1.0.0.0", + "productVersion": "1.0.0" + } + }, + "arguments": [ + "--model", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\snapshot.json", + "--weather", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\weather.epw", + "--out", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\benchmark-OpenStudio.json", + "--work", + "C:\\TasOut\\s05pre\\runs\\c4-both-embedded\\000000_SAM_AnalyticalModel_TasOpenStudio_20261019-214418_b1daab08\\openstudio" + ], + "succeeded": true, + "reported": { + "samCommit": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "runnerCommit": "d4216f3525c01ca762c1b3e9b6d099733d037f54", + "engine": { + "kind": "OpenStudio", + "name": "EnergyPlus", + "version": "25.1.0", + "sdkVersion": "3.10.0" + }, + "route": "Native-OpenStudio", + "weather": { + "identity": "weather", + "hash": "sha256:e1353bd2600a401f76262d52a8e16176a15dc45a4967e58d9107c374704abf7c" + }, + "designDaySource": "None", + "sourceFileHash": "sha256:0c30db14a9b10f5e651248e70c942bf875ca93dcee9436998b9960e47c0a6d05", + "canonicalModelHash": "sha256:05c1e334af00f339d36d5b97828692d3d7d27269d2168a945dfc4a35919c9500", + "canonicalizationVersion": "1.0.0", + "state": "Success" + } + } + }, + "environment": { + "SAM_COMMIT": "62b5415697d1a5af143c6b581b7d42fbd6551ca8", + "RUNNER_COMMIT": "not set" + }, + "weather": { + "source": "Embedded", + "sha256": "sha256:e1353bd2600a401f76262d52a8e16176a15dc45a4967e58d9107c374704abf7c", + "originalPath": "unknown" + }, + "designDays": { + "source": "chosen by each producer from the snapshot (SAM_UI passes none): see producers.\u003Cengine\u003E.reported.designDaySource" + }, + "settings": { + "producers": "each producer\u0027s arguments (producers.\u003Cengine\u003E.arguments) and its built-in workflow settings, which its executable SHA-256 pins" + }, + "unknown": { + "application.sourceRevision": "this build\u0027s InformationalVersion \u00271.0.0\u0027 has no source revision after \u0027\u002B\u0027 (a local developer build); the component SHA-256 values identify the binaries", + "weather.originalPath": "the weather is the model\u0027s embedded WeatherData, exported to EPW once for both producers; sha256 identifies the exported file", + "producers.Tas.reported.engine.sdkVersion": "the producer reported none (null in its B1a document; its warnings and notes say why)" + } + } +} \ No newline at end of file diff --git a/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/04-message-box.png b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/04-message-box.png new file mode 100644 index 00000000..fdffd802 Binary files /dev/null and b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/04-message-box.png differ diff --git a/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/box.tas-run.json b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/box.tas-run.json new file mode 100644 index 00000000..228a9f08 --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/box.tas-run.json @@ -0,0 +1,702 @@ +{ + "schema": "sam-ui.tas-run/1", + "id": "d61513f4", + "status": "Failed", + "startedUtc": "2026-10-19T21:40:43.4062941Z", + "finishedUtc": "2026-10-19T21:40:59.3169439Z", + "durationSeconds": 15.911, + "sourcePath": "C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\box-aperture.json", + "projectName": "box", + "model": { + "name": "000000_SAM_AnalyticalModel", + "guid": "1988f7b93ec047d0b87bf9cb345d9eab" + }, + "outputs": { + "directory": "C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out", + "tbd": "C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box.tbd", + "tsd": null + }, + "refusal": null, + "failure": "TAS return code: 0\nTAS error log: C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box_error_log.txt\nError: Simulating Model: TAS refused the simulation: TBDDocument.simulate returned 0. TAS return code: 0; TAS error log: C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box_error_log.txt. (TAS-SIM-001)\nError: Simulating Model: TAS wrote an error log for this run: C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box_error_log.txt (TAS return code: 0)\r\nError accessing the TSD file for writing (TAS-SIM-001)\nError: Simulating Model: The run produced no output file: C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box.tsd TAS return code: 0; TAS error log: C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box_error_log.txt. (TAS-SIM-001)", + "notes": [], + "error": null, + "provenance": { + "schema": "sam-ui.run-provenance/1", + "route": "Tas", + "application": { + "entryAssembly": { + "name": "SAM Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM Analytical.dll", + "sha256": "sha256:5fab33710523275b11cdee257b34c2cbf6b258456de4d538936baa5de4f4c4f4" + }, + "sourceRevision": "unknown", + "sourceRevisionOf": "the \u002Bbuild metadata of SAM.Analytical.UI.WPF\u0027s InformationalVersion; SAM_Deploy installers stamp their SAM_Deploy commit, which pins every repository", + "components": [ + { + "name": "SAM.Core", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Core.dll", + "sha256": "sha256:7a3c7b15908467342c60cde31b565dc026b47f8a0cd1e3160c14bf163559d8a9" + }, + { + "name": "SAM.Analytical", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.dll", + "sha256": "sha256:9576dcd158e3545d73f6b29706b73af7d20c09325193257927bc46ee31119970" + }, + { + "name": "SAM.Analytical.UI.WPF", + "version": "1.0.0.0", + "informationalVersion": "1.0.0", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.UI.WPF.dll", + "sha256": "sha256:181d310ed607579fa39a49506437e60d8188b7486cc45d8a261c59167788426c" + }, + { + "name": "SAM.Analytical.Tas", + "version": "1.0.0.0", + "informationalVersion": "unknown", + "path": "C:\\TasOut\\s05pre\\app-int\\SAM.Analytical.Tas.dll", + "sha256": "sha256:84fb3e619305760131318c4a2dbaede84133abbe4d21fd08f9ab8a4fb4d91300" + } + ] + }, + "engine": { + "comServer": "TBD.Document", + "executable": { + "path": "C:\\Program Files\\Environmental Design Solutions Ltd\\Tas\\TBD.exe", + "sha256": "sha256:aa658fcdeec8f5e3acbd64523376b5a7362c499beecc280715edca64851e49ae", + "fileVersion": "2, 0, 0, 1", + "productVersion": "9.5.7.0" + }, + "version": "9.5.7.0" + }, + "weather": { + "source": "Embedded", + "name": "HUN_CEN_Budapest.Met.Center, 128400, SRC-TMYx", + "contentSha256": "sha256:7666c3a7e89324372b595aa685aeac965588eb39a8096f02cb2fa7c3ca33a65b", + "contentHashOf": "the SAM WeatherData JSON given to TAS without its own Guid, canonical JSON v1 (SAM_Validation)", + "file": "unknown" + }, + "designDays": { + "source": "DerivedFromWeather", + "heating": [ + "Budapest.Met.Center ANN HTG 100% CONDS DB" + ], + "cooling": [ + "Budapest.Met.Center ANN CLG 0% CONDS DB=\u003EGRad" + ], + "usedForSizing": true + }, + "settings": { + "inputs": { + "simulate": true, + "fullYearSimulation": true, + "fullYearSimulationFrom": 1, + "fullYearSimulationTo": 365, + "sizing": true, + "unmetHours": false, + "useWidths": false, + "solarCalculationMethod": "TAS", + "directT3D": false, + "updateConstructionLayersByPanelType": true, + "createTM59": false, + "createSAP": false, + "createTPD": false, + "createPartL": false, + "printRoomDataSheets": false, + "zoneCategory": "(none)" + }, + "workflow": { + "_type": "SAM.Analytical.Tas.WorkflowSettings,SAM.Analytical.Tas", + "Path_TBD": "C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box.tbd", + "Path_gbXML": "C:\\TasOut\\s05pre\\runs\\c7-tas-refusal-energy-simulation\\out\\box.xml", + "T3DRoute": "GbXML", + "WeatherData": { + "name": "HUN_CEN_Budapest.Met.Center, 128400, SRC-TMYx", + "contentSha256": "sha256:7666c3a7e89324372b595aa685aeac965588eb39a8096f02cb2fa7c3ca33a65b" + }, + "DesignDays_Heating": [ + { + "_type": "SAM.Analytical.DesignDay,SAM.Analytical", + "Data": [ + { + "Name": "DryBulbTemperature", + "Values": [ + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9, + -10.9 + ] + }, + { + "Name": "WetBulbTemperature", + "Values": [ + -16.3, + -16.5, + -16.6, + -16.3, + -15.4, + -15.2, + -16.1, + -16.2, + -15.9, + -14.5, + -15.2, + -13.5, + -14.4, + -14.5, + -14.5, + -15, + -15.8, + -15.1, + -14.1, + -13.8, + -13.8, + -13, + -12.8, + -14.6 + ] + }, + { + "Name": "RelativeHumidity", + "Values": [ + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65, + 65 + ] + }, + { + "Name": "AtmosphericPressure", + "Values": [ + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310, + 100310 + ] + }, + { + "Name": "GlobalSolarRadiation", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "DiffuseSolarRadiation", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindDirection", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindSpeed", + "Values": [ + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4, + 2.4 + ] + }, + { + "Name": "CloudCover", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ], + "Name": "Budapest.Met.Center ANN HTG 100% CONDS DB", + "Description": "Heating Design Day automated :) \n *calculated from weather data as day with min temp - single value and its wind speed all remaining values are zero", + "Year": 2018, + "Month": 2, + "Day": 8 + } + ], + "DesignDays_Cooling": [ + { + "_type": "SAM.Analytical.DesignDay,SAM.Analytical", + "Data": [ + { + "Name": "DryBulbTemperature", + "Values": [ + 21.1, + 21.7, + 22.4, + 22.6, + 23.1, + 23.8, + 22.1, + 23.9, + 25.6, + 27.2, + 28.9, + 30.6, + 32.2, + 33.9, + 33.2, + 32.6, + 32, + 31.3, + 24.4, + 23.3, + 22.8, + 22.9, + 23, + 23.1 + ] + }, + { + "Name": "WetBulbTemperature", + "Values": [ + 19.1, + 19.6, + 20, + 20.7, + 20.4, + 20.1, + 21.9, + 19.4, + 18.9, + 18.3, + 17.8, + 17.2, + 16.6, + 16.1, + 15.7, + 15.1, + 14.6, + 14, + 24.2, + 23.2, + 21.7, + 20.7, + 19.5, + 18.7 + ] + }, + { + "Name": "RelativeHumidity", + "Values": [ + 89, + 88, + 86, + 89, + 85, + 80, + 100, + 76, + 66, + 58, + 51, + 45, + 39, + 35, + 35, + 35, + 35, + 35, + 99, + 99, + 93, + 87, + 80, + 76 + ] + }, + { + "Name": "AtmosphericPressure", + "Values": [ + 99788, + 99758, + 99718, + 99733, + 99677, + 99631, + 99825, + 99544, + 99514, + 99484, + 99455, + 99425, + 99395, + 99365, + 99333, + 99300, + 99267, + 99235, + 99709, + 99788, + 99829, + 99830, + 99830, + 99831 + ] + }, + { + "Name": "GlobalSolarRadiation", + "Values": [ + 0, + 0, + 0, + 22, + 101, + 141, + 251, + 523, + 739, + 851, + 903, + 896, + 835, + 680, + 501, + 357, + 208, + 71, + 4, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "DiffuseSolarRadiation", + "Values": [ + 0, + 0, + 0, + 22, + 83, + 123, + 200, + 259, + 205, + 154, + 177, + 211, + 193, + 230, + 243, + 179, + 120, + 49, + 4, + 0, + 0, + 0, + 0, + 0 + ] + }, + { + "Name": "WindDirection", + "Values": [ + 140, + 138, + 159, + 198, + 177, + 195, + 168, + 84, + 263, + 204, + 23, + 77, + 315, + 164, + 277, + 95, + 27, + 292, + 97, + 160, + 79, + 147, + 74, + 40 + ] + }, + { + "Name": "WindSpeed", + "Values": [ + 1, + 1, + 1, + 1, + 0.8, + 0.5, + 1, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0.8, + 1.5, + 2.3, + 3.1, + 3.8, + 4.6, + 4.6, + 4.6, + 4.6, + 4.6 + ] + }, + { + "Name": "CloudCover", + "Values": [ + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0, + 0 + ] + } + ], + "Name": "Budapest.Met.Center ANN CLG 0% CONDS DB=\u003EGRad", + "Description": "Cooling Design Day automated :) \n *calculated from weather data as day with max temp and then radation replaced from max global radation day and cloud cover removed", + "Year": 2018, + "Month": 7, + "Day": 1 + } + ], + "SurfaceOutputSpecs": [ + { + "_type": "SAM.Core.Tas.SurfaceOutputSpec,SAM.Core.Tas", + "Name": "Tas.Simulate", + "Guid": "a451af96-7a3f-4f22-8c87-69bc65c5b44a", + "ApertureData": true, + "Condensation": false, + "Convection": false, + "SolarGain": true, + "Conduction": true, + "LongWave": false, + "Temperature": true + } + ], + "UnmetHours": false, + "Simulate": true, + "Sizing": true, + "UpdateZones": true, + "UseWidths": false, + "AddIZAMs": true, + "RemoveIZAMs": false, + "RemoveMechanicalVentilationGains": false, + "SimulateFrom": 1, + "SimulateTo": 365, + "RemoveExistingTBD": false, + "UpdateWindowPositionType": false + } + }, + "unknown": { + "application.sourceRevision": "this build\u0027s InformationalVersion \u00271.0.0\u0027 has no source revision after \u0027\u002B\u0027 (a local developer build); the component SHA-256 values identify the binaries", + "application.components[SAM.Analytical.Tas].informationalVersion": "the assembly carries no InformationalVersion", + "weather.file": "the weather is the model\u0027s embedded WeatherData, not a file; contentSha256 identifies it" + } + } +} \ No newline at end of file diff --git a/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/message-box.txt b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/message-box.txt new file mode 100644 index 00000000..06d75154 --- /dev/null +++ b/documentation/evidence/s05-preflight-20261019/c7-tas-refusal-energy-simulation/message-box.txt @@ -0,0 +1,12 @@ +Title: Simulation failed +Simulation failed: the TAS simulation did not complete, so this run produced no results. + +TAS return code: 0 +TAS error log: C:\TasOut\s05pre\runs\c7-tas-refusal-energy-simulation\out\box_error_log.txt +Error: Simulating Model: TAS refused the simulation: TBDDocument.simulate returned 0. TAS return code: 0; TAS error log: C:\TasOut\s05pre\runs\c7-tas-refusal-energy-simulation\out\box_error_log.txt. (TAS-SIM-001) +Error: Simulating Model: TAS wrote an error log for this run: C:\TasOut\s05pre\runs\c7-tas-refusal-energy-simulation\out\box_error_log.txt (TAS return code: 0) +Error accessing the TSD file for writing (TAS-SIM-001) +Error: Simulating Model: The run produced no output file: C:\TasOut\s05pre\runs\c7-tas-refusal-energy-simulation\out\box.tsd TAS return code: 0; TAS error log: C:\TasOut\s05pre\runs\c7-tas-refusal-energy-simulation\out\box_error_log.txt. (TAS-SIM-001) + +The open model was not changed. + Time elapsed: 0min16sec