diff --git a/core/archipelago/src/api/rpc/content.rs b/core/archipelago/src/api/rpc/content.rs index 3932712d..5c314927 100644 --- a/core/archipelago/src/api/rpc/content.rs +++ b/core/archipelago/src/api/rpc/content.rs @@ -244,7 +244,7 @@ impl RpcHandler { .context("Failed to connect to peer")?; // Record which transport actually reached the peer (B14) so the UI // reflects FIPS vs Tor truthfully instead of always showing Tor/none. - let _ = crate::federation::storage::record_peer_transport( + let _ = crate::federation::record_peer_transport( &self.config.data_dir, None, Some(onion), @@ -311,7 +311,7 @@ impl RpcHandler { .await .context("Failed to connect to peer")?; // Record which transport actually reached the peer (B14). - let _ = crate::federation::storage::record_peer_transport( + let _ = crate::federation::record_peer_transport( &self.config.data_dir, None, Some(onion), @@ -380,7 +380,7 @@ impl RpcHandler { .await .context("Failed to connect to peer")?; // Record which transport actually reached the peer (B14). - let _ = crate::federation::storage::record_peer_transport( + let _ = crate::federation::record_peer_transport( &self.config.data_dir, None, Some(onion), @@ -451,7 +451,7 @@ impl RpcHandler { .await .context("Failed to connect to peer for preview")?; // Record which transport actually reached the peer (B14). - let _ = crate::federation::storage::record_peer_transport( + let _ = crate::federation::record_peer_transport( &self.config.data_dir, None, Some(onion), diff --git a/tests/production-quality/TRACKER.md b/tests/production-quality/TRACKER.md index 174c93c5..60ccf199 100644 --- a/tests/production-quality/TRACKER.md +++ b/tests/production-quality/TRACKER.md @@ -108,6 +108,9 @@ We previously broadcast bitcoin block headers over mesh to archipelago nodes but ### B14b — FIPS reachability: many peers fall back to Tor — TODO (priority, deeper) Live (2026-06-15) federation sync last_transport on .116/.198: ~4 peers fips, ~6 tor, ~5 none. So beyond the recording fix (B14), FIPS genuinely doesn't reach many federated peers (they use Tor). Investigate WHY: is fips_npub known for those peers? are they FIPS-online? is the shared anchor connecting them? (cf project_fips_integration, project_tor_node_to_node_works). This is the real "Tor not FIPS" depth. +### B21 — Show Tor/FIPS transport pill on cloud browse — ROOT-CAUSED (pairs with B14) +Tag whether the peer connection is Tor or FIPS and surface it as a small pill on the cloud browse screens / connection loader. Data source: federation node last_transport (now recorded by B14) exposed via federation.list-nodes; frontend renders a pill (FIPS=fast/green, Tor=slower) on PeerFiles.vue / Cloud peer view + the connection loader. Frontend-only-ish. FINDINGS: PeerFiles.vue:46 loader HARDCODES 'Connecting via Tor...' even when FIPS used (bug). Frontend types already have last_transport ('fips'|'tor'|'mesh'|'lan') federation/types.ts:31; NodeList.vue:167 already renders a transport indicator. PLAN: have content.browse-peer RETURN the transport used (B14 already computes it) → frontend shows a pill (FIPS green / Tor amber) on PeerFiles header + fix the loader text to reflect actual/attempted transport. Small backend (add transport to browse response) + frontend pill. + ### B8 — netbird app doesn't work — TODO (LOW / much later) (RETRACTED: CryptPad placeholder-icon — user says cryptpad is fine.)