Skip to content

ci: publish the benchmark table as a reproducible artifact ( - #145

Merged
shivamlalakiya merged 5 commits into
PhilanthroPy-Project:mainfrom
Mr-Neutr0n:agent/issue-7-ci-publish-the-benchmar
Aug 24, 2026
Merged

ci: publish the benchmark table as a reproducible artifact (#145
shivamlalakiya merged 5 commits into
PhilanthroPy-Project:mainfrom
Mr-Neutr0n:agent/issue-7-ci-publish-the-benchmar

Conversation

@Mr-Neutr0n

Copy link
Copy Markdown
Contributor

Fixes #7

Connected scripts/benchmark_models.py to a committed Linux golden file via a pytest regression test, removed the dead RANDOM_STATE constant, and documented the check; the issue’s separate .github/workflows benchmark job was not added because workflow edits were forbidden.

Local tests pass.


This change was prepared with AI assistance under human direction and review.

…oducible artifact (

Signed-off-by: Mr-Neutr0n <64578610+Mr-Neutr0n@users.noreply.github.com>
@Mr-Neutr0n

Copy link
Copy Markdown
Contributor Author

CI caught the golden-file comparison being too strict: the same commit produced 0.732 vs 0.731 in third decimals across Python versions and macOS, because the metrics come from fitted sklearn models. Replaced the exact string equality with a structural comparison: the non-numeric skeleton must match exactly and every metric must stay within 0.01 of the committed table (45e4ed6). Real drift still fails; build noise no longer does.

@Mr-Neutr0n

Copy link
Copy Markdown
Contributor Author

The 0.01 flat tolerance was still too tight for py3.9/3.10: older sklearn shifts a seed range endpoint by 0.013 (0.752 vs 0.765) while the means stay within 0.001. Split the bands: means within 0.02, range endpoints within 0.05, skeleton still exact (d984740).

@shivamlalakiya
shivamlalakiya merged commit e11323b into PhilanthroPy-Project:main Aug 24, 2026
15 checks passed
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.

ci: publish the benchmark table as a reproducible artifact (nothing runs scripts/benchmark_models.py)

2 participants