Proposal 137678-137679 | Gautier - Reviewing those proposals for free before next season.
New HostOS/GuestOS version.
Build Success, Hashes match.
Vote : Approve
Features:
[e9f4cf612] Consensus,Execution,Interface: Increase subnet memory capacity to 2 TiB and subnet memory threshold to 750 GiB (#6086) - Just 2 constants updates, following commit description.
[fd9024f23] Consensus,Interface: Allow full pre-signatures to be delivered with the batch (#6019) - remove the get_pre_signature_ids_to_deliver method and modify get_idkg_subnet_public_keys to become get_idkg_subnet_public_keys_and_pre_signatures and return also the set of pre-signature IDs to be delivered in the batch of this block. Logic seems similar, and tests are updated accordingly..
[da2a54e71] Execution,Interface: Resolve and pair full pre-signatures with request contexts (#6049) - this commit fill build_signature_inputs for Ecdsa and Schnorr algo, and create the ThresholdSigInputsRef which contains all info, that’ll then use to translate.
remove the options on pre_signatures datastructure, as pre-signatures are now resolved during batch delivery.
[4d644f4c7] Execution,Interface: Add registry_version to subnet_info mgmt endpoint (#5800) - it basicly just add registry_version to the subnet_info. Registry version is defined by :
pub struct RegistryVersionTag {}
/// A type representing the registry's version.
pub type RegistryVersion = AmountOf<RegistryVersionTag, u64>;
ie : a u64 encapsuled by AmountOf.
[2c22d31ff] Execution,Interface: Make cycles charging dependent on registry flag (#5847) - In rental subnet, Canister creation/execution and memory doesnt have to pay for cycles. It’s a long PR, but mostly because this one has impact on a lot of already existed method. It’s difficult to know if nothing is missing, but the commit meet the description and LGTM.
[696d448ff] Interface(governance): Add validation and fix display for reward_account (#6033) - Not sure to understand why this commit is in this IC-OS topics, but it add Action::AddOrRemoveNodeProvider commande on governance. update also reward_account to return the 32-byte identifiers (28-byte identifiers with the checksum)
[cbbbc1dee] Interface,Node: Implement SEV-based key derivation (#6112) - impl SevKeyDeriver, where SimpleHkdf is used to derive the key using the SEV firmware, in base64 format.
[e266e4926] Node: Resurrect dfinity.system kernel arg (#6072) - change path for grub file : /grub to /boot/grub.
[417b4de76] Node: Only configure GuestOS SSH keys if TEE is not enabled (#6012) - ic-os/components/ssh/setup-ssh-user-keys/setup-ssh-user-keys.sh renamed to ic-os/components/ssh/setup-ssh-user-keys/setup-ssh-user-keys-hostos.sh.
add ic-os/components/ssh/setup-ssh-user-keys/setup-ssh-user-keys-guestos.sh, where copy_ssh_keys is done only if TEE is enable. LGTM.
Bugfixes:
[b2a9d2250] Consensus,Interface: Log sender reply callback instead of request ID (#6102) - Just adding sender print in logs.
[401e39350] Consensus,Interface: Use ReplicaVersion in CanisterHttpResponseShare (#6026) - replica_version is added on CanisterHttpResponseMetadata. it’s added so that CanisterHttpPoolManager can reject if ReplicaVersion is different without raising alerts.
[4b583cebe] Consensus,Interface,Node(recovery): use zstd instead of gzip (#6023) - use zstd instead of gzip. Note that the extension was wrong before.
Chores:
[82d7b064b] Execution,Interface: Add logs in system API to track whether bitcoin methods are called on the management canister (#6088) - Add a log in route_bitcoin_message, as it is deprecated. Method will be removed in the future.
[3c6a516cc] Interface: Cleanup handling of malicious images (#6039) - Renaming Behaviour to Behavior. Refacto from malicious parameter to uses_guestos_malicious_update and uses_guestos_malicious_img for tests.
[19ac53f96] Interface,Message Routing: Move testing only Functions in the State Manager into Testing Traits (#6030) - move flush_deallocation_channel to StateManagerTesting. Removed test_only_send_wait_to_tip_channel and latest_state_certification_hash methods.
[c7993fa04] Interface,Message Routing: Move Proto Conversions in State Layout to own Files (#6081) - Moved proto conversion to another file. It’s cleaner and definitly something i would have to do also in some of my code ahah
[72e046612] Interface,Node: Move SEV host functionality to submodule in order to separate host and guest (#6111) - Move HostSevCertificateProvider to another file, and no code change is done between the 2 versions.
[beea51add] Node: Consolidate read_grubenv and write_grubenv references (#6062) - move read_grubenv and write_grubend to ic-os/components/upgrade/grub.sh, and use this instead of duplicate code.
[5a1c00c6b] Node: Update Base Image Refs [2025-07-24-0804] (#6044) - Update image refs
[b5ebec114] Interface,Node: Extract reusable device-related code and add small improvements (#6060) - It’s not a Chores but more a bugfixe in my opinion. This commit fix a race condition where between next_free and attach, you can have another process which attached on the same loop device a file, meaning the attach will fail. It add a retry loop to fix it.
[27813e55a] Node: Clean up references to 20.04 (#5789) - remove ubuntu 20 reference (moved to 24)
Refactoring:
[2f3964fa8] Execution,Interface,Message Routing: Remove special handling of empty target_id from replicated_state (#6051) - remove code used for compute_initial_i_dkg_dealings to reshare_chain_key migration, uncessary now.