fix: TxEffect deserializability (forward port of #25109 to next) - #25115
Open
AztecBot wants to merge 2 commits into
Open
fix: TxEffect deserializability (forward port of #25109 to next)#25115AztecBot wants to merge 2 commits into
AztecBot wants to merge 2 commits into
Conversation
Raw output of `git cherry-pick 358245c` onto next, with the conflict left UNRESOLVED. This commit intentionally does not build. Conflicted path (file location; no content conflict markers anywhere): noir-projects/noir-contracts/contracts/test/tx_effect_oracle_test_contract/src/test.nr #25109 was cut against merge-train/fairies-v5, which predates "refactor: split noir-projects into fnd/ and labs/" (#25007) on next. Rename detection relocated the two files the PR *edits* (noir-protocol-circuits/crates/types/src/blob_data/tx_effect.nr -> fnd/, the test contract's main.nr -> labs/) and merged both cleanly. But src/test.nr is *added* by the PR, so git cannot infer its new home: CONFLICT (file location): noir-projects/noir-contracts/contracts/test/ tx_effect_oracle_test_contract/src/test.nr added in 358245c inside a directory that was renamed in HEAD, suggesting it should perhaps be moved to noir-projects/labs/noir-contracts/contracts/test/ tx_effect_oracle_test_contract/src/test.nr The added file is left here at its source path, under a directory that no longer exists on next. Resolved in the next commit. Source: #25109
Resolves the single file-location conflict from the previous commit by moving the added test file to the post-#25007 layout: noir-projects/noir-contracts/contracts/test/tx_effect_oracle_test_contract/src/test.nr -> noir-projects/labs/noir-contracts/contracts/test/tx_effect_oracle_test_contract/src/test.nr This is exactly the destination git suggested in the CONFLICT message, and it is where the sibling main.nr this file's `mod test;` belongs to already lives on next. Mechanical — pure rename, zero content change. Verify with: git diff 358245c:noir-projects/noir-contracts/contracts/test/tx_effect_oracle_test_contract/src/test.nr \ HEAD:noir-projects/labs/noir-contracts/contracts/test/tx_effect_oracle_test_contract/src/test.nr (empty output = byte-identical to the source PR) No hand-written resolution was required: the port needed no adaptation beyond the path. The APIs it uses all exist on next under the labs/ paths — aztec::ephemeral::EphemeralArray, oracle::message_processing::get_tx_effects (labs/aztec-nr/aztec/src/oracle/message_processing.nr:71), and test::helpers::txe_oracles::get_last_tx_effects.
mverzilli
marked this pull request as ready for review
August 5, 2026 14:23
mverzilli
approved these changes
Aug 5, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Forward port of #25109 (
358245cb5f65a92d6dab11b8bf4c2eb059bedde8, merged intomerge-train/fairies-v5) ontonext. The automatedport-to-nextjob failed on this PR; this is the manual port.Why the auto-port failed
A file-location conflict from the
noir-projectsdirectory split — not a content conflict. There are no<<<<<<<markers anywhere in this branch.#25109 was cut against
merge-train/fairies-v5, which predates #25007 ("refactor: split noir-projects into fnd/ and labs/",c2ca1208981) onnext. That refactor moved:noir-projects/noir-protocol-circuits/**→noir-projects/fnd/noir-protocol-circuits/**noir-projects/noir-contracts/**→noir-projects/labs/noir-contracts/**Rename detection handles the two files #25109 edits — it relocated and cleanly merged
.../types/src/blob_data/tx_effect.nrintofnd/and the test contract'smain.nrintolabs/. But #25109 also adds a new file,src/test.nr, inside a directory that was renamed onnext. Git will not infer a new home for an added file:The porter treats any non-clean cherry-pick as a failure and stops. That one added file is the entire reason.
The two commits
chore(port): RAW cherry-pick— the cherry-pick output with the conflict left unresolved: the two edited files merged into their post-refactor: split noir-projects into fnd/ and labs/ #25007 homes, and the addedtest.nrsitting at its original source path undernoir-projects/noir-contracts/..., a directory that no longer exists onnext. This commit intentionally does not build.fix(port): … — mechanical— the resolution:git mvof that one file intonoir-projects/labs/..., exactly the destination git suggested and where the siblingmain.nrthat itsmod test;belongs to already lives. Pure rename, zero content change.Where the judgment lives
Nothing was hand-written or adapted. Every API the ported code uses already exists on
nextunder the labs/ paths:nextaztec::ephemeral::EphemeralArraynoir-projects/labs/aztec-nr/aztec/src/ephemeral/mod.nroracle::message_processing::get_tx_effectsnoir-projects/labs/aztec-nr/aztec/src/oracle/message_processing.nr:71test::helpers::txe_oracles::get_last_tx_effectsnoir-projects/labs/aztec-nr/aztec/src/test/helpers/txe_oracles.nr:160Deserializetraitnoir-projects/fnd/noir-protocol-circuits/crates/serde/src/serialization.nr:159Verification
The moved file is byte-identical to the source PR (empty output):
The final tree vs
nextis exactly the source PR's diff — 3 files, +40 / −4, matching358245cb5f6's own diffstat.Not validated by a local build; relying on CI.
Created by claudebox · group:
slackbot· requested by martin · Slack thread