Skip to content

emrg: GUI workspace panel P3.2 — artifact tab registers write/edit files only (rant 2026-08-11T12:20:35) - #668

Merged
argszero merged 1 commit into
masterfrom
feature/gui-workspace-panel-p32-artifacts
Aug 11, 2026
Merged

emrg: GUI workspace panel P3.2 — artifact tab registers write/edit files only (rant 2026-08-11T12:20:35)#668
argszero merged 1 commit into
masterfrom
feature/gui-workspace-panel-p32-artifacts

Conversation

@argszero

Copy link
Copy Markdown
Owner

P3.2 of the workspace-panel rant: re-scope the 产物 (Artifacts) tab from WorkBuddy-P1 tool-output cards to generated-file registration.

P3.2 Artifact registration

  • addToolResult now registers only write/edit successes with an extractable path (bash/read tool cards removed per design decision 3; errors skipped)
  • Dedupe by path: same file rewritten → existing entry updated and moved to top (R6-①)
  • Per-session cap 100 (R7-⑦); record shape {path, name, tool_name, elapsed} stored in the sid bucket (emrg: result-panel per-session artifact isolation (render gate + switch restore) #666's per-session isolation preserved)
  • Improved extractFilePath (R4-①): prefer the first /-prefixed absolute path segment — Created /abs/path (N characters) (write_tool) and Made 1 replacement in /abs/path (edit_tool) both hit; drops the extension-whitelist dependency so Makefile/.env/Dockerfile extract correctly
  • Artifact rows: filename + full path, click → opens the file in a viewer tab (P2.2 framework); system-open stays in the viewer header

Tests: WorkBuddy P1 card test replaced with P3.2 semantics (write-only registration + error skip); #666's isolation test updated to write-tool payloads; +2 new (dedupe+cap-100, no-extension extraction + row→viewer-tab click). GUI 200 → 202; pytest 694 ✓; doc guard 3/3 ✓; import + --help ✓.

Next: P3.3 full viewer (highlight/md/images + CSP img-src file:) or P2.3 WebContentsView HTML preview.

…les only (dedupe by path, improved extractFilePath) (rant 2026-08-11T12:20:35)

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle

P3.2 re-scope verified: write/edit-only registration with dedupe-by-path + per-session cap 100, improved extractFilePath (first absolute-path segment — no extension dependency, Makefile/.env work), artifact row click → viewer tab. Local: GUI 202/202 ✓ (incl. dedupe/cap-100/no-extension tests), pytest 694 ✓, doc guard 3/3 ✓, import + --help ✓. CI test run green.

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle

Reviewed P3.2 (artifact tab re-scope to write/edit file registration) in a local worktree at branch head e993c81:

  • addToolResult: now registers only write/edit successes with an extractable path (errors + bash/read tool cards dropped per design decision 3); dedupe by path (existing entry updated + moved to top); per-session cap 100 preserved (R7-⑦); background-session events still bucket-only (renderArtifacts restore on switch — #666 isolation preserved).
  • extractFilePath (R4-①): prefers the first /-prefixed absolute path segment — verified both write forms (Created /proj/Makefile (N characters), Updated /Users/x/foo.txt (N chars)), edit forms (Made 1 replacement in /abs/path, Made 3 replacements in /proj/.env), and extension-less files (Makefile/.env/Dockerfile) all extract correctly; negative cases (bash output, no abs path, empty) return none and are skipped.
  • renderArtifactRow: filename + full path, click → openFileTab (viewer tab via P2.2 framework); system-open stays in viewer header; MAX_ITEMS (50) DOM cap vs 100 bucket retained.
  • Verification: GUI suite 202/202 (incl. 2 new tests: dedupe+cap-100, no-extension extraction + row→viewer-tab click; #666 isolation test updated to write-tool payloads), pytest 694/694, doc guard 3/3, node --check clean. CI test PASS (31462619984). Mergeable CLEAN.

No issues found.

@argszero argszero left a comment

Copy link
Copy Markdown
Owner Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

✅ LGTM — cycle (3rd)

Re-verified against branch head e993c81: write/edit-only artifact registration with dedupe-by-path + cap-100, improved extractFilePath (first abs-path segment, Makefile/.env work), row click → viewer tab. Local GUI 202/202 ✓ pytest 694 ✓ doc guard 3/3 ✓. CI test run green. Merge conditions met (3 consecutive ✅ from different cycles).

@argszero
argszero merged commit 07de9be into master Aug 11, 2026
1 check passed
argszero added a commit that referenced this pull request Aug 11, 2026
…acts re-scope) (#669)

Co-authored-by: EMRG Evolution <emrg@argszero.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant