gates: lib/ui has no surface gate — tools/ui_surface_check.sh (every export tested + documented, SDL fields under real input) was chartered but never built
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 68/100
Research direction
Read hq/roles/ui-toolkit.md and hq/ROSTER.md, then inspect tools/ui_surface_check.sh's intended inputs alongside lib/ui*.eigs, tests/test_ui.eigs, docs/STDLIB.md, and src/ext_gfx.c. Check the make gfx CI leg and the existing #599 field context first. Done means the script is wired into CI, starts red with a ratchet, and its selftest planted fault goes red.
Written by the indexing model from the issue text.
Description
The UI Toolkit Engineer charter (hq/roles/ui-toolkit.md, hq/ROSTER.md) names tools/ui_surface_check.sh --selftest as its mechanical pass bar:
- every top-level
defineinlib/ui*.eigsasserted intests/test_ui.eigsand documented indocs/STDLIB.md; - every SDL field
src/ext_gfx.cdecodes covered by a real-input check in themake gfxleg; - the gate proven by a planted fault (re-delete #599's
Uint32 statefield → red).
The script does not exist (found 2026-09-22 during the prompt audit). Meanwhile the surface grew from 280 top-level defines (e4e4dd4, at hire) to 380 today, with no ratchet. #599 is the incident the gate exists for: a missing SDL struct field broke every real mouse drag in every gfx app while tests/test_ui.eigs stayed green because it stubs gfx_*.
Bar: the script exists, is wired into CI, starts red with a ratchet (never baselined at today's number), and its selftest plant goes red.
- Dominant language
- C
- Stars
- 3
- Forks
- 7
- Avg merge
- 4h 15m
- Merged PRs (30d)
- 106
Getting set up
Starts the project's dev container in your browser, under your own GitHub account.
- Ships a Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from InauguralSystems/EigenScript
-
area:lint-tooling bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
InauguralSystems/EigenScript#1340 ·
Maintainers usually reply within 1 day
-
area:stdlib found-by:code-review kind:silent-wrong
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
InauguralSystems/EigenScript#1338 ·
Maintainers usually reply within 1 day
-
area:lint-tooling found-by:critic kind:docs-drift
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
InauguralSystems/EigenScript#1335 ·
Maintainers usually reply within 1 day
-
area:ci found-by:critic kind:gate-defect
Difficulty 2/5 1-3 hours Newbie friendliness 86/100
InauguralSystems/EigenScript#1311 ·
Maintainers usually reply within 1 day
-
enrolment: decide test_gc_runner_controls.py (exempt vs enrol) and whether floors need a ratchetOpenarea:gates found-by:critic kind:decision
Difficulty 2/5 1-3 hours Newbie friendliness 65/100
InauguralSystems/EigenScript#1280 · 1 comment ·
Maintainers usually reply within 1 day
All issues in InauguralSystems/EigenScript
Similar issues
-
Difficulty 1/5 Under an hour Newbie friendliness 92/100
sandialabs/seacas#945 ·
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
ARM-software/sysarch-acs#556 · 1 comment ·
-
Difficulty 2/5 1-3 hours Newbie friendliness 68/100
Maintainers usually reply within 1 day
-
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
Maintainers usually reply within 1 day
-
bug needs triage
Difficulty 2/5 1-3 hours Newbie friendliness 78/100
netdata/netdata#24062 · 1 comment ·
Maintainers usually reply within 1 day