Skip to content

feat!: structured public inputs via kernel io#15383

Merged
ledwards2225 merged 56 commits into
merge-train/barretenbergfrom
lde/kernel_io
Jul 8, 2025
Merged

feat!: structured public inputs via kernel io#15383
ledwards2225 merged 56 commits into
merge-train/barretenbergfrom
lde/kernel_io

Conversation

@ledwards2225

@ledwards2225 ledwards2225 commented Jun 27, 2025

Copy link
Copy Markdown
Contributor

Introduces the KernelIO class/mechanism to begin unifying the handling of certain fixed internal public inputs.

  • For now it's utilized only for the Databus return data commitments
  • Removes all use of app/kernel_return_data_commitment_pub_input_key in DataBusPropagationData (but they are not yet removed from the VKs)
  • Confirmed that changes in VKs of certain kernels is due only to the above change (public component keys are still present but unset so take default values)

Closes AztecProtocol/barretenberg#1371

AztecBot and others added 14 commits June 27, 2025 02:02
…tered (#15313)

We make the folding of Apps share a transcript until a kernel is encountered.
Bigfield internal audit related cleanup/fixes.
- Simplified data structs: `non_native_multiplication_witnesses` and
`non_native_partial_multiplication_witnesses`
- Reduced code duplication with new functions like
`get_binary_basis_limb_witness_indices`
- Resolved/removed some of the TODOs

resolves #14662 #14660 
resolves AztecProtocol/barretenberg#999
resolves #14658
@ledwards2225 ledwards2225 changed the base branch from next to merge-train/barretenberg June 27, 2025 20:28
@ledwards2225 ledwards2225 marked this pull request as ready for review July 1, 2025 17:55
@ledwards2225 ledwards2225 marked this pull request as draft July 1, 2025 17:56
@AztecBot AztecBot force-pushed the merge-train/barretenberg branch 2 times, most recently from 1829e9a to 83791b3 Compare July 2, 2025 19:08
@AztecBot AztecBot force-pushed the merge-train/barretenberg branch from 141bfcd to 74bac59 Compare July 3, 2025 03:06
AztecBot and others added 6 commits July 3, 2025 08:27
chrome: Distribute content equally among threads within each range

The original code gives each thread the same number of rows but the same
number of rows in each range does not necessarily mean the same work.
This PR makes sure that for each range, each thread gets roughly the
same number of rows. The leftovers are also evenly distributed because
if we give them to the last thread for each range, the total worst case
the last thread can get O(num_thread * num_ranges) more rows than
others.

@federicobarbacovi federicobarbacovi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Do we still need to keep these PublicComponentKeys?

@AztecBot AztecBot force-pushed the merge-train/barretenberg branch from 42b65c1 to 8369b3f Compare July 8, 2025 14:03
@fcarreiro fcarreiro removed their request for review July 8, 2025 14:14

@federicobarbacovi federicobarbacovi left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good to me, just a few minor comments!

@ledwards2225

Copy link
Copy Markdown
Contributor Author

Do we still need to keep these PublicComponentKeys?

We no longer need them no because with this update they're no longer "used", but removing them altogether means removing them from the VKs which would have expanded the scope here quite a bit. I'm hoping to eliminate the need for all PublicComponentKeys then removing them from the VKs in one go.

@ledwards2225 ledwards2225 changed the title feat: kernel io feat!: structured public inputs via kernel io Jul 8, 2025
@ledwards2225 ledwards2225 merged commit ea2dc29 into merge-train/barretenberg Jul 8, 2025
5 checks passed
@ledwards2225 ledwards2225 deleted the lde/kernel_io branch July 8, 2025 19:08
github-merge-queue Bot pushed a commit that referenced this pull request Jul 9, 2025
See
[merge-train-readme.md](https://github.com/AztecProtocol/aztec-packages/blob/next/.github/workflows/merge-train-readme.md).

BEGIN_COMMIT_OVERRIDE
chore: stdlib bool internal audit  (#15070)
feat: improve Shplonk api (#15422)
fix(merge-train): don't queue merge if merge-train failed queue, pass on
rebase logic (#15508)
chore: nuke bit array (#15522)
chore: remove template parameters (#15530)
chore: no PK (#15386)
chore!: Correct public inputs propagation in the tube (#15547)
chore: use `batch_invert` in native IPA verifier (#15557)
chore: Move `stdlib::uint_plookup` to `stdlib::uint` (#15460)
chore: use const ref commitment keys (#15584)
fix: hiding circuit vk computed only once (#15589)
feat: transcript can hash objects independently (#15510)
chore: readme for benchmarking remotely (#15512)
chore: fix avm test (#15592)
chore: hash more stuff for IPA. (#15519)
chore: fix avm build in merge-train/bb (#15594)
feat!: structured public inputs via kernel io (#15383)
fix!: aggregate correct nested pairing points in the hiding circuit
(#15598)
fix: bb merge-train conflicts (#15617)
chore: Refactor shplonk verifier api (#15618)
chore!: databus consistency checks in the hiding circuit (#15599)
feat!: VK hash consistency check (#15591)
END_COMMIT_OVERRIDE

---------

Co-authored-by: AztecBot <tech@aztecprotocol.com>
Co-authored-by: sergei iakovenko <105737703+iakovenkos@users.noreply.github.com>
Co-authored-by: federicobarbacovi <171914500+federicobarbacovi@users.noreply.github.com>
Co-authored-by: Suyash Bagad <suyash@aztecprotocol.com>
Co-authored-by: Jonathan Hao <jonathan@aztec-labs.com>
Co-authored-by: ledwards2225 <98505400+ledwards2225@users.noreply.github.com>
Co-authored-by: Raju Krishnamoorthy <krishnamoorthy@gmail.com>
Co-authored-by: notnotraju <raju@aztec-labs.com>
Co-authored-by: Lucas Xia <lucasxia01@gmail.com>
Co-authored-by: Khashayar Barooti <khashayar@aztecprotocol.com>
Co-authored-by: Jean M <132435771+jeanmon@users.noreply.github.com>
Co-authored-by: Alex Gherghisan <alexghr@users.noreply.github.com>
Co-authored-by: Santiago Palladino <spalladino@users.noreply.github.com>
Co-authored-by: Santiago Palladino <santiago@aztec-labs.com>
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.

7 participants