test(workspace): preserve member-facing access without repositories

Apply T-717 item6/thread7 user decision: settings stay owner-controlled, ordinary non-owner viewing remains permitted under existing authentication. Add real HTTP assertions for non-owner workspace reads and absent management permissions; existing owner-only repository/deletion mutations and anonymous rejection remain exercised. Replace obsolete pending-policy documentation; no production authorization policy change.

Validation: targeted repository-free HTTP test, root cargo check, yoi-workspace-server 639 lib + 11 bin tests, canonical OpenAPI freshness, cargo fmt and baseline/HEAD diff checks pass. Rust tests/documentation only; rendered UI and previously reviewed browser/visual evidence are unchanged.
This commit is contained in:
2026-10-08 19:41:41 +09:00
parent f8a9555626
commit 148da0b3d9
2 changed files with 24 additions and 5 deletions
+17
View File
@@ -45115,6 +45115,23 @@ mod tests {
StatusCode::OK,
)
.await;
let non_owner_workspace = request_json_authenticated(
app.clone(),
"GET",
&format!("{scoped}/workspace"),
None,
&foreign,
StatusCode::OK,
)
.await;
assert_eq!(
non_owner_workspace["permissions"]["manage_repositories"],
false
);
assert_eq!(
non_owner_workspace["permissions"]["delete_workspace"],
false
);
request_json(
app.clone(),
"GET",