@lodestar/api 1.47.0-dev.f591cb177e → 1.47.0

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.
Files changed (45) hide show
  1. package/lib/beacon/routes/beacon/block.d.ts +7 -0
  2. package/lib/beacon/routes/beacon/block.d.ts.map +1 -1
  3. package/lib/beacon/routes/beacon/block.js +7 -3
  4. package/lib/beacon/routes/beacon/block.js.map +1 -1
  5. package/lib/beacon/routes/debug.d.ts +3 -3
  6. package/lib/beacon/routes/debug.js +3 -3
  7. package/lib/beacon/routes/debug.js.map +1 -1
  8. package/lib/beacon/routes/validator.d.ts +92 -5
  9. package/lib/beacon/routes/validator.d.ts.map +1 -1
  10. package/lib/beacon/routes/validator.js +121 -16
  11. package/lib/beacon/routes/validator.js.map +1 -1
  12. package/lib/beacon/server/events.d.ts.map +1 -1
  13. package/lib/beacon/server/events.js +10 -2
  14. package/lib/beacon/server/events.js.map +1 -1
  15. package/lib/builder/routes.d.ts +48 -1
  16. package/lib/builder/routes.d.ts.map +1 -1
  17. package/lib/builder/routes.js +173 -1
  18. package/lib/builder/routes.js.map +1 -1
  19. package/lib/keymanager/index.d.ts +2 -2
  20. package/lib/keymanager/index.d.ts.map +1 -1
  21. package/lib/keymanager/index.js +1 -1
  22. package/lib/keymanager/index.js.map +1 -1
  23. package/lib/keymanager/routes.d.ts +63 -0
  24. package/lib/keymanager/routes.d.ts.map +1 -1
  25. package/lib/keymanager/routes.js +147 -0
  26. package/lib/keymanager/routes.js.map +1 -1
  27. package/lib/utils/client/response.js +1 -1
  28. package/lib/utils/client/response.js.map +1 -1
  29. package/lib/utils/metadata.d.ts +3 -0
  30. package/lib/utils/metadata.d.ts.map +1 -1
  31. package/lib/utils/metadata.js +4 -0
  32. package/lib/utils/metadata.js.map +1 -1
  33. package/lib/utils/types.d.ts +1 -1
  34. package/lib/utils/types.d.ts.map +1 -1
  35. package/package.json +8 -8
  36. package/src/beacon/routes/beacon/block.ts +18 -4
  37. package/src/beacon/routes/debug.ts +3 -3
  38. package/src/beacon/routes/validator.ts +178 -20
  39. package/src/beacon/server/events.ts +10 -3
  40. package/src/builder/routes.ts +227 -2
  41. package/src/keymanager/index.ts +9 -1
  42. package/src/keymanager/routes.ts +227 -0
  43. package/src/utils/client/response.ts +1 -1
  44. package/src/utils/metadata.ts +5 -0
  45. package/src/utils/types.ts +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/utils/client/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAC,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAQpC,MAAM,OAAO,WAAgC,SAAQ,QAAQ;IACnD,UAAU,CAA0B;IACpC,WAAW,CAAqB;IAChC,QAAQ,CAAW;IACnB,UAAU,CAAU;IACpB,KAAK,CAAa;IAClB,MAAM,CAAe;IAE7B,YAAY,UAAmC,EAAE,IAAsB,EAAE,IAAmB;QAC1F,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,OAAO,IAAI,CAAC,WAAW,CAAC;YAC1B,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;oBAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,OAAO,IAAI,CAAC,WAAW,CAAC;gBAC1B,CAAC;gBACD,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,KAAK,CAAC,oCAAoC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClF,CAAC;YAED,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;YAE5C,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAC3C,IAAI,WAAW,KAAK,SAAS,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;gBAC5D,MAAM,KAAK,CAAC,wBAAwB,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAC7E,CAAC;YAED,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,QAAQ,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBAC1B,KAAK,UAAU,CAAC,IAAI;oBAClB,IAAI,CAAC,QAAQ,GAAG;wBACd,IAAI,EAAE,UAAU,CAAC,IAAI;wBACrB,KAAK,EAAE,MAAM,KAAK,CAAC,IAAI,EAAE;qBAC1B,CAAC;oBACF,MAAM;gBACR,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,QAAQ,GAAG;wBACd,IAAI,EAAE,UAAU,CAAC,GAAG;wBACpB,KAAK,EAAE,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;qBAChD,CAAC;oBACF,MAAM;gBACR;oBACE,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,QAAQ,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBAC1B,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS;wBAC7C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;oBAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;oBAC1D,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;oBACnF,MAAM;YACV,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS;wBAC7C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjE,CAAC,CAAE,OAAO,CAAC,KAAiC,EAAE,IAAI,CAAC;oBACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACjE,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACzE,MAAM;YACV,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,GAAG;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,KAAK,UAAU,CAAC,GAAG;gBACjB,OAAO,OAAO,CAAC,KAAK,CAAC;YACvB;gBACE,OAAO,IAAI,UAAU,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,OAAO,CAAC,KAAK,CAAC;YACvB,KAAK,UAAU,CAAC,GAAG;gBACjB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE;gBACE,OAAO,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,SAAS;QACb,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuD,CAAC;YAC1F,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpF,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
