Viska — Source → Panel → Page data map

Every external source: what data it pulls, on what cadence, and exactly which front-end panels and pages it feeds. Two views — by source (the fan-out) and by page (the composition). Source code traced from ViskaFront/src; freshness from the live DB.
Author: ViskaDB · As of: 2026-06-30 · router src/App.tsx · nav src/shell/sectionMeta.ts · all freshness live-verified
IBKR Flex CBI FX Conviction News/Research ISK ANAV Benchmark Allocation Sector flows Ops health Mímir worker
shown live + rendered empty-pending live-only, renders "—" until populated fallback authored static until table fills fixture bundled demo data on miss off unrouted / placeholder

A · By source — what is pulled, when, and where it lands

📈 Interactive Brokers (Flex)

n8n pull · 13:30 UTC · Mon–Sat · T+1 settle
IBKR Flex Web Service (acct U22131377) → n8n → flex-apply-svc (Railway) → trading.* → public projections
Data pulled
Positions (29)NAV cash/stock/totalCost basis · market valueMTD / YTD per holdingTrades (423)Dividends (81)Cash flows · feesFX balancesRound-trips (75)Accruals · TWR
Feeds
Forsíða (3 highlight cards) · Stöður › Yfirlit (Hero panels 1,3,4,5,7,8) · Stöður › Listi (PositionsTable) · Stöður › Félög (CompanyCards) · Þemu (ThemeExplorer) · FlexSyncPanel chrome

🧭 Conviction engine (broker research)

daily · report_date advances
Broker docs → snippets → LLM scoring (n8n) → conviction_dashboard_* barrier views
Data pulled
Broker theme calls (177)Theme net-signal (69)Coverage · contestedCorroborationOff-radar clusters (67)narrative_en · what_would_change
Feeds
Greining › Conviction (heatmap + leaderboard) · /conviction/theme · /conviction/broker · /conviction/history · /conviction/off-radar · Forsíða (Conviction card)

📰 News & research feed

continuous → daily synthesis
News/research sources → n8n ingestion + sentiment → feed_items / research_artifacts / research_feed
Data pulled
News items (15,768)title · key_take · stanceSentiment + tickers/themesDaily big-picture (17)
Feeds
Forsíða → ResearchFeed panel. Note: only the 155-row research_feed digest is surfaced; the 15.7k full sentiment feed is dark.

💱 FX — Central Bank of Iceland

daily · in-DB pg_cron
CBI keyless XML → pg_cron job → fund.fx_rates
Data pulled
USD/ISK ratecaptured_day · source
Feeds
Stöður › Yfirlit → Hero HeaderBlock (ISK/USD money formatting + toggle). Cross-cuts every money figure.

🏦 ISK fund accounting (ANAV)

manual · ad-hoc · last 2026-05-29
Operator / treasurer manual entry → fund.fund_isk_nav · fund_isk_nav_history · fund_share_ledger
Data pulled
NAV per share (ISK)AUM ISK · sharesANAV history (15)Share ledger / cap-table (12)
Feeds
Stöður › Hlutabréf (NAV/ANAV trend + cap-table) · Forsíða (Hlutabréf card) · Stöður › Yfirlit (Hero ISK headline)

📊 Benchmark / returns

computed · periodic · basis 06-26
FRED + CBI + ANAV → benchmark compute → benchmark_basis · benchmark_metrics · benchmark_series
Data pulled
MTD/QTD/YTD/inception3 bases (isk_anav / fx_clean / usd_book)Alpha · emphasis
Feeds
Stöður › Yfirlit → Hero ReturnsBlock (basis toggle) · Forsíða (Frammistaða card)

🧩 Allocation & themes

derived per IBKR pull · history writer "gap F" unbuilt
positions + theme map → rollup → allocation_history · fund_themes · positions_current.fine_theme
Data pulled
Theme allocation / time (26)theme · sub_group per holdingfine_theme (29/29, FE-dark)Theme registry (8)
Feeds
Þemu (ThemeExplorer + AllocationChart) · Stöður › Yfirlit (Hero ThemeAllocationBar) · Forsíða (Þemu card)

🌊 Sector flows

feed-driven
ETF/sector momentum → sector_flows (sentiment tables stale 04-10)
Data pulled
5d/1m/3m/6m/1y flowprice/flow quadrantstreaks · notable shifts
Feeds
Greining › Flæði (/intel) — all 5 panels from this one relation

🩺 Ops / data health

heartbeat · continuous
flex_sync_status · component_health · viska_daily_health_computed
Data pulled
last_run · next_run · statuslast_as_of freshnesscomponent health (7)
Feeds
All pages → sidebar FlexSyncPanel + DataSourceBanner (freshness/cadence indicators)

💬 Mímir (Face agent)

