SpecialX
|
2c8e229e00
|
refactor: P1-3/4/6 解耦修复 - 拆分 auth/users 文件 + notifications 反向依赖
|
2026-06-18 02:21:44 +08:00 |
|
SpecialX
|
62be0b9404
|
refactor: P0-1/2/4 解耦修复 - 拆分过耦合文件 + dashboard 解耦
|
2026-06-18 01:45:55 +08:00 |
|
SpecialX
|
220061d62e
|
refactor: P0-3/5/6 解耦修复 - 循环依赖/通知分发/课表写入口
P0-3: 修复 shared/lib <-> auth 循环依赖
- audit-logger.ts, change-logger.ts, auth-guard.ts, classes/data-access.ts
改用动态 import("@/auth") 打破静态模块级循环依赖
- shared/lib 不再静态导入 @/auth
P0-5: messaging 改用 notifications dispatcher
- messaging/actions.ts 的 sendMessageAction 改用 sendNotification
替代直接调用 createNotification
- 用户通知偏好(SMS/微信/邮件/站内)现在被正确尊重
P0-6: 统一 classSchedule 写入口到 scheduling/data-access
- 新增 insertClassScheduleItem/updateClassScheduleItemById/
deleteClassScheduleItemById/replaceClassSchedule 统一写入函数
- classes/data-access.ts 的三个 schedule 写入函数委托给 scheduling
- scheduling/actions.ts 的 applyAutoScheduleAction 改用 replaceClassSchedule
- 移除 scheduling/actions.ts 中不再使用的 classSchedule/createId 导入
验证: tsc --noEmit 0 errors, npm run lint 0 errors
|
2026-06-17 23:44:02 +08:00 |
|
SpecialX
|
6585e10c6f
|
feat(P2): 实现质量保障类5项功能(无障碍/视觉回归/通知渠道/漏洞扫描/灾备)
## 新增功能
### 1. 屏幕阅读器兼容性增强(a11y)
- 无障碍工具库:src/shared/lib/a11y.ts
- aria-live Hook:src/shared/hooks/use-aria-live.ts
- a11y 组件:skip-link/visually-hidden/focus-trap/aria-status
- 增强 UI:table.tsx 系统性 ARIA role,dialog.tsx aria-modal
- 审计文档:docs/accessibility/a11y-audit.md(WCAG 2.1 AA 清单)
### 2. 视觉回归测试
- 测试套件:tests/visual/(homepage + 3 个 dashboard)
- 3 视口(desktop/tablet/mobile)× 2 主题(light/dark)
- 动态元素遮罩,避免误报
- playwright.config.ts 新增 visual-chromium 项目
- 文档:docs/testing/visual-regression.md
### 3. 短信/微信推送渠道集成
- 新模块:src/modules/notifications/
- 4 个渠道:SMS(阿里云/腾讯云)、WeChat(公众号)、Email(SMTP)、In-App
- 分发器按用户偏好并行多渠道发送
- 外部 SDK 动态 import,Mock 模式开发可用
- 文档:docs/notifications/channels.md
### 4. 漏洞扫描 CI 集成
- CI security-scan job:npm audit + Snyk + Trivy FS + OWASP ZAP
- 独立工作流 security.yml:每周一深度扫描 + 容器镜像扫描
- 配置:suppressions.json + .trivyignore
- 本地脚本:security-scan.sh/ps1
- 文档:docs/security/scanning.md(SLA 分级)
### 5. 灾备方案
- 脚本:backup-verify/backup-offsite-sync/dr-drill/failover/health-check
- CI 增强:备份后校验+异地同步,每周灾备演练
- 独立工作流 dr-drill.yml:每周一凌晨 4 点自动演练
- 文档:docs/dr/dr-plan.md(RTO 4h/RPO 24h)+ dr-runbook.md(6 故障场景)
## 验证
- npx tsc --noEmit:0 错误
- npm run lint:0 错误 0 警告
|
2026-06-17 20:18:29 +08:00 |
|
SpecialX
|
b86255f0ea
|
feat(P2): 实现选课管理、考试监考、学情诊断三大功能模块
## 新增功能模块
### 1. 选课管理(elective)
- 新增表:electiveCourses、courseSelections
- 新增权限:ELECTIVE_MANAGE/ELECTIVE_READ/ELECTIVE_SELECT
- 支持先到先得 + 抽签两种选课模式
- admin/teacher/student 三端页面
### 2. 考试监考(proctoring)
- exams 表扩展:examMode/durationMinutes/antiCheatEnabled 等字段
- 新增表:examProctoringEvents
- 新增权限:EXAM_PROCTOR/EXAM_PROCTOR_READ
- 教师监考面板 + 学生端防作弊监控
- API:/api/proctoring/event 接收事件上报
### 3. 学情诊断报告(diagnostic)
- 新增表:knowledgePointMastery、learningDiagnosticReports
- 新增权限:DIAGNOSTIC_MANAGE/DIAGNOSTIC_READ
- 基于提交答案自动计算知识点掌握度
- 生成个人/班级诊断报告(强项/弱项/建议)
- 雷达图可视化
## 其他改动
- 项目规则:单文件行数限制从 300 行调整为企业级规范(组件≤500/Actions≤800/硬上限1000)
- scripts/seed.ts:消除全部 any 类型,定义内部类型,0 lint 错误
- 架构文档 004/005 同步更新三个新模块
- 迁移文件 0001_heavy_sage.sql 生成
## 验证
- npx tsc --noEmit:0 错误
- npm run lint:0 错误 0 警告
|
2026-06-17 19:12:51 +08:00 |
|
SpecialX
|
3b6272c99d
|
feat: 完成 P1 全部功能 + 修复 proxy 导出 + 切换 MySQL 端口至 14013
## P1 功能(20 项)
- 站内消息系统、家长仪表盘、学生考勤管理
- Excel 导入导出、用户批量导入、成绩导出
- 排课规则+自动排课+课表调整
- 成绩趋势+对比分析、密码安全策略、速率限制
- 数据变更日志、文件预览+存储策略、全文检索
- 依赖审计集成 CI、数据库定时备份、E2E 测试完善
- 通知偏好管理
## 基础设施修复
- src/proxy.ts: 将 middleware 导出重命名为 proxy(Next.js 16 要求)
- .env: MySQL 端口从 13002 切换至 14013
- scripts/create-db.ts: 新增数据库初始化脚本
## 架构文档同步
- 004_architecture_impact_map.md 和 005_architecture_data.json
完整记录所有新增表、模块、路由、权限、依赖关系
|
2026-06-17 13:44:37 +08:00 |
|
SpecialX
|
125f7ec54c
|
refactor: RBAC权限系统重构 + UI组件拆分 + 测试修复 + 架构文档
CI / build-deploy (push) Has been cancelled
- RBAC: 新增30个权限点、DataScope行级权限、requirePermission守卫,所有57+ Server Action接入权限校验
- UI拆分: exam-form(1623行→11文件)、textbook-reader(744行→7文件),均降至300行以内
- 测试: 新增5个单元测试文件(19用例),修复4个集成测试文件(38用例全部通过)
- 架构文档: 新增架构影响地图(004/005)、标准功能清单(006)、差距审计报告(007)
- 项目规则: 架构图优先规则,改码必同步图
- 安全: rehype-sanitize净化、AES加密API Key、权限路由守卫
- 无障碍: skip-link、aria-label、prefers-reduced-motion
- 性能: next/font优化、next/image、代码分割
|
2026-06-16 23:38:33 +08:00 |
|
SpecialX
|
99f116cb64
|
=test_update_homework_tests_and_work_log
CI / build-deploy (push) Has been cancelled
|
2026-03-19 13:16:49 +08:00 |
|
SpecialX
|
eb08c0ab68
|
sync-docs-and-fixes
|
2026-03-03 17:32:26 +08:00 |
|
SpecialX
|
dcc946f48c
|
fix-lint
|
2026-02-25 15:27:14 +08:00 |
|
SpecialX
|
bb4555f611
|
feat: enhance textbook reader with anchor text support and improve knowledge point management
|
2026-01-16 10:22:16 +08:00 |
|
SpecialX
|
9bfc621d3f
|
feat(classes): optimize teacher dashboard ui and implement grade management
|
2026-01-14 13:59:11 +08:00 |
|
SpecialX
|
ade8d4346c
|
feat(dashboard): optimize teacher dashboard ui and layout
- Refactor layout: move Needs Grading to main column, Homework to sidebar
- Enhance TeacherStats: replace static counts with actionable metrics (Needs Grading, Active Assignments, Avg Score, Submission Rate)
- Update RecentSubmissions: table view with quick grade actions and late status
- Update TeacherSchedule: vertical timeline view with scroll hints
- Update TeacherHomeworkCard: compact list view
- Integrate Recharts: add TeacherGradeTrends chart and shared chart component
- Update documentation
|
2026-01-12 11:38:27 +08:00 |
|
SpecialX
|
8577280ab2
|
feat: 首次登录引导与注册修复
|
2026-01-12 10:49:30 +08:00 |
|
SpecialX
|
15fcf2bc78
|
BUG FIX && 权限验证
|
2026-01-09 14:10:04 +08:00 |
|
SpecialX
|
57807def37
|
完整性更新
现在已经实现了大部分基础功能
|
2026-01-08 11:14:03 +08:00 |
|
SpecialX
|
13e91e628d
|
Merge exams grading into homework
Redirect /teacher/exams/grading* to /teacher/homework/submissions; remove exam grading UI/actions/data-access; add homework student workflow and update design docs.
|
2025-12-31 11:59:03 +08:00 |
|
SpecialX
|
f8e39f518d
|
feat(teacher): 题库模块(QuestionBank)
工作内容
- 新增 /teacher/questions 页面,支持 Suspense/空状态/加载态
- 题库 CRUD Server Actions:创建/更新/递归删除子题,变更后 revalidatePath
- getQuestions 支持 q/type/difficulty/knowledgePointId 筛选与分页返回 meta
- UI:表格列/筛选器/创建编辑弹窗,content JSON 兼容组卷
- 更新中文设计文档:docs/design/004_question_bank_implementation.md
|
2025-12-30 19:04:22 +08:00 |
|
SpecialX
|
f7ff018490
|
feat: exam actions and data safety fixes
|
2025-12-30 17:48:22 +08:00 |
|
SpecialX
|
e7c902e8e1
|
Module Update
|
2025-12-30 14:42:30 +08:00 |
|