Skip to content

Navigation Menu

Sign in
Sign up

feat(mqlaunch): living frame — health-tinted panel, Pulse chip, sparklines - #228

Merged
MCamner merged 1 commit into
main from
feat/living-frame
Sep 4, 2026
Merged

feat(mqlaunch): living frame — health-tinted panel, Pulse chip, sparklines #228
MCamner merged 1 commit into
main from
feat/living-frame

Conversation

@MCamner

@MCamner MCamner commented Sep 4, 2026

Copy link
Copy Markdown
Owner

The launcher surface was static text: the frame and the MEM/BAT numbers
looked the same whether the machine was fine or not. Now the last Pulse
verdict drives the picture.

  • surface_panel_color tints the panel border (yellow WARN/INCOMPLETE,
    red FAIL) from the cached mq.pulse.v1 document; PASS, no run, a stale
    run (> MQ_HEALTH_MAX_AGE, default 1h) or MQ_PANEL_HEALTH_TINT=0 keep
    the theme colour. It reads a file — never runs a collector.
  • The dashboard header shows PULSE: WARN 12m ago in place of the static
    "adaptive layout active" text, and the rule under the logo follows the
    same colour.
  • MEM and BAT carry braille sparklines (⣀⣄⣤⣶⣷⣿): up to 12 readings kept
    under ~/.cache/macos-scripts/spark-, appended at most every
    MQ_SPARK_INTERVAL seconds (30) so the line is a trend, not one moment.
    MQ_SPARKLINES=0 turns them off. Plain UTF-8, so NO_COLOR and piped
    output carry the same glyphs.

Two zsh defects found on the first live run, both in mq-ui.sh which the
zsh launcher sources: local path shadowed the array tied to PATH and
emptied it for the rest of the call (cksum, cut: command not found), and
status= assigns to zsh's read-only alias of $?. Renamed to cache_path
and verdict. tests/ui-zsh-surface-smoke.sh sources the library under
zsh with a Pulse fixture and asserts the verdict, an intact PATH, the
tinted frame and a silent stderr; it fails on both original bugs.

Also: mtime via stat -c %Y || stat -f %m (GNU first — on GNU stat -f
is filesystem status and succeeds with a report), and the overall status
is taken with head -n 1 so a single-line document does not also match
an item's status. panel-color-smoke pins MQ_PULSE_CACHE to a missing
file so it tests the theme plumbing, not this machine's last Pulse.

Co-Authored-By: Claude Fable 5.1 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01XPB297VJQ4zSEY32wSVAEh

...lines
The launcher surface was static text: the frame and the MEM/BAT numbers
looked the same whether the machine was fine or not. Now the last Pulse
verdict drives the picture.
- surface_panel_color tints the panel border (yellow WARN/INCOMPLETE,
 red FAIL) from the cached mq.pulse.v1 document; PASS, no run, a stale
 run (> MQ_HEALTH_MAX_AGE, default 1h) or MQ_PANEL_HEALTH_TINT=0 keep
 the theme colour. It reads a file — never runs a collector.
- The dashboard header shows `PULSE: WARN 12m ago` in place of the static
 "adaptive layout active" text, and the rule under the logo follows the
 same colour.
- MEM and BAT carry braille sparklines (⣀⣄⣤⣶⣷⣿): up to 12 readings kept
 under ~/.cache/macos-scripts/spark-<metric>, appended at most every
 MQ_SPARK_INTERVAL seconds (30) so the line is a trend, not one moment.
 MQ_SPARKLINES=0 turns them off. Plain UTF-8, so NO_COLOR and piped
 output carry the same glyphs.
Two zsh defects found on the first live run, both in mq-ui.sh which the
zsh launcher sources: `local path` shadowed the array tied to PATH and
emptied it for the rest of the call (cksum, cut: command not found), and
`status=` assigns to zsh's read-only alias of $?. Renamed to cache_path
and verdict. tests/ui-zsh-surface-smoke.sh sources the library under
zsh with a Pulse fixture and asserts the verdict, an intact PATH, the
tinted frame and a silent stderr; it fails on both original bugs.
Also: mtime via `stat -c %Y || stat -f %m` (GNU first — on GNU stat -f
is filesystem status and succeeds with a report), and the overall status
is taken with `head -n 1` so a single-line document does not also match
an item's status. panel-color-smoke pins MQ_PULSE_CACHE to a missing
file so it tests the theme plumbing, not this machine's last Pulse.
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01XPB297VJQ4zSEY32wSVAEh 
MCamner merged commit 4cc5b07 into main Sep 4, 2026
MCamner deleted the feat/living-frame branch September 4, 2026 14:55
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

1 participant

AltStyle によって変換されたページ (->オリジナル) /