live request/response (HTTP)
FE → face-agent.viska.gg shield Worker → n8n agent (NOT Supabase)
Data pulled
Chat Q&Agrounding digest (positions+cash+nav)
Feeds
Stöður → "Ask Mímir" FaceAgentPanel (mounted on the Stöður layout, present across its subpages). Falls back to mock client when URL unset.

B · By page — each route, its panels, and the source behind each

/  Forsíða — landing digestrouted
PanelSourceRelation · columnsState
DataSourceBannerpositions_current meta + flex_sync_statusfallback
Highlight · Frammistaðabenchmark_series + fund.fund_isk_nav + positions_currentempty-pending
Highlight · Þemu (top-3)positions_current.{market_value,sub_group,theme}fallback
Highlight · Stærstu stöðurpositions_current.{ticker,market_value}fallback
Highlight · Hlutabréffund_isk_nav_history.anav + fund_share_ledger.price_per_shareempty-pending
Highlight · Conviction (#1)conviction_dashboard_theme_intel.{theme,net_signal}fixture
Highlight · Félög (best P/L)positions_current.{ticker,market_value,cost_basis}fallback
ResearchFeedresearch_feed.{title,key_take,stance,date}empty-pending
/stodur  Yfirlit — HeroDashboard (8 panels)routed · default
PanelSourceRelation · columnsState
1 · HeaderBlock (NAV / AUM)nav_latest + fund.fund_isk_nav + fund.fx_ratesfallback / ISK pending
2 · ReturnsBlock (+ basis toggle)benchmark_series · benchmark_basis · benchmark_metricsempty-pending
3 · ThemeAllocationBarpositions_current.{market_value,fine_theme→sub_group→theme}+cash+navfallback
4 · StatCards (Realized/Unrealized/Lausafé)pnl_split.realized_usd + positions_current + cash_currentrealized pending
5 · TopPositionsBlock (top-10)positions_current.{ticker,market_value,cost_basis,theme,sub_group}fallback
6 · MonthlyPnlBlock (combo chart)monthly_pnl.{month,realized,cumulative}empty-pending
7 · Winners/Losers + recent tradespositions_current (derived) + trades.{side,ticker,qty,price,trade_date}trades pending
8 · CashByCurrencycash_current.{currency,usd_amount} + nav (ISK fixed fallback)fallback
/stodur/listi · /felog · /hlutabref  Stöður subpagesrouted
PanelSourceRelation · columnsState
Listi · PositionsTablepositions_current.{ticker,name,shares,cost_basis,market_value,theme,sub_group,march_mtd,ytd_mtm}fallback
Félög · CompanyCardspositions_current + holdings_profiles.{description,moat}fallback (real moat unused)
Hlutabréf · NAV/ANAV trendfund_isk_nav_history.{nav_per_share,anav_per_share,shares,net_assets_isk}empty-pending
Hlutabréf · Hlutafjársaga (cap-table)fund_share_ledger.{event_label,event_date,shares_delta,...}empty-pending
Ask Mímir (layout-wide)face-agent.viska.gg (HTTP) · grounding = positions+cash+navlive (worker)
/themu  Þemu — theme allocationrouted
PanelSourceRelation · columnsState
ThemeExplorerpositions_current + nav_latestfallback
AllocationChart (stacked area)allocation_history (d, 9 themes, total)empty-pending (gap F writer unbuilt)
/conviction  Greining › Conviction (+ theme / broker / history / off-radar)routed
PanelSourceRelation · columnsState
Heatmap + leaderboardconviction_dashboard_broker_calls + _theme_intelfixture
/theme/:theme — stats + brokers_theme_intel + _corroboration + _broker_callsfixture
/broker/:broker — calls by theme_broker_calls (FE-aggregated)fixture
/history — net-signal matrix + ledger_theme_intel (all dates) + _broker_callsfixture
/off-radar — OffRadarCards_off_radar.{cluster_id,label,summary_en,prevalence,novelty,score}fixture
/intel  Greining › Flæði — sector flow monitorrouted
PanelSourceRelation · columnsState
FiveDayBars · FlowVsPrice · HorizonTable · WeeklyStreaks · NotableShiftssector_flows (* — quadrant_price/flow/tone, d5/m1/m3/m6/y1, streak)live-or-empty
/mimir  Chat — placeholderrouted · "soon"
PanelSourceRelation · columnsState
"Coming in Phase 3" stub— none —off (Phase-3 stub)
chrome  Cross-cutting (every authed page)all routes
PanelSourceRelation · columnsState
Sidebar FlexSyncPanelflex_sync_status + nav_latest.as_of + fund.market_quotes.captured_atshown
AdminBar / authsupabase.auth (session, not a relation)shown

Built but unrouted — has a data path, no live page

Live wiring drift worth flagging (ViskaDB / ViskaFront lanes)

Page/panel tree traced from ViskaFront/src (App.tsx · shell · pages · hooks · streams). Source cadence + freshness live-verified against $VISKA_DB_URL 2026-06-30. Companion: the full data-architecture knowledge graph (engineering vault) and the source-feed map.