@@ -14,7 +14,7 @@ use futures_util::future::try_join_all;
1414use generic_log_worker:: {
1515 get_cached_metadata, get_durable_object_stub, init_logging, load_cache_kv, load_public_bucket,
1616 log_ops:: UploadOptions , put_cache_entry_metadata, util:: now_millis, ObjectBackend ,
17- ObjectBucket , ENTRY_ENDPOINT , METRICS_ENDPOINT ,
17+ ObjectBucket , ProveInclusionQuery , ENTRY_ENDPOINT , METRICS_ENDPOINT , PROVE_INCLUSION_ENDPOINT ,
1818} ;
1919use log:: { debug, info, warn} ;
2020use mtc_api:: { AddEntryRequest , AddEntryResponse , RelativeOid , ID_RDNA_TRUSTANCHOR_ID } ;
@@ -68,6 +68,21 @@ async fn main(req: Request, env: Env, _ctx: Context) -> Result<Response> {
6868 . post_async ( "/logs/:log/add-entry" , |req, ctx| async move {
6969 add_entry ( req, & ctx. env , valid_log_name ( & ctx) ?) . await
7070 } )
71+ . get_async ( "/logs/:log/prove-inclusion" , |req, ctx| async move {
72+ let name = valid_log_name ( & ctx) ?;
73+ let stub = get_durable_object_stub (
74+ & ctx. env ,
75+ name,
76+ None ,
77+ "SEQUENCER" ,
78+ CONFIG . logs [ name] . location_hint . as_deref ( ) ,
79+ ) ?;
80+ let ProveInclusionQuery { leaf_index } = req. query ( ) ?;
81+ stub. fetch_with_str ( & format ! (
82+ "http://fake_url.com{PROVE_INCLUSION_ENDPOINT}?leaf_index={leaf_index}"
83+ ) )
84+ . await
85+ } )
7186 . get ( "/logs/:log/metadata" , |_req, ctx| {
7287 let name = valid_log_name ( & ctx) ?;
7388 let params = & CONFIG . logs [ name] ;
0 commit comments