feat(webui): add workspace file tree with preview and chat attach - #1519
Open
dark605 wants to merge 1 commit into
Open
feat(webui): add workspace file tree with preview and chat attach#1519dark605 wants to merge 1 commit into
dark605 wants to merge 1 commit into
Conversation
Add a sidebar file tree for browsing the session workspace, a workbench preview panel backed by Monaco, and the ability to attach files or text selections to the conversation composer. - Gateway: new files API (list/read workspace files) registered in the gateway app, with MemoryError guards returning 500 - WebUI: new WorkspaceFiles domain module plus a Gateway Adapter over the private HTTP transport; the sidebar store, preview panel, and chat attach flow consume the seam instead of raw authenticated fetches - Preview: idempotent Monaco editor lifecycle (v-show container), reload keyed by path/workspace/openNonce, right-click context menu for copy / add-to-composer, no flicker during streaming turns - Tabs: file tabs join the 8-tab workbench eviction limit; an overflow dropdown exposes tabs hidden by compression; the collapse button is removed in favor of the dropdown and single-tab row - i18n: full key parity across en, zh-Hans, ja, fr, de, es - Tests: fileTreeModel, fileTree store, WorkspaceFiles adapter, Workbench Host, preview panel, workbench store, and gateway workspace files API
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.
Summary
Changes
src/opensquilla/gateway/files_api.py) for listing/reading workspace files, registered in the gateway app, with MemoryError guards returning 500WorkspaceFilesdomain module + Gateway Adapter over the private HTTP transport (adapters/gateway/workspaceFiles.ts); the sidebar store, preview panel, and chat attach flow consume the seam instead of raw authenticated fetches, satisfying the exact-transport-debt guardTesting
npm run buildpasses all architecture/theme/i18n guardspytest tests/test_gateway/test_workspace_files_api.py— 21 passedChannelsViewtests intermittently time out under full-suite parallel load on slow machines; verified they also fail the same way on pristineupstream/main(passes in isolation) — pre-existing, unrelated to this PR