39246-vm/docs/PROGRESS.md
abbashkyt-creator 7d8ce0e322 V0.1
2026-03-14 04:02:22 +03:00

4.8 KiB

πŸ‘» Ghost Node β€” Progress Log

Read this alongside CLAUDE.md at the start of every new session. Full session history (all sessions, including Q&A decisions) β†’ ARCHIVE.md β€” do NOT load at session start.

⚠️ MD Update Rule β€” DYNAMIC, NOT STATIC

Only update the MD file whose content was actually touched this session. Not all files β€” only the relevant ones.

  • PROGRESS.md β†’ update when any code file changed. Add a brief session entry here, move it to ARCHIVE.md when it's no longer active context.
  • CLAUDE.md β†’ update only if API endpoints, DB schema, config keys, or architecture changed.
  • MEMORY.md β†’ update only if a new reusable gotcha, pattern, or architecture decision was discovered.
  • ARCHIVE.md β†’ move old PROGRESS.md session entries here. Also log Q&A sessions that produced lasting decisions.
  • If nothing changed in a session (pure Q&A, no files edited, no decisions made) β†’ update nothing.

Current State

  • Version: v2.7
  • Status: βœ… Fully operational β€” 21/21 tests passing
  • Last session: 31 (2026-03-13) β€” Fixed Framer Motion SSR opacity:0 bug across all components (LandingPage hero, dashboard, StatsGrid, RecentListings, EngineConsole, ActivityLog, ListingRow, ListingsTable, ListingDetailPanel, 4 page routes). All above-the-fold elements now render visible in static HTML (opacity:1, only transforms animate). Below-fold scroll-triggered sections intentionally keep opacity:0 for scroll animations. 21/21 tests passing.
  • Previous session: 30 (2026-03-13) β€” Full marketing landing page built from AI_WEB_BRIEF.md (Hero, Platform Strip, 6-feature grid, How It Works 4-step flow, Who It's For personas, FAQ accordion, Footer CTA + site footer). Light/dark theme toggle added (ThemeToggle.tsx, localStorage-persistent, vivid lavender-ivory light palette via data-theme attribute). globals.css extended with complete [data-theme="light"] overrides for all g-* classes. 21/21 tests passing.
  • Previous session: 29 (2026-03-13) β€” Master dashboard "Mission Control" rebuilt: RecentListings (polls /api/listings every 10s), EngineConsole (status orb + controls + site health, polls /api/sites every 25s), enhanced ActivityLog (tracks engine state transitions), StatsGrid updated (keywords prop replaces engine card), utils.ts extended (formatUptime, formatMins, formatPrice, timeAgo). 21/21 tests passing.
  • worker.py: 5,000+ lines (definitive β€” ahead of all exports)
  • frontend/: Next.js 16 + React 19 + TypeScript + Tailwind v4 β€” static build in frontend/out/ (1.8MB). node_modules/ is 553MB build tooling β€” safe to delete, run npm install to restore.
  • models.py: ~420 lines
  • Serving: http://localhost:8000 (React UI) | http://localhost:8000/legacy (HTML fallback)

🟑 Pending Features β€” Priority Queue

Priority 1 β€” Redis Cache Layer

Replace in-memory Python dicts with Redis. Survives restarts. Enables pub/sub for live dashboard. Price cache, rate limits, job queue.

Priority 2 β€” Docker Compose

docker-compose.yml with worker.py + PostgreSQL + Redis. One-command startup anywhere.

Priority 3 β€” Lot Description Extraction

AI currently only sees lot title. Detail pages have full descriptions. Extends AI-first accuracy dramatically. How: JS_DETAIL_TEXT extractor on detail pages + new description (Text) column on Listing + pass to _ai_analyze()

Priority 4 β€” Frontend Visual Polish

Session 27: Full premium redesign β€” ambient animated gradient background (3 floating orbs + dot grid), glassmorphism shell (backdrop-blur + saturate), gradient glow cards (g-card-glow with animated border), Framer Motion staggered card/row/page animations, gradient text headings, badge system (green/amber/red/blue/purple/neutral), gradient underline active nav with glow, status pill with live pulse dot + aura shadow. New CSS prefix: g-* (e.g. bg-g-base, text-g-green). All 21 tests + build passing.

Session 28: Added a dedicated marketing landing page (frontend/components/landing/LandingPage.tsx) and switched frontend/app/page.tsx from redirect('/dashboard') to render the landing component. Root route now serves landing content in fresh static export.


πŸ”΅ Known Improvements (Lower Priority)

Item Description
Edit Site modal No way to edit login fields on existing sites after creation
Cloudflare Turnstile Current solver handles reCAPTCHA/hCaptcha only β€” Turnstile needs cf-clearance-scraper
Mobile dashboard Desktop-only β€” needs responsive grid breakpoints
Sort by USD price Listings table sorts by raw price β€” should optionally sort by price_usd
N18: Site Discovery Skipped β€” AI-powered discovery of new auction sites from web

Last updated: 2026-03-13 β€” Session 28