@@ -34,18 +34,9 @@ func (svr *Server) handleHealth(w http.ResponseWriter, _ *http.Request) error {
3434// GET ROUTES
3535// =================================================================================================
3636
37- // handleGetStdCommitment handles the GET request for std commitments.
38- func (svr * Server ) handleGetStdCommitment (w http.ResponseWriter , r * http.Request ) error {
39- versionByte , err := parseVersionByte (w , r )
40- if err != nil {
41- return fmt .Errorf ("error parsing version byte: %w" , err )
42- }
43-
44- commitmentMeta := commitments.CommitmentMeta {
45- Mode : commitments .OptimismGeneric ,
46- Version : commitments .EigenDACommitmentType (versionByte ),
47- Encoding : commitments .RLPEncoding ,
48- }
37+ // handleGetEigenDA helper function used for processing gets for an eigenda backend type
38+ func (svr * Server ) handleGetEigenDA (w http.ResponseWriter , r * http.Request ,
39+ cm commitments.CommitmentMeta ) error {
4940
5041 rawCommitmentHex , ok := mux .Vars (r )[routingVarNamePayloadHex ]
5142 if ! ok {
@@ -56,12 +47,28 @@ func (svr *Server) handleGetStdCommitment(w http.ResponseWriter, r *http.Request
5647 return fmt .Errorf ("failed to decode commitment %s: %w" , rawCommitmentHex , err )
5748 }
5849
59- if versionByte >= byte ( commitments .CertV2 ) {
60- commitmentMeta .Encoding = commitments .EncodingType (commitment [0 ])
50+ if cm . Version >= commitments .CertV2 {
51+ cm .Encoding = commitments .EncodingType (commitment [0 ])
6152 commitment = commitment [1 :]
6253 }
6354
64- return svr .handleGetShared (r .Context (), w , commitment , commitmentMeta )
55+ return svr .handleGetShared (r .Context (), w , commitment , cm )
56+ }
57+
58+ // handleGetStdCommitment handles the GET request for std commitments.
59+ func (svr * Server ) handleGetStdCommitment (w http.ResponseWriter , r * http.Request ) error {
60+ versionByte , err := parseVersionByte (w , r )
61+ if err != nil {
62+ return fmt .Errorf ("error parsing version byte: %w" , err )
63+ }
64+
65+ meta := commitments.CommitmentMeta {
66+ Mode : commitments .Standard ,
67+ Version : commitments .EigenDACommitmentType (versionByte ),
68+ Encoding : commitments .RLPEncoding ,
69+ }
70+
71+ return svr .handleGetEigenDA (w , r , meta )
6572}
6673
6774// handleGetOPKeccakCommitment handles the GET request for optimism keccak commitments.
@@ -97,27 +104,14 @@ func (svr *Server) handleGetOPGenericCommitment(w http.ResponseWriter, r *http.R
97104 return fmt .Errorf ("error parsing version byte: %w" , err )
98105 }
99106
100- commitmentMeta := commitments.CommitmentMeta {
107+ meta := commitments.CommitmentMeta {
101108 Mode : commitments .OptimismGeneric ,
102109 Version : commitments .EigenDACommitmentType (versionByte ),
103110 Encoding : commitments .RLPEncoding ,
104111 }
105112
106- rawCommitmentHex , ok := mux .Vars (r )[routingVarNamePayloadHex ]
107- if ! ok {
108- return fmt .Errorf ("commitment not found in path: %s" , r .URL .Path )
109- }
110- commitment , err := hex .DecodeString (rawCommitmentHex )
111- if err != nil {
112- return fmt .Errorf ("failed to decode commitment %s: %w" , rawCommitmentHex , err )
113- }
113+ return svr .handleGetEigenDA (w , r , meta )
114114
115- if versionByte >= byte (commitments .CertV2 ) {
116- commitmentMeta .Encoding = commitments .EncodingType (commitment [0 ])
117- commitment = commitment [1 :]
118- }
119-
120- return svr .handleGetShared (r .Context (), w , commitment , commitmentMeta )
121115}
122116
123117func (svr * Server ) handleGetShared (
@@ -173,28 +167,33 @@ func (svr *Server) handleGetEigenDADispersalBackend(w http.ResponseWriter, _ *ht
173167// POST ROUTES
174168// =================================================================================================
175169
176- // handlePostStdCommitment handles the POST request for std commitments.
177170// parseEncodingQueryParamType parses the encoding query parameter
178- func parseEncodingQueryParamType (w http.ResponseWriter , r * http.Request ) (commitments.EncodingType , bool , error ) {
171+ func ( svr * Server ) parseEncodingQueryParamType (w http.ResponseWriter , r * http.Request ) (commitments.EncodingType , error ) {
179172 encodingParam := r .URL .Query ().Get (routingQueryParamEncoding )
180173 if encodingParam == "" {
181174 // If no encoding is provided, use default RLP encoding
182- return commitments .RLPEncoding , false , nil
175+ return commitments .RLPEncoding , nil
176+ }
177+
178+ // if encoding param provided but historical V1 backend used then error
179+ if svr .sm .GetDispersalBackend () == common .V1EigenDABackend {
180+
183181 }
184182
185183 // Parse the encoding type
186184 encoding , err := commitments .StringToEncodingType (encodingParam )
187185 if err != nil {
188186 http .Error (w , fmt .Sprintf ("Invalid encoding type: %s" , encodingParam ), http .StatusBadRequest )
189- return commitments .RLPEncoding , false , err
187+ return commitments .RLPEncoding , err
190188 }
191189
192- return encoding , true , nil
190+ return encoding , nil
193191}
194192
193+ // handlePostStdCommitment handles the POST request for std commitments.
195194func (svr * Server ) handlePostStdCommitment (w http.ResponseWriter , r * http.Request ) error {
196195 // Parse encoding type from query parameter
197- encodingType , hasEncoding , err := parseEncodingQueryParamType (w , r )
196+ encodingType , err := svr . parseEncodingQueryParamType (w , r )
198197 if err != nil {
199198 return err
200199 }
@@ -207,11 +206,7 @@ func (svr *Server) handlePostStdCommitment(w http.ResponseWriter, r *http.Reques
207206
208207 if svr .sm .GetDispersalBackend () == common .V2EigenDABackend {
209208 // If encoding is specified and we're using V2, use CertV2
210- if hasEncoding {
211- commitmentMeta .Version = commitments .CertV2
212- } else {
213- commitmentMeta .Version = commitments .CertV1
214- }
209+ commitmentMeta .Version = commitments .CertV2
215210 }
216211
217212 return svr .handlePostShared (w , r , nil , commitmentMeta )
@@ -227,16 +222,10 @@ func (svr *Server) handlePostOPKeccakCommitment(w http.ResponseWriter, r *http.R
227222 // return err
228223 // }
229224
230- // Parse encoding type from query parameter
231- encodingType , _ , err := parseEncodingQueryParamType (w , r )
232- if err != nil {
233- return err
234- }
235-
236225 commitmentMeta := commitments.CommitmentMeta {
237226 Mode : commitments .OptimismKeccak ,
238227 Version : commitments .CertV0 ,
239- Encoding : encodingType ,
228+ Encoding : commitments . RLPEncoding ,
240229 }
241230
242231 rawCommitmentHex , ok := mux .Vars (r )[routingVarNamePayloadHex ]
@@ -254,7 +243,7 @@ func (svr *Server) handlePostOPKeccakCommitment(w http.ResponseWriter, r *http.R
254243// handlePostOPGenericCommitment handles the POST request for optimism generic commitments.
255244func (svr * Server ) handlePostOPGenericCommitment (w http.ResponseWriter , r * http.Request ) error {
256245 // Parse encoding type from query parameter
257- encodingType , hasEncoding , err := parseEncodingQueryParamType (w , r )
246+ encodingType , err := svr . parseEncodingQueryParamType (w , r )
258247 if err != nil {
259248 return err
260249 }
@@ -266,12 +255,7 @@ func (svr *Server) handlePostOPGenericCommitment(w http.ResponseWriter, r *http.
266255 }
267256
268257 if svr .sm .GetDispersalBackend () == common .V2EigenDABackend {
269- // If encoding is specified and we're using V2, use CertV2
270- if hasEncoding {
271- commitmentMeta .Version = commitments .CertV2
272- } else {
273- commitmentMeta .Version = commitments .CertV1
274- }
258+ commitmentMeta .Version = commitments .CertV2
275259 }
276260
277261 return svr .handlePostShared (w , r , nil , commitmentMeta )
@@ -314,7 +298,7 @@ func (svr *Server) handlePostShared(
314298 return err
315299 }
316300
317- responseCommit , err := commitments .EncodeCommitment (commitment , meta . Mode , meta . Version , meta . Encoding )
301+ responseCommit , err := commitments .EncodeCommitment (commitment , meta )
318302 if err != nil {
319303 err = MetaError {
320304 Err : fmt .Errorf ("failed to encode commitment %v (commitment mode %v): %w" , commitment , meta .Mode , err ),
0 commit comments