fffiloni commited on
Commit
75f0c8b
·
verified ·
1 Parent(s): d0be82c

Upload 6 files

Browse files
Files changed (2) hide show
  1. README.md +5 -0
  2. app.py +10 -2
README.md CHANGED
@@ -332,3 +332,8 @@ The worker writes `runs/<run_id>/artifact_manifest.json` as the source of truth
332
  ## v171 notes
333
 
334
  Run deletion now supports an explicit opt-in option to delete the associated generated Space for build runs. Validation run deletion remains run-artifact-only by default. The Run Storage card also summarizes bucket setup errors so fresh installs remain visually clean.
 
 
 
 
 
 
332
  ## v171 notes
333
 
334
  Run deletion now supports an explicit opt-in option to delete the associated generated Space for build runs. Validation run deletion remains run-artifact-only by default. The Run Storage card also summarizes bucket setup errors so fresh installs remain visually clean.
335
+
336
+
337
+ ## v187 note
338
+
339
+ Signed-out users can see the public eval archive status for this ASF instance, while management actions remain restricted to the instance owner/admins.
app.py CHANGED
@@ -282,8 +282,16 @@ def register_custom_routes(fastapi_app: FastAPI) -> None:
282
 
283
  @fastapi_app.get("/api/eval-archive/status")
284
  async def api_eval_archive_status(request: Request): # type: ignore[no-untyped-def]
285
- ctx = _oauth_context_from_request(request)
286
- return JSONResponse(public_eval_config(ctx["username"]))
 
 
 
 
 
 
 
 
287
 
288
  @fastapi_app.post("/api/eval-archive/activate")
289
  async def api_eval_archive_activate(request: Request): # type: ignore[no-untyped-def]
 
282
 
283
  @fastapi_app.get("/api/eval-archive/status")
284
  async def api_eval_archive_status(request: Request): # type: ignore[no-untyped-def]
285
+ # Public instance-level status: signed-out users should still see whether
286
+ # the operator eval archive is enabled. Management permissions remain
287
+ # computed only when an OAuth user is present.
288
+ username = None
289
+ try:
290
+ ctx = _oauth_context_from_request(request)
291
+ username = ctx.get("username")
292
+ except HTTPException:
293
+ username = None
294
+ return JSONResponse(public_eval_config(username))
295
 
296
  @fastapi_app.post("/api/eval-archive/activate")
297
  async def api_eval_archive_activate(request: Request): # type: ignore[no-untyped-def]