emrg: GUI open-session dialog — name-or-id display + last-active time (rant 2026-08-21T11:41:07) - #910
Merged
Conversation
… (rant 2026-08-21T11:41:07)
argszero
commented
Aug 21, 2026
argszero
left a comment
OwnerAuthor
There was a problem hiding this comment.
✅ LGTM — cycle
Fresh review of the open-session dialog changes:
showProjectSessionsrenderss.title || s.session_id(name-or-id, full id, no truncation) per the sidebar rule from #903; removes the_t("app.unnamed")fallback for untitled sessions.- Last-active time via
relTime(s.updated_at)(returns "" for missing/invalid), joined with the current-session marker using existinghelp-hintstyling. - New smoke test covers: titled → title shown; untitled → full session id shown (no "未命名"); relTime text for 5-min and 2-hour
updated_at; missingupdated_at→ id only, no time. - Agent.md GUI breakdown synced to real counts (256 total: renderer smoke 126→127, integration 7→8 pre-existing lag).
- Verified: GUI npm test 256 (248 pass + 8 skipped, live daemon owns port), Python pytest 987 passed + 1 skipped incl. doc-count guards, import + CLI OK. CI test + test-windows PASS.
1/3.
argszero
commented
Aug 21, 2026
argszero
left a comment
OwnerAuthor
There was a problem hiding this comment.
✅ LGTM — cycle
Re-review (head 2ac7f98 unchanged since previous review):
showProjectSessionsrenderss.title || s.session_id— titled sessions show title, untitled sessions show full session id (no truncation, no "未命名" fallback), consistent with the sidebar name-or-id rule (#903).- Last-active time:
relTime(s.updated_at)returns "" for missing/invalid dates (safe), joined with the current-session marker viamarks.join(" · ")in the existinghelp-hintstyle. - Test covers all three cases: titled (title + 5-min relTime), untitled (full id + 2-hour relTime, no 未命名), and missing
updated_at(id only, no time). - Agent.md GUI breakdown synced to real node test-runner counts (256: renderer smoke 126→127, integration 7→8 pre-existing lag corrected).
- Verified locally: GUI npm test 256 (248 pass + 8 skipped, live daemon owns fixed port), Python pytest 987 passed + 1 skipped (incl. doc-count guards), import + CLI OK. CI test + test-windows PASS.
2/3.
pm25coder
commented
Aug 21, 2026
Collaborator
Independent test report (Contributor, pm25coder): |
argszero
commented
Aug 21, 2026
argszero
left a comment
OwnerAuthor
There was a problem hiding this comment.
✅ LGTM — cycle
3rd consecutive review (head 2ac7f98, MERGEABLE/CLEAN, CI test + test-windows PASS):
- Fresh local verification on the branch: GUI npm test 256 total (248 pass / 0 fail / 8 skipped — live daemon owns fixed port), pytest 987 passed + 1 skipped, import + CLI OK.
- showProjectSessions renders s.title || s.session_id — titled sessions show title, untitled sessions show the full session id (no truncation, no "未命名" fallback), consistent with the sidebar name-or-id rule (#903).
- Last-active time via relTime(s.updated_at) (helper exists in utils.js, exposed on window); current-session marker preserved, joined with '·'.
- Tests cover titled/untitled/missing-updated_at rows incl. negative no-time case; Agent.md GUI counts synced (254→256).
3/3.
Uh oh!
There was an error while loading. Please reload this page.
argszero pushed a commit
that referenced
this pull request
Aug 21, 2026
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
Fixes rant
2026-08-21T11:41:07— GUI open-session dialog ("Open Session" → pick project → session list) two improvements:Name-or-id display:
showProjectSessionsnow renderss.title || s.session_idinstead ofs.title || _t("app.unnamed")— a titled session shows its title, an untitled session shows its full session id (no truncation, no "unnamed" fallback), consistent with the sidebar name-or-id rule (emrg: GUI session list — scoped highlight + name-or-id display (rants 22:04:02 + 22:04:57) #903).Last-active time: each session row now shows a relative last-active time (
relTime(s.updated_at), e.g. "5 分钟前" / "5 min ago") using the existinghelp-hintstyle and theupdated_atfield already returned bySession.list_sessions. The current-session marker ("当前") is preserved and joined with the time.Changes
emrg/gui/renderer/js/dialogs.js—showProjectSessions()row rendering (name-or-id + relTime hint)emrg/gui/test/renderer.smoke.test.js— new test: titled → title; untitled → full id (no "未命名"); relTime shown forupdated_at; missingupdated_at→ id onlyAgent.md— GUI test breakdown synced to real counts (256: renderer smoke 126→127, integration 7→8 — the integration count already lagged by one before this PR)Verification
npm test— 256 tests, 248 pass, 8 skipped (live daemon owns fixed port), 0 failuv run pytest tests/— 987 passed + 1 skipped (incl. doc-count guards)python -m emrg --help+ import OK