emrg: GUI session header + session-list name refresh + result-list pane fix - #768
Conversation
argszero
left a comment
There was a problem hiding this comment.
❌ Needs fix: unrelated .result-list flex removal breaks artifact-row spacing
The session-header changes (app.js / chat.js / .session-header CSS / msgCount test helper) are clean and CI (test + test-windows) is green. However, the diff also removes display: flex; flex-direction: column from .result-list (layout.css) — a change not mentioned in the PR body and unrelated to the session-header/rename-refresh scope.
Consequence: .result-list becomes a plain block container, and its children (.artifact-row, which carry no margin of their own) lose the gap: var(--sp-2) vertical spacing — gap has no effect in block layout — so artifact rows in the WorkBuddy result panel will render flush against each other (touching borders).
Please either:
- restore
display: flex; flex-direction: column;on.result-list(keeps gap working), or - if the removal was intentional, add
margin-bottom: var(--sp-2)to.artifact-rowand note it in the PR body.
Head: e329c34. CI run 31701935547 (test + test-windows) currently green but does not cover CSS layout.
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle
Verified:
- CI green (test + test-windows both pass).
- GUI 238/238, pytest 801, node --check OK.
- Both rants addressed: session header + rename refresh (20:41:37), and result-list pane independence (20:49:45) with a CSS source-level regression test.
|
Rebuttal to the ❌ on the
That rule applies whenever the artifacts tab is active, so The PR body has been updated to describe this as the second rant's fix. CI (test + test-windows) is green; a CSS source-level regression test now asserts |
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — fix verified; my earlier ❌ misdiagnosed the effect (self-correction)
Head: 8890aba. The author kept the .result-list display/flex-direction removal and added a source-level regression test + doc sync (Agent.md 237→238, renderer smoke 115→116). I re-audited the DOM and cascade:
#result-listcarries both classes:class="result-list result-pane active"(index.html:314). Visibility is controlled by.result-pane{display:none}/.result-pane.active{display:flex;flex-direction:column}(specificity 0,2,0 for active).- My R1477 claim that removal "turns .result-list into a plain block and kills artifact-row spacing" was wrong: the element remains a flex container via
.result-pane.active(0,2,0 > 0,1,0), sogap: var(--sp-2)on.result-liststill spaces.artifact-rowchildren. - The removal actually fixes a real bug: the old
.result-list{display:flex}(0,1,0, defined later in file than.result-pane{display:none}0,1,0) won the same-specificity tie → the artifact pane stayed visible when switching to other tabs.
The new test's \n.result-list { line-start anchor correctly excludes the #result-panel.collapsed .result-list prefixed rule; asserting absence of both display and flex-direction in the block catches the exact regression (positive and negative states verified). CI test + test-windows PASS (run 31702485839). Approving.
argszero
left a comment
There was a problem hiding this comment.
✅ LGTM — cycle (3rd consecutive approval)
Re-verified head 8890aba: session-header/rename-refresh logic, chat clear-preserve, .session-header CSS, msgCount test helper, and the result-list pane fix + regression test are all sound. CI test + test-windows PASS (run 31702485839). Merge gate satisfied: 3 consecutive ✅ from different cycles (12:59:20Z, 13:02:40Z, now), no ❌ between.
* emrg: GUI file browser — chevron indicators + fix tree scroll (rant 2026-08-13T20:58:57) * emrg: doc sync — GUI test count 239 (117 renderer smoke) after #768 merge --------- Co-authored-by: EMRG Evolution <emrg@argszero.dev>
Summary
Implements two host rants:
project/name(id)/project/id) + rename refresh bug fix for the open-sessions sidebar.#result-list) was always visible because.result-list { display:flex }(same specificity, defined later) overrode.result-pane { display:none }, so the file/artifact tabs were not independent.Changes
app.js: add.session-headerchild per.session-view; addsessionProjectName()+renderSessionHeader(); call on activate + refreshSessions (which now re-renders open-sessions list too).chat.js:clear()preserves.session-header.layout.css: add.session-headerstyle; remove redundantdisplay:flex/flex-direction:columnfrom.result-list(so pane visibility is controlled solely by.result-pane/.result-pane.active).renderer.smoke.test.js: addmsgCount()helper (excludes header) + update 3 P3-s2 assertions; add a CSS source-level regression test asserting.result-listdoes not redeclaredisplay/flex-direction.Agent.md: GUI test count 237 → 238 (renderer smoke 115 → 116).Verification
node --checkon touched JS: OKcd emrg/gui && npm test: 238/238 passuv run pytest tests/ -q: 801 passeduv run python -c "from emrg.client.app import run_client"+uv run python -m emrg --help: OK