1
+ {"version":3,"file":"response.js","sourceRoot":"","sources":["../../../src/utils/client/response.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,YAAY,EAAE,UAAU,EAAE,sBAAsB,EAAC,MAAM,eAAe,CAAC;AAC/E,OAAO,EAAC,cAAc,EAAC,MAAM,sBAAsB,CAAC;AAEpD,OAAO,EAAC,UAAU,EAAE,aAAa,EAAC,MAAM,kBAAkB,CAAC;AAC3D,OAAO,EAAC,QAAQ,EAAC,MAAM,YAAY,CAAC;AAQpC,MAAM,OAAO,WAAgC,SAAQ,QAAQ;IACnD,UAAU,CAA0B;IACpC,WAAW,CAAqB;IAChC,QAAQ,CAAW;IACnB,UAAU,CAAU;IACpB,KAAK,CAAa;IAClB,MAAM,CAAe;IAE7B,YAAY,UAAmC,EAAE,IAAsB,EAAE,IAAmB;QAC1F,KAAK,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC;QAClB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;IAC/B,CAAC;IAED,UAAU;QACR,IAAI,IAAI,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACnC,IAAI,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACjC,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;gBACxB,OAAO,IAAI,CAAC,WAAW,CAAC;YAC1B,CAAC;YAED,MAAM,WAAW,GAAG,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;YAC7D,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;gBACzB,IAAI,IAAI,CAAC,MAAM,KAAK,cAAc,CAAC,UAAU,EAAE,CAAC;oBAC9C,IAAI,CAAC,WAAW,GAAG,IAAI,CAAC;oBACxB,OAAO,IAAI,CAAC,WAAW,CAAC;gBAC1B,CAAC;gBACD,MAAM,KAAK,CAAC,6CAA6C,CAAC,CAAC;YAC7D,CAAC;YAED,MAAM,SAAS,GAAG,sBAAsB,CAAC,WAAW,CAAC,CAAC;YACtD,IAAI,SAAS,KAAK,IAAI,EAAE,CAAC;gBACvB,MAAM,KAAK,CAAC,oCAAoC,WAAW,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;YAClF,CAAC;YAED,MAAM,UAAU,GAAG,aAAa,CAAC,SAAS,CAAC,CAAC;YAE5C,MAAM,EAAC,WAAW,EAAC,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAC3C,IAAI,WAAW,KAAK,SAAS,IAAI,UAAU,KAAK,WAAW,EAAE,CAAC;gBAC5D,MAAM,KAAK,CAAC,wBAAwB,WAAW,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAC7E,CAAC;YAED,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAChC,CAAC;QACD,OAAO,IAAI,CAAC,WAAW,CAAC;IAC1B,CAAC;IAED,KAAK,CAAC,OAAO;QACX,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,QAAQ,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBAC1B,KAAK,UAAU,CAAC,IAAI;oBAClB,IAAI,CAAC,QAAQ,GAAG;wBACd,IAAI,EAAE,UAAU,CAAC,IAAI;wBACrB,KAAK,EAAE,MAAM,KAAK,CAAC,IAAI,EAAE;qBAC1B,CAAC;oBACF,MAAM;gBACR,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,QAAQ,GAAG;wBACd,IAAI,EAAE,UAAU,CAAC,GAAG;wBACpB,KAAK,EAAE,IAAI,UAAU,CAAC,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;qBAChD,CAAC;oBACF,MAAM;gBACR;oBACE,IAAI,CAAC,QAAQ,GAAG,EAAE,CAAC;YACvB,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;YAChB,QAAQ,IAAI,CAAC,UAAU,EAAE,EAAE,CAAC;gBAC1B,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;oBACvC,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS;wBAC7C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjE,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC;oBAClB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;oBAC1F,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,IAAI,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;oBACnF,MAAM;YACV,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;YACjB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;YACvC,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;YACzB,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;gBACrB,KAAK,UAAU,CAAC,IAAI,EAAE,CAAC;oBACrB,MAAM,QAAQ,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS;wBAC7C,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC,IAAI;wBACjE,CAAC,CAAE,OAAO,CAAC,KAAiC,EAAE,IAAI,CAAC;oBACrD,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;oBACjE,MAAM;gBACR,CAAC;gBACD,KAAK,UAAU,CAAC,GAAG;oBACjB,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;oBACzE,MAAM;YACV,CAAC;QACH,CAAC;QACD,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED,GAAG;QACD,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACxE,KAAK,UAAU,CAAC,GAAG;gBACjB,OAAO,OAAO,CAAC,KAAK,CAAC;YACvB;gBACE,OAAO,IAAI,UAAU,EAAE,CAAC;QAC5B,CAAC;IACH,CAAC;IAED,IAAI;QACF,IAAI,CAAC,QAAQ,EAAE,CAAC;QAEhB,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,EAAE,CAAC;QACvC,QAAQ,OAAO,CAAC,IAAI,EAAE,CAAC;YACrB,KAAK,UAAU,CAAC,IAAI;gBAClB,OAAO,OAAO,CAAC,KAAK,CAAC;YACvB,KAAK,UAAU,CAAC,GAAG;gBACjB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YACrE;gBACE,OAAO,EAAE,CAAC;QACd,CAAC;IACH,CAAC;IAED,QAAQ;QACN,IAAI,CAAC,IAAI,CAAC,EAAE,EAAE,CAAC;YACb,MAAM,IAAI,CAAC,KAAK,EAAE,CAAC;QACrB,CAAC;IACH,CAAC;IAED,KAAK;QACH,IAAI,IAAI,CAAC,EAAE,EAAE,CAAC;YACZ,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO,IAAI,QAAQ,CAAC,IAAI,CAAC,eAAe,EAAE,EAAE,IAAI,CAAC,MAAM,EAAE,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC;IACxF,CAAC;IAED,KAAK,CAAC,SAAS;QACb,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,IAAI,CAAC,UAAU,GAAG,MAAM,IAAI,CAAC,IAAI,EAAE,CAAC;QACtC,CAAC;QACD,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEO,eAAe;QACrB,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,MAAM,KAAK,CAAC,gCAAgC,CAAC,CAAC;QAChD,CAAC;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAEO,iBAAiB;QACvB,IAAI,IAAI,CAAC,UAAU,KAAK,SAAS,EAAE,CAAC;YAClC,MAAM,KAAK,CAAC,kCAAkC,CAAC,CAAC;QAClD,CAAC;QAED,OAAO,IAAI,CAAC,UAAU,CAAC;IACzB,CAAC;IAEO,eAAe;QACrB,MAAM,OAAO,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC;QACzC,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,IAAI,CAAC,KAAK,CAAC,OAAO,CAAuD,CAAC;YAC1F,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;gBACpB,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;oBACrB,OAAO,GAAG,OAAO,CAAC,OAAO,IAAI,GAAG,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACpF,CAAC;gBACD,OAAO,OAAO,CAAC,OAAO,CAAC;YACzB,CAAC;YACD,OAAO,OAAO,CAAC;QACjB,CAAC;QAAC,OAAO,EAAE,EAAE,CAAC;YACZ,OAAO,OAAO,IAAI,IAAI,CAAC,UAAU,CAAC;QACpC,CAAC;IACH,CAAC;CACF"}
@@ -76,6 +76,9 @@ export declare enum MetaHeader {
76
76
  ExecutionPayloadBlinded = "Eth-Execution-Payload-Blinded",
77
77
  ExecutionPayloadIncluded = "Eth-Execution-Payload-Included",
78
78
  ExecutionPayloadValue = "Eth-Execution-Payload-Value",
79
+ BuilderUrl = "Eth-Builder-Url",
80
+ DateMilliseconds = "Date-Milliseconds",
81
+ TimeoutMs = "X-Timeout-Ms",
79
82
  Finalized = "Eth-Consensus-Finalized",
80
83
  DependentRoot = "Eth-Consensus-Dependent-Root",
81
84
  ExecutionOptimistic = "Eth-Execution-Optimistic",
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/utils/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,UAAU,EAAkB,MAAM,iBAAiB,CAAC;AAI5D,OAAO,EAAC,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,WAAW;IACtB;;OAEG;;EAEH,CAAC;AAKH,eAAO,MAAM,uBAAuB;IAEhC;;;OAGG;;EAIN,CAAC;AAEF,eAAO,MAAM,mCAAmC;IAT5C;;;OAGG;;IASH;;OAEG;;EAIN,CAAC;AAEF,eAAO,MAAM,iCAAiC;IA/B5C;;OAEG;;IASD;;;OAGG;;EAuBN,CAAC;AAEF,eAAO,MAAM,0CAA0C;IAvCrD;;OAEG;;IASD;;;OAGG;;IASH;;OAEG;;EAoBN,CAAC;AAEF,eAAO,MAAM,uCAAuC;IApChD;;;OAGG;;IAoCH;;OAEG;;EAIN,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,mCAAmC,GAAG,OAAO,CAAC,OAAO,mCAAmC,CAAC,CAAC;AACtG,MAAM,MAAM,iCAAiC,GAAG,OAAO,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAClG,MAAM,MAAM,0CAA0C,GAAG,OAAO,CAAC,OAAO,0CAA0C,CAAC,CAAC;AACpH,MAAM,MAAM,uCAAuC,GAAG,OAAO,CAAC,OAAO,uCAAuC,CAAC,CAAC;AAE9G,oBAAY,UAAU;IACpB,OAAO,0BAA0B;IACjC,gBAAgB,2BAA2B;IAC3C,mBAAmB,8BAA8B;IACjD,uBAAuB,kCAAkC;IACzD,wBAAwB,mCAAmC;IAC3D,qBAAqB,gCAAgC;IAGrD,SAAS,4BAA4B;IACrC,aAAa,iCAAiC;IAC9C,mBAAmB,6BAA6B;IAChD,sBAAsB,iCAAiC;CACxD;AAED,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,CAAC,uBAAuB,CAUnF,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,WAAW,CAU3D,CAAC;AAEF,eAAO,MAAM,kCAAkC,EAAE,qBAAqB,CAAC,iCAAiC,CAYvG,CAAC;AAEF,eAAO,MAAM,oCAAoC,EAAE,qBAAqB,CAAC,mCAAmC,CAY3G,CAAC;AAEF,eAAO,MAAM,2CAA2C,EAAE,qBAAqB,CAAC,0CAA0C,CAevH,CAAC;AAEJ,eAAO,MAAM,wCAAwC,EAAE,qBAAqB,CAAC,uCAAuC,CAajH,CAAC"}
1
+ {"version":3,"file":"metadata.d.ts","sourceRoot":"","sources":["../../src/utils/metadata.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,aAAa,EAAE,OAAO,EAAC,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAC;AAC1C,OAAO,EAAC,UAAU,EAAkB,MAAM,iBAAiB,CAAC;AAI5D,OAAO,EAAC,qBAAqB,EAAC,MAAM,YAAY,CAAC;AAEjD,eAAO,MAAM,WAAW;IACtB;;OAEG;;EAEH,CAAC;AAKH,eAAO,MAAM,uBAAuB;IAEhC;;;OAGG;;EAIN,CAAC;AAEF,eAAO,MAAM,mCAAmC;IAT5C;;;OAGG;;IASH;;OAEG;;EAIN,CAAC;AAEF,eAAO,MAAM,iCAAiC;IA/B5C;;OAEG;;IASD;;;OAGG;;EAuBN,CAAC;AAEF,eAAO,MAAM,0CAA0C;IAvCrD;;OAEG;;IASD;;;OAGG;;IASH;;OAEG;;EAoBN,CAAC;AAEF,eAAO,MAAM,uCAAuC;IApChD;;;OAGG;;IAoCH;;OAEG;;EAIN,CAAC;AAEF,MAAM,MAAM,WAAW,GAAG,OAAO,CAAC,OAAO,WAAW,CAAC,CAAC;AACtD,MAAM,MAAM,uBAAuB,GAAG,OAAO,CAAC,OAAO,uBAAuB,CAAC,CAAC;AAC9E,MAAM,MAAM,mCAAmC,GAAG,OAAO,CAAC,OAAO,mCAAmC,CAAC,CAAC;AACtG,MAAM,MAAM,iCAAiC,GAAG,OAAO,CAAC,OAAO,iCAAiC,CAAC,CAAC;AAClG,MAAM,MAAM,0CAA0C,GAAG,OAAO,CAAC,OAAO,0CAA0C,CAAC,CAAC;AACpH,MAAM,MAAM,uCAAuC,GAAG,OAAO,CAAC,OAAO,uCAAuC,CAAC,CAAC;AAE9G,oBAAY,UAAU;IACpB,OAAO,0BAA0B;IACjC,gBAAgB,2BAA2B;IAC3C,mBAAmB,8BAA8B;IACjD,uBAAuB,kCAAkC;IACzD,wBAAwB,mCAAmC;IAC3D,qBAAqB,gCAAgC;IAGrD,UAAU,oBAAoB;IAC9B,gBAAgB,sBAAsB;IACtC,SAAS,iBAAiB;IAG1B,SAAS,4BAA4B;IACrC,aAAa,iCAAiC;IAC9C,mBAAmB,6BAA6B;IAChD,sBAAsB,iCAAiC;CACxD;AAED,eAAO,MAAM,wBAAwB,EAAE,qBAAqB,CAAC,uBAAuB,CAUnF,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,qBAAqB,CAAC,WAAW,CAU3D,CAAC;AAEF,eAAO,MAAM,kCAAkC,EAAE,qBAAqB,CAAC,iCAAiC,CAYvG,CAAC;AAEF,eAAO,MAAM,oCAAoC,EAAE,qBAAqB,CAAC,mCAAmC,CAY3G,CAAC;AAEF,eAAO,MAAM,2CAA2C,EAAE,qBAAqB,CAAC,0CAA0C,CAevH,CAAC;AAEJ,eAAO,MAAM,wCAAwC,EAAE,qBAAqB,CAAC,uCAAuC,CAajH,CAAC"}
@@ -49,6 +49,10 @@ export var MetaHeader;
49
49
  MetaHeader["ExecutionPayloadBlinded"] = "Eth-Execution-Payload-Blinded";
50
50
  MetaHeader["ExecutionPayloadIncluded"] = "Eth-Execution-Payload-Included";
51
51
  MetaHeader["ExecutionPayloadValue"] = "Eth-Execution-Payload-Value";
52
+ /* Builder API headers */
53
+ MetaHeader["BuilderUrl"] = "Eth-Builder-Url";
54
+ MetaHeader["DateMilliseconds"] = "Date-Milliseconds";
55
+ MetaHeader["TimeoutMs"] = "X-Timeout-Ms";
52
56
  /* Lodestar-specific (non-standardized) headers */
53
57
  MetaHeader["Finalized"] = "Eth-Consensus-Finalized";
54
58
  MetaHeader["DependentRoot"] = "Eth-Consensus-Dependent-Root";
@@ -1 +1 @@
1
- {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/utils/metadata.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"metadata.js","sourceRoot":"","sources":["../../src/utils/metadata.ts"],"names":[],"mappings":"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"}
@@ -87,7 +87,7 @@ export type ResponseDataCodec<T, M> = {
87
87
  };
88
88
  export type ResponseMetadataCodec<T> = {
89
89
  toJson: (val: T) => unknown;
90
- fromJson: (val: unknown) => T;
90
+ fromJson: (val: unknown, headers?: HeadersExtra) => T;
91
91
  toHeadersObject: (val: T) => Record<string, string>;
92
92
  fromHeaders: (headers: HeadersExtra) => T;
93
93
  };
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/utils/types.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -11,7 +11,7 @@
11
11
  "bugs": {
12
12
  "url": "https://github.com/ChainSafe/lodestar/issues"
13
13
  },
14
- "version": "1.47.0-dev.f591cb177e",
14
+ "version": "1.47.0",
15
15
  "type": "module",
16
16
  "exports": {
17
17
  ".": {
@@ -74,12 +74,12 @@
74
74
  "check-readme": "pnpm exec tsx ../../scripts/check_readme.ts"
75
75
  },
76
76
  "dependencies": {
77
- "@chainsafe/persistent-merkle-tree": "^1.3.0",
78
- "@chainsafe/ssz": "^1.6.2",
79
- "@lodestar/config": "^1.47.0-dev.f591cb177e",
80
- "@lodestar/params": "^1.47.0-dev.f591cb177e",
81
- "@lodestar/types": "^1.47.0-dev.f591cb177e",
82
- "@lodestar/utils": "^1.47.0-dev.f591cb177e",
77
+ "@chainsafe/persistent-merkle-tree": "^1.3.1",
78
+ "@chainsafe/ssz": "^1.6.3",
79
+ "@lodestar/config": "^1.47.0",
80
+ "@lodestar/params": "^1.47.0",
81
+ "@lodestar/types": "^1.47.0",
82
+ "@lodestar/utils": "^1.47.0",
83
83
  "eventsource": "^2.0.2",
84
84
  "qs": "^6.14.2"
85
85
  },
@@ -96,5 +96,5 @@
96
96
  "api",
97
97
  "blockchain"
98
98
  ],
99
- "gitHead": "07cdd0aad9cd2f4dcadda5e3a857656e9cd7855c"
99
+ "gitHead": "450996b13ab305b860acd131c87f799fdbfbabf0"
100
100
  }
@@ -163,8 +163,18 @@ export type Endpoints = {
163
163
  {
164
164
  signedBlockContents: SignedBlockContents;
165
165
  broadcastValidation?: BroadcastValidation;
166
+ /**
167
+ * The url of the winning builder as returned by `produceBlockV4`. The beacon node forwards
168
+ * the signed block to this builder so it can help disseminate the block and learn that
169
+ * its bid won without waiting for gossip.
170
+ */
171
+ builderUrl?: string;
172
+ },
173
+ {
174
+ body: unknown;
175
+ headers: {[MetaHeader.Version]: string; [MetaHeader.BuilderUrl]?: string};
176
+ query: {broadcast_validation?: string};
166
177
  },
167
- {body: unknown; headers: {[MetaHeader.Version]: string}; query: {broadcast_validation?: string}},
168
178
  EmptyResponseData,
169
179
  EmptyMeta
170
180
  >;
@@ -345,7 +355,7 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
345
355
  url: "/eth/v2/beacon/blocks",
346
356
  method: "POST",
347
357
  req: {
348
- writeReqJson: ({signedBlockContents, broadcastValidation}) => {
358
+ writeReqJson: ({signedBlockContents, broadcastValidation, builderUrl}) => {
349
359
  const slot = signedBlockContents.signedBlock.message.slot;
350
360
  const fork = config.getForkName(slot);
351
361
  return {
@@ -359,6 +369,7 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
359
369
  ),
360
370
  headers: {
361
371
  [MetaHeader.Version]: fork,
372
+ ...(builderUrl !== undefined ? {[MetaHeader.BuilderUrl]: builderUrl} : {}),
362
373
  },
363
374
  query: {broadcast_validation: broadcastValidation},
364
375
  };
@@ -371,9 +382,10 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
371
382
  ? sszTypesFor(forkName).SignedBlockContents.fromJson(body)
372
383
  : {signedBlock: ssz[forkName].SignedBeaconBlock.fromJson(body)},
373
384
  broadcastValidation: query.broadcast_validation as BroadcastValidation,
385
+ builderUrl: fromHeaders(headers, MetaHeader.BuilderUrl, false),
374
386
  };
375
387
  },
376
- writeReqSsz: ({signedBlockContents, broadcastValidation}) => {
388
+ writeReqSsz: ({signedBlockContents, broadcastValidation, builderUrl}) => {
377
389
  const slot = signedBlockContents.signedBlock.message.slot;
378
390
  const fork = config.getForkName(slot);
379
391
 
@@ -388,6 +400,7 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
388
400
  ),
389
401
  headers: {
390
402
  [MetaHeader.Version]: fork,
403
+ ...(builderUrl !== undefined ? {[MetaHeader.BuilderUrl]: builderUrl} : {}),
391
404
  },
392
405
  query: {broadcast_validation: broadcastValidation},
393
406
  };
@@ -400,12 +413,13 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
400
413
  ? sszTypesFor(forkName).SignedBlockContents.deserialize(body)
401
414
  : {signedBlock: ssz[forkName].SignedBeaconBlock.deserialize(body)},
402
415
  broadcastValidation: query.broadcast_validation as BroadcastValidation,
416
+ builderUrl: fromHeaders(headers, MetaHeader.BuilderUrl, false),
403
417
  };
404
418
  },
405
419
  schema: {
406
420
  body: Schema.Object,
407
421
  query: {broadcast_validation: Schema.String},
408
- headers: {[MetaHeader.Version]: Schema.String},
422
+ headers: {[MetaHeader.Version]: Schema.String, [MetaHeader.BuilderUrl]: Schema.String},
409
423
  },
410
424
  },
