Skip to content

Commit 5f0259d

Browse files
authored
Release 0.73 evidence and publication readiness (#214)
Merge the exact-SHA qualified Release 0.73 candidate, immutable measurement evidence links, honest findings, and tooling-only post-tag proof repair. The annotated v0.73.0 tag remains on the measured runtime-equivalent product commit.
2 parents 1f63494 + 01ed485 commit 5f0259d

286 files changed

Lines changed: 88518 additions & 404 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

‎.config/nextest.toml‎

Lines changed: 4 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,10 @@ slow-timeout = { period = "120s", terminate-after = 3 }
1919
[[profile.ci.overrides]]
2020
filter = "test(checked_in_registry_closes_current_production_inventory)"
2121
threads-required = "num-test-threads"
22-
slow-timeout = { period = "120s", terminate-after = 2 }
22+
# A full production-owner inventory scan takes about five minutes on the
23+
# supported Windows release workstation. Keep the override test-specific so
24+
# every other CI test retains the global two-minute fail-closed timeout.
25+
slow-timeout = { period = "120s", terminate-after = 5 }
2326

2427
[[profile.ci.overrides]]
2528
filter = """

‎.gitattributes‎

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,3 +20,8 @@ docs/testing/perf-artifacts/0.71/**/manifest.json text eol=lf
2020
docs/testing/perf-artifacts/0.71/**/SHA256SUMS text eol=lf
2121
docs/testing/perf-artifacts/0.71/**/verify.ps1 text eol=lf
2222
docs/testing/perf-artifacts/0.71/**/redaction-receipt.json text eol=lf
23+
docs/testing/perf-artifacts/0.73/**/*.zip -text
24+
docs/testing/perf-artifacts/0.73/**/README.md text eol=lf
25+
docs/testing/perf-artifacts/0.73/**/manifest.json text eol=lf
26+
docs/testing/perf-artifacts/0.73/**/SHA256SUMS text eol=lf
27+
docs/testing/perf-artifacts/0.73/**/verify.ps1 text eol=lf

‎.github/workflows/ci.yml‎

Lines changed: 60 additions & 28 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,16 @@ on:
2020
required: false
2121
default: false
2222
type: boolean
23+
run_redis_compat_release_proof:
24+
description: "Run only the Redis release proof against an explicit immutable candidate SHA"
25+
required: false
26+
default: false
27+
type: boolean
28+
release_proof_candidate_sha:
29+
description: "Full candidate SHA used only by the focused Redis release-proof repair lane"
30+
required: false
31+
default: ""
32+
type: string
2333
run_management_candidate_soak_072:
2434
description: "Run the exact six-hour 0.72 Management Center candidate soak"
2535
required: false
@@ -152,7 +162,7 @@ jobs:
152162
uses: actions/checkout@v5
153163

154164
- name: Install Rust
155-
uses: dtolnay/rust-toolchain@stable
165+
uses: dtolnay/rust-toolchain@1.94.0
156166

157167
- name: Validate topology through fail-closed watchdog
158168
run: >-
@@ -186,8 +196,8 @@ jobs:
186196
with:
187197
fetch-depth: 0
188198

189-
- name: Install Rust
190-
uses: dtolnay/rust-toolchain@stable
199+
- name: Install pinned Rust 1.94.0
200+
uses: dtolnay/rust-toolchain@1.94.0
191201

192202
- name: Generate and close the ownership inventory
193203
timeout-minutes: 15
@@ -260,7 +270,7 @@ jobs:
260270
261271
- name: Install reviewed cargo-semver-checks
262272
timeout-minutes: 30
263-
run: cargo install cargo-semver-checks --version 0.49.0 --locked
273+
run: cargo install cargo-semver-checks --version 0.50.0 --locked
264274

265275
- name: Validate every publishable package against v0.70.0
266276
timeout-minutes: 180
@@ -325,7 +335,7 @@ jobs:
325335
uses: actions/checkout@v5
326336

327337
- name: Install Rust
328-
uses: dtolnay/rust-toolchain@stable
338+
uses: dtolnay/rust-toolchain@1.94.0
329339

330340
- name: Cache Rust dependencies
331341
uses: Swatinem/rust-cache@v2
@@ -391,7 +401,7 @@ jobs:
391401
fetch-depth: 0
392402

393403
- name: Install Rust
394-
uses: dtolnay/rust-toolchain@stable
404+
uses: dtolnay/rust-toolchain@1.94.0
395405

396406
- name: Cache Rust dependencies
397407
uses: Swatinem/rust-cache@v2
@@ -505,7 +515,7 @@ jobs:
505515
uses: actions/checkout@v5
506516

507517
- name: Install Rust
508-
uses: dtolnay/rust-toolchain@stable
518+
uses: dtolnay/rust-toolchain@1.94.0
509519

510520
- name: Cache Rust dependencies
511521
uses: Swatinem/rust-cache@v2
@@ -562,7 +572,7 @@ jobs:
562572
fetch-depth: 0
563573

564574
- name: Install Rust
565-
uses: dtolnay/rust-toolchain@stable
575+
uses: dtolnay/rust-toolchain@1.94.0
566576

567577
- name: Materialize fail-loud upstream admission status
568578
run: >-
@@ -620,7 +630,7 @@ jobs:
620630
uses: actions/checkout@v5
621631

622632
- name: Install Rust
623-
uses: dtolnay/rust-toolchain@stable
633+
uses: dtolnay/rust-toolchain@1.94.0
624634
with:
625635
components: rustfmt
626636

@@ -671,8 +681,8 @@ jobs:
671681
with:
672682
fetch-depth: 0
673683

674-
- name: Install Rust
675-
uses: dtolnay/rust-toolchain@stable
684+
- name: Install pinned Rust 1.94.0
685+
uses: dtolnay/rust-toolchain@1.94.0
676686
with:
677687
components: rustfmt, clippy
678688

@@ -759,13 +769,21 @@ jobs:
759769
cargo run -p xtask --locked -- canary-sweep --release 0.71 --tier fast
760770
cargo run -p xtask --locked -- canary-check --release 0.72
761771
cargo run -p xtask --locked -- canary-sweep --release 0.72 --tier fast
772+
cargo run -p xtask --locked -- canary-check --release 0.73
773+
cargo run -p xtask --locked -- canary-sweep --release 0.73 --tier fast
762774
763775
- name: Management Center 0.72 admission contract
764776
run: |
765777
cargo test -p xtask --test management_center_072 --locked
766778
cargo run -p xtask --locked -- management-center-check --release 0.72
767779
cargo run -p xtask --locked -- release-evidence --release 0.72
768780
781+
- name: Release 0.73 performance and evidence contracts
782+
run: |
783+
cargo test -p xtask --test performance_contract_073 --test performance_local_073 --locked
784+
cargo run -p xtask --locked -- performance-contract-check --release 0.73
785+
cargo run -p xtask --locked -- release-evidence --release 0.73
786+
769787
- name: Fuzz corpus regression
770788
run: cargo run -p xtask --locked -- evidence-run --release "$HYDRACACHE_CANDIDATE_RELEASE" --gate fast.fuzz-corpus-regression
771789

@@ -1282,7 +1300,7 @@ jobs:
12821300
uses: actions/checkout@v5
12831301

12841302
- name: Install Rust
1285-
uses: dtolnay/rust-toolchain@stable
1303+
uses: dtolnay/rust-toolchain@1.94.0
12861304

12871305
- name: Cache Rust dependencies
12881306
uses: Swatinem/rust-cache@v2
@@ -1303,14 +1321,28 @@ jobs:
13031321
name: Redis Compatibility Release Proof
13041322
runs-on: ubuntu-latest
13051323
timeout-minutes: 120
1306-
if: github.event_name == 'schedule' || startsWith(github.ref, 'refs/tags/v') || (github.event_name == 'workflow_dispatch' && inputs.run_nightly)
1324+
if: github.event_name == 'schedule' || startsWith(github.ref, 'refs/tags/v') || (github.event_name == 'workflow_dispatch' && (inputs.run_nightly || inputs.run_redis_compat_release_proof))
13071325

13081326
steps:
13091327
- name: Checkout
13101328
uses: actions/checkout@v5
1329+
with:
1330+
fetch-depth: 0
1331+
ref: ${{ github.event_name == 'workflow_dispatch' && inputs.run_redis_compat_release_proof && inputs.release_proof_candidate_sha || github.sha }}
13111332

1312-
- name: Install Rust
1313-
uses: dtolnay/rust-toolchain@stable
1333+
- name: Verify focused release-proof candidate
1334+
if: github.event_name == 'workflow_dispatch' && inputs.run_redis_compat_release_proof
1335+
shell: bash
1336+
run: |
1337+
set -euo pipefail
1338+
candidate='${{ inputs.release_proof_candidate_sha }}'
1339+
test "$candidate" != ""
1340+
test "${#candidate}" -eq 40
1341+
test "$(git rev-parse HEAD)" = "$candidate"
1342+
git diff --exit-code
1343+
1344+
- name: Install pinned Rust 1.94.0
1345+
uses: dtolnay/rust-toolchain@1.94.0
13141346
with:
13151347
components: rustfmt, clippy
13161348

@@ -1367,7 +1399,7 @@ jobs:
13671399
uses: actions/checkout@v5
13681400

13691401
- name: Install Rust
1370-
uses: dtolnay/rust-toolchain@stable
1402+
uses: dtolnay/rust-toolchain@1.94.0
13711403

13721404
- name: Cache Rust dependencies
13731405
uses: Swatinem/rust-cache@v2
@@ -1462,7 +1494,7 @@ jobs:
14621494
fetch-depth: 0
14631495

14641496
- name: Install Rust
1465-
uses: dtolnay/rust-toolchain@stable
1497+
uses: dtolnay/rust-toolchain@1.94.0
14661498

14671499
- name: Verify shipped v0.71.0 provenance
14681500
run: |
@@ -1496,7 +1528,7 @@ jobs:
14961528
fetch-depth: 0
14971529

14981530
- name: Install Rust
1499-
uses: dtolnay/rust-toolchain@stable
1531+
uses: dtolnay/rust-toolchain@1.94.0
15001532

15011533
- name: Prove exact-candidate HC1 and HC2 coexistence
15021534
run: cargo run -p xtask --locked -- evidence-run --release 0.72 --gate tool.hydracache-server.management-hc1-hc2-coexistence-072
@@ -1530,7 +1562,7 @@ jobs:
15301562
fetch-depth: 0
15311563

15321564
- name: Install Rust
1533-
uses: dtolnay/rust-toolchain@stable
1565+
uses: dtolnay/rust-toolchain@1.94.0
15341566

15351567
- name: Prove exact-candidate HC1 and HC2 coexistence
15361568
run: cargo run -p xtask --locked -- evidence-run --release 0.72 --gate tool.hydracache-server.management-hc1-hc2-coexistence-072
@@ -1569,7 +1601,7 @@ jobs:
15691601
uses: actions/checkout@v5
15701602

15711603
- name: Install Rust
1572-
uses: dtolnay/rust-toolchain@stable
1604+
uses: dtolnay/rust-toolchain@1.94.0
15731605

15741606
- name: Cache Rust dependencies
15751607
uses: Swatinem/rust-cache@v2
@@ -1622,7 +1654,7 @@ jobs:
16221654
fetch-depth: 0
16231655

16241656
- name: Install Rust
1625-
uses: dtolnay/rust-toolchain@stable
1657+
uses: dtolnay/rust-toolchain@1.94.0
16261658

16271659
- name: Cache Rust dependencies
16281660
uses: Swatinem/rust-cache@v2
@@ -1663,7 +1695,7 @@ jobs:
16631695
fetch-depth: 0
16641696

16651697
- name: Install Rust
1666-
uses: dtolnay/rust-toolchain@stable
1698+
uses: dtolnay/rust-toolchain@1.94.0
16671699

16681700
- name: Install Go
16691701
uses: actions/setup-go@v6
@@ -2632,7 +2664,7 @@ jobs:
26322664
uses: actions/checkout@v5
26332665

26342666
- name: Install Rust
2635-
uses: dtolnay/rust-toolchain@stable
2667+
uses: dtolnay/rust-toolchain@1.94.0
26362668

26372669
- name: Cache Rust dependencies
26382670
uses: Swatinem/rust-cache@v2
@@ -2657,7 +2689,7 @@ jobs:
26572689
uses: actions/checkout@v5
26582690

26592691
- name: Install Rust
2660-
uses: dtolnay/rust-toolchain@stable
2692+
uses: dtolnay/rust-toolchain@1.94.0
26612693

26622694
- name: Cache Rust dependencies
26632695
uses: Swatinem/rust-cache@v2
@@ -2778,7 +2810,7 @@ jobs:
27782810
uses: actions/checkout@v5
27792811

27802812
- name: Install Rust
2781-
uses: dtolnay/rust-toolchain@stable
2813+
uses: dtolnay/rust-toolchain@1.94.0
27822814

27832815
- name: Cache Rust dependencies
27842816
uses: Swatinem/rust-cache@v2
@@ -2918,7 +2950,7 @@ jobs:
29182950
fetch-depth: 0
29192951

29202952
- name: Install stable Rust
2921-
uses: dtolnay/rust-toolchain@stable
2953+
uses: dtolnay/rust-toolchain@1.94.0
29222954

29232955
- name: Install pinned TSan nightly
29242956
timeout-minutes: 15
@@ -3006,7 +3038,7 @@ jobs:
30063038
fetch-depth: 0
30073039

30083040
- name: Install Rust
3009-
uses: dtolnay/rust-toolchain@stable
3041+
uses: dtolnay/rust-toolchain@1.94.0
30103042
with:
30113043
components: llvm-tools-preview
30123044

@@ -3099,7 +3131,7 @@ jobs:
30993131
fetch-depth: 0
31003132

31013133
- name: Install Rust
3102-
uses: dtolnay/rust-toolchain@stable
3134+
uses: dtolnay/rust-toolchain@1.94.0
31033135

31043136
- name: Cache Rust dependencies
31053137
uses: Swatinem/rust-cache@v2

0 commit comments

Comments
 (0)