Skip to content

ci(windows): try running the notebook test suite - #568

Draft
leonardocarreras wants to merge 6 commits into
sogno-platform:masterfrom
leonardocarreras:ci/windows-python-tests
Draft

ci(windows): try running the notebook test suite#568
leonardocarreras wants to merge 6 commits into
sogno-platform:masterfrom
leonardocarreras:ci/windows-python-tests

Conversation

@leonardocarreras

Copy link
Copy Markdown
Contributor

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

@leonardocarreras
leonardocarreras force-pushed the ci/windows-python-tests branch from d7ed2ae to d0d6fa7 Compare July 12, 2026 18:11
@codecov

codecov Bot commented Jul 12, 2026

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 47.05882% with 9 lines in your changes missing coverage. Please review.
✅ Project coverage is 69.18%. Comparing base (338b0b8) to head (f0aa074).
⚠️ Report is 3 commits behind head on master.

Files with missing lines Patch % Lines
examples/conftest.py 47.05% 8 Missing and 1 partial ⚠️
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.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@leonardocarreras leonardocarreras self-assigned this Jul 21, 2026
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>
@leonardocarreras
leonardocarreras force-pushed the ci/windows-python-tests branch from f0aa074 to 11bd1ce Compare July 23, 2026 20:48

@github-actions github-actions Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

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.381 immediately 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-2 after 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-5 and assert 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 (...) < epsilon for 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-4 after 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.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant