Skip to content

refactor(extensions): group UI and workspace support - #741

Open
benvinegar wants to merge 1 commit into
mainfrom
refactor/group-extension-ui-support
Open

refactor(extensions): group UI and workspace support#741
benvinegar wants to merge 1 commit into
mainfrom
refactor/group-extension-ui-support

Conversation

@benvinegar

Copy link
Copy Markdown
Member

Summary

  • move terminal-facing extension integration from src/ui/lib/ into src/ui/ext/ while retaining descriptive filenames
  • move renderer-free workspace policy and filesystem confinement into src/extensions/workspace/
  • include the shared extension document reader added on current main, update all consumers, and refresh architecture documentation

Testing

  • bun run typecheck
  • bun run lint
  • bun run test
  • bun run check:pack
  • focused extension, workspace, file-view, highlight, and keyboard-mode tests
  • formatting check for all changed files

This PR description was generated by Pi using gpt-5.6-terra

@vercel

vercel Bot commented Aug 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Actions Updated (UTC)
hunk-web Ignored Ignored Preview Aug 14, 2026 8:14pm

Request Review

@greptile-apps

greptile-apps Bot commented Aug 14, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

The PR reorganizes extension integration by moving terminal-facing helpers into src/ui/ext/ and renderer-independent workspace policy into src/extensions/workspace/.

  • Updates consumers, tests, and architecture documentation to use the new ownership boundaries.
  • Preserves the workspace policy and filesystem-confinement behavior while correcting relative imports.
  • Retains colocated tests for relocated modules.

Confidence Score: 5/5

The PR appears safe to merge with no actionable defects identified in the relocation.

All examined consumers use the new paths, moved modules retain valid relative imports, and the new workspace placement preserves the repository’s dependency and renderer-separation boundaries.

Important Files Changed

Filename Overview
src/ui/App.tsx Updates extension UI and workspace imports to their new ownership-specific locations without changing application behavior.
src/extensions/workspace/extensionWorkspace.ts Relocates the renderer-free workspace policy and adjusts its extension-events import for the new directory.
src/extensions/workspace/workspaceWriteGuard.ts Relocates filesystem confinement unchanged alongside the workspace policy it enforces.
src/ui/ext/extensionCommandControls.ts Moves terminal-facing extension command controls from the generic UI library directory and corrects local imports.
src/ui/ext/extensionCommands.ts Moves extension command-table integration into the dedicated UI extension boundary with updated relative imports.
docs/extension-architecture.md Refreshes the extension architecture map to reference the new UI extension and workspace module locations.
docs/source-architecture.md Documents the new src/ui/ext and src/extensions/workspace ownership boundaries.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart LR
  App["src/ui/App.tsx"] --> UIExt["src/ui/ext/*"]
  App --> Workspace["src/extensions/workspace/*"]
  Components["UI components and hooks"] --> UIExt
  UIExt --> Contracts["Extension and core contracts"]
  Workspace --> Core["src/core/*"]
  Workspace --> Events["src/extensions/events.ts"]
  WorkspaceGuard["workspaceWriteGuard.ts"] --> Workspace
Loading

Reviews (1): Last reviewed commit: "refactor(extensions): group UI and works..." | Re-trigger Greptile

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