Commit Graph
3 Commits
Author SHA1 Message Date
西风逍遥游 f372842f87 feat(script): enrich script error handling and reporting
- Capture full call stack + throw-site in the Squirrel runtime error hook
  (new common/ScriptError.{h,cpp}) and surface it through ScriptException
  (line/column/function/stackTrace/reported accessors).
- Runtime installs its own error hook and drives execute() with a raw
  sq_call, fixing a null-deref when DevTool's hook replaces ssq's default
  runtime error handler.
- Compile errors now carry source line/column plus a snippet with caret.
- REPL/MCP/Debugger eval paths return the real error text instead of
  generic 'compile failed' / 'runtime failed'.
- Run() skips a second DevTool report for hook-reported script errors.
- ECS bootstrap compile/run failures are printed instead of swallowed.
2026-08-20 23:13:19 +08:00
西风逍遥游 f62261a779 fix(engine): validate Runtime stack size before VM creation; centralize DevTools singletons
Runtime now validates stackSize before constructing the Squirrel VM (previously the check ran after member initialization). DevTools singletons (AiPanel/ConsolePanel/McpServer/RenderVision) keep their process-immortal lifetime - required by the detached stdio reader thread and cross-singleton calls - but move from scattered raw new leaks to a single documented Immortal holder.
2026-08-19 22:44:52 +08:00
西风逍遥游 0b8cfca633 feat(devtools): add runtime console and REPL 2026-08-17 22:06:16 +08:00