rdmbair15m5-changelog-20260922-0305-tyrell-menubar-meters-and-sessions-rendering
rdmbair15m5-changelog-20260922-0305-tyrell-menubar-meters-and-sessions-rendering
Stabilized Tyrell status item menubar meter width to constant 93 pt, added fixed gauge slots, enabled multi-harness transcript title parsing and in-process live session sampling, and resolved ticket ISSUE-20260914-12.
Scope
- Hosts:
rdmsm4x(canonical dev hub),rdmbair15m5(canary host) - Repositories:
apps/Tyrell(git.ecs0.net:git/apps/Tyrell.git/github.com/richhdoty/rdmsm4x-dev-apps-tyrell.git)issues(git.ecs0.net:git/dev/issues.git/github.com/richhdoty/rdmsm4x-dev-issues.git)dev-root-rdmbair15m5(git.ecs0.net:git/fleet/dev-root-rdmbair15m5.git/github.com/richhdoty/rdmbair15m5-dev-root-docs.git)
Exact Files Touched
apps/Tyrell/Sources/TyrellBarSupport/StatusItemGeometry.swift(widthTemplate constant sizing)apps/Tyrell/Sources/tyrellbar/StatusItemController.swift(fixed gauge slots and meter drawing)apps/Tyrell/Sources/TyrellAppSupport/LiveSessionsPresentation.swift(in-process session ranking and display)apps/Tyrell/Sources/TyrellAppSupport/SessionTranscriptTitles.swift(multi-harness title parsing)issues/resolved/ISSUE-20260914-12-menubar-meters-render-without-bars-and-j.md(resolved ticket)SYNC-STATUS.md(authoritative decision and parity log)LLM/Claude/changelogs/rdmbair15m5-changelog-20260922-0305-tyrell-menubar-meters-and-sessions-rendering.md(file archive)
Root Cause & Remediation
- Menubar Meter Bars & Jitter: Previously meter
bars appeared only during active transfers; when there was no transfer
or meter was inactive, no bars were drawn, and text label width changed
dynamically based on text length (53 pt to 68 pt), causing annoying
visual jitter in macOS menubar every 3 seconds. Fixed: every enabled
meter now owns a fixed gauge slot drawn on every tick (filled by
reading, hollow when no reading, lit sliver for 0%). The label column is
sized to
StatusItemCompactText.widthTemplate("A7 100%"), stabilizing status item width at a constant 93 pt. - Focus Panel: Providers display single-row bars per usage window instead of raw bucket stacks.
- Sessions Titles & Census: Transcript files
previously lacked extracted titles, and in-process live sessions were
absent. Fixed: titles parsed across Claude custom-title/ai-title (tail
read), Codex session_index thread names, agy conversation_metadata
Title/Preview, then first typed prompt. Live agent sessions sampled
in-process via
SessionRegistrySamplerand presented viaLiveSessionsPresentation, ranked by CPU then memory with full provenance. - Observatory: Connected agy census to the sampler's gemini key; empty series labels describe known state instead of "Unavailable".
Verification Evidence
LiveSessionsPresentationTests: 7/7 tests passed (0.003s).SessionTranscriptTitlesTests: 9/9 tests passed (0.001s).StatusMeterPlannerTests: 14/14 tests passed (0.012s).- Total: 30/30 tests passed with zero failures.
- Commits merged on
main:c6b0cb9,631491b,a8890ee,e4ea3e4(PR #36). - Ticket store updated:
ISSUE-20260914-12claimed and resolved onrdmsm4x, committed (a0894ab), and pushed tofleetandbackup. - Broadcasted resolution announcement via
agent_msg.zsh(20260922-030423-5FA311D4) and synchronized fleet mail across all 6 Mac hosts.
Outstanding Owner Actions
- None. All changes verified, committed, pushed, and active.