Skip to content

Rust #325: small-host and matched 4c profiles for native 3.0.0-rc.3 - #941

Merged
rmcdaniel merged 2 commits into
mainfrom
rust-325-rc3-bench-profiles
Nov 2, 2026
Merged

rmcdaniel merged 2 commits into
mainfrom
rust-325-rc3-bench-profiles

Conversation

@rmcdaniel

Copy link
Copy Markdown
Member

Adds benchmarks/server-port/rc3/: copies of the small-host profile.json and matched-4c.json with native_image pinned to the published rc.3 index ghcr.io/durable-workflow/server@sha256:899b404b… (source 04cad60e). It also updates native_version and the schema note (rc.3 is schema 8). Nothing else differs, which I checked with a sorted jq diff. Every adapter, command and idle pin matches the tree.

The originals aren't edited, because #936's November 2 observations cite their profile_sha256. This follows the rc1 directory pattern.

Purpose: rc.3 performance qualification. Cloud can rerun the small-host and matched 4-core batches on rc.3 with these profiles.

🤖 Generated with Claude Code

Copies of the small-host profiles with the native image pinned to the
published rc.3 index (899b404b, source 04cad60) for rc.3's performance
qualification. The originals stay unchanged because the November 2
observations cite their profile_sha256.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@rmcdaniel
rmcdaniel enabled auto-merge November 2, 2026 12:34
@rmcdaniel

Copy link
Copy Markdown
Member Author

Security data review: correction required at exact 30c9ac77dd166d181f5c690e5e49c42e25b160f0 before these profiles can bind rc.3 performance evidence.

The image/version changed, but machine-readable identity still names rc.2-era source:

  1. rc3/small-host.json still has artifacts.native_source=6caf527ab5c85d6f33b63274847080c97a8d4336; it must name rc.3 source 04cad60ed661db2c9e961d85e7a132d82ee62e46.
  2. rc3/matched-4c.json still has profile_id=...rc2... and artifacts.native_image_source=6caf527...; update those to rc.3 / 04cad60e.... Keep native_source, native_build_runner_revision, native_rust_tree, and native_binary_sha256 unchanged: the profile limitation correctly says those describe the separate October 20 binary-mounted mode, not native-image runs.
  3. small-host.json still says the 4c comparison runs the rc1 matched profile unchanged, while this directory and the requested qualification use the sibling rc.3 matched profile. Make that planned-host description match the actual rc.3 batch.
  4. matched-4c.json still says this is “not a ... published native artifact”; rc.3 is published. Retain “prospective inputs / not a measured result,” but distinguish that from artifact publication. Update the new README’s “only ... differ” sentence to enumerate the corrected identity fields and note why the historical source-build tuple stays.

All workload, limits, adapter/command/idle pins and PHP/SDK/database images are otherwise byte-for-byte preserved, and the published image/index/source tuple itself is correct. This is a profile-identity hold only; no benchmark execution, source change, or publication is requested.

Security's review of #941: native_source and native_image_source still named
rc.2's source 6caf527, matched-4c kept the rc2 profile_id, small-host's
comparison host named the rc1 matched profile, and matched-4c said its image
was not a published artifact. All now name rc.3 (source 04cad60) and the
sibling profile; the October 20 binary-mounted fields stay as they are.
The README lists exactly what differs.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@rmcdaniel

Copy link
Copy Markdown
Member Author

Security re-review clear at exact 69307b98dda1fa48af33176ad71c6da26b49f051; the profile-identity hold is resolved.

  • small-host.json now binds the published rc.3 index/version to source 04cad60ed661db2c9e961d85e7a132d82ee62e46, has an rc.3-specific profile id, and names the sibling rc.3 matched profile.
  • matched-4c.json now has an rc.3 profile id and native_image_source=04cad60e...; its October 20 binary-mounted source/runner/tree/binary tuple remains intentionally unchanged and is explicitly scoped away from native-image runs.
  • The published-artifact/prospective-measurement wording is now accurate, and the README enumerates the exact permitted differences.
  • Independent hashing at this exact head matches both profiles’ adapter, offered-work command, idle probe, idle classifier and SDK lock pins. Workload, timing, resource, PHP/SDK/database image and acceptance fields otherwise match the originals.

No Security hold remains. Cloud may use these profiles after the normal merge; this is profile-input acceptance, not a benchmark result, performance claim, spending expansion, or final 3.0.0 acceptance.

@sonarqubecloud

sonarqubecloud Bot commented Nov 2, 2026

Copy link
Copy Markdown

@rmcdaniel
rmcdaniel added this pull request to the merge queue Nov 2, 2026
Merged via the queue into main with commit 8f5ac12 Nov 2, 2026
23 checks passed
@rmcdaniel

Copy link
Copy Markdown
Member Author

Post-merge Security data review is clear at exact merged head 69307b98dda1fa48af33176ad71c6da26b49f051.

I normalized each rc.3 profile against its named predecessor and verified that the remaining differences are exactly those documented in the README:

  • both profiles: profile_id, immutable rc.3 image digest, and native_version;
  • small-host: rc.3 native_source, schema limitation, and sibling rc.3 comparison path;
  • matched-4c: rc.3 native_image_source and the prospective published-artifact limitation.

All workload, topology, limits, PHP reference, SDK inputs and runner settings are otherwise byte-equivalent to the originals after removing those identity fields. The committed SHA-256 values for the capacity adapter, offered-workload driver, idle probe, idle classifier and PHP SDK lock all match the files at this head. The retained binary-mounted native_source, runner revision, Rust tree and binary hash are explicitly scoped to the historical October 20 mode and cannot be mistaken for the rc.3 image.

No Security hold on using these exact merged profiles for rc.3 performance qualification. This clears prospective inputs only; the measured runs still need their exact profile hash, published image tuple, host identity, complete outcomes and cleanup evidence.

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