Skip to content

GEOPY-2826: Plate match parallel process fails without good error log#384

Merged
domfournier merged 11 commits intorelease/GA_4.8from
GEOPY-2826
Apr 23, 2026
Merged

GEOPY-2826: Plate match parallel process fails without good error log#384
domfournier merged 11 commits intorelease/GA_4.8from
GEOPY-2826

Conversation

@domfournier
Copy link
Copy Markdown
Collaborator

@domfournier domfournier commented Apr 22, 2026

GEOPY-2826 - Plate match parallel process fails without good error log

# Conflicts:
#	environments/py-3.12-linux-64-dev.conda.lock.yml
#	environments/py-3.12-linux-64.conda.lock.yml
#	environments/py-3.12-win-64-dev.conda.lock.yml
#	environments/py-3.12-win-64.conda.lock.yml
#	environments/py-3.13-linux-64-dev.conda.lock.yml
#	environments/py-3.13-linux-64.conda.lock.yml
#	environments/py-3.13-win-64-dev.conda.lock.yml
#	environments/py-3.13-win-64.conda.lock.yml
#	environments/py-3.14-linux-64-dev.conda.lock.yml
#	environments/py-3.14-linux-64.conda.lock.yml
#	environments/py-3.14-win-64-dev.conda.lock.yml
#	environments/py-3.14-win-64.conda.lock.yml
#	py-3.12.conda-lock.yml
#	py-3.13.conda-lock.yml
#	py-3.14.conda-lock.yml
Copilot AI review requested due to automatic review settings April 22, 2026 19:37
@github-actions github-actions Bot changed the title GEOPY-2826 GEOPY-2826: Plate match parallel process fails without good error log Apr 22, 2026
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

This PR updates driver resolution to use a new driver_class_from_dict helper (supporting run_command-based UI JSONs), adjusts plate simulation sweep/match behavior, and refreshes dependency pins/lockfiles for the GA_4.8 release alignment.

Changes:

  • Replace legacy driver lookup (from_input_file) with driver_class_from_dict across runtime entry points and tests.
  • Simplify/remove plate sweep/match UIJson Pydantic models and adjust sweep/match driver logic.
  • Update build/dependency configuration and regenerate conda-lock environments (including new py-3.14 locks).

Reviewed changes

Copilot reviewed 27 out of 28 changed files in this pull request and generated 6 comments.

Show a summary per file
File Description
tests/uijson_test.py Updates UI JSON driver-class resolution to use driver_class_from_dict.
tests/run_tests/driver_joint_pgi_homogeneous_test.py Adjusts test setup to match newer JSON option expectations.
simpeg_drivers/utils/utils.py Introduces driver_class_from_dict / moves driver_class_from_name; updates group-to-driver creation.
simpeg_drivers/plate_simulation/sweep/uijson.py Removes legacy sweep UIJson model.
simpeg_drivers/plate_simulation/sweep/options.py Tightens sweep parameter types and adds legacy workdir handling.
simpeg_drivers/plate_simulation/sweep/driver.py Delegates start() to base implementation and expands group detection logic.
simpeg_drivers/plate_simulation/options.py Switches plate simulation parameter dispatch to driver_class_from_dict.
simpeg_drivers/plate_simulation/match/uijson.py Removes legacy match UIJson model.
simpeg_drivers/plate_simulation/match/driver.py Sets headless matplotlib backend and modifies plate placement/scoring logic.
simpeg_drivers/plate_simulation/driver.py Rehomes driver_class_from_name import to new location.
simpeg_drivers/options.py Sets a default documentation URL in CoreOptions.
simpeg_drivers/driver.py Removes from_input_file and uses driver_class_from_dict in the CLI entry.
pyproject.toml Updates VCS dependency refs to GA_4.8 release branches and tweaks build requirements.
py-3.13.conda-lock.yml Regenerated lock with updated package versions/resolutions.
py-3.12.conda-lock.yml Regenerated lock with updated package versions/resolutions.
environments/py-3.14-win-64.conda.lock.yml Adds new py3.14 Windows lockfile.
environments/py-3.14-win-64-dev.conda.lock.yml Adds new py3.14 Windows dev lockfile.
environments/py-3.14-linux-64.conda.lock.yml Adds new py3.14 Linux lockfile.
environments/py-3.14-linux-64-dev.conda.lock.yml Adds new py3.14 Linux dev lockfile.
environments/py-3.13-*.conda.lock.yml Updates existing py3.13 environment lockfiles.
environments/py-3.12-*.conda.lock.yml Updates existing py3.12 environment lockfiles.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread simpeg_drivers/driver.py
Comment thread simpeg_drivers/utils/utils.py Outdated
Comment thread simpeg_drivers/plate_simulation/sweep/driver.py Outdated
Comment thread simpeg_drivers/plate_simulation/match/driver.py
Comment thread simpeg_drivers/plate_simulation/match/driver.py Outdated
Comment thread tests/run_tests/driver_joint_pgi_homogeneous_test.py Outdated
@codecov
Copy link
Copy Markdown

codecov Bot commented Apr 22, 2026

Codecov Report

❌ Patch coverage is 50.00000% with 3 lines in your changes missing coverage. Please review.
✅ Project coverage is 90.21%. Comparing base (749ec6c) to head (9a960ef).
⚠️ Report is 12 commits behind head on release/GA_4.8.

Files with missing lines Patch % Lines
simpeg_drivers/plate_simulation/match/driver.py 50.00% 1 Missing and 2 partials ⚠️
Additional details and impacted files
@@                Coverage Diff                 @@
##           release/GA_4.8     #384      +/-   ##
==================================================
- Coverage           90.26%   90.21%   -0.05%     
==================================================
  Files                 132      129       -3     
  Lines                6469     6472       +3     
  Branches              814      816       +2     
==================================================
  Hits                 5839     5839              
- Misses                420      421       +1     
- Partials              210      212       +2     
Files with missing lines Coverage Δ
simpeg_drivers/plate_simulation/match/driver.py 84.82% <50.00%> (-0.84%) ⬇️
🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

@domfournier domfournier changed the base branch from release/GA_4.8 to GEOPY-2803 April 22, 2026 22:00
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Base automatically changed from GEOPY-2803 to release/GA_4.8 April 22, 2026 23:15
domfournier and others added 3 commits April 22, 2026 16:27
# Conflicts:
#	environments/py-3.12-linux-64-dev.conda.lock.yml
#	environments/py-3.12-linux-64.conda.lock.yml
#	environments/py-3.12-win-64-dev.conda.lock.yml
#	environments/py-3.12-win-64.conda.lock.yml
#	environments/py-3.13-linux-64-dev.conda.lock.yml
#	environments/py-3.13-linux-64.conda.lock.yml
#	environments/py-3.13-win-64-dev.conda.lock.yml
#	environments/py-3.13-win-64.conda.lock.yml
#	environments/py-3.14-linux-64-dev.conda.lock.yml
#	environments/py-3.14-linux-64.conda.lock.yml
#	environments/py-3.14-win-64-dev.conda.lock.yml
#	environments/py-3.14-win-64.conda.lock.yml
#	py-3.12.conda-lock.yml
#	py-3.13.conda-lock.yml
#	py-3.14.conda-lock.yml
@domfournier domfournier merged commit 54d574b into release/GA_4.8 Apr 23, 2026
17 checks passed
@domfournier domfournier deleted the GEOPY-2826 branch April 23, 2026 22:35
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.

3 participants