feat(api): implement pull request assignees and check runs endpoints

- Add PR assignees API with list, assign, and unassign operations
- Add PR check runs API with create, update, list, and delete operations
- Implement workspace finding by ID method in core service
- Update .gitignore to include .env* files while preserving .env.example
- Reorder imports in multiple API files for consistency
- Format function calls with proper line breaks across PR-related APIs
- Add wiki revision comparison endpoint with proper schema definitions
- Integrate new API modules into main application setup
- Add health check, readiness probe, and OpenAPI endpoints to main server
- Configure session management and dependency injection in main application
This commit is contained in:
zhenyi
2026-06-07 23:01:05 +08:00
parent 3a22c4265d
commit d98e4d59e3
38 changed files with 40821 additions and 53 deletions
+10 -4
View File
@@ -1,12 +1,12 @@
use actix_web::{web, HttpResponse};
use actix_web::{HttpResponse, web};
use serde::Deserialize;
use utoipa::IntoParams;
use crate::api::response::{ApiResponse, ApiErrorResponse};
use crate::api::response::{ApiErrorResponse, ApiResponse};
use crate::error::AppError;
use crate::models::prs::PrMergeStrategy;
use crate::service::pr::merge_strategy::UpdateMergeStrategyParams;
use crate::service::AppService;
use crate::service::pr::merge_strategy::UpdateMergeStrategyParams;
use crate::session::Session;
#[derive(Debug, Deserialize, IntoParams)]
@@ -92,7 +92,13 @@ pub async fn update_merge_strategy(
) -> Result<HttpResponse, AppError> {
let strategy = service
.pr
.pr_update_merge_strategy(&session, &path.workspace_name, &path.repo_name, path.number, params.into_inner())
.pr_update_merge_strategy(
&session,
&path.workspace_name,
&path.repo_name,
path.number,
params.into_inner(),
)
.await?;
Ok(HttpResponse::Ok().json(ApiResponse::new(strategy)))
}