feat: add workspace repository registration API

This commit is contained in:
2026-08-31 18:12:08 +09:00
parent 456a06f194
commit 7d09b20445
4 changed files with 319 additions and 11 deletions
+21
View File
@@ -62,6 +62,27 @@ pub struct RepositorySource {
pub uri: String,
}
/// Browser/user intent for registering one Repository in a Workspace.
///
/// The Server parses and canonicalizes `source`; callers cannot assert a
/// transport classification or supply credential material through this DTO.
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
#[serde(deny_unknown_fields)]
pub struct CreateWorkspaceRepositoryRequest {
pub repository_id: String,
pub display_name: String,
pub source: String,
#[serde(default)]
pub default_ref: Option<String>,
}
#[derive(Debug, Clone, Serialize, Deserialize, PartialEq, Eq)]
pub struct CreateWorkspaceRepositoryResponse {
pub workspace_id: String,
pub repository_id: String,
pub replayed: bool,
}
#[derive(Debug, Clone, Copy, PartialEq, Eq, Serialize, Deserialize)]
#[serde(rename_all = "snake_case")]
pub enum RepositoryObservedStatus {