diff --git a/Cargo.lock b/Cargo.lock index 3522dd1..a969166 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -1411,9 +1411,9 @@ checksum = "2f421161cb492475f1661ddc9815a745a1c894592070661180fdec3d4872e9c3" [[package]] name = "const-str" -version = "0.7.0" +version = "0.7.1" source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "f4d34b8f066904ed7cfa4a6f9ee96c3214aa998cb44b69ca20bd2054f47402ed" +checksum = "b0664d2867b4a32697dfe655557f5c3b187e9b605b38612a748e5ec99811d160" [[package]] name = "const_format" @@ -2477,7 +2477,7 @@ dependencies = [ "base64 0.22.1", "bytes", "ciborium", - "const-str 0.7.0", + "const-str 0.7.1", "const_format", "content_disposition", "derive_more 2.1.0", @@ -5567,7 +5567,7 @@ checksum = "4a5f13b858c8d314ee3e8f639011f7ccefe71f97f96e50151fb991f267928e2c" [[package]] name = "jacquard" version = "0.9.4" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "bytes", "getrandom 0.2.16", @@ -5599,7 +5599,7 @@ dependencies = [ [[package]] name = "jacquard-api" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "bon", "bytes", @@ -5618,7 +5618,7 @@ dependencies = [ [[package]] name = "jacquard-axum" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "axum", "bytes", @@ -5640,7 +5640,7 @@ dependencies = [ [[package]] name = "jacquard-common" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "base64 0.22.1", "bon", @@ -5688,7 +5688,7 @@ dependencies = [ [[package]] name = "jacquard-derive" version = "0.9.4" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "heck 0.5.0", "jacquard-lexicon", @@ -5700,7 +5700,7 @@ dependencies = [ [[package]] name = "jacquard-identity" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "bon", "bytes", @@ -5729,7 +5729,7 @@ dependencies = [ [[package]] name = "jacquard-lexicon" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "cid", "dashmap 6.1.0", @@ -5755,7 +5755,7 @@ dependencies = [ [[package]] name = "jacquard-oauth" version = "0.9.2" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "base64 0.22.1", "bytes", @@ -5788,7 +5788,7 @@ dependencies = [ [[package]] name = "jacquard-repo" version = "0.9.4" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "bytes", "cid", @@ -6746,7 +6746,7 @@ dependencies = [ [[package]] name = "mini-moka" version = "0.10.99" -source = "git+https://tangled.org/@nonbinary.computer/jacquard#d5d29a337d8f08ae52fe7bb4e31f91f8b029ff48" +source = "git+https://tangled.org/@nonbinary.computer/jacquard#bf8f91add8747b64b1d1d74af4b358960f69d6e7" dependencies = [ "crossbeam-channel", "crossbeam-utils", diff --git a/crates/weaver-app/Dockerfile b/crates/weaver-app/Dockerfile index dd47f40..50f3476 100644 --- a/crates/weaver-app/Dockerfile +++ b/crates/weaver-app/Dockerfile @@ -1,20 +1,18 @@ -# Build stage with cargo-chef for dependency caching -FROM rust:1-trixie AS chef -# Pin nightly version for reproducibility -RUN rustup default nightly-2025-12-04 && rustup component add rust-src --toolchain nightly-2025-12-04 -RUN cargo install cargo-chef -WORKDIR /app +# Build stage +FROM rust:1-trixie AS builder -FROM chef AS planner -COPY . . -RUN cargo chef prepare --recipe-path recipe.json +WORKDIR /app -FROM chef AS builder +# Pin nightly version for reproducibility +RUN rustup default nightly-2025-12-04 && rustup component add rust-src llvm-tools-preview --toolchain nightly-2025-12-04 # Install build dependencies RUN apt-get update && apt-get install -y \ pkg-config \ libssl-dev \ + clang \ + llvm \ + binutils \ && rm -rf /var/lib/apt/lists/* # Install wasm target and tools @@ -25,10 +23,6 @@ RUN cargo install wasm-bindgen-cli RUN curl -L --proto '=https' --tlsv1.2 -sSf https://raw.githubusercontent.com/cargo-bins/cargo-binstall/main/install-from-binstall-release.sh | bash RUN cargo binstall dioxus-cli --root /usr/local -y --force -# Cook dependencies first (cached layer) -COPY --from=planner /app/recipe.json recipe.json -RUN cargo chef cook --release --recipe-path recipe.json - # Copy source code COPY . . @@ -51,10 +45,10 @@ RUN wasm-bindgen target/wasm32-unknown-unknown/release/embed_worker.wasm \ --no-typescript # Bundle the app -RUN dx bundle --release --debug-symbols false -p weaver-app +RUN dx bundle --verbose --release --debug-symbols false -p weaver-app # Runtime stage -FROM debian:bookworm-slim +FROM debian:trixie-slim RUN apt-get update && apt-get install -y \ ca-certificates \ diff --git a/crates/weaver-app/assets/fonts/cmu-sans-serif/CMUSansSerif-Bold.ttf b/crates/weaver-app/assets/fonts/cmu-sans-serif/CMUSansSerif-Bold.ttf new file mode 100644 index 0000000000000000000000000000000000000000..53d642cba4316eaa1b0b1e44733906a47bbcaa06 GIT binary patch literal 200524 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 R8@WM5n}IRF&R3s-0RZz@YR3q&_(}u^`cX?>Yts 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�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 AG5`Po literal 0 HcmV?d00001 diff --git a/crates/weaver-app/assets/styling/theme-defaults.css b/crates/weaver-app/assets/styling/theme-defaults.css index 91b973c..7dda474 100644 --- a/crates/weaver-app/assets/styling/theme-defaults.css +++ b/crates/weaver-app/assets/styling/theme-defaults.css @@ -56,7 +56,7 @@ font-family: "Adobe Caslon Pro"; font-style: normal; font-weight: bold; - src: url("/assets/AdobeCaslonPro-Semibold.ttf") format("truetype"); + src: url("/assets/AdobeCaslonPro-Bold.ttf") format("truetype"); } @font-face { diff --git a/crates/weaver-app/src/env.rs b/crates/weaver-app/src/env.rs index f3c3e2f..60b6281 100644 --- a/crates/weaver-app/src/env.rs +++ b/crates/weaver-app/src/env.rs @@ -19,7 +19,7 @@ pub const WEAVER_TOS_URI: &'static str = ""; #[allow(unused)] pub const WEAVER_PRIVACY_POLICY_URI: &'static str = ""; #[allow(unused)] -pub const WEAVER_INDEXER_URL: &'static str = "http://localhost:3000"; +pub const WEAVER_INDEXER_URL: &'static str = "https://index.weaver.sh"; #[allow(unused)] pub const WEAVER_INDEXER_DID: &'static str = "did:web:index.weaver.sh"; #[allow(unused)] diff --git a/crates/weaver-app/src/og/mod.rs b/crates/weaver-app/src/og/mod.rs index 854832d..4e7b93d 100644 --- a/crates/weaver-app/src/og/mod.rs +++ b/crates/weaver-app/src/og/mod.rs @@ -134,14 +134,24 @@ static FONTDB: OnceLock = OnceLock::new(); fn get_fontdb() -> &'static fontdb::Database { FONTDB.get_or_init(|| { let mut db = fontdb::Database::new(); - // Load IBM Plex Sans from embedded bytes - let font_data = include_bytes!("../../assets/fonts/IBMPlexSans-VariableFont_wdth,wght.ttf"); - db.load_font_data(font_data.to_vec()); - // Load IBM Plex Sans Bold (static weight for proper bold rendering) - let font_data = include_bytes!("../../assets/fonts/IBMPlexSans-Bold.ttf"); - db.load_font_data(font_data.to_vec()); - let font_data = include_bytes!("../../assets/fonts/ioskeley-mono/IoskeleyMono-Regular.ttf"); - db.load_font_data(font_data.to_vec()); + // Load CMU Sans Serif for headings/UI + db.load_font_data( + include_bytes!("../../assets/fonts/cmu-sans-serif/CMUSansSerif-Medium.ttf").to_vec(), + ); + db.load_font_data( + include_bytes!("../../assets/fonts/cmu-sans-serif/CMUSansSerif-Bold.ttf").to_vec(), + ); + // Load Adobe Caslon Pro for body text + db.load_font_data( + include_bytes!("../../assets/fonts/adobe-caslon/AdobeCaslonPro-Regular.ttf").to_vec(), + ); + db.load_font_data( + include_bytes!("../../assets/fonts/adobe-caslon/AdobeCaslonPro-Bold.ttf").to_vec(), + ); + // Load Ioskeley Mono for branding/handles + db.load_font_data( + include_bytes!("../../assets/fonts/ioskeley-mono/IoskeleyMono-Regular.ttf").to_vec(), + ); db }) } diff --git a/crates/weaver-app/templates/og_hero_image.svg b/crates/weaver-app/templates/og_hero_image.svg index 939ae1e..aa91963 100644 --- a/crates/weaver-app/templates/og_hero_image.svg +++ b/crates/weaver-app/templates/og_hero_image.svg @@ -5,14 +5,14 @@ - + {% for line in title_lines %} - {{ line }} + {{ line }} {% endfor %} - - {{ notebook_title }} · @{{ author_handle }} + + {{ notebook_title }} · @{{ author_handle }} - weaver.sh + weaver.sh diff --git a/crates/weaver-app/templates/og_notebook.svg b/crates/weaver-app/templates/og_notebook.svg index d50e0a6..124e5e8 100644 --- a/crates/weaver-app/templates/og_notebook.svg +++ b/crates/weaver-app/templates/og_notebook.svg @@ -2,19 +2,19 @@ - + {% for line in title_lines %} - {{ line }} + {{ line }} {% endfor %} - - @{{ author_handle }} · {{ entry_count }} {% if entry_count == 1 %}entry{% else %}entries{% endif %} + + @{{ author_handle }} · {{ entry_count }} {% if entry_count == 1 %}entry{% else %}entries{% endif %} - + {% for entry_title in entry_titles %} - {{ entry_title }} + {{ entry_title }} {% endfor %} - weaver.sh + weaver.sh diff --git a/crates/weaver-app/templates/og_profile.svg b/crates/weaver-app/templates/og_profile.svg index 02b71b5..ca87118 100644 --- a/crates/weaver-app/templates/og_profile.svg +++ b/crates/weaver-app/templates/og_profile.svg @@ -12,22 +12,22 @@ {% endif %} - + {% for line in display_name_lines %} - {{ line }} + {{ line }} {% endfor %} - - @{{ handle }} + + @{{ handle }} - + {% for line in bio_lines %} - {{ line }} + {{ line }} {% endfor %} - {{ notebook_count }} {% if notebook_count == 1 %}notebook{% else %}notebooks{% endif %} + {{ notebook_count }} {% if notebook_count == 1 %}notebook{% else %}notebooks{% endif %} - weaver.sh + weaver.sh diff --git a/crates/weaver-app/templates/og_profile_banner.svg b/crates/weaver-app/templates/og_profile_banner.svg index 77c66a0..ca2c9b5 100644 --- a/crates/weaver-app/templates/og_profile_banner.svg +++ b/crates/weaver-app/templates/og_profile_banner.svg @@ -15,19 +15,19 @@ {% endif %} - + {% for line in display_name_lines %} - {{ line }} + {{ line }} {% endfor %} - - @{{ handle }} · {{ notebook_count }} {% if notebook_count == 1 %}notebook{% else %}notebooks{% endif %} + + @{{ handle }} · {{ notebook_count }} {% if notebook_count == 1 %}notebook{% else %}notebooks{% endif %} - + {% if bio_lines.first().is_some() %} - {{ bio_lines.first().unwrap() }} + {{ bio_lines.first().unwrap() }} {% endif %} - weaver.sh + weaver.sh diff --git a/crates/weaver-app/templates/og_site.svg b/crates/weaver-app/templates/og_site.svg index 985fd48..de15998 100644 --- a/crates/weaver-app/templates/og_site.svg +++ b/crates/weaver-app/templates/og_site.svg @@ -3,11 +3,11 @@ - Weaver + Weaver - Share your words, your way. + Share your words, your way. - weaver.sh + weaver.sh diff --git a/crates/weaver-app/templates/og_text_only.svg b/crates/weaver-app/templates/og_text_only.svg index caf7e85..c632986 100644 --- a/crates/weaver-app/templates/og_text_only.svg +++ b/crates/weaver-app/templates/og_text_only.svg @@ -2,21 +2,19 @@ - + {% for line in title_lines %} - {{ line }} + {{ line }} {% endfor %} - - {{ notebook_title }} · @{{ author_handle }} + + {{ notebook_title }} · @{{ author_handle }} - + {% for line in content_lines %} - {{ line }} + {{ line }} {% endfor %} - - - weaver.sh + weaver.sh diff --git a/crates/weaver-common/src/agent.rs b/crates/weaver-common/src/agent.rs index 05686d3..a228f91 100644 --- a/crates/weaver-common/src/agent.rs +++ b/crates/weaver-common/src/agent.rs @@ -7,26 +7,29 @@ pub use weaver_api::sh_weaver::notebook::{ // Re-export jacquard for convenience use crate::constellation::{GetBacklinksQuery, RecordId}; use crate::error::WeaverError; +#[allow(unused_imports)] +use crate::{PublishResult, W_TICKER, normalize_title_path}; pub use jacquard; use jacquard::bytes::Bytes; +#[allow(unused_imports)] use jacquard::client::{AgentError, AgentErrorKind, AgentSession, AgentSessionExt}; use jacquard::error::ClientError; use jacquard::prelude::*; use jacquard::smol_str::SmolStr; use jacquard::types::blob::{BlobRef, MimeType}; use jacquard::types::string::{AtUri, Did, RecordKey, Rkey}; +#[allow(unused_imports)] use jacquard::types::tid::Tid; use jacquard::types::uri::Uri; use jacquard::url::Url; use jacquard::{CowStr, IntoStatic}; use mime_sniffer::MimeTypeSniffer; +#[allow(unused_imports)] use std::path::Path; use weaver_api::com_atproto::repo::strong_ref::StrongRef; use weaver_api::sh_weaver::notebook::entry; use weaver_api::sh_weaver::publish::blob::Blob as PublishedBlob; -use crate::{PublishResult, W_TICKER, normalize_title_path}; - const CONSTELLATION_URL: &str = "https://constellation.microcosm.blue"; /// Strip trailing punctuation that URL parsers commonly eat @@ -473,6 +476,36 @@ pub trait WeaverExt: AgentSessionExt + XrpcExt + Send + Sync + Sized { } /// Fetch an entry and construct EntryView + #[cfg(feature = "use-index")] + fn fetch_entry_view<'a>( + &self, + _notebook: &NotebookView<'a>, + entry_ref: &StrongRef<'_>, + ) -> impl Future, WeaverError>> + where + Self: Sized, + { + async move { + use weaver_api::sh_weaver::notebook::get_entry::GetEntry; + + let resp = self + .send(GetEntry::new().uri(entry_ref.uri.clone()).build()) + .await + .map_err(|e| AgentError::from(ClientError::from(e)))?; + + let output = resp.into_output().map_err(|e| { + AgentError::from(ClientError::invalid_request(format!( + "Failed to get entry: {}", + e + ))) + })?; + + Ok(output.value.into_static()) + } + } + + /// Fetch an entry and construct EntryView + #[cfg(not(feature = "use-index"))] fn fetch_entry_view<'a>( &self, notebook: &NotebookView<'a>, diff --git a/crates/weaver-index/Cargo.toml b/crates/weaver-index/Cargo.toml index b394dd4..d52498b 100644 --- a/crates/weaver-index/Cargo.toml +++ b/crates/weaver-index/Cargo.toml @@ -25,7 +25,7 @@ weaver-common = { path = "../weaver-common", features = ["telemetry"] } # AT Protocol / Jacquard jacquard = { workspace = true, features = ["websocket", "zstd", "dns", "cache"] } -jacquard-common = { workspace = true, features = ["crypto-k256"] } +jacquard-common = { workspace = true, features = ["service-auth","crypto-ed25519"] } jacquard-repo = { workspace = true } jacquard-axum = { workspace = true } diff --git a/crates/weaver-index/migrations/clickhouse/001_raw_records.sql b/crates/weaver-index/migrations/clickhouse/001_raw_records.sql index 93e7851..0951f93 100644 --- a/crates/weaver-index/migrations/clickhouse/001_raw_records.sql +++ b/crates/weaver-index/migrations/clickhouse/001_raw_records.sql @@ -1,51 +1,30 @@ -- Raw records from firehose/jetstream -- Core table for all AT Protocol records before denormalization --- --- Append-only log using plain MergeTree - all versions preserved for audit/rollback. --- Query-time deduplication via ORDER BY + LIMIT or window functions. --- JSON column stores full record, extract fields only when needed for ORDER BY/WHERE/JOINs CREATE TABLE IF NOT EXISTS raw_records ( -- Decomposed AT URI components (at://did/collection/rkey) did String, collection LowCardinality(String), rkey String, - - -- Content identifier from the record (content-addressed hash) cid String, - -- Repository revision (TID) - monotonically increasing per DID, used for ordering rev String, - - -- Full record as native JSON (schema-flexible, queryable with record.field.subfield) record JSON, - - -- Operation: 'create', 'update', 'delete', 'cache' (fetched on-demand) + -- Operation: 'create', 'update', 'delete', ('cache' - fetched on-demand) operation LowCardinality(String), - - -- Firehose sequence number (metadata only, not for ordering - can jump on relay restart) + -- Firehose sequence number seq UInt64, - -- Event timestamp from firehose event_time DateTime64(3), - - -- When we indexed this record + -- When the database indexed this record indexed_at DateTime64(3) DEFAULT now64(3), - -- Validation state: 'unchecked', 'valid', 'invalid_rev', 'invalid_gap', 'invalid_account' - -- Populated by async batch validation, not in hot path validation_state LowCardinality(String) DEFAULT 'unchecked', - -- Whether this came from live firehose (true) or backfill (false) - -- Backfill events may not reflect current state until repo is fully synced is_live Bool DEFAULT true, - -- Materialized AT URI for convenience uri String MATERIALIZED concat('at://', did, '/', collection, '/', rkey), - -- Projection for fast delete lookups by (did, cid) - -- Delete events include CID, so we can O(1) lookup the original record - -- to know what to decrement (e.g., which notebook's like count) PROJECTION by_did_cid ( SELECT * ORDER BY (did, cid) ) diff --git a/crates/weaver-index/migrations/clickhouse/002_identity_events.sql b/crates/weaver-index/migrations/clickhouse/002_identity_events.sql index b42017e..e76b174 100644 --- a/crates/weaver-index/migrations/clickhouse/002_identity_events.sql +++ b/crates/weaver-index/migrations/clickhouse/002_identity_events.sql @@ -5,7 +5,7 @@ CREATE TABLE IF NOT EXISTS raw_identity_events ( -- The DID this identity event is about did String, - -- Handle (may be empty if cleared) + -- Handle (may be empty) handle String, -- Sequence number from firehose diff --git a/crates/weaver-index/migrations/clickhouse/003_account_events.sql b/crates/weaver-index/migrations/clickhouse/003_account_events.sql index e626a3f..eee212e 100644 --- a/crates/weaver-index/migrations/clickhouse/003_account_events.sql +++ b/crates/weaver-index/migrations/clickhouse/003_account_events.sql @@ -1,5 +1,4 @@ -- Account events from firehose (#account messages) --- Tracks account status changes: active, deactivated, deleted, suspended, takendown CREATE TABLE IF NOT EXISTS raw_account_events ( -- The DID this account event is about diff --git a/crates/weaver-index/migrations/clickhouse/005_firehose_cursor.sql b/crates/weaver-index/migrations/clickhouse/005_firehose_cursor.sql index b37c9e4..51cab95 100644 --- a/crates/weaver-index/migrations/clickhouse/005_firehose_cursor.sql +++ b/crates/weaver-index/migrations/clickhouse/005_firehose_cursor.sql @@ -2,7 +2,6 @@ -- Tracks our position in the firehose stream for resumption after restart CREATE TABLE IF NOT EXISTS firehose_cursor ( - -- Consumer identifier (allows multiple consumers with different cursors) consumer_id String, -- Last successfully processed sequence number diff --git a/crates/weaver-index/migrations/clickhouse/006_account_rev_state.sql b/crates/weaver-index/migrations/clickhouse/006_account_rev_state.sql index dcc7fd3..37a64cf 100644 --- a/crates/weaver-index/migrations/clickhouse/006_account_rev_state.sql +++ b/crates/weaver-index/migrations/clickhouse/006_account_rev_state.sql @@ -1,8 +1,5 @@ -- Per-account revision state tracking -- Maintains latest rev/cid per DID for dedup and gap detection --- --- AggregatingMergeTree with incremental MV from raw_records --- Query with argMaxMerge/maxMerge to finalize aggregates CREATE TABLE IF NOT EXISTS account_rev_state ( -- Account DID diff --git a/crates/weaver-index/migrations/clickhouse/007_account_rev_state_mv.sql b/crates/weaver-index/migrations/clickhouse/007_account_rev_state_mv.sql index 43d72e8..d666a80 100644 --- a/crates/weaver-index/migrations/clickhouse/007_account_rev_state_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/007_account_rev_state_mv.sql @@ -1,5 +1,4 @@ --- Incremental MV: fires on each insert to raw_records, maintains aggregate state --- Must be created after both account_rev_state (target) and raw_records (source) exist + CREATE MATERIALIZED VIEW IF NOT EXISTS account_rev_state_mv TO account_rev_state AS SELECT diff --git a/crates/weaver-index/migrations/clickhouse/010_handle_mappings_account_mv.sql b/crates/weaver-index/migrations/clickhouse/010_handle_mappings_account_mv.sql index 7016a79..d9190d1 100644 --- a/crates/weaver-index/migrations/clickhouse/010_handle_mappings_account_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/010_handle_mappings_account_mv.sql @@ -1,6 +1,4 @@ -- Auto-populate freed status from account events --- JOINs against handle_mappings to find current handle for the DID --- If no mapping exists yet, the JOIN fails silently (can't free unknown handles) CREATE MATERIALIZED VIEW IF NOT EXISTS handle_mappings_from_account_mv TO handle_mappings AS SELECT diff --git a/crates/weaver-index/migrations/clickhouse/011_profiles_weaver.sql b/crates/weaver-index/migrations/clickhouse/011_profiles_weaver.sql index 4e4478b..2b0336f 100644 --- a/crates/weaver-index/migrations/clickhouse/011_profiles_weaver.sql +++ b/crates/weaver-index/migrations/clickhouse/011_profiles_weaver.sql @@ -1,10 +1,7 @@ -- Weaver profile source table --- Populated by MV from raw_records, merged into profiles by refreshable MV CREATE TABLE IF NOT EXISTS profiles_weaver ( did String, - - -- Raw profile JSON profile String, -- Extracted fields for coalescing diff --git a/crates/weaver-index/migrations/clickhouse/012_profiles_weaver_mv.sql b/crates/weaver-index/migrations/clickhouse/012_profiles_weaver_mv.sql index 286f04d..386e40e 100644 --- a/crates/weaver-index/migrations/clickhouse/012_profiles_weaver_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/012_profiles_weaver_mv.sql @@ -3,7 +3,7 @@ CREATE MATERIALIZED VIEW IF NOT EXISTS profiles_weaver_mv TO profiles_weaver AS SELECT did, - toString(record) as profile, + record as profile, coalesce(record.displayName, '') as display_name, coalesce(record.description, '') as description, coalesce(record.avatar.ref.`$link`, '') as avatar_cid, diff --git a/crates/weaver-index/migrations/clickhouse/013_profiles_bsky.sql b/crates/weaver-index/migrations/clickhouse/013_profiles_bsky.sql index 67f0aef..f42049d 100644 --- a/crates/weaver-index/migrations/clickhouse/013_profiles_bsky.sql +++ b/crates/weaver-index/migrations/clickhouse/013_profiles_bsky.sql @@ -1,10 +1,8 @@ -- Bluesky profile source table --- Populated by MV from raw_records, merged into profiles by refreshable MV CREATE TABLE IF NOT EXISTS profiles_bsky ( did String, - -- Raw profile JSON profile String, -- Extracted fields for coalescing diff --git a/crates/weaver-index/migrations/clickhouse/014_profiles_bsky_mv.sql b/crates/weaver-index/migrations/clickhouse/014_profiles_bsky_mv.sql index 6a0df55..441e264 100644 --- a/crates/weaver-index/migrations/clickhouse/014_profiles_bsky_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/014_profiles_bsky_mv.sql @@ -3,7 +3,7 @@ CREATE MATERIALIZED VIEW IF NOT EXISTS profiles_bsky_mv TO profiles_bsky AS SELECT did, - toString(record) as profile, + record as profile, coalesce(record.displayName, '') as display_name, coalesce(record.description, '') as description, coalesce(record.avatar.ref.`$link`, '') as avatar_cid, diff --git a/crates/weaver-index/migrations/clickhouse/015_profiles.sql b/crates/weaver-index/migrations/clickhouse/015_profiles.sql index 3d450a1..4e7c249 100644 --- a/crates/weaver-index/migrations/clickhouse/015_profiles.sql +++ b/crates/weaver-index/migrations/clickhouse/015_profiles.sql @@ -1,7 +1,4 @@ -- Unified profiles view --- Refreshable MV that merges weaver + bsky profiles with handle resolution --- Queries are pure reads, no merge computation needed - CREATE MATERIALIZED VIEW IF NOT EXISTS profiles REFRESH EVERY 1 MINUTE ENGINE = ReplacingMergeTree(indexed_at) @@ -9,7 +6,6 @@ ORDER BY did AS SELECT if(w.did != '', w.did, b.did) as did, - -- Handle from handle_mappings (empty if not resolved yet) coalesce(h.handle, '') as handle, -- Raw profiles per source diff --git a/crates/weaver-index/migrations/clickhouse/017_notebooks.sql b/crates/weaver-index/migrations/clickhouse/017_notebooks.sql index cc9c349..3a520a9 100644 --- a/crates/weaver-index/migrations/clickhouse/017_notebooks.sql +++ b/crates/weaver-index/migrations/clickhouse/017_notebooks.sql @@ -25,8 +25,6 @@ CREATE TABLE IF NOT EXISTS notebooks ( -- Soft delete (epoch = not deleted) deleted_at DateTime64(3) DEFAULT toDateTime64(0, 3), - - -- Full record JSON for hydration record JSON DEFAULT '{}' ) ENGINE = ReplacingMergeTree(indexed_at) diff --git a/crates/weaver-index/migrations/clickhouse/019_notebook_counts.sql b/crates/weaver-index/migrations/clickhouse/019_notebook_counts.sql index cf8821c..2d4730b 100644 --- a/crates/weaver-index/migrations/clickhouse/019_notebook_counts.sql +++ b/crates/weaver-index/migrations/clickhouse/019_notebook_counts.sql @@ -1,6 +1,4 @@ --- Notebook engagement counts --- Updated by MVs from likes, bookmarks, subscriptions (added later with graph tables) --- Joined with notebooks at query time +-- Notebook engagement counts table stub CREATE TABLE IF NOT EXISTS notebook_counts ( did String, diff --git a/crates/weaver-index/migrations/clickhouse/020_entries.sql b/crates/weaver-index/migrations/clickhouse/020_entries.sql index 04a1da4..eacb8de 100644 --- a/crates/weaver-index/migrations/clickhouse/020_entries.sql +++ b/crates/weaver-index/migrations/clickhouse/020_entries.sql @@ -24,8 +24,6 @@ CREATE TABLE IF NOT EXISTS entries ( -- Soft delete (epoch = not deleted) deleted_at DateTime64(3) DEFAULT toDateTime64(0, 3), - - -- Full record JSON for hydration record JSON DEFAULT '{}' ) ENGINE = ReplacingMergeTree(indexed_at) diff --git a/crates/weaver-index/migrations/clickhouse/022_entry_counts.sql b/crates/weaver-index/migrations/clickhouse/022_entry_counts.sql index 1ae1fea..2c9f811 100644 --- a/crates/weaver-index/migrations/clickhouse/022_entry_counts.sql +++ b/crates/weaver-index/migrations/clickhouse/022_entry_counts.sql @@ -1,6 +1,4 @@ --- Entry engagement counts --- Updated by MVs from likes, bookmarks (added later with graph tables) --- Joined with entries at query time +-- Entry engagement counts table stub CREATE TABLE IF NOT EXISTS entry_counts ( did String, diff --git a/crates/weaver-index/migrations/clickhouse/023_drafts.sql b/crates/weaver-index/migrations/clickhouse/023_drafts.sql index b0184cf..c9ea988 100644 --- a/crates/weaver-index/migrations/clickhouse/023_drafts.sql +++ b/crates/weaver-index/migrations/clickhouse/023_drafts.sql @@ -1,5 +1,4 @@ -- Draft stub records --- Anchors for unpublished content, enables draft discovery via queries CREATE TABLE IF NOT EXISTS drafts ( -- Identity diff --git a/crates/weaver-index/migrations/clickhouse/025_edit_nodes.sql b/crates/weaver-index/migrations/clickhouse/025_edit_nodes.sql index bb628ee..0299a92 100644 --- a/crates/weaver-index/migrations/clickhouse/025_edit_nodes.sql +++ b/crates/weaver-index/migrations/clickhouse/025_edit_nodes.sql @@ -16,23 +16,21 @@ CREATE TABLE IF NOT EXISTS edit_nodes ( node_type LowCardinality(String), -- 'root' or 'diff' -- Resource being edited (extracted from doc.value) - -- One of these will be populated depending on doc type resource_type LowCardinality(String) DEFAULT '', -- 'entry', 'notebook', 'draft' resource_did String DEFAULT '', resource_rkey String DEFAULT '', resource_collection LowCardinality(String) DEFAULT '', - -- For diffs: reference to root (StrongRef) + -- For diffs: reference to root root_did String DEFAULT '', root_rkey String DEFAULT '', root_cid String DEFAULT '', - -- For diffs: reference to previous node (StrongRef) + -- For diffs: reference to previous node prev_did String DEFAULT '', prev_rkey String DEFAULT '', prev_cid String DEFAULT '', - -- Whether this has inline diff data vs blob snapshot has_inline_diff UInt8 DEFAULT 0, has_snapshot UInt8 DEFAULT 0, diff --git a/crates/weaver-index/migrations/clickhouse/026_edit_roots_mv.sql b/crates/weaver-index/migrations/clickhouse/026_edit_roots_mv.sql index 5b6e1b8..8098f27 100644 --- a/crates/weaver-index/migrations/clickhouse/026_edit_roots_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/026_edit_roots_mv.sql @@ -16,23 +16,25 @@ SELECT '' ) as resource_type, - -- Extract resource DID (parse from URI or empty) + -- Extract resource DID multiIf( toString(record.doc.value.entry.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.entry.uri), 'at://', ''))[1], toString(record.doc.value.notebook.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.notebook.uri), 'at://', ''))[1], + toString(record.doc.value.draftKey) != '', + splitByChar('/', replaceOne(toString(record.doc.value.draftKey), 'at://', ''))[1], '' ) as resource_did, - -- Extract resource rkey (parse from URI or use draftKey) + -- Extract resource rkey multiIf( toString(record.doc.value.entry.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.entry.uri), 'at://', ''))[3], toString(record.doc.value.notebook.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.notebook.uri), 'at://', ''))[3], toString(record.doc.value.draftKey) != '', - toString(record.doc.value.draftKey), + splitByChar('/', replaceOne(toString(record.doc.value.draftKey), 'at://', ''))[3], '' ) as resource_rkey, diff --git a/crates/weaver-index/migrations/clickhouse/027_edit_diffs_mv.sql b/crates/weaver-index/migrations/clickhouse/027_edit_diffs_mv.sql index cf43aa5..2d215b5 100644 --- a/crates/weaver-index/migrations/clickhouse/027_edit_diffs_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/027_edit_diffs_mv.sql @@ -22,6 +22,8 @@ SELECT splitByChar('/', replaceOne(toString(record.doc.value.entry.uri), 'at://', ''))[1], toString(record.doc.value.notebook.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.notebook.uri), 'at://', ''))[1], + toString(record.doc.value.draftKey) != '', + splitByChar('/', replaceOne(toString(record.doc.value.draftKey), 'at://', ''))[1], '' ) as resource_did, @@ -32,7 +34,7 @@ SELECT toString(record.doc.value.notebook.uri) != '', splitByChar('/', replaceOne(toString(record.doc.value.notebook.uri), 'at://', ''))[3], toString(record.doc.value.draftKey) != '', - toString(record.doc.value.draftKey), + splitByChar('/', replaceOne(toString(record.doc.value.draftKey), 'at://', ''))[3], '' ) as resource_rkey, diff --git a/crates/weaver-index/migrations/clickhouse/038_notebook_entries.sql b/crates/weaver-index/migrations/clickhouse/038_notebook_entries.sql index 1de2048..8b7f64e 100644 --- a/crates/weaver-index/migrations/clickhouse/038_notebook_entries.sql +++ b/crates/weaver-index/migrations/clickhouse/038_notebook_entries.sql @@ -1,6 +1,5 @@ -- Notebook entries mapping (denormalized for reverse lookup) -- Maps entries to the notebooks that contain them --- Enables reverse lookup: find notebooks containing an entry CREATE TABLE IF NOT EXISTS notebook_entries ( -- Entry being referenced diff --git a/crates/weaver-index/migrations/clickhouse/039_notebook_entries_mv.sql b/crates/weaver-index/migrations/clickhouse/039_notebook_entries_mv.sql index e148899..8533d60 100644 --- a/crates/weaver-index/migrations/clickhouse/039_notebook_entries_mv.sql +++ b/crates/weaver-index/migrations/clickhouse/039_notebook_entries_mv.sql @@ -1,14 +1,9 @@ -- Populate notebook_entries from notebooks --- Extracts entry references from the entryList in notebook records --- Incremental MV: triggers on INSERT to notebooks, writes to notebook_entries CREATE MATERIALIZED VIEW IF NOT EXISTS notebook_entries_mv TO notebook_entries AS SELECT - -- Parse entry URI to extract did and rkey - -- URI format: at://did:plc:xxx/sh.weaver.notebook.entry/rkey - -- assumeNotNull is safe here because WHERE filters guarantee non-null assumeNotNull(extract(entry_uri, 'at://([^/]+)/')) as entry_did, assumeNotNull(extract(entry_uri, '/sh\\.weaver\\.notebook\\.entry/([^/]+)$')) as entry_rkey, diff --git a/crates/weaver-index/src/clickhouse/queries/notebooks.rs b/crates/weaver-index/src/clickhouse/queries/notebooks.rs index 4cdac9d..5fdb157 100644 --- a/crates/weaver-index/src/clickhouse/queries/notebooks.rs +++ b/crates/weaver-index/src/clickhouse/queries/notebooks.rs @@ -133,63 +133,56 @@ impl Client { Ok(row) } - /// List entries for a notebook's author (did). + /// List entries for a specific notebook, ordered by position in the notebook. /// - /// Note: This is a simplified version. The full implementation would - /// need to join with notebook's entryList to get proper ordering. - /// For now, we just list entries by the same author, ordered by rkey (notebook order). + /// Uses notebook_entries table to get entries that belong to this notebook. pub async fn list_notebook_entries( &self, - did: &str, + notebook_did: &str, + notebook_rkey: &str, limit: u32, - cursor: Option<&str>, + cursor: Option, ) -> Result, IndexError> { - // Note: rkey ordering is intentional here - it's the notebook's entry order - let query = if cursor.is_some() { - r#" - SELECT did, rkey, cid, uri, title, path, tags, author_dids, created_at, indexed_at, record - FROM ( - SELECT did, rkey, cid, uri, title, path, tags, author_dids, created_at, updated_at, indexed_at, record, - ROW_NUMBER() OVER (PARTITION BY rkey ORDER BY updated_at DESC) as rn - FROM entries FINAL - WHERE did = ? - AND deleted_at = toDateTime64(0, 3) - AND rkey > ? - ) - WHERE rn = 1 - ORDER BY rkey ASC - LIMIT ? - "# - } else { - r#" - SELECT did, rkey, cid, uri, title, path, tags, author_dids, created_at, indexed_at, record - FROM ( - SELECT did, rkey, cid, uri, title, path, tags, author_dids, created_at, updated_at, indexed_at, record, - ROW_NUMBER() OVER (PARTITION BY rkey ORDER BY updated_at DESC) as rn - FROM entries FINAL - WHERE did = ? - AND deleted_at = toDateTime64(0, 3) - ) - WHERE rn = 1 - ORDER BY rkey ASC - LIMIT ? - "# - }; - - let mut q = self.inner().query(query).bind(did); + let query = r#" + SELECT + e.did AS did, + e.rkey AS rkey, + e.cid AS cid, + e.uri AS uri, + e.title AS title, + e.path AS path, + e.tags AS tags, + e.author_dids AS author_dids, + e.created_at AS created_at, + e.indexed_at AS indexed_at, + e.record AS record + FROM notebook_entries ne FINAL + INNER JOIN entries e ON + e.did = ne.entry_did + AND e.rkey = ne.entry_rkey + AND e.deleted_at = toDateTime64(0, 3) + WHERE ne.notebook_did = ? + AND ne.notebook_rkey = ? + AND ne.position > ? + ORDER BY ne.position ASC + LIMIT ? + "#; - if let Some(c) = cursor { - q = q.bind(c); - } + let cursor_val = cursor.unwrap_or(0); - let rows = - q.bind(limit) - .fetch_all::() - .await - .map_err(|e| ClickHouseError::Query { - message: "failed to list notebook entries".into(), - source: e, - })?; + let rows = self + .inner() + .query(query) + .bind(notebook_did) + .bind(notebook_rkey) + .bind(cursor_val) + .bind(limit) + .fetch_all::() + .await + .map_err(|e| ClickHouseError::Query { + message: "failed to list notebook entries".into(), + source: e, + })?; Ok(rows) } diff --git a/crates/weaver-index/src/endpoints/bsky.rs b/crates/weaver-index/src/endpoints/bsky.rs new file mode 100644 index 0000000..962b144 --- /dev/null +++ b/crates/weaver-index/src/endpoints/bsky.rs @@ -0,0 +1,48 @@ +//! app.bsky.* passthrough endpoints +//! +//! These forward requests to the Bluesky appview. + +use axum::{Json, extract::State}; +use jacquard::prelude::*; +use jacquard_axum::ExtractXrpc; +use weaver_api::app_bsky::actor::get_profile::{GetProfileOutput, GetProfileRequest}; +use weaver_api::app_bsky::feed::get_posts::{GetPostsOutput, GetPostsRequest}; + +use crate::endpoints::repo::XrpcErrorResponse; +use crate::server::AppState; + +/// Handle app.bsky.actor.getProfile (passthrough) +pub async fn get_profile( + State(state): State, + ExtractXrpc(args): ExtractXrpc, +) -> Result>, XrpcErrorResponse> { + let response = state.resolver.send(args).await.map_err(|e| { + tracing::warn!("Appview getProfile failed: {}", e); + XrpcErrorResponse::internal_error("Failed to fetch profile from appview") + })?; + + let output = response.into_output().map_err(|e| { + tracing::warn!("Failed to parse getProfile response: {}", e); + XrpcErrorResponse::internal_error("Failed to parse appview response") + })?; + + Ok(Json(output)) +} + +/// Handle app.bsky.feed.getPosts (passthrough) +pub async fn get_posts( + State(state): State, + ExtractXrpc(args): ExtractXrpc, +) -> Result>, XrpcErrorResponse> { + let response = state.resolver.send(args).await.map_err(|e| { + tracing::warn!("Appview getPosts failed: {}", e); + XrpcErrorResponse::internal_error("Failed to fetch posts from appview") + })?; + + let output = response.into_output().map_err(|e| { + tracing::warn!("Failed to parse getPosts response: {}", e); + XrpcErrorResponse::internal_error("Failed to parse appview response") + })?; + + Ok(Json(output)) +} diff --git a/crates/weaver-index/src/endpoints/edit.rs b/crates/weaver-index/src/endpoints/edit.rs index 1b0b26d..d42640c 100644 --- a/crates/weaver-index/src/endpoints/edit.rs +++ b/crates/weaver-index/src/endpoints/edit.rs @@ -21,8 +21,8 @@ use weaver_api::sh_weaver::edit::list_drafts::{DraftView, ListDraftsOutput, List use crate::clickhouse::{EditNodeRow, ProfileRow}; use crate::endpoints::actor::{Viewer, resolve_actor}; use crate::endpoints::collab::profile_to_view_basic; -use crate::endpoints::resolve_uri; use crate::endpoints::repo::XrpcErrorResponse; +use crate::endpoints::resolve_uri; use crate::server::AppState; /// Handle sh.weaver.edit.getEditHistory diff --git a/crates/weaver-index/src/endpoints/identity.rs b/crates/weaver-index/src/endpoints/identity.rs new file mode 100644 index 0000000..3b379d0 --- /dev/null +++ b/crates/weaver-index/src/endpoints/identity.rs @@ -0,0 +1,29 @@ +//! com.atproto.identity.* endpoint handlers + +use axum::{Json, extract::State}; +use jacquard::IntoStatic; +use jacquard::types::ident::AtIdentifier; +use jacquard_axum::ExtractXrpc; +use weaver_api::com_atproto::identity::resolve_handle::{ + ResolveHandleOutput, ResolveHandleRequest, +}; + +use crate::endpoints::actor::resolve_actor; +use crate::endpoints::repo::XrpcErrorResponse; +use crate::server::AppState; + +/// Handle com.atproto.identity.resolveHandle +pub async fn resolve_handle( + State(state): State, + ExtractXrpc(args): ExtractXrpc, +) -> Result>, XrpcErrorResponse> { + let did = resolve_actor(&state, &AtIdentifier::Handle(args.handle)).await?; + + Ok(Json( + ResolveHandleOutput { + did: did.into_static(), + extra_data: None, + } + .into_static(), + )) +} diff --git a/crates/weaver-index/src/endpoints/mod.rs b/crates/weaver-index/src/endpoints/mod.rs index 7b1c5fa..44f0dba 100644 --- a/crates/weaver-index/src/endpoints/mod.rs +++ b/crates/weaver-index/src/endpoints/mod.rs @@ -12,8 +12,10 @@ use self::actor::resolve_actor; use self::repo::XrpcErrorResponse; pub mod actor; +pub mod bsky; pub mod collab; pub mod edit; +pub mod identity; pub mod notebook; pub mod repo; diff --git a/crates/weaver-index/src/endpoints/notebook.rs b/crates/weaver-index/src/endpoints/notebook.rs index 94983ef..f3b18d2 100644 --- a/crates/weaver-index/src/endpoints/notebook.rs +++ b/crates/weaver-index/src/endpoints/notebook.rs @@ -45,36 +45,32 @@ pub async fn resolve_notebook( let did_str = did.as_str(); let name = args.name.as_ref(); - // Fetch notebook and entries in parallel - both just need the DID let limit = args.entry_limit.unwrap_or(50).clamp(1, 100) as u32; - let cursor = args.entry_cursor.as_deref(); + let cursor: Option = args + .entry_cursor + .as_deref() + .and_then(|c| c.parse().ok()); - let (notebook_result, entries_result) = tokio::try_join!( - async { - state - .clickhouse - .resolve_notebook(did_str, name) - .await - .map_err(|e| { - tracing::error!("Failed to resolve notebook: {}", e); - XrpcErrorResponse::internal_error("Database query failed") - }) - }, - async { - state - .clickhouse - .list_notebook_entries(did_str, limit + 1, cursor) - .await - .map_err(|e| { - tracing::error!("Failed to list entries: {}", e); - XrpcErrorResponse::internal_error("Database query failed") - }) - } - )?; + // Fetch notebook first to get its rkey + let notebook_row = state + .clickhouse + .resolve_notebook(did_str, name) + .await + .map_err(|e| { + tracing::error!("Failed to resolve notebook: {}", e); + XrpcErrorResponse::internal_error("Database query failed") + })? + .ok_or_else(|| XrpcErrorResponse::not_found("Notebook not found"))?; - let notebook_row = - notebook_result.ok_or_else(|| XrpcErrorResponse::not_found("Notebook not found"))?; - let entry_rows = entries_result; + // Now fetch entries using notebook's rkey + let entry_rows = state + .clickhouse + .list_notebook_entries(did_str, ¬ebook_row.rkey, limit + 1, cursor) + .await + .map_err(|e| { + tracing::error!("Failed to list entries: {}", e); + XrpcErrorResponse::internal_error("Database query failed") + })?; // Fetch notebook contributors (evidence-based) let notebook_contributors = state @@ -183,9 +179,11 @@ pub async fn resolve_notebook( entries.push(book_entry); } - // Build cursor for pagination + // Build cursor for pagination (position-based) let next_cursor = if has_more { - entry_rows.last().map(|e| e.rkey.to_string().into()) + // Position = cursor offset + number of entries returned + let last_position = cursor.unwrap_or(0) + entry_rows.len() as u32; + Some(last_position.to_string().into()) } else { None }; diff --git a/crates/weaver-index/src/landing.html b/crates/weaver-index/src/landing.html new file mode 100644 index 0000000..f0626e7 --- /dev/null +++ b/crates/weaver-index/src/landing.html @@ -0,0 +1,127 @@ + + + + + + Weaver Index + + + +

+
+    .dP'    db    `Yb                .dP'
+    dP'    db    db  88              dP'
+                88
+    `Yb d888b    'Yb     'Yb     88 d88b d88b     'Yb   `Yb    dP'
+    88P    88    88      88     88P   8Y   8b     88     Yb  dP
+    88     8P    88      88     88    8P   88     88      YbdP
+    88   .dP    .8P     .8P     88  .dP' .dP'    .8P      .8P
+    .88888888b.                  8888888888888b.         dP'  b
+                                        Y.  ,P
+                                            `""'
+

Weaver Index

+

AT Protocol Record Index

+

This is an AT Protocol record index serving the Weaver writing platform.

+

Most API endpoints are available under /xrpc/.

+
+ + diff --git a/crates/weaver-index/src/server.rs b/crates/weaver-index/src/server.rs index 2b30a95..b1bd826 100644 --- a/crates/weaver-index/src/server.rs +++ b/crates/weaver-index/src/server.rs @@ -1,7 +1,13 @@ use std::net::SocketAddr; use std::sync::Arc; -use axum::{Json, Router, extract::State, http::StatusCode, response::IntoResponse, routing::get}; +use axum::{ + Json, Router, + extract::State, + http::{StatusCode, header}, + response::{Html, IntoResponse}, + routing::get, +}; use jacquard::api::com_atproto::repo::{ get_record::GetRecordRequest, list_records::ListRecordsRequest, }; @@ -16,6 +22,9 @@ use serde::Serialize; use tower_http::cors::CorsLayer; use tower_http::trace::TraceLayer; use tracing::info; +use weaver_api::app_bsky::actor::get_profile::GetProfileRequest as BskyGetProfileRequest; +use weaver_api::app_bsky::feed::get_posts::GetPostsRequest as BskyGetPostsRequest; +use weaver_api::com_atproto::identity::resolve_handle::ResolveHandleRequest; use weaver_api::sh_weaver::actor::{ get_actor_entries::GetActorEntriesRequest, get_actor_notebooks::GetActorNotebooksRequest, get_profile::GetProfileRequest, @@ -35,7 +44,7 @@ use weaver_api::sh_weaver::notebook::{ use crate::clickhouse::Client; use crate::config::ShardConfig; -use crate::endpoints::{actor, collab, edit, notebook, repo}; +use crate::endpoints::{actor, bsky, collab, edit, identity, notebook, repo}; use crate::error::{IndexError, ServerError}; use crate::sqlite::ShardRouter; @@ -59,7 +68,7 @@ impl AppState { Self { clickhouse: Arc::new(clickhouse), shards: Arc::new(ShardRouter::new(shard_config.base_path)), - resolver: UnauthenticatedSession::new_slingshot(), + resolver: UnauthenticatedSession::new_public(), service_did, } } @@ -84,12 +93,26 @@ impl ServiceAuth for AppState { /// Build the axum router with all XRPC endpoints pub fn router(state: AppState, did_doc: DidDocument<'static>) -> Router { Router::new() - // did:web document + .route("/", get(landing)) + .route( + "/assets/IoskeleyMono-Regular.woff2", + get(font_ioskeley_regular), + ) + .route("/assets/IoskeleyMono-Bold.woff2", get(font_ioskeley_bold)) + .route( + "/assets/IoskeleyMono-Italic.woff2", + get(font_ioskeley_italic), + ) .route("/xrpc/_health", get(health)) .route("/metrics", get(metrics)) + // com.atproto.identity.* endpoints + .merge(ResolveHandleRequest::into_router(identity::resolve_handle)) // com.atproto.repo.* endpoints (record cache) .merge(GetRecordRequest::into_router(repo::get_record)) .merge(ListRecordsRequest::into_router(repo::list_records)) + // app.bsky.* passthrough endpoints + .merge(BskyGetProfileRequest::into_router(bsky::get_profile)) + .merge(BskyGetPostsRequest::into_router(bsky::get_posts)) // sh.weaver.actor.* endpoints .merge(GetProfileRequest::into_router(actor::get_profile)) .merge(GetActorNotebooksRequest::into_router( @@ -138,6 +161,38 @@ async fn metrics() -> String { telemetry::render() } +// Embedded font files +const IOSKELEY_MONO_REGULAR: &[u8] = + include_bytes!("../../weaver-app/assets/fonts/ioskeley-mono/IoskeleyMono-Regular.woff2"); +const IOSKELEY_MONO_BOLD: &[u8] = + include_bytes!("../../weaver-app/assets/fonts/ioskeley-mono/IoskeleyMono-Bold.woff2"); +const IOSKELEY_MONO_ITALIC: &[u8] = + include_bytes!("../../weaver-app/assets/fonts/ioskeley-mono/IoskeleyMono-Italic.woff2"); + +/// Serve the Ioskeley Mono Regular font +async fn font_ioskeley_regular() -> impl IntoResponse { + ( + [(header::CONTENT_TYPE, "font/woff2")], + IOSKELEY_MONO_REGULAR, + ) +} +/// Serve the Ioskeley Mono Regular font +async fn font_ioskeley_bold() -> impl IntoResponse { + ([(header::CONTENT_TYPE, "font/woff2")], IOSKELEY_MONO_BOLD) +} + +/// Serve the Ioskeley Mono Regular font +async fn font_ioskeley_italic() -> impl IntoResponse { + ([(header::CONTENT_TYPE, "font/woff2")], IOSKELEY_MONO_ITALIC) +} + +const LANDING_HTML: &str = include_str!("./landing.html"); + +/// Landing page +async fn landing() -> Html<&'static str> { + Html(LANDING_HTML) +} + /// Health check response #[derive(Serialize)] struct HealthResponse { diff --git a/crates/weaver-index/src/service_identity.rs b/crates/weaver-index/src/service_identity.rs index 57f27b0..da0777a 100644 --- a/crates/weaver-index/src/service_identity.rs +++ b/crates/weaver-index/src/service_identity.rs @@ -102,10 +102,9 @@ impl ServiceIdentity { /// Encode the public key as a multikey string fn encode_public_key(signing_key: &SigningKey) -> String { let verifying_key = signing_key.verifying_key(); - let point = verifying_key.to_encoded_point(true); // compressed - let bytes = point.as_bytes(); + let bytes = verifying_key.to_sec1_bytes(); // 0xE7 is the multicodec for secp256k1-pub - multikey(0xE7, bytes) + multikey(0xE7, bytes.as_ref()) } /// Get the public key multibase string @@ -126,7 +125,6 @@ impl ServiceIdentity { "@context": [ "https://www.w3.org/ns/did/v1", "https://w3id.org/security/multikey/v1", - "https://w3id.org/security/suites/secp256k1-2019/v1" ], "id": did_str, "verificationMethod": [{ @@ -152,7 +150,6 @@ impl ServiceIdentity { "@context": [ "https://www.w3.org/ns/did/v1", "https://w3id.org/security/multikey/v1", - "https://w3id.org/security/suites/secp256k1-2019/v1" ], "id": did_str, "verificationMethod": [{ diff --git a/crates/weaver-index/src/sqlite.rs b/crates/weaver-index/src/sqlite.rs index 40c08fb..0107298 100644 --- a/crates/weaver-index/src/sqlite.rs +++ b/crates/weaver-index/src/sqlite.rs @@ -113,10 +113,7 @@ impl SqliteShard { } pub fn last_accessed(&self) -> Instant { - self.last_accessed - .lock() - .map(|t| *t) - .unwrap_or_else(|_| Instant::now()) + self.last_accessed.lock().map(|t| *t).expect("poisoned") } /// Execute a read operation on the shard diff --git a/docker-compose.yml b/docker-compose.yml index 936c65b..26ff005 100644 --- a/docker-compose.yml +++ b/docker-compose.yml @@ -22,8 +22,10 @@ services: TAP_BIND: ":2480" TAP_DISABLE_ACKS: "false" TAP_LOG_LEVEL: info - TAP_SIGNAL_COLLECTION: sh.tangled.actor.profile - TAP_COLLECTION_FILTERS: "sh.weaver.*,app.bsky.actor.profile,sh.tangled.*,pub.leaflet.*" + TAP_OUTBOX_PARALLELISM: 5 + #TAP_FULL_NETWORK: true + TAP_SIGNAL_COLLECTION: place.stream.chat.profile + TAP_COLLECTION_FILTERS: "sh.weaver.*,app.bsky.actor.profile,sh.tangled.*,pub.leaflet.*,net.anisota.*,place.stream.*" healthcheck: test: ["CMD", "wget", "-q", "--spider", "http://localhost:2480/health"] interval: 20s @@ -32,11 +34,14 @@ services: restart: unless-stopped # Weaver indexer - consumes from tap - indexer: - container_name: weaver-indexer + index: + container_name: weaver-index image: ${REGISTRY_HOST:-localhost}:5000/weaver-index:latest ports: - "3000:3000" + command: ["run"] + volumes: + - index_data:/app/data environment: RUST_LOG: info,weaver_index=debug,hyper_util::client::legacy::pool=info CLICKHOUSE_URL: ${CLICKHOUSE_URL} @@ -47,12 +52,12 @@ services: TAP_URL: ws://tap:2480/channel TAP_SEND_ACKS: "true" FIREHOSE_RELAY_URL: wss://bsky.network - INDEXER_COLLECTIONS: "sh.weaver.*,app.bsky.actor.profile,sh.tangled.*,pub.leaflet.*" + INDEXER_COLLECTIONS: "sh.weaver.*,app.bsky.actor.profile,sh.tangled.*,pub.leaflet.*,net.anisota.*,place.stream.*" depends_on: tap: condition: service_healthy healthcheck: - test: ["CMD", "wget", "-q", "--spider", "http://localhost:3000/xrpc/_health"] + test: ["CMD", "wget", "-q", "-O", "/dev/null", "http://localhost:3000/xrpc/_health"] interval: 20s timeout: 5s retries: 3 @@ -68,9 +73,6 @@ services: PORT: 8080 IP: 0.0.0.0 RUST_LOG: info - depends_on: - indexer: - condition: service_healthy healthcheck: test: ["CMD", "wget", "-q", "--spider", "http://localhost:8080/"] interval: 20s @@ -81,3 +83,4 @@ services: volumes: registry_data: tap_data: + index_data: diff --git a/weaver_notes/.obsidian/workspace.json b/weaver_notes/.obsidian/workspace.json index e1dd5d8..dd500bd 100644 --- a/weaver_notes/.obsidian/workspace.json +++ b/weaver_notes/.obsidian/workspace.json @@ -41,28 +41,16 @@ "state": { "type": "markdown", "state": { - "file": "Why I rewrote pdsls in Rust (tm).md", + "file": "Writing the AppView Last.md", "mode": "source", "source": false }, "icon": "lucide-file", - "title": "Why I rewrote pdsls in Rust (tm)" - } - }, - { - "id": "4b584137400d2323", - "type": "leaf", - "state": { - "type": "release-notes", - "state": { - "currentVersion": "1.10.6" - }, - "icon": "lucide-book-up", - "title": "Release Notes 1.10.6" + "title": "Writing the AppView Last" } } ], - "currentTab": 3 + "currentTab": 2 } ], "direction": "vertical" @@ -211,13 +199,15 @@ "bases:Create new base": false } }, - "active": "4b584137400d2323", + "active": "6029beecc3d03bce", "lastOpenFiles": [ + "diff_record.png", + "Why I rewrote pdsls in Rust (tm).md", + "Writing the AppView Last.md", "light_mode_excerpt.png", "notebook_entry_preview.png", "xkcd_345_excerpt.png", "bug notes.md", - "Why I rewrote pdsls in Rust (tm).md", "meta.png", "Pasted image 20251114125028.png", "invalid_record.png", @@ -226,7 +216,6 @@ "json_editor_with_errors.png", "pretty_editor.png", "Arch.md", - "Weaver - Long-form writing.md", - "weaver_photo_med.jpg" + "Weaver - Long-form writing.md" ] } \ No newline at end of file diff --git a/weaver_notes/Writing the AppView Last.md b/weaver_notes/Writing the AppView Last.md new file mode 100644 index 0000000..6a8d9a7 --- /dev/null +++ b/weaver_notes/Writing the AppView Last.md @@ -0,0 +1,143 @@ +If you've been to this site before, you maybe noticed it loaded a fair bit more quickly this time. That's not really because the web server creating this HTML got a whole lot better. It did require some refactoring, but it was mostly in the vein of taking some code and adding new code that did the same thing gated behind a cargo feature. This did, however, have the side effect of, in the final binary, replacing functions that are literally hundreds of lines, that in turn call functions that may also be hundreds of lines, making several cascading network requests, with functions that look like this, which make by and large a single network request and return exactly what is required. + +```rust +#[cfg(feature = "use-index")] +fn fetch_entry_view( + &self, + entry_ref: &StrongRef<'_>, +) -> impl Future, WeaverError>> +where + Self: Sized, +{ + async move { + use weaver_api::sh_weaver::notebook::get_entry::GetEntry; + + let resp = self + .send(GetEntry::new().uri(entry_ref.uri.clone()).build()) + .await + .map_err(|e| AgentError::from(ClientError::from(e)))?; + + let output = resp.into_output().map_err(|e| { + AgentError::xrpc(e.into)) + })?; + + Ok(output.value.into_static()) + } +} +``` + +Of course the reason is that I finally got round to building the Weaver AppView. I'm going to be calling mine the Index, because Weaver is about writing and I think "AppView" as a term kind of sucks and "index" is much more elegant, on top of being a good descriptor of what the big backend service now powering Weaver does. ![[at://did:plc:ragtjsm2j2vknwkz3zp4oxrd/app.bsky.feed.post/3lyucxfxq622w]] +For the uninitiated, because I expect at least some people reading this aren't big into AT Protocol development, an AppView is an instance of the kind of big backend service that Bluesky PBLLC runs which powers essentially every Bluesky client, with a few notable exceptions, such as [Red Dwarf](https://reddwarf.app/), and (partially, eventually more completely) [Blacksky](https://blacksky.community/). It listens to the [Firehose](https://bsky.network/) [event stream](https://atproto.com/specs/event-stream) from the main Bluesky Relay and analyzes the data which comes through that pertains to Bluesky, producing your timeline feeds, figuring out who follows you, who you block and who blocks you (and filtering them out of your view of the app), how many people liked your last post, and so on. Because the records in your PDS (and those of all the other people on Bluesky) need context and relationship and so on to give them meaning, and then that context can be passed along to you without your app having to go collect it all. ![[at://did:plc:uu5axsmbm2or2dngy4gwchec/app.bsky.feed.post/3lsc2tzfsys2f]] +It's a very normal backend with some weird constraints because of the protocol, and in it's practice the thing that separates the day-to-day Bluesky experience from the Mastodon experience the most. It's also by far the most centralising force in the network, because it also does moderation, and because it's quite expensive to run. A full index of all Bluesky activity takes a lot of storage (futur's Zeppelin experiment detailed above took about 16 terabytes of storage using PostgreSQL for the database and cost $200/month to run), and then it takes that much more computing power to calculate all the relationships between the data on the fly as new events come in and then serve personalized versions to everyone that uses it. + +It's not the only AppView out there, most atproto apps have something like this. Tangled, Streamplace, Leaflet, and so on all have substantial backends. Some (like Tangled) actually combine the front end you interact with and the AppView into a single service. But in general these are big, complicated persistent services you have to backfill from existing data to bootstrap, and they really strongly shape your app, whether they're literally part of the same executable or hosted on the same server or not. And when I started building Weaver in earnest, not only did I still have a few big unanswered questions about how I wanted Weaver to work, how it needed to work, I also didn't want to fundamentally tie it to some big server, create this centralising force. I wanted it to be possible for someone else to run it without being dependent on me personally, ideally possible even if all they had access to was a static site host like GitHub Pages or a browser runtime platform like Cloudflare Workers, so long as someone somewhere was running a couple of generic services. I wanted to be able to distribute the fullstack server version as basically just an executable in a directory of files with no other dependencies, which could easily be run in any container hosting environment with zero persistent storage required. Hell, you could technically serve it as a blob or series of blobs from your PDS with the right entry point if I did my job right. + +I succeeded. + +Well, I don't know if you can serve `weaver-app` purely via `com.atproto.sync.getBlob` request, but it doesn't need much. +## Constellation +![[at://did:plc:ttdrpj45ibqunmfhdsb4zdwq/app.bsky.feed.post/3m6pckslkt222]] Ana's leaflet does a good job of explaining more or less how Weaver worked up until now. It used direct requests to personal data servers (mostly mine) as well as many calls to [Constellation](https://constellation.microcosm.blue/) and [Slingshot](https://slingshot.microcosm.blue/), and some even to [UFOs](https://ufos.microcosm.blue/), plus a couple of judicious calls to the Bluesky AppView for profiles and post embeds. ![[at://did:plc:hdhoaan3xa3jiuq4fg4mefid/app.bsky.feed.post/3m5jzclsvpc2c]] +The three things linked above are generic services that provide back-links, a record cache, and a running feed of the most recent instances of all lexicons on the network, respectively. That's more than enough to build an app with, though it's not always easy. For some things it can be pretty straightforward. Constellation can tell you what notebooks an entry is in. It can tell you which edit history records are related to this notebook entry. For single-layer relationships it's straightforward. However you then have to also fetch the records individually, because it doesn't provide you the records, just the URIs you need to find them. Slingshot doesn't currently have an endpoint that will batch fetch a list of URIs for you. And the PDS only has endpoints like [`com.atproto.repo.listRecords`](https://docs.bsky.app/docs/api/com-atproto-repo-list-records), which gives you a paginated list of all records of a specific type, but doesn't let you narrow that down easily, so you have to page through until you find what you wanted. + +This wouldn't be too bad if I was fine with almost everything after the hostname in my web URLs being gobbledegook record keys, but I wanted people to be able to link within a notebook like they normally would if they were linking within an Obsidian Vault, by name or by path, something human-readable. So some queries became the good old N+1 requests, because I had to list a lot of records and fetch them until I could find the one that matched. Or worse still, particularly once I introduce collaboration and draft syncing to the editor. Loading a draft of an entry with a lot of edit history could take 100 or more requests, to check permissions, find all the edit records, figure out which ones mattered, publish the collaboration session record, check for collaborators, and so on. It was pretty slow going, particularly when one could not pre-fetch and cache and generate everything server-side on a real CPU rather than in a browser after downloading a nice chunk of WebAssembly code. My profile page [alpha.weaver.sh/nonbinary.computer](https://alpha.weaver.sh/nonbinary.computer) often took quite some time to load due to a frustrating quirk of Dioxus, the Rust web framework I've used for the front-end, which prevented server-side rendering from waiting until everything important had been fetched to render the complete page on that specific route, forcing me to load it client-side. + +Some stuff is just complicated to graph out, to find and pull all the relevant data together in order, and some connections aren't the kinds of things you can graph generically. For example, in order to work without any sort of service that has access to indefinite authenticated sessions of more than one person at once, Weaver handles collaborative writing and publishing by having each collaborator write to their own repository and publish there, and then, when the published version is requested, figuring out which version of an entry or notebook is most up-to-date, and displaying that one. It matches by record key across more than one repository, determined at request time by the state of multiple other records in those users' repositories. + +# Shape of Data +All of that being said, this was still the correct route, particularly for me. Because not only does this provide a powerful fallback mode, built-in protection against me going AWOL, it was critical in the design process of the index. My friend Ollie, when talking about database and API design, always says that, regardless of the specific technology you use, you need to structure your data based on how you need to query into it. Whatever interface you put in front of it, be it GraphQL, SQL, gRPC, XRPC, server functions, AJAX, literally any way that you can have the part of your app that people interact with pull the specific data they want from where it's stored, how well that performs, how many cycles your server or client spends collecting it, sorting it, or waiting on it, how much memory it takes, how much bandwidth it takes, depends on how that data is shaped, and you, when you are designing your app and all the services that go into it, get to choose that shape. + +Bluesky developers have said that hydrating blocks, mutes, and labels and applying the appropriate ones to the feed content based on the preferences of the user takes quite a bit of compute at scale, and that even the seemingly simple [Following feed](https://jazco.dev/2025/02/19/imperfection/), which is mostly a reverse-chronological feed of posts by people you follow explicitly (plus a few simple rules), is remarkably resource-intensive to produce for them. The extremely clever [string interning](https://jazco.dev/2025/09/26/interning/) and [bitmap tricks](https://jazco.dev/2024/04/20/roaring-bitmaps/) implemented by a brilliant engineer during their time at Bluesky are all oriented toward figuring out the most efficient way to structure the data to make the desired query emerge naturally from it. ![Roaring Bitmaps Diagram from the Original Publication at https://arxiv.org/pdf/1709.07821](https://jazco.dev/public/images/2025-09-26/roaring_bitmaps_diagram.png) + +It's intuitive that this matters a lot when you use something like RocksDB, or FoundationDB, or Redis, which are fundamentally key-value stores. What your key contains there determines almost everything about how easy it is to find and manipulate the values you want. Fig and I have had some struggles getting a backup of their Constellation service running in real-time and keeping up with Jetstream on my home server, because the only storage on said home server with enough free space for Constellation's full index is a ZFS pool that's primarily hard-drive based, and the way the Constellation RocksDB backend storage is structured makes processing delete events extremely expensive on a hard drive where seek times are nontrivial. On a Pi 4 with an SSD, it runs just fine. ![[at://did:plc:44ybard66vv44zksje25o7dz/app.bsky.feed.post/3m7e3hnyh5c2u]] +But it's a problem for every database. Custom feed builder service [graze.social](https://graze.social/) ran into difficulties with Postgres early on in their development, as they rapidly gained popularity. They ended up using the same database I did, Clickhouse, for many of the same reasons. ![[at://did:plc:i6y3jdklpvkjvynvsrnqfdoq/app.bsky.feed.post/3m7ecmqcwys23]] +And while thankfully I don't think that a platform oriented around long-form written content will ever have the kinds of following timeline graph write amplification problems Bluesky has dealt with, even if it becomes successful beyond my wildest dreams, there are definitely going to be areas where latency matters a ton and the workload is very write-heavy, like real-time collaboration, particularly if a large number of people work on a document simultaneously, even while the vast majority of requests will primarily be reading data out. + +One reason why the edit records for Weaver have three link fields (and may get more!), even though it may seem a bit redundant, is precisely because those links make it easy to graph the relationships between them, to trace a tree of edits backward to the root, while also allowing direct access and a direct relationship to the root snapshot and the thing it's associated with. + +In contrast, notebook entry records lack links to other parts of the notebook in and of themselves because calculating them would be challenging, and updating one entry would require not just updating the entry itself and notebook it's in, but also neighbouring entries in said notebook. With the shape of collaborative publishing in Weaver, that would result in up to 4 writes to the PDS when you publish an entry, in addition to any blob uploads. And trying to link the other way in edit history (root to edit head) is similarly challenging. + +I anticipated some of these. but others emerged only because I ran into them while building the web app. I've had to manually fix up records more than once because I made breaking changes to my lexicons after discovering I really wanted X piece of metadata or cross-linkage. If I'd built the index first or alongside—particularly if the index remained a separate service from the web app as I intended it to, to keep the web app simple—it would likely have constrained my choices and potentially cut off certain solutions, due to the time it takes to dump the database and re-run backfill even at a very small scale. Building a big chunk of the front end first told me exactly what the index needed to provide easy access to. +# ClickHAUS +So what does Weaver's index look like? Well it starts with either the firehose or the new Tap sync tool. The index ingests from either over a WebSocket connection, does a bit of processing (less is required when ingesting from Tap, and that's currently what I've deployed) and then dumps them in the Clickhouse database. I chose it as the primary index database on recommendation from a friend, and after doing a lot of reading. It fits atproto data well, as Graze found. Because it isolates concurrent inserts and selects so that you can just dump data in, while it cleans things up asynchronously after, it does wonderfully when you have a single major input point or a set of them to dump into that fans out, which you can then transform and then read from. + +I will not claim that the tables you can find in the weaver repository are especially **good** database design overall, but they work, and we'll see how they scale. This is one of three main input tables. One for record writes, one for identity events, and one for account events. +```SQL +CREATE TABLE IF NOT EXISTS raw_records ( + did String, + collection LowCardinality(String), + rkey String, + cid String, + -- Repository revision (TID) + rev String, + record JSON, + -- Operation: 'create', 'update', 'delete', 'cache' (fetched on-demand) + operation LowCardinality(String), + -- Firehose sequence number + seq UInt64, + -- Event timestamp from firehose + event_time DateTime64(3), + -- When the database indexed this record + indexed_at DateTime64(3) DEFAULT now64(3), + -- Validation state: 'unchecked', 'valid', 'invalid_rev', 'invalid_gap', 'invalid_account' + validation_state LowCardinality(String) DEFAULT 'unchecked', + -- Whether this came from live firehose (true) or backfill (false) + is_live Bool DEFAULT true, + -- Materialized AT URI for convenience + uri String MATERIALIZED concat('at://', did, '/', collection, '/', rkey), + -- Projection for fast delete lookups by (did, cid) + PROJECTION by_did_cid ( + SELECT * ORDER BY (did, cid) + ) +) +ENGINE = MergeTree() +ORDER BY (collection, did, rkey, event_time, indexed_at); +``` +From here we fan out into a cascading series of materialized views and other specialised tables. These break out the different record types, calculate metadata, and pull critical fields out of the record JSON for easier querying. Clickhouse's wild-ass compression means we're not too badly off replicating data on disk this way. Seriously, their JSON type ends up being the same size as a CBOR BLOB on disk in my testing, though it *does* have some quirks, as I discovered when I read back Datetime fields and got...not the format I put in. Thankfully there's a config setting for that. ![Clickhouse animation showing parallel inserts into a source table and a transformation query into a materialized view](https://clickhouse.com/docs/assets/images/incremental_materialized_view-1158726e31b08dc9808d96671239467f.gif)We also build out the list of who contributed to a published entry and determine the canonical record for it, so that fetching a fully hydrated entry with all contributor profiles only takes a couple of `SELECT` queries that themselves avoid performing extensive table scans due to reasonable choices of `ORDER BY` fields in the denormalized tables they query. And then I can do quirky things like power a profile fetch endpoint that will provide either a Weaver or a Bluesky profile, while also unifying fields so that we can easily get at the critical stuff in common. This is a relatively expensive calculation, but people thankfully don't edit their profiles that often, and this is why we don't keep the stats in the same table. + +However, this is ***also*** why Clickhouse will not be the only database used in the index. + +# Why is it always SQLite? +When it comes to things like real-time collaboration sessions with almost keystroke-level cursor tracking and rapid per-user writeback/readback, where latency matters and we can't wait around for the merge cycle to produce the right state, *don't* work well in Clickhouse. But they sure do in SQLite! + +If there's one thing the AT Protocol developer community loves more than base32-encoded timestamps it's SQLite. In fairness, we're in good company, the whole world loves SQLite. It's a good fucking embedded database and very hard to beat for write or read performance so long as you're not trying to hit it massively concurrently. Of course, that concurrency limitation does end up mattering as you scale. And here we take a cue from the Typescript PDS implementation and discover the magic of buying, well, a lot more than two of them, and of using the filesystem like a hierarchical key-value store. + + + +This part of the data backend is still *very* much a work-in-progress and isn't used yet in the deployed version, but I did want to discuss the architecture. Unlike the PDS, we don't divide primarily by DID, instead we shard by resource, designated by collection and record key. + +```rust +pub struct ShardKey { + pub collection: SmolStr, + pub rkey: SmolStr, +} + +impl ShardKey { +... + /// Directory path: {base}/{hash(collection,rkey)[0..2]}/{rkey}/ + fn dir_path(&self, base: &Path) -> PathBuf { + base.join(self.hash_prefix()).join(self.rkey.as_str()) + } +... +} +/// A single SQLite shard for a resource +pub struct SqliteShard { + conn: Mutex, + path: PathBuf, + last_accessed: Mutex, +} +/// Routes resources to their SQLite shards +pub struct ShardRouter { + base_path: PathBuf, + shards: DashMap>, +} +``` + +The hash of the shard key plus the record key gives us the directory where we put the database file for this resource. Ultimately this may be moved out of the main index off onto something more comparable to the Tangled knot server or Streamplace nodes, depending on what constraints we run into if things go exceptionally well, but for now it lives as part of the index. In there we can tee off raw events from the incoming firehose and then transform them into the correct forms in memory, optionally persisted to disk, alongside Clickhouse and probably, for the specific things we want it for with a local scope, faster. + +And direct communication, either by using something like oatproxy to swap the auth relationships around a bit (currently the index is accessed via service proxying through the PDS when authenticated) or via an iroh channel from the client, gets stuff there without having to wait for the relay to pick it up and fan it out to us, which then means that users can read their own writes very effectively. The handler hits the relevant SQLite shard if present and Clickhouse in parallel, merging the data to provide the most up-to-date form. For real-time collaboration this is critical. The current `iroh-gossip` implementation works well and requires only a generic iroh relay, but it runs into the problem every gossip protocol runs into the more concurrent users you have. + +The exact method of authentication of that side-channel is by far the largest remaining unanswered question about Weaver right now, aside from "Will anyone (else) use it?" + +If people have ideas, I'm all ears. + +I hope you found this interesting. I enjoyed writing it out. \ No newline at end of file diff --git a/weaver_notes/diff_record.png b/weaver_notes/diff_record.png new file mode 100644 index 0000000000000000000000000000000000000000..ffd37adcb71a868370798bdf35afa8a82b5b8237 GIT binary patch literal 125656 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

dPM&%{FIX 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 WG*~&=Tb+S{fx*+&&t;ucLK6U3hbnsj literal 0 HcmV?d00001