proposal - 134185
Vote: ADOPT
Reason:
I successfully built and verified the guest image. All the commits matched their description. Important changes in regard to 64-bit WebAssembly in this release.
Hash Match: MATCH
2 Urls: MATCH
Feedback:
Proposer Check: MATCH
Overall Summary:
This proposal enables the deployment of 64-bit WebAssembly applications on the Internet Computer’s mainnet.
Introduces new metrics to measure how long messages take in canister ingress queues, which is crucial for optimizing canister performance.
Improve fuzz testing, this proposal increases the robustness and security of the codebase by allowing for better detection of bugs or vulnerabilities in Rust components before they reach production.
Commits Summary
675edd43b
After observing prev setting for ACCEPTABLE_FINALIZATION_CERTIFICATION_GAP
behaved as expected the number go lowered from 2
to 1
.
c8cfedb4e
New metrics added to IngressHistoryWriterImpl
struct.
Three new histograms are added to measure message processing durations: from block inclusion to ingress queue, from creation to execution start, and from induction to execution.
9c2d3939f
Enables wasm64
to mainnet. Ship it!
72cf10cba
Tracking and aggregation of per-canister ingress queue latencies. A new CanisterIngressQueueLatencies
struct calculates and observes message processing latencies.
set_status
returns the previous ingress status wrapped in Arc<IngressStatus>
, enabling tracking and efficient sharing of state transitions for latency measurement.
5d68669c9
SubnetInfo
method in the management canister interface, allowing canisters to query details about their subnet, including the replica version.
44ab9f36f
Enhance fuzz testing capabilities for Rust binaries. A new allow_main
parameter enables fuzzers to export a main function when needed, and logic was added to conditionally link the appropriate LLVM fuzzer runtime libraries based on this parameter.
123cf77ac
Enables canister backtraces on trap.
f96077d44
Reworks the ic-boundary
CLI by regrouping and renaming commands, moving HTTP client/server functionality to ic-bn-lib
, and transitioning to environment variable-based configuration like ic-gateway
. Shedding is enabled for API boundary nodes, and size limits for governance and ledger canisters were increased to address dependency-related growth.
ed45bab1d
The PageMap
and Storage
components now support lazy loading, allowing for deferred initialization of storage structures to optimize memory and performance. This includes a new lazy_load
method and checks for whether storage is loaded.
The checkpointing logic has been updated to include validation of storage overlays before marking checkpoints as verified. This ensures data integrity by validating all related files during checkpoint operations.
4e83be165
Rename and convert several configuration fields (e.g., nns_public_key_exists
, use_ssh_authorized_keys
, inject_ic_crypto
) to booleans for clarity and efficiency. New fields, such as hostname
and generate_ic_boundary_tls_cert
, are added to GuestOSDevSettings
to support testing and creating testnets with API boundary nodes. The configuration system now includes a config_version
field, unit tests for versioning, a protocol for updates, and the decoupling of domain_name
from ipv4_config
.
b477d5932
Updated BASE_IMAGE
with most recent image.
32d152815
Removes the retry logic with exponential backoff and associated exception handling.
01d3b177a
New package dante-server
.
c582bfe2c
Updated BASE_IMAGE
with most recent image.
bda7e8c90
recv_stream
is dropped before any interaction with the send_stream
on the receiving side. It also updates log statements to use debug formatting ({:?}
), providing clearer insights into error causes. These changes enhance reliability and debugging clarity in the QuicTransport module.
e500f911f
ResetStreamOnDrop
guard to replace the previous SendStreamDropGuard
, ensuring QUIC streams reset properly on drop. Functions like read_request
and write_response
have been renamed to to_request
and to_response_bytes
for better alignment with their purpose, with minimal or no changes to their core logic.
c578a156b
Removes the addition of the peer_id
as an extension to the RPC response, as it is unnecessary since the caller already knows the peer_id
.
e5faeaaf7
interactive-install
and interactive-debug
modes for SetupOS, enabling automatic installation with reboot or interactive debugging without installation, streamlining testing and debugging workflows. Disk image handling is optimized by replacing tarballing with direct copying. Outdated launch-*
targets are removed, HostOS and GuestOS installation processes are accelerated, and documentation is updated to guide developers in interactive SetupOS usage.
9c1e7fe78
Matches description of timestamp is regenerated whenever a new branch is checked out.
47a2a110a
Matches description of fix permissions for nftables and systemd-journald
fc375b15a
This is a revert of commit that introduced Move bootloader off dockerhub
. Commit c582bfe2cc97e2dc2d49a55d050dd452dda9dbfc
896cafb19
Replacing the current RequestId
structure, which includes PseudoRandomId
and PreSigId
, with the CallbackId
directly. Compatibility with vet KD requests that lack PseudoRandomId
or PreSigId
.
6034537f7
Adds a validation step to distinguish between Ingress
and Request
calls for the NodeMetricsHistory
method, explicitly rejecting unexpected Ingress
calls.
Addresses potential vulnerability where malicious nodes could exploit this behavior.
3f7fcb995
Doesn’t pass wasm enabled arg to declare_variable
.
7452471b7
Restructures and enhances the fuzzer execution. Dedicated fuzzer_sandbox
module. This ensures a cleaner organization of fuzzer-related code.
If the intention was different or further technical details were observed, let me know for further refinement!
8b01b687e
Matches description of upgrading core crates.
b1c0f8ccc
Update multiple Rust dependencies to newer versions, including borsh
, borsh-derive
, rust_decimal
, toml_datetime
, and introducing new dependencies like cfg_aliases
, once_cell
, and winnow
.
073f73166
Remove TODOS
2d68a2e31
observe_conn_error
, observe_read_error
, and observe_write_error
to encapsulate error classification and increment metrics
into_request_bytes
and to_response
for handling request serialization and response deserialization.
3f1716678
Refactors the ConnectionHandle
struct in the QUIC transport implementation for improved encapsulation and thread-safe connection ID management. Replaces the manual connection ID counter with a static AtomicU64
for generating unique connection IDs in a thread-safe manner.
4bd76d3bc
Refactoring of the ConnectionHandle
struct to make the conn_id
and metrics
fields public and simplify their initialization. The RPC method documentation was updated to clarify its behavior and emphasize the transient nature of errors in the context of QUIC transport.
8b2932783
Add more logging HSM successfully detected
.
7990ce66d
Update base image refs.
d7cac1965
Replaces the return type of get_ingress_status
from an owned IngressStatus
to a borrowed &IngressStatus
, optimizing memory usage by avoiding unnecessary cloning.
3c3d9cd36
Migrates ECDSA and related cryptographic types (such as Schnorr and VetKd keys) from registry.crypto.v1
to a new module types.v1
, resulting in a namespace shift across multiple Protobuf and Rust files. It replaces all references to these types, ensuring compatibility by updating imports and fields in generated Protobuf code and associated implementations.
da0106cac
Replace generate-replica-config.sh
script with generate-ic-config.sh
to centralize and standardize the generation of the ic.json5
configuration file. New service dependencies, such as generate-ic-config.service
, are introduced to align with the updated configuration flow.
ae957017c
The HasId<NiDkgTag>
trait for NiDkgTranscript
ensures that the NiDkgTag
can be derived directly from NiDkgTranscript
, making the tag
field in pb::TaggedNiDkgTranscript
redundant.
3e0cf89b2
Replaces the build-time dependency include_bytes!("universal-canister.wasm.gz")
with a runtime approach that reads the universal canister WASM file via the get_universal_canister_wasm()
function. This aligns with treating the universal canister like other canisters, as described in the commit.
3ad26ca77
Refactors tests related to the cycles minting canister, improving clarity and modularity for validating operations like canister creation and top-ups. Dependencies and configurations are updated to support the reorganized tests.
proposal - 134186
Vote: ADOPT
Reason:
I successfully built and verified the guest image.
Hash Match: MATCH
2 Urls: MATCH
Feedback: NONE
Proposer Check: MATCH
e1e8a810e
ENABLE HASHES_IN_BLOCKS_FEATURE_ENABLED
proposal - 134187
Vote: ADOPT
Reason:
I successfully built and verified the guest image.
Hash Match: MATCH
2 Urls: MATCH
Feedback: NONE
Proposer Check: MATCH
34e659ec3
Update base images and kernel to 6.11
proposal - 134188
Vote: ADOPT
Reason:
I successfully built and verified the guest image.
Hash Match: MATCH
2 Urls: MATCH
Feedback: NONE
Proposer Check: MATCH
34e659ec3
Revert commit for feat: Upgrade GuestOS to 24.04
.
Adjustments included aligning services like node_exporter
with appropriate systemd targets and streamlining SELinux policies by removing redundant permissions.