Scalable and distributed custom feed generator, ott - on that topic

Try to get back to working

Changed files
+12 -3
crates
ott-xrpc
src
+12 -3
crates/ott-xrpc/src/main.rs
··· 1 use std::collections::BTreeMap; 2 3 - use axum::{Json, Router}; 4 use jacquard::types::did_doc::{DidDocument, Service, VerificationMethod}; 5 use jacquard_api::app_bsky::feed::{ 6 get_feed_skeleton::{GetFeedSkeletonOutput, GetFeedSkeletonRequest}, ··· 17 use jacquard_identity::JacquardResolver; 18 use ott_xrpc::{bsky::BskyClient, key::generate_key}; 19 20 use tracing::info; 21 use tracing_subscriber::EnvFilter; 22 23 async fn handler( 24 ExtractServiceAuth(auth): ExtractServiceAuth, ··· 55 56 let verification_method = VerificationMethod { 57 id: format!("{}#atproto", did_str).into(), 58 - r#type: "Mutlikey".into(), 59 controller: Some("did:web:ott.aleeve.dev".into()), 60 public_key_multibase: Some(generate_key().into()), 61 extra_data: BTreeMap::default(), ··· 83 let app = Router::new() 84 .merge(GetFeedSkeletonRequest::into_router(handler)) 85 .with_state(config) 86 - .merge(did_web_router(did_doc)); 87 88 let listener = tokio::net::TcpListener::bind("0.0.0.0:8080").await.unwrap(); 89 info!("Starting service");
··· 1 use std::collections::BTreeMap; 2 3 + use axum::{routing::get, Json, Router}; 4 use jacquard::types::did_doc::{DidDocument, Service, VerificationMethod}; 5 use jacquard_api::app_bsky::feed::{ 6 get_feed_skeleton::{GetFeedSkeletonOutput, GetFeedSkeletonRequest}, ··· 17 use jacquard_identity::JacquardResolver; 18 use ott_xrpc::{bsky::BskyClient, key::generate_key}; 19 20 + use serde_json::Value; 21 use tracing::info; 22 use tracing_subscriber::EnvFilter; 23 + 24 + async fn handle_wellknown_atproto_did() -> Json<serde_json::Value> { 25 + Json::from(Value::from("did:web:ott.aleeve.dev")) 26 + } 27 28 async fn handler( 29 ExtractServiceAuth(auth): ExtractServiceAuth, ··· 60 61 let verification_method = VerificationMethod { 62 id: format!("{}#atproto", did_str).into(), 63 + r#type: "Multikey".into(), 64 controller: Some("did:web:ott.aleeve.dev".into()), 65 public_key_multibase: Some(generate_key().into()), 66 extra_data: BTreeMap::default(), ··· 88 let app = Router::new() 89 .merge(GetFeedSkeletonRequest::into_router(handler)) 90 .with_state(config) 91 + .merge(did_web_router(did_doc)) 92 + .route( 93 + "/.well-known/atproto-did", 94 + get(handle_wellknown_atproto_did), 95 + ); 96 97 let listener = tokio::net::TcpListener::bind("0.0.0.0:8080").await.unwrap(); 98 info!("Starting service");