Skip to content

chore: bump snsdemo to release-2026-05-27 and update screenshots#7893

Open
yhabib wants to merge 2 commits into
mainfrom
chore/bump-sns-demo
Open

chore: bump snsdemo to release-2026-05-27 and update screenshots#7893
yhabib wants to merge 2 commits into
mainfrom
chore/bump-sns-demo

Conversation

@yhabib
Copy link
Copy Markdown
Contributor

@yhabib yhabib commented May 31, 2026

Motivation

This PR continues from #7892 (the automated "Update snsdemo to release-2026-05-27" PR), which failed CI because four e2e screenshots drifted. Rather than blindly accepting the auto-regenerated images, this PR carries the same snsdemo bump and explicitly commits the updated screenshots, after confirming the diff is expected.

The only visual change across all four screenshots is the Voting Power value (everything else — stake, USD value, layout — is pixel-identical):

Screenshot Voting Power: before → after
neuron-details desktop/mobile 18.75 → 45.00
neurons-table desktop/mobile 22.50 → 29.99

This is not snapshot timing drift. It is caused by the NNS "Mission 70" voting-power formula change in the governance canister, which became active in the IC build bundled by snsdemo between release-2026-05-20 and release-2026-05-27.

Root cause

The snsdemo bump moves a single pin — DFX_IC_COMMIT in bin/versions.bash — which determines every NNS canister WASM snsdemo downloads, including governance:

release-2026-05-20 release-2026-05-27
dfinity/ic commit ddb51a5 (2026-03-12) 14382b5 (2026-05-25)

That range crosses the activation of Mission 70 (is_mission_70_voting_rewards_enabled() flag), which redefines the dissolve-delay bonus in rs/nns/governance/src/neuron/voting_power.rs:

  1. Quadratic (convex) dissolve-delay bonus#9719: dd_bonus = 1 + tdd_bonus = 1 + 2·t² (max bonus 2.0x → 3.0x).
  2. Max dissolve delay reduced 8y → 2y#9688: shrinks the denominator in t = dissolve_delay / max_dissolve_delay, so the same absolute dissolve delay yields a larger t. All neurons clamped to 2y on activation.
  3. Activation switch — #9923 ("Enable Mission 70 voting rewards changes").

The age bonus is unchanged (1 + 0.25·age/4y). The new theoretical cap is 3.0 × 1.25 = 3.75x (was 2.5x), which is why a >2.5x multiplier is now possible.

The new formula reproduces the e2e numbers exactly

Both test neurons have age bonus = 1.0, so the entire shift comes from the dissolve-delay bonus:

Neuron Dissolve delay OLD 1+t (t=dd/8y) NEW 1+2t² (t=dd/2y) Stake OLD VP NEW VP
A 2 years 1.25 3.0 15 ICP 18.75 45.00
B 1 year 1.125 1.5 20 ICP 22.50 30.00 (shown 29.99, rounding)

The multipliers differ per neuron precisely because the convex term amplifies different dissolve delays differently — a formula change, not a global constant.

Changes

  • Bump SNSDEMO_RELEASE from release-2026-05-20 to release-2026-05-27 (same as bot: Update snsdemo to release-2026-05-27 #7892).
  • Update the four e2e screenshots whose Voting Power value changed: neuron-details and neurons-table (desktop + mobile).

Tests

CI should pass with the updated screenshots committed.

Todos

  • Accessibility (a11y) – no impact.
  • Changelog – not needed (test-environment bump).

@yhabib yhabib requested a review from a team as a code owner May 31, 2026 05:31
@zeropath-ai
Copy link
Copy Markdown

zeropath-ai Bot commented May 31, 2026

No security or compliance issues detected. Reviewed everything up to c25c154.

Security Overview
Detected Code Changes
Change Type Relevant files
Configuration changes ► config.json
    Update SNSDEMO_RELEASE date
Other ► frontend/src/tests/e2e/screenshots/neuron-details.spec.ts-desktop-Google-Chrome-linux.png
    Binary file difference
► frontend/src/tests/e2e/screenshots/neuron-details.spec.ts-mobile-Google-Chrome-linux.png
    Binary file difference
► frontend/src/tests/e2e/screenshots/neurons-table.spec.ts-desktop-Google-Chrome-linux.png
    Binary file difference
► frontend/src/tests/e2e/screenshots/neurons-table.spec.ts-mobile-Google-Chrome-linux.png
    Binary file difference

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.

2 participants