Skip to main content

Mountain/Command/
SourceControlManagement.rs

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