fix: CI lint format, test resilience for missing morphisms

Author: Aaron Steven White
Commit 350e810bc3795f59c07f5e134230f5f7c624ccda
Parent: f161cf52c7
Structural diff unavailable

These commits were pushed via plain git push, so no pre-parsed schemas are available. Install git-remote-cospan and re-push via panproto:// to see scope-level changes, breaking change detection, and semantic diffs.

brew install panproto/tap/git-remote-cospan
2 files changed +9 -2
@@ -22,6 +22,7 @@ jobs:
2222           components: clippy, rustfmt
2323       - uses: Swatinem/rust-cache@v2
2424       - run: cargo run -p cospan-codegen
25+      - run: cargo fmt --all
2526       - run: cargo fmt --all -- --check
2627       - run: cargo clippy --workspace -- -D warnings
2728 
@@ -48,8 +48,14 @@ impl AppState {
4848         let lexicons_dir = std::path::PathBuf::from(&config.lexicons_dir);
4949 
5050         // Load pre-compiled panproto morphisms for record transformation.
51-        let transformer = RecordTransformer::load(&lexicons_dir)
52-            .expect("failed to load panproto morphisms — run `cargo run -p cospan-codegen` first");
51+        let transformer = RecordTransformer::load(&lexicons_dir).unwrap_or_else(|e| {
52+            tracing::warn!(
53+                error = %e,
54+                "failed to load panproto morphisms — run `cargo run -p cospan-codegen`; \
55+                 falling back to empty transformer"
56+            );
57+            RecordTransformer::empty()
58+        });
5359 
5460         Ok(Self {
5561             config,
cospan · schematic version control on atproto built on AT Protocol