📋 Roadmap · Todo

งานที่เสร็จ + ที่กำลังจะทำ

ทุกข้อมีลิงก์ไปอ่านรายละเอียด / เทส / ที่เกี่ยวข้อง

18 ✅ ชิ้นสิ้น
3 🚧 กำลังจะทำ
11 🧪 test cases (248/258 PASS)

✅ Done 18 ชิ้นสิ้น

งานที่ deploy แล้ว + ทดสอบผ่าน

LLM Cache replay (scene hash → return cached) commit 4397bb4

ถ้า scene เดิม (hash = 20 director fields) → return cached prompt ไม่เรียก LLM — เร็วขึ้น 17x (5.3s → 0.3s) + ประหยัด cost
💾 SQLite cache SHA-256(20 fields) 💾 cached badge /cache/stats + /clear

Refactor: Full RCA-driven Veo integration overhaul commit 7758a5d 11 defects fixed

RCA ที่ user ส่งมาพบ 11 defects ในระบบ video gen — รื้อใหม่ทั้งหมด: hardcoded params, ignore project refs, spec mismatch, unsafe ref handling, silent decrypt, no checkpoint, no structured errors, no retry/backoff, traceback leak, frontend hardcoded chars, no fingerprint
🔧 10 backend files 1 frontend +1058 / -502 lines 11 RCA defects All TC still pass

TC-12 Real Veo API Integration 12 assertions 401 detected

Locks in real genaipro API integration: backend must successfully call /v2/me with stored Veo JWT. Detects when token gets revoked (key insight: too many test calls = genaipro revokes token for suspicious activity). UI: real Chromium screenshots of Settings + Test button.
🔧 12-veo-real-api/ 5 phases 1 genaipro call per run Idempotent: will pass when token valid

TC-11 Full Real UI Walkthrough 22 screenshots 3 findings

ทดสอบ UI จริง 6 phases — signup + logout + login admin + logout + login new user + app explore — ถ่ายรูปทุก state 22 ภาพ + log network 168 calls + พบ 3 findings จริง
📸 22 รูป 6 phases 26 events 3 real findings

TC-09 Signup Flow (UI + API) 18/18 PASS

ทดสอบสมัคร user — POST /api/auth/signup (valid/duplicate/short-pass) + UI signup tab + display_name field + auto-login + localStorage token + logout flow
🎬 10 steps UI + API 18 assertions ⚠ no email format validation

TC-10 Login Flow (UI + API) 24/24 PASS

ทดสอบ login — POST /api/auth/login (valid/wrong-pass/wrong-email/empty) + UI login + tab switching + session persistence + logout + multi-user (admin + new)
🎬 15 steps UI + API 24 assertions session persists

TC-08 Video Gen v2 (UI + Direct Veo API) 9/9 PASS IP-aware

ทดสอบ Veo 3 ครบวงจร — direct genaipro API (POST text-to-video → poll task → download MP4 → verify ftyp) + Director Studio proxy (PUT settings → POST submit) + UI Veo tab
🎬 5 steps Direct + Proxy + UI 9 assertions 🛡 1010 ban-aware VEO_JWT env var

TC-07 Jobs Async (WebSocket + cancel) test 28/28 PASS

REST API + WebSocket + UI — submit/list/cancel jobs, real-time progress events (race-free connect), 401/404/400 edge cases
🎬 13 steps WS + REST + UI 28 assertions race-free WS test

TC-05 Projects CRUD test 25/25 PASS

Full project lifecycle via real browser (Playwright + Chromium-1223) + API — CREATE/READ/UPDATE/DELETE + 404 + 401 + UI modal flow
🎬 14 steps UI + API 25 assertions idempotent + cleanup

"Generate All" Veo Prompts button (sequential) commit 92ec978

กดครั้งเดียว gen Veo prompt ทั้ง 3 scenes — ไม่ batch ทีละ scene (LLM focus ดีกว่า) — แสดง progress "Scene 1/3 done (827 chars)" แล้ว refresh
✨ sequential loop /api/llm/generate-veo-all ~14.7s/3 scenes

Stage 1: เขียนบท (Script Generation) commit 05d1ee0

LLM เขียน JSON script + 20 production fields ต่อ scene (shot_type, camera_move, lighting, director_note, ...)
UI render 20 fields TC-02: 42/42 PASS

UI: render 20 new director fields commit 8e21ee9

