feat: implement source link endpoints and enforce policy rules
All checks were successful
Test / test (push) Successful in 1m56s
All checks were successful
Test / test (push) Successful in 1m56s
- Add POST/GET source link endpoints for file sharing via permanent URLs - Enforce max_size check in PATCH /file/content to prevent size limit bypass - Support is_private (proxy) vs public (302 redirect) storage modes - Replace all ResponseBase(data=...) with proper DTOs or 204 responses - Add 18 integration tests for source link and policy rule enforcement Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -55,7 +55,7 @@ async def router_admin_get_groups(
|
||||
async def router_admin_get_group(
|
||||
session: SessionDep,
|
||||
group_id: UUID,
|
||||
) -> ResponseBase:
|
||||
) -> GroupDetailResponse:
|
||||
"""
|
||||
根据用户组ID获取用户组详细信息。
|
||||
|
||||
@@ -71,9 +71,7 @@ async def router_admin_get_group(
|
||||
# 直接访问已加载的关系,无需额外查询
|
||||
policies = group.policies
|
||||
user_count = await User.count(session, User.group_id == group_id)
|
||||
response = GroupDetailResponse.from_group(group, user_count, policies)
|
||||
|
||||
return ResponseBase(data=response.model_dump())
|
||||
return GroupDetailResponse.from_group(group, user_count, policies)
|
||||
|
||||
|
||||
@admin_group_router.get(
|
||||
|
||||
Reference in New Issue
Block a user