petralcrude desk
Connected
…Click to customize the tape
Changelog
v1.74
v1.74Learn Graph: Legible Layout and a Renderer That Idles2026-09-15
- New geometry: Crude markets at the centre, the other ten domains on an equal-arc ellipse, each domain's topics in a full ring - no two topic nodes closer than a line of text, enforced by a unit test on the layout module
- Semantic zoom: domain names at overview, a cluster's topic names bloom on hover, and every name shows once zoomed past 1.8x; hub codes appear inside the discs when the disc is large enough to hold them
- Cross-domain links light up in the domain's colour on hover or selection, with the far ends named in their own domain; unread topics draw as rings and read ones as filled discs, so the map is also a progress map
- The inspector docks to the right edge (a bottom sheet under 720px) and the camera shifts the focused cluster into the uncovered area instead of the card covering what it describes
- Real map controls: wheel zoom around the cursor, drag to pan, pinch on touch, Escape steps back one level, click on empty space closes the card
- Renderer rewritten without shadowBlur or per-frame React state: 60fps while anything is lit and zero frames when the map is untouched, glow via pre-rendered sprites, springs frame-rate independent
- A screen-reader index of every domain and topic as real links behind the canvas, and four Playwright tests for the dock, inspector, Read topic and Escape paths
- Follow-up: the flow particles along lit edges are gone (they read as a pulse, and were the one thing keeping the loop running while you looked), and the compact dock's active label slides open instead of popping in and shifting the dock
v1.73Learn Knowledge Graph: Living Market Constellation2026-09-15
- Re-engineered the Petral Learn graph into a continuous 60fps living constellation with ambient trading grid and soft cursor flashlight aurora
- Dynamic camera matrix with smooth gliding interpolation for effortless cluster drill-down and global overview
- Instant physical pointer responsiveness with 0.88x tactile compression on pointer-down and magnetic hover swell
- Active energy trade flows visualized with continuous particle pulses streaming across connected crude contracts
- Glassmorphic bottom HUD dock featuring instant domain cluster jumps and visual breadcrumb navigation
- Interactive Market Inspector Card with topic metadata, estimated read time, summary, and cross-market flow links
v1.72Bank Research Desk Polish & Gemma 4 Migration2026-09-15
- Switched default AI prompt model across the site to Gemma 4 31B (gemma-4-31b-it) with Gemma 4 26B MoE (gemma-4-26b-a4b-it) automatic failover
- Configured thinking level to minimal for Gemma 4 models to eliminate thinkingBudget HTTP 400 parameter errors
- Removed AI disclosure warning sections, cautionary bullet lists, and note clutter from the bank research desk and modal briefs
- Added top Desk Price Target Overview Strip displaying active bank targets with currency prefixes and explicit time horizons
- Fleshed out research cards with high-contrast price target boxes ($70/bbl) and explicit time horizons (Within 1 year, 1 month)
- Added price target filter toggle allowing quick filtering for publications containing extracted price targets
v1.71Learn Knowledge Graph Overhaul & UI Fixes2026-09-15
- Full-bleed immersive graph space removing outer card borders, header text, and right inspector panel
- Deterministic mathematical topology replacing physics simulation for a sturdy, rigid, wobble-free experience
- Eliminated hover flashing and node dimming; all nodes remain crisp and readable
- Interactive click popover with category badges, reading time estimates, concise summaries, and direct topic access
- Fixed header tooltip positioning preventing downward overflow clipping, and synchronized tab navigation
v1.70Direct Bank-Site Research Discovery2026-09-15
- Replaced Google News RSS discovery with direct bank research pages and publisher XML sitemaps, followed by publication-page title and date verification
- Publisher-specific metadata supports Citi page data, Morgan Stanley publication tags and article structured data; sitemap modification dates never become publication dates
- Bounded requests, validated redirects, canonical URL deduplication and a separate cache namespace keep direct discovery isolated from the old feed index
- The research panel exposes incomplete publisher coverage and blocked pages instead of hiding discovery failures
v1.69Petral Learn UI, Knowledge Graph & Curriculum Polish2026-09-15
- Top bar aligned with brand lockup, header-variant tab bar, desk user account button, Ctrl+K command palette, and connectivity indicator
- Interactive knowledge graph redesigned with clean fixed canvas (no panning, zooming, or orbital wobble), subtle node glow, radiant edge focus, and comprehensive node inspector
- Removed floating disclaimer footer to allow clean, uninterrupted page scrolling
- De-AI copy across all views, adopting authentic energy trading desk terminology and clean typography
- Tracks curriculum organized into structured stacks with study desk progress, immediate resume links, and faceted filtering
v1.68Bank Research Desk Review2026-09-15
- Research is ordered newest first with undated items last, bank/topic/format filters, clear-filter recovery and accurate represented-bank counts
- Briefs surface the publication date and original source at the top, distinguish extracted bank views from observations, and highlight missing forecasts and risks with a review checklist
- Research refresh clears the client cache, narrow headers wrap, and search retains its keyboard focus indicator
v1.67Public Investment-Bank Research2026-09-15
- New Bank Research tab beside the energy wire, with searchable public outlooks, research notes, reports and podcasts from Goldman Sachs, J.P. Morgan, Morgan Stanley, UBS, Citi and ING
- Opening a publication produces a cached desk brief with the bank's thesis, oil-market stance, key claims, explicit forecasts, drivers, risks and a verification link to the source
- Gemini paraphrases public source text when configured; a deterministic parser still extracts stance, themes, forecast figures and risks without a key, with parser mode and estimate provenance always visible
- Licensing boundary is explicit: Petral stores structured synthesis rather than article bodies, excludes private client notes, and labels bank views as opinions and forecasts rather than observed market data
v1.66Calendar Navigation, Agenda and Date Integrity2026-09-10
- Responsive month grid with a selected-day detail panel, explicit UTC times, category filtering, source links and visible schedule caveats
- Keyboard day/week/month navigation, meaningful date labels, adjacent-month events and selected dates that follow month navigation
- Agenda now advances after each event, covers the complete selected horizon, and opens the corresponding day from each event
- Fixed month-end date arithmetic that skipped releases and index-roll status appearing a day early; calendar countdown formatting is shared with board widgets
v1.65News Wire and Article Reader Polish2026-09-09
- Keyboard-accessible story links and topic filters, working article opening from compact board widgets, and a responsive news feed with visible result counts and filter reset
- Article reader now uses the shared modal with focus return, a readable mobile header, reader retry and a clear publisher fallback
- News ordering compares actual publication times, unknown and future dates are explicit, flow labels reflect the feed window, and only flagged breaking stories appear as flash alerts
v1.64Market Monitor, Numeric Integrity and Desk Polish2026-09-09
- Redesigned market monitor with a selected-price header, searchable tiles, chart-first mobile layout and working market selection after deep links
- Chart errors stay within the chart; interval changes cannot display a previous interval, and candle/line controls remain available beside product-precision tooltips
- Missing values render as unavailable, rounded zero stays neutral, large-number units promote consistently and missing spread legs no longer become zero-price inputs
- Keyboard-operable screener sorting and instrument links, clear-filter recovery, and arrow-key navigation for shared segmented controls
- Visible keyboard focus in navigation, with arrow-key and Home/End navigation between section controls and announced selection states
- Responsive footer wrapping and native dark browser controls for a more consistent desk on smaller screens
- Clear page recovery with retry, board and service-status links, plus corrected missing-page navigation
- Native modal focus containment and return, scrollable account and search dialogs, labelled sign-in fields, and mobile menu dismissal and touch targets
- Accessible search results and honest account session copy; token copy feedback now waits for clipboard success
- Source panels keep recent observations visible during archive loading and failures, with accurate archive labels, retry, searchable basis text and a clear-filter empty state
- Fixed errors leaking between selected series, immediate retry feedback, and narrow-screen freight overflow
- Status checks now time out, prevent overlapping re-checks and identify retained results after failures; freight methodology reflects the published sources now supported
v1.63Petral Learn: 75 Topics, Live Desk Embeds, Guided Tracks & Honest Read Times2026-09-09
- Content expansion: 26 topics to 75 across 11 clusters and roughly 29,000 words, adding freight and Worldscale, volatility and options, the quant layer, supply and balance, inventories and storage, and a data-and-provenance cluster
- New block types in every primer: worked numeric examples, monospace formula blocks with symbol legends, ten hand-authored theme-aware SVG diagrams, and explicit 'what this does not tell you' caveats
- Live desk embeds: a topic renders the real board panel it explains, resolved from the widget registry, lazy-mounted on scroll, with the provenance badge intact and a deep link to the full panel
- Guided tracks: eight ordered routes with per-step progress, resume from the first unread step, and a stepper that carries the track through every link
- Search: one matcher over titles, codes, summaries, article text and glossary terms, wired into both the Learn search field and the sitewide Ctrl+K palette
- Desk to Learn: board window frames and chart headers link to the primer for their panel, from the same pair of registries the embeds use, with both directions test-enforced
- Honest read times: derived from the prose instead of hand-typed, replacing a 4-6 MIN READ label that overstated 80-135 word bodies by six to twelve times on every topic
- Navigation is real anchors throughout, so links work before hydration, support middle-click and open-in-new-tab, and cannot be lost to a starved router transition
- Shell folded onto the desk design system: TabBar driven by the tabs.ts registry it previously ignored, and theme tokens in place of hardcoded hex
- Graph layout derives its ring radius and child fan from the cluster counts rather than constants tuned for six hubs, and supports the eleven-hub map
- Fixed: progress no longer starts seeded with two pre-read topics, an unresolved topic no longer silently renders the China article, a duplicate SPR topic code, and deep links now count toward progress
- 26 content integrity assertions and 15 Playwright interaction tests covering wikilinks, quizzes, embeds, tracks, search and the desk-to-Learn chips
v1.61Freight Terminal Redesign: TabBar Navigation, Command Header & Corridor Split2026-09-09
- Institutional layout: unified /freight with the desk design system featuring TabBar source navigation, methodology banner, and Ctrl+K search palette integration
- Command header card: live status pills, publisher release links, observation dates, and quick-picker segmented controls across CTFI, Baltic, Gibson, and Fearnleys sources
- Selected metric hero card: high-visibility route quotes, net changes with bounded quotes (< / > / approx) preserved, route badges, and basis documentation
- Responsive corridor split: desktop side-by-side view pairing the hero card and price history chart with the interactive Leaflet freight corridors map
- Skeleton loading: integrated ChartSkeleton and SkeletonBlock states for fast, flicker-free tab transitions
v1.60Petral Learn: Interactive Knowledge Graph, Primers, Quizzes & Commodity Glossary2026-09-08
- Interactive knowledge graph: 6 core market overviews and 18 satellite topic nodes simulated with real-time radial spring physics, collision avoidance, and draggable orbital navigation
- Topic primers & desk linkage: comprehensive educational articles covering commodity physical/paper layers, forward curve dynamics, benchmark pricing, refining yields, and Chinese import mechanisms with live desk notes
- Integrated knowledge checks: dedicated interactive quizzes for every topic with instant scoring, pedagogical explanations, and retake capability
- Commodity glossary: A-Z desk terminology with categorical tagging and cross-references directly linking terms to dedicated topic primers
- Dedicated educational shell: seamless transition between the analytical trading desk and the immersive learning environment with local progress tracking
v1.59Public Data Expansion, Multi-Source Freight Intelligence & Longitudinal Archive2026-09-08
- Multi-source tanker freight: integrated Shanghai Shipping Exchange CTFI daily $/tonne and voyage rates, Baltic Exchange weekly priority routes, Fearnleys spot indications, and Gibson reports with route-specific bounds (< / > / approx) preserved
- EIA daily spot products: historical and scheduled tracking for NYH and USGC regular gasoline, LA RBOB, NYH and USGC ULSD, USGC jet fuel, and Mont Belvieu propane
- NOAA CPC degree days: daily population-weighted CONUS heating and cooling degree days, 1981-2010 climatological normals, and 7-day NDFD forecasts feeding macro weather analytics
- Longitudinal Redis archive: permanent append-only historical snapshot storage in Upstash Redis alongside fast 400-point serving slices
- Interactive freight corridors: Leaflet route mapping supporting Shanghai CT1/CT2/CT4 corridors and Baltic clean/dirty shipping lanes
v1.58Production Hardening, Live Observability Probes & Numerical Sample Honesty2026-09-07
- Production container stack: multi-stage Docker builds with uv and Bun, Caddy ingress reverse proxy with automated TLS, HSTS, and CSP security headers
- Observability & health probes: deployed /health/live, /health/ready, and /metrics with latency percentiles (p50/p90/p95/p99) and request-id tracing
- Authentication security: added rate limiting on registration and login endpoints, disabled automatic first-user administrator assignment, and introduced admin CLI tool
- Data layer honesty: cracks, grade differentials, and z-score ranking now report dynamic sample counts n instead of fixed defaults; full ordinal formatting for percentiles
- Navigation & responsive layout: TabBar compact mode prevents tab overflow on 1280px laptop screens; cleanly parked legacy analytics and pruned orphaned modeler sub-tabs
- Backup utility: deterministic offline backup and restore script (scripts/backup_restore.py) for SQLite databases and Redis KV keys
v1.57Persistent Serverless Authentication: Upstash Redis User Engine & SQLite Fallback2026-09-06
- Production database persistence: upgraded authentication subsystem to persist accounts and user preferences in Upstash Redis without expiration, surviving Vercel serverless redeployments, cold starts, and container recycling
- Seamless local fallback: retained full local SQLite engine for zero-config offline development and unit tests
- Automatic migration: automatic one-time migration of local SQLite user records and custom preferences to Upstash Redis on startup
- In-memory caching: integrated 60-second read caching to reduce external KV roundtrips during active trading sessions
v1.56Persistent Session Cookies & 6-Month Inactivity Timeout System2026-09-05
- Persistent session cookies: backend now sets petral_session cookie on /login, /register, and /refresh with 180-day (6-month) max-age and SameSite=Lax policy
- Automatic credential transport: client fetchOnce passes credentials: include to automatically synchronize cookie authentication across browser reloads and tabs
- 6-month timeout enforcement: synchronized JWT expiration and client-side session tracking to 180 days (15,552,000s), automatically clearing expired sessions and prompting re-authentication
- Session lifecycle & refresh: added /api/auth/refresh endpoint and rolling cookie updates on /api/auth/me during active usage; updated terminal account modal to show 6-month rolling window
v1.55Morning Brief Modal Alignment: Widget Philosophy & Responsive Executive Layout2026-09-04
- Modal & Panel streamlining: aligned Morning Brief with board widget philosophy by removing redundant legacy cards (curves, cracks, inventories, positioning, events, headlines) that already exist as dedicated widgets elsewhere
- Executive Brief integration: elevated ranked Session Drivers & Desk Reads directly into the main briefing box alongside diagnostic market synthesis narrative and 4 commercial metric pillars
- Dynamic radar & clock: enhanced sub-deck with imminent catalyst release countdowns and exhaustive statistical anomaly screening (|z| >= 2.0 sigma)
- Responsive sizing: unified layout on a natural min-content flex flow, resolving modal bottom collapse and squashed headers across all viewport heights
v1.54Board Workspace Refinement: Text-First Morning Brief, Dynamic Catalyst Agenda & Control Decoupling2026-09-04
- Morning Brief board widget: deployed dedicated text-first executive brief view, removing nested box clutter, 4 stacked pillar cards, and ticker tape to give primary focus to reasoned market synthesis and ranked desk reads
- Event Countdown widget: upgraded to full dynamic calendar release engine (45-day horizon) with an adaptive layout featuring an imminent catalyst hero card and chronological agenda list to eliminate dead space
- Market Board controls: isolated mode switch (candle/line) and news markers click handlers with event propagation stops and interactive element guards, preventing unintended modal expansion
v1.53Energy News Engine Overhaul: Flow-Materiality Scorer, Geospatial Energy Map & Price Reaction Chart2026-09-04
- Materiality scoring engine: expanded asset directory to 70+ flow-rated chokepoints, basins, terminals, pipelines, and supermajors with capacity (mb/d) and geo-coordinates
- Event-frame & sentiment precision: implemented dual-sided negation handling and opinion/clickbait discount heuristic (60% penalty on speculative commentary)
- Market vector taxonomy: added automatic classification into Flat Price, Timespreads, Differentials, and Refining Cracks
- Geospatial Energy Flow Map: high-contrast multi-tier beacon hierarchy with popup enlarge modal and strategic baseline monitoring
- Price reaction correlation: 3-day candlestick chart with 5m/1h/3h periods and direct news event wick pinning
- Streamlined interface: compact 1-line toolbar provenance indicator, Terminal split as default, and Cards view
v1.52Executive Desk Brief Box: reasoned dot-connecting synthesis & hybrid wire2026-09-03
- Executive Brief Box: deployed high-density morning desk sheet combining session context, reasoned dot-connecting synthesis, 4-pillar commercial strip, and wire radar
- Reasoned dot-connecting synthesis: built programmatic cross-asset reasoning engine that connects physical prompt structure, refining product pull, material wire catalysts, and speculative positioning asymmetry without dogmatic or false causal claims
- 4-Pillar commercial strip: surfaced Flat & Arb, Physical Structure & Carry, Product Cracks (lead driver), and Money Flow & Vol in a unified glanceable matrix
- Material wire catalysts: integrated importance-gated wire feed (min imp 50+) with categorized event badges ([OUTAGE], [GEOPOLITICAL], [OPEC+], [POLICY]), source attribution, and wire corroboration counts
- Scheduled clock & statistical radar: integrated live countdown timer to upcoming high-impact energy releases alongside screened dispersion outliers (|z| >= 2.0σ)
v1.51Commercial cleanup: pruning non-institutional toys and orphaned views2026-09-03
- Attribution: completely deleted per-factor rows when collinear (VIF > 5), presenting only aggregate macro vs crude-specific decomposition to eliminate false precision
- Synthesis: pruned the LLM AI desk report box and synthetic text generation; morning brief now leads cleanly with deterministic live market numbers and regime drivers
- Physical grades: completely pruned the textbook assay map scatter chart and view toggle; view is focused solely on commercial differentials, quality curve, and valuation corridor
- Analytics: demoted orphaned /analytics route from secondary navigation rail and parked it in disabled.ts registry
v1.50Chart-type & presentation overhaul: commercial desk analytics2026-09-03
- EIA table: added seasonal surprise column with diverging centered delta bars, sample size n, and directional labels
- EIA table: replaced raw 0th/100th percentile text for trending series with dot-on-a-range visual tracks and pinned indicators
- Curve panel: added change-by-tenor (Δ vs prev close) dual-grid bar chart beneath the forward curve with toggle controls
- COT positioning: Net Managed Money surfaced prominently as % of Open Interest across headers and board windows
- COT positioning: overhauled chart into stacked area (longs above zero, shorts below zero) with overlaid Net % OI line
- Positioning panel: retitled misleading 'Trader Concentration & Range' to 'Positioning Skew & 52W Corridor'
- Vol surface: lead with ATM IV - RV30 spread as headline stat tile with clear vol cheap / vol rich designation
- Vol surface: filtered noisy ultra-short-dated slices (<7d with RMSE > 0.15) from continuous smile calibration
- Vol surface: clarified that raw quote butterfly violations are bid-ask spread microstructure noise, while SSVI surface is mathematically guaranteed arbitrage-free
- Attribution: condensed decomposition into clear two-segment waterfall and suppressed collinear individual factor betas (VIF > 5)
- Physical grade diffs: badged SAMPLE directly on grade selector chips so sample status is apparent prior to selection
- Physical grade diffs: replaced static 4-row benchmark assay table with Crude Quality Curve horizontal bar chart ($/bbl vs WTI Cushing ordered light-sweet to heavy-sour)
- Physical grade diffs: replaced textbook distillation simulator with physical valuation corridor, percentile rankings, and commercial crude specs
- Calendar spreads: rendered prominent sample count n alongside percentile rank in spread ladder cells to prevent misreading small archives as multi-year distributions
- Refining cracks: plotted all three cracks (3:2:1, Gasoline 1:1, Heating Oil 1:1) concurrently against a 5-year week-of-year seasonal corridor and historical average
v1.49Backend API security hardening, speed optimizations & bug fixes2026-09-03
- enabled reverse-proxy-aware HSTS enforcement for production traffic behind Vercel
- configured Next.js security headers (X-Content-Type-Options, X-Frame-Options, Referrer-Policy, Permissions-Policy)
- disabled X-Powered-By fingerprinting and enabled GZip/Brotli compression
- optimized package imports for ECharts, ECharts-for-React, and Leaflet to reduce bundle parse times
- set explicit Turbopack root to eliminate multi-lockfile workspace traversal warnings
- added in-process single-flight concurrency lock to Gemini AI desk report generation
- fixed HTTP socket leaks in article reader by enforcing explicit response closure across redirects and errors
- resolved Python 3.12+ datetime.utcnow() and pandas Timestamp.utcnow() deprecation warnings
- hardened topic query parsing against non-alphanumeric input strings
- optimized client-side stale-while-revalidate caching to absorb rapid re-renders
v1.48Compound parameter navigation & deep terminal chaining2026-08-31
- introduced tokenized compound parameter navigation in the command bar ([Instrument] [View] [Tab])
- supports multi-token trading queries such as 'wti curve roll', 'brent storage', 'cot rbob', and 'macro yields'
- added navParams registry and event-based commodity state synchronization for zero-reload panel updates
- wired arrival and live parameter selection across Curve, Positioning, Volatility Surface, Volatility Cone, and Markets panels
- fixed hotkey collisions by scoping Ctrl+K / Cmd+K exclusively to the global command palette
- stabilized asset selector and macro driver catalog modals with top-anchored positioning and fixed dimensions
- AIS capture: a region whose tiles are blocked is now skipped instead of archiving a fabricated zero tanker count
- AIS fleet types: FSO/FPSO tags are no longer stripped from vessel names, restoring three hulls that had been merged into unrelated tankers
- Cape of Good Hope gate now spans the full capture box, recovering transits routing wide of the Agulhas current (gate version 2)
- PortWatch chokepoints relinked to live scraper regions - Cape of Good Hope and Dover no longer report as unscraped
v1.47Command palette unification & full tab reachability2026-08-31
- indexed every panel and individual sub-tab across the website into the command palette
- added multi-token query scoring and enhanced search alias resolution for complex navigation
- registered /calendar (Month Grid, Countdown Agenda) and /api (Endpoints, Excel, Python) in the global tab registry
- wired EIA first-print revisions archive into the fundamentals tab suite and deep links
- added direct command palette destinations for Alerts, Changelog, and all market models
v1.46AIS scraper resilience & chokepoint expansion2026-08-31
- added maritime prefix normalization (MT, M/T, M.V., etc.) for enhanced fleet cargo type matching
- added strategic chokepoints and gates for Danish Straits (Great Belt), Dardanelles, and Cape of Good Hope
- optimized scraper VM memory management with periodic browser context recycling
- hardened Redis write resilience and added challenge/block page detection in tile fetcher
- synchronized region color palettes and updated standalone coverage map
v1.45Trading board remaster & curated presets2026-08-31
- remastered multi-widget trading board with active preset detection and glassmorphism styling
- curated 7 handcrafted desk presets: Overview, Curve & Spreads, Print Day, Physical & Arb, Macro & FX, Relative Value & Vol, and World Balance & Supply
- added widget category filtering in catalog with search and placed instance counters
- added deep-link navigation from board widget headers to dedicated standalone pages
- added keyboard-driven previous/next widget cycler in expanded overlay modal
- added layout manager with JSON import/export and blank canvas starter
v1.44Quantitative modeling & curve workspace2026-08-30
- added interactive custom spread formula builder across forward curves and product differentials
- added dynamic term structure visualizer with multi-date snapshots and annualized roll yield
- added automated EIA inventory balance sheet modeler with seasonal envelope exports
- added quantitative integration hub for live Excel, Google Sheets, and Python SDK workflows
- overhauled forward curve panel with 2-column workspace, macro KPI ribbon, and animated scrubber
- integrated authenticated Carto basemaps for high-resolution AIS and weather maps
v1.43Physical desk economics & logistics2026-08-30
- added voyage financing, transit time, and carry models to physical arbitrage calculations
- added US pipeline tariff stacks (FERC Form 6) and export dock logistics
- added physical vs financial market regime diagnoser (prompt spreads vs managed money)
- added distillation cut assays and Gross Product Worth (GPW) estimation
- added commodity index roll tracking for BCOM and S&P GSCI
v1.42Terminal layout & performance2026-08-30
- modernized news trading terminal with featured stories and category filtering
- standardized timeline scrubbers with drag-panning and data shadows
- optimized EIA seasonal band caching and query performance
- hardened API endpoints and background fetchers
v1.41Cross-source context engine2026-08-18
- added Context panel and board widget for cross-source relationship monitoring
- statistical anomaly detection across physical spreads, inventories, and positioning
- gated relationship tracking with empirical fit-quality verification
v1.40Component standardization2026-08-11
- unified SegmentedControl across all trading panels
- standardized table selection and canvas share-card renderers
- added automated architecture consistency checks
v1.39AIS transit & chokepoint gates2026-08-10
- added chokepoint transit gate detection across 8 major straits and canals
- added 24-hour rolling crossing volume alongside vessel census tracking
- unified AIS region trend share-card exports
v1.38AI desk note & market brief2026-08-09
- restructured AI desk note with structured market state, catalysts, and anomalies
- added automated catalyst radar tracking upcoming releases and contract expiries
- added dedicated EIA report-day card and social share cards
v1.37CFTC & ICE positioning2026-08-09
- converted CFTC (COT) view to multi-asset table across crude, refined products, and gas
- added ICE Futures Europe Brent and Gasoil positioning alongside CFTC data
v1.36Export share cards2026-08-09
- added single-click share card generation across all charts and panels
- added keyboard shortcuts (Ctrl+Shift+S) and command bar share action
- optimized layout density across all 49 views for clean screenshots
v1.35Volatility surface & smiles2026-08-08
- added 3D SSVI volatility surface and arbitrage-free strike smile views
- added term-structure volatility curvature and event hump detection
v1.34JODI global supply check2026-08-08
- added JODI-Oil producer submissions alongside EIA STEO supply estimates
- added multi-producer trend comparison grid and CSV export
v1.33Global cyclone & weather tracking2026-08-08
- added global tropical cyclone tracking via GDACS with alert levels
- added interactive terminal, refinery, and port infrastructure map pins
v1.32Realized volatility cone2026-08-07
- added realized volatility cone across 10 to 180-day horizons
- added volatility risk premium tracking (implied vs. realized)
- enabled full command-bar search across all sub-tabs
v1.31World balance & shale supply2026-08-06
- added 10-year world oil supply/demand balance ribbon
- added US shale drilling, completion, and DUC inventory tracker
- added OECD commercial inventory days of forward cover
v1.30EIA STEO live supply2026-08-06
- connected live EIA STEO production and demand across 18 countries and 7 regions
- added live 13-week T-bill financing rates to storage carry model
v1.29Panel cleanup & refinement2026-08-01
- streamlined panel set to 48 live, source-backed board widgets
- standardized tab bar and navigation hierarchy
v1.28Interactive chart news markers2026-07-31
- added clickable high-importance news event markers to price charts
- added permanent news archive for historical event analysis
v1.27News scoring engine2026-07-29
- added 0-100 news materiality and attention scoring engine
- added multi-voter sentiment analysis and corroboration tracking
v1.26Performance & caching2026-07-27
- added request deduplication and unified polling engine
- added stale-while-revalidate caching and CDN performance tuning
v1.25Navigation & browser testing2026-07-26
- added automated Playwright browser test suite
- optimized layout rendering and lazy-loaded board widgets
v1.24Quant analytics layer2026-07-25
- added macro move attribution, EIA balance reconciliation, and curve PCA factors
- added Brent-WTI relative value modeling and basis risk metrics
v1.23Board widget settings & floating storage2026-07-25
- added widget settings gear for asset-switching widgets
- added floating storage tanker economics and VLCC charter breakeven
v1.22Tanker tape & grade diffs2026-07-24
- added live tanker equity index (Tanker Tape)
- added crude assay quality scatter analysis (API vs sulfur)
v1.21AIS chokepoint tracking2026-07-24
- added IMF PortWatch chokepoint transit counts
- added Baltic freight route map layers
v1.20Forward curve unification2026-07-24
- merged forward curve and calendar spreads into unified workspace
- added EIA Surprise tab and board layout presets
v1.10SEO & metadata2026-07-22
- added structured metadata, OpenGraph cards, and automated sitemap
- fixed timezone handling in contract delivery months
v1.0Petral launch2026-06-24
- initial release: Python analytics engine, FastAPI backend, and Next.js trading terminal
- live markets board, flat price history, and forward curve visualization