Skip to content

chore: civc tests refactor#16159

Merged
maramihali merged 29 commits into
merge-train/barretenbergfrom
mm/civc-mock-tests-refactor
Aug 1, 2025
Merged

chore: civc tests refactor#16159
maramihali merged 29 commits into
merge-train/barretenbergfrom
mm/civc-mock-tests-refactor

Conversation

@maramihali

Copy link
Copy Markdown

In this PR (redo of #16086):

  • unify the logic of the two mock circuit producers for CIVC tests
  • remove logic in CIVC to handle whether we are or are not receiving precomputed vks and mocked vks, accumulate now
  • expects a precomputed verification key
  • remove redundant tests
  • make our Typescript integration tests also provide precomputed vks for both the native and wasm version of CIVC

AztecBot and others added 28 commits July 25, 2025 03:27
In `stdlib_uint` we no longer need logical operations because the only
places they were used in, i.e., std/turbo version of sha256, blake2s,
blake3s, have been removed. So its best to reduce complexity of the
`uint` class and keep it minimal.

Removed the following functions from the `uint` class:
```cpp
operator^
operator&
operator|
operator~
operator>>
operator<<
ror
rol
logic_operator
```
…ments as input and returns the commitment to the merged table (#15949)

We modify the `MergeVerifier` so that it gets the subtable commitments as input and returns the commitment to the merged table. The reason for this change is that given the new structure of `ClientIVC` following [#15704](#15704), we can't access the merged table commitments from inside `complete_hiding_circuit_logic`.

This PR is in preparation for [#15829](#15829)

---------

Co-authored-by: AztecBot <tech@aztecprotocol.com>
@maramihali maramihali self-assigned this Aug 1, 2025
@maramihali maramihali changed the base branch from next to merge-train/barretenberg August 1, 2025 10:31
@maramihali maramihali added the ci-full Run all master checks. label Aug 1, 2025
@maramihali maramihali requested a review from kashbrti August 1, 2025 10:48
Base automatically changed from merge-train/barretenberg to next August 1, 2025 15:53
@maramihali maramihali added this pull request to the merge queue Aug 1, 2025
@maramihali maramihali removed this pull request from the merge queue due to a manual request Aug 1, 2025
const [proof] = await backend.prove(witnessStack.map((arr: Uint8Array) => ungzip(arr)));
const [proof] = await backend.prove(
witnessStack.map((arr: Uint8Array) => ungzip(arr)),
vks.map(hex => new Uint8Array(Buffer.from(hex, 'hex'))),

Copy link
Copy Markdown
Collaborator

Choose a reason for hiding this comment

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

note: a Buffer is a Uint8Array (it extends it)

@maramihali maramihali changed the base branch from next to merge-train/barretenberg August 1, 2025 16:00
@maramihali maramihali merged commit ec6f3c2 into merge-train/barretenberg Aug 1, 2025
11 of 13 checks passed
@maramihali maramihali deleted the mm/civc-mock-tests-refactor branch August 1, 2025 16:01
github-merge-queue Bot pushed a commit that referenced this pull request Aug 1, 2025
See
[merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

BEGIN_COMMIT_OVERRIDE
chore:  civc tests refactor (#16159)
END_COMMIT_OVERRIDE

---------

Co-authored-by: AztecBot <tech@aztecprotocol.com>
Co-authored-by: maramihali <mara@aztec-labs.com>
federicobarbacovi added a commit that referenced this pull request Aug 4, 2025
commit eb94d3a
Merge: f847091 3b76348
Author: AztecBot <tech@aztecprotocol.com>
Date:   Mon Aug 4 05:45:06 2025 +0000

    Merge branch 'next' into merge-train/barretenberg

commit 3b76348
Author: Lasse Herskind <16536249+LHerskind@users.noreply.github.com>
Date:   Mon Aug 4 06:03:02 2025 +0100

    chore: address comments (#16175)

    Please read [contributing guidelines](CONTRIBUTING.md) and remove this
    line.

    For audit-related pull requests, please use the [audit PR
    template](?expand=1&template=audit.md).

commit f847091
Merge: a86bcc3 b0affa7
Author: AztecBot <tech@aztecprotocol.com>
Date:   Sun Aug 3 22:08:04 2025 +0000

    Merge branch 'next' into merge-train/barretenberg

commit b0affa7
Author: Lasse Herskind <16536249+LHerskind@users.noreply.github.com>
Date:   Sun Aug 3 22:26:43 2025 +0100

    chore: updated fmt settings foundry.toml (#16155)

    Updated the `foundry.toml` to also wrap the comments and use the default
    line_length of 120 instead of the previous 100. Threw some thousands
    separators in there as well for constant values.

    ```toml
    [fmt]
    line_length = 120
    tab_width = 2
    variable_override_spacing=false
    wrap_comments = true
    number_underscore = "thousands"
    override_spacing = false
    ```

commit a86bcc3
Merge: c7a5799 3ded0f6
Author: AztecBot <tech@aztecprotocol.com>
Date:   Sun Aug 3 20:41:47 2025 +0000

    Merge branch 'next' into merge-train/barretenberg

commit c7a5799
Merge: fd73d0e 935a8fa
Author: AztecBot <tech@aztecprotocol.com>
Date:   Sun Aug 3 20:11:19 2025 +0000

    Merge branch 'next' into merge-train/barretenberg

commit 3ded0f6
Author: Jan Beneš <janbenes1234@gmail.com>
Date:   Sun Aug 3 21:56:09 2025 +0200

    chore: minor fixes and docs improvements in governance (#16039)

    When doing my internal review of governance contracts I stumbled upon
    plenty of small and uncontroversial issues with which it didn't really
    make sense to clutter my review document.

    ---------

    Co-authored-by: LHerskind <16536249+LHerskind@users.noreply.github.com>

commit fd73d0e
Merge: e2b45d5 99e70e6
Author: AztecBot <tech@aztecprotocol.com>
Date:   Sun Aug 3 19:29:46 2025 +0000

    Merge branch 'next' into merge-train/barretenberg

commit 935a8fa
Author: Maddiaa <47148561+Maddiaa0@users.noreply.github.com>
Date:   Sun Aug 3 20:16:22 2025 +0100

    feat(sol): vk hashing (#16015)

    Perform vk hashing in the solidity verifier

    Takes a different approach to the traditional verifiers.
    As the vk is fixed ahead of time, we hash it and include it in the
    precompiled contract, therefore it is preprocessed
    and does not need to be recomputed by the verifier.

commit 99e70e6
Author: Lasse Herskind <16536249+LHerskind@users.noreply.github.com>
Date:   Sun Aug 3 19:46:27 2025 +0100

    chore!: depositAmount and minimumStake naming (#16148)

    Addressing feedback from @benesjan. Also using his prompt idea to see
    how well it works.

    ---

    This PR refactors validator staking terminology throughout the Aztec
    codebase to improve clarity and better reflect the purpose of key
    staking parameters. The main changes involve renaming `depositAmount` to
    `activationThreshold` and `minimumStake` to `ejectionThreshold`, along
    with related library and method renames.
    - **`depositAmount` → `activationThreshold`**: The amount of tokens
    required to activate a validator and join the validator set
    - **`minimumStake` → `ejectionThreshold`**: The minimum token balance
    below which a validator is ejected from the active set
    - **Solidity Contracts**: Updated all references in `Rollup.sol`,
    `IStaking.sol`, `GSE.sol`, and related contracts
    - **Libraries**:
    - `UserLib` → `CheckpointedUintLib` (more descriptive name for
    checkpoint management)
      - `DelegationLib` → `StakeDelegationLib` (clearer purpose indication)
    - **Methods**: `finaliseHelper()` → `finaliseWithdraw()` in GSE contract
    for better clarity
    - Updated environment variables:
      - `AZTEC_DEPOSIT_AMOUNT` → `AZTEC_ACTIVATION_THRESHOLD`
      - `AZTEC_MINIMUM_STAKE` → `AZTEC_EJECTION_THRESHOLD`
    - Updated all configuration files, test constants, and deployment
    scripts
    - Updated CLI reference documentation to reflect new parameter names
    - Updated all code comments to use the new terminology

    1. **Improved Clarity**: The new names clearly indicate the purpose of
    each parameter - one for entering the validator set, one for being
    removed from it
    2. **Better Developer Experience**: Developers can immediately
    understand what these thresholds represent without needing additional
    context
    3. **Consistency**: Uniform terminology across the entire codebase
    reduces confusion
    4. **Future-Proof**: The new names are more generic and adaptable to
    potential future staking mechanism changes

    ⚠️ **This is a breaking change** that affects:

    1. **Environment Variables**: Any deployment or configuration using the
    old environment variable names (`AZTEC_DEPOSIT_AMOUNT`,
    `AZTEC_MINIMUM_STAKE`) must be updated
    2. **Contract Interfaces**: External systems calling
    `getDepositAmount()`, `getMinimumStake()`, or `finaliseHelper()` must
    update to use the new method names
    3. **Configuration Files**: Any JSON/YAML configuration files using the
    old parameter names need updates
    4. **Deployment Scripts**: Custom deployment scripts referencing the old
    names will need modification
    - Replace `depositAmount` with `activationThreshold` in all
    configurations
    - Replace `minimumStake` with `ejectionThreshold` in all configurations
    - Update contract calls:
      - `getDepositAmount()` → `getActivationThreshold()`
      - `getMinimumStake()` → `getEjectionThreshold()`
      - `finaliseHelper()` → `finaliseWithdraw()`

commit e2b45d5
Author: AztecBot <tech@aztecprotocol.com>
Date:   Fri Aug 1 20:40:41 2025 +0000

    [empty] Start merge-train. Choo choo.

commit 5d75421
Author: Aztec Bot <49558828+AztecBot@users.noreply.github.com>
Date:   Fri Aug 1 21:02:38 2025 +0100

    feat: merge-train/barretenberg (#16170)

    See
    [merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

    BEGIN_COMMIT_OVERRIDE
    chore:  civc tests refactor (#16159)
    END_COMMIT_OVERRIDE

    ---------

    Co-authored-by: AztecBot <tech@aztecprotocol.com>
    Co-authored-by: maramihali <mara@aztec-labs.com>

commit 9ab0377
Author: Maddiaa <47148561+Maddiaa0@users.noreply.github.com>
Date:   Fri Aug 1 16:19:44 2025 +0100

    chore(sol): remove unused param in relations.sol (#16166)

    Fixes a compiler warning

commit 0ab7472
Author: Aztec Bot <49558828+AztecBot@users.noreply.github.com>
Date:   Fri Aug 1 16:02:34 2025 +0100

    feat: merge-train/barretenberg (#16153)

    See
    [merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

    BEGIN_COMMIT_OVERRIDE
    chore: add a `PG_TAIL` proof type and queue type (#16156)
    END_COMMIT_OVERRIDE

    ---------

    Co-authored-by: AztecBot <tech@aztecprotocol.com>
    Co-authored-by: Khashayar Barooti <khashayar@aztecprotocol.com>
    Co-authored-by: Suyash Bagad <suyash@aztecprotocol.com>
    Co-authored-by: federicobarbacovi <171914500+federicobarbacovi@users.noreply.github.com>
    Co-authored-by: maramihali <mara@aztecprotocol.com>
    Co-authored-by: Jonathan Hao <jonathan@aztec-labs.com>

commit eccd655
Author: ludamad <adam.domurad@gmail.com>
Date:   Fri Aug 1 10:18:11 2025 -0400

    chore(release): aztec-nr releases like l1-contracts (#16123)

    Just overwrite the git contents and tag it / push to branch. Doesn't
    attempt to keep history

commit 82bb4d8
Author: Santiago Palladino <santiago@aztecprotocol.com>
Date:   Fri Aug 1 11:17:11 2025 -0300

    feat: Validators invalidate invalid blocks (#16120)

    We expect proposers to invalidate the previous block if it is invalid,
    but if they fail to do so, validators will eventually do it,
    prioritizing the committee members and then any validator whatsoever.

    This commit includes other fixes:
    - If a proposer cannot build a block due to not enough txs, it still
    tries to invalidate the previous one.
    - The archiver keeps track of the earliest (not latest) invalid block it
    has seen, so the sequencer can use this info to invalidate the earliest
    one.

    Builds on top of #16067

commit b18c823
Author: josh crites <critesjosh@gmail.com>
Date:   Fri Aug 1 09:49:18 2025 -0400

    chore(docs): Update testnet info (#16163)

    Updates the testnet contract and version info in docs/docs, to be
    backported to master so that this info is correct when new releases are
    cut.

    Also sets the default testnet version to be published to be 1.2.0

commit e8bfa98
Author: Álvaro Rodríguez <sirasistant@gmail.com>
Date:   Fri Aug 1 14:14:17 2025 +0200

    feat(avm)!: Tree opcodes fail in static context (#16158)

    Small PR to make emit notehash, emit nullifier and sstore fail on static
    contexts
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

ci-full Run all master checks.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants