ci: proptests extra automation#6952
Conversation
|
@wileyj about |
no concerns at all - this is how it's done normally, and this PR is targeting |
|
@federico-stacks there is something to consider with 063896f do any approvals count here? you may want to double-check the approvals are from known teams/users. else, i think any approvals may count (think of a random users "approving" a PR without write access). |
Yes, they do. It’s probably not a big issue in this case since the workflow only runs additional tests, but I’ve tightened the check following your suggestion (looking for write+ permissions). crc: d969dc2 |
|
just changed the tagging approach from |
wileyj
left a comment
There was a problem hiding this comment.
outside of failing test, i think my comments are resolved (but please check @federico-stacks ).
once tests are passed and comments resolved (likely no action), i'll approve
The failing test was due to a job timeout. Re-run and it passed |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## develop #6952 +/- ##
============================================
+ Coverage 60.61% 84.98% +24.36%
============================================
Files 412 412
Lines 219362 219518 +156
Branches 338 338
============================================
+ Hits 132974 186565 +53591
+ Misses 86388 32953 -53435 see 303 files with indirect coverage changes Continue to review full report in Codecov by Sentry.
🚀 New features to boost your workflow:
|
|
This pull request has been automatically locked since there has not been any recent activity after it was closed. Please open a new issue for related bugs. |
Description
This PR introduces a new workflow, proptest-extra-tests, triggered on the PR approval event.
The purpose of this workflow is to run newly introduced proptest tests with an increased sample size (
PROPTEST_CASES= 2500) as an additional validation step. This execution happens only after the PR introducing the tests has been approved and is ready to merge.New tests are detected by comparing the output of cargo nextest list between the
HEADandBASEbranches. Any proptest tests present inHEADbut not inBASEare executed with the extended configuration.Applicable issues
Additional info (benefits, drawbacks, caveats)
On Approval execution
Since this workflow is triggered for any PR approval, safeguards are in place to ensure the expensive job runs only when necessary. The workflow runs only if all of the following conditions are met:
develop, can be expanded if we need it)#[tag(t_prop)])Execution Optimizations
To reduce runtime and resource usage, the following optimizations are applied once gating conditions pass:
HEADbranch:testenvBASEbranchHow to Activate This Workflow
Run New Proptest Testsjob as a required Status Check in branch protection rules (this ensures the job must pass before merging).Checklist
docs/property-testing.md)rpc/openapi.yamlfor RPC endpoints,event-dispatcher.mdfor new events)clarity-benchmarkingrepo