Skip to content

CI: time proofs and skip long-running ones#206

Merged
ahelwer merged 1 commit into
tlaplus:masterfrom
ahelwer:ci-time-proofs
May 14, 2026
Merged

CI: time proofs and skip long-running ones#206
ahelwer merged 1 commit into
tlaplus:masterfrom
ahelwer:ci-time-proofs

Conversation

@ahelwer
Copy link
Copy Markdown
Collaborator

@ahelwer ahelwer commented Apr 20, 2026

No description provided.

@ahelwer ahelwer force-pushed the ci-time-proofs branch 4 times, most recently from ca72ad6 to 7c765b5 Compare April 20, 2026 19:46
@ahelwer ahelwer changed the title CI: record proof runtime CI: only run proofs on push to master Apr 20, 2026
@lemmy
Copy link
Copy Markdown
Member

lemmy commented May 1, 2026

What's the rational/goal of this PR?

@ahelwer
Copy link
Copy Markdown
Collaborator Author

ahelwer commented May 1, 2026

Basically make the CI take less time for PRs, but PRs happen relatively rarely so it is perhaps not worth it.

@lemmy
Copy link
Copy Markdown
Member

lemmy commented May 1, 2026

TLAPS-related PRs are even rarer but do occur occasionally (#211). It would be good if TLAPS could be conditionally activated, or triggered manually.

@ahelwer
Copy link
Copy Markdown
Collaborator Author

ahelwer commented May 1, 2026

Hmmm, that would be interesting. Only check the proofs on paths touched by the PR, and then check all proofs on push to master (and also tools or TLAPM build).

@lemmy lemmy force-pushed the master branch 3 times, most recently from 15d356c to 8f94d8a Compare May 8, 2026 23:00
@ahelwer ahelwer changed the title CI: only run proofs on push to master CI: time proofs and skip long-running ones May 14, 2026
@ahelwer
Copy link
Copy Markdown
Collaborator Author

ahelwer commented May 14, 2026

@lemmy I changed this PR to skip specific long-running proofs by name. Are there any other notably long-running proofs we should skip? If there are a large enough number we can change the approach to using the runtime field; jq supports parsing this with the strftime("HH:MM:SS") function.

@lemmy
Copy link
Copy Markdown
Member

lemmy commented May 14, 2026

specifications/tcp/tcp_proof.tla takes too long to run in CI, so I suggest skipping it by name.

More generally, it is not clear to me what the runtime field is measured against. Is it based on a local machine, GitHub CI, or some specific hardware configuration?

@ahelwer
Copy link
Copy Markdown
Collaborator Author

ahelwer commented May 14, 2026

It's a very unscientific measurement largely intended to convey the rough order of magnitude of time required to check a proof on average consumer computing hardware (CPU made after 2014 or so, 8 GB+ of RAM). I just think it's nice to know whether I should expect a proof to run in five minutes, fifty minutes, or five hours. That being said if we don't find it that useful it can just be removed.

Disable some proofs due to long checking time

Signed-off-by: Andrew Helwer <ahelwer@pm.me>
@ahelwer ahelwer merged commit 32a32c7 into tlaplus:master May 14, 2026
7 checks passed
@ahelwer ahelwer deleted the ci-time-proofs branch May 14, 2026 20:14
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Development

Successfully merging this pull request may close these issues.

2 participants