Sync active plans after hub position close, merge final close snapshots per plan, and backfill missing trade records when ending an already-stopped plan.
Co-authored-by: Cursor <cursoragent@cursor.com>
Finalize plans before writing snapshots, dedupe on startup and page load, and add a cleanup script for existing repeated rows.
Co-authored-by: Cursor <cursoragent@cursor.com>