2 Commits
Author SHA1 Message Date
西风逍遥游 c70245c9e4 feat(graphics): add stateless drawText API 2026-08-28 20:45:42 +08:00
西风逍遥游andCursor Agent 2d7b9f9287 feat(devtools): script error tracing with dynamic slicer (#4)
* feat(devtools): add dynamic slicer for script error tracing

Record call/return/line and Def/Use data-flow in CallGraph, attach a
Squirrel native debug hook via DevTool, and emit a Weiser-style backward
slice report on failures when running with `eve run --debug`.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* fix(devtools): use one-in-one-out ring buffer for trace events

Replace half-window drops with a deque ring buffer: when full, each new
event evicts exactly one oldest event, with monotonic ids and index cleanup.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* feat(devtools): add render-pipeline error tracing

Introduce common RenderTrace hooks and a RenderFlow slicer so Graphics
passes/binds/draws are attributed on failure. Wire RenderSystem 2D/3D,
mark Exception sites, and merge render reports into DevTool --debug output.

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

* test(devtools): expand CallGraph and RenderFlow coverage

Add extensive unit tests for source locations, data-flow slicing,
ring-buffer eviction, nested passes/binds, Exception hooks, and RAII
scopes (54 cases / 202 assertions under ^devtools\.).

Co-authored-by: 西风逍遥游 <sunxfancy@gmail.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
2026-08-09 01:00:43 +08:00