mirror of
https://github.com/block/buzz.git
synced 2026-11-07 09:52:03 +00:00
feat(desktop): make Projects workspaces selectable (#6368)
## Summary Projects workspaces now support consistent selection across projects, repositories, reviews, tasks, and channel results. A user can collect related entities, see the active selection without losing their current workspace, and pass a bounded, injection-safe representation to an agent for discussion. Detail views now keep repository source and availability explicit while preserving contextual actions across local and remote workspaces. Missing or inaccessible repositories produce a recoverable state instead of leaving the workspace ambiguous. This is part 2 of the Projects v6 stack. Parts 3 and 4 will add context-aware collaboration and navigation/detail-page polish. ### Related issue Related: #6335 ### Testing - Full pre-push gate passed: file-size checks, Biome, TypeScript, Desktop unit tests, Tauri checks, and Rust tests - Project context safety suite: 9/9 passed, including bounded untrusted overview data and hidden-context stripping - Updated Playwright coverage exercises grouped selection, selection-aware agent context, repository source states, and detail actions --------- Signed-off-by: Thomas Petersen <thomasp@squareup.com>
This commit is contained in:
@@ -354,6 +354,18 @@ export async function getProjectRepoSyncStatus(input: {
|
||||
return fromRawProjectRepoSyncStatus(status);
|
||||
}
|
||||
|
||||
export async function openProjectRepositoryFolder(input: {
|
||||
reposDir?: string | null;
|
||||
projectDtag: string;
|
||||
cloneUrl: string;
|
||||
}): Promise<void> {
|
||||
await invokeTauri("open_project_repository_folder", {
|
||||
reposDir: input.reposDir ?? null,
|
||||
projectDtag: input.projectDtag,
|
||||
cloneUrl: input.cloneUrl,
|
||||
});
|
||||
}
|
||||
|
||||
type RawProjectTerminalResult = {
|
||||
path: string;
|
||||
cloned: boolean;
|
||||
|
||||
Reference in New Issue
Block a user