Skip to content

Conversation

@derekpierre
Copy link
Member

@derekpierre derekpierre commented Nov 20, 2025

Type of PR:

  • Bugfix
  • Feature
  • Documentation
  • Other

Required reviews:

  • 1
  • 2
  • 3

What this does:

Fixed issues encountered while doing real world testing.

  • Sort signatures based on signer addresses returned before aggregating them
  • Use accountGasLimits (proper name) instead of accountGasLimit
  • Allow optional signature property on PackedUserOperationToSign
  • Expose PackedUserOperationToSign and UserOperationToSign as part of nucypher/taco (so nucypher/shared isn't needed).

Issues fixed/closed:

  • Fixes #...

Why it's needed:

Explain how this PR fits in the greater context of the NuCypher Network. E.g.,
if this PR address a nucypher/productdev issue, let reviewers know!

Notes for reviewers:

What should reviewers focus on? Is there a particular commit/function/section
of your PR that requires more attention from reviewers?

Copy link

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull Request Overview

This PR fixes several bugs in the TACo signing implementation, including correcting signature aggregation ordering, fixing property naming inconsistencies, and improving type exports.

  • Sorts signatures by signer address before aggregation to ensure deterministic ordering
  • Renames accountGasLimit to accountGasLimits throughout the codebase for API consistency
  • Makes the signature property optional on PackedUserOperationToSign and exports signing types from the taco package

Reviewed Changes

Copilot reviewed 5 out of 5 changed files in this pull request and generated 1 comment.

Show a summary per file
File Description
packages/taco/src/sign.ts Refactored signature aggregation to sort by signer address and updated to use array of signatures instead of object
packages/shared/src/types.ts Renamed accountGasLimit to accountGasLimits and made signature property optional on PackedUserOperationToSign
packages/taco/test/taco-sign.test.ts Updated test fixtures to use accountGasLimits and modified test data to return signatures out of order to verify sorting
packages/shared/test/porter.test.ts Updated comment in test to reflect the corrected property name accountGasLimits
packages/taco/src/index.ts Exported PackedUserOperationToSign and UserOperationToSign types for external consumption

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

@codecov-commenter
Copy link

codecov-commenter commented Nov 20, 2025

Codecov Report

❌ Patch coverage is 94.11765% with 1 line in your changes missing coverage. Please review.
⚠️ Please upload report for BASE (signing-epic@552cf6f). Learn more about missing BASE report.

Files with missing lines Patch % Lines
packages/shared/src/types.ts 0.00% 1 Missing ⚠️
Additional details and impacted files
@@               Coverage Diff               @@
##             signing-epic     #741   +/-   ##
===============================================
  Coverage                ?   89.75%           
===============================================
  Files                   ?       97           
  Lines                   ?     8451           
  Branches                ?      288           
===============================================
  Hits                    ?     7585           
  Misses                  ?      863           
  Partials                ?        3           

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@derekpierre derekpierre changed the title [WIP] Signing Bug fixes Signing Bug fixes Nov 20, 2025
@derekpierre derekpierre marked this pull request as ready for review November 20, 2025 01:09
@derekpierre derekpierre mentioned this pull request Nov 20, 2025
30 tasks
@derekpierre
Copy link
Member Author

Now that lynx is updated with the nonce updates, the CI tests won't pass. I will merge this PR and rebase #739 over signing-epic and ensure that CI passes (and fix any issues) in that PR before merging.

@derekpierre derekpierre merged commit 2d11ff3 into nucypher:signing-epic Nov 20, 2025
1 of 10 checks passed
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.

5 participants