ludic.ui: a rule's selector text is interned - {sel} was sel itself (a template of one string hole passes the string through) and lss_rule frees sel, so rules <id> named whatever reused the bytes; smoke.txt's tree order follows the document, and smoke.py runs the transcript

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
Orkun ÇAKILKAYA 2026-09-29 20:10:13 +03:00
parent e74656c372
commit a436cfbe35
4 changed files with 38 additions and 3 deletions

View file

@ -10,7 +10,8 @@ ludic ui-preview [--font DIR] # the host on stdin/stdout; DIR holds the gam
```
**The wire protocol is [protocol-v1.md](protocol-v1.md)**, frozen: every request, every reply and
every line format. `smoke.txt` is a scripted session with what each reply must contain.
every line format. `smoke.txt` is a scripted session with what each reply must contain, and `smoke.py` runs it
(`python3 tools/ui-preview/smoke.py tools/ui-preview/smoke.txt bin/ludic-ui-preview`).
## What it does