Skip to content

Latest commit

 

History

History
73 lines (50 loc) · 6.99 KB

verification.md

File metadata and controls

73 lines (50 loc) · 6.99 KB

验证记录

以下区分本地自动化验收与生产环境基础检查。本次版本包括自定义主题色、课堂删除和自由文本反馈润色;真实账户的完整使用流程和真实模型调用仍需本人在网页验收。

检查 结果
前端自动化测试 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 与真实密钥均未纳入源码。

课堂删除的本地验收(2026-10-16)

以下检查使用临时内存 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 配置完成后验证:

  1. 本人真实登录,创建或修改自己的学生与课堂记录,并检查退出后无法访问。
  2. 在两台设备同时登录,验证真实实时同步及并发修改冲突提示。
  3. 使用真实模型生成课后反馈、学情建议和月报,核对生成内容、审核保存及导出结果。

模拟测试通过和 Edge Function 部署成功,不代表以上真实使用流程已经完成验收。