6 Commits

Author SHA1 Message Date
panda c2cae5665e fix: replace complex bat scripts with Python launcher + minimal bat wrappers
Root cause: Windows batch files written with LF endings caused cmd.exe to
misparse labels and Chinese characters, producing garbled "not a command"
errors. The Python launcher avoids encoding issues entirely.

- start.py: reliable cross-platform launcher (kill ports, start 3 services,
  wait for health, print status)
- start.bat / start_all.bat: minimal 4-line ASCII wrappers
- stop.bat: inline Python for port-based process killing
2026-05-23 09:32:32 +08:00
panda c8924c625c fix: rewrite startup scripts with reliable helpers, stderr logging, visible windows
- Replace /MIN (hidden window) with normal windows so errors are visible
- Redirect stderr to logs/*.log for post-mortem
- Extract killport/wait_health/wait_port into callable helpers
- Use !N! (delayed expansion) for retry counters
- stop.bat now shows which PIDs it kills with port labels
- Remove nested-quote issue by cd'ing before npm start
2026-05-23 09:25:45 +08:00
panda 9a4f51d378 fix: add retry limit to startup wait loops to prevent infinite hang
Each service wait loop now fails after 30 retries (~60s) instead of
spinning forever when a port is occupied by a stuck process.
Also added cleanup label that kills partially-started services on failure.
2026-05-23 09:20:55 +08:00
panda 40adf50702 fix: add chcp 65001 and .venv check to startup scripts 2026-05-23 09:15:44 +08:00
panda 751df5c4a9 fix: resolve quoting issue in start_all.bat frontend launch, add node_modules check 2026-05-23 09:11:53 +08:00
panda 1e5ce9725b feat: FastAPI+SSE API server, JRXML auto-reorder, session integrity fixes 2026-05-22 17:53:59 +08:00