Skip to content

Commit 5d7070e

Browse files
committed
Expose prove-inclusion endpoint for MTC log
1 parent 76c1808 commit 5d7070e

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

crates/mtc_worker/src/frontend_worker.rs

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -14,7 +14,7 @@ use futures_util::future::try_join_all;
1414
use 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
};
1919
use log::{debug, info, warn};
2020
use 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

Comments
 (0)