Changelog

All notable changes to ForexFlow are documented here. This changelog is auto-generated from Conventional Commits using pnpm changelog.


All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog

and this project adheres to Semantic Versioning.

Generated by auto-changelog.

Unreleased">Unreleased

Merged

  • build(deps): Bump actions/upload-artifact from 4 to 7 #1
  • build(deps): Bump actions/setup-node from 4 to 6 #2
  • build(deps): Bump github/codeql-action from 3 to 4 #4

Commits

  • feat(docs): comprehensive documentation overhaul with beginner-friendly user guides 667204f
  • feat: add SmartFlow trading system and Source Priority engine 4d1c7f4
  • refactor(web): redesign TV alerts settings with tabbed layout 59f14b9
  • feat(daemons): add SmartFlow autonomous market scanner with 4 scan modes ad0d4fd
  • feat(web): complete SmartFlow overhaul — fix engine, redesign UI, add plain English 3992879
  • feat(web): add AI Trader performance tab, opportunity filters, SmartFlow AI monitor cd60b13
  • feat(web): add Zod validation, React.memo rows, Suspense, a11y fixes b1dbc93
  • fix(web): audit and fix 14 bugs across AI analysis, UI, and trade syncer e407b6d
  • feat(daemons): add signal confluence engine with ATR-based SL/TP 1acc7bb
  • feat(trade-finder): comprehensive auto-trade improvements for higher win rate 0473eef
  • refactor(web): rewrite SmartFlow settings with tabbed layout and beginner-friendly copy 713198e
  • refactor(web): redesign Trade Finder settings with plain English and tab navigation aa723dd
  • feat(web): complete setup card redesign — portrait grid + slide-over sheet 39f0ed4
  • feat(web): rewrite SmartFlow trade builder as premium onboarding wizard 1be6874
  • feat(daemons): improve AI Trader trading logic and self-learning 6d23e29
  • fix(daemons): ai trader source attribution, tier 2 parsing, and dashboard UI overhaul 7b11b59
  • feat: add SmartFlow real-time observability (activity feed, health, timeline, debug) 1ba4f7f
  • refactor(web): redesign Trade Finder setup cards for clarity 422e407
  • feat(web): implement SmartFlow trade builder wizard and tab content fc31158
  • feat(daemons): add performance analytics and adaptive tuning for Trade Finder e682a2e
  • feat(daemons): add post-fill trade management for Trade Finder trades 0a45b0a
  • feat(web): overhaul trade replay into rich sheet with live P&L and overlay toggles f810cb6
  • feat: wire activity feed into all SmartFlow operations, enhance config visibility 3483c00
  • feat(web): show Trade Finder setup analysis in trade detail drawer a598e5b
  • fix(web): redesign trade plan cards with modern visual styling 453fd94
  • feat(web): add 7 replay enhancements — timeframe, scores, volume, AI, screenshot 92c304e
  • fix(db): add migration for TVAlertsQualityConfig + SmartFlowOpportunity 1459741
  • feat(daemons): add auto-trade queue system with accurate skip reasons and cap visibility bbab309
  • fix(daemons): preserve Trade Finder setup data when LIMIT orders fill on OANDA e1122b8
  • fix(web): auto-place trades on startup, dedup activity, richer trade plan cards cc77c1c
  • fix(daemons): harden Trade Finder scanner with 6 bug fixes to improve win rate 83fb1a1
  • feat(web): add AI integration to trade builder, replace emojis with lucide icons bc86ffe
  • fix(web): fix SmartFlow settings save, add beginner help text, wire New Trade button d76c144
  • fix(web): redesign SmartFlow config cards with rich real-time data 67e7b58
  • feat(web): add "How It Works" tab to SmartFlow settings 058d44e
  • fix(web): fix desktop blank screen, add splash, fix all lint warnings 9e10287
  • feat(daemons): add smart entry confirmation and score-based position sizing 56d665e
  • feat(web): add AI error detection with global banner for quota/rate limit errors 63f9a29
  • fix(daemons): use top-level TradeCloseReason import instead of inline import() f7defde
  • fix(db): add migration for Trade Finder overhaul schema changes 20e2c4d
  • fix(daemons): prevent premature breakeven closures — smart buffer, hysteresis, prompt guardrails e453ea6
  • feat(web): add SmartFlow sidebar status + scanner detail view 987c235
  • refactor(web): rename display text "AI Trader" to "EdgeFinder" across UI and docs a3bc8ea
  • feat(web): refresh notifications after reset, rich close-all dialog, persist activity ac0426d
  • feat(daemons): add 3 scoring dimensions to Trade Finder (session, key level, volatility) b14a334
  • fix(db): add cancellation context, audit trail, and explanatory UI 1fd95ea
  • fix(daemons): restructure AI Trader pipeline — confidence thresholds use final Tier 3 score 3b55d66
  • feat(web): require all automation disabled before app reset 4ef3965
  • feat: live prices for all Trade Finder cards + chart improvements d70ff13
  • fix(web): make Trade Finder settings field design consistent across all tabs 8245945
  • feat(web): improve EdgeFinder dashboard, nav, and activity log 1063bec
  • feat(web): add chart overlay toggles and plain English score breakdown eafcd7e
  • fix(daemons): make AI Trader functional + add safety controls a237c9e
  • feat(db): persist SmartFlow activity log to database ba33313
  • fix(web): fix trade priority page — align with actual API data shapes 38f8ba9
  • chore(web): fix ESLint warnings, add suspense-ready memoization patterns e98d659
  • feat(web): add AI decision detail to opportunity cards eafc6da
  • fix(daemons): resolve $0 P&L, metadata loss, and position sizing bugs b4d8c7d
  • feat(web): allow desktop app and dev server to run simultaneously 172cd0d
  • fix(daemons,web): add minimum risk guard and humanize trade close UX e52b3f3
  • fix(daemons): fix AI Trader $0 cost tracking and overly restrictive Tier 1 filters 000a8e9
  • fix(db): distinguish cancelled orders from breakeven trades fddfbfc
  • fix(daemons,web,shared): market hours weekend override, TV alerts signal count, condition hardening 43919b2
  • feat(web): add dynamic status text to Trade Finder sidebar nav item 794b1ff
  • fix(web,daemons): improve Trade Finder UI with plain English and live scan details 6b409d0
  • fix(db,web): add missing tables to reset — TF performance, SmartFlow, alerts 4807e1d
  • fix(web): rewrite AI insights bar to use correct API types, fix $NaN 0cff5b3
  • feat(web): order automation controls by configured trade priority 7dc7bb3
  • fix(web): responsive grid layout for trade plan cards, remove empty Offline state bf6fa49
  • fix(web): resolve desktop blank screen with native module and DB init fixes 778cee8
  • feat(web): live price data on cards + improved header stats ac34ecc
  • fix(daemons): prevent LIMIT order ID mismatch causing false cancellations 030e6f8
  • fix(daemons): smartFlow retry blocked configs every 2m; enable AI by default 73d9100
  • feat(web): add zone/trend/curve overlays to replay chart, improve TF setup status c1396b6
  • fix(web): compute fresh LTF trend for trade detail chart instead of MTF snapshot c5bd51a
  • fix(web): render MTF trend overlays when swing points are outside LTF chart range e7e3f28
  • fix(web): remove daily auto-trade cap, show USD on SL/TP cards, improve notification badge 120d48e
  • fix(web): make setup cards explain WHY things are happening 7a9feaa
  • fix(web): improve replay clarity — price labels, close reason, start at entry 56a57bd
  • fix(web): fix ScannerStatusBar crash — map daemon progress shape correctly a207a56
  • fix(web): fix pending order progress bars stuck at 50% 8b8b7db
  • fix(daemons): comprehensive AI condition monitor hardening 6884e4a
  • feat(web): sort Automation nav links by source priority order f98b545
  • feat(web): add real-time status to TV Alerts sidebar nav item 454f8e6
  • fix(daemons): recover source metadata for trades after DB reset a436782
  • fix(daemons): attribute cancel events to correct source (trade_finder/ai_condition/user) b16376f
  • feat(web): add Cancel All button for active conditions in reset preflight a2c05a7
  • fix(daemons): reconcile stale EdgeFinder opportunities on startup 8a96790
  • fix(daemons): fix source metadata not persisting for AI Trader and Trade Finder orders eb29b82
  • fix(web): reconcile AI Analysis sidebar badge with DB on mount/reconnect d3c68cb
  • fix(web): fix broken Close All/Cancel All buttons in reset preflight checks 23a49f0
  • fix(web): make setup cards update in real-time + rename Auto-Trade to Trade Finder d7c2fae
  • fix(web): improve Recovery Mode warning card visual design 683c4f7
  • fix(daemons): remove confluence score gate — let AI evaluate all signals 45246e7
  • fix(daemons): extract JSON from markdown-wrapped AI Trader responses f753d88
  • docs(docs): document auto-trade queue system, skip reasons, and cap utilization 6ff84d0
  • fix(web): always show upcoming close reason in market status popover 6f0055c
  • fix(shared): use ET calendar dates in time helpers to fix UTC/ET day mismatch 456605e
  • feat(web): add AI Analysis toggle to Automation header dropdown 6e50a9e
  • fix(db,web): add SmartFlow to reset preflight automation checks 88d3f98
  • fix(daemons): fix AI analysis hanging by aborting stream directly on timeout/cancel 39d5aaf
  • fix(daemons): add debug logging to placeOrder metadata flow 5bf9ad3
  • fix(web): use DEFAULT_TREND_DETECTION_CONFIG for trade detail trend 95031c7
  • fix(daemons): enforce R:R minimum after Tier 3 adjustments in AI Trader 5f2aa30
  • fix: live price updates for all Trade Finder cards + zoomed mini charts 554f960
  • fix(web): close all OANDA positions before trading data reset 4623b5f
  • fix(web): optimistic UI update for reset preflight close/cancel actions 3078f14
  • docs: add Trade Finder setup analysis to positions and trade finder docs 19e2060
  • fix(web): compile preload script as CommonJS for Electron sandbox compatibility 13491e0
  • fix(web): remove duplicate auto-trade status from expanded card view d96dc18
  • fix(daemons): enforce min R:R at TP selection, not just at placement guard 120211d
  • fix(web): fix URL not updating when opening trade setup sheet 3c46ace
  • fix(web): scan Now auto-switches to activity tab; add W/L to automation bar d2bd864
  • fix(daemons): resolve race condition where closed trades reappear as open in DB c40908d
  • fix(web): add startup diagnostics, auto DevTools, and template.db to extraResources 671626b
  • feat(web): add timeframe switcher to setup card chart (LTF/MTF/HTF) ff49111
  • fix(web): replace jargon with specific, contextual explanations on setup cards ee638f2
  • fix(web): group automation controls by function and remove confusing priority numbers b641740
  • fix(shared): add trailing segment from last swing point to current price eb38060
  • fix(web): notify daemon to re-sync state after app reset 243c7a5
  • fix(daemons,web): add condition grace period + cap replay candle time window bbf826d
  • fix(web): remove duplicate cost stats from AI Trader scanner status bar 999fc01
  • fix(web): preflight checks query daemon for live OANDA position counts 36035b7
  • feat(web): add desktop:dist single-command DMG build 97f2235
  • fix(daemons): decouple AI Trader kill switch from TV Alerts enabled state 2575bad
  • feat(web): add close reason row to market status popover 91b563d
  • fix(daemons): handle race condition when fetching orphaned trade close details 7e7d430
  • fix(web): fix "Object is disposed" chart error on unmount 463e906
  • docs(docs): update user docs for AI breakeven improvements 648c14e
  • fix(web): use asymptotic formula for pending order fill percentage 66179cf
  • docs: update docs for weekend market hours, TV alerts snapshot, condition validation cb7f0f1
  • fix(web): resolve setState-during-render in DocsContent and fix lint warnings 2867e40
  • fix(web): fix ESM module resolution for Electron desktop app 397d2fb
  • docs: update CLAUDE.md files for auto-trade audit fixes c898fdf
  • fix(daemons): send SmartFlow status on WS connect so dashboard shows correct state 78798c8
  • fix(daemons,web): surface AI Trader Tier 2/3 errors in scan activity log eefbe60
  • fix(web): pass MTF trend as higherTfTrendData in trade detail drawer 0d677a4
  • fix(web): remove redundant Scanner tile from AI Trader data tiles 51cf4ad
  • fix(web): guard against undefined direction/instrument in activity feed cb89026
  • chore(docs): update desktop build docs with desktop:dist, icon, and Gatekeeper info 80609e3
  • fix(daemons): convert low-volatility hard gate to soft penalty in EdgeFinder ad575bc
  • fix(db): preserve filled/placed Trade Finder setups from cleanup 5ef8beb
  • docs(docs): remove daily auto-trade cap references from Trade Finder docs 5d44f54
  • fix(web): add exit price line to closed trade chart 2b53777
  • fix(web): add entry price line to trade pullout chart ed1bc3a
  • fix(web): fix zone and trend overlays not showing on setup card chart e9b0249
  • fix(web): use plain English for sidebar Trade Finder status text 6090509
  • fix(web): increase spacing in Trade Finder settings cards 2d14ff6
  • fix(web): fix text overlay in auto-trade settings separator labels e6a9d7d
  • docs(docs): add preflight safety checks section to reset page 1712d99
  • fix(web): require both box endpoints in range — no edge clamping df93ce7
  • fix(web): skip out-of-range swing points instead of clamping to chart edge ebe4d0b
  • docs(docs): document AI condition monitor safety features a1b8dec
  • fix(daemons): resolve lint errors in scan-modes and entry-filters 2d5bc96
  • fix(web): show correct EdgeFinder scanner status when daemon offline or paused ee08864
  • fix(web): make footer version dynamic using git commit count 2861ac6
  • fix(web): increase Trade Finder settings spacing to space-y-6 509a637
  • fix(web): show correct closed trade count on positions tab + header c8e509d
  • fix(web): sync SmartFlow state between reset preflight and header controls 8130f51
  • fix(daemons): resolve lint errors in SmartFlow and SourcePriority 4a5c7ae
  • fix(web): improve Pairs tab spacing for consistency 27ef791
  • fix(web): comprehensive ESM fixes for Electron desktop app 23b03ae
  • fix(daemons): return canonical OANDA order ID from placeOrder 367f46e
  • fix(daemons): use encrypted DB API key for AI Trader Tier 2/3 calls 1df9cc1
  • feat(web): add custom desktop app icon from FXFlow logo fb71119
  • fix(web): prevent cached preflight response after close/cancel actions 7633dc4
  • fix(web): fix electron-updater import crash on desktop launch bdbefc4
  • fix(web): show latest candles for open trades instead of scrolling to entry 25c67d8
  • fix(web): fix electron-updater CJS import for ESM compatibility 0132ee3
  • fix(web): remove auto-open DevTools from desktop window 511fc6e
  • fix(web): enable trend boxes in trade detail drawer chart overlays 7a9f01f
  • fix(web): remove unused chartWidth variable in trend line drawing 3f2d4e1
  • fix(web): guard against undefined priorities in trade priority settings page db3ff84
  • fix(web): check correct field name for AI key in dashboard insights bar 219dce9
  • fix(web): clean .next cache and simplify desktop:dist script d7ab3eb
  • fix(web): add DATABASE_URL to desktop:dist script 6f6cbbd
  • fix(web): fix chart glitches when switching timeframes or toggling overlays 77d4254
  • chore(docs): update Astro generated files 2dfa890

