fix(tui): scope session list to current directory (#8836)#8886
fix(tui): scope session list to current directory (#8836)#8886shoaibansari5398 wants to merge 1 commit intoanomalyco:devfrom
Conversation
|
The following comment was made by an LLM, it may be inaccurate: Based on the search results, I found one potentially related PR: Potential Duplicate:
This PR seems to have already attempted to solve the session filtering issue. You should check if PR #6724 is still open or if it was closed/merged, as the current PR #8886 may be re-implementing or completing the same functionality. All other search results either returned the current PR itself (#8886) or unrelated features. |
|
This is from Claude: Thanks for working on this! I noticed this PR only filters at the UI display level in the session list dialog. There are a few other entry points where cross-directory sessions can still leak through:
The API already supports See my comment on #8836 for more details on the approach. |
00637c0 to
71e0ba2
Compare
f1ae801 to
08fa7f7
Compare
What does this PR do?
Fixes #8836 - Scopes the session list (/sessions command) to the current working directory.
Problem: When using /sessions or opening the session list dialog, it displayed ALL sessions from ALL directories/projects instead of only sessions that belong to the current working directory.
How did you verify your code works?
Root Cause: The
dialog-session-list.tsx
component only filtered sessions by parentID === undefined (to exclude child sessions) but didn't filter by the session's directory field.
Solution: Added a directory filter to only show sessions where session.directory === currentDirectory:
diff
const options = createMemo(() => {
const today = new Date().toDateString()
return sessions()
How did you verify your code works?
Code review confirmed that Session.Info schema has a directory field that stores the working directory when a session is created
The filter uses the same path source (sync.data.path.directory) that's used elsewhere in the TUI (e.g.,
useDirectory
context)
The || process.cwd() fallback ensures the filter still works if sync.data.path.directory is not yet populated