Skip to content

Sui v1.77.0 Version Bump#27321

Merged
ebmifa merged 1 commit into
mainfrom
ebmifa/sui-v1.77.0-version-bump-20260717030815
Jul 17, 2026
Merged

Sui v1.77.0 Version Bump#27321
ebmifa merged 1 commit into
mainfrom
ebmifa/sui-v1.77.0-version-bump-20260717030815

Conversation

@sui-merge-bot

@sui-merge-bot sui-merge-bot Bot commented Jul 17, 2026

Copy link
Copy Markdown
Contributor

Sui v1.77.0 Version Bump

@sui-merge-bot
sui-merge-bot Bot temporarily deployed to sui-typescript-aws-kms-test-env July 17, 2026 03:08 Inactive
@vercel

vercel Bot commented Jul 17, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
sui-docs Ready Ready Preview, Comment Jul 17, 2026 4:17pm
2 Skipped Deployments
Project Deployment Actions Updated (UTC)
multisig-toolkit Ignored Ignored Preview Jul 17, 2026 4:17pm
sui-kiosk Ignored Ignored Preview Jul 17, 2026 4:17pm

Request Review

@ebmifa
ebmifa enabled auto-merge (squash) July 17, 2026 03:37
ebmifa added a commit that referenced this pull request Jul 17, 2026
#27322)

## Description

`test_auto_fork_recovery_transaction_fork` (added in #27062) fails when
the restarted target validator completes catch-up re-execution before
the fork-injection failpoint is armed — the injection only fires on the
checkpoint-executor path, so once catch-up finishes the fork window is
closed forever and `assert!(forked, ...)` times out after 60s. The
test's own comment documents the bet ("start() returns before the
executor catches up, so the injection lands first"), but the ordering is
not guaranteed: catch-up can run inside `start()`'s internal awaits, and
how much real-thread progress happens there is environment-dependent.
There is also a latent hazard: a fork tripping before
`register_fork_kill_failpoints` is armed would `fatal!`-abort the whole
sim.

Observed on the v1.77.0 version-bump PR (#27321): the `simtest` job
failed twice with the identical signature
([run](https://github.com/MystenLabs/sui/actions/runs/29551659120)) —
same merge commit, same sha-derived `MSIM_TEST_SEED`
(`11397606143398739615`). Full analysis on
[#27062](#27062 (comment)).

**The fix**: arm the fork injection and the kill hooks **before**
restarting the target. The target's new sim node id is unknowable until
`start()` returns, so the closures match by exclusion instead: while the
target is down, snapshot the sim ids of every running node (remaining
validators + fullnodes) — any id outside that set executing transactions
can only be the restarted target (nothing else starts during the test).
`register_fork_kill_failpoints` now takes a resolver closure instead of
a fixed map; the two sibling call sites pass a closure over their
existing maps, behavior unchanged.

## Test plan

All local, on this branch (`cargo simtest -p sui-benchmark`):
- `test_auto_fork_recovery_transaction_fork`: PASS on seeds 1, 2, 3 and
on CI's failing seed `11397606143398739615`
- Siblings using the refactored helper:
`test_auto_fork_recovery_checkpoint_fork` PASS,
`test_split_brain_recovery_via_checkpoint_overrides` PASS

Honest caveat: I could not reproduce the CI failure locally — the
unfixed test passed 10/10 on this 16-core box across seeds (including
CI's exact merge tree + seed) and under CPU saturation. The failure
needs whatever real-thread scheduling conditions CI runners produce; the
fix removes the ordering dependence entirely rather than tuning timings,
so it holds regardless of which environments can currently lose the
race.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-authored-by: Claude Fable 5 <noreply@anthropic.com>
@ebmifa
ebmifa force-pushed the ebmifa/sui-v1.77.0-version-bump-20260717030815 branch from fe0cc11 to 63fc254 Compare July 17, 2026 16:14
@ebmifa
ebmifa temporarily deployed to sui-typescript-aws-kms-test-env July 17, 2026 16:14 — with GitHub Actions Inactive
@ebmifa
ebmifa merged commit 3509ce5 into main Jul 17, 2026
63 checks passed
@ebmifa
ebmifa deleted the ebmifa/sui-v1.77.0-version-bump-20260717030815 branch July 17, 2026 16:42
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