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

e2e tests for keyless feature gating #12296

Merged
merged 4 commits into from
Mar 1, 2024
Merged

Conversation

alinush
Copy link
Contributor

@alinush alinush commented Feb 29, 2024

Description

This PR:

  • makes the feature gating for keyless TXNs a bit more readable, by moving it in AptosVM::validate_signed_transaction
  • adds tests for keyless feature gating working properly in e2e-move-tests
  • refactors the MoveHarness to work with keyless accounts, not just Ed25519 accounts

Copy link

trunk-io bot commented Feb 29, 2024

⏱️ 25h 56m total CI duration on this PR
Job Cumulative Duration Recent Runs
rust-unit-tests 10h 10m 🟩🟩 (+9 more)
windows-build 5h 1m 🟩🟩🟩🟩🟩 (+9 more)
rust-move-unit-coverage 2h 13m 🟩 (+5 more)
rust-move-tests 2h 7m 🟩 (+5 more)
rust-lints 1h 25m 🟥🟥🟩🟩 (+9 more)
run-tests-main-branch 1h 18m 🟩🟩🟩🟩🟩 (+9 more)
check 56m 🟩🟩🟩🟩🟩 (+9 more)
general-lints 29m 🟩🟩🟩🟩🟩 (+9 more)
check-dynamic-deps 28m 🟩🟩🟩🟩🟩 (+9 more)
rust-smoke-tests 28m 🟩
execution-performance / single-node-performance 20m 🟩
forge-e2e-test / forge 14m 🟩
rust-images / rust-all 13m 🟩
forge-compat-test / forge 13m 🟩
cli-e2e-tests / run-cli-tests 6m 🟩
semgrep/ci 6m 🟩🟩🟩🟩🟩 (+9 more)
file_change_determinator 3m 🟩🟩🟩🟩🟩 (+9 more)
file_change_determinator 2m 🟩🟩🟩🟩🟩 (+9 more)
node-api-compatibility-tests / node-api-compatibility-tests 51s 🟩
permission-check 44s 🟩🟩🟩🟩🟩 (+9 more)
permission-check 39s 🟩🟩🟩🟩🟩 (+9 more)
permission-check 38s 🟩🟩🟩🟩🟩 (+9 more)
permission-check 36s 🟩🟩🟩🟩🟩 (+9 more)
file_change_determinator 10s 🟩
execution-performance / file_change_determinator 9s 🟩
determine-docker-build-metadata 3s 🟩
permission-check 2s 🟩

settingsfeedbackdocs ⋅ learn more about trunk.io

@alinush alinush force-pushed the alin/feature-gating-keyless branch from 0bba2e8 to 5437a7f Compare February 29, 2024 04:38
@alinush alinush marked this pull request as draft February 29, 2024 18:02
@alinush alinush force-pushed the alin/feature-gating-keyless branch from 5437a7f to 1eff98b Compare February 29, 2024 19:16
Copy link

codecov bot commented Feb 29, 2024

Codecov Report

Attention: Patch coverage is 0% with 14 lines in your changes are missing coverage. Please review.

Project coverage is 64.0%. Comparing base (bf75902) to head (9deead1).
Report is 3 commits behind head on main.

Files Patch % Lines
aptos-move/aptos-vm/src/aptos_vm.rs 0.0% 10 Missing ⚠️
aptos-move/aptos-vm/src/keyless_validation.rs 0.0% 2 Missing ⚠️
types/src/keyless/configuration.rs 0.0% 1 Missing ⚠️
types/src/keyless/groth16_vk.rs 0.0% 1 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff            @@
##             main   #12296     +/-   ##
=========================================
- Coverage    64.1%    64.0%   -0.1%     
=========================================
  Files         794      794             
  Lines      176445   176612    +167     
=========================================
  Hits       113195   113195             
- Misses      63250    63417    +167     

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

