Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Multiple stable memory regions (and a new primitive type Region). #3768

Merged
merged 384 commits into from
Sep 6, 2023

Conversation

matthewhammer
Copy link
Contributor

@matthewhammer matthewhammer commented Feb 2, 2023

Runtime-system implementation of the API described in dfinity/motoko-base#516

Checklist:

  • pass existing tests for existing (experimental) stable memory, using region0 as that stable memory.
  • distinct regions are isolated (see test/run-drun/stable-regions-are-isolated.mo).
  • serialize/deserialize Region type.
  • migration path for existing (experimental) stable memory, into region0 of new region manager.
  • trap when Region.new fails?
  • add version to metadata
  • basic perf test
  • maybe remove (most of) Region0.rs
  • align errors
  • improve test region0/stable-mem-big-blog.mo to check contents of large read/writes (done in halves)
  • restrict access to new somehow (can be done later, but nicer to have on release).
  • rts_stable_mem_size?
  • max-stable-pages (limits physical pages, i.e. include meta-data)
  • registers not stack allocation?
  • clean up asserts on tag ranges
  • lazy metadata allocation?
  • add Region.mo to next_moc
  • document Region.mo
  • perf maybe: turn ic_mem_fns into ordinary externs where poss - affects perf IIRC from experience of @luc-blaeser (NOTE, I couldn't see this myself after a simple experiment)
  • elim Region0.rs operations wrappers and just do the conditional compilation in compile.ml - bench shows inlining should be a win.
  • simplify chunked read writes to iterate over vec_pages entries directly should be cheaper.
  • specify Region type in manual

TODO separately:

  • add stable-regions.md to portal doc (sidebars.js)
  • gracefully fail compilation of stablemem/region ops by generating trapping functions
  • protect access to Region.new

See also:

@matthewhammer matthewhammer changed the title Multiple-stable memories, as a new primitive type Memory. Multiple stable memories, as a new primitive type Memory. Feb 2, 2023
crusso

This comment was marked as resolved.

@matthewhammer

This comment was marked as resolved.

@crusso

This comment was marked as resolved.

@matthewhammer matthewhammer changed the title Multiple stable memories, as a new primitive type Memory. Multiple stable memory regions (and a new primitive type Region). Feb 3, 2023
@github-actions
Copy link

github-actions bot commented Feb 4, 2023

Comparing from bbe8c25 to 7765630:
In terms of gas, 5 tests regressed and the mean change is +52.4%.
In terms of size, 5 tests regressed and the mean change is +4.7%.

Copy link
Contributor

@crusso crusso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

On the other hand, maybe it's not that important to worry about the cost of maintaining stable memory data, since the replica team is working on optimizing that at the moment anyway.

@matthewhammer
Copy link
Contributor Author

On the other hand, maybe it's not that important to worry about the cost of maintaining stable memory data, since the replica team is working on optimizing that at the moment anyway.

I think we want to claim that our costs (in terms of stable accesses) are on par with the Rust implementation, to claim a kind of "feature parity", so I think it's worth reducing the accesses per operation to the minimum, if possible.

Copy link
Contributor

@crusso crusso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Makes sense to me. Would be good if @luc-blaeser could take another pass before we commit.

For recovery, I imagine we could have a function that only the actor, but not libraries, could call to recover an array of regions from stable memory using a SM metadata scan.


## Questions and answers

### Q: What determines the 8MB non-empty region minimum?
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The 8MB default block size turned out to be a footgun for OpenChat that has thousands of canisters. The developers were not aware that stable-structures are allocating at least 8MB even if the actual usage is a few KB.

It might become an issue for Motoko canisters too. Ideally, the developer provides this number themselves such that they are aware of the implications. How difficult it is to make this a parameter that's configurable at runtime?

Copy link

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

In Rust we do expose an API that allows users to change the region/bucket size from 8MiB to something else. It does bring additional complexity to developers though as they now need to understand that regions are pre-allocated with some minimum size, but maybe that's an unavoidable detail.

On a related note, I'm currently benchmarking smaller region sizes in the Rust implementation to better understand the performance trade-offs. I'll share those results once I have them.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks @ulan and @ielashi

I liked how the 8MB minimum simplified some other decisions for the implementor, but I also wondered how to guide people to use these the right way without running up a budget of unused scratch space in their apps.

Since we are trying to "catch up" to the Rust stable memory manager at the moment, and not surpass its features, I'll stick with the current 8MB minimum for now. But I'm very curious to hear about the future test results that @ielashi may have about other options.

I'm also curious about a more layered approach, where initially-small regions can use a more fine-grained setting, and then use coarser blocks as they grow. That seems potentially too complex, though.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@ulan asks

How difficult it is to make this a parameter that's configurable at runtime?

That's a good question. At "runtime" still means fixed at some point, right?

When would that parameter be given during the compilation and deployment phases, I wonder? Would it be a parameter to the actor, given when it's first installed?

@crusso

This comment was marked as outdated.

@crusso

This comment was marked as outdated.

@matthewhammer
Copy link
Contributor Author

So a region objhect is Region header followed by one word for the blob as a Motoko value.

Oh I see. That's not what I envisioned originally, but it makes sense now.
So there are two blobs for each region:

  • One fixed-sized one (for the region meta data fields)

The first one is not a Blob value per se, just part of the header for that type of Heap Obj with tag REGION (or whatever its called). Each tag has its own header format.

  • One variable-sized one (growing as needed to hold the block IDs)

Right, that's an actual motoko Blob value, referenced from the payload of the Region object and managed by GC (eg. reclaiming the old one after a resize).

And the header points to the first one, which has a field pointing to the second one?
The object will look something like this in memory

 | TAG_REGION | Region struct   ...           |   Value  |
   1 word           _n_   words                   1-word (skewed pointer to Blob)
                                                ^ payload points here, I think.

Similar to ASCII art for layout in module Variant of compile.ml, I think.

Ok, thanks for the repeated explanations. It's taken a while for the all of the details to sink into my brain. :)

After changing the file and getting the definition that you expected (finally), it also made sense to me too.

* 64-bit id field

* adjust idl::skip

* extend block table with 64-bit region id and internal pagecount; WIP (see buggy repro.mo)

* fix bug in block_page_count

* remove region table; max out region limit to u64::MAX - 1; modify tests and update test output; reduce overhead from 9 to 6 pages

* update bench numbers

* Apply suggestions from code review

Co-authored-by: Luc Blaeser <[email protected]>

* Apply suggestions from code review

Co-authored-by: Luc Blaeser <[email protected]>

* remove unused Region::payload_addr; add static asserts; update numbers

* appease Rust formatter

* Update rts/motoko-rts/src/region.rs

Co-authored-by: Luc Blaeser <[email protected]>

* apply Luc's suggestions

---------

Co-authored-by: Luc Blaeser <[email protected]>
@ZenVoich
Copy link
Contributor

Is it possible to remove a region and release memory?

@crusso
Copy link
Contributor

crusso commented Aug 29, 2023

Is it possible to remove a region and release memory?

Not with this PR, but the intention is that we will, in future, garbage collect the memory blocks of regions objects that become unreachable, for re-use by other regions that are still reachable. The PR is designed to be compatible with that.

…om 8MB to 1MB (16 pages) (#4187)

* reduce overhead of pure regions to 1MB; dynamic choice and use of BLOCK_BASE; record BLOCK_SIZE and BLOCK_BASE

* fix bug

* rust formatting

* add tests showing low and high regions base offsets
* up EXTRA_BATCHES from 1 to 32

* Update test/drun-wrapper.sh

* Update test/drun-wrapper.sh
* documentation and changelog for regions types

* typo
crusso added a commit to dfinity/motoko-base that referenced this pull request Sep 5, 2023
…ry (#580)

Note this is intended for branch next-moc.
CI expected to fail for base branch next-moc.
Builds fine against moc regions branch

Replaces original PR #516 (that I forgot existed but also targeted
master, not next-moc as required)

- [ ] Update moc PR dfinity/motoko#3768,
sources.nix and udpdate base doc there.
- [ ] revise overheads


# Region
Byte-level access to isolated, (virtual) stable memory _regions_.

This is a moderately lightweight abstraction over IC _stable memory_ and
supports persisting
regions of binary data across Motoko upgrades.
Use of this module is fully compatible with Motoko's use of
_stable variables_, whose persistence mechanism also uses (real) IC
stable memory internally, but does not interfere with this API.
It is also fully compatible with existing uses of the
`ExperimentalStableMemory` library, which has a similar interface, but,
only supported a single memory region, without isolation between
different applications.

Memory is allocated, using `grow(region, pages)`, sequentially and on
demand, in units of 64KiB logical pages, starting with 0 allocated
pages.
New pages are zero initialized.
Growth is capped by a soft limit on physical page count controlled by
compile-time flag
`--max-stable-pages <n>` (the default is 65536, or 4GiB).

Each `load` operation loads from region relative byte address `offset`
in little-endian
format using the natural bit-width of the type in question.
The operation traps if attempting to read beyond the current region
size.

Each `store` operation stores to region relative byte address `offset`
in little-endian format using the natural bit-width of the type in
question.
The operation traps if attempting to write beyond the current region
size.

Text values can be handled by using `Text.decodeUtf8` and
`Text.encodeUtf8`, in conjunction with `loadBlob` and `storeBlob`.

The current region allocation and region contents are preserved across
upgrades.

NB: The IC's actual stable memory size (`ic0.stable_size`) may exceed
the
total page size reported by summing all regions sizes.
This (and the cap on growth) are to accommodate Motoko's stable
variables and bookkeeping for regions.
Applications that plan to use Motoko stable variables sparingly or not
at all can
increase `--max-stable-pages` as desired, approaching the IC maximum
(initially 8GiB, then 32Gib, currently 64Gib).
All applications should reserve at least one page for stable variable
data, even when no stable variables are used.

Usage:
```motoko no-repl
import Region "mo:base/Region";
```

## Type `Region`
``` motoko no-repl
type Region = Prim.Types.Region
```

A stateful handle to an isolated region of IC stable memory.
`Region` is a stable type and regions can be stored in stable variables.

## Value `new`
``` motoko no-repl
let new : () -> Region
```

Allocate a new, isolated Region of size 0.

Example:

```motoko no-repl
let region = Region.new();
assert Region.size(region) == 0;
```

## Value `id`
``` motoko no-repl
let id : Region -> Nat
```

Return a Nat identifying the given region.
Maybe be used for equality, comparison and hashing.
NB: Regions returned by `new()` are numbered from 16
(regions 0..15 are currently reserved for internal use).
Allocate a new, isolated Region of size 0.

Example:

```motoko no-repl
let region = Region.new();
assert Region.id(region) == 16;
```

## Value `size`
``` motoko no-repl
let size : (region : Region) -> (pages : Nat64)
```

Current size of `region`, in pages.
Each page is 64KiB (65536 bytes).
Initially `0`.
Preserved across upgrades, together with contents of allocated
stable memory.

Example:
```motoko no-repl
let region = Region.new();
let beforeSize = Region.size(region);
ignore Region.grow(region, 10);
let afterSize = Region.size(region);
afterSize - beforeSize // => 10
```

## Value `grow`
``` motoko no-repl
let grow : (region : Region, newPages : Nat64) -> (oldPages : Nat64)
```

Grow current `size` of `region` by the given number of pages.
Each page is 64KiB (65536 bytes).
Returns the previous `size` when able to grow.
Returns `0xFFFF_FFFF_FFFF_FFFF` if remaining pages insufficient.
Every new page is zero-initialized, containing byte 0x00 at every
offset.
Function `grow` is capped by a soft limit on `size` controlled by
compile-time flag
 `--max-stable-pages <n>` (the default is 65536, or 4GiB).

Example:
```motoko no-repl
import Error "mo:base/Error";

let region = Region.new();
let beforeSize = Region.grow(region, 10);
if (beforeSize == 0xFFFF_FFFF_FFFF_FFFF) {
  throw Error.reject("Out of memory");
};
let afterSize = Region.size(region);
afterSize - beforeSize // => 10
```

## Value `loadNat8`
``` motoko no-repl
let loadNat8 : (region : Region, offset : Nat64) -> Nat8
```

Within `region`, load a `Nat8` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat8(region, offset, value);
Region.loadNat8(region, offset) // => 123
```

## Value `storeNat8`
``` motoko no-repl
let storeNat8 : (region : Region, offset : Nat64, value : Nat8) -> ()
```

Within `region`, store a `Nat8` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat8(region, offset, value);
Region.loadNat8(region, offset) // => 123
```

## Value `loadNat16`
``` motoko no-repl
let loadNat16 : (region : Region, offset : Nat64) -> Nat16
```

Within `region`, load a `Nat16` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat16(region, offset, value);
Region.loadNat16(region, offset) // => 123
```

## Value `storeNat16`
``` motoko no-repl
let storeNat16 : (region : Region, offset : Nat64, value : Nat16) -> ()
```

Within `region`, store a `Nat16` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat16(region, offset, value);
Region.loadNat16(region, offset) // => 123
```

## Value `loadNat32`
``` motoko no-repl
let loadNat32 : (region : Region, offset : Nat64) -> Nat32
```

Within `region`, load a `Nat32` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat32(region, offset, value);
Region.loadNat32(region, offset) // => 123
```

## Value `storeNat32`
``` motoko no-repl
let storeNat32 : (region : Region, offset : Nat64, value : Nat32) -> ()
```

Within `region`, store a `Nat32` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat32(region, offset, value);
Region.loadNat32(region, offset) // => 123
```

## Value `loadNat64`
``` motoko no-repl
let loadNat64 : (region : Region, offset : Nat64) -> Nat64
```

Within `region`, load a `Nat64` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat64(region, offset, value);
Region.loadNat64(region, offset) // => 123
```

## Value `storeNat64`
``` motoko no-repl
let storeNat64 : (region : Region, offset : Nat64, value : Nat64) -> ()
```

Within `region`, store a `Nat64` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeNat64(region, offset, value);
Region.loadNat64(region, offset) // => 123
```

## Value `loadInt8`
``` motoko no-repl
let loadInt8 : (region : Region, offset : Nat64) -> Int8
```

Within `region`, load a `Int8` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt8(region, offset, value);
Region.loadInt8(region, offset) // => 123
```

## Value `storeInt8`
``` motoko no-repl
let storeInt8 : (region : Region, offset : Nat64, value : Int8) -> ()
```

Within `region`, store a `Int8` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt8(region, offset, value);
Region.loadInt8(region, offset) // => 123
```

## Value `loadInt16`
``` motoko no-repl
let loadInt16 : (region : Region, offset : Nat64) -> Int16
```

Within `region`, load a `Int16` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt16(region, offset, value);
Region.loadInt16(region, offset) // => 123
```

## Value `storeInt16`
``` motoko no-repl
let storeInt16 : (region : Region, offset : Nat64, value : Int16) -> ()
```

Within `region`, store a `Int16` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt16(region, offset, value);
Region.loadInt16(region, offset) // => 123
```

## Value `loadInt32`
``` motoko no-repl
let loadInt32 : (region : Region, offset : Nat64) -> Int32
```

Within `region`, load a `Int32` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt32(region, offset, value);
Region.loadInt32(region, offset) // => 123
```

## Value `storeInt32`
``` motoko no-repl
let storeInt32 : (region : Region, offset : Nat64, value : Int32) -> ()
```

Within `region`, store a `Int32` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt32(region, offset, value);
Region.loadInt32(region, offset) // => 123
```

## Value `loadInt64`
``` motoko no-repl
let loadInt64 : (region : Region, offset : Nat64) -> Int64
```

Within `region`, load a `Int64` value from `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt64(region, offset, value);
Region.loadInt64(region, offset) // => 123
```

## Value `storeInt64`
``` motoko no-repl
let storeInt64 : (region : Region, offset : Nat64, value : Int64) -> ()
```

Within `region`, store a `Int64` value at `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 123;
Region.storeInt64(region, offset, value);
Region.loadInt64(region, offset) // => 123
```

## Value `loadFloat`
``` motoko no-repl
let loadFloat : (region : Region, offset : Nat64) -> Float
```

Within `region`, loads a `Float` value from the given `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 1.25;
Region.storeFloat(region, offset, value);
Region.loadFloat(region, offset) // => 1.25
```

## Value `storeFloat`
``` motoko no-repl
let storeFloat : (region : Region, offset : Nat64, value : Float) -> ()
```

Within `region`, store float `value` at the given `offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
let region = Region.new();
let offset = 0;
let value = 1.25;
Region.storeFloat(region, offset, value);
Region.loadFloat(region, offset) // => 1.25
```

## Value `loadBlob`
``` motoko no-repl
let loadBlob : (region : Region, offset : Nat64, size : Nat) -> Blob
```

Within `region,` load `size` bytes starting from `offset` as a `Blob`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
import Blob "mo:base/Blob";

let region = Region.new();
let offset = 0;
let value = Blob.fromArray([1, 2, 3]);
let size = value.size();
Region.storeBlob(region, offset, value);
Blob.toArray(Region.loadBlob(region, offset, size)) // => [1, 2, 3]
```

## Value `storeBlob`
``` motoko no-repl
let storeBlob : (region : Region, offset : Nat64, value : Blob) -> ()
```

Within `region, write `blob.size()` bytes of `blob` beginning at
`offset`.
Traps on an out-of-bounds access.

Example:
```motoko no-repl
import Blob "mo:base/Blob";

let region = Region.new();
let offset = 0;
let value = Blob.fromArray([1, 2, 3]);
let size = value.size();
Region.storeBlob(region, offset, value);
Blob.toArray(Region.loadBlob(region, offset, size)) // => [1, 2, 3]
```
@crusso crusso self-requested a review September 6, 2023 12:21
Copy link
Contributor

@crusso crusso left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks splendid

@crusso crusso added automerge-squash When ready, merge (using squash) and removed build_artifacts Upload moc binary as workflow artifacts labels Sep 6, 2023
@mergify mergify bot merged commit ee8452b into master Sep 6, 2023
@mergify mergify bot removed the automerge-squash When ready, merge (using squash) label Sep 6, 2023
mergify bot pushed a commit that referenced this pull request Sep 7, 2023
…4200)

The regions PR #3768 bumped up drun-wrapper extra batches from 1 to 128, affecting the perf of perf/dao due to a longer running heartbeat. This restores the extra batches back to 1.
dfinity-bot added a commit that referenced this pull request Mar 16, 2025
## Changelog for ic:
Branch: luc/latest-drun
Commits: [luc-blaeser/[email protected]](https://github.com/luc-blaeser/ic/compare/01c8dfda47126bb5f688302e0161f17c2c0cfe6f...ec8add504e63f97a2bc7f470d1b64dca550235af)

* [`f367c148`](https://github.com/luc-blaeser/ic/commit/f367c148b524ea125100cac343f587e7b39f29d9) chore: group the creation of bouncers similar to artifact pools ([luc-blaeser/ic⁠#3474](https://togithub.com/luc-blaeser/ic/issues/3474))
* [`841793d5`](https://github.com/luc-blaeser/ic/commit/841793d5472f59a35a60870097674b5ea3b1478b) chore: add MetricsAssert test utility ([luc-blaeser/ic⁠#3375](https://togithub.com/luc-blaeser/ic/issues/3375))
* [`197f983b`](https://github.com/luc-blaeser/ic/commit/197f983ba2e58df1d15c6d24e3de12a1cd6c0e84) chore(system-tests-k8s): use --local_test_jobs ([luc-blaeser/ic⁠#3519](https://togithub.com/luc-blaeser/ic/issues/3519))
* [`13ed4b9e`](https://github.com/luc-blaeser/ic/commit/13ed4b9eaa83dab238adf02fd208eac5ce44f158) fix(k8s-system-tests): containerDisk for boundary node ([luc-blaeser/ic⁠#3525](https://togithub.com/luc-blaeser/ic/issues/3525))
* [`f53c9f31`](https://github.com/luc-blaeser/ic/commit/f53c9f317f5eecd969fb393e3a4006df7d8e8151) chore(IDX): remove docker-login ([luc-blaeser/ic⁠#2386](https://togithub.com/luc-blaeser/ic/issues/2386))
* [`4f2ccdb0`](https://github.com/luc-blaeser/ic/commit/4f2ccdb0287d313fe5ac69dc8a45a75f350cd306) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3526](https://togithub.com/luc-blaeser/ic/issues/3526))
* [`bc3cd63c`](https://github.com/luc-blaeser/ic/commit/bc3cd63cab53fa833b10e750ad4ac7b8ab83fa24) chore: Restore Cargo.lock ([luc-blaeser/ic⁠#3532](https://togithub.com/luc-blaeser/ic/issues/3532))
* [`91e41832`](https://github.com/luc-blaeser/ic/commit/91e41832c4ae5ce43471f8a8f874d67e1de3fc66) fix(IDX): use llvm-clang on Intel macOS ([luc-blaeser/ic⁠#3530](https://togithub.com/luc-blaeser/ic/issues/3530))
* [`fc278709`](https://github.com/luc-blaeser/ic/commit/fc2787097c765498ca80e9497c3931ada0ec8bd4) chore: bump rust to 1.84 ([luc-blaeser/ic⁠#3469](https://togithub.com/luc-blaeser/ic/issues/3469))
* [`0126ae64`](https://github.com/luc-blaeser/ic/commit/0126ae64c1b394db1794d5fb58113e64a25a8ae9) chore: Update Base Image Refs [2025-01-21-0151] ([luc-blaeser/ic⁠#3537](https://togithub.com/luc-blaeser/ic/issues/3537))
* [`be8de198`](https://github.com/luc-blaeser/ic/commit/be8de198112294abd032ea4be8f37cfb6492bb9e) fix(ICRC_Ledger): FI-1645: use default deserialization value of 0 for ledger state's ledger_version ([luc-blaeser/ic⁠#3520](https://togithub.com/luc-blaeser/ic/issues/3520))
* [`83c1bbf7`](https://github.com/luc-blaeser/ic/commit/83c1bbf752b879cc5669bc6e66f0c1b529c234e2) test(ICP_Rosetta): FI-1646: Address ICP Rosetta integration tests flakiness ([luc-blaeser/ic⁠#3534](https://togithub.com/luc-blaeser/ic/issues/3534))
* [`8b3296e0`](https://github.com/luc-blaeser/ic/commit/8b3296e0fbecc20e487deb4663c01ed8f3b5059c) chore(RUN-1012): infrastructure to increase Wasm64 heap memory size ([luc-blaeser/ic⁠#3385](https://togithub.com/luc-blaeser/ic/issues/3385))
* [`69988ae4`](https://github.com/luc-blaeser/ic/commit/69988ae40e4cc0db7ef758da7dd5c0606075e926) feat(ICRC_Ledger): FI-1600: Download the latest ICRC ledger release instead of tip of master ([luc-blaeser/ic⁠#3538](https://togithub.com/luc-blaeser/ic/issues/3538))
* [`72ed89c0`](https://github.com/luc-blaeser/ic/commit/72ed89c0b8a7053ca4e00a3b06e1f1618ffb15e7) chore: Creating a unified mechanism to generate blocklists for ckBTC and ckETH ([luc-blaeser/ic⁠#3401](https://togithub.com/luc-blaeser/ic/issues/3401))
* [`0cd00752`](https://github.com/luc-blaeser/ic/commit/0cd0075240d4b72789c3268f06d0a151338317bf) test(crypto): lower `canister_sig_verification_cache_test` test params ([luc-blaeser/ic⁠#3528](https://togithub.com/luc-blaeser/ic/issues/3528))
* [`6b09303d`](https://github.com/luc-blaeser/ic/commit/6b09303dadb4ef0461fb541b65a7138b187669d8) refactor: CON-1434 Serialize current and next transcripts into `pb::NiDkgTranscript` ([luc-blaeser/ic⁠#3039](https://togithub.com/luc-blaeser/ic/issues/3039))
* [`0b30ddf6`](https://github.com/luc-blaeser/ic/commit/0b30ddf64b77adf41ac0404abc5b67874998c6f9) chore(system-tests-k8s): misc changes ([luc-blaeser/ic⁠#3541](https://togithub.com/luc-blaeser/ic/issues/3541))
* [`82576adb`](https://github.com/luc-blaeser/ic/commit/82576adb0eb2f5ec740bf85e885d111d730db9a7) fix: Correct the value returned for replicated vs non replicated execution in system api ([luc-blaeser/ic⁠#3540](https://togithub.com/luc-blaeser/ic/issues/3540))
* [`40b9f6c5`](https://github.com/luc-blaeser/ic/commit/40b9f6c5920f1c31931c3e38ef4c13f0b68210d2) fix: [EXC-1842] Charge for ic0_cycles_burn128 ([luc-blaeser/ic⁠#3542](https://togithub.com/luc-blaeser/ic/issues/3542))
* [`ad3140bb`](https://github.com/luc-blaeser/ic/commit/ad3140bb3444ea0963617a756d5f657d1e45d560) fix: Make mint_cycles128 test more robust ([luc-blaeser/ic⁠#3543](https://togithub.com/luc-blaeser/ic/issues/3543))
* [`d37cb7b1`](https://github.com/luc-blaeser/ic/commit/d37cb7b1e4eb9ab5ca051251f8efc9a40d5fef46) feat(governance-tools): Made the output from add-release-to-changelog a little better. ([luc-blaeser/ic⁠#3536](https://togithub.com/luc-blaeser/ic/issues/3536))
* [`834bead3`](https://github.com/luc-blaeser/ic/commit/834bead31ee029375b5c458f6fdac3c04e70437e) refactor(consensus): Refactor code in NiDkg to prepare VetKD implementation ([luc-blaeser/ic⁠#3522](https://togithub.com/luc-blaeser/ic/issues/3522))
* [`9e2784a0`](https://github.com/luc-blaeser/ic/commit/9e2784a0d668048a457f90c593269161e7cbb2a2) test(Consensus): Add a stub test for vetkd ([luc-blaeser/ic⁠#3524](https://togithub.com/luc-blaeser/ic/issues/3524))
* [`744f4683`](https://github.com/luc-blaeser/ic/commit/744f4683df2ca79f5f537b3db48a1c03d4ff084e) perf(nns): Add a benchmark for listing proposals ([luc-blaeser/ic⁠#3489](https://togithub.com/luc-blaeser/ic/issues/3489))
* [`f52dbf1b`](https://github.com/luc-blaeser/ic/commit/f52dbf1b84b184c884dc9e374453b5d1c8e62f47) chore(ckbtc): Remove empty ReceivedUtxos events from event log ([luc-blaeser/ic⁠#3434](https://togithub.com/luc-blaeser/ic/issues/3434))
* [`49e2de0d`](https://github.com/luc-blaeser/ic/commit/49e2de0d03a57ca116dc3b9c2c2eab25598cab9e) fix: EXC-1815: Fix sandbox processes metric ([luc-blaeser/ic⁠#3527](https://togithub.com/luc-blaeser/ic/issues/3527))
* [`225b046a`](https://github.com/luc-blaeser/ic/commit/225b046aad2586490892532950b3d580cbb7854e) chore(cketh/ckerc20): Replace rpc.sepolia.org by Ankr ([luc-blaeser/ic⁠#3523](https://togithub.com/luc-blaeser/ic/issues/3523))
* [`178aceab`](https://github.com/luc-blaeser/ic/commit/178aceab8793f1aedff9ade639a97e4b3b273669) feat: Allow accepting and burning cycles in replicated queries ([luc-blaeser/ic⁠#363](https://togithub.com/luc-blaeser/ic/issues/363))
* [`00f10afc`](https://github.com/luc-blaeser/ic/commit/00f10afcfa8c2cdc2aa26c660c4eabf7dfcc54cf) chore: group together the abortable channels and move the consensus event loops at the end ([luc-blaeser/ic⁠#3518](https://togithub.com/luc-blaeser/ic/issues/3518))
* [`7f9687b7`](https://github.com/luc-blaeser/ic/commit/7f9687b7a1d3cd9e045d902c76d455cabf847f9f) fix(EXC-1843): Make reservation test robust to costs ([luc-blaeser/ic⁠#3539](https://togithub.com/luc-blaeser/ic/issues/3539))
* [`6d3c4888`](https://github.com/luc-blaeser/ic/commit/6d3c4888925ac31e3ed24a7adf8d3a0e81a4443c) fix(consensus): fix the `hashes-in-blocks` feature implementation ([luc-blaeser/ic⁠#3529](https://togithub.com/luc-blaeser/ic/issues/3529))
* [`5993fe22`](https://github.com/luc-blaeser/ic/commit/5993fe22ce7c3fe4b433ef80f23336a0ccab89ec) refactor: Rename SystemStateChanges to SystemStateModifications for consistency ([luc-blaeser/ic⁠#3555](https://togithub.com/luc-blaeser/ic/issues/3555))
* [`367ab737`](https://github.com/luc-blaeser/ic/commit/367ab73788ed95af643e057a79bd2f98e1f3eee2) refactor(nns): Deleted ListNeurons from NNS governance.proto. ([luc-blaeser/ic⁠#3546](https://togithub.com/luc-blaeser/ic/issues/3546))
* [`a2d812c7`](https://github.com/luc-blaeser/ic/commit/a2d812c75a4a8e0c62437fa36c0b4cd5ae183813) chore(system-tests-k8s): console logs ([luc-blaeser/ic⁠#3558](https://togithub.com/luc-blaeser/ic/issues/3558))
* [`14ba37e5`](https://github.com/luc-blaeser/ic/commit/14ba37e5c818c5548d323ba58b94de160d2f71b0) feat: CON-1422 Introduce `VetKdPayload` type ([luc-blaeser/ic⁠#3458](https://togithub.com/luc-blaeser/ic/issues/3458))
* [`a4dd6388`](https://github.com/luc-blaeser/ic/commit/a4dd63884a9bf2e421c3162f298bbe5abe2c3ec3) refactor: rename ssh services ([luc-blaeser/ic⁠#3548](https://togithub.com/luc-blaeser/ic/issues/3548))
* [`92201728`](https://github.com/luc-blaeser/ic/commit/922017281e3b136183cc03e66b279ca0db4e8951) refactor(nns): Delete ManageNeuronResponse from governance.proto. ([luc-blaeser/ic⁠#3573](https://togithub.com/luc-blaeser/ic/issues/3573))
* [`1edf4a1a`](https://github.com/luc-blaeser/ic/commit/1edf4a1af496ebf5423a06220d601739cb252053) feat(sns): Automatically advance SNS target version upon opt-in ([luc-blaeser/ic⁠#3119](https://togithub.com/luc-blaeser/ic/issues/3119))
* [`01e83df0`](https://github.com/luc-blaeser/ic/commit/01e83df09153acc688b97ccbea45e829163c2a35) feat(nns): Avoid recomputing wasm/arg hashes during read operations ([luc-blaeser/ic⁠#3490](https://togithub.com/luc-blaeser/ic/issues/3490))
* [`550209a7`](https://github.com/luc-blaeser/ic/commit/550209a750be0575cc4afff5e23c04b03048c08e) chore: delete deploy-update-ssh-account-keys ([luc-blaeser/ic⁠#3549](https://togithub.com/luc-blaeser/ic/issues/3549))
* [`f3a8e93d`](https://github.com/luc-blaeser/ic/commit/f3a8e93df6c77028a81cf080bdac97a8faab7c01) chore: Update Base Image Refs [2025-01-23-0147] ([luc-blaeser/ic⁠#3575](https://togithub.com/luc-blaeser/ic/issues/3575))
* [`026eda8b`](https://github.com/luc-blaeser/ic/commit/026eda8b9a5b2fdfe5a65773a02873912cd5e29d) chore: Bump Candid to 0.10.12 ([luc-blaeser/ic⁠#3566](https://togithub.com/luc-blaeser/ic/issues/3566))
* [`1714dd1d`](https://github.com/luc-blaeser/ic/commit/1714dd1dc31c9abc4e53b02201bb79feb9051132) fix: bind to [::1] per default instead of 127.0.0.1 in PocketIC ([luc-blaeser/ic⁠#3280](https://togithub.com/luc-blaeser/ic/issues/3280))
* [`1dd3386c`](https://github.com/luc-blaeser/ic/commit/1dd3386c4de060e4148df11eee31196f69ed01e8) refactor: make the stack construction a little more readable; added comments ([luc-blaeser/ic⁠#3559](https://togithub.com/luc-blaeser/ic/issues/3559))
* [`8df78c99`](https://github.com/luc-blaeser/ic/commit/8df78c99e258b519535de4faf7fde24ef70b549b) chore: remove `ic_api_version` field in IC status response ([luc-blaeser/ic⁠#3569](https://togithub.com/luc-blaeser/ic/issues/3569))
* [`7f0bad6c`](https://github.com/luc-blaeser/ic/commit/7f0bad6c91300970ff913c0d026e24cbd2fa13bc) chore: add todo comment to remind of disabling balances serialization ([luc-blaeser/ic⁠#3579](https://togithub.com/luc-blaeser/ic/issues/3579))
* [`967fe211`](https://github.com/luc-blaeser/ic/commit/967fe211896f28e7b62dd7fc279a39e6e3c9c59d) chore: bitcoin crate upgrade ([luc-blaeser/ic⁠#3080](https://togithub.com/luc-blaeser/ic/issues/3080))
* [`ca3b684a`](https://github.com/luc-blaeser/ic/commit/ca3b684a47c4b900721ca7b198efc388db9df86b) test: Add best effort messages to random traffic canister ([luc-blaeser/ic⁠#3108](https://togithub.com/luc-blaeser/ic/issues/3108))
* [`33941442`](https://github.com/luc-blaeser/ic/commit/33941442d1df7df9925d70ce7823183a2dfa438b) fix: do not repeat error code in query call reject message ([luc-blaeser/ic⁠#3465](https://togithub.com/luc-blaeser/ic/issues/3465))
* [`fb75bf40`](https://github.com/luc-blaeser/ic/commit/fb75bf40fc6e86fa81dbc9b42e893bca9d13086e) perf: Move file system population to mkfs.ext4 invocation ([luc-blaeser/ic⁠#3476](https://togithub.com/luc-blaeser/ic/issues/3476))
* [`43d7f975`](https://github.com/luc-blaeser/ic/commit/43d7f9752c0645ced2dd1bf37d88389ef88d357a) docs: Improve the abortable broadcast documentation ([luc-blaeser/ic⁠#3260](https://togithub.com/luc-blaeser/ic/issues/3260))
* [`f569791c`](https://github.com/luc-blaeser/ic/commit/f569791cc7ebda5132382a1abcc0c537c93b3543) docs(governance): Added 2025-01-20 CHANGELOG.md entries. ([luc-blaeser/ic⁠#3535](https://togithub.com/luc-blaeser/ic/issues/3535))
* [`626d1bb7`](https://github.com/luc-blaeser/ic/commit/626d1bb787373473bcd32d25785f5f7b2ff96e56) feat(nns): Add pagination to list_neurons API ([luc-blaeser/ic⁠#3358](https://togithub.com/luc-blaeser/ic/issues/3358))
* [`44d54e5b`](https://github.com/luc-blaeser/ic/commit/44d54e5be8d4f6566eaa1bd0e3e689db29315a60) feat(sns): `SnsGov.list_proposals` includes `chunked_canister_wasm` ([luc-blaeser/ic⁠#3585](https://togithub.com/luc-blaeser/ic/issues/3585))
* [`850e9594`](https://github.com/luc-blaeser/ic/commit/850e9594ff1ad2d8b42b7cb2b1acad5a791189f1) chore(candid-utils): Factor out Candid pretty printing function ([luc-blaeser/ic⁠#3572](https://togithub.com/luc-blaeser/ic/issues/3572))
* [`3b2afad3`](https://github.com/luc-blaeser/ic/commit/3b2afad38c65d6e9bed58d8fa06dc34d831f5562) fix: orchestrator onboarding logs ([luc-blaeser/ic⁠#3588](https://togithub.com/luc-blaeser/ic/issues/3588))
* [`a4e13acb`](https://github.com/luc-blaeser/ic/commit/a4e13acb514d8a11dc9a433250375e880a97737b) chore: proposal to upgrade ckBTC minter ([luc-blaeser/ic⁠#3583](https://togithub.com/luc-blaeser/ic/issues/3583))
* [`623b155c`](https://github.com/luc-blaeser/ic/commit/623b155ca4fec6a5041fd88969baebcabf58db1a) fix: use api boundary nodes as socks proxies ([luc-blaeser/ic⁠#2712](https://togithub.com/luc-blaeser/ic/issues/2712))
* [`73f1dbd1`](https://github.com/luc-blaeser/ic/commit/73f1dbd1982e1c85647698fb545cfb7db22096a1) chore: add V3 to ICRC Ledger canister revisions and update mainnet to V4 ([luc-blaeser/ic⁠#3570](https://togithub.com/luc-blaeser/ic/issues/3570))
* [`b2888f25`](https://github.com/luc-blaeser/ic/commit/b2888f251925c42df8f3b4fcf70514fa2cacee2a) fix(ic-admin): set default NNS URL to the mainnet one ([luc-blaeser/ic⁠#3593](https://togithub.com/luc-blaeser/ic/issues/3593))
* [`c22d478a`](https://github.com/luc-blaeser/ic/commit/c22d478ad97f82bd5d378862c9dd2f13afe2ece1) feat(rosetta): Local cluster setup for Rosetta ([luc-blaeser/ic⁠#3485](https://togithub.com/luc-blaeser/ic/issues/3485))
* [`f128ac96`](https://github.com/luc-blaeser/ic/commit/f128ac960b5f9da2603d843d2a102cffbe62495b) feat: [MR-354] Load & validate protos asynchronously ([luc-blaeser/ic⁠#2594](https://togithub.com/luc-blaeser/ic/issues/2594))
* [`c407638b`](https://github.com/luc-blaeser/ic/commit/c407638b5d471351b3367ed8409df6e488c6001e) fix: Revert "fix: bind to [::1] per default instead of 127.0.0.1 in PocketIC ([luc-blaeser/ic⁠#3280](https://togithub.com/luc-blaeser/ic/issues/3280))" ([luc-blaeser/ic⁠#3597](https://togithub.com/luc-blaeser/ic/issues/3597))
* [`52f75b8f`](https://github.com/luc-blaeser/ic/commit/52f75b8f70b5b2a81b45dda9676c4bb5b7a8e399) chore: Run some integration tests on darwin, not intel mac runners to avoid flakiness ([luc-blaeser/ic⁠#3598](https://togithub.com/luc-blaeser/ic/issues/3598))
* [`17e42ae8`](https://github.com/luc-blaeser/ic/commit/17e42ae8580ad2d5d018b2ec10f3b01afbea7766) feat(PocketIC): new PocketIC operation to set certified time ([luc-blaeser/ic⁠#3595](https://togithub.com/luc-blaeser/ic/issues/3595))
* [`0d0440ff`](https://github.com/luc-blaeser/ic/commit/0d0440ff75a08a08d3fa2dcc8bafdd14a4f0622b) chore: listen on socketaddr from config for http handler ([luc-blaeser/ic⁠#3599](https://togithub.com/luc-blaeser/ic/issues/3599))
* [`8b198f61`](https://github.com/luc-blaeser/ic/commit/8b198f61b6802b157624afb8930450b99c33e08d) test(MR): [MR-638] Include best-effort messages in `queues_compatibility_test`, stage 1 ([luc-blaeser/ic⁠#3561](https://togithub.com/luc-blaeser/ic/issues/3561))
* [`98c8e43b`](https://github.com/luc-blaeser/ic/commit/98c8e43b25d345bf9f4b5438dc95376a545866fd) chore(boundary): salt canister interface ([luc-blaeser/ic⁠#3587](https://togithub.com/luc-blaeser/ic/issues/3587))
* [`7dc4bc9c`](https://github.com/luc-blaeser/ic/commit/7dc4bc9cc30cf84ca0b66fce2f1b98b8c7e13ee3) chore(system-tests-k8s): console logs url ([luc-blaeser/ic⁠#3606](https://togithub.com/luc-blaeser/ic/issues/3606))
* [`03393bc8`](https://github.com/luc-blaeser/ic/commit/03393bc817da78cdc27190eaa388b8f6f8990365) feat(cycles-minting): Cycles Minting canister refunds automatically. ([luc-blaeser/ic⁠#3484](https://togithub.com/luc-blaeser/ic/issues/3484))
* [`5b799152`](https://github.com/luc-blaeser/ic/commit/5b799152432d0697dcd824cc44f1afae19b522b5) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3594](https://togithub.com/luc-blaeser/ic/issues/3594))
* [`cf52a501`](https://github.com/luc-blaeser/ic/commit/cf52a501182823514b73d41fca4d40bc187d7ea5) chore(node): delete retry-ipv6-config ([luc-blaeser/ic⁠#3607](https://togithub.com/luc-blaeser/ic/issues/3607))
* [`69748856`](https://github.com/luc-blaeser/ic/commit/69748856b6c9292cfe1c1534c01f4073f749a240) refactor: Use Principal in RemoveNodeOperatorsPayload, instead of Vec<u8> ([luc-blaeser/ic⁠#3386](https://togithub.com/luc-blaeser/ic/issues/3386))
* [`361a1e39`](https://github.com/luc-blaeser/ic/commit/361a1e39a460336bc4e503c32cad2874b0f9ff74) chore: Remove deprecated CanisterStatusResult type ([luc-blaeser/ic⁠#3431](https://togithub.com/luc-blaeser/ic/issues/3431))
* [`fbb723cf`](https://github.com/luc-blaeser/ic/commit/fbb723cf6e6aecb92f5bec968cec9370fdcd19f7) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3614](https://togithub.com/luc-blaeser/ic/issues/3614))
* [`55e504b2`](https://github.com/luc-blaeser/ic/commit/55e504b2380c18dfe591edf67c6665371856c327) chore: change redirect code from 303 to 307 ([luc-blaeser/ic⁠#3600](https://togithub.com/luc-blaeser/ic/issues/3600))
* [`0468e6f9`](https://github.com/luc-blaeser/ic/commit/0468e6f90e52fab4be7b0bf722dacb520a589c55) chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3615](https://togithub.com/luc-blaeser/ic/issues/3615))
* [`98b6bfff`](https://github.com/luc-blaeser/ic/commit/98b6bfffa3c5c5d3850c2611981af2fdd8a4251e) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3616](https://togithub.com/luc-blaeser/ic/issues/3616))
* [`8cdb9302`](https://github.com/luc-blaeser/ic/commit/8cdb9302e0f896edcf61522d9f1559d2026007f1) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3620](https://togithub.com/luc-blaeser/ic/issues/3620))
* [`fcc88deb`](https://github.com/luc-blaeser/ic/commit/fcc88deb59d847f2dd5a62856be7f1eedaad0f6d) refactor: Remove inject_files rule invocations and move injection of binaries to ext4_image ([luc-blaeser/ic⁠#3497](https://togithub.com/luc-blaeser/ic/issues/3497))
* [`9d42a914`](https://github.com/luc-blaeser/ic/commit/9d42a9146cfec98a09204c39c8d6008cb4af3af7) fix: ic-gateway: remove load shedding ([luc-blaeser/ic⁠#3621](https://togithub.com/luc-blaeser/ic/issues/3621))
* [`e2a1f9c3`](https://github.com/luc-blaeser/ic/commit/e2a1f9c3ec5f982dbce9ac9a0c1dfb82bd3a753f) chore(icp-rosetta): [FI-1563] Migrate Rosetta's voting tests ([luc-blaeser/ic⁠#2815](https://togithub.com/luc-blaeser/ic/issues/2815))
* [`ac12ab0b`](https://github.com/luc-blaeser/ic/commit/ac12ab0b7af9075de5ee0209609134612ff1bd67) chore: handle panics when joining on cancellations in ingress_watcher event loop ([luc-blaeser/ic⁠#3618](https://togithub.com/luc-blaeser/ic/issues/3618))
* [`2453254c`](https://github.com/luc-blaeser/ic/commit/2453254c2abf21288b711a4467ff96d8ec66201e) chore: remove todo messages in call_v3.rs ([luc-blaeser/ic⁠#3617](https://togithub.com/luc-blaeser/ic/issues/3617))
* [`3f14a080`](https://github.com/luc-blaeser/ic/commit/3f14a0806cb596e7a2daa3cff15e5f946dfcf7f7) chore: move out the CLI module from the library ([luc-blaeser/ic⁠#3169](https://togithub.com/luc-blaeser/ic/issues/3169))
* [`59c71ed7`](https://github.com/luc-blaeser/ic/commit/59c71ed7db8a61bf604d0f5bb0910df5c796bdef) chore(IDX): unset aws var ([luc-blaeser/ic⁠#3627](https://togithub.com/luc-blaeser/ic/issues/3627))
* [`048d5281`](https://github.com/luc-blaeser/ic/commit/048d528113c24f64ff7d08d800ae5cebba096280) fix(IDX): enable colors in clippy ([luc-blaeser/ic⁠#3628](https://togithub.com/luc-blaeser/ic/issues/3628))
* [`0626768a`](https://github.com/luc-blaeser/ic/commit/0626768a908b3498beb2b806b40c30f3197b1481) chore(node): normalize config.sh to return empty string ([luc-blaeser/ic⁠#3502](https://togithub.com/luc-blaeser/ic/issues/3502))
* [`dd37e700`](https://github.com/luc-blaeser/ic/commit/dd37e7009370dde008124d315a9eed46f8ad248f) feat(crypto): CRP-2648 CRP-2600 VetKD API and testing improvements ([luc-blaeser/ic⁠#3283](https://togithub.com/luc-blaeser/ic/issues/3283))
* [`43238430`](https://github.com/luc-blaeser/ic/commit/432384301a641cd5077d61cd2cebc0c88eb4aa3e) chore(idx): remove proxy cache url ([luc-blaeser/ic⁠#3630](https://togithub.com/luc-blaeser/ic/issues/3630))
* [`fba9bf4d`](https://github.com/luc-blaeser/ic/commit/fba9bf4da928284ff351e804aae2dc3b04b76a97) feat(candid-utils): Better validation for Candid services without arguments ([luc-blaeser/ic⁠#3590](https://togithub.com/luc-blaeser/ic/issues/3590))
* [`2da21389`](https://github.com/luc-blaeser/ic/commit/2da21389027b25a4c5a68333df36eb17c966ac48) feat(crypto): CRP-2670 store registry version in threshold sig data store ([luc-blaeser/ic⁠#3619](https://togithub.com/luc-blaeser/ic/issues/3619))
* [`5c68a636`](https://github.com/luc-blaeser/ic/commit/5c68a63660fbf2698da663c778be351721671c82) feat(ic-nervous-system-agent): Add management canister functions ([luc-blaeser/ic⁠#3591](https://togithub.com/luc-blaeser/ic/issues/3591))
* [`b9ee50e6`](https://github.com/luc-blaeser/ic/commit/b9ee50e62bef3d1ea79c67d46df9aaa5a47bf6d4) chore(IDX): unset buildevent var ([luc-blaeser/ic⁠#3629](https://togithub.com/luc-blaeser/ic/issues/3629))
* [`1ef59e5f`](https://github.com/luc-blaeser/ic/commit/1ef59e5f3e20c50d1d373b8cae4a7630628f176c) test: remove log syncrhonization from nns recovery system test ([luc-blaeser/ic⁠#3602](https://togithub.com/luc-blaeser/ic/issues/3602))
* [`8f4c5bbf`](https://github.com/luc-blaeser/ic/commit/8f4c5bbf3f886470d244ca601e743a9eb2685c1e) docs(cmc): Fixed a comment in CMC automatic refund. ([luc-blaeser/ic⁠#3634](https://togithub.com/luc-blaeser/ic/issues/3634))
* [`6dcf4612`](https://github.com/luc-blaeser/ic/commit/6dcf4612fd1d1a6573a301d4810de898a754939c) fix(nns): Fix neurons_fund_total_active_neurons metric ([luc-blaeser/ic⁠#3610](https://togithub.com/luc-blaeser/ic/issues/3610))
* [`6d4ecc89`](https://github.com/luc-blaeser/ic/commit/6d4ecc89e14f8fb60f01ae42553608aedf847a42) chore(registry): Backfill missing node_reward_type records ([luc-blaeser/ic⁠#3589](https://togithub.com/luc-blaeser/ic/issues/3589))
* [`8b5a196b`](https://github.com/luc-blaeser/ic/commit/8b5a196bb9dcbf5bbece12e116e0d066c9ec7283) feat: Turn on the features to allow active neurons in stable memory and use stable following index ([luc-blaeser/ic⁠#3604](https://togithub.com/luc-blaeser/ic/issues/3604))
* [`65b020a9`](https://github.com/luc-blaeser/ic/commit/65b020a926b130f21039398cf86d1c58c867a1af) feat(nns): Change `include_empty_neurons_readable_by_caller` default to false ([luc-blaeser/ic⁠#3612](https://togithub.com/luc-blaeser/ic/issues/3612))
* [`0ac8a60b`](https://github.com/luc-blaeser/ic/commit/0ac8a60bc974222b5da87676a910d55344528ca0) feat(cycles-minting-canister): Enabled automatic refunds. ([luc-blaeser/ic⁠#3632](https://togithub.com/luc-blaeser/ic/issues/3632))
* [`a8dc0417`](https://github.com/luc-blaeser/ic/commit/a8dc04178f5b03788090afab2fdffb7b9306d050) chore(nns): Refactor NeuronId::from_subaccount to test_utils since it's only used in tests ([luc-blaeser/ic⁠#3611](https://togithub.com/luc-blaeser/ic/issues/3611))
* [`7366cbeb`](https://github.com/luc-blaeser/ic/commit/7366cbeb7a7d1e0a57282aeb90bb52d987c9b7f1) test(ICRC_Ledger): FI-1655: Add check to see if downgrade to mainnet is expected to work ([luc-blaeser/ic⁠#3625](https://togithub.com/luc-blaeser/ic/issues/3625))
* [`7325e17a`](https://github.com/luc-blaeser/ic/commit/7325e17a125cafd8d6530f63b34015c5339dbb3e) chore(fuzzing): Enable `bes` config for sandbox based fuzzers ([luc-blaeser/ic⁠#3623](https://togithub.com/luc-blaeser/ic/issues/3623))
* [`c53b231c`](https://github.com/luc-blaeser/ic/commit/c53b231ce7119f199b2c76ae39395cb14dd89aee) revert: "chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3615](https://togithub.com/luc-blaeser/ic/issues/3615))" ([luc-blaeser/ic⁠#3646](https://togithub.com/luc-blaeser/ic/issues/3646))
* [`591e7087`](https://github.com/luc-blaeser/ic/commit/591e70878e3f3b3310160cd572bcb1b7ccd692a3) chore(dep-mgnt): Change owning team for II ([luc-blaeser/ic⁠#3648](https://togithub.com/luc-blaeser/ic/issues/3648))
* [`5f4503d0`](https://github.com/luc-blaeser/ic/commit/5f4503d0fea38c8b8936897284f4c722447d00e0) chore(IDX): bazel-test-all ln1 ([luc-blaeser/ic⁠#3647](https://togithub.com/luc-blaeser/ic/issues/3647))
* [`23a5ce06`](https://github.com/luc-blaeser/ic/commit/23a5ce068d956983f8a7d1ee6d08093f28074613) refactor(nns-governance): Delete NeuronInfo from governance.proto. ([luc-blaeser/ic⁠#3639](https://togithub.com/luc-blaeser/ic/issues/3639))
* [`3fd22ccd`](https://github.com/luc-blaeser/ic/commit/3fd22ccde54b862368b1ccb93afa74c82ccc6324) feat(sns-cli): Add subcommand for upgrading SNS controlled canisters using chunked Wasms ([luc-blaeser/ic⁠#3439](https://togithub.com/luc-blaeser/ic/issues/3439))
* [`376c7275`](https://github.com/luc-blaeser/ic/commit/376c7275121bff4f506305b973310166adbca934) chore(crypto): Add tests that cross-curve keys are rejected with a reasonable error ([luc-blaeser/ic⁠#3605](https://togithub.com/luc-blaeser/ic/issues/3605))
* [`dc2a12f3`](https://github.com/luc-blaeser/ic/commit/dc2a12f3ed360785371508693561406abd1a281c) chore(dep-mgnt): Change owning team for nns-dapp frontend ([luc-blaeser/ic⁠#3652](https://togithub.com/luc-blaeser/ic/issues/3652))
* [`b310eb0b`](https://github.com/luc-blaeser/ic/commit/b310eb0b46aeb2f0c0c41d6016d0ad67ad56eb71) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3640](https://togithub.com/luc-blaeser/ic/issues/3640))
* [`aa12bb1f`](https://github.com/luc-blaeser/ic/commit/aa12bb1fb50960147c34f919a0a27705ba89255a) fix(IDX): don't use interpolation in x86-darwin workflow env ([luc-blaeser/ic⁠#3656](https://togithub.com/luc-blaeser/ic/issues/3656))
* [`3aa3266c`](https://github.com/luc-blaeser/ic/commit/3aa3266cde8b226501d46c66c32ee02b929c62fa) feat(nns): Avoid cloning large fields when listing proposals ([luc-blaeser/ic⁠#3505](https://togithub.com/luc-blaeser/ic/issues/3505))
* [`c05b185f`](https://github.com/luc-blaeser/ic/commit/c05b185fee8eab2c32ed96062f4a62739011a16d) feat(node): Log guestos.service console logs to tty1 ([luc-blaeser/ic⁠#3645](https://togithub.com/luc-blaeser/ic/issues/3645))
* [`215a697e`](https://github.com/luc-blaeser/ic/commit/215a697e1411965fe577c406ffe1af9728d0aeb8) feat: ICP-ledger: FI-1440: Implement V4 for ICP ledger - migrate balances to stable structures ([luc-blaeser/ic⁠#3314](https://togithub.com/luc-blaeser/ic/issues/3314))
* [`ae3ab5aa`](https://github.com/luc-blaeser/ic/commit/ae3ab5aa3c48287a69935794ff0ec8d6650e0337) refactor(nervous-system): Move Request implementations from canister crates to rs/nervous_system/agent ([luc-blaeser/ic⁠#3657](https://togithub.com/luc-blaeser/ic/issues/3657))
* [`0b1d6e41`](https://github.com/luc-blaeser/ic/commit/0b1d6e41db8931c27068796b40d5cf6aa1be7590) chore(node): tidy up systemd dependencies ([luc-blaeser/ic⁠#3574](https://togithub.com/luc-blaeser/ic/issues/3574))
* [`b6d1e651`](https://github.com/luc-blaeser/ic/commit/b6d1e651bcc3d3f42438fb4a504075e07b69f8a3) chore(EXC-1840): Refactor bool  to use WasmExecutionMode enum. ([luc-blaeser/ic⁠#3586](https://togithub.com/luc-blaeser/ic/issues/3586))
* [`6955a3fc`](https://github.com/luc-blaeser/ic/commit/6955a3fc1bb84079ea3e07284790b603afc3e2c9) test(ICRC_Ledger): Fix test failure due to SNS ledger version bump ([luc-blaeser/ic⁠#3663](https://togithub.com/luc-blaeser/ic/issues/3663))
* [`ae91325d`](https://github.com/luc-blaeser/ic/commit/ae91325d470fa927bb32a585aec57b1162b56bd8) chore(IDX): remove unused ci/tools/download ([luc-blaeser/ic⁠#3668](https://togithub.com/luc-blaeser/ic/issues/3668))
* [`b68e6a23`](https://github.com/luc-blaeser/ic/commit/b68e6a23605e8b3b889467f5552eb4dcd8df2f77) feat(ic-admin): Show the proposal URL for --dry-run ([luc-blaeser/ic⁠#3596](https://togithub.com/luc-blaeser/ic/issues/3596))
* [`620e7729`](https://github.com/luc-blaeser/ic/commit/620e7729d7e20c3dbb3843009188ab69ec4b600c) refactor: fix legacy naming of some methods ([luc-blaeser/ic⁠#3664](https://togithub.com/luc-blaeser/ic/issues/3664))
* [`fe4d0222`](https://github.com/luc-blaeser/ic/commit/fe4d0222fc4e3af11d5eef467a8bfb7cd0e410e4) chore: remove last todo comment in HTTP-handler ([luc-blaeser/ic⁠#3626](https://togithub.com/luc-blaeser/ic/issues/3626))
* [`e6b31566`](https://github.com/luc-blaeser/ic/commit/e6b31566c5876204c28d79b7c6e1a7db0303deab) chore(IDX): instruct how to calculate hashes of CDN downloaded artifacts ([luc-blaeser/ic⁠#3670](https://togithub.com/luc-blaeser/ic/issues/3670))
* [`a99f598f`](https://github.com/luc-blaeser/ic/commit/a99f598f906277700c9f98fdbda2bd9bc57b83d0) test: Add tests to check that changes are not applied if replicated query execution traps ([luc-blaeser/ic⁠#3669](https://togithub.com/luc-blaeser/ic/issues/3669))
* [`5b6d604a`](https://github.com/luc-blaeser/ic/commit/5b6d604af0479e5ea6146fa769ce9cc5a1094869) chore: Fix typo in error message about uninitialized query stats ([luc-blaeser/ic⁠#3673](https://togithub.com/luc-blaeser/ic/issues/3673))
* [`0da53066`](https://github.com/luc-blaeser/ic/commit/0da53066f8cfe4e030f5a7463cbfb4b725ded24d) chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3675](https://togithub.com/luc-blaeser/ic/issues/3675))
* [`155bd42f`](https://github.com/luc-blaeser/ic/commit/155bd42f484c2a8f9e6c2e7b9475f6dc7e2b03ee) chore: Add dfx-core dependency and use it in the SNS CLI to allow it to use the user's DFX identities ([luc-blaeser/ic⁠#2927](https://togithub.com/luc-blaeser/ic/issues/2927))
* [`a5684f43`](https://github.com/luc-blaeser/ic/commit/a5684f435ed20ff13b3c7a4ac85795e898b0800f) chore(IDX): rename secret ([luc-blaeser/ic⁠#3677](https://togithub.com/luc-blaeser/ic/issues/3677))
* [`35f39480`](https://github.com/luc-blaeser/ic/commit/35f39480fe28485694743dc3ef15ac37ea000c74) docs(nns): Resurrect request and response comments. ([luc-blaeser/ic⁠#3671](https://togithub.com/luc-blaeser/ic/issues/3671))
* [`f0058db9`](https://github.com/luc-blaeser/ic/commit/f0058db9a070e5c9949e19322f21e5ad6537b703) feat(EXC-1847): Support for `ic0.subnet_self()` ([luc-blaeser/ic⁠#3637](https://togithub.com/luc-blaeser/ic/issues/3637))
* [`38877d9f`](https://github.com/luc-blaeser/ic/commit/38877d9f9e571b81eb3a2347ea9ed9fc0c408b88) chore(IDX): updated token ([luc-blaeser/ic⁠#3681](https://togithub.com/luc-blaeser/ic/issues/3681))
* [`6bc1943f`](https://github.com/luc-blaeser/ic/commit/6bc1943fc5bcff846959025c5f3f2f7f510489cf) chore(IDX): rename SSH_PRIVATE_KEY ([luc-blaeser/ic⁠#3683](https://togithub.com/luc-blaeser/ic/issues/3683))
* [`3868259d`](https://github.com/luc-blaeser/ic/commit/3868259d16fb345294f510c0e91f46225b5691b9) chore: improve return types use by the assembler ([luc-blaeser/ic⁠#2215](https://togithub.com/luc-blaeser/ic/issues/2215))
* [`8f754dd5`](https://github.com/luc-blaeser/ic/commit/8f754dd53c0f1dc4e3a1b14fde2f6ba708637e82) feat: boundary nodes: add caffeine domain polling ([luc-blaeser/ic⁠#3686](https://togithub.com/luc-blaeser/ic/issues/3686))
* [`59c4b87a`](https://github.com/luc-blaeser/ic/commit/59c4b87a337f1bd52a076c0f3e99acf155b79803) chore(IDX): encrypt bep ([luc-blaeser/ic⁠#3684](https://togithub.com/luc-blaeser/ic/issues/3684))
* [`192b37dd`](https://github.com/luc-blaeser/ic/commit/192b37ddd23a75a4dd195713950df320613dc07e) chore: Update Base Image Refs [2025-01-30-0807] ([luc-blaeser/ic⁠#3680](https://togithub.com/luc-blaeser/ic/issues/3680))
* [`4f0fa467`](https://github.com/luc-blaeser/ic/commit/4f0fa46717d239bf244cab9585c421025aa254a7) docs(EXC-1796): Compilation cache file ownership ([luc-blaeser/ic⁠#3667](https://togithub.com/luc-blaeser/ic/issues/3667))
* [`cfdddeec`](https://github.com/luc-blaeser/ic/commit/cfdddeec51f9807509ecd7ff4f155f01c193fffc) chore(fuzzing): extend syscall whitelist in sandbox fuzzers ([luc-blaeser/ic⁠#3659](https://togithub.com/luc-blaeser/ic/issues/3659))
* [`d128e24c`](https://github.com/luc-blaeser/ic/commit/d128e24cca31648bb6fbd8e9d40be620cc5fe5c3) chore: Fix run-all benchmarks script ([luc-blaeser/ic⁠#3692](https://togithub.com/luc-blaeser/ic/issues/3692))
* [`cf780723`](https://github.com/luc-blaeser/ic/commit/cf780723ba5c1523fbe3247af0580025543fe5fa) chore: Reduce flakiness of state sync system tests ([luc-blaeser/ic⁠#3672](https://togithub.com/luc-blaeser/ic/issues/3672))
* [`c6e0d7e7`](https://github.com/luc-blaeser/ic/commit/c6e0d7e718bea962d4b91595b3ff4e1357a430c9) chore(IDX): simplify x64-darwin output base ([luc-blaeser/ic⁠#3694](https://togithub.com/luc-blaeser/ic/issues/3694))
* [`de17b0d7`](https://github.com/luc-blaeser/ic/commit/de17b0d718d6f279e9da8cd0f1b5de17036a6102) chore(IDX): simplify bes upload ([luc-blaeser/ic⁠#3698](https://togithub.com/luc-blaeser/ic/issues/3698))
* [`2eae439d`](https://github.com/luc-blaeser/ic/commit/2eae439d961a2f75b1a16c7a143b31fe7d95853b) refactor(nns): Delete private neuron flags. ([luc-blaeser/ic⁠#3689](https://togithub.com/luc-blaeser/ic/issues/3689))
* [`056a8e0b`](https://github.com/luc-blaeser/ic/commit/056a8e0b5354c0ff0c108de6faab33de771008e9) refactor(nns-governance): Delete *_voting_power fields from governance.proto. ([luc-blaeser/ic⁠#3643](https://togithub.com/luc-blaeser/ic/issues/3643))
* [`21fa73e0`](https://github.com/luc-blaeser/ic/commit/21fa73e097672e3428f66ec439547ba550305497) test(governance): Move WASM size limits of Governance canisters to Governance directories. ([luc-blaeser/ic⁠#3676](https://togithub.com/luc-blaeser/ic/issues/3676))
* [`bf5d853f`](https://github.com/luc-blaeser/ic/commit/bf5d853feb787d9e0c157914de424ad148e2376e) chore: switch nested tests to use API BN for registration ([luc-blaeser/ic⁠#3658](https://togithub.com/luc-blaeser/ic/issues/3658))
* [`ef595725`](https://github.com/luc-blaeser/ic/commit/ef595725a7cedefd49931b981ba4924ee0d4c1d2) fix: [EXC-1836] Update hook status after update of canister settings ([luc-blaeser/ic⁠#3624](https://togithub.com/luc-blaeser/ic/issues/3624))
* [`15a51647`](https://github.com/luc-blaeser/ic/commit/15a51647e60edd23c65ced5c756baf757b3c001e) feat(crypto): CRP-2599 implement VetKdProtocol trait for CryptoComponent ([luc-blaeser/ic⁠#3565](https://togithub.com/luc-blaeser/ic/issues/3565))
* [`bf093627`](https://github.com/luc-blaeser/ic/commit/bf093627cc6ee33f52537da3673a7687d14b7952) chore(IDX): remove dotboostrap ([luc-blaeser/ic⁠#3704](https://togithub.com/luc-blaeser/ic/issues/3704))
* [`41617561`](https://github.com/luc-blaeser/ic/commit/416175614a0c802b317810a55b94c1cc93025307) chore(IDX): track ict changes with bazel ([luc-blaeser/ic⁠#3705](https://togithub.com/luc-blaeser/ic/issues/3705))
* [`eb4a6d5a`](https://github.com/luc-blaeser/ic/commit/eb4a6d5a853e67ee8d5023a0b8d1cc8036f0c112) fix: introduce backpressure from consensus to the networking layer by using bounded channels ([luc-blaeser/ic⁠#2340](https://togithub.com/luc-blaeser/ic/issues/2340))
* [`cde70711`](https://github.com/luc-blaeser/ic/commit/cde707113a91b5ad7db9bf601228a1fd955a0ac0) refactor: Consolidate how system state modifications are extracted from the System API ([luc-blaeser/ic⁠#3706](https://togithub.com/luc-blaeser/ic/issues/3706))
* [`61639eaa`](https://github.com/luc-blaeser/ic/commit/61639eaa4422184dc3deb78e50cb07698dde3569) test(crypto): CRP-2599 add smoke test for VetKdProtocol impl ([luc-blaeser/ic⁠#3649](https://togithub.com/luc-blaeser/ic/issues/3649))
* [`4d986969`](https://github.com/luc-blaeser/ic/commit/4d9869693b6acf327b887f19584b090e915d6dcf) test(nns/sns): Introduce NNS suite builder for PocketIc ([luc-blaeser/ic⁠#3666](https://togithub.com/luc-blaeser/ic/issues/3666))
* [`d3a3f074`](https://github.com/luc-blaeser/ic/commit/d3a3f074bc175397f6b48e89f0f195eca4fcfc2a) refactor(nns): More strictly represent neuron visibility. ([luc-blaeser/ic⁠#3697](https://togithub.com/luc-blaeser/ic/issues/3697))
* [`f4450ebb`](https://github.com/luc-blaeser/ic/commit/f4450ebb1c6492ae7dd507141ccc58907fe122c6) refactor(sns-w): Migrate from dfn_core to ic_cdk ([luc-blaeser/ic⁠#3662](https://togithub.com/luc-blaeser/ic/issues/3662))
* [`340f17da`](https://github.com/luc-blaeser/ic/commit/340f17da6cff9083b61582a2a9d50e60b9760716) test(sns-cli): Port UpgradeSnsControlledCanister with Large Wasm integration test to use SNS CLI with PocketIc ([luc-blaeser/ic⁠#3696](https://togithub.com/luc-blaeser/ic/issues/3696))
* [`c5e098e8`](https://github.com/luc-blaeser/ic/commit/c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800) feat(nns/sns): Add allowed_viewers variant case into canister_status responses ([luc-blaeser/ic⁠#3660](https://togithub.com/luc-blaeser/ic/issues/3660))
* [`a9c6652c`](https://github.com/luc-blaeser/ic/commit/a9c6652c43da158af84edef304054c46b589c9ab) chore: Fix some typos in MR code ([luc-blaeser/ic⁠#3719](https://togithub.com/luc-blaeser/ic/issues/3719))
* [`24b22b87`](https://github.com/luc-blaeser/ic/commit/24b22b87c572237d742448cc6a94ac9edf7e1b25) feat(pocket-ic): support custom blockmaker metrics at each round ([luc-blaeser/ic⁠#3685](https://togithub.com/luc-blaeser/ic/issues/3685))
* [`eb50e952`](https://github.com/luc-blaeser/ic/commit/eb50e95272d36b16f52a98ecfdf841a9445670d5) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3725](https://togithub.com/luc-blaeser/ic/issues/3725))
* [`dfcc5916`](https://github.com/luc-blaeser/ic/commit/dfcc5916eb48c416a70d8a858dcc1d736e90dfcf) chore(IDX): eng-consensus-prs ([luc-blaeser/ic⁠#3724](https://togithub.com/luc-blaeser/ic/issues/3724))
* [`8ac49d3d`](https://github.com/luc-blaeser/ic/commit/8ac49d3dc9f3c0e82615db0cabbd148583517804) feat: Add `VetKdProtocol` to `Crypto` trait ([luc-blaeser/ic⁠#3726](https://togithub.com/luc-blaeser/ic/issues/3726))
* [`86edaa29`](https://github.com/luc-blaeser/ic/commit/86edaa290f0105f45f769d3f98576e7ff52349a7) chore: bump openssl to 0.10.70 ([luc-blaeser/ic⁠#3723](https://togithub.com/luc-blaeser/ic/issues/3723))
* [`b0e7dcd8`](https://github.com/luc-blaeser/ic/commit/b0e7dcd8eed2933541253b613042c22f702c0d1d) refactor: Remove unused print in execution tests ([luc-blaeser/ic⁠#3729](https://togithub.com/luc-blaeser/ic/issues/3729))
* [`78d46cb9`](https://github.com/luc-blaeser/ic/commit/78d46cb9e623ec5713773230084091580c78db18) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3730](https://togithub.com/luc-blaeser/ic/issues/3730))
* [`773b035f`](https://github.com/luc-blaeser/ic/commit/773b035f28bcd7ebf1fec911e7349733146a661e) fix: EXC-1838 Run hook after CanisterWasmMemoryLimitExceeded error is fixed ([luc-blaeser/ic⁠#3631](https://togithub.com/luc-blaeser/ic/issues/3631))
* [`a9732559`](https://github.com/luc-blaeser/ic/commit/a97325591de291e204091e65737832e5e853db32) feat(crypto): CRP-2687 make some conversions to KeyId infallible ([luc-blaeser/ic⁠#3718](https://togithub.com/luc-blaeser/ic/issues/3718))
* [`9fcffc7f`](https://github.com/luc-blaeser/ic/commit/9fcffc7fc9d264827ad65972bb4413a09cb4cad0) feat: enable testnet4 support in the bitcoin adapter ([luc-blaeser/ic⁠#3267](https://togithub.com/luc-blaeser/ic/issues/3267))
* [`084e5acb`](https://github.com/luc-blaeser/ic/commit/084e5acbac97dbc8e74100c6485f7e320fa45a75) chore: remove reference to a custom jsonrpc version in Cargo.toml ([luc-blaeser/ic⁠#3722](https://togithub.com/luc-blaeser/ic/issues/3722))
* [`ec6e895a`](https://github.com/luc-blaeser/ic/commit/ec6e895aef012ef27c1866db1e02d75f44a3343f) refactor(registry): Migrate Registry to use MemoryManager instead of raw stable memory ([luc-blaeser/ic⁠#3700](https://togithub.com/luc-blaeser/ic/issues/3700))
* [`6feb282c`](https://github.com/luc-blaeser/ic/commit/6feb282c01a18703e58e36f32e358cc46091237e) refactor(nns-tools): Turn release-runscript to clap-powered CLI ([luc-blaeser/ic⁠#3712](https://togithub.com/luc-blaeser/ic/issues/3712))
* [`f53fd041`](https://github.com/luc-blaeser/ic/commit/f53fd0418d668610e44ba2c0055897301d85d217) feat(nns-tools): Release runscript automatically grabs the latest commit ([luc-blaeser/ic⁠#3713](https://togithub.com/luc-blaeser/ic/issues/3713))
* [`bc693862`](https://github.com/luc-blaeser/ic/commit/bc693862c1ff0d7bc4a2dcc2f560a175a2080f7b) feat(nns-tools): Release runscript asks you which canisters to release ([luc-blaeser/ic⁠#3714](https://togithub.com/luc-blaeser/ic/issues/3714))
* [`5bea1df3`](https://github.com/luc-blaeser/ic/commit/5bea1df3802fce59117c86470a72f4e81316f5d3) chore(governance): Remove unused types ([luc-blaeser/ic⁠#3711](https://togithub.com/luc-blaeser/ic/issues/3711))
* [`01fcadfa`](https://github.com/luc-blaeser/ic/commit/01fcadfa693a1a07e7ec1970115cfc40b3c36947) feat(nns/sns): Add query stats to canister status ([luc-blaeser/ic⁠#3710](https://togithub.com/luc-blaeser/ic/issues/3710))
* [`796a9027`](https://github.com/luc-blaeser/ic/commit/796a90275207e27f6c22226be2b5b3ffe726694e) feat(nns): Bump neurons limit ([luc-blaeser/ic⁠#3739](https://togithub.com/luc-blaeser/ic/issues/3739))
* [`156e27ae`](https://github.com/luc-blaeser/ic/commit/156e27ae426aaf9c3b7b6813e31f1018e76c3ebe) docs(nns): Created entry in Governance's CHANGELOG for proposal 134777 (Jan 10). ([luc-blaeser/ic⁠#3732](https://togithub.com/luc-blaeser/ic/issues/3732))
* [`74e1bd5c`](https://github.com/luc-blaeser/ic/commit/74e1bd5ced33237b633768a8b735cba6397e5317) feat(nns-tools): Release runscript generates proposal texts for you ([luc-blaeser/ic⁠#3715](https://togithub.com/luc-blaeser/ic/issues/3715))
* [`2dd2ccee`](https://github.com/luc-blaeser/ic/commit/2dd2ccee9679aaf23cf57daaa703c46f7962c29f) feat(nns-tools): Release runscript submits proposals for you ([luc-blaeser/ic⁠#3716](https://togithub.com/luc-blaeser/ic/issues/3716))
* [`65a50e4b`](https://github.com/luc-blaeser/ic/commit/65a50e4bbfc0eabf9117f18fe9fe8818cb237b89) feat(nns-tools): Release runscript generates forum posts ([luc-blaeser/ic⁠#3717](https://togithub.com/luc-blaeser/ic/issues/3717))
* [`30b3069b`](https://github.com/luc-blaeser/ic/commit/30b3069b8cf9cbbb3cd4063840aefdf254b75075) chore: allow automatically replacing a node even if it is active as an API BN ([luc-blaeser/ic⁠#3707](https://togithub.com/luc-blaeser/ic/issues/3707))
* [`5703c438`](https://github.com/luc-blaeser/ic/commit/5703c4382fb7d71a9a4636b55eeade127201a4e1) fix(custom domains): bump cloudflare-rs due to CF API changes ([luc-blaeser/ic⁠#3744](https://togithub.com/luc-blaeser/ic/issues/3744))
* [`50bb4d7e`](https://github.com/luc-blaeser/ic/commit/50bb4d7e8b88c34f2e265e6a66a2345b35a11983) chore(boundary): `salt_sharing` canister implementation ([luc-blaeser/ic⁠#3650](https://togithub.com/luc-blaeser/ic/issues/3650))
* [`72887511`](https://github.com/luc-blaeser/ic/commit/728875118c5cb0199d5219821c89da6217278734) feat(metrics-proxy): add rules for `mr_blocks_proposed_total` and `mr_blocks_not_proposed_total` ([luc-blaeser/ic⁠#3750](https://togithub.com/luc-blaeser/ic/issues/3750))
* [`f41794f7`](https://github.com/luc-blaeser/ic/commit/f41794f7281d6d31764f18f888356ba961ddb1e7) feat(governance-tools): Added TODOs to generated "Features & Fixtures" section. ([luc-blaeser/ic⁠#3758](https://togithub.com/luc-blaeser/ic/issues/3758))
* [`3afdf372`](https://github.com/luc-blaeser/ic/commit/3afdf372a91d33c3fd0fde17342c263d0d94634a) feat(IC-1579): Governance: TLA Codelink for refresh_neuron ([luc-blaeser/ic⁠#3547](https://togithub.com/luc-blaeser/ic/issues/3547))
* [`fd7cd5a1`](https://github.com/luc-blaeser/ic/commit/fd7cd5a125f0be47ed3b758190f8a1c9fa9d7c53) chore(nns): Modify the comment on `include_empty_neurons_readable_by_caller` ([luc-blaeser/ic⁠#3740](https://togithub.com/luc-blaeser/ic/issues/3740))
* [`f9a5f41d`](https://github.com/luc-blaeser/ic/commit/f9a5f41d8becf1664db9bc2cccde5914a9d930d6) fix(nns/sns): Minor fix for release script ([luc-blaeser/ic⁠#3764](https://togithub.com/luc-blaeser/ic/issues/3764))
* [`22eda91d`](https://github.com/luc-blaeser/ic/commit/22eda91d66f784e5781f185a35b657a8712d84ef) fix: don't clone blocks during `get_successors` ([luc-blaeser/ic⁠#3687](https://togithub.com/luc-blaeser/ic/issues/3687))
* [`b7a0b3d3`](https://github.com/luc-blaeser/ic/commit/b7a0b3d3b896cdaabc06c0ee6cd13cd54c939e67) feat: Implement DTS for replicated queries ([luc-blaeser/ic⁠#3557](https://togithub.com/luc-blaeser/ic/issues/3557))
* [`baee7335`](https://github.com/luc-blaeser/ic/commit/baee733590c3b41781dca5fba0a2a0d1c234f871) feat: re-enable hashes-in-blocks feature on all subnets ([luc-blaeser/ic⁠#3562](https://togithub.com/luc-blaeser/ic/issues/3562))
* [`f6d7d681`](https://github.com/luc-blaeser/ic/commit/f6d7d681e0caddd665911fc40bdc41aafec35074) refactor(nns): Follow up items from PR 2880. ([luc-blaeser/ic⁠#3751](https://togithub.com/luc-blaeser/ic/issues/3751))
* [`cdb473bb`](https://github.com/luc-blaeser/ic/commit/cdb473bbf9e8b24ba19a114aff59ac176f2419c3) chore: [EXC-1880] Test hook behavior across upgrade ([luc-blaeser/ic⁠#3760](https://togithub.com/luc-blaeser/ic/issues/3760))
* [`134fbac8`](https://github.com/luc-blaeser/ic/commit/134fbac8853d535e8483cbd5323ede4fa3706b92) docs(nns): Follow up on PR 2339 ([luc-blaeser/ic⁠#3771](https://togithub.com/luc-blaeser/ic/issues/3771))
* [`152a69a3`](https://github.com/luc-blaeser/ic/commit/152a69a39163e0f773df68f710e7b0763e0f2b7a) fix: EXC-1878: Use pages for tracking changes ([luc-blaeser/ic⁠#3776](https://togithub.com/luc-blaeser/ic/issues/3776))
* [`8a5bdfd4`](https://github.com/luc-blaeser/ic/commit/8a5bdfd43bf3c0207900f0c473e5e8633f294b17) chore(crypto): CRP-2692 Move ed25519 crate to packages ([luc-blaeser/ic⁠#3770](https://togithub.com/luc-blaeser/ic/issues/3770))
* [`2608017f`](https://github.com/luc-blaeser/ic/commit/2608017f2fb739af350b9495e9fc9f9b74a41ce2) fix: reduce the bitcoin adapter maximum response size to 1MB for testnet4 ([luc-blaeser/ic⁠#3769](https://togithub.com/luc-blaeser/ic/issues/3769))
* [`8c3920c1`](https://github.com/luc-blaeser/ic/commit/8c3920c1495624dd8a468de4a24f2e72e68d7224) chore(nns): Deleted backfilling voting_power_refreshed_timestamp. ([luc-blaeser/ic⁠#3780](https://togithub.com/luc-blaeser/ic/issues/3780))
* [`fbe09a67`](https://github.com/luc-blaeser/ic/commit/fbe09a6727fdfeca6e3533c8c3955bc7c0c74d58) fix: increase the number of bitcoin in flight requests to 1000. ([luc-blaeser/ic⁠#3768](https://togithub.com/luc-blaeser/ic/issues/3768))
* [`3fd26f17`](https://github.com/luc-blaeser/ic/commit/3fd26f17ac9cdb8378624a34be4b80740a1101cd) chore: Remove old storage logic ([luc-blaeser/ic⁠#3708](https://togithub.com/luc-blaeser/ic/issues/3708))
* [`1f525daa`](https://github.com/luc-blaeser/ic/commit/1f525daa8521b1dd89385d95061b5d72635d1bb2) perf(MR): Look up `SubnetIds` from a `BTreeSet` instead of from a `Vec` ([luc-blaeser/ic⁠#3779](https://togithub.com/luc-blaeser/ic/issues/3779))
* [`28c8a072`](https://github.com/luc-blaeser/ic/commit/28c8a072a5941ac5e01d681aa897a0781a3460e3) chore(boundary): add metrics and access control to `salt_sharing` canister ([luc-blaeser/ic⁠#3762](https://togithub.com/luc-blaeser/ic/issues/3762))
* [`052e6116`](https://github.com/luc-blaeser/ic/commit/052e61167df6392287348fa40ac3b6a482c997a3) chore: Update Mainnet IC revisions canisters file and fix ICP ledger tests ([luc-blaeser/ic⁠#3763](https://togithub.com/luc-blaeser/ic/issues/3763))
* [`9dd1f0ce`](https://github.com/luc-blaeser/ic/commit/9dd1f0ceb00ea5c58fefa1c6a2e8f556c73a52cb) chore(nns): Deleted set_initial_voting_power_economics. ([luc-blaeser/ic⁠#3778](https://togithub.com/luc-blaeser/ic/issues/3778))
* [`af844b2c`](https://github.com/luc-blaeser/ic/commit/af844b2cf5153062c5f9cc8d9b645dfefcc79aae) revert: "chore(IDX): bazel-test-all ln1" ([luc-blaeser/ic⁠#3788](https://togithub.com/luc-blaeser/ic/issues/3788))
* [`acb62c3e`](https://github.com/luc-blaeser/ic/commit/acb62c3efee5d15c0d6a4f307d845e60e88032ff) docs(nns): Added a TODO with Jira ticket ID about the demise of refresh neuron flags. ([luc-blaeser/ic⁠#3783](https://togithub.com/luc-blaeser/ic/issues/3783))
* [`89702c7d`](https://github.com/luc-blaeser/ic/commit/89702c7de40af1a6c816a7c8562655f21dec964a) chore: Bump canbench to 0.1.9 ([luc-blaeser/ic⁠#3765](https://togithub.com/luc-blaeser/ic/issues/3765))
* [`54b7f0e7`](https://github.com/luc-blaeser/ic/commit/54b7f0e7fb285e932bdee270a49ab403ccb82db2) refactor: Add memory usage checks when loading a snapshot for consistency ([luc-blaeser/ic⁠#3789](https://togithub.com/luc-blaeser/ic/issues/3789))
* [`413a393d`](https://github.com/luc-blaeser/ic/commit/413a393dd6ed7454ee459857d28591b336ac69e8) feat(nns): list_neurons supports querying by subaccount ([luc-blaeser/ic⁠#3592](https://togithub.com/luc-blaeser/ic/issues/3592))
* [`d343919b`](https://github.com/luc-blaeser/ic/commit/d343919be6abd5d9349a99f82f7706751b060df6) feat(sns-cli): Cleanup store canister after upgrading an SNS-controlled canister ([luc-blaeser/ic⁠#3738](https://togithub.com/luc-blaeser/ic/issues/3738))
* [`b803bf02`](https://github.com/luc-blaeser/ic/commit/b803bf020c47dfb2d9651ff11e60143e075fc773) feat(registry): Obsolete legacy ECDSA configs ([luc-blaeser/ic⁠#3709](https://togithub.com/luc-blaeser/ic/issues/3709))
* [`03230898`](https://github.com/luc-blaeser/ic/commit/03230898e8178b16c929c64f0b44f4214c379a39) refactor(nns): Follow up on PR 3090 ([luc-blaeser/ic⁠#3773](https://togithub.com/luc-blaeser/ic/issues/3773))
* [`3918cafc`](https://github.com/luc-blaeser/ic/commit/3918cafc6175a90cabe139830e983f1944f87483) fix(sns): Correctly translate `ManageLedgerParameters` into `LedgerUpgradeArgs` ([luc-blaeser/ic⁠#3790](https://togithub.com/luc-blaeser/ic/issues/3790))
* [`fa247dff`](https://github.com/luc-blaeser/ic/commit/fa247dff1117223cec58c9d0a2e0f9aaeae70548) chore(nervous-system): Release on 2025-02-03 ([luc-blaeser/ic⁠#3735](https://togithub.com/luc-blaeser/ic/issues/3735))
* [`a21f470a`](https://github.com/luc-blaeser/ic/commit/a21f470a2530e2d47c3efe9b768b237147191e83) feat(rosetta): Support pagination for Rosetta API list_neurons ([luc-blaeser/ic⁠#3609](https://togithub.com/luc-blaeser/ic/issues/3609))
* [`7cd54f49`](https://github.com/luc-blaeser/ic/commit/7cd54f49642ddd0b5491a39783b562fe425b6105) perf: Add low-level memory ops benchmark ([luc-blaeser/ic⁠#3551](https://togithub.com/luc-blaeser/ic/issues/3551))
* [`36c6abf7`](https://github.com/luc-blaeser/ic/commit/36c6abf7e8438cb9ca8012998d4332dd4336d1a3) perf(nns): Set NNS Governance governance noise threshold to 5% ([luc-blaeser/ic⁠#3766](https://togithub.com/luc-blaeser/ic/issues/3766))
* [`5acf43fb`](https://github.com/luc-blaeser/ic/commit/5acf43fb09d272b24b458df0370658fb9e5ebf60) feat(sns): Do not store logos in SNS initialization parameters to save space ([luc-blaeser/ic⁠#3786](https://togithub.com/luc-blaeser/ic/issues/3786))
* [`0c343040`](https://github.com/luc-blaeser/ic/commit/0c343040da20605fa92dbe4656e50b163959e74e) chore(ckbtc): Separate event types for mainnet and testnet logs ([luc-blaeser/ic⁠#3720](https://togithub.com/luc-blaeser/ic/issues/3720))
* [`1f2dda03`](https://github.com/luc-blaeser/ic/commit/1f2dda031fa135e8abb144f39c2c38b76c3ee778) feat(nervous-system): runscript partially automates scheduling the votes ([luc-blaeser/ic⁠#3791](https://togithub.com/luc-blaeser/ic/issues/3791))
* [`0fe05a2b`](https://github.com/luc-blaeser/ic/commit/0fe05a2bfc2da01921501e40564c192cd9863c1f) fix(nervous-system): release runscript doesn't prompt you to update mainnet-canisters.json ([luc-blaeser/ic⁠#3792](https://togithub.com/luc-blaeser/ic/issues/3792))
* [`ec2bb65f`](https://github.com/luc-blaeser/ic/commit/ec2bb65fe0abb191c793d7c13ddaca57a2e383bd) refactor(nervous-system): use anyhow in release runscript ([luc-blaeser/ic⁠#3793](https://togithub.com/luc-blaeser/ic/issues/3793))
* [`ad7c9527`](https://github.com/luc-blaeser/ic/commit/ad7c9527fc28b09166a308c3e66027b03cadfab8) refactor(nervous-system): add "press enter to continue" helper ([luc-blaeser/ic⁠#3794](https://togithub.com/luc-blaeser/ic/issues/3794))
* [`a49a6dd4`](https://github.com/luc-blaeser/ic/commit/a49a6dd4a864fad9aa685c8275e10ef71690fdcf) fix(crypto): CRP-2692 Fix ic-ed25519 crate attributes ([luc-blaeser/ic⁠#3785](https://togithub.com/luc-blaeser/ic/issues/3785))
* [`8dc1b0d2`](https://github.com/luc-blaeser/ic/commit/8dc1b0d2537adba49b21ab71ceab1095ec7e61af) chore(ckbtc): add check_transaction_query method to Bitcoin checker ([luc-blaeser/ic⁠#3454](https://togithub.com/luc-blaeser/ic/issues/3454))
* [`877f6502`](https://github.com/luc-blaeser/ic/commit/877f6502b2a9c2013c4cd9ce6c0e25c4b0c654af) refactor(nervous-system-runscript): move utilities to utils.rs ([luc-blaeser/ic⁠#3796](https://togithub.com/luc-blaeser/ic/issues/3796))
* [`c8a571ca`](https://github.com/luc-blaeser/ic/commit/c8a571caab15dc536ec78c16f3e8d47c56c58d99) chore(ic-boundary): disable bouncer ([luc-blaeser/ic⁠#3755](https://togithub.com/luc-blaeser/ic/issues/3755))
* [`90a1b566`](https://github.com/luc-blaeser/ic/commit/90a1b566e4514707a196e6fe8daf26ddf1bb175b) fix: move metrics to all messages ([luc-blaeser/ic⁠#3690](https://togithub.com/luc-blaeser/ic/issues/3690))
* [`0206830a`](https://github.com/luc-blaeser/ic/commit/0206830a658fc51c35d9ccb005e86a22adf3b5be) test(btc): Port ckBTC tests from legacy ECDSA to chain key Registry API ([luc-blaeser/ic⁠#3820](https://togithub.com/luc-blaeser/ic/issues/3820))
* [`5ee8dcf3`](https://github.com/luc-blaeser/ic/commit/5ee8dcf34f26c12defcff51c2f5737214611bccc) fix: revert EXC-1838 Run hook after CanisterWasmMemoryLimitExceeded error is fixed ([luc-blaeser/ic⁠#3850](https://togithub.com/luc-blaeser/ic/issues/3850))
* [`ec8add50`](https://github.com/luc-blaeser/ic/commit/ec8add504e63f97a2bc7f470d1b64dca550235af) tweaks
mergify bot pushed a commit that referenced this pull request Mar 16, 2025
## Changelog for ic:
Branch: luc/latest-drun
Commits: [luc-blaeser/[email protected]](https://github.com/luc-blaeser/ic/compare/01c8dfda47126bb5f688302e0161f17c2c0cfe6f...ec8add504e63f97a2bc7f470d1b64dca550235af)

* [`f367c148`](https://github.com/luc-blaeser/ic/commit/f367c148b524ea125100cac343f587e7b39f29d9) chore: group the creation of bouncers similar to artifact pools ([luc-blaeser/ic⁠#3474](https://togithub.com/luc-blaeser/ic/issues/3474))
* [`841793d5`](https://github.com/luc-blaeser/ic/commit/841793d5472f59a35a60870097674b5ea3b1478b) chore: add MetricsAssert test utility ([luc-blaeser/ic⁠#3375](https://togithub.com/luc-blaeser/ic/issues/3375))
* [`197f983b`](https://github.com/luc-blaeser/ic/commit/197f983ba2e58df1d15c6d24e3de12a1cd6c0e84) chore(system-tests-k8s): use --local_test_jobs ([luc-blaeser/ic⁠#3519](https://togithub.com/luc-blaeser/ic/issues/3519))
* [`13ed4b9e`](https://github.com/luc-blaeser/ic/commit/13ed4b9eaa83dab238adf02fd208eac5ce44f158) fix(k8s-system-tests): containerDisk for boundary node ([luc-blaeser/ic⁠#3525](https://togithub.com/luc-blaeser/ic/issues/3525))
* [`f53c9f31`](https://github.com/luc-blaeser/ic/commit/f53c9f317f5eecd969fb393e3a4006df7d8e8151) chore(IDX): remove docker-login ([luc-blaeser/ic⁠#2386](https://togithub.com/luc-blaeser/ic/issues/2386))
* [`4f2ccdb0`](https://github.com/luc-blaeser/ic/commit/4f2ccdb0287d313fe5ac69dc8a45a75f350cd306) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3526](https://togithub.com/luc-blaeser/ic/issues/3526))
* [`bc3cd63c`](https://github.com/luc-blaeser/ic/commit/bc3cd63cab53fa833b10e750ad4ac7b8ab83fa24) chore: Restore Cargo.lock ([luc-blaeser/ic⁠#3532](https://togithub.com/luc-blaeser/ic/issues/3532))
* [`91e41832`](https://github.com/luc-blaeser/ic/commit/91e41832c4ae5ce43471f8a8f874d67e1de3fc66) fix(IDX): use llvm-clang on Intel macOS ([luc-blaeser/ic⁠#3530](https://togithub.com/luc-blaeser/ic/issues/3530))
* [`fc278709`](https://github.com/luc-blaeser/ic/commit/fc2787097c765498ca80e9497c3931ada0ec8bd4) chore: bump rust to 1.84 ([luc-blaeser/ic⁠#3469](https://togithub.com/luc-blaeser/ic/issues/3469))
* [`0126ae64`](https://github.com/luc-blaeser/ic/commit/0126ae64c1b394db1794d5fb58113e64a25a8ae9) chore: Update Base Image Refs [2025-01-21-0151] ([luc-blaeser/ic⁠#3537](https://togithub.com/luc-blaeser/ic/issues/3537))
* [`be8de198`](https://github.com/luc-blaeser/ic/commit/be8de198112294abd032ea4be8f37cfb6492bb9e) fix(ICRC_Ledger): FI-1645: use default deserialization value of 0 for ledger state's ledger_version ([luc-blaeser/ic⁠#3520](https://togithub.com/luc-blaeser/ic/issues/3520))
* [`83c1bbf7`](https://github.com/luc-blaeser/ic/commit/83c1bbf752b879cc5669bc6e66f0c1b529c234e2) test(ICP_Rosetta): FI-1646: Address ICP Rosetta integration tests flakiness ([luc-blaeser/ic⁠#3534](https://togithub.com/luc-blaeser/ic/issues/3534))
* [`8b3296e0`](https://github.com/luc-blaeser/ic/commit/8b3296e0fbecc20e487deb4663c01ed8f3b5059c) chore(RUN-1012): infrastructure to increase Wasm64 heap memory size ([luc-blaeser/ic⁠#3385](https://togithub.com/luc-blaeser/ic/issues/3385))
* [`69988ae4`](https://github.com/luc-blaeser/ic/commit/69988ae40e4cc0db7ef758da7dd5c0606075e926) feat(ICRC_Ledger): FI-1600: Download the latest ICRC ledger release instead of tip of master ([luc-blaeser/ic⁠#3538](https://togithub.com/luc-blaeser/ic/issues/3538))
* [`72ed89c0`](https://github.com/luc-blaeser/ic/commit/72ed89c0b8a7053ca4e00a3b06e1f1618ffb15e7) chore: Creating a unified mechanism to generate blocklists for ckBTC and ckETH ([luc-blaeser/ic⁠#3401](https://togithub.com/luc-blaeser/ic/issues/3401))
* [`0cd00752`](https://github.com/luc-blaeser/ic/commit/0cd0075240d4b72789c3268f06d0a151338317bf) test(crypto): lower `canister_sig_verification_cache_test` test params ([luc-blaeser/ic⁠#3528](https://togithub.com/luc-blaeser/ic/issues/3528))
* [`6b09303d`](https://github.com/luc-blaeser/ic/commit/6b09303dadb4ef0461fb541b65a7138b187669d8) refactor: CON-1434 Serialize current and next transcripts into `pb::NiDkgTranscript` ([luc-blaeser/ic⁠#3039](https://togithub.com/luc-blaeser/ic/issues/3039))
* [`0b30ddf6`](https://github.com/luc-blaeser/ic/commit/0b30ddf64b77adf41ac0404abc5b67874998c6f9) chore(system-tests-k8s): misc changes ([luc-blaeser/ic⁠#3541](https://togithub.com/luc-blaeser/ic/issues/3541))
* [`82576adb`](https://github.com/luc-blaeser/ic/commit/82576adb0eb2f5ec740bf85e885d111d730db9a7) fix: Correct the value returned for replicated vs non replicated execution in system api ([luc-blaeser/ic⁠#3540](https://togithub.com/luc-blaeser/ic/issues/3540))
* [`40b9f6c5`](https://github.com/luc-blaeser/ic/commit/40b9f6c5920f1c31931c3e38ef4c13f0b68210d2) fix: [EXC-1842] Charge for ic0_cycles_burn128 ([luc-blaeser/ic⁠#3542](https://togithub.com/luc-blaeser/ic/issues/3542))
* [`ad3140bb`](https://github.com/luc-blaeser/ic/commit/ad3140bb3444ea0963617a756d5f657d1e45d560) fix: Make mint_cycles128 test more robust ([luc-blaeser/ic⁠#3543](https://togithub.com/luc-blaeser/ic/issues/3543))
* [`d37cb7b1`](https://github.com/luc-blaeser/ic/commit/d37cb7b1e4eb9ab5ca051251f8efc9a40d5fef46) feat(governance-tools): Made the output from add-release-to-changelog a little better. ([luc-blaeser/ic⁠#3536](https://togithub.com/luc-blaeser/ic/issues/3536))
* [`834bead3`](https://github.com/luc-blaeser/ic/commit/834bead31ee029375b5c458f6fdac3c04e70437e) refactor(consensus): Refactor code in NiDkg to prepare VetKD implementation ([luc-blaeser/ic⁠#3522](https://togithub.com/luc-blaeser/ic/issues/3522))
* [`9e2784a0`](https://github.com/luc-blaeser/ic/commit/9e2784a0d668048a457f90c593269161e7cbb2a2) test(Consensus): Add a stub test for vetkd ([luc-blaeser/ic⁠#3524](https://togithub.com/luc-blaeser/ic/issues/3524))
* [`744f4683`](https://github.com/luc-blaeser/ic/commit/744f4683df2ca79f5f537b3db48a1c03d4ff084e) perf(nns): Add a benchmark for listing proposals ([luc-blaeser/ic⁠#3489](https://togithub.com/luc-blaeser/ic/issues/3489))
* [`f52dbf1b`](https://github.com/luc-blaeser/ic/commit/f52dbf1b84b184c884dc9e374453b5d1c8e62f47) chore(ckbtc): Remove empty ReceivedUtxos events from event log ([luc-blaeser/ic⁠#3434](https://togithub.com/luc-blaeser/ic/issues/3434))
* [`49e2de0d`](https://github.com/luc-blaeser/ic/commit/49e2de0d03a57ca116dc3b9c2c2eab25598cab9e) fix: EXC-1815: Fix sandbox processes metric ([luc-blaeser/ic⁠#3527](https://togithub.com/luc-blaeser/ic/issues/3527))
* [`225b046a`](https://github.com/luc-blaeser/ic/commit/225b046aad2586490892532950b3d580cbb7854e) chore(cketh/ckerc20): Replace rpc.sepolia.org by Ankr ([luc-blaeser/ic⁠#3523](https://togithub.com/luc-blaeser/ic/issues/3523))
* [`178aceab`](https://github.com/luc-blaeser/ic/commit/178aceab8793f1aedff9ade639a97e4b3b273669) feat: Allow accepting and burning cycles in replicated queries ([luc-blaeser/ic⁠#363](https://togithub.com/luc-blaeser/ic/issues/363))
* [`00f10afc`](https://github.com/luc-blaeser/ic/commit/00f10afcfa8c2cdc2aa26c660c4eabf7dfcc54cf) chore: group together the abortable channels and move the consensus event loops at the end ([luc-blaeser/ic⁠#3518](https://togithub.com/luc-blaeser/ic/issues/3518))
* [`7f9687b7`](https://github.com/luc-blaeser/ic/commit/7f9687b7a1d3cd9e045d902c76d455cabf847f9f) fix(EXC-1843): Make reservation test robust to costs ([luc-blaeser/ic⁠#3539](https://togithub.com/luc-blaeser/ic/issues/3539))
* [`6d3c4888`](https://github.com/luc-blaeser/ic/commit/6d3c4888925ac31e3ed24a7adf8d3a0e81a4443c) fix(consensus): fix the `hashes-in-blocks` feature implementation ([luc-blaeser/ic⁠#3529](https://togithub.com/luc-blaeser/ic/issues/3529))
* [`5993fe22`](https://github.com/luc-blaeser/ic/commit/5993fe22ce7c3fe4b433ef80f23336a0ccab89ec) refactor: Rename SystemStateChanges to SystemStateModifications for consistency ([luc-blaeser/ic⁠#3555](https://togithub.com/luc-blaeser/ic/issues/3555))
* [`367ab737`](https://github.com/luc-blaeser/ic/commit/367ab73788ed95af643e057a79bd2f98e1f3eee2) refactor(nns): Deleted ListNeurons from NNS governance.proto. ([luc-blaeser/ic⁠#3546](https://togithub.com/luc-blaeser/ic/issues/3546))
* [`a2d812c7`](https://github.com/luc-blaeser/ic/commit/a2d812c75a4a8e0c62437fa36c0b4cd5ae183813) chore(system-tests-k8s): console logs ([luc-blaeser/ic⁠#3558](https://togithub.com/luc-blaeser/ic/issues/3558))
* [`14ba37e5`](https://github.com/luc-blaeser/ic/commit/14ba37e5c818c5548d323ba58b94de160d2f71b0) feat: CON-1422 Introduce `VetKdPayload` type ([luc-blaeser/ic⁠#3458](https://togithub.com/luc-blaeser/ic/issues/3458))
* [`a4dd6388`](https://github.com/luc-blaeser/ic/commit/a4dd63884a9bf2e421c3162f298bbe5abe2c3ec3) refactor: rename ssh services ([luc-blaeser/ic⁠#3548](https://togithub.com/luc-blaeser/ic/issues/3548))
* [`92201728`](https://github.com/luc-blaeser/ic/commit/922017281e3b136183cc03e66b279ca0db4e8951) refactor(nns): Delete ManageNeuronResponse from governance.proto. ([luc-blaeser/ic⁠#3573](https://togithub.com/luc-blaeser/ic/issues/3573))
* [`1edf4a1a`](https://github.com/luc-blaeser/ic/commit/1edf4a1af496ebf5423a06220d601739cb252053) feat(sns): Automatically advance SNS target version upon opt-in ([luc-blaeser/ic⁠#3119](https://togithub.com/luc-blaeser/ic/issues/3119))
* [`01e83df0`](https://github.com/luc-blaeser/ic/commit/01e83df09153acc688b97ccbea45e829163c2a35) feat(nns): Avoid recomputing wasm/arg hashes during read operations ([luc-blaeser/ic⁠#3490](https://togithub.com/luc-blaeser/ic/issues/3490))
* [`550209a7`](https://github.com/luc-blaeser/ic/commit/550209a750be0575cc4afff5e23c04b03048c08e) chore: delete deploy-update-ssh-account-keys ([luc-blaeser/ic⁠#3549](https://togithub.com/luc-blaeser/ic/issues/3549))
* [`f3a8e93d`](https://github.com/luc-blaeser/ic/commit/f3a8e93df6c77028a81cf080bdac97a8faab7c01) chore: Update Base Image Refs [2025-01-23-0147] ([luc-blaeser/ic⁠#3575](https://togithub.com/luc-blaeser/ic/issues/3575))
* [`026eda8b`](https://github.com/luc-blaeser/ic/commit/026eda8b9a5b2fdfe5a65773a02873912cd5e29d) chore: Bump Candid to 0.10.12 ([luc-blaeser/ic⁠#3566](https://togithub.com/luc-blaeser/ic/issues/3566))
* [`1714dd1d`](https://github.com/luc-blaeser/ic/commit/1714dd1dc31c9abc4e53b02201bb79feb9051132) fix: bind to [::1] per default instead of 127.0.0.1 in PocketIC ([luc-blaeser/ic⁠#3280](https://togithub.com/luc-blaeser/ic/issues/3280))
* [`1dd3386c`](https://github.com/luc-blaeser/ic/commit/1dd3386c4de060e4148df11eee31196f69ed01e8) refactor: make the stack construction a little more readable; added comments ([luc-blaeser/ic⁠#3559](https://togithub.com/luc-blaeser/ic/issues/3559))
* [`8df78c99`](https://github.com/luc-blaeser/ic/commit/8df78c99e258b519535de4faf7fde24ef70b549b) chore: remove `ic_api_version` field in IC status response ([luc-blaeser/ic⁠#3569](https://togithub.com/luc-blaeser/ic/issues/3569))
* [`7f0bad6c`](https://github.com/luc-blaeser/ic/commit/7f0bad6c91300970ff913c0d026e24cbd2fa13bc) chore: add todo comment to remind of disabling balances serialization ([luc-blaeser/ic⁠#3579](https://togithub.com/luc-blaeser/ic/issues/3579))
* [`967fe211`](https://github.com/luc-blaeser/ic/commit/967fe211896f28e7b62dd7fc279a39e6e3c9c59d) chore: bitcoin crate upgrade ([luc-blaeser/ic⁠#3080](https://togithub.com/luc-blaeser/ic/issues/3080))
* [`ca3b684a`](https://github.com/luc-blaeser/ic/commit/ca3b684a47c4b900721ca7b198efc388db9df86b) test: Add best effort messages to random traffic canister ([luc-blaeser/ic⁠#3108](https://togithub.com/luc-blaeser/ic/issues/3108))
* [`33941442`](https://github.com/luc-blaeser/ic/commit/33941442d1df7df9925d70ce7823183a2dfa438b) fix: do not repeat error code in query call reject message ([luc-blaeser/ic⁠#3465](https://togithub.com/luc-blaeser/ic/issues/3465))
* [`fb75bf40`](https://github.com/luc-blaeser/ic/commit/fb75bf40fc6e86fa81dbc9b42e893bca9d13086e) perf: Move file system population to mkfs.ext4 invocation ([luc-blaeser/ic⁠#3476](https://togithub.com/luc-blaeser/ic/issues/3476))
* [`43d7f975`](https://github.com/luc-blaeser/ic/commit/43d7f9752c0645ced2dd1bf37d88389ef88d357a) docs: Improve the abortable broadcast documentation ([luc-blaeser/ic⁠#3260](https://togithub.com/luc-blaeser/ic/issues/3260))
* [`f569791c`](https://github.com/luc-blaeser/ic/commit/f569791cc7ebda5132382a1abcc0c537c93b3543) docs(governance): Added 2025-01-20 CHANGELOG.md entries. ([luc-blaeser/ic⁠#3535](https://togithub.com/luc-blaeser/ic/issues/3535))
* [`626d1bb7`](https://github.com/luc-blaeser/ic/commit/626d1bb787373473bcd32d25785f5f7b2ff96e56) feat(nns): Add pagination to list_neurons API ([luc-blaeser/ic⁠#3358](https://togithub.com/luc-blaeser/ic/issues/3358))
* [`44d54e5b`](https://github.com/luc-blaeser/ic/commit/44d54e5be8d4f6566eaa1bd0e3e689db29315a60) feat(sns): `SnsGov.list_proposals` includes `chunked_canister_wasm` ([luc-blaeser/ic⁠#3585](https://togithub.com/luc-blaeser/ic/issues/3585))
* [`850e9594`](https://github.com/luc-blaeser/ic/commit/850e9594ff1ad2d8b42b7cb2b1acad5a791189f1) chore(candid-utils): Factor out Candid pretty printing function ([luc-blaeser/ic⁠#3572](https://togithub.com/luc-blaeser/ic/issues/3572))
* [`3b2afad3`](https://github.com/luc-blaeser/ic/commit/3b2afad38c65d6e9bed58d8fa06dc34d831f5562) fix: orchestrator onboarding logs ([luc-blaeser/ic⁠#3588](https://togithub.com/luc-blaeser/ic/issues/3588))
* [`a4e13acb`](https://github.com/luc-blaeser/ic/commit/a4e13acb514d8a11dc9a433250375e880a97737b) chore: proposal to upgrade ckBTC minter ([luc-blaeser/ic⁠#3583](https://togithub.com/luc-blaeser/ic/issues/3583))
* [`623b155c`](https://github.com/luc-blaeser/ic/commit/623b155ca4fec6a5041fd88969baebcabf58db1a) fix: use api boundary nodes as socks proxies ([luc-blaeser/ic⁠#2712](https://togithub.com/luc-blaeser/ic/issues/2712))
* [`73f1dbd1`](https://github.com/luc-blaeser/ic/commit/73f1dbd1982e1c85647698fb545cfb7db22096a1) chore: add V3 to ICRC Ledger canister revisions and update mainnet to V4 ([luc-blaeser/ic⁠#3570](https://togithub.com/luc-blaeser/ic/issues/3570))
* [`b2888f25`](https://github.com/luc-blaeser/ic/commit/b2888f251925c42df8f3b4fcf70514fa2cacee2a) fix(ic-admin): set default NNS URL to the mainnet one ([luc-blaeser/ic⁠#3593](https://togithub.com/luc-blaeser/ic/issues/3593))
* [`c22d478a`](https://github.com/luc-blaeser/ic/commit/c22d478ad97f82bd5d378862c9dd2f13afe2ece1) feat(rosetta): Local cluster setup for Rosetta ([luc-blaeser/ic⁠#3485](https://togithub.com/luc-blaeser/ic/issues/3485))
* [`f128ac96`](https://github.com/luc-blaeser/ic/commit/f128ac960b5f9da2603d843d2a102cffbe62495b) feat: [MR-354] Load & validate protos asynchronously ([luc-blaeser/ic⁠#2594](https://togithub.com/luc-blaeser/ic/issues/2594))
* [`c407638b`](https://github.com/luc-blaeser/ic/commit/c407638b5d471351b3367ed8409df6e488c6001e) fix: Revert "fix: bind to [::1] per default instead of 127.0.0.1 in PocketIC ([luc-blaeser/ic⁠#3280](https://togithub.com/luc-blaeser/ic/issues/3280))" ([luc-blaeser/ic⁠#3597](https://togithub.com/luc-blaeser/ic/issues/3597))
* [`52f75b8f`](https://github.com/luc-blaeser/ic/commit/52f75b8f70b5b2a81b45dda9676c4bb5b7a8e399) chore: Run some integration tests on darwin, not intel mac runners to avoid flakiness ([luc-blaeser/ic⁠#3598](https://togithub.com/luc-blaeser/ic/issues/3598))
* [`17e42ae8`](https://github.com/luc-blaeser/ic/commit/17e42ae8580ad2d5d018b2ec10f3b01afbea7766) feat(PocketIC): new PocketIC operation to set certified time ([luc-blaeser/ic⁠#3595](https://togithub.com/luc-blaeser/ic/issues/3595))
* [`0d0440ff`](https://github.com/luc-blaeser/ic/commit/0d0440ff75a08a08d3fa2dcc8bafdd14a4f0622b) chore: listen on socketaddr from config for http handler ([luc-blaeser/ic⁠#3599](https://togithub.com/luc-blaeser/ic/issues/3599))
* [`8b198f61`](https://github.com/luc-blaeser/ic/commit/8b198f61b6802b157624afb8930450b99c33e08d) test(MR): [MR-638] Include best-effort messages in `queues_compatibility_test`, stage 1 ([luc-blaeser/ic⁠#3561](https://togithub.com/luc-blaeser/ic/issues/3561))
* [`98c8e43b`](https://github.com/luc-blaeser/ic/commit/98c8e43b25d345bf9f4b5438dc95376a545866fd) chore(boundary): salt canister interface ([luc-blaeser/ic⁠#3587](https://togithub.com/luc-blaeser/ic/issues/3587))
* [`7dc4bc9c`](https://github.com/luc-blaeser/ic/commit/7dc4bc9cc30cf84ca0b66fce2f1b98b8c7e13ee3) chore(system-tests-k8s): console logs url ([luc-blaeser/ic⁠#3606](https://togithub.com/luc-blaeser/ic/issues/3606))
* [`03393bc8`](https://github.com/luc-blaeser/ic/commit/03393bc817da78cdc27190eaa388b8f6f8990365) feat(cycles-minting): Cycles Minting canister refunds automatically. ([luc-blaeser/ic⁠#3484](https://togithub.com/luc-blaeser/ic/issues/3484))
* [`5b799152`](https://github.com/luc-blaeser/ic/commit/5b799152432d0697dcd824cc44f1afae19b522b5) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3594](https://togithub.com/luc-blaeser/ic/issues/3594))
* [`cf52a501`](https://github.com/luc-blaeser/ic/commit/cf52a501182823514b73d41fca4d40bc187d7ea5) chore(node): delete retry-ipv6-config ([luc-blaeser/ic⁠#3607](https://togithub.com/luc-blaeser/ic/issues/3607))
* [`69748856`](https://github.com/luc-blaeser/ic/commit/69748856b6c9292cfe1c1534c01f4073f749a240) refactor: Use Principal in RemoveNodeOperatorsPayload, instead of Vec<u8> ([luc-blaeser/ic⁠#3386](https://togithub.com/luc-blaeser/ic/issues/3386))
* [`361a1e39`](https://github.com/luc-blaeser/ic/commit/361a1e39a460336bc4e503c32cad2874b0f9ff74) chore: Remove deprecated CanisterStatusResult type ([luc-blaeser/ic⁠#3431](https://togithub.com/luc-blaeser/ic/issues/3431))
* [`fbb723cf`](https://github.com/luc-blaeser/ic/commit/fbb723cf6e6aecb92f5bec968cec9370fdcd19f7) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3614](https://togithub.com/luc-blaeser/ic/issues/3614))
* [`55e504b2`](https://github.com/luc-blaeser/ic/commit/55e504b2380c18dfe591edf67c6665371856c327) chore: change redirect code from 303 to 307 ([luc-blaeser/ic⁠#3600](https://togithub.com/luc-blaeser/ic/issues/3600))
* [`0468e6f9`](https://github.com/luc-blaeser/ic/commit/0468e6f90e52fab4be7b0bf722dacb520a589c55) chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3615](https://togithub.com/luc-blaeser/ic/issues/3615))
* [`98b6bfff`](https://github.com/luc-blaeser/ic/commit/98b6bfffa3c5c5d3850c2611981af2fdd8a4251e) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3616](https://togithub.com/luc-blaeser/ic/issues/3616))
* [`8cdb9302`](https://github.com/luc-blaeser/ic/commit/8cdb9302e0f896edcf61522d9f1559d2026007f1) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3620](https://togithub.com/luc-blaeser/ic/issues/3620))
* [`fcc88deb`](https://github.com/luc-blaeser/ic/commit/fcc88deb59d847f2dd5a62856be7f1eedaad0f6d) refactor: Remove inject_files rule invocations and move injection of binaries to ext4_image ([luc-blaeser/ic⁠#3497](https://togithub.com/luc-blaeser/ic/issues/3497))
* [`9d42a914`](https://github.com/luc-blaeser/ic/commit/9d42a9146cfec98a09204c39c8d6008cb4af3af7) fix: ic-gateway: remove load shedding ([luc-blaeser/ic⁠#3621](https://togithub.com/luc-blaeser/ic/issues/3621))
* [`e2a1f9c3`](https://github.com/luc-blaeser/ic/commit/e2a1f9c3ec5f982dbce9ac9a0c1dfb82bd3a753f) chore(icp-rosetta): [FI-1563] Migrate Rosetta's voting tests ([luc-blaeser/ic⁠#2815](https://togithub.com/luc-blaeser/ic/issues/2815))
* [`ac12ab0b`](https://github.com/luc-blaeser/ic/commit/ac12ab0b7af9075de5ee0209609134612ff1bd67) chore: handle panics when joining on cancellations in ingress_watcher event loop ([luc-blaeser/ic⁠#3618](https://togithub.com/luc-blaeser/ic/issues/3618))
* [`2453254c`](https://github.com/luc-blaeser/ic/commit/2453254c2abf21288b711a4467ff96d8ec66201e) chore: remove todo messages in call_v3.rs ([luc-blaeser/ic⁠#3617](https://togithub.com/luc-blaeser/ic/issues/3617))
* [`3f14a080`](https://github.com/luc-blaeser/ic/commit/3f14a0806cb596e7a2daa3cff15e5f946dfcf7f7) chore: move out the CLI module from the library ([luc-blaeser/ic⁠#3169](https://togithub.com/luc-blaeser/ic/issues/3169))
* [`59c71ed7`](https://github.com/luc-blaeser/ic/commit/59c71ed7db8a61bf604d0f5bb0910df5c796bdef) chore(IDX): unset aws var ([luc-blaeser/ic⁠#3627](https://togithub.com/luc-blaeser/ic/issues/3627))
* [`048d5281`](https://github.com/luc-blaeser/ic/commit/048d528113c24f64ff7d08d800ae5cebba096280) fix(IDX): enable colors in clippy ([luc-blaeser/ic⁠#3628](https://togithub.com/luc-blaeser/ic/issues/3628))
* [`0626768a`](https://github.com/luc-blaeser/ic/commit/0626768a908b3498beb2b806b40c30f3197b1481) chore(node): normalize config.sh to return empty string ([luc-blaeser/ic⁠#3502](https://togithub.com/luc-blaeser/ic/issues/3502))
* [`dd37e700`](https://github.com/luc-blaeser/ic/commit/dd37e7009370dde008124d315a9eed46f8ad248f) feat(crypto): CRP-2648 CRP-2600 VetKD API and testing improvements ([luc-blaeser/ic⁠#3283](https://togithub.com/luc-blaeser/ic/issues/3283))
* [`43238430`](https://github.com/luc-blaeser/ic/commit/432384301a641cd5077d61cd2cebc0c88eb4aa3e) chore(idx): remove proxy cache url ([luc-blaeser/ic⁠#3630](https://togithub.com/luc-blaeser/ic/issues/3630))
* [`fba9bf4d`](https://github.com/luc-blaeser/ic/commit/fba9bf4da928284ff351e804aae2dc3b04b76a97) feat(candid-utils): Better validation for Candid services without arguments ([luc-blaeser/ic⁠#3590](https://togithub.com/luc-blaeser/ic/issues/3590))
* [`2da21389`](https://github.com/luc-blaeser/ic/commit/2da21389027b25a4c5a68333df36eb17c966ac48) feat(crypto): CRP-2670 store registry version in threshold sig data store ([luc-blaeser/ic⁠#3619](https://togithub.com/luc-blaeser/ic/issues/3619))
* [`5c68a636`](https://github.com/luc-blaeser/ic/commit/5c68a63660fbf2698da663c778be351721671c82) feat(ic-nervous-system-agent): Add management canister functions ([luc-blaeser/ic⁠#3591](https://togithub.com/luc-blaeser/ic/issues/3591))
* [`b9ee50e6`](https://github.com/luc-blaeser/ic/commit/b9ee50e62bef3d1ea79c67d46df9aaa5a47bf6d4) chore(IDX): unset buildevent var ([luc-blaeser/ic⁠#3629](https://togithub.com/luc-blaeser/ic/issues/3629))
* [`1ef59e5f`](https://github.com/luc-blaeser/ic/commit/1ef59e5f3e20c50d1d373b8cae4a7630628f176c) test: remove log syncrhonization from nns recovery system test ([luc-blaeser/ic⁠#3602](https://togithub.com/luc-blaeser/ic/issues/3602))
* [`8f4c5bbf`](https://github.com/luc-blaeser/ic/commit/8f4c5bbf3f886470d244ca601e743a9eb2685c1e) docs(cmc): Fixed a comment in CMC automatic refund. ([luc-blaeser/ic⁠#3634](https://togithub.com/luc-blaeser/ic/issues/3634))
* [`6dcf4612`](https://github.com/luc-blaeser/ic/commit/6dcf4612fd1d1a6573a301d4810de898a754939c) fix(nns): Fix neurons_fund_total_active_neurons metric ([luc-blaeser/ic⁠#3610](https://togithub.com/luc-blaeser/ic/issues/3610))
* [`6d4ecc89`](https://github.com/luc-blaeser/ic/commit/6d4ecc89e14f8fb60f01ae42553608aedf847a42) chore(registry): Backfill missing node_reward_type records ([luc-blaeser/ic⁠#3589](https://togithub.com/luc-blaeser/ic/issues/3589))
* [`8b5a196b`](https://github.com/luc-blaeser/ic/commit/8b5a196bb9dcbf5bbece12e116e0d066c9ec7283) feat: Turn on the features to allow active neurons in stable memory and use stable following index ([luc-blaeser/ic⁠#3604](https://togithub.com/luc-blaeser/ic/issues/3604))
* [`65b020a9`](https://github.com/luc-blaeser/ic/commit/65b020a926b130f21039398cf86d1c58c867a1af) feat(nns): Change `include_empty_neurons_readable_by_caller` default to false ([luc-blaeser/ic⁠#3612](https://togithub.com/luc-blaeser/ic/issues/3612))
* [`0ac8a60b`](https://github.com/luc-blaeser/ic/commit/0ac8a60bc974222b5da87676a910d55344528ca0) feat(cycles-minting-canister): Enabled automatic refunds. ([luc-blaeser/ic⁠#3632](https://togithub.com/luc-blaeser/ic/issues/3632))
* [`a8dc0417`](https://github.com/luc-blaeser/ic/commit/a8dc04178f5b03788090afab2fdffb7b9306d050) chore(nns): Refactor NeuronId::from_subaccount to test_utils since it's only used in tests ([luc-blaeser/ic⁠#3611](https://togithub.com/luc-blaeser/ic/issues/3611))
* [`7366cbeb`](https://github.com/luc-blaeser/ic/commit/7366cbeb7a7d1e0a57282aeb90bb52d987c9b7f1) test(ICRC_Ledger): FI-1655: Add check to see if downgrade to mainnet is expected to work ([luc-blaeser/ic⁠#3625](https://togithub.com/luc-blaeser/ic/issues/3625))
* [`7325e17a`](https://github.com/luc-blaeser/ic/commit/7325e17a125cafd8d6530f63b34015c5339dbb3e) chore(fuzzing): Enable `bes` config for sandbox based fuzzers ([luc-blaeser/ic⁠#3623](https://togithub.com/luc-blaeser/ic/issues/3623))
* [`c53b231c`](https://github.com/luc-blaeser/ic/commit/c53b231ce7119f199b2c76ae39395cb14dd89aee) revert: "chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3615](https://togithub.com/luc-blaeser/ic/issues/3615))" ([luc-blaeser/ic⁠#3646](https://togithub.com/luc-blaeser/ic/issues/3646))
* [`591e7087`](https://github.com/luc-blaeser/ic/commit/591e70878e3f3b3310160cd572bcb1b7ccd692a3) chore(dep-mgnt): Change owning team for II ([luc-blaeser/ic⁠#3648](https://togithub.com/luc-blaeser/ic/issues/3648))
* [`5f4503d0`](https://github.com/luc-blaeser/ic/commit/5f4503d0fea38c8b8936897284f4c722447d00e0) chore(IDX): bazel-test-all ln1 ([luc-blaeser/ic⁠#3647](https://togithub.com/luc-blaeser/ic/issues/3647))
* [`23a5ce06`](https://github.com/luc-blaeser/ic/commit/23a5ce068d956983f8a7d1ee6d08093f28074613) refactor(nns-governance): Delete NeuronInfo from governance.proto. ([luc-blaeser/ic⁠#3639](https://togithub.com/luc-blaeser/ic/issues/3639))
* [`3fd22ccd`](https://github.com/luc-blaeser/ic/commit/3fd22ccde54b862368b1ccb93afa74c82ccc6324) feat(sns-cli): Add subcommand for upgrading SNS controlled canisters using chunked Wasms ([luc-blaeser/ic⁠#3439](https://togithub.com/luc-blaeser/ic/issues/3439))
* [`376c7275`](https://github.com/luc-blaeser/ic/commit/376c7275121bff4f506305b973310166adbca934) chore(crypto): Add tests that cross-curve keys are rejected with a reasonable error ([luc-blaeser/ic⁠#3605](https://togithub.com/luc-blaeser/ic/issues/3605))
* [`dc2a12f3`](https://github.com/luc-blaeser/ic/commit/dc2a12f3ed360785371508693561406abd1a281c) chore(dep-mgnt): Change owning team for nns-dapp frontend ([luc-blaeser/ic⁠#3652](https://togithub.com/luc-blaeser/ic/issues/3652))
* [`b310eb0b`](https://github.com/luc-blaeser/ic/commit/b310eb0b46aeb2f0c0c41d6016d0ad67ad56eb71) chore: Update Mainnet IC revisions canisters file ([luc-blaeser/ic⁠#3640](https://togithub.com/luc-blaeser/ic/issues/3640))
* [`aa12bb1f`](https://github.com/luc-blaeser/ic/commit/aa12bb1fb50960147c34f919a0a27705ba89255a) fix(IDX): don't use interpolation in x86-darwin workflow env ([luc-blaeser/ic⁠#3656](https://togithub.com/luc-blaeser/ic/issues/3656))
* [`3aa3266c`](https://github.com/luc-blaeser/ic/commit/3aa3266cde8b226501d46c66c32ee02b929c62fa) feat(nns): Avoid cloning large fields when listing proposals ([luc-blaeser/ic⁠#3505](https://togithub.com/luc-blaeser/ic/issues/3505))
* [`c05b185f`](https://github.com/luc-blaeser/ic/commit/c05b185fee8eab2c32ed96062f4a62739011a16d) feat(node): Log guestos.service console logs to tty1 ([luc-blaeser/ic⁠#3645](https://togithub.com/luc-blaeser/ic/issues/3645))
* [`215a697e`](https://github.com/luc-blaeser/ic/commit/215a697e1411965fe577c406ffe1af9728d0aeb8) feat: ICP-ledger: FI-1440: Implement V4 for ICP ledger - migrate balances to stable structures ([luc-blaeser/ic⁠#3314](https://togithub.com/luc-blaeser/ic/issues/3314))
* [`ae3ab5aa`](https://github.com/luc-blaeser/ic/commit/ae3ab5aa3c48287a69935794ff0ec8d6650e0337) refactor(nervous-system): Move Request implementations from canister crates to rs/nervous_system/agent ([luc-blaeser/ic⁠#3657](https://togithub.com/luc-blaeser/ic/issues/3657))
* [`0b1d6e41`](https://github.com/luc-blaeser/ic/commit/0b1d6e41db8931c27068796b40d5cf6aa1be7590) chore(node): tidy up systemd dependencies ([luc-blaeser/ic⁠#3574](https://togithub.com/luc-blaeser/ic/issues/3574))
* [`b6d1e651`](https://github.com/luc-blaeser/ic/commit/b6d1e651bcc3d3f42438fb4a504075e07b69f8a3) chore(EXC-1840): Refactor bool  to use WasmExecutionMode enum. ([luc-blaeser/ic⁠#3586](https://togithub.com/luc-blaeser/ic/issues/3586))
* [`6955a3fc`](https://github.com/luc-blaeser/ic/commit/6955a3fc1bb84079ea3e07284790b603afc3e2c9) test(ICRC_Ledger): Fix test failure due to SNS ledger version bump ([luc-blaeser/ic⁠#3663](https://togithub.com/luc-blaeser/ic/issues/3663))
* [`ae91325d`](https://github.com/luc-blaeser/ic/commit/ae91325d470fa927bb32a585aec57b1162b56bd8) chore(IDX): remove unused ci/tools/download ([luc-blaeser/ic⁠#3668](https://togithub.com/luc-blaeser/ic/issues/3668))
* [`b68e6a23`](https://github.com/luc-blaeser/ic/commit/b68e6a23605e8b3b889467f5552eb4dcd8df2f77) feat(ic-admin): Show the proposal URL for --dry-run ([luc-blaeser/ic⁠#3596](https://togithub.com/luc-blaeser/ic/issues/3596))
* [`620e7729`](https://github.com/luc-blaeser/ic/commit/620e7729d7e20c3dbb3843009188ab69ec4b600c) refactor: fix legacy naming of some methods ([luc-blaeser/ic⁠#3664](https://togithub.com/luc-blaeser/ic/issues/3664))
* [`fe4d0222`](https://github.com/luc-blaeser/ic/commit/fe4d0222fc4e3af11d5eef467a8bfb7cd0e410e4) chore: remove last todo comment in HTTP-handler ([luc-blaeser/ic⁠#3626](https://togithub.com/luc-blaeser/ic/issues/3626))
* [`e6b31566`](https://github.com/luc-blaeser/ic/commit/e6b31566c5876204c28d79b7c6e1a7db0303deab) chore(IDX): instruct how to calculate hashes of CDN downloaded artifacts ([luc-blaeser/ic⁠#3670](https://togithub.com/luc-blaeser/ic/issues/3670))
* [`a99f598f`](https://github.com/luc-blaeser/ic/commit/a99f598f906277700c9f98fdbda2bd9bc57b83d0) test: Add tests to check that changes are not applied if replicated query execution traps ([luc-blaeser/ic⁠#3669](https://togithub.com/luc-blaeser/ic/issues/3669))
* [`5b6d604a`](https://github.com/luc-blaeser/ic/commit/5b6d604af0479e5ea6146fa769ce9cc5a1094869) chore: Fix typo in error message about uninitialized query stats ([luc-blaeser/ic⁠#3673](https://togithub.com/luc-blaeser/ic/issues/3673))
* [`0da53066`](https://github.com/luc-blaeser/ic/commit/0da53066f8cfe4e030f5a7463cbfb4b725ded24d) chore(IDX): remove bazel-bep upload ([luc-blaeser/ic⁠#3675](https://togithub.com/luc-blaeser/ic/issues/3675))
* [`155bd42f`](https://github.com/luc-blaeser/ic/commit/155bd42f484c2a8f9e6c2e7b9475f6dc7e2b03ee) chore: Add dfx-core dependency and use it in the SNS CLI to allow it to use the user's DFX identities ([luc-blaeser/ic⁠#2927](https://togithub.com/luc-blaeser/ic/issues/2927))
* [`a5684f43`](https://github.com/luc-blaeser/ic/commit/a5684f435ed20ff13b3c7a4ac85795e898b0800f) chore(IDX): rename secret ([luc-blaeser/ic⁠#3677](https://togithub.com/luc-blaeser/ic/issues/3677))
* [`35f39480`](https://github.com/luc-blaeser/ic/commit/35f39480fe28485694743dc3ef15ac37ea000c74) docs(nns): Resurrect request and response comments. ([luc-blaeser/ic⁠#3671](https://togithub.com/luc-blaeser/ic/issues/3671))
* [`f0058db9`](https://github.com/luc-blaeser/ic/commit/f0058db9a070e5c9949e19322f21e5ad6537b703) feat(EXC-1847): Support for `ic0.subnet_self()` ([luc-blaeser/ic⁠#3637](https://togithub.com/luc-blaeser/ic/issues/3637))
* [`38877d9f`](https://github.com/luc-blaeser/ic/commit/38877d9f9e571b81eb3a2347ea9ed9fc0c408b88) chore(IDX): updated token ([luc-blaeser/ic⁠#3681](https://togithub.com/luc-blaeser/ic/issues/3681))
* [`6bc1943f`](https://github.com/luc-blaeser/ic/commit/6bc1943fc5bcff846959025c5f3f2f7f510489cf) chore(IDX): rename SSH_PRIVATE_KEY ([luc-blaeser/ic⁠#3683](https://togithub.com/luc-blaeser/ic/issues/3683))
* [`3868259d`](https://github.com/luc-blaeser/ic/commit/3868259d16fb345294f510c0e91f46225b5691b9) chore: improve return types use by the assembler ([luc-blaeser/ic⁠#2215](https://togithub.com/luc-blaeser/ic/issues/2215))
* [`8f754dd5`](https://github.com/luc-blaeser/ic/commit/8f754dd53c0f1dc4e3a1b14fde2f6ba708637e82) feat: boundary nodes: add caffeine domain polling ([luc-blaeser/ic⁠#3686](https://togithub.com/luc-blaeser/ic/issues/3686))
* [`59c4b87a`](https://github.com/luc-blaeser/ic/commit/59c4b87a337f1bd52a076c0f3e99acf155b79803) chore(IDX): encrypt bep ([luc-blaeser/ic⁠#3684](https://togithub.com/luc-blaeser/ic/issues/3684))
* [`192b37dd`](https://github.com/luc-blaeser/ic/commit/192b37ddd23a75a4dd195713950df320613dc07e) chore: Update Base Image Refs [2025-01-30-0807] ([luc-blaeser/ic⁠#3680](https://togithub.com/luc-blaeser/ic/issues/3680))
* [`4f0fa467`](https://github.com/luc-blaeser/ic/commit/4f0fa46717d239bf244cab9585c421025aa254a7) docs(EXC-1796): Compilation cache file ownership ([luc-blaeser/ic⁠#3667](https://togithub.com/luc-blaeser/ic/issues/3667))
* [`cfdddeec`](https://github.com/luc-blaeser/ic/commit/cfdddeec51f9807509ecd7ff4f155f01c193fffc) chore(fuzzing): extend syscall whitelist in sandbox fuzzers ([luc-blaeser/ic⁠#3659](https://togithub.com/luc-blaeser/ic/issues/3659))
* [`d128e24c`](https://github.com/luc-blaeser/ic/commit/d128e24cca31648bb6fbd8e9d40be620cc5fe5c3) chore: Fix run-all benchmarks script ([luc-blaeser/ic⁠#3692](https://togithub.com/luc-blaeser/ic/issues/3692))
* [`cf780723`](https://github.com/luc-blaeser/ic/commit/cf780723ba5c1523fbe3247af0580025543fe5fa) chore: Reduce flakiness of state sync system tests ([luc-blaeser/ic⁠#3672](https://togithub.com/luc-blaeser/ic/issues/3672))
* [`c6e0d7e7`](https://github.com/luc-blaeser/ic/commit/c6e0d7e718bea962d4b91595b3ff4e1357a430c9) chore(IDX): simplify x64-darwin output base ([luc-blaeser/ic⁠#3694](https://togithub.com/luc-blaeser/ic/issues/3694))
* [`de17b0d7`](https://github.com/luc-blaeser/ic/commit/de17b0d718d6f279e9da8cd0f1b5de17036a6102) chore(IDX): simplify bes upload ([luc-blaeser/ic⁠#3698](https://togithub.com/luc-blaeser/ic/issues/3698))
* [`2eae439d`](https://github.com/luc-blaeser/ic/commit/2eae439d961a2f75b1a16c7a143b31fe7d95853b) refactor(nns): Delete private neuron flags. ([luc-blaeser/ic⁠#3689](https://togithub.com/luc-blaeser/ic/issues/3689))
* [`056a8e0b`](https://github.com/luc-blaeser/ic/commit/056a8e0b5354c0ff0c108de6faab33de771008e9) refactor(nns-governance): Delete *_voting_power fields from governance.proto. ([luc-blaeser/ic⁠#3643](https://togithub.com/luc-blaeser/ic/issues/3643))
* [`21fa73e0`](https://github.com/luc-blaeser/ic/commit/21fa73e097672e3428f66ec439547ba550305497) test(governance): Move WASM size limits of Governance canisters to Governance directories. ([luc-blaeser/ic⁠#3676](https://togithub.com/luc-blaeser/ic/issues/3676))
* [`bf5d853f`](https://github.com/luc-blaeser/ic/commit/bf5d853feb787d9e0c157914de424ad148e2376e) chore: switch nested tests to use API BN for registration ([luc-blaeser/ic⁠#3658](https://togithub.com/luc-blaeser/ic/issues/3658))
* [`ef595725`](https://github.com/luc-blaeser/ic/commit/ef595725a7cedefd49931b981ba4924ee0d4c1d2) fix: [EXC-1836] Update hook status after update of canister settings ([luc-blaeser/ic⁠#3624](https://togithub.com/luc-blaeser/ic/issues/3624))
* [`15a51647`](https://github.com/luc-blaeser/ic/commit/15a51647e60edd23c65ced5c756baf757b3c001e) feat(crypto): CRP-2599 implement VetKdProtocol trait for CryptoComponent ([luc-blaeser/ic⁠#3565](https://togithub.com/luc-blaeser/ic/issues/3565))
* [`bf093627`](https://github.com/luc-blaeser/ic/commit/bf093627cc6ee33f52537da3673a7687d14b7952) chore(IDX): remove dotboostrap ([luc-blaeser/ic⁠#3704](https://togithub.com/luc-blaeser/ic/issues/3704))
* [`41617561`](https://github.com/luc-blaeser/ic/commit/416175614a0c802b317810a55b94c1cc93025307) chore(IDX): track ict changes with bazel ([luc-blaeser/ic⁠#3705](https://togithub.com/luc-blaeser/ic/issues/3705))
* [`eb4a6d5a`](https://github.com/luc-blaeser/ic/commit/eb4a6d5a853e67ee8d5023a0b8d1cc8036f0c112) fix: introduce backpressure from consensus to the networking layer by using bounded channels ([luc-blaeser/ic⁠#2340](https://togithub.com/luc-blaeser/ic/issues/2340))
* [`cde70711`](https://github.com/luc-blaeser/ic/commit/cde707113a91b5ad7db9bf601228a1fd955a0ac0) refactor: Consolidate how system state modifications are extracted from the System API ([luc-blaeser/ic⁠#3706](https://togithub.com/luc-blaeser/ic/issues/3706))
* [`61639eaa`](https://github.com/luc-blaeser/ic/commit/61639eaa4422184dc3deb78e50cb07698dde3569) test(crypto): CRP-2599 add smoke test for VetKdProtocol impl ([luc-blaeser/ic⁠#3649](https://togithub.com/luc-blaeser/ic/issues/3649))
* [`4d986969`](https://github.com/luc-blaeser/ic/commit/4d9869693b6acf327b887f19584b090e915d6dcf) test(nns/sns): Introduce NNS suite builder for PocketIc ([luc-blaeser/ic⁠#3666](https://togithub.com/luc-blaeser/ic/issues/3666))
* [`d3a3f074`](https://github.com/luc-blaeser/ic/commit/d3a3f074bc175397f6b48e89f0f195eca4fcfc2a) refactor(nns): More strictly represent neuron visibility. ([luc-blaeser/ic⁠#3697](https://togithub.com/luc-blaeser/ic/issues/3697))
* [`f4450ebb`](https://github.com/luc-blaeser/ic/commit/f4450ebb1c6492ae7dd507141ccc58907fe122c6) refactor(sns-w): Migrate from dfn_core to ic_cdk ([luc-blaeser/ic⁠#3662](https://togithub.com/luc-blaeser/ic/issues/3662))
* [`340f17da`](https://github.com/luc-blaeser/ic/commit/340f17da6cff9083b61582a2a9d50e60b9760716) test(sns-cli): Port UpgradeSnsControlledCanister with Large Wasm integration test to use SNS CLI with PocketIc ([luc-blaeser/ic⁠#3696](https://togithub.com/luc-blaeser/ic/issues/3696))
* [`c5e098e8`](https://github.com/luc-blaeser/ic/commit/c5e098e8cc8e62249e6d7f4ed09e6c2ed87fc800) feat(nns/sns): Add allowed_viewers variant case into canister_status responses ([luc-blaeser/ic⁠#3660](https://togithub.com/luc-blaeser/ic/issues/3660))
* [`a9c6652c`](https://github.com/luc-blaeser/ic/commit/a9c6652c43da158af84edef304054c46b589c9ab) chore: Fix some typos in MR code ([luc-blaeser/ic⁠#3719](https://togithub.com/luc-blaeser/ic/issues/3719))
* [`24b22b87`](https://github.com/luc-blaeser/ic/commit/24b22b87c572237d742448cc6a94ac9edf7e1b25) feat(pocket-ic): support custom blockmaker metrics at each round ([luc-blaeser/ic⁠#3685](https://togithub.com/luc-blaeser/ic/issues/3685))
* [`eb50e952`](https://github.com/luc-blaeser/ic/commit/eb50e95272d36b16f52a98ecfdf841a9445670d5) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3725](https://togithub.com/luc-blaeser/ic/issues/3725))
* [`dfcc5916`](https://github.com/luc-blaeser/ic/commit/dfcc5916eb48c416a70d8a858dcc1d736e90dfcf) chore(IDX): eng-consensus-prs ([luc-blaeser/ic⁠#3724](https://togithub.com/luc-blaeser/ic/issues/3724))
* [`8ac49d3d`](https://github.com/luc-blaeser/ic/commit/8ac49d3dc9f3c0e82615db0cabbd148583517804) feat: Add `VetKdProtocol` to `Crypto` trait ([luc-blaeser/ic⁠#3726](https://togithub.com/luc-blaeser/ic/issues/3726))
* [`86edaa29`](https://github.com/luc-blaeser/ic/commit/86edaa290f0105f45f769d3f98576e7ff52349a7) chore: bump openssl to 0.10.70 ([luc-blaeser/ic⁠#3723](https://togithub.com/luc-blaeser/ic/issues/3723))
* [`b0e7dcd8`](https://github.com/luc-blaeser/ic/commit/b0e7dcd8eed2933541253b613042c22f702c0d1d) refactor: Remove unused print in execution tests ([luc-blaeser/ic⁠#3729](https://togithub.com/luc-blaeser/ic/issues/3729))
* [`78d46cb9`](https://github.com/luc-blaeser/ic/commit/78d46cb9e623ec5713773230084091580c78db18) chore: Update Mainnet IC revisions subnets file ([luc-blaeser/ic⁠#3730](https://togithub.com/luc-blaeser/ic/issues/3730))
* [`773b035f`](https://github.com/luc-blaeser/ic/commit/773b035f28bcd7ebf1fec911e7349733146a661e) fix: EXC-1838 Run hook after CanisterWasmMemoryLimitExceeded error is fixed ([luc-blaeser/ic⁠#3631](https://togithub.com/luc-blaeser/ic/issues/3631))
* [`a9732559`](https://github.com/luc-blaeser/ic/commit/a97325591de291e204091e65737832e5e853db32) feat(crypto): CRP-2687 make some conversions to KeyId infallible ([luc-blaeser/ic⁠#3718](https://togithub.com/luc-blaeser/ic/issues/3718))
* [`9fcffc7f`](https://github.com/luc-blaeser/ic/commit/9fcffc7fc9d264827ad65972bb4413a09cb4cad0) feat: enable testnet4 support in the bitcoin adapter ([luc-blaeser/ic⁠#3267](https://togithub.com/luc-blaeser/ic/issues/3267))
* [`084e5acb`](https://github.com/luc-blaeser/ic/commit/084e5acbac97dbc8e74100c6485f7e320fa45a75) chore: remove reference to a custom jsonrpc version in Cargo.toml ([luc-blaeser/ic⁠#3722](https://togithub.com/luc-blaeser/ic/issues/3722))
* [`ec6e895a`](https://github.com/luc-blaeser/ic/commit/ec6e895aef012ef27c1866db1e02d75f44a3343f) refactor(registry): Migrate Registry to use MemoryManager instead of raw stable memory ([luc-blaeser/ic⁠#3700](https://togithub.com/luc-blaeser/ic/issues/3700))
* [`6feb282c`](https://github.com/luc-blaeser/ic/commit/6feb282c01a18703e58e36f32e358cc46091237e) refactor(nns-tools): Turn release-runscript to clap-powered CLI ([luc-blaeser/ic⁠#3712](https://togithub.com/luc-blaeser/ic/issues/3712))
* [`f53fd041`](https://github.com/luc-blaeser/ic/commit/f53fd0418d668610e44ba2c0055897301d85d217) feat(nns-tools): Release runscript automatically grabs the latest commit ([luc-blaeser/ic⁠#3713](https://togithub.com/luc-blaeser/ic/issues/3713))
* [`bc693862`](https://github.com/luc-blaeser/ic/commit/bc693862c1ff0d7bc4a2dcc2f560a175a2080f7b) feat(nns-tools): Release runscript asks you which canisters to release ([luc-blaeser/ic⁠#3714](https://togithub.com/luc-blaeser/ic/issues/3714))
* [`5bea1df3`](https://github.com/luc-blaeser/ic/commit/5bea1df3802fce59117c86470a72f4e81316f5d3) chore(governance): Remove unused types ([luc-blaeser/ic⁠#3711](https://togithub.com/luc-blaeser/ic/issues/3711))
* [`01fcadfa`](https://github.com/luc-blaeser/ic/commit/01fcadfa693a1a07e7ec1970115cfc40b3c36947) feat(nns/sns): Add query stats to canister status ([luc-blaeser/ic⁠#3710](https://togithub.com/luc-blaeser/ic/issues/3710))
* [`796a9027`](https://github.com/luc-blaeser/ic/commit/796a90275207e27f6c22226be2b5b3ffe726694e) feat(nns): Bump neurons limit ([luc-blaeser/ic⁠#3739](https://togithub.com/luc-blaeser/ic/issues/3739))
* [`156e27ae`](https://github.com/luc-blaeser/ic/commit/156e27ae426aaf9c3b7b6813e31f1018e76c3ebe) docs(nns): Created entry in Governance's CHANGELOG for proposal 134777 (Jan 10). ([luc-blaeser/ic⁠#3732](https://togithub.com/luc-blaeser/ic/issues/3732))
* [`74e1bd5c`](https://github.com/luc-blaeser/ic/commit/74e1bd5ced33237b633768a8b735cba6397e5317) feat(nns-tools): Release runscript generates proposal texts for you ([luc-blaeser/ic⁠#3715](https://togithub.com/luc-blaeser/ic/issues/3715))
* [`2dd2ccee`](https://github.com/luc-blaeser/ic/commit/2dd2ccee9679aaf23cf57daaa703c46f7962c29f) feat(nns-tools): Release runscript submits proposals for you ([luc-blaeser/ic⁠#3716](https://togithub.com/luc-blaeser/ic/issues/3716))
* [`65a50e4b`](https://github.com/luc-blaeser/ic/commit/65a50e4bbfc0eabf9117f18fe9fe8818cb237b89) feat(nns-tools): Release runscript generates forum posts ([luc-blaeser/ic⁠#3717](https://togithub.com/luc-blaeser/ic/issues/3717))
* [`30b3069b`](https://github.com/luc-blaeser/ic/commit/30b3069b8cf9cbbb3cd4063840aefdf254b75075) chore: allow automatically replacing a node even if it is active as an API BN ([luc-blaeser/ic⁠#3707](https://togithub.com/luc-blaeser/ic/issues/3707))
* [`5703c438`](https://github.com/luc-blaeser/ic/commit/5703c4382fb7d71a9a4636b55eeade127201a4e1) fix(custom domains): bump cloudflare-rs due to CF API changes ([luc-blaeser/ic⁠#3744](https://togithub.com/luc-blaeser/ic/issues/3744))
* [`50bb4d7e`](https://github.com/luc-blaeser/ic/commit/50bb4d7e8b88c34f2e265e6a66a2345b35a11983) chore(boundary): `salt_sharing` canister implementation ([luc-blaeser/ic⁠#3650](https://togithub.com/luc-blaeser/ic/issues/3650))
* [`72887511`](https://github.com/luc-blaeser/ic/commit/728875118c5cb0199d5219821c89da6217278734) feat(metrics-proxy): add rules for `mr_blocks_proposed_total` and `mr_blocks_not_proposed_total` ([luc-blaeser/ic⁠#3750](https://togithub.com/luc-blaeser/ic/issues/3750))
* [`f41794f7`](https://github.com/luc-blaeser/ic/commit/f41794f7281d6d31764f18f888356ba961ddb1e7) feat(governance-tools): Added TODOs to generated "Features & Fixtures" section. ([luc-blaeser/ic⁠#3758](https://togithub.com/luc-blaeser/ic/issues/3758))
* [`3afdf372`](https://github.com/luc-blaeser/ic/commit/3afdf372a91d33c3fd0fde17342c263d0d94634a) feat(IC-1579): Governance: TLA Codelink for refresh_neuron ([luc-blaeser/ic⁠#3547](https://togithub.com/luc-blaeser/ic/issues/3547))
* [`fd7cd5a1`](https://github.com/luc-blaeser/ic/commit/fd7cd5a125f0be47ed3b758190f8a1c9fa9d7c53) chore(nns): Modify the comment on `include_empty_neurons_readable_by_caller` ([luc-blaeser/ic⁠#3740](https://togithub.com/luc-blaeser/ic/issues/3740))
* [`f9a5f41d`](https://github.com/luc-blaeser/ic/commit/f9a5f41d8becf1664db9bc2cccde5914a9d930d6) fix(nns/sns): Minor fix for release script ([luc-blaeser/ic⁠#3764](https://togithub.com/luc-blaeser/ic/issues/3764))
* [`22eda91d`](https://github.com/luc-blaeser/ic/commit/22eda91d66f784e5781f185a35b657a8712d84ef) fix: don't clone blocks during `get_successors` ([luc-blaeser/ic⁠#3687](https://togithub.com/luc-blaeser/ic/issues/3687))
* [`b7a0b3d3`](https://github.com/luc-blaeser/ic/commit/b7a0b3d3b896cdaabc06c0ee6cd13cd54c939e67) feat: Implement DTS for replicated queries ([luc-blaeser/ic⁠#3557](https://togithub.com/luc-blaeser/ic/issues/3557))
* [`baee7335`](https://github.com/luc-blaeser/ic/commit/baee733590c3b41781dca5fba0a2a0d1c234f871) feat: re-enable hashes-in-blocks feature on all subnets ([luc-blaeser/ic⁠#3562](https://togithub.com/luc-blaeser/ic/issues/3562))
* [`f6d7d681`](https://github.com/luc-blaeser/ic/commit/f6d7d681e0caddd665911fc40bdc41aafec35074) refactor(nns): Follow up items from PR 2880. ([luc-blaeser/ic⁠#3751](https://togithub.com/luc-blaeser/ic/issues/3751))
* [`cdb473bb`](https://github.com/luc-blaeser/ic/commit/cdb473bbf9e8b24ba19a114aff59ac176f2419c3) chore: [EXC-1880] Test hook behavior across upgrade ([luc-blaeser/ic⁠#3760](https://togithub.com/luc-blaeser/ic/issues/3760))
* [`134fbac8`](https://github.com/luc-blaeser/ic/commit/134fbac8853d535e8483cbd5323ede4fa3706b92) docs(nns): Follow up on PR 2339 ([luc-blaeser/ic⁠#3771](https://togithub.com/luc-blaeser/ic/issues/3771))
* [`152a69a3`](https://github.com/luc-blaeser/ic/commit/152a69a39163e0f773df68f710e7b0763e0f2b7a) fix: EXC-1878: Use pages for tracking changes ([luc-blaeser/ic⁠#3776](https://togithub.com/luc-blaeser/ic/issues/3776))
* [`8a5bdfd4`](https://github.com/luc-blaeser/ic/commit/8a5bdfd43bf3c0207900f0c473e5e8633f294b17) chore(crypto): CRP-2692 Move ed25519 crate to packages ([luc-blaeser/ic⁠#3770](https://togithub.com/luc-blaeser/ic/issues/3770))
* [`2608017f`](https://github.com/luc-blaeser/ic/commit/2608017f2fb739af350b9495e9fc9f9b74a41ce2) fix: reduce the bitcoin adapter maximum response size to 1MB for testnet4 ([luc-blaeser/ic⁠#3769](https://togithub.com/luc-blaeser/ic/issues/3769))
* [`8c3920c1`](https://github.com/luc-blaeser/ic/commit/8c3920c1495624dd8a468de4a24f2e72e68d7224) chore(nns): Deleted backfilling voting_power_refreshed_timestamp. ([luc-blaeser/ic⁠#3780](https://togithub.com/luc-blaeser/ic/issues/3780))
* [`fbe09a67`](https://github.com/luc-blaeser/ic/commit/fbe09a6727fdfeca6e3533c8c3955bc7c0c74d58) fix: increase the number of bitcoin in flight requests to 1000. ([luc-blaeser/ic⁠#3768](https://togithub.com/luc-blaeser/ic/issues/3768))
* [`3fd26f17`](https://github.com/luc-blaeser/ic/commit/3fd26f17ac9cdb8378624a34be4b80740a1101cd) chore: Remove old storage logic ([luc-blaeser/ic⁠#3708](https://togithub.com/luc-blaeser/ic/issues/3708))
* [`1f525daa`](https://github.com/luc-blaeser/ic/commit/1f525daa8521b1dd89385d95061b5d72635d1bb2) perf(MR): Look up `SubnetIds` from a `BTreeSet` instead of from a `Vec` ([luc-blaeser/ic⁠#3779](https://togithub.com/luc-blaeser/ic/issues/3779))
* [`28c8a072`](https://github.com/luc-blaeser/ic/commit/28c8a072a5941ac5e01d681aa897a0781a3460e3) chore(boundary): add metrics and access control to `salt_sharing` canister ([luc-blaeser/ic⁠#3762](https://togithub.com/luc-blaeser/ic/issues/3762))
* [`052e6116`](https://github.com/luc-blaeser/ic/commit/052e61167df6392287348fa40ac3b6a482c997a3) chore: Update Mainnet IC revisions canisters file and fix ICP ledger tests ([luc-blaeser/ic⁠#3763](https://togithub.com/luc-blaeser/ic/issues/3763))
* [`9dd1f0ce`](https://github.com/luc-blaeser/ic/commit/9dd1f0ceb00ea5c58fefa1c6a2e8f556c73a52cb) chore(nns): Deleted set_initial_voting_power_economics. ([luc-blaeser/ic⁠#3778](https://togithub.com/luc-blaeser/ic/issues/3778))
* [`af844b2c`](https://github.com/luc-blaeser/ic/commit/af844b2cf5153062c5f9cc8d9b645dfefcc79aae) revert: "chore(IDX): bazel-test-all ln1" ([luc-blaeser/ic⁠#3788](https://togithub.com/luc-blaeser/ic/issues/3788))
* [`acb62c3e`](https://github.com/luc-blaeser/ic/commit/acb62c3efee5d15c0d6a4f307d845e60e88032ff) docs(nns): Added a TODO with Jira ticket ID about the demise of refresh neuron flags. ([luc-blaeser/ic⁠#3783](https://togithub.com/luc-blaeser/ic/issues/3783))
* [`89702c7d`](https://github.com/luc-blaeser/ic/commit/89702c7de40af1a6c816a7c8562655f21dec964a) chore: Bump canbench to 0.1.9 ([luc-blaeser/ic⁠#3765](https://togithub.com/luc-blaeser/ic/issues/3765))
* [`54b7f0e7`](https://github.com/luc-blaeser/ic/commit/54b7f0e7fb285e932bdee270a49ab403ccb82db2) refactor: Add memory usage checks when loading a snapshot for consistency ([luc-blaeser/ic⁠#3789](https://togithub.com/luc-blaeser/ic/issues/3789))
* [`413a393d`](https://github.com/luc-blaeser/ic/commit/413a393dd6ed7454ee459857d28591b336ac69e8) feat(nns): list_neurons supports querying by subaccount ([luc-blaeser/ic⁠#3592](https://togithub.com/luc-blaeser/ic/issues/3592))
* [`d343919b`](https://github.com/luc-blaeser/ic/commit/d343919be6abd5d9349a99f82f7706751b060df6) feat(sns-cli): Cleanup store canister after upgrading an SNS-controlled canister ([luc-blaeser/ic⁠#3738](https://togithub.com/luc-blaeser/ic/issues/3738))
* [`b803bf02`](https://github.com/luc-blaeser/ic/commit/b803bf020c47dfb2d9651ff11e60143e075fc773) feat(registry): Obsolete legacy ECDSA configs ([luc-blaeser/ic⁠#3709](https://togithub.com/luc-blaeser/ic/issues/3709))
* [`03230898`](https://github.com/luc-blaeser/ic/commit/03230898e8178b16c929c64f0b44f4214c379a39) refactor(nns): Follow up on PR 3090 ([luc-blaeser/ic⁠#3773](https://togithub.com/luc-blaeser/ic/issues/3773))
* [`3918cafc`](https://github.com/luc-blaeser/ic/commit/3918cafc6175a90cabe139830e983f1944f87483) fix(sns): Correctly translate `ManageLedgerParameters` into `LedgerUpgradeArgs` ([luc-blaeser/ic⁠#3790](https://togithub.com/luc-blaeser/ic/issues/3790))
* [`fa247dff`](https://github.com/luc-blaeser/ic/commit/fa247dff1117223cec58c9d0a2e0f9aaeae70548) chore(nervous-system): Release on 2025-02-03 ([luc-blaeser/ic⁠#3735](https://togithub.com/luc-blaeser/ic/issues/3735))
* [`a21f470a`](https://github.com/luc-blaeser/ic/commit/a21f470a2530e2d47c3efe9b768b237147191e83) feat(rosetta): Support pagination for Rosetta API list_neurons ([luc-blaeser/ic⁠#3609](https://togithub.com/luc-blaeser/ic/issues/3609))
* [`7cd54f49`](https://github.com/luc-blaeser/ic/commit/7cd54f49642ddd0b5491a39783b562fe425b6105) perf: Add low-level memory ops benchmark ([luc-blaeser/ic⁠#3551](https://togithub.com/luc-blaeser/ic/issues/3551))
* [`36c6abf7`](https://github.com/luc-blaeser/ic/commit/36c6abf7e8438cb9ca8012998d4332dd4336d1a3) perf(nns): Set NNS Governance governance noise threshold to 5% ([luc-blaeser/ic⁠#3766](https://togithub.com/luc-blaeser/ic/issues/3766))
* [`5acf43fb`](https://github.com/luc-blaeser/ic/commit/5acf43fb09d272b24b458df0370658fb9e5ebf60) feat(sns): Do not store logos in SNS initialization parameters to save space ([luc-blaeser/ic⁠#3786](https://togithub.com/luc-blaeser/ic/issues/3786))
* [`0c343040`](https://github.com/luc-blaeser/ic/commit/0c343040da20605fa92dbe4656e50b163959e74e) chore(ckbtc): Separate event types for mainnet and testnet logs ([luc-blaeser/ic⁠#3720](https://togithub.com/luc-blaeser/ic/issues/3720))
* [`1f2dda03`](https://github.com/luc-blaeser/ic/commit/1f2dda031fa135e8abb144f39c2c38b76c3ee778) feat(nervous-system): runscript partially automates scheduling the votes ([luc-blaeser/ic⁠#3791](https://togithub.com/luc-blaeser/ic/issues/3791))
* [`0fe05a2b`](https://github.com/luc-blaeser/ic/commit/0fe05a2bfc2da01921501e40564c192cd9863c1f) fix(nervous-system): release runscript doesn't prompt you to update mainnet-canisters.json ([luc-blaeser/ic⁠#3792](https://togithub.com/luc-blaeser/ic/issues/3792))
* [`ec2bb65f`](https://github.com/luc-blaeser/ic/commit/ec2bb65fe0abb191c793d7c13ddaca57a2e383bd) refactor(nervous-system): use anyhow in release runscript ([luc-blaeser/ic⁠#3793](https://togithub.com/luc-blaeser/ic/issues/3793))
* [`ad7c9527`](https://github.com/luc-blaeser/ic/commit/ad7c9527fc28b09166a308c3e66027b03cadfab8) refactor(nervous-system): add "press enter to continue" helper ([luc-blaeser/ic⁠#3794](https://togithub.com/luc-blaeser/ic/issues/3794))
* [`a49a6dd4`](https://github.com/luc-blaeser/ic/commit/a49a6dd4a864fad9aa685c8275e10ef71690fdcf) fix(crypto): CRP-2692 Fix ic-ed25519 crate attributes ([luc-blaeser/ic⁠#3785](https://togithub.com/luc-blaeser/ic/issues/3785))
* [`8dc1b0d2`](https://github.com/luc-blaeser/ic/commit/8dc1b0d2537adba49b21ab71ceab1095ec7e61af) chore(ckbtc): add check_transaction_query method to Bitcoin checker ([luc-blaeser/ic⁠#3454](https://togithub.com/luc-blaeser/ic/issues/3454))
* [`877f6502`](https://github.com/luc-blaeser/ic/commit/877f6502b2a9c2013c4cd9ce6c0e25c4b0c654af) refactor(nervous-system-runscript): move utilities to utils.rs ([luc-blaeser/ic⁠#3796](https://togithub.com/luc-blaeser/ic/issues/3796))
* [`c8a571ca`](https://github.com/luc-blaeser/ic/commit/c8a571caab15dc536ec78c16f3e8d47c56c58d99) chore(ic-boundary): disable bouncer ([luc-blaeser/ic⁠#3755](https://togithub.com/luc-blaeser/ic/issues/3755))
* [`90a1b566`](https://github.com/luc-blaeser/ic/commit/90a1b566e4514707a196e6fe8daf26ddf1bb175b) fix: move metrics to all messages ([luc-blaeser/ic⁠#3690](https://togithub.com/luc-blaeser/ic/issues/3690))
* [`0206830a`](https://github.com/luc-blaeser/ic/commit/0206830a658fc51c35d9ccb005e86a22adf3b5be) test(btc): Port ckBTC tests from legacy ECDSA to chain key Registry API ([luc-blaeser/ic⁠#3820](https://togithub.com/luc-blaeser/ic/issues/3820))
* [`5ee8dcf3`](https://github.com/luc-blaeser/ic/commit/5ee8dcf34f26c12defcff51c2f5737214611bccc) fix: revert EXC-1838 Run hook after CanisterWasmMemoryLimitExceeded error is fixed ([luc-blaeser/ic⁠#3850](https://togithub.com/luc-blaeser/ic/issues/3850))
* [`ec8add50`](https://github.com/luc-blaeser/ic/commit/ec8add504e63f97a2bc7f470d1b64dca550235af) tweaks


[EXC-1842]: https://dfinity.atlassian.net/browse/EXC-1842?atlOrigin=eyJpIjoiNWRkNTljNzYxNjVmNDY3MDlhMDU5Y2ZhYzA5YTRkZjUiLCJwIjoiZ2l0aHViLWNvbS1KU1cifQ
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.

8 participants