emrg: GUI projects panel (rant 2026-08-13T14:10:14 P5) - #747
Merged
Conversation
argszero
commented
Aug 13, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle (1/3)
Reviewed the full diff for P5 (projects panel) of the GUI redesign (rant 14:10:14):
- Projects nav now opens a functional panel reusing existing daemon IPC (listProjects/listProjectSessions/registerProject/removeProject) — zero daemon changes, correct reuse of the multi-session surface.
- List renders name/path/relTime last-active + ⚡ auto-evolve badge derived from tasks.yml (task config.project match) — truthful signal, cheap one extra IPC via Promise.all.
- View-sessions drill-down + ← back, session click switches with project cwd (resume semantics); add-project via picker→registerProject; delete reuses protected-project guard + confirm, with the confirmDeleteProject onDone refactor keeping both dialog and panel refresh paths correct.
- openProjectsPanel() lazy-loads on nav open, matching the P3 tasks-panel pattern; i18n zh/en keys added; explicit list.innerHTML='' clear guards the test-sandbox innerHTML fidelity gap.
- New smoke test covers list + badge pos/neg + drill-down/back + delete flow; GUI 234→235. Verified locally: 777 pytest + 235 GUI + import + CLI + doc-count guard green; CI test + test-windows PASS (31678798539), mergeStateStatus CLEAN.
argszero
commented
Aug 13, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle (1/3)
Reviewed full diff for P5 (GUI projects panel, rant 14:10:14, 213+/6-):
- openProjectsPanel follows the established openTasksPanel pattern (switchPanel + load, error → Chat.addSystemMessage); nav click handler extended for projects.
- renderProjectList: listProjects + listTasks (auto_evolve badge from tasks whose config.project matches), path + relTime hints, per-row 查看会话/删除 actions; protected-project guard (emrg/emrg-task) + confirm dialog preserved; confirmDeleteProject extended with optional onDone callback (backward-compatible default → showOpenSessionDialog).
- showProjectSessionsInPanel: back button + listProjectSessions + switchSession with projectPath (cwd follows project — verified switchSession forwards opts.projectPath to IPC).
- Dependencies verified: relTime defined in utils.js:81 (window export); IPC listProjects/listProjectSessions/registerProject present in preload.js; removeProject wired in confirmDeleteProject.
- i18n: 14 zh/en keys, consistent naming; index.html panel placeholder filled with hint + add button.
- Tests: new P5 smoke test covers positive (emrg badge from evolution task) AND negative (docs no badge) states, sessions view, back, delete-refresh; ELEMENT_IDS updated. npm test 235/235 pass locally; Agent.md counts synced; doc-count guard green; CI test + test-windows SUCCESS (31678798539); mergeStateStatus CLEAN.
Contributor
|
I tested this PR end-to-end and it's clean. GUI projects panel (rant 14:10:14 P5): |
argszero
commented
Aug 13, 2026
argszero
left a comment
Owner
Author
There was a problem hiding this comment.
✅ LGTM — cycle (3/3)
Third independent-cycle approval. Head unchanged since 2/3; CI test + test-windows PASS (31678798539), mergeStateStatus CLEAN. P5 projects panel — list + auto-evolve badge + relTime, view-sessions drill-down, add/delete with protected guard, zero daemon changes, GUI 234→235. Reached 3 consecutive ✅ — merging.
pm25coder
pushed a commit
to pm25coder/emrg
that referenced
this pull request
Aug 13, 2026
…r.smoke per maintainer review
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 free
to 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.
GUI redesign (host rant 2026-08-13T14:10:14) — P5 projects panel.
The sidebar 项目 (projects) nav entry now opens a functional projects panel (previously a placeholder). Reuses the existing daemon IPC surface from the multi-session work (listProjects / listProjectSessions / registerProject / removeProject) — zero daemon changes.
Features
relTime), plus an ⚡ auto-evolve badge for projects that have a task in tasks.yml targeting them (fromlistTasks).emrg/emrg-taskread-only) + confirm dialog +removeProject(disk data kept); panel refreshes after removal.confirmDeleteProjectgained an optionalonDonecallback so both the open-session dialog and the panel can refresh their own list.openProjectsPanel()lazy-loads the list on nav open (same pattern as P3 tasks panel); i18n zh/en keys added.Tests