Summary

Release Notes for release-2026-08-13_03-55-base (59c42492cd6ee3ef5e60cd35d7b766e7bfd085da) This release is based on changes since release-2026-08-06_04-21-base (fffab354a5cf76bf40ea3e0742de29e293277ff3).

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:

  • 1b07ffa84 Core Protocol: Add a cooling_down flag to SubnetTopology (#11117)
  • 0d9f2327e Core Protocol(subnet-splitting): do not validate certifications of other subnet (#10970)
  • 690482359 Core Protocol: Introduce OutOfCycles error for flexible outcalls (#11040)
  • a60297197 Core Protocol(delegations): reactively fetch delegations on new public key and/or canister ranges (#10699)
  • 288f40087 Core Protocol: move metrics-proxy to IC repo (#11053)
  • 06d6a7bbe Core Protocol(subnet-splitting): freeze registry version until summary is reached (#10938)
  • b9eac647c Core Protocol: Consensus cost of flexible HTTP outcalls must be covered by allowance (#10966)
  • 777dc537a Core Protocol,Node: migrate remaining ic-cdk ::call to Call (#11055)

Bugfixes:

  • 143126322 Core Protocol: Enforce limit on claimed HTTP outcalls response size (#11080)
  • 25a1dd311 Core Protocol(test-utils): drop Discretionary Access Control (DAC) capabilities instead of forking to nobody (#11063)
  • ba39adf74 Node: Use unique locks for each podman invocation (#11041)

Performance improvements:

  • fccb24ed6 Core Protocol: only compute the duplicate message's MessageId when it is used (#11075)

Chores:

Refactoring:

  • 506a0bc1a Core Protocol(consensus): introduce a builder pattern for dependencies in consensus' unit tests (#11064)
  • b5c69fc3d Core Protocol: decode Cycles from little-endian bytes via TryFrom (#11102)

Tests:

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/59c42492cd6ee3ef5e60cd35d7b766e7bfd085da/ci/scripts/repro-check | python3 - -c 59c42492cd6ee3ef5e60cd35d7b766e7bfd085da --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:

5be39e86cce5a14f95c61d6826f257198215c277fe51c3247dc19bbcbd9dc119

Payload:

143568

Overview