diff --git a/frontend/README.md b/frontend/README.md index bda1eb4..b3c5bde 100644 --- a/frontend/README.md +++ b/frontend/README.md @@ -46,3 +46,15 @@ POST前先保存 UUID,双击共用请求,网络超时/刷新重试复用原 运行指标仅来自完整持久化报告,null显示“—”;诊断和源码按纯文本显示。 `pnpm test` 覆盖草稿、幂等重试、轮询期限/隐藏/终态/失效响应和401处理, 已纳入 `make check-frontend`;真实浏览器编译/判题另在受限独立 VM 验收。 + +管理入口 `/admin/index.html#/problems` 共用同源 Cookie、CSRF 与实时权限 API。 +`admin/` 管理路由和维护页面,`api/adminProblems.ts` 使用生成 DTO;普通用户进入明确 +403 页,权限失效或离页终止请求。题目、版本历史、本人导入和审计采用服务端游标分页。 + +题包只接受有界单层 ZIP,导入 UUID 在上传前绑定当前账号、SHA-256 和字节数。 +浏览器只持久保存 UUID/摘要等重试信息,不保存文件正文、密码或管理员能力。 +状态查询每 2 秒一次,最多 90 次/3 分钟;错误、终态、离页停止,可核对原操作。 +发布、下架和恢复使用独立稳定 UUID 与版本/状态前置条件;409 后重新读取当前状态, +网络不确定时核对原回执。候选题面、公开样例与预算按安全文本预览,隐藏工件不下发。 +发布产生新不可变版本;下架的受理任务与本人历史保留。其他管理业务区明确未实现。 +事件测试验证本地凭据与生命周期,不代替独立 VM 中的真实 Cookie/HTTP/浏览器验收。 diff --git a/frontend/src/admin/AdminApp.vue b/frontend/src/admin/AdminApp.vue index 3c81b9f..a35916d 100644 --- a/frontend/src/admin/AdminApp.vue +++ b/frontend/src/admin/AdminApp.vue @@ -1,9 +1,49 @@