v0.1.4 - 2026-03-15">v0.1.4 - 2026-03-15

Commits

  • fix(ci): prevent electron-builder auto-publish in CI 4ba3fc3

v0.1.3 - 2026-03-15">v0.1.3 - 2026-03-15

Commits

  • chore(docs): update docs for desktop build and release workflow changes d76db5f
  • fix(ci): fix electron-builder env var syntax and CI build scope 0b5a200

v0.1.2 - 2026-03-15">v0.1.2 - 2026-03-15

Commits

  • fix(ci): fix desktop build — drop electron-vite, fix runner and icon 8544286

v0.1.1 - 2026-03-15">v0.1.1 - 2026-03-15

Commits

  • fix(ci): simplify release to tag + GitHub Release only 941c90d

v0.1.0 - 2026-03-15

Commits

  • initial commit bd06d65
  • feat: add consistent PageHeader, calendar card fixes, reset page, risk/alerts/analytics pages be0b6b0
  • fix(ci): resolve CI failures — format all files, fix workflow configs 6cb1176
  • feat: add AI Trader autonomous trading system and misc updates 538c70f
  • ci: add CI/CD infrastructure, pre-commit hooks, and TSDoc documentation adb22be
  • feat(web): add TV alerts performance analytics dashboard 7f4a001
  • feat: add remote access — PIN auth, WS proxy, PWA, Cloudflare tunnel, REST polling e109346
  • feat(web): add dashboard redesign with source analytics and activity feed a7a6baa
  • feat: add GitHub Pages site and in-app documentation viewer 09fb801
  • fix(deps): update lockfile to include desktop workspace dependencies ad98d77
  • feat: add Electron desktop app and cloud deployment support 105c732
  • feat(docs): add automated documentation sync enforcement 53880e6
  • feat(web): add app footer with version display and automated release workflow 0b0fe32
  • fix(ci): resolve prettier, build, and migration drift failures 11694aa
  • chore: add named tunnel setup script and update config example 822b4f9
  • feat(web): add signals-by-pair chart to TV alerts performance dashboard f00e1da
  • fix(ci): restructure release workflow for branch protection acaf91a
  • fix(web): make AI analysis stats update in real-time 153dfc2
  • fix(ci): derive version from git tag and add idempotency guard 5b95b19
  • fix(web): use daemonUp (WS or REST) instead of isConnected for remote status 410cb7b
  • ci(ci): remove SSH deploy job from deploy workflow 87265a9
  • fix(ci): update lockfile for ws dependencies in apps/web 049bbae
  • fix(ci): add DATABASE_URL env to all CI jobs for Prisma generate 7ee14d5
  • fix(ci): disable lefthook in release workflow git operations 01254a1
  • fix(ci): use --to-schema instead of deprecated --to-schema-datamodel 6740b4b
  • chore(docs): update Astro generated files e2a4597
  • chore(docs): update Astro generated files after prettier formatting 52feefb