@obolnetwork/obol-sdk 2.2.1 → 2.2.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.clusterLockWithSafe = exports.nullDepositAmountsClusterLockV1X8 = exports.clusterLockV1X8 = exports.clusterConfigV1X8 = exports.clusterLockV1X7 = exports.clusterConfigV1X7 = exports.clusterLockV1X6 = exports.enr = void 0;
3
+ exports.clusterLockV1X10 = exports.clusterLockWithSafe = exports.nullDepositAmountsClusterLockV1X8 = exports.clusterLockV1X8 = exports.clusterConfigV1X8 = exports.clusterLockV1X7 = exports.clusterConfigV1X7 = exports.clusterLockV1X6 = exports.enr = void 0;
4
4
  exports.enr = 'enr:-HW4QLlrtMjFLGkFT1bwdGbvZQlH8hLi0M2g44JAxEYP3BZmYpcsy9Q56HPPD87fMucjvLv4-obEFacpsg0ehRilbHeAgmlkgnY0iXNlY3AyNTZrMaEDRaa5o2aSgqyFq_ERZcQTztrOij1mFtXX1bJuVI6ieak';
5
5
  // v1.6.0
6
6
  exports.clusterLockV1X6 = {
@@ -510,3 +510,422 @@ exports.clusterLockWithSafe = {
510
510
  '0x4067921a5257efe4ceb103f2129faaa7a502781157b3b54e5efca559c558c2b43b89f30962e87df88fbf62250049a31888fcd62735d54b7553e5dc75c3b6ae0901',
511
511
  ],
512
512
  };
