Skip to content

Bump libhegel to 0.44.0: nondeterminism handling and engine-owned final replays - #25

Merged
esauro merged 1 commit into
mainfrom
libhegel-0.44.0
Sep 28, 2026
Merged

esauro merged 1 commit into
mainfrom
libhegel-0.44.0

Conversation

@esauro

@esauro esauro commented Sep 28, 2026

Copy link
Copy Markdown
Contributor

The engine now confirms a nondeterministic failure by replay and reports it with a caveat instead of aborting; Settings.nondeterminismStrictness (and the @HegelTest attribute / HEGEL_NONDETERMINISM_STRICTNESS) selects QUIET, WARN or the old ERROR abort.

The engine also runs each reported failure's final replay itself, so the runner stops replaying blobs and builds every Failure from the case the engine stamped via hegel_test_case_should_capture. reproduceFailure now goes through hegel_run_start_blob, which replays until a replay fails.

Failure.reproduceBlob() becomes Optional, exception() is always present, and flaky() is replaced by nondeterministic()/caveat(). Libhegel gains the new capture, caveat, blob-run and strictness functions; the retired RUN_STATUS_FAILED_NONDETERMINISTIC constant is removed.

…al replays

The engine now confirms a nondeterministic failure by replay and reports it
with a caveat instead of aborting; Settings.nondeterminismStrictness (and the
@HegelTest attribute / HEGEL_NONDETERMINISM_STRICTNESS) selects QUIET, WARN or
the old ERROR abort.

The engine also runs each reported failure's final replay itself, so the
runner stops replaying blobs and builds every Failure from the case the engine
stamped via hegel_test_case_should_capture. reproduceFailure now goes through
hegel_run_start_blob, which replays until a replay fails.

Failure.reproduceBlob() becomes Optional, exception() is always present, and
flaky() is replaced by nondeterministic()/caveat(). Libhegel gains the new
capture, caveat, blob-run and strictness functions; the retired
RUN_STATUS_FAILED_NONDETERMINISTIC constant is removed.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
@esauro
esauro merged commit 2ded825 into main Sep 28, 2026
10 checks passed
@esauro
esauro deleted the libhegel-0.44.0 branch September 28, 2026 12:30
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.

1 participant