411
425
  resp: EmptyResponseCodec,
@@ -41,7 +41,7 @@ const ProtoNodeType = new ContainerType(
41
41
  unrealizedFinalizedEpoch: ssz.Epoch,
42
42
  unrealizedFinalizedRoot: stringType,
43
43
  parent: stringType,
44
- weight: ssz.Uint32,
44
+ weight: ssz.Gwei,
45
45
  bestChild: stringType,
46
46
  bestDescendant: stringType,
47
47
  },
@@ -63,7 +63,7 @@ const ForkChoiceNodeType = new ContainerType(
63
63
  parentRoot: stringType,
64
64
  justifiedEpoch: ssz.Epoch,
65
65
  finalizedEpoch: ssz.Epoch,
66
- weight: ssz.UintNum64,
66
+ weight: ssz.Gwei,
67
67
  validity: new StringType<"valid" | "invalid" | "optimistic">(),
68
68
  executionBlockHash: stringType,
69
69
  },
@@ -100,7 +100,7 @@ const ForkChoiceNodeV2Type = new ContainerType(
100
100
  slot: ssz.Slot,
101
101
  blockRoot: stringType,
102
102
  parentRoot: stringType,
103
- weight: ssz.UintNum64,
103
+ weight: ssz.Gwei,
104
104
  validity: new StringType<"valid" | "invalid" | "optimistic">(),
105
105
  executionBlockHash: stringType,
106
106
  extraData: ForkChoiceNodeV2ExtraDataType,
@@ -1,9 +1,12 @@
1
- import {ContainerType, Type, ValueOf} from "@chainsafe/ssz";
1
+ import {ByteListType, ContainerType, Type, ValueOf} from "@chainsafe/ssz";
2
2
  import {ChainForkConfig} from "@lodestar/config";
3
3
  import {
4
4
  ForkPostDeneb,
5
5
  ForkPostGloas,
6
6
  ForkPreDeneb,
7
+ MAX_BUILDER_ENTRIES,
8
+ MAX_BUILDER_PUBKEYS,
9
+ MAX_BUILDER_URL_SIZE,
7
10
  MIN_SEED_LOOKAHEAD,
8
11
  SLOTS_PER_EPOCH,
9
12
  VALIDATOR_REGISTRY_LIMIT,
@@ -113,7 +116,10 @@ export const ProduceBlockV4MetaType = new ContainerType(
113
116
  {jsonCase: "eth2"}
114
117
  );
115
118
 
116
- export type ProduceBlockV4Meta = ValueOf<typeof ProduceBlockV4MetaType>;
119
+ export type ProduceBlockV4Meta = ValueOf<typeof ProduceBlockV4MetaType> & {
120
+ /** The url of the winning builder when the bid came through the builder API channel */
121
+ builderUrl?: string;
122
+ };
117
123
 
118
124
  export const AttesterDutyType = new ContainerType(
119
125
  {
@@ -264,6 +270,59 @@ export const SignedProposerPreferencesListType = ArrayOf(
264
270
  (MIN_SEED_LOOKAHEAD + 1) * SLOTS_PER_EPOCH
265
271
  );
266
272
 
273
+ // The url is UTF-8 bytes on the SSZ wire but a plain string in JSON
274
+ class BuilderUrlType extends ByteListType {
275
+ fromJson(json: unknown): Uint8Array {
276
+ if (typeof json !== "string") {
277
+ throw Error("Builder url must be a string");
278
+ }
279
+ const value = new TextEncoder().encode(json);
280
+ if (value.length > this.limitBytes) {
281
+ throw Error(`Builder url must not exceed ${this.limitBytes} bytes`);
282
+ }
283
+ return value;
284
+ }
285
+ toJson(value: Uint8Array): unknown {
286
+ return new TextDecoder("utf8", {fatal: true}).decode(value);
287
+ }
288
+ }
289
+
290
+ export const BuilderEntryType = new ContainerType(
291
+ {
292
+ url: new BuilderUrlType(MAX_BUILDER_URL_SIZE),
293
+ auth: ssz.gloas.SignedBuilderRequestAuth,
294
+ builderPubkeys: ArrayOf(ssz.BLSPubkey, MAX_BUILDER_PUBKEYS),
295
+ maxExecutionPayment: ssz.Gwei,
296
+ minBid: ssz.Gwei,
297
+ builderBoostFactor: ssz.UintBn64,
298
+ },
299
+ {typeName: "BuilderEntry", jsonCase: "eth2"}
300
+ );
301
+
302
+ export const BuilderConfigType = new ContainerType(
303
+ {
304
+ minBid: ssz.Gwei,
305
+ builderBoostFactor: ssz.UintBn64,
306
+ builders: ArrayOf(BuilderEntryType, MAX_BUILDER_ENTRIES),
307
+ },
308
+ {typeName: "BuilderConfig", jsonCase: "eth2"}
309
+ );
310
+
311
+ export const BuilderPreferencesEntryType = new ContainerType(
312
+ {
313
+ proposerPubkey: ssz.BLSPubkey,
314
+ url: new BuilderUrlType(MAX_BUILDER_URL_SIZE),
315
+ auth: ssz.gloas.SignedBuilderRequestAuth,
316
+ maxExecutionPayment: ssz.Gwei,
317
+ },
318
+ {typeName: "BuilderPreferencesEntry", jsonCase: "eth2"}
319
+ );
320
+
321
+ export const BuilderPreferencesEntryListType = ArrayOf(
322
+ BuilderPreferencesEntryType,
323
+ MAX_BUILDER_ENTRIES * (MIN_SEED_LOOKAHEAD + 1) * SLOTS_PER_EPOCH
324
+ );
325
+
267
326
  export type ValidatorIndices = ValueOf<typeof ValidatorIndicesType>;
268
327
  export type AttesterDuty = ValueOf<typeof AttesterDutyType>;
269
328
  export type AttesterDutyList = ValueOf<typeof AttesterDutyListType>;
@@ -291,6 +350,10 @@ export type LivenessResponseData = ValueOf<typeof LivenessResponseDataType>;
291
350
  export type LivenessResponseDataList = ValueOf<typeof LivenessResponseDataListType>;
292
351
  export type SignedValidatorRegistrationV1List = ValueOf<typeof SignedValidatorRegistrationV1ListType>;
293
352
  export type SignedProposerPreferencesList = ValueOf<typeof SignedProposerPreferencesListType>;
353
+ export type BuilderEntry = ValueOf<typeof BuilderEntryType>;
354
+ export type BuilderConfig = ValueOf<typeof BuilderConfigType>;
355
+ export type BuilderPreferencesEntry = ValueOf<typeof BuilderPreferencesEntryType>;
356
+ export type BuilderPreferencesEntryList = ValueOf<typeof BuilderPreferencesEntryListType>;
294
357
 
295
358
  // The beacon node does not return any data if there is no canonical block at the requested slot (missed slot).
296
359
  // In this case, we receive a success response (204) which is not handled as an error. The generic response
@@ -433,6 +496,9 @@ export type Endpoints = {
433
496
  * so there is no longer a concept of blinded or unblinded blocks. Builders release the payload later.
434
497
  * This endpoint is specific to the post-Gloas forks and is not backwards compatible with previous forks.
435
498
  *
499
+ * The required `BuilderConfig` request body carries the builder entries to solicit builder API
500
+ * bids from, plus the top-level `minBid` and `builderBoostFactor` that apply to p2p bids.
501
+ *
436
502
  * When self-building and `includePayload` is true, the response contains the full `BlockContents`
437
503
  * (block, execution payload envelope, KZG proofs and blobs) which enables stateless envelope
438
504
  * publishing via any beacon node. When `includePayload` is false, only the `BeaconBlock` is
@@ -440,7 +506,7 @@ export type Endpoints = {
440
506
  * When committing to a builder bid, only the `BeaconBlock` is returned in either case.
441
507
  */
442
508
  produceBlockV4: Endpoint<
443
- "GET",
509
+ "POST",
444
510
  {
445
511
  /** The slot for which the block should be proposed */
446
512
  slot: Slot;
@@ -449,9 +515,9 @@ export type Endpoints = {
449
515
  /** Arbitrary data validator wants to include in block */
450
516
  graffiti?: string;
451
517
  skipRandaoVerification?: boolean;
452
- builderBoostFactor?: UintBn64;
453
518
  /** Include execution payload envelope and blobs in the response when self-building */
454
519
  includePayload: boolean;
520
+ builderConfig: BuilderConfig;
455
521
  } & ExtraProduceBlockV4Opts,
456
522
  {
457
523
  params: {slot: number};
@@ -460,10 +526,11 @@ export type Endpoints = {
460
526
  graffiti?: string;
461
527
  skip_randao_verification?: string;
462
528
  fee_recipient?: string;
463
- builder_boost_factor?: string;
464
529
  strict_fee_recipient_check?: boolean;
465
530
  include_payload: boolean;
466
531
  };
532
+ body: unknown;
533
+ headers: {[MetaHeader.Version]: string};
467
534
  },
468
535
  BeaconBlock<ForkPostGloas> | BlockContents<ForkPostGloas>,
469
536
  ProduceBlockV4Meta
@@ -693,6 +760,19 @@ export type Endpoints = {
693
760
  EmptyResponseData,
694
761
  EmptyMeta
695
762
  >;
763
+
764
+ /**
765
+ * Submit per-builder preferences for one or more proposers ahead of their proposal slot.
766
+ * The beacon node submits each entry to the builder API endpoint at the entry's url so
767
+ * builders hold the preferences before the bid request arrives.
768
+ */
769
+ submitBuilderPreferences: Endpoint<
770
+ "POST",
771
+ {builderPreferences: BuilderPreferencesEntryList},
772
+ {body: unknown; headers: {[MetaHeader.Version]: string}},
773
+ EmptyResponseData,
774
+ EmptyMeta
775
+ >;
696
776
  };
697
777
 
698
778
  export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoints> {
@@ -915,17 +995,17 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
915
995
  },
916
996
  produceBlockV4: {
917
997
  url: "/eth/v4/validator/blocks/{slot}",
918
- method: "GET",
998
+ method: "POST",
919
999
  req: {
920
- writeReq: ({
1000
+ writeReqJson: ({
921
1001
  slot,
922
1002
  randaoReveal,
923
1003
  graffiti,
924
1004
  skipRandaoVerification,
925
1005
  feeRecipient,
926
- builderBoostFactor,
927
1006
  strictFeeRecipientCheck,
928
1007
  includePayload,
1008
+ builderConfig,
929
1009
  }) => ({
930
1010
  params: {slot},
931
1011
  query: {
@@ -933,21 +1013,60 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
933
1013
  graffiti: toGraffitiHex(graffiti),
934
1014
  skip_randao_verification: writeSkipRandaoVerification(skipRandaoVerification),
935
1015
  fee_recipient: feeRecipient,
936
- builder_boost_factor: builderBoostFactor?.toString(),
937
1016
  strict_fee_recipient_check: strictFeeRecipientCheck,
938
1017
  include_payload: includePayload,
939
1018
  },
1019
+ body: BuilderConfigType.toJson(builderConfig),
1020
+ headers: {[MetaHeader.Version]: config.getForkName(slot)},
940
1021
  }),
941
- parseReq: ({params, query}) => ({
942
- slot: params.slot,
943
- randaoReveal: fromHex(query.randao_reveal),
944
- graffiti: fromGraffitiHex(query.graffiti),
945
- skipRandaoVerification: parseSkipRandaoVerification(query.skip_randao_verification),
946
- feeRecipient: query.fee_recipient,
947
- builderBoostFactor: parseBuilderBoostFactor(query.builder_boost_factor),
948
- strictFeeRecipientCheck: query.strict_fee_recipient_check,
949
- includePayload: query.include_payload,
1022
+ parseReqJson: ({params, query, body, headers}) => {
1023
+ toForkName(fromHeaders(headers, MetaHeader.Version));
1024
+ return {
1025
+ slot: params.slot,
1026
+ randaoReveal: fromHex(query.randao_reveal),
1027
+ graffiti: fromGraffitiHex(query.graffiti),
1028
+ skipRandaoVerification: parseSkipRandaoVerification(query.skip_randao_verification),
1029
+ feeRecipient: query.fee_recipient,
1030
+ strictFeeRecipientCheck: query.strict_fee_recipient_check,
1031
+ includePayload: query.include_payload,
1032
+ builderConfig: BuilderConfigType.fromJson(body),
1033
+ };
1034
+ },
1035
+ writeReqSsz: ({
1036
+ slot,
1037
+ randaoReveal,
1038
+ graffiti,
1039
+ skipRandaoVerification,
1040
+ feeRecipient,
1041
+ strictFeeRecipientCheck,
1042
+ includePayload,
1043
+ builderConfig,
1044
+ }) => ({
1045
+ params: {slot},
1046
+ query: {
1047
+ randao_reveal: toHex(randaoReveal),
1048
+ graffiti: toGraffitiHex(graffiti),
1049
+ skip_randao_verification: writeSkipRandaoVerification(skipRandaoVerification),
1050
+ fee_recipient: feeRecipient,
1051
+ strict_fee_recipient_check: strictFeeRecipientCheck,
1052
+ include_payload: includePayload,
1053
+ },
1054
+ body: BuilderConfigType.serialize(builderConfig),
1055
+ headers: {[MetaHeader.Version]: config.getForkName(slot)},
950
1056
  }),
1057
+ parseReqSsz: ({params, query, body, headers}) => {
1058
+ toForkName(fromHeaders(headers, MetaHeader.Version));
1059
+ return {
1060
+ slot: params.slot,
1061
+ randaoReveal: fromHex(query.randao_reveal),
1062
+ graffiti: fromGraffitiHex(query.graffiti),
1063
+ skipRandaoVerification: parseSkipRandaoVerification(query.skip_randao_verification),
1064
+ feeRecipient: query.fee_recipient,
1065
+ strictFeeRecipientCheck: query.strict_fee_recipient_check,
1066
+ includePayload: query.include_payload,
1067
+ builderConfig: BuilderConfigType.deserialize(body),
1068
+ };
1069
+ },
951
1070
  schema: {
952
1071
  params: {slot: Schema.UintRequired},
953
1072
  query: {
@@ -955,12 +1074,16 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
955
1074
  graffiti: Schema.String,
956
1075
  skip_randao_verification: Schema.String,
957
1076
  fee_recipient: Schema.String,
958
- builder_boost_factor: Schema.String,
959
1077
  strict_fee_recipient_check: Schema.Boolean,
960
1078
  include_payload: Schema.BooleanRequired,
961
1079
  },
1080
+ body: Schema.Object,
1081
+ headers: {[MetaHeader.Version]: Schema.String},
962
1082
  },
963
1083
  },
1084
+ init: {
1085
+ requestWireFormat: WireFormat.ssz,
1086
+ },
964
1087
  resp: {
965
1088
  data: WithMeta(
966
1089
  ({version, executionPayloadIncluded}) =>
@@ -972,18 +1095,23 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
972
1095
  ),
973
1096
  meta: {
974
1097
  toJson: (meta) => ProduceBlockV4MetaType.toJson(meta),
975
- fromJson: (val) => ProduceBlockV4MetaType.fromJson(val),
1098
+ fromJson: (val, headers) => ({
1099
+ ...ProduceBlockV4MetaType.fromJson(val),
1100
+ builderUrl: headers?.get(MetaHeader.BuilderUrl) ?? undefined,
1101
+ }),
976
1102
  toHeadersObject: (meta) => ({
977
1103
  [MetaHeader.Version]: meta.version,
978
1104
  [MetaHeader.ConsensusBlockValue]: meta.consensusBlockValue.toString(),
979
1105
  [MetaHeader.ExecutionPayloadValue]: meta.executionPayloadValue.toString(),
980
1106
  [MetaHeader.ExecutionPayloadIncluded]: meta.executionPayloadIncluded.toString(),
1107
+ ...(meta.builderUrl !== undefined ? {[MetaHeader.BuilderUrl]: meta.builderUrl} : {}),
981
1108
  }),
982
1109
  fromHeaders: (headers) => ({
983
1110
  version: toForkName(headers.getRequired(MetaHeader.Version)),
984
1111
  consensusBlockValue: BigInt(headers.getRequired(MetaHeader.ConsensusBlockValue)),
985
1112
  executionPayloadValue: BigInt(headers.getRequired(MetaHeader.ExecutionPayloadValue)),
986
1113
  executionPayloadIncluded: toBoolean(headers.getRequired(MetaHeader.ExecutionPayloadIncluded)),
1114
+ builderUrl: headers.get(MetaHeader.BuilderUrl) ?? undefined,
987
1115
  }),
988
1116
  },
989
1117
  },
@@ -1295,6 +1423,36 @@ export function getDefinitions(config: ChainForkConfig): RouteDefinitions<Endpoi
1295
1423
  },
1296
1424
  resp: EmptyResponseCodec,
1297
1425
  },
1426
+ submitBuilderPreferences: {
1427
+ url: "/eth/v1/validator/builder_preferences",
1428
+ method: "POST",
1429
+ req: {
1430
+ writeReqJson: ({builderPreferences}) => ({
1431
+ body: BuilderPreferencesEntryListType.toJson(builderPreferences),
1432
+ headers: {[MetaHeader.Version]: config.getForkName(builderPreferences[0]?.auth.message.slot ?? 0)},
1433
+ }),
1434
+ parseReqJson: ({body, headers}) => {
1435
+ toForkName(fromHeaders(headers, MetaHeader.Version));
1436
+ return {builderPreferences: BuilderPreferencesEntryListType.fromJson(body)};
1437
+ },
1438
+ writeReqSsz: ({builderPreferences}) => ({
1439
+ body: BuilderPreferencesEntryListType.serialize(builderPreferences),
1440
+ headers: {[MetaHeader.Version]: config.getForkName(builderPreferences[0]?.auth.message.slot ?? 0)},
1441
+ }),
1442
+ parseReqSsz: ({body, headers}) => {
1443
+ toForkName(fromHeaders(headers, MetaHeader.Version));
1444
+ return {builderPreferences: BuilderPreferencesEntryListType.deserialize(body)};
1445
+ },
1446
+ schema: {
1447
+ body: Schema.ObjectArray,
1448
+ headers: {[MetaHeader.Version]: Schema.String},
1449
+ },
1450
+ },
1451
+ resp: EmptyResponseCodec,
1452
+ init: {
1453
+ requestWireFormat: WireFormat.ssz,
1454
+ },
1455
+ },
1298
1456
  };
1299
1457
  }
1300
1458
 
@@ -42,10 +42,15 @@ export function getRoutes(config: ChainForkConfig, methods: ApplicationMethods<E
42
42
  topics: req.query.topics,
43
43
  signal: controller.signal,
44
44
  onEvent: (event) => {
45
+ // Serialization is per event and must not tear down the stream. Throwing here is
46
+ // handled by the caller which logs it and keeps the subscription alive, the client
47
+ // only misses this single event instead of silently losing the whole stream.
48
+ const data = eventSerdes.toJson(event);
49
+
45
50
  try {
46
- const data = eventSerdes.toJson(event);
47
51
  res.raw.write(serializeSSEEvent({event: event.type, data}));
48
52
  } catch (e) {
53
+ // The connection itself is broken, there is no way to recover it
49
54
  reject(e);
50
55
  }
51
56
  },
@@ -58,10 +63,12 @@ export function getRoutes(config: ChainForkConfig, methods: ApplicationMethods<E
58
63
  req.socket.once("close", () => resolve());
59
64
  req.socket.once("end", () => resolve());
60
65
  });
61
-
62
- // api.eventstream will never stop, so no need to ever call `res.raw.end();`
63
66
  } finally {
64
67
  controller.abort();
68
+ // Always end the response. If an error is thrown after the headers were sent, fastify can
69
+ // no longer write a status code and would leave the socket open, the client then waits
70
+ // forever on a stream that will never emit another event.
71
+ if (!res.raw.writableEnded && !res.raw.destroyed) res.raw.end();
65
72
  }
66
73
  },
67
74
  },