Skip to main content

Mountain/Command/
SourceControlManagement.rs

1
2//! # SourceControlManagement (Tauri command surface)
3//!
4//! Bridges SCM-viewlet UI requests from Sky to the
5//! `SourceControlManagementProvider` registry. Seven wire-bound
6//! commands, each in its own file (file name = Tauri command
7//! identifier per the Naming-Convention exception):
8//!
9//! - `GetAllSourceControlManagementState` - full snapshot of every provider,
10//!   group, and resource.
11//! - `GetSCMResourceChanges` - per-provider resource list.
12//! - `ExecuteSCMCommand` - commit / push / pull dispatch (stub).
13//! - `GetSCMBranches` - branch picker data (stub).
14//! - `CheckoutSCMBranch` - switch working tree (stub).
15//! - `GetSCMCommitHistory` - Timeline-panel commit log (stub).
16//! - `StageSCMResource` - git add / unstage (stub).
17//!
18//! Errors propagate as `Result<Value, String>` for direct frontend
19//! display.
20//!
21//! VS Code reference:
22//! `vs/workbench/contrib/scm/common/scm.ts`,
23//! `vs/workbench/contrib/scm/browser/scmView.ts`,
24//! `vs/workbench/services/scm/common/scmService.ts`.
25//!
26//! ## Planned Work
27//!
28//! - Route every stub through the trait for progress reporting, cancellation,
29//!   and proper error surfacing
30//! - Stash / merge / rebase operations
31//! - Multi-provider concurrency
32//! - Diff viewing and resource decoration
33//! - SCM input-box interactions
34
35pub mod CheckoutSCMBranch;
36
37pub mod ExecuteSCMCommand;
38
39pub mod GetAllSourceControlManagementState;
40
41pub mod GetSCMBranches;
42
43pub mod GetSCMCommitHistory;
44
45pub mod GetSCMResourceChanges;
46
47pub mod StageSCMResource;