Skip to content

feat(checks): Filter parameters at space edge in search edge check#3069

Merged
GaetandeCast merged 7 commits into
probabl-ai:mainfrom
GaetandeCast:param_contraint
Jun 22, 2026
Merged

feat(checks): Filter parameters at space edge in search edge check#3069
GaetandeCast merged 7 commits into
probabl-ai:mainfrom
GaetandeCast:param_contraint

Conversation

@GaetandeCast

Copy link
Copy Markdown
Collaborator

So that we don't raise an issue when e.g. the found best parameter is 0 for a parameter that takes values in [0, inf).

Uses scikit-learn's _parameter_constraints to check if the best parameter is at the parameter space edge.

@github-actions

github-actions Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Documentation preview @ 15367bb

@github-actions

github-actions Bot commented Jun 19, 2026

Copy link
Copy Markdown
Contributor

Coverage

Coverage Report for skore/
FileStmtsMissBranchBrPartCoverMissing
skore/src/skore
   __init__.py4122095%118–119
   _config.py58312194%70, 117–118
   exceptions.py44000%4, 15, 19, 23
skore/src/skore/_plugins
   __init__.py12000100% 
   serde.py32080100% 
skore/src/skore/_plugins/hub
   __init__.py920077%15, 20
   exception.py2000100% 
   json.py1012190%16
   metric.py13000100% 
skore/src/skore/_plugins/hub/artifact
   __init__.py0000100% 
   artifact.py23040100% 
   serializer.py27020100% 
   upload.py26040100% 
skore/src/skore/_plugins/hub/artifact/media
   __init__.py5000100% 
   data.py23000100% 
   inspection.py721020886%46–49, 51, 53, 60, 62, 68, 107
   media.py12000100% 
   model.py10000100% 
   performance.py57000100% 
skore/src/skore/_plugins/hub/artifact/pickle
   __init__.py2000100% 
   pickle.py24020100% 
skore/src/skore/_plugins/hub/authentication
   __init__.py0000100% 
   apikey.py7000100% 
   login.py2844285%37, 42–43, 52
   token.py80080100% 
   uri.py6000100% 
skore/src/skore/_plugins/hub/client
   __init__.py0000100% 
   client.py881018388%140, 187–189, 191–192, 194, 196, 198, 230
skore/src/skore/_plugins/hub/project
   __init__.py0000100% 
   project.py138626595%89, 114, 129, 328, 413, 443
skore/src/skore/_plugins/hub/report
   __init__.py3000100% 
   cross_validation_report.py168136299%176
   estimator_report.py16000100% 
   report.py52040100% 
skore/src/skore/_plugins/local
   __init__.py2000100% 
   metadata.py8638196%29, 153–154
   project.py93130198%243
   storage.py4226195%45, 189
skore/src/skore/_plugins/mlflow
   __init__.py5000100% 
   project.py2642662990%47, 49–51, 122–126, 231, 249, 267–268, 373, 481, 483, 499, 501–506, 508–510
   reports.py159634496%129, 174, 211–212, 274, 287
skore/src/skore/_project
   __init__.py0000100% 
   _summary.py117248398%83, 97
   dependencies.py19060100% 
   git.py25040100% 
   login.py1736282%57, 66–67
   plugin.py9000100% 
   project.py60218496%138, 147
   types.py3000100% 
skore/src/skore/_sklearn
   __init__.py8000100% 
   _base.py55210096%48, 165
   compare.py5000100% 
   evaluate.py450260100% 
   feature_names.py260120100% 
   find_ml_task.py610462100% 
   metrics.py3750901100% 
   train_test_split.py17000100% 
   types.py1910094%31
skore/src/skore/_sklearn/_checks
   __init__.py3000100% 
   _utils.py92934390%90, 192, 197–198, 232, 234–235, 243–244
   accessor.py370160100% 
   base.py80526393%156–157, 195, 291–292
   model_checks.py436131361097%75, 444, 448, 528, 554, 611–612, 666–667, 775, 794, 807, 884
   tunable_hyperparameters.py5000100% 