@alinush alinush force-pushed the alin/feature-gating-keyless branch 2 times, most recently from 3f8335f to 5c110d8 Compare February 29, 2024 23:32
@alinush alinush force-pushed the alin/feature-gating-keyless branch 2 times, most recently from 3414729 to f50cb63 Compare March 1, 2024 19:16
@alinush alinush force-pushed the alin/feature-gating-keyless branch from f50cb63 to 5201ae4 Compare March 1, 2024 19:22
@alinush alinush changed the title clearer feature gating for keyless TXNs e2e tests for keyless feature gating Mar 1, 2024
@alinush alinush marked this pull request as ready for review March 1, 2024 19:35
@alinush alinush force-pushed the alin/feature-gating-keyless branch from 8cbc6d3 to 9deead1 Compare March 1, 2024 19:50
@alinush alinush enabled auto-merge (squash) March 1, 2024 20:52

This comment has been minimized.

This comment has been minimized.

Copy link
Contributor

github-actions bot commented Mar 1, 2024

✅ Forge suite compat success on aptos-node-v1.9.5 ==> 9deead1776093f06dcf1357678ea1794e9aa1fb8

Compatibility test results for aptos-node-v1.9.5 ==> 9deead1776093f06dcf1357678ea1794e9aa1fb8 (PR)
1. Check liveness of validators at old version: aptos-node-v1.9.5
compatibility::simple-validator-upgrade::liveness-check : committed: 6475 txn/s, latency: 5005 ms, (p50: 4800 ms, p90: 9600 ms, p99: 10200 ms), latency samples: 233100
2. Upgrading first Validator to new version: 9deead1776093f06dcf1357678ea1794e9aa1fb8
compatibility::simple-validator-upgrade::single-validator-upgrade : committed: 695 txn/s, latency: 35200 ms, (p50: 37600 ms, p90: 54300 ms, p99: 57300 ms), latency samples: 58440
3. Upgrading rest of first batch to new version: 9deead1776093f06dcf1357678ea1794e9aa1fb8
compatibility::simple-validator-upgrade::half-validator-upgrade : committed: 354 txn/s, submitted: 576 txn/s, expired: 221 txn/s, latency: 28959 ms, (p50: 29500 ms, p90: 53100 ms, p99: 65900 ms), latency samples: 33007
4. upgrading second batch to new version: 9deead1776093f06dcf1357678ea1794e9aa1fb8
compatibility::simple-validator-upgrade::rest-validator-upgrade : committed: 1967 txn/s, latency: 14540 ms, (p50: 15100 ms, p90: 19000 ms, p99: 19900 ms), latency samples: 94440
5. check swarm health
Compatibility test for aptos-node-v1.9.5 ==> 9deead1776093f06dcf1357678ea1794e9aa1fb8 passed
Test Ok

Copy link
Contributor

github-actions bot commented Mar 1, 2024

✅ Forge suite realistic_env_max_load success on 9deead1776093f06dcf1357678ea1794e9aa1fb8

two traffics test: inner traffic : committed: 7461 txn/s, latency: 5248 ms, (p50: 5100 ms, p90: 6000 ms, p99: 12300 ms), latency samples: 3230840
two traffics test : committed: 100 txn/s, latency: 1973 ms, (p50: 1800 ms, p90: 2100 ms, p99: 7200 ms), latency samples: 1720
Latency breakdown for phase 0: ["QsBatchToPos: max: 0.243, avg: 0.205", "QsPosToProposal: max: 0.344, avg: 0.276", "ConsensusProposalToOrdered: max: 0.475, avg: 0.442", "ConsensusOrderedToCommit: max: 0.326, avg: 0.315", "ConsensusProposalToCommit: max: 0.791, avg: 0.757"]
Max round gap was 1 [limit 4] at version 1588102. Max no progress secs was 5.743828 [limit 15] at version 1588102.
Test Ok

@alinush alinush merged commit 696b193 into main Mar 1, 2024
83 checks passed
@alinush alinush deleted the alin/feature-gating-keyless branch March 1, 2024 21:24
alinush added a commit that referenced this pull request Mar 4, 2024
* Add custom Serialize/Deserialize impl for EphemeralPublicKey, Pepper, Groth16ZkpAndStatement, G1Bytes, and G2Bytes, which output hex when used to serialize json (#12295)

* e2e Move tests for keyless + feature gating (#12296)

* add support for passkey-based EPKs & merge non-malleability signature into ephemeral signature (#12333)

Co-authored-by: Rex Fernando <[email protected]>
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.

3 participants