feat: [ENG-2823] render folder metadata in webui context tree#676
Conversation
|
Claude finished @ncnthien's task in 3m 1s —— View job Claude Code Review
SummarySmall, well-scoped fix. The root cause is correctly identified as a client-side over-filter ( Correctness: ✅
Security: ✅ Tests: ✅ (with minor strengthening suggestion inline)
Code quality: ✅
Perf: Score: 4.5 / 5Tight, surgical fix with proper TDD coverage, clear PR description, and correctly-identified root cause. Half a point off for: (1) the unit tests can't actually validate the folder-path-to-tree-oid claim that the whole fix rests on (manual verification is the only check), (2) one JSDoc inconsistency between the two sibling endpoints, and (3) the test-strengthening opportunity in the mix-paths case. Inline comments:
|
|
Claude finished @ncnthien's task in 2m 21s —— View job Claude Code Review (post-update)
Review of follow-up commit
|
Summary
Fixes the Updated by / Last Modified columns showing
-for every folder row on the WebUI context tree dashboard (incl. root view). ENG-2823.context-detail-panel.tsx): drop thetype === 'blob'filter so folder paths are included in the metadata request (blobPaths→metadataPaths).@campfirein/byterover-packages→1.0.5): drop thenode.type === "blob"guard inFolderDetailso folders render their values.context-tree-events.ts): clarifypathsaccepts file or folder paths.context-tree-handler.test.ts): three newGET_FILE_METADATAcases pin the folder-path contract — paths flow through togitService.logunchanged, response shape matches files.No server production-code change needed: the handler is already path-agnostic, and
isomorphic-git'slog({filepath})resolves the path to a tree-oid for folders (latest commit touching any descendant) or a blob-oid for files, transparently.Test plan
npm test— 7853 passing, 16 pendingnpm run typecheck— clean (root + webui)npm run lint— 0 errors on changed filesnpm run build— clean (tsc + Vite + PWA)brv webui, navigate to root context view, confirmUpdated by/Last Modifiedpopulate for each folder (latest commit touching any descendant)