513
+ exports.clusterLockV1X10 = {
514
+ cluster_definition: {
515
+ name: 'example lock',
516
+ creator: {
517
+ address: '',
518
+ config_signature: '',
519
+ },
520
+ operators: [
521
+ {
522
+ address: '',
523
+ enr: 'enr:-HW4QJNtMzqCeJ-l-JN-uONrvfhSYkKCen2pRsNj2_pn8uNmNk4bxrzuPYeUjQHuTojaQt4ELS1CepOs4aGljEVqDZyAgmlkgnY0iXNlY3AyNTZrMaECF8sxcrJIbKqz0Dt8zZuQDAa0vCXNOb6WyGK3PNCZUDI',
524
+ config_signature: '',
525
+ enr_signature: '',
526
+ },
527
+ {
528
+ address: '',
529
+ enr: 'enr:-HW4QEj4LAV6Xev497wJVTaLop8Y2HlpW5RJLy-HkfT9Kjx-Z67IKK6tTqBKbXLbNN0MwQrGmVu1sw2JOeJkssxij2qAgmlkgnY0iXNlY3AyNTZrMaEDEoKd19TAME7YyO1cvoRreBy3vN1HoLRiCDmQAU0COxU',
530
+ config_signature: '',
531
+ enr_signature: '',
532
+ },
533
+ {
534
+ address: '',
535
+ enr: 'enr:-HW4QHd3-FamFyvFDHLFxHU6DssgXsMrnX6qeU_AS9fTbj9DaJQs_q9iI_pi8-ZkBnVSo7gsmlmoWLolZLCPl5yHA_yAgmlkgnY0iXNlY3AyNTZrMaECD_aXBgaLIUORjLGL_HocQtfs-TnIq9VAAeaVpuuBwwo',
536
+ config_signature: '',
537
+ enr_signature: '',
538
+ },
539
+ {
540
+ address: '',
541
+ enr: 'enr:-HW4QK9efd0AfPkPTi0TxNmspICmRG54f4HjPs3eN6e6n_BoPij_xg_Kb-x6M3VyOvl1ROy5X-3cS5lHo-FhBImATJCAgmlkgnY0iXNlY3AyNTZrMaECKFnfFst3gAbEwSfLbywjMLPEjy8hUTVCy6ksj-61uGw',
542
+ config_signature: '',
543
+ enr_signature: '',
544
+ },
545
+ ],
546
+ uuid: '7D726A65-0AF6-7D4F-F10D-6F27A7ACE5C7',
547
+ version: 'v1.10.0',
548
+ timestamp: '2025-02-17T15:49:47Z',
549
+ num_validators: 10,
550
+ threshold: 3,
551
+ validators: [
552
+ {
553
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
554
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
555
+ },
556
+ {
557
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
558
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
559
+ },
560
+ {
561
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
562
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
563
+ },
564
+ {
565
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
566
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
567
+ },
568
+ {
569
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
570
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
571
+ },
572
+ {
573
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
574
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
575
+ },
576
+ {
577
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
578
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
579
+ },
580
+ {
581
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
582
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
583
+ },
584
+ {
585
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
586
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
587
+ },
588
+ {
589
+ fee_recipient_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
590
+ withdrawal_address: '0x0678D7f743842A8971B188E963D00Cb42D98495d',
591
+ },
592
+ ],
593
+ dkg_algorithm: 'default',
594
+ fork_version: '0x01017000',
595
+ deposit_amounts: null,
596
+ consensus_protocol: '',
597
+ target_gas_limit: 36000000,
598
+ config_hash: '0x2700238afeaa957dacc43211cdf23905b612e6ed80bf0a599354a68b266c7baf',
599
+ definition_hash: '0x7915f44717bce28d9cd36125a239b3fd914d400c4dbb9c64881aba3cfa6d9ac5',
600
+ },
601
+ distributed_validators: [
602
+ {
603
+ distributed_public_key: '0xa29bd09509ffc5f362cbd5f10c5a9dba0d4802589b0664c42a5b2556501c0ad061fefa700a2ce0df7fc91af72eab4310',
604
+ public_shares: [
605
+ '0xaaf1632118dd7efe84a61b3d445e3b61f2de6fac9d87ab40fbb67898b0fb91796eb7a23e591b89b7c5f2f956a7b0650d',
606
+ '0x9409497283da0356a72b6650950f4844b2397b117fdb168ffff467ae0a672c40cdbeff4c4a328625e05c09dac279f607',
607
+ '0xb1342e2292acbd64e2be97c51ea6839aea24494f9d831f5b72f8a4cc6ac750b47c9a84dca8a254af2a4b62cdc4c9b907',
608
+ '0xa41a184fe8fc538133f44420a025a1f273db267a06afa3b9bf29c3f5d6faad94b45cd1e42320d6c97d0b7d7dc844d705',
609
+ ],
610
+ builder_registration: {
611
+ message: {
612
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
613
+ gas_limit: 36000000,
614
+ timestamp: 1696000704,
615
+ pubkey: '0xa29bd09509ffc5f362cbd5f10c5a9dba0d4802589b0664c42a5b2556501c0ad061fefa700a2ce0df7fc91af72eab4310',
616
+ },
617
+ signature: '0xa4ec7861b875dddb3a34bcf2421a1059e2ad932c18fd770433bc40384543f62469adcd1412d5f3b1b4067838ef976a25013d4e9dcc40acfd54e4e68aeb0600894d0534f29acbaad7e2c57dcd0eb5faefec8c9b6149d134e10a512139278d08ce',
618
+ },
619
+ partial_deposit_data: [
620
+ {
621
+ pubkey: '0xa29bd09509ffc5f362cbd5f10c5a9dba0d4802589b0664c42a5b2556501c0ad061fefa700a2ce0df7fc91af72eab4310',
622
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
623
+ amount: '1000000000',
624
+ signature: '0xa1517e300c9f415435c22209aaddb8964870b7d8c820ea7d4699ac97102591518706cea360deb6249f186f07e7b19da70508a6a82151b72449cb85282e982b910651930313499ff4c9eefccb5e9df1bf58b1fff5958d798e4a764ee0e95e56af',
625
+ },
626
+ {
627
+ pubkey: '0xa29bd09509ffc5f362cbd5f10c5a9dba0d4802589b0664c42a5b2556501c0ad061fefa700a2ce0df7fc91af72eab4310',
628
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
629
+ amount: '32000000000',
630
+ signature: '0xa28610e3eae820ccc5a43e609f37b2a642f02451c532111d141894be151c120825b8bb84b2acff684a7df7815d8182d518df3bc21570e822019dafb40b8ba7eb26db24233f717e9968dbbb17e2acac5e371036b853bc569159fc037758a12e14',
631
+ },
632
+ ],
633
+ },
634
+ {
635
+ distributed_public_key: '0xb196c2559d6c6a61b2683c69f9d7ce187b5860dd1f315a159f023cadcb2844a67f082a71803af55faf0b1969ecd32598',
636
+ public_shares: [
637
+ '0x81d3169fe5d7b6258173d2c138190f04e6952970f9fd719103f5a77841fe0d96673ae3725e4d0bb1a7b5d1df8aaf846f',
638
+ '0xb4882f9d978c2aa5bd7d3366f7e0884d7eea3e5057d37723e5c888bb4a2ec145243cfbedb3e9560c8be3bddc48516eb5',
639
+ '0xa2000c765143b8ae368f33958db2b0430a182b791784e4f49f7422d8c014ccd25f516e43d6d0d187dab02a2d7bdbd56b',
640
+ '0xa64148bc168fa8c0fa9ab33066db7f38799678d76f789f29faee1fb11e1b44804ac7ebd4cdd67b593945d8b9d91f3087',
641
+ ],
642
+ builder_registration: {
643
+ message: {
644
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
645
+ gas_limit: 36000000,
646
+ timestamp: 1696000704,
647
+ pubkey: '0xb196c2559d6c6a61b2683c69f9d7ce187b5860dd1f315a159f023cadcb2844a67f082a71803af55faf0b1969ecd32598',
648
+ },
649
+ signature: '0x8ebc2b0db69c28a0dfed47e6e80e6e0b8655ff3df026afd65641d4061a94ca51e5167a61b1a0d68f630df031bb52445f032166656551f81f1ce650a8fee7ad3a22def957ca6b4ec18b2a020428d0c899e8eccedb05c5115fc37cf53befeb5367',
650
+ },
651
+ partial_deposit_data: [
652
+ {
653
+ pubkey: '0xb196c2559d6c6a61b2683c69f9d7ce187b5860dd1f315a159f023cadcb2844a67f082a71803af55faf0b1969ecd32598',
654
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
655
+ amount: '1000000000',
656
+ signature: '0xae9d45a4e8f1df6bb86a8c7780833256acd669c0610ffcd3255ccf18472fdaf0448b51f82a72a12db4ee1595f273f8cb115e0637f6bf2da8bdcb51956924609d826da800aa01a0e5a55be46e0b3459d92eb63f121f5dda7338574d153fa30535',
657
+ },
658
+ {
659
+ pubkey: '0xb196c2559d6c6a61b2683c69f9d7ce187b5860dd1f315a159f023cadcb2844a67f082a71803af55faf0b1969ecd32598',
660
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
661
+ amount: '32000000000',
662
+ signature: '0xa78bbbeece086cb5fe37dd1d4f350f83e396bfd773b6b58f0da94b3aec7196ecf9fe30d006aeb3c1b79ddd6ee53d0f9c03bafb3171f882be92c4d14586ac3e3262ad67ca522e3b729c896ad63c09628f34061796adc0575791e0e1906f480c37',
663
+ },
664
+ ],
665
+ },
666
+ {
667
+ distributed_public_key: '0xaf6b1d71aec29a67f549a0c4da43d38c4c5240c17282d5d09c5aed4f34d4503a0867485f7f7459f7523db335245bd193',
668
+ public_shares: [
669
+ '0xa6eeabdbf9752b8fdedcc57899b2dffde3a45d8682236fcb89f5fe5c0bb82a1fefa6d0559275eb51721d28727a9e3110',
670
+ '0xb7464ec1b1338cd5c70432913b03d1ce69d90ee9975e8067142ed32498e3c5255199e534a25534ffecd04962e7974802',
671
+ '0xa63d83df66850086a4f6d4d4c36d43a1604802d1a4a9de55dc80e80a5ab67c78d9ec083fce70b4f16b35b6e912f4347b',
672
+ '0x8c9824f5b8352b73b1aeb95c18f70a6af6ad049c6a3710886d9b03fb5bdec049df869226dadd7d7b795d95fe77b3c2f4',
673
+ ],
674
+ builder_registration: {
675
+ message: {
676
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
677
+ gas_limit: 36000000,
678
+ timestamp: 1696000704,
679
+ pubkey: '0xaf6b1d71aec29a67f549a0c4da43d38c4c5240c17282d5d09c5aed4f34d4503a0867485f7f7459f7523db335245bd193',
680
+ },
681
+ signature: '0xa28a417a58eaa6ef62892f13c8d38af6e41d98096b072b46592e6b1c115ee825e059aa475138e35b3b7c329e7c2bcbd60973afb711902687e58ff492e89b961863a529fa885853f388206612aaa53d9a246e633cdb9efe88f795a62fe12a69be',
682
+ },
683
+ partial_deposit_data: [
684
+ {
685
+ pubkey: '0xaf6b1d71aec29a67f549a0c4da43d38c4c5240c17282d5d09c5aed4f34d4503a0867485f7f7459f7523db335245bd193',
686
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
687
+ amount: '1000000000',
688
+ signature: '0xb4978905968a1340075ba031d6527cc72fed83d672071b2c7cf72483e35971a16d9b236a5dbaaeda6d165bb79ad46d7c04738cd6498de31cf13257e760f5cd4235fd55614015cfc630922d830bd8cf2de6fc1357dbf2f0e7975c089f2d385c13',
689
+ },
690
+ {
691
+ pubkey: '0xaf6b1d71aec29a67f549a0c4da43d38c4c5240c17282d5d09c5aed4f34d4503a0867485f7f7459f7523db335245bd193',
692
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
693
+ amount: '32000000000',
694
+ signature: '0x95e9b2d7b85969220347c6e98e1e754d2137210c8a395f0991492e58402dfd94985f7294ec3e1a934a97c97b68812daf0ba4c9871076a3f681e3b599ac3e4f68615916b325ab236ba14f7ee4ae902d51f919e8caa66b5b9b4bab755f730ebea1',
695
+ },
696
+ ],
697
+ },
698
+ {
699
+ distributed_public_key: '0xa4a55050ac22ede26a5382bcc8ee39fe4723212aca6e6d82f0b6ee7612b091661c7ef471616ee6991c32d728ca05ac80',
700
+ public_shares: [
701
+ '0x86577d10723191be29c214fcaefee042f8cdb7d999f9083bb3ed55d15313fb6bb00830165ce9070da79a782e4ab7b92b',
702
+ '0xac868ad9fb5bd6e62e7ffb4b9efee388ef528d121efc5a2ce80419f50398a6e3d8d28b8573d7abd8a0cea8274a5fa85b',
703
+ '0x81cd78ad2fdaa7c83d42183040762995e5c58f280307bda88072c0951d266a3df6bb31593a60cb84dfc320ada32e9cde',
704
+ '0x87691840c6e0d0393126deb50af960f365beb81bb3229adfc464b1bc74ce04baf6ec8208b71fb2cd182ea77ef97c748e',
705
+ ],
706
+ builder_registration: {
707
+ message: {
708
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
709
+ gas_limit: 36000000,
710
+ timestamp: 1696000704,
711
+ pubkey: '0xa4a55050ac22ede26a5382bcc8ee39fe4723212aca6e6d82f0b6ee7612b091661c7ef471616ee6991c32d728ca05ac80',
712
+ },
713
+ signature: '0xb3ab9972d6b940ad1041d601c11dddc411c5818d0ec1edbbb229838af8a879b6a304ed17e56cc849a4ad3a3369210d8b0c28de86d1db9ae14f80ea1703e21e4a5f8c98df1f51515647b81fa11ad30495c66b89fb6f724bb4e149f3cd1b084de5',
714
+ },
715
+ partial_deposit_data: [
716
+ {
717
+ pubkey: '0xa4a55050ac22ede26a5382bcc8ee39fe4723212aca6e6d82f0b6ee7612b091661c7ef471616ee6991c32d728ca05ac80',
718
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
719
+ amount: '1000000000',
720
+ signature: '0x858cea17b45ed31df1de2df1f190fca0088a6b7d74eb38e2a886fe34446c94aa8b6e3d274e50598f20e0a555d2092c740b39322642de7ce7ed1491f999fd061c105a82ac1c3165c3f223de7b8d99329b8457f39cb41cdd7ed876575dae4dcb14',
721
+ },
722
+ {
723
+ pubkey: '0xa4a55050ac22ede26a5382bcc8ee39fe4723212aca6e6d82f0b6ee7612b091661c7ef471616ee6991c32d728ca05ac80',
724
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
725
+ amount: '32000000000',
726
+ signature: '0xb3f922804f8c868beeb5cceb584ec9cb599af309272d6d60b6a7ea5d8ede143d2d09a5c0be6fd3a999c4e7db0ef23210194e9a9c6dda4cae73facb86f68ccd4a59dcf5ea0631afd93fc1ae6dba3b51e56439d2a7be6fcfff545666524eed772c',
727
+ },
728
+ ],
729
+ },
730
+ {
731
+ distributed_public_key: '0xabfc595bba9191aa8967678fc45843cf361b355bfb04ee29b1841a124f845cea1f0fd65829bffdedd3d15f48e0537006',
732
+ public_shares: [
733
+ '0xb6103288e5c889f4167b573e6e3577bfef79b0721d6901496915bf1b4a16134f3ffb69ffe682e1722227b9985b5469d6',
734
+ '0x80c40fe7122e00c3a0ea1ec1182dc6e634b8eb12129edf91a3bf39901a2d918acc2f55ea65072934e102e9b83f1b2cf5',
735
+ '0x83051a711d2b294c1330050b98e6bdc7112c668d2ebe3b6cc02f7a8aceceae355a88d777b5cef9c1c8d374a732d25690',
736
+ '0xa2020bbc227f75fc9d15afa33a8bee48c3e407373a3497aecff73ab5260232be99f1c0a141e1c410998a6d3d5efba0e5',
737
+ ],
738
+ builder_registration: {
739
+ message: {
740
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
741
+ gas_limit: 36000000,
742
+ timestamp: 1696000704,
743
+ pubkey: '0xabfc595bba9191aa8967678fc45843cf361b355bfb04ee29b1841a124f845cea1f0fd65829bffdedd3d15f48e0537006',
744
+ },
745
+ signature: '0x89ba92023febda1ce85596f1014faf2e0f0a7de6d4c34a898e0b134c7e945cd2209ec3f04bfb898d7b5873f60b134eda095474ff1b6839c4d3e38e7389b76131857822be0797038f3f6b1d2393c169d1236ed9603ee12afe8160eef573b4f95c',
746
+ },
747
+ partial_deposit_data: [
748
+ {
749
+ pubkey: '0xabfc595bba9191aa8967678fc45843cf361b355bfb04ee29b1841a124f845cea1f0fd65829bffdedd3d15f48e0537006',
750
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
751
+ amount: '1000000000',
752
+ signature: '0x91220bfd317b5a5749141b3e2b559e3dc457f5a82bc19d72816469e75cdaac3130e5b878b00aeed752025ad2b628511f0d928deae63997a576e50f6fd29c851c7a37b8e73753589464b26806c7a7ed22adf2d770a4c48cf47f0ce9bad0648557',
753
+ },
754
+ {
755
+ pubkey: '0xabfc595bba9191aa8967678fc45843cf361b355bfb04ee29b1841a124f845cea1f0fd65829bffdedd3d15f48e0537006',
756
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
757
+ amount: '32000000000',
758
+ signature: '0x8e085bea5fb0328d594ad5919b065b5eef07d191d0cb77c431145165e0217f4ea4462a9c24f80b213031c3f6cd25c61c0d5b67480d92f6c402083b84ef056377c9bd2d5bf3c5e1105a45d82110492d809994067672f460e950fbcfed7bec2b64',
759
+ },
760
+ ],
761
+ },
762
+ {
763
+ distributed_public_key: '0x8903a3bfea54bece2a094f0b32200f11000b53b7c9c51af670350f5b59c803564d6daa4685fd57bd2fbab00c0eef2db1',
764
+ public_shares: [
765
+ '0xb277a594864fe70e03882c8a4da57e898f8dfdb53bf9d50055c7b0463c3234a7c33cfc7a5912e2ee935e001e56a93ac0',
766
+ '0xa5f8a06dadd4d590d6a12c299862b9753e7cd40bb35e2301c1b70818032b2a6d6b5f791811822391e06b846f5dff49e4',
767
+ '0xa27e43e26e406b6eba609c23ffa15a2e342595aeb255b15a122bbe83474f8bdbd99d463129ea3553b5edebdd42b91a25',
768
+ '0x884456ab08879a07d36aa7127ad3b6a9e1efc9fc8a2edac842f9bd92dbe147ee30b2540c67464a2775db55670dbfbd90',
769
+ ],
770
+ builder_registration: {
771
+ message: {
772
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
773
+ gas_limit: 36000000,
774
+ timestamp: 1696000704,
775
+ pubkey: '0x8903a3bfea54bece2a094f0b32200f11000b53b7c9c51af670350f5b59c803564d6daa4685fd57bd2fbab00c0eef2db1',
776
+ },
777
+ signature: '0xb57df3ed71970f51d8f16577c4285ffab19d8cf9ec7e39fe6ccb41d02a0f97725b6b9dd53a08684633d047c8accd1b1310286db798bf1432ffc6252510dd0108393c4cfe517c4d5cdcbca7468cb4d1c36ad1f4d375e137eb428947039e00ee07',
778
+ },
779
+ partial_deposit_data: [
780
+ {
781
+ pubkey: '0x8903a3bfea54bece2a094f0b32200f11000b53b7c9c51af670350f5b59c803564d6daa4685fd57bd2fbab00c0eef2db1',
782
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
783
+ amount: '1000000000',
784
+ signature: '0xb117b392658024d3186ebb1ae05a504d121d6d5bb7e7202546585ec568c91f16721291d84a5b823fa0b843eaf73e7aa0157e99cf295de8f4da1025a724fd6839944319d249662bcafd4e5741bb6612f9bae4dcf33f77fe1346916403903e9770',
785
+ },
786
+ {
787
+ pubkey: '0x8903a3bfea54bece2a094f0b32200f11000b53b7c9c51af670350f5b59c803564d6daa4685fd57bd2fbab00c0eef2db1',
788
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
789
+ amount: '32000000000',
790
+ signature: '0xb9c7bca45073392af87964f6d71af90538b091b9a64075504143fe3191b1379e1f75953754b98f3327ca11315cfa5c251487c0f40f34533f5cd742d9c971fdf8b8bdca4653684500bc415287010b88a46f6accd88e4221732a33b2324555e844',
791
+ },
792
+ ],
793
+ },
794
+ {
795
+ distributed_public_key: '0x982d31edf85a4e2c29c62847b6ed1763f4b9bfcc2856670e874ae3a070abfd98935a38990cca4f64bfbcab0a54c04c9f',
796
+ public_shares: [
797
+ '0x9075526824bf7179c533486f08a9a082d7370a64f23bc8de86e58e674573a780fbf704d94b954c068ee63406d9014912',
798
+ '0xb6718f7d2558153b99724ab442dd583c840fd8cf752c37b3ab586ed050a7514711f8ac2ff48f06f0ca893ad3b8a543ae',
799
+ '0xa66ba35304358d96b34ca79ccb6a969b67f2578de038bce5c41d1ab6e8cfdf34e5fa383fb32dbd4058e821e922ff6f0b',
800
+ '0x8fa6f6966534e7a91ae03db663bfba571f9a4ff2dbbb57592b177011667b5f0dd7f8ab676cfa7f48f8d1ece5c1cbfbb2',
801
+ ],
802
+ builder_registration: {
803
+ message: {
804
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
805
+ gas_limit: 36000000,
806
+ timestamp: 1696000704,
807
+ pubkey: '0x982d31edf85a4e2c29c62847b6ed1763f4b9bfcc2856670e874ae3a070abfd98935a38990cca4f64bfbcab0a54c04c9f',
808
+ },
809
+ signature: '0xa0510be1b9bf6c9f97407626c9b380e9bafe1ed96b2261e0f225677f1ac9efe2cdb2b56d629e8bc086095e3ad2a60295177345503e5f14a6df57fed30dc24ce074bfa24f2439482ce141879c53b49275c8f8d109e445b9e36033a6c09701c202',
810
+ },
811
+ partial_deposit_data: [
812
+ {
813
+ pubkey: '0x982d31edf85a4e2c29c62847b6ed1763f4b9bfcc2856670e874ae3a070abfd98935a38990cca4f64bfbcab0a54c04c9f',
814
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
815
+ amount: '1000000000',
816
+ signature: '0xb7e4c2ee9690cd281ad9dcabf0ea7586c732aed7e027eecee3d5a5610fa46637a56588c1ee3aa8e5a0ac91994aac2e70103ebe8d3bfa2413dd98f8fc79a1e09d1e768e59e1d52f4241959f49026c23d11f8f3bab658c6022094294f7b745b280',
817
+ },
818
+ {
819
+ pubkey: '0x982d31edf85a4e2c29c62847b6ed1763f4b9bfcc2856670e874ae3a070abfd98935a38990cca4f64bfbcab0a54c04c9f',
820
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
821
+ amount: '32000000000',
822
+ signature: '0x9164396591df8bd49b9cfea0a19f5445e0c14e6e49c63fe38e00e4acc66cadf4b9073a37721fb9939b9df636e64cff710f91365d982e08e81842922122fe2d49469361d971550ea8a71d1389c747c01e672b64e89cea385e962a52e7998f0967',
823
+ },
824
+ ],
825
+ },
826
+ {
827
+ distributed_public_key: '0x8cec3bdc06a20450f3137355759efd7af9e21faebb7ea3f6f29f4a459cc6f44b1f026938475d00383e5e9d4b6cca517d',
828
+ public_shares: [
829
+ '0xb7ea8aa6504bd4ad7615f0878ccdd24d349135bab3b3be57d90953e6c33c1291c6417ce9da2882529b79afae48858817',
830
+ '0xb7f710b736344713eb017f6d5a5c6253f47b7cb725bfc3760e64cef1c66c04c0eecc56f9dbcec910d25d6f25b765eafd',
831
+ '0xa1b8221d72e55096b6588021055791e460e604c02a88d773f2adbf9c8a784cb52c3230796442ea1c003d34b4f6bed89f',
832
+ '0xaf56808edfb9399959f05a824105b49caece347f12485fa089c5f42c259cf482fcd88ef7fc5190229bbec2886b76d2ef',
833
+ ],
834
+ builder_registration: {
835
+ message: {
836
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
837
+ gas_limit: 36000000,
838
+ timestamp: 1696000704,
839
+ pubkey: '0x8cec3bdc06a20450f3137355759efd7af9e21faebb7ea3f6f29f4a459cc6f44b1f026938475d00383e5e9d4b6cca517d',
840
+ },
841
+ signature: '0xb22bed0c097bea7f709a5b07a488db105ab97aadb29a962a64d4b873a5cba025bccc2204b0fd2c963e9ba9fb62c921b00836bb27d0122fca483c97f3709802d5c7bfc5997e05306d555ef015e83c2649996d72a1fab6b003fa572d37dba5a6a0',
842
+ },
843
+ partial_deposit_data: [
844
+ {
845
+ pubkey: '0x8cec3bdc06a20450f3137355759efd7af9e21faebb7ea3f6f29f4a459cc6f44b1f026938475d00383e5e9d4b6cca517d',
846
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
847
+ amount: '1000000000',
848
+ signature: '0xa9a9fb8b74c2ec7f6fce1c3ab5b18450199f73f82bb3876759b9cbe6188fa57eeedb072e198ad5d6e50343bac28a6fe4005d4487a8ecc0d20ba0b8ab50cdb2b88eb74edb204ac97a666f166e5c8fca144028265dd1e8e25103568b508f8cb707',
849
+ },
850
+ {
851
+ pubkey: '0x8cec3bdc06a20450f3137355759efd7af9e21faebb7ea3f6f29f4a459cc6f44b1f026938475d00383e5e9d4b6cca517d',
852
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
853
+ amount: '32000000000',
854
+ signature: '0xa82a1bdb4af68cc5432796185aa31eec3b19a0350d2af2ec737293cd1512e652beeff817aaa4ef2def7acd5c3b3ea4ab12264f1cb580ca94f91d8462cd2c79bbfb7c6fd33dd7075a2a758e508850a6fe1632126f99901eb0d8c47a5b15bd3dc1',
855
+ },
856
+ ],
857
+ },
858
+ {
859
+ distributed_public_key: '0xa4b5fab5061fc9ef70f9d2b49a67020b18a363189087b8e8a2a496b284dff50af1e5f94ec185de2cbaaf3e5083ee49ac',
860
+ public_shares: [
861
+ '0xa148f613fb6e6a66d4ec2c451fa18d8b6f9da7e0fedbd50c93129e5d7db4cfc5fc7eb73fcdf3344775e8ddd5c6a9701c',
862
+ '0xabe0a5fa29a3c50d670cad50b74301afdb6c69b5be1444a9966cd7bac09a8af17ca5ec0eee5c631c8a2fc5ab28517b12',
863
+ '0x9523a5bc93ed484254850fe5efbb6e63cbc42537c453d7bcef77ca832b7bfb2b1ecf59db8a0ea37928eae30cde21407a',
864
+ '0x90bacf891ad4c74107ee3abc0a5c776374654285c9a254b44d44b98cd84a7961502dd904e9729e1c10b44d5cd6b39600',
865
+ ],
866
+ builder_registration: {
867
+ message: {
868
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
869
+ gas_limit: 36000000,
870
+ timestamp: 1696000704,
871
+ pubkey: '0xa4b5fab5061fc9ef70f9d2b49a67020b18a363189087b8e8a2a496b284dff50af1e5f94ec185de2cbaaf3e5083ee49ac',
872
+ },
873
+ signature: '0xa653f58f67e88fbc2bff28b9c8ad2b1b077307a0203d93e272c41322b588682665682b89249afb394a3d16a4f38f8a380e9da882baa2799d8183a99956aaf00e399b433b46a788a4f066cbd1f366455fcaebc67426b752766bb609632215e087',
874
+ },
875
+ partial_deposit_data: [
876
+ {
877
+ pubkey: '0xa4b5fab5061fc9ef70f9d2b49a67020b18a363189087b8e8a2a496b284dff50af1e5f94ec185de2cbaaf3e5083ee49ac',
878
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
879
+ amount: '1000000000',
880
+ signature: '0xa704c1fd7ce386489a1d8e7880c0eaeaf8fae7df8cd8e121af01df9f02868692dab57d49198e7d3f39051f558b6d7209072851ca64c2d5dc9018d24c3623104763b256f2c411e89077212909f7f9af38349a34aeecfb0091ce11a2750dad1587',
881
+ },
882
+ {
883
+ pubkey: '0xa4b5fab5061fc9ef70f9d2b49a67020b18a363189087b8e8a2a496b284dff50af1e5f94ec185de2cbaaf3e5083ee49ac',
884
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
885
+ amount: '32000000000',
886
+ signature: '0x8a6fce6441c11ebea96eeaa6e393c4f8e7e9125a16f8aa581401d5e89d30f346ab8412498f7afe7e6319bee2af986bb508c564e11fe788d8bd749712a9303167e11bafc9af3fa56766178f2d1370b192bdfafdbf9a277903c8117d3d3b777463',
887
+ },
888
+ ],
889
+ },
890
+ {
891
+ distributed_public_key: '0x83aaa2f21b55e2abce7f58de816b4c30887d78f58970dd75cae579a735d2f4b90dd6296117d1344773ee89ce1e1028be',
892
+ public_shares: [
893
+ '0xa7bad556974c056c1caf97fed8c97a2c1652eb8b1336188fd26909ef3856e35a280e1782eacde6918342f219af55a26b',
894
+ '0x8a70c5e9738a12d9b6dd6fa25f03880d3424808495d459561b03f01c82fd8231c5c378000f77f903af1611c3719ab06a',
895
+ '0xa425fc0bfbf980f3b3ea2c5aee31040cb46c40545d3acbfdee1b0f4fc2a1729a6ed70b431a1f2e51cafe6bbc2fd5a389',
896
+ '0x932535a5f6004721c15d13c97a238ad9c3b727b4eb0c505f655cf27e60c9f9fc09c1608121f127f2454b08c4b7b842d7',
897
+ ],
898
+ builder_registration: {
899
+ message: {
900
+ fee_recipient: '0x0678d7f743842a8971b188e963d00cb42d98495d',
901
+ gas_limit: 36000000,
902
+ timestamp: 1696000704,
903
+ pubkey: '0x83aaa2f21b55e2abce7f58de816b4c30887d78f58970dd75cae579a735d2f4b90dd6296117d1344773ee89ce1e1028be',
904
+ },
905
+ signature: '0x80c050afcfc11eeb19452cb1d752a5f651e97a20a855677c99a57052beac4e0f42dcd3772bfa36cf7c473397cb62be5113412bfb39bbdcfb0e7a27eec1908bb82432b759abee785d85977f2f65cf527a01a1f1d09d61848565ff25fa0ed1c475',
906
+ },
907
+ partial_deposit_data: [
908
+ {
909
+ pubkey: '0x83aaa2f21b55e2abce7f58de816b4c30887d78f58970dd75cae579a735d2f4b90dd6296117d1344773ee89ce1e1028be',
910
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
911
+ amount: '1000000000',
912
+ signature: '0xac349ac800221919a2b82e8422ba1ccc9996a466134b6983c07ac41b053229700630f452c71f75fd95ed26887ca52e9d0d858281e73262a818160b30fd41fc6bd5f52ce0257e5ff0097a280d91bffdcd2fbf62f86d6769803f181e0c0ccd9043',
913
+ },
914
+ {
915
+ pubkey: '0x83aaa2f21b55e2abce7f58de816b4c30887d78f58970dd75cae579a735d2f4b90dd6296117d1344773ee89ce1e1028be',
916
+ withdrawal_credentials: '0x0200000000000000000000000678d7f743842a8971b188e963d00cb42d98495d',
917
+ amount: '32000000000',
918
+ signature: '0xa5febb16def6c0557900be42a2dbe9485e840429ea4987dea4a321a33821fa86da938fc6febb6aef2851016e91a0ba1002f8393ce5a7b546c7f2b905105b5e62456da3d31a7f113b2a1958fd1aacc7ce629f31130d9540344f2efc358fe3113d',
919
+ },
920
+ ],
921
+ },
922
+ ],
923
+ signature_aggregate: '0xb13e0a39e847d96ae417c9b7b0f828084f02dacd0af7ad7f8722416c418a8d044fb0ac28cfa25d8be1b9b3e59851c3f200d7ee29568e9e3b5ce087adceb9a5e3d25ed6148ccc37bb909fe34526140f4fb851a70734d44f443acbeeec077c6fa6',
924
+ lock_hash: '0x3b6fc91acfb03ef4e8dd549bad50e21d70abafea82a3678ef52a3804b0751d10',
925
+ node_signatures: [
926
+ '0x789d87147d04cea272cf1152560a0e632a92359018393e2588f21e90a81010a7068a46ff2944861a53dd7a4bc5335a9b0c00fa5074a6f620f48ee5f750dfef3401',
927
+ '0x3f2c27b0c2bfa73a9b23cef8879a277336112f4feaf43e0df72517eb45089715189a5a48d2f693d5ffe366a793bc0d76a3e3aac399e91ad9edbcab1775c17de301',
928
+ '0x9175f02eb9a8aed897b5ab1914fbda43fef59482592517299c892c582cae3b584aa923fa693099527fd9b3dc359ba4df85290ee040fbb3d610baf343f68cc66701',
929
+ '0xa13aecbd615d2a4903d9480e1178efa319db4fbfcbaef2915e666d56cb1be208772be32c42733e24a6e994f4e5e7de5591807869fb6b96438e2c3cafb4f1a5bd01',
930
+ ],
931
+ };
@@ -210,6 +210,7 @@ describe('Cluster Client without a signer', () => {
210
210
  version: 'Cluster with safe address v1.8.0',
211
211
  clusterLock: fixtures_js_1.clusterLockWithSafe,
212
212
  },
213
+ { version: 'v1.10.0', clusterLock: fixtures_js_1.clusterLockV1X10 },
213
214
  ])("$version: 'should return true on verified cluster lock'", ({ clusterLock }) => __awaiter(void 0, void 0, void 0, function* () {
214
215
  const isValidLock = yield (0, index_1.validateClusterLock)(clusterLock);
215
216
  expect(isValidLock).toEqual(true);
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@obolnetwork/obol-sdk",
3
- "version": "2.2.1",
3
+ "version": "2.2.3",
4
4
  "description": "A package for creating Distributed Validators using the Obol API.",
5
5
  "bugs": {
6
6
  "url": "https://github.com/obolnetwork/obol-sdk/issues"
@@ -20,6 +20,7 @@ import { isContractAvailable } from './utils.js';
20
20
  export * from './types.js';
21
21
  export * from './services.js';
22
22
  export * from './verification/signature-validator.js';
23
+ export * from './verification/common.js';
23
24
  /**
24
25
  * Obol sdk Client can be used for creating, managing and activating distributed validators.
25
26
  */
@@ -61,7 +61,7 @@ export const isContractAvailable = (contractAddress, provider, bytecode) => __aw
61
61
  });
62
62
  export const getProvider = (chainId) => {
63
63
  const rpcUrl = PROVIDER_MAP[chainId];
64
- if (!rpcUrl) {
64
+ if (!rpcUrl || rpcUrl === 'undefined') {
65
65
  throw new Error(`No provider configured for ${FORK_NAMES[chainId]}`);
66
66
  }
67
67
  return new ethers.JsonRpcProvider(rpcUrl);
@@ -20,6 +20,7 @@ import { definitionFlow, hexWithout0x } from '../utils.js';
20
20
  import { ENR } from '@chainsafe/discv5';
21
21
  import { clusterDefinitionContainerTypeV1X8, hashClusterDefinitionV1X8, hashClusterLockV1X8, verifyDVV1X8, } from './v1.8.0.js';
22
22
  import { validateAddressSignature } from './signature-validator.js';
23
+ import { clusterDefinitionContainerTypeV1X10, hashClusterDefinitionV1X10, hashClusterLockV1X10, verifyDVV1X10, } from './v1.10.0.js';
23
24
  // cluster-definition hash
24
25
  /**
25
26
  * @param cluster The cluster configuration or the cluster definition
@@ -46,6 +47,13 @@ export const clusterConfigOrDefinitionHash = (cluster, configOnly) => {
46
47
  return ('0x' +
47
48
  Buffer.from(definitionType.hashTreeRoot(val).buffer).toString('hex'));
48
49
  }
50
+ if (semver.eq(cluster.version, 'v1.10.0')) {
51
+ definitionType = clusterDefinitionContainerTypeV1X10(configOnly);
52
+ val = hashClusterDefinitionV1X10(cluster, configOnly);
53
+ const x = '0x' +
54
+ Buffer.from(definitionType.hashTreeRoot(val).buffer).toString('hex');
55
+ return x;
56
+ }
49
57
  throw new Error('unsupported version');
50
58
  };
51
59
  // cluster-lock hash
@@ -72,6 +80,21 @@ export const clusterLockHash = (clusterLock) => {
72
80
  }
73
81
  return hashClusterLockV1X8(clusterLock);
74
82
  }
83
+ if (semver.eq(clusterLock.cluster_definition.version, 'v1.10.0')) {
84
+ // if (
85
+ // clusterLock.cluster_definition.deposit_amounts === null &&
86
+ // clusterLock.distributed_validators.some(
87
+ // distributedValidator =>
88
+ // distributedValidator.partial_deposit_data?.length !== 1 ||
89
+ // distributedValidator.partial_deposit_data[0].amount !== '32000000000',
90
+ // )
91
+ // ) {
92
+ // throw new Error(
93
+ // 'mismatch between deposit_amounts and partial_deposit_data fields',
94
+ // );
95
+ // }
96
+ return hashClusterLockV1X10(clusterLock);
97
+ }
75
98
  // other versions
76
99
  throw new Error('unsupported version');
77
100
  };
@@ -188,10 +211,15 @@ const computeDomain = (domainType, lockForkVersion, genesisValidatorsRoot = from
188
211
  export const verifyDepositData = (distributedPublicKey, depositData, withdrawalAddress, forkVersion) => {
189
212
  const depositDomain = computeDomain(fromHexString(DOMAIN_DEPOSIT), forkVersion);
190
213
  const eth1AddressWithdrawalPrefix = '0x01';
214
+ const compoundingWithdrawalPrefix = '0x02';
191
215
  if (eth1AddressWithdrawalPrefix +
192
216
  '0'.repeat(22) +
193
217
  withdrawalAddress.toLowerCase().slice(2) !==
194
- depositData.withdrawal_credentials) {
218
+ depositData.withdrawal_credentials &&
219
+ compoundingWithdrawalPrefix +
220
+ '0'.repeat(22) +
221
+ withdrawalAddress.toLowerCase().slice(2) !==
222
+ depositData.withdrawal_credentials) {
195
223
  return { isValidDepositData: false, depositDataMsg: new Uint8Array(0) };
196
224
  }
197
225
  if (distributedPublicKey !== depositData.pubkey) {
@@ -259,6 +287,9 @@ const verifyLockData = (clusterLock) => __awaiter(void 0, void 0, void 0, functi
259
287
  if (semver.eq(clusterLock.cluster_definition.version, 'v1.8.0')) {
260
288
  return verifyDVV1X8(clusterLock);
261
289
  }
290
+ if (semver.eq(clusterLock.cluster_definition.version, 'v1.10.0')) {
291
+ return verifyDVV1X10(clusterLock);
292
+ }
262
293
  return false;
263
294
  });
264
295
  export const isValidClusterLock = (clusterLock) => __awaiter(void 0, void 0, void 0, function* () {