以下区分本地自动化验收与生产环境基础检查。本次版本包括自定义主题色、课堂删除和自由文本反馈润色;真实账户的完整使用流程和真实模型调用仍需本人在网页验收。
| 检查 | 结果 |
|---|---|
| 前端自动化测试 | 10 项通过 |
| SQL 测试 | 80 项通过 |
| AI 逻辑与反馈格式测试 | 19 项通过 |
| AI 请求处理测试 | 13 项通过 |
| Deno 类型检查 | 通过 |
| 完整依赖安全审计 | 生产与开发依赖各严重级别均为 0 |
浏览器测试使用本地网站和模拟请求,覆盖 Auth、REST、AI 接口与实时连接;没有调用真实 Supabase 或模型服务。Ant Design 改版重新检查了五个视图在 1440px、390px 和 320px 宽度下的布局,整页没有横向溢出;宽表格在卡片内部滚动。
本次 Ant Design 改版的两套浏览器操作验收共通过 16 组、240 次模拟请求,覆盖学生/知识目录/掌握情况/课堂的增改与归档恢复、必填及日期校验、并发版本冲突恢复、反馈编辑复制与重复保存、两种月报生成方式、固定快照导出及断网恢复。没有未拦截的外网请求、运行时异常或 Ant Design 弃用警告;错误路径测试中出现的资源加载失败对应刻意模拟的 502 和断网。页面与表单按需加载。
- 登录前不显示业务内容;缺少所有者授权时不读取业务表。
- 学生年级必填;课堂知识点版本在勾选时固定,刷新后不会漂移,冲突会阻止覆盖。
- 课后反馈可编辑和重复保存,保存反馈不会重复修改掌握情况。
- 学生、课堂、知识目录、掌握状态与月报筛选正常。
- 月报保存后只读;实际下载的 Word 和打印内容使用报告快照,不受后续档案或课堂修改影响。
- 已查看桌面及 320px、390px 手机截图;未发现页面横向溢出,长课堂表单和月报导出按钮可访问。
- 打印样式另以三页中文 PDF 检查,长段落跨页、页边距及文字完整性正常。Word 已验证原生 OOXML 结构;本地缺少文档渲染器,未完成 Word 独立视觉渲染。
浏览器 QA 使用的临时数据、截图、Word/PDF 与真实密钥均未纳入源码。
以下检查使用临时内存 Postgres 与本地模拟接口,没有读取、创建或删除真实教学数据。删除功能与主题、反馈润色一同发布,后端已应用 lesson-deletion.sql。
- SQL/RLS 检查由 53 项增加至 80 项:覆盖增量脚本重复执行、匿名与非本人拒绝、跨归属拒绝、必需版本、过期确认、删除失败事务回滚、课堂及反馈移除、当前掌握判断保留、只解除相关来源、旧编辑无法恢复已删除记录、旧月报快照不变与新月报排除已删除课堂。
- 10 组浏览器操作通过,共 202 次模拟请求:覆盖打开和取消确认、重复点击仅一次请求、正确携带打开时版本、删除成功刷新列表及概览、版本冲突后重新确认、另一设备已删除、断网重试、操作成功但读取失败、末页页码调整、实际模拟 DELETE 通知自动刷新,以及 390px/320px 手机入口和弹窗。
- 已查看桌面及两种手机宽度截图;删除操作在固定操作列可直接找到,弹窗无横向溢出。没有运行时异常、组件警告或未拦截的外网请求;资源失败日志均来自刻意模拟的 409、404 与断网。
- TypeScript、10 项前端测试和 Vite 构建通过。托管项目的删除 RPC、仅本人删除策略、匿名禁止调用、月报禁止删除与空 search_path 已核验,安全 advisor 未新增问题;真实删除及两设备同步仍需本人账户验收。
- 7 组浏览器操作、63 次模拟请求通过:预设和 HEX 自选色、缩写与错误输入、刷新记忆、跨标签同步、真实色盘键盘选色、恢复默认、全站强调色、警示色保留、极浅及极深颜色、损坏或无法保存偏好,以及 390px/320px 手机界面。
- 反馈润色检查覆盖当前草稿传递、空白草稿使用课堂事实、失败保留已有文字、继续编辑和复制、只在手动保存时写入,以及手机端流程。没有运行时异常、组件警告或未拦截的外网请求。
- AI 纯逻辑 19 项及请求处理 13 项通过:自由段落和换行原样返回,不追加称呼、日期、标题、固定段数或缺失观察;草稿最多 12000 字,中文上限可完整传输,请求仍限制在 64 KiB;成绩分数和提分承诺继续拒绝,数学分数、公式、页码、题号与耗时正常保留。
ai-assistant已更新为 v9 ACTIVE,保持服务端身份验证、本人白名单、用户 JWT 与 RLS;新接口仍只返回待审核草稿,不自动保存或发送反馈。
- 数据库结构、RLS 策略及实时发布配置已验证。
- 匿名 REST 请求返回 401。
- AI Edge Function 部署状态为 ACTIVE。
- AI 函数正确来源的 OPTIONS 请求返回 204;缺少登录、伪造 JWT 均返回 401,不允许的来源返回 403。
- 唯一已确认的非匿名账户已绑定工作台所有者;此记录不包含账户标识或邮箱。
- 已核验公开注册关闭、匿名登录关闭。
课后反馈已改为自然文本润色,固定模板的拼接与三段结构要求已移除。回归检查使用模拟模型输出,不代表真实模型本次已完成调用。
错误提示回归覆盖已损坏的中文消息按稳定错误码显示,以及未知乱码的通用提示;润色提示要求保持事实,有必要时仅作待核实的可能性分析。模拟接口检查确认 DeepSeek 请求开启 JSON Output,豆包请求不携带该平台参数。
安全顾问对 private.ai_usage 的 RLS 无策略 INFO 提示对应内部表启用 RLS 默认拒绝,且已撤销普通客户端访问权限;这是刻意的 deny-all 设计,表仍受保护。
性能顾问当前仅有 10 项 unused_index INFO,对应新空库尚无使用记录的索引。
leaked_password_protection WARN 仍存在:当前免费方案未提供泄漏密码保护。官方说明与处理方式见密码强度和泄漏密码保护。此项未标记为已修复。
以下项目需要本人账户及模型 Secrets 配置完成后验证:
- 本人真实登录,创建或修改自己的学生与课堂记录,并检查退出后无法访问。
- 在两台设备同时登录,验证真实实时同步及并发修改冲突提示。
- 使用真实模型生成课后反馈、学情建议和月报,核对生成内容、审核保存及导出结果。
模拟测试通过和 Edge Function 部署成功,不代表以上真实使用流程已经完成验收。