skore/src/skore/_sklearn/_comparison
   __init__.py9000100% 
   inspection_accessor.py25020100% 
   metrics_accessor.py135420497%272–273, 396, 1261
   report.py166568196%512, 585, 667–669
skore/src/skore/_sklearn/_cross_validation
   __init__.py11000100% 
   data_accessor.py40214295%49, 75
   inspection_accessor.py25020100% 
   metrics_accessor.py123316397%215–216, 1214
   report.py222850596%76, 81, 86, 342, 682, 834–836
skore/src/skore/_sklearn/_estimator
   __init__.py11000100% 
   data_accessor.py61128198%65
   inspection_accessor.py4218297%297
   metrics_accessor.py1360240100% 
   report.py3251084796%68, 84, 312, 384, 468, 721, 806, 907–909
skore/src/skore/_sklearn/_plot
   __init__.py3000100% 
   base.py72214197%71–72
   utils.py160376498%254–255, 454
skore/src/skore/_sklearn/_plot/data
   __init__.py2000100% 
   table_report.py187160299%718
skore/src/skore/_sklearn/_plot/inspection
   __init__.py0000100% 
   calibration_curve.py821114886%120–123, 125, 130–131, 234, 237–238, 268
   coefficients.py1810881100% 
   impurity_decrease.py103234398%441, 485
   permutation_importance.py198190199%650
   utils.py320100100% 
skore/src/skore/_sklearn/_plot/metrics
   __init__.py6000100% 
   confusion_matrix.py2000662100% 
   metrics_summary_display.py175174299%315
   precision_recall_curve.py1180321100% 
   prediction_error.py1660542100% 
   roc_curve.py1220342100% 
skore/src/skore/_utils
   __init__.py620066%8, 13
   _accessor.py10620301181%13, 36, 61–65, 68, 70–71, 76, 81, 83, 85, 92–94, 164, 216, 236
   _cache.py37021100% 
   _cache_key.py35522585%22, 24, 51, 59, 68
   _callable.py19080100% 
   _dataframe.py55122198%84
   _environment.py33110296%49
   _fixes.py8020100% 
   _index.py5020100% 
   _measure_time.py10000100% 
   _parallel.py17000100% 
   _patch.py21128842%30, 35–39, 42–43, 46–47, 58, 60
   _progress_bar.py4244090%53–54, 64–65
   _show_versions.py66122198%26
   _skrub.py37040100% 
   _testing.py1281412289%24, 33, 71–72, 94, 193, 202, 213–218, 220
skore/src/skore/_utils/repr
   __init__.py2000100% 
   base.py54040100% 
   data.py1280301100% 
   html_repr.py40000100% 
   markdown.py580220100% 
   rich_repr.py800223100% 
   utils.py20020100% 
TOTAL7358233196015596% 

Tests Skipped Failures Errors Time
2645 3 💤 0 ❌ 0 🔥 8m 39s ⏱️

@auguste-probabl auguste-probabl left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looking good, just a few comments

Comment thread skore/tests/unit/reports/estimator/test_checks.py Outdated
Comment thread skore/src/skore/_sklearn/_checks/model_checks.py
Comment thread skore/src/skore/_sklearn/_checks/_utils.py Outdated
Comment thread skore/src/skore/_sklearn/_checks/_utils.py Outdated
Comment thread skore/src/skore/_sklearn/_checks/_utils.py Outdated
@GaetandeCast GaetandeCast marked this pull request as draft June 22, 2026 13:22
Comment thread skore/src/skore/_sklearn/_checks/model_checks.py
@GaetandeCast GaetandeCast marked this pull request as ready for review June 22, 2026 13:33

@auguste-probabl auguste-probabl left a comment

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

Looks great

@auguste-probabl auguste-probabl added this pull request to the merge queue Jun 22, 2026
@github-merge-queue github-merge-queue Bot removed this pull request from the merge queue due to invalid changes in the merge commit Jun 22, 2026
@GaetandeCast GaetandeCast added this pull request to the merge queue Jun 22, 2026
Merged via the queue into probabl-ai:main with commit a073f61 Jun 22, 2026
65 of 67 checks passed
@GaetandeCast GaetandeCast deleted the param_contraint branch June 22, 2026 16:57
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.

2 participants