ci(windows): try running the notebook test suite - #568
Conversation
d7ed2ae to
d0d6fa7
Compare
Codecov Report❌ Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## master #568 +/- ##
==========================================
- Coverage 69.72% 69.18% -0.54%
==========================================
Files 473 473
Lines 28716 28720 +4
Branches 14906 14905 -1
==========================================
- Hits 20021 19871 -150
- Misses 8694 8786 +92
- Partials 1 63 +62 ☔ View full report in Codecov by Harness. 🚀 New features to boost your workflow:
|
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
… Release-subdir binary paths Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
…ws notebook tests Signed-off-by: Leonardo Carreras <leonardo.carreras@eonerc.rwth-aachen.de>
f0aa074 to
11bd1ce
Compare
There was a problem hiding this comment.
DPsim LLM review
No issues surfaced by the automated passes.
How this review was produced
13 specialized finder passes raised 23 findings over the diff and the full changed sources. After de-duplication, 23 were re-checked against the current file and the base-class / interface headers it inherits (code as truth), escalating survivors to a stronger model: 23 refuted as unsupported, 0 kept (0 tentative).
Refuted by verification:
- Use pathlib.Path for filesystem operations in uses_bash_magic (examples/conftest.py): The helper already uses cell.get(...).splitlines() on the in-memory notebook source; no filesystem operation is involved.
- Fix typo in function name (examples/conftest.py): The function name and its docstring/comment text are not mismatched in the file; there is no typo to fix here.
- Fix typo in variable name (examples/conftest.py): The variable is spelled first_lines in both its assignment and use, so the file contains no typo.
- Add numerical assertion for PCM 4th order validation (examples/Notebooks/Circuits/Compare_DP_SMIB_ReducedOrderSG_VBR_PCM_LoadStep.ipynb): The 6th-order PCM cell already includes
assert rmse < 0.381immediately after printing the RMSE. - Add numerical assertions for TPM vs VBR validation (examples/Notebooks/Circuits/Compare_DP_SMIB_ReducedOrderSG_VBR_TPM_LoadStep.ipynb): The notebook already has an Assertions cell with six explicit assert statements on rmse_list.
- Add numerical assertion for EMT DCIM vs VBR validation (examples/Notebooks/Circuits/Compare_EMT_SynGenDQ7odTrapez_EMT_SynGenVBR_SMIB_Fault.ipynb): The assertion cell already contains explicit assert statements at lines 454 and 460, not just printed RMSE values.
- Add numerical assertion for operational vs fundamental parameters validation (examples/Notebooks/Circuits/Compare_EMT_SynGenDQ7odTrapez_OperationalParams_Vs_FundamentalParams_SMIB_Fault.ipynb): The notebook already contains an explicit assert at line 152 comparing the normalized max difference to 1e-3.
- Add numerical assertion for operational vs fundamental parameters validation (examples/Notebooks/Circuits/Compare_EMT_SynGenVBR_OperationalParams_Vs_FundamentalParams_SMIB_Fault.ipynb): The notebook already contains an assert at line 152 comparing the normalized max difference to 1e-3.
- Add numerical assertion for EMT vs DP WSCC 9-bus validation (examples/Notebooks/Circuits/Compare_EMT_WSCC_9bus_IdealCS_DP_WSCC_9bus_IdealVS.ipynb): The notebook already has an assertion in the target cell:
assert rmse_rel[name] < 1e-2after printing the RMSE. - Add numerical assertion for EMT vs DP WSCC 9-bus validation (examples/Notebooks/Circuits/Compare_EMT_WSCC_9bus_IdealVS_DP_WSCC_9bus_IdealVS.ipynb): The assertion cell already computes RMSE and enforces thresholds with
assert rmse_rel[name] < 1e-5andassert rmse_rel[name] < 1e-2. - Add numerical assertions for DP vs EMT validation across all SG orders (examples/Notebooks/Circuits/DP_EMT_Validation_ReducedOrderSG_VBR_Load_Fault.ipynb): The notebook already computes RMSEs in plot_etorque/plot_elecVar and asserts them in the three Assert cells (e.g. lines 368-375, 472-479, 576-583), so the claim that correctness is only visual is contradicted by the file.
- Add numerical assertions for DP vs EMT validation with controllers (examples/Notebooks/Circuits/DP_EMT_Validation_ReducedOrderSG_VBR_SMIB_Fault_withControllers.ipynb): The notebook already computes RMSE in the plotting helpers and the assert cells check those RMSE variables against a tolerance (e.g. lines 174-195 and 440-449), so this is not a missing numerical assertion.
- Add numerical assertion for EMT Ph1 generalized SSN validation (examples/Notebooks/Circuits/EMT_Ph1_generalizedSSN.ipynb): The notebook already contains explicit assertions with
assert (...) < epsilonfor all comparisons in the Assert cell. - Add numerical assertion for EMT Ph3 RC vs SSN validation (examples/Notebooks/Circuits/EMT_Ph3_compare_RC_SSN.ipynb): The notebook already contains explicit assert statements comparing RC and SSN values against epsilon.
- Add numerical assertion for EMT DCIM vs VBR with governor (examples/Notebooks/Components/Syngen_9Order_DCIM_VBR_Governor_Exciter.ipynb): The assertion cell already contains
assert rmse < 4e-4after printing the RMSE.
Automated, non-blocking review. May be wrong. Models: find mistral-small-4-119b-2603, gpt-oss-120b → verify gpt-5.4-mini → final gpt-5.5.
Experiment: builds dpsimpy + tests (cxx examples) on Windows, then runs the same pytest/nbconvert suite over examples/Notebooks/ that Linux CI runs, to see what actually breaks.
Expected failures