← Blog
APPS · VIDEO · 0.6.0

Lumen Apps Suite: SDF Terminal AA Proof, Coreutils AA, colbrowser, netstat/scope/ticker

June 22, 2026 · sigil-apps / sigil-video · Sigil-Docs
apps desktop lumen terminal aa 0.6.0

A burst of app-layer work: sigil-video proves the SDF terminal AA pipeline (sdf_term_cell+sdf_term_row) end-to-end in a unit test (SDFTERM-AA-PASS, closes the sigil-os#15 pre-condition); sigil-apps closes the AA coreutils story (all 8 builtins via cov_blend, pwd+cp now included); and three new libwin Lumen apps land — netstat (SRDX transport panel), scope (waveform viewer with Bhaskara I integer sin/cos), and ticker (session checkpoint surface) — plus colbrowser, a Finder-style 3-column file manager backed by the live FS tag substrate. (sigil-video d7a2164; sigil-apps 18500b0, 8ca7cfa, 5933838, 02f22b1)

Lumen libwin primitive showcase
Lumen libwin primitive showcase — lw_title/lw_badge/lw_value/lw_rule/lw_console

SDF terminal AA unit test

tests/test_sdf_term_aa.sg (sigil-video d7a2164) proves sdf_term_cell and sdf_term_row are ready for the Apps termwin AA integration (sigil-os#15). The test builds SDF glyphs for 'H' and 'I' using an all-solid atlas — every texel is 255, giving full coverage on blit.

Three assertions:

SDFTERM-AA-PASS cell=ok row=ok blank=ok

This seals the contract between sigil-video's SDF renderer and sigil-apps' terminal host. The renderer commits: any slot > 0 blits at full coverage when the atlas is solid. The host commits: it will never pass idx=0 for a visible glyph. The blank case is structurally enforced, not a convention.


AA coreutils complete

sigil-apps 02f22b1 closes the AA coreutils story by adding the two remaining builtins:

The full AA coreutils demo now runs all 8 builtins in sequence: echo → pwd → ls → mkdir → cat → cp (+verify cat) → mv → rm → ls. Every byte of output flows through glyph_cov→cov_blend. sigil-apps#1 (AA terminal gate) is fully closed.


netstat / scope / ticker

sigil-apps 18500b0 lands three new Lumen libwin apps, replacing the earlier raw overlay demos with proper WM-composited windows using the full lw_* primitive vocabulary.

netstat/scope/ticker Lumen panels
netstat/scope/ticker Lumen panels — SRDX transport, waveform scope, event ticker

netstat — SRDX 0.6.0 transport panel

Version/port header row, followed by listen/recv/send/close rows each with ok badges. Syscall transcript in the console panel at the bottom. Cap chip in the corner: net authority. Shows the full SRDX 0.6.0 transport lifecycle in Lumen design language.

scope — waveform viewer

CH1 (sin) and CH2 (cos) curves computed via the Bhaskara I integer approximation — no floats, 2 full cycles rendered. Dark plot area with grid lines and degree axis labels (0°, 90°, 180°, 270°, 360°). Proper Lumen window chrome with title bar and border. Integer-only math throughout: the Bhaskara I formula sin(x) ≈ 4x(180−x) / (40500 − x(180−x)) gives sub-1% error with no FPU dependency.

ticker — event ticker panel

Overlay slots/frames/input/transport rows with ok/run/done/wired badges. Surfaces the session's checkpoint data in Lumen design language — a live log of what the WM compositor has confirmed.

All three apps use lw_title / lw_label / lw_value / lw_badge / lw_rule / lw_console / lw_capchip via the WM compositor. AA Inter typography throughout.


libwin layout fix

sigil-apps 8ca7cfa fixes a layout regression in all three panels: window heights were undersized by approximately 40px because the title chrome was not counted in the height budget. This caused the console transcript and bottom rows to clip at the window edge.

Fix: 22px row stride enforced consistently throughout all three panels. Badge x-positions pulled in from the window edge to clear value-text overlap, maintaining a ~70px gap between value text and badge. All three panels re-verified in the WM compositor after the fix.


colbrowser — 3-column Finder-style file manager

colbrowser 3-column file manager
colbrowser: 3-column Finder-style file manager backed by fs_query (syscall 91)

sigil-apps 5933838 lands colbrowser: a Finder-style 3-column file manager as a libwin Lumen scene. This is the deepest app-layer integration of the FS tag substrate yet — a full 3-panel browser where the third column is a live cap-scoped FS query surface.

Locations column
Left pane — bookmarks and filesystem shortcuts. Static list rendered via lw_listrow.
Contents column
Center pane — live directory listing via readdir (syscall 20). Selected item highlighted via lw_listrow selection state.
Detail column
Right pane — selected item detail, tag chips via lw_capchip, and a fs_query (syscall 91) console showing the tag-substrate query transcript. fs_tag_list (syscall 94) output rendered in the console panel.

Registered in build.sh. The cap-scoped query transcript in column 3 means every file browse session is auditable: the user sees exactly which FS substrate calls fired and what they returned, in the Lumen console style, without leaving the file manager.