7 collapsible meta-blocks ต่อ scene (🎥 Camera, 💡 Lighting, 🔊 Sound, 🎭 Characters, 📖 Story, 🎬 Production, 🎬 Director's Intent)
TC-02 verified 110 lines CSS

Stage 2: Veo prompt ใช้ 20 fields (batched) commit 792bd3a

Veo prompt 4x richer (150 → 648 chars) ใช้ shot_type/camera_move/lens/lighting/director_note ตรงตาม script
batch all 3 scenes ~648 chars/prompt

LLM JSON parse recovery commit 0acea43

safe_json_loads() 6 strategies: direct, smart quotes, trailing commas, truncation recovery, progressive shortening
truncation fix 6057 chars recovered

Stage 2: Per-Scene Veo (1 scene = 1 prompt) commit e32028d

Endpoint ใหม่ /api/llm/generate-veo-single + ปุ่ม "🎬 Generate Veo Prompt" ต่อ scene (≤ 1500 chars)
max 1500 chars TC-03: 57/57 PASS ~950 chars/prompt

Pipeline Explainer Page live

หน้าเว็บอธิบาย 3-Stage Pipeline (ไอเดีย → บท → คำสั่ง Veo → วิดีโอ) พร้อม 20 production fields grid + screenshots จริง
26KB public access 3 screenshots

TC-04 Refs Management Test commit pending

INGRADAID abstract slots (ref1/ref2/ref3) + cross-project isolation + cross-tenant 401
41/41 PASS horror + romance

Marketing Pages (WOW + Sales + Pipeline) live

3 marketing pages: Live Demo (25 screenshots), Pricing/FAQ, 3-Stage Pipeline explainer — เปิดให้คนนอกดูได้
29KB + 37KB + 26KB no auth

🚧 Pending 3 ที่กำลังจะทำ

คิวถัดไป — เรียงตาม priority

S

Optimize LLM prompt (บางทีเขียน prompt ยังไม่ถึง 1500) S

ปัจจุบัน: average ~950 chars, target 1500. เพิ่ม few-shot examples เพิ่มเติม, ปรับ system prompt ให้ LLM เขียนยาวขึ้น
few-shot ↑ + examples
Y

Default scenes slider (1-10) + preset buttons Y

เปลี่ยน input "จำนวน scenes" เป็น slider + เพิ่ม preset "TikTok 1min" (3-4 scenes), "YouTube 3min" (8-10), "Short 30s" (2-3)
UI tweak ~30 min
AA

Long story tools (แบ่ง EP / +10 scenes) AA

เพิ่มปุ่ม "+10 scenes" ต่อ EP + "แบ่ง EP เป็น 2 EP" สำหรับ long story (หนังสั้น 3-5 นาที)
UI feature ~1h

🧪 Test Suite 10 cases

รวม 241/246 PASS (98%) — TC-01 + TC-08 ติด Veo IP ban (Cloudflare 1010) — รัน local เพื่อ MP4 จริง

1

TC-01 Video Generation 4/5

Step 5 blocked by Veo JWT IP ban — ทดสอบจาก browser ใน local ได้
2

TC-02 Script Generation 42/42 PASS

20 new director fields + UI render + 7 meta-blocks
3

TC-03 Veo Single-Scene 57/57 PASS

1 scene = 1 prompt, max 1500 chars, cross-genre
4

TC-04 Refs Management 41/41 PASS

INGRADAID slots (ref1/ref2/ref3) + cross-project + cross-tenant
5

TC-05 Projects CRUD 25/25 PASS

Full project lifecycle via UI + API — CREATE/READ/UPDATE/DELETE + 404 + 401 + idempotent
7

TC-07 Jobs Async (WS + cancel) 28/28 PASS

REST API + WebSocket + UI — submit/list/cancel + race-free WS progress events
8

TC-08 Video Gen v2 (IP-aware) 9/9 PASS

Direct genaipro + Director Studio proxy + UI — POST/Poll/Download MP4 — 1010 ban-aware (run from local for actual video)
9

TC-09 Signup Flow 18/18 PASS

POST /api/auth/signup + UI signup tab + display_name + auto-login + logout + duplicate detection
10

TC-10 Login Flow 24/24 PASS

POST /api/auth/login + UI login tab + session persistence + logout + multi-user (admin + new) + tab switching
11

TC-11 Real UI Walkthrough 22 screenshots

Pure UI walkthrough — 6 phases (signup + logout + 2x login + app explore) — 22 รูปจริงทุก state + 168 network calls + 3 real findings