8000 fix: capture the PHREEQC fixtures from the packaged catalogue by rafatahmed · Pull Request #228 · rafatahmed/Flahax · GitHub
[go: up one dir, main page]

Skip to content

fix: capture the PHREEQC fixtures from the packaged catalogue - #228

Merged
rafatahmed merged 1 commit into
mainfrom
fix/phreeqc-capture
Nov 6, 2026
Merged

rafatahmed merged 1 commit into
mainfrom
fix/phreeqc-capture

Conversation

@rafatahmed
Copy link
Copy Markdown
Owner

Summary

 tools/phreeqc_evidence.py CASES
-  'ch_micro':  {'CH - micro': 0.01}            # retired from the catalogue
-  'citrate':   {'Potassium Citrate': 0.02}     # no catalogue product
+  'micro_combi_mix_2': {'Micro Combi Mix 2': 0.01}
 tests/test_product_phreeqc.py
-  historical_catalogue() + patch(chemistry_elements)
+  packaged catalogue, label reconciliation active
  • Product fixtures (9 cases) and phases/mixed_product_phases re-captured with PHREEQC 3.8.6; tests/reference_inventory.json re-pinned (192 files, 9 product cases).
  • The same unpatched, packaged-catalogue setup now applies to test_equilibrium_delivery and test_support_captures.

Evidence

  • Before: PYTHONPATH=src python tools/phreeqc_evidence.py --output <dir> stopped with DeliveryError: product 'CH - micro' is not available.
    After: all 9 cases run (charge error < 1e-12); the golden, inventory and live-replay tests pass; full per-module suite passed apart from test_support_captures, fixed in this PR.
  • Other phases/ cases: inputs and selected outputs are unchanged; I did not re-write them (only their .out/.screen headers differ on re-run).

Merge Danger

Door: two-way (fixtures and tests only; no runtime code changed).

Blast Radius: test fixtures. The citrate PHREEQC case is gone because no packaged product holds citrate, so citrate speciation has no live-reference case until a citrate product joins the catalogue.

Closes #222

The capture cases dosed CH - micro and Potassium Citrate, which the packaged
catalogue no longer holds, so the tool stopped at the first of them and the
golden test hid the mismatch behind a chemistry_elements patch and the frozen
33c5df2 catalogue. Micro Combi Mix 2 replaces CH - micro; the citrate case is
dropped (no catalogue product holds citrate). The product fixtures and the
mixed_product_phases fixture are re-captured with PHREEQC 3.8.6, the inventory
pins are updated, and the golden and capture-orchestration tests now run on the
packaged catalogue with label reconciliation active.

Closes #222
@rafatahmed rafatahmed added the bug Something isn't working label Nov 6, 2026
@rafatahmed rafatahmed self-assigned this Nov 6, 2026
@read-the-docs-community
Copy link
Copy Markdown

Documentation build overview

📚 Flahax | 🛠️ Build #35695776 | 📁 Comparing 3a61766 against latest (f6bbb75)

  🔍 Preview build  

3 files changed
± changelog.html
± developer/verification.html
± models/reference-fixtures.html

@codecov
codecov Bot commented Nov 6, 2026 •
Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 100.00%. Comparing base (f6bbb75) to head (3a61766).
⚠️ Report is 2 commits behind head on main.

Additional details and impacted files
@@            Coverage Diff            @@
##              main      #228   +/-   ##
=========================================
  Coverage   100.00%   100.00%           
=========================================
  Files          114       114           
  Lines        13130     13130           
  Branches      2573      2573           
=========================================
  Hits         13130     13130           
Flag Coverage Δ
unittests 100.00% <ø> (ø)

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ 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.

@rafatahmed
rafatahmed marked this pull request as ready for review November 6, 2026 12:12
@rafatahmed
rafatahmed merged commit 5ed52d6 into main Nov 6, 2026
13 checks passed
@rafatahmed
rafatahmed deleted the fix/phreeqc-capture branch November 6, 2026 12:13
rafatahmed added a commit that referenced this pull request Nov 7, 2026
fix: capture the PHREEQC fixtures from the packaged catalogue
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

bug Something isn't working

Projects

None yet

Development

Successfully merging this pull request may close these issues.

PHREEQC golden fixture: capture tool cannot run on the packaged catalogue; test bypasses label reconciliation

1 participant

0