Summary

Release Notes for release-2026-06-12_04-52-base (557d7278dcbb0305411c6536645c3a32b4ec64b6) This release is based on changes since release-2026-06-04_04-52-base (b95f4a32b41798de115aac9298b51dd1662f1da5).

Please note that some commits may be excluded from this release if they're not relevant, or not modifying the GuestOS image. Additionally, descriptions of some changes might have been slightly modified to fit the release notes format.

To see a full list of commits added since last release, compare the revisions on GitHub.

Features:

  • 3904a7ddc Core Protocol: Introduce EngineNotAllowed signals (#10432)
  • 0bd02f8f5 Core Protocol: increase max environment variables per canister from 20 to 32 (#10435)
  • abf88f228 Core Protocol: enable canister log memory store feature (#10160)
  • 87697beb5 Core Protocol: Include refund shares in HTTP outcalls payload (#10310)
  • 100573874 Core Protocol: Improve process_batch() phase duration coverage (#10426)
  • f3d81cf45 Core Protocol: Atomic outbound Request enqueuing and Callback registration (#10391)
  • a23ba560c Core Protocol(outcalls): add PATCH to http_request, rejected until rollout (#10378)
  • 78365d79b Core Protocol: state_manager_hot_canisters_count histogram (#10383)
  • 1ec9faa37 Node: hoist dosfstools and mtools out of Dockerfile (#10439)
  • 87cc47eab Node: build mkfs.ext4 (e2fsprogs) from source and use it in ext4_image (#10369)

Bugfixes:

Performance improvements:

  • 3962946c7 Core Protocol: Verify diverging and flexible HTTPS outcalls responses in batches (#10345)

Chores:

Tests:

  • 5ea144cda Core Protocol: Add HTTPS outcalls payload validation benchmark (#10388) Full list of changes (including the ones that are not relevant to GuestOS) can be found on GitHub.

IC-OS Verification

To build and verify the IC-OS GuestOS disk image, after installing curl if necessary (sudo apt install curl), run:

# From https://github.com/dfinity/ic#verifying-releases
curl -fsSL https://raw.githubusercontent.com/dfinity/ic/557d7278dcbb0305411c6536645c3a32b4ec64b6/ci/scripts/repro-check | python3 - -c 557d7278dcbb0305411c6536645c3a32b4ec64b6 --guestos

The two SHA256 sums printed above from a) the downloaded CDN image and b) the locally built image, must be identical, and must match the SHA256 from the payload of the NNS proposal.

While not required for this NNS proposal, as we are only electing a new GuestOS version here, you have the option to verify the build reproducibility of the HostOS by passing --hostos to the script above instead of --guestos, or the SetupOS by passing --setupos.

Original NNS proposal

Payload

Proposal to execute nervous system function:

Nervous system function:

NervousSystemFunction { id: 1000, name: "Vote on NNS proposal", description: Some( "Vote yes to a given NNS proposal. If there is no strict majority, vote for the majority outcome.", ), function_type: Some( GenericNervousSystemFunction( GenericNervousSystemFunction { target_canister_id: Some( tsbvt-pyaaa-aaaar-qafva-cai, ), target_method_name: Some( "approve_proposal", ), validator_canister_id: Some( tsbvt-pyaaa-aaaar-qafva-cai, ), validator_method_name: Some( "approve_proposal_validate", ), topic: Some( ApplicationBusinessLogic, ), }, ), ), }

Payload sha256:

36b7db25d93e1c497a152d176d0edbe08ab5ed2c94c7ac8e99e9339a22b9b32c

Payload:

142256

Overview