Commit Graph

  • 313bae87bf docs(spec): add enterprise microservices architecture upgrade design main SpecialX 2026-07-07 21:34:15 +08:00
  • e3d132dc1b docs(known-issues): log enterprise architecture normalization work experience SpecialX 2026-07-07 20:25:33 +08:00
  • dbb124bf17 feat: add CI unit test, /api/health, Dockerfile HEALTHCHECK, bundle-analyzer SpecialX 2026-07-07 20:23:03 +08:00
  • 415dde9122 docs(roadmap): populate tech-debt.md with identified and resolved items SpecialX 2026-07-07 20:18:07 +08:00
  • 072c0d52b9 chore: add husky + lint-staged + commitlint for commit quality control SpecialX 2026-07-07 20:17:15 +08:00
  • fb619139e5 docs: add enterprise repository files (LICENSE/CHANGELOG/CONTRIBUTING/SECURITY) SpecialX 2026-07-07 20:14:56 +08:00
  • 031e8a8175 refactor: split 5 oversized files into domain-specific subfiles (0 violations) SpecialX 2026-07-07 20:13:22 +08:00
  • 7f26bb8f9c fix(permissions): fix 9 Server Action permission violations and add recursive CTE for indirect call detection SpecialX 2026-07-07 19:30:49 +08:00
  • 164dcd4c84 feat(arch-scan): mark 12 exempt Server Actions with @public JSDoc tag SpecialX 2026-07-07 19:24:26 +08:00
  • 692e8ef580 feat(arch-scan): add @public JSDoc tag exemption mechanism for Server Actions SpecialX 2026-07-07 19:19:01 +08:00
  • 747344bfe3 chore: snapshot before P0 security phase (backup point) SpecialX 2026-07-07 19:12:33 +08:00
  • 3f68f3eb09 docs(plan): add enterprise architecture normalization implementation plan SpecialX 2026-07-07 19:12:08 +08:00
  • 205b463900 docs(architecture): add enterprise architecture normalization design spec SpecialX 2026-07-07 19:09:40 +08:00
  • 5d9981fd7d docs(architecture): update impact map, data, audit reports, superpowers docs SpecialX 2026-07-07 16:23:35 +08:00
  • 7387d70289 chore(scripts): update check-db-state and seed-grade5-chinese scripts SpecialX 2026-07-07 16:22:54 +08:00
  • fc150e1e14 feat(app,styles): update dashboard pages and global styles SpecialX 2026-07-07 16:22:27 +08:00
  • ebaf03107d feat(modules-admin): update scheduling, school, settings, standards, student, textbooks, users SpecialX 2026-07-07 16:22:07 +08:00
  • 783b8f5484 feat(modules-comm): update messaging, notifications, onboarding, parent, proctoring, questions, rbac SpecialX 2026-07-07 16:21:00 +08:00
  • 524ecade19 feat(lesson-preparation): major update with data-access splits and new components SpecialX 2026-07-07 16:20:34 +08:00
  • 2adf61faa8 feat(modules-assessment): update exams, files, grades, homework, invitation-codes, leave-requests SpecialX 2026-07-07 16:19:46 +08:00
  • d7017f0e30 feat(modules-classes): update classes, course-plans, dashboard, diagnostic, elective, error-book SpecialX 2026-07-07 16:19:08 +08:00
  • b090a815ae feat(modules-edu): update ai, adaptive-practice, announcements, attendance, audit, auth SpecialX 2026-07-07 16:18:29 +08:00
  • 224740ad98 feat(shared): update permissions system, i18n, hooks, and components SpecialX 2026-07-07 16:17:53 +08:00
  • b333cda8c5 refactor(data-access,lib): split data-access files and add type-guards across modules SpecialX 2026-07-07 16:17:24 +08:00
  • 4e6d397d8e docs(architecture): sync logging refactor to 004/005 and known-issues SpecialX 2026-07-07 13:00:00 +08:00
  • 7c1b764b59 feat(logging): wire useErrorReport into all 129 error.tsx boundaries SpecialX 2026-07-07 12:52:32 +08:00
  • 4122175915 feat(logging): add useErrorReport hook and /api/client-error endpoint SpecialX 2026-07-07 12:41:41 +08:00
  • 811ad11f9f feat(logging): enable ESLint no-console rule with client exemptions SpecialX 2026-07-07 12:39:21 +08:00
  • 12a766d3ee refactor(logging): replace console.* with module loggers in server modules SpecialX 2026-07-07 12:34:57 +08:00
  • 0a034945d4 refactor(logging): replace console in track-event modules with logger SpecialX 2026-07-07 12:14:23 +08:00
  • fefc65702d fix(logging): replace silent audit-logger failures with logger.warn SpecialX 2026-07-07 12:09:38 +08:00
  • a75fdcd60d refactor(logging): replace console.error in api-response with logger SpecialX 2026-07-07 12:06:36 +08:00
  • 2236eb36e7 refactor(logging): replace console.error in action-utils with logger SpecialX 2026-07-07 12:05:00 +08:00
  • c44f19aefd feat(logging): inject x-request-id in proxy.ts SpecialX 2026-07-07 12:01:55 +08:00
  • dce2561751 feat(logging): add withRequestContext HOF for Server Actions SpecialX 2026-07-07 11:51:47 +08:00
  • a208fcc601 feat(logging): add pino logger with createModuleLogger SpecialX 2026-07-07 11:44:49 +08:00
  • 3bd3ebc12d feat(logging): add request-context with AsyncLocalStorage SpecialX 2026-07-07 11:34:40 +08:00
  • c2575960eb feat(logging): add pino dependency and LOG_LEVEL env var SpecialX 2026-07-07 11:29:12 +08:00
  • 94f098b0f2 perf(phase1-4): 补漏性能预算重构专项遗漏项 SpecialX 2026-07-07 00:30:47 +08:00
  • 6104e6a685 docs(architecture): 组件化重构专项遗漏补全 - 更新 005 lastUpdate + known-issues 25.4 节 SpecialX 2026-07-06 22:24:17 +08:00
  • e76c626779 refactor(classes,audit,school,settings,adaptive-practice,announcements,messaging,questions,student): 组件化重构遗漏补全 - 20 个重复组件迁移 SpecialX 2026-07-06 22:22:23 +08:00
  • ee10380462 docs(architecture): 组件化重构专项完成 - 同步 005 lastUpdate + known-issues 第 25 章 SpecialX 2026-07-06 20:57:14 +08:00
  • fa68ec0b34 refactor(lesson-preparation,ai,dashboard): 组件化重构第 3 批 - 高风险模块 SpecialX 2026-07-06 20:49:54 +08:00
  • 025d4de50d refactor(homework,exams,textbooks): 组件化重构第 2 批 - 中风险模块 SpecialX 2026-07-06 19:54:39 +08:00
  • 19a05091d3 refactor(grades,attendance,error-book,elective): 组件化重构第 1 批 - 低风险模块 SpecialX 2026-07-06 19:01:57 +08:00
  • 11ddc8ccbe feat(shared): 组件化重构 Phase 1 - 底座收敛与补全 SpecialX 2026-07-06 18:00:08 +08:00
  • 80d98e13e4 docs(plan): 组件化重构专项实施计划 v1 SpecialX 2026-07-06 17:49:14 +08:00
  • ef2040edf4 docs(spec): 组件化重构专项设计文档 v1 SpecialX 2026-07-06 17:44:15 +08:00
  • 1a34d1f14e ci(perf): 添加 Lighthouse CI 性能预算回归门槛配置 SpecialX 2026-07-06 15:58:49 +08:00
  • 9ce8d6d3fd refactor(data-access): 补全剩余 37 个 data-access 文件迁移至 cacheFn SpecialX 2026-07-06 15:12:30 +08:00
  • 22c2e6459d refactor(eslint): 移除缓存策略临时豁免(所有模块已迁移至 invalidateFor) SpecialX 2026-07-05 22:55:50 +08:00
  • 8fff820e1d refactor(actions): 组 C 模块迁移至 invalidateFor(lesson-preparation/elective/announcements/messaging/notifications/settings/rbac) SpecialX 2026-07-05 22:53:26 +08:00
  • 7cfd85d0f5 refactor(actions): 组 B 模块迁移至 invalidateFor(exams/grades/homework/attendance/leave-requests/diagnostic/error-book/adaptive-practice) SpecialX 2026-07-05 22:44:38 +08:00
  • 05e68a3dad refactor(actions): 组 A 模块迁移至 invalidateFor(users/school/textbooks/questions/course-plans/standards/scheduling/audit/onboarding/invitation-codes/proctoring/i18n) SpecialX 2026-07-05 22:43:08 +08:00
  • 0f33484bd2 fix(questions): 完成 questions/data-access.ts 遗漏的 cacheFn 迁移 SpecialX 2026-07-05 22:27:07 +08:00
  • 841b130f4c fix(data-access): 修复 tsc 错误 + 完成 adaptive-practice/elective 迁移至 cacheFn SpecialX 2026-07-05 22:24:56 +08:00
  • 27374d1b2c refactor(data-access): 组 A 模块迁移至 cacheFn(users/school/rbac/textbooks/questions/course-plans/standards/files/dashboard/parent/proctoring) SpecialX 2026-07-05 21:56:18 +08:00
  • 6dee6b6299 refactor(data-access): 组 C 模块迁移至 cacheFn(lesson-preparation/elective/announcements/messaging/notifications/audit/onboarding/invitation-codes/scheduling/settings) SpecialX 2026-07-05 21:49:18 +08:00
  • cb5b92160c feat(cache): 扩充 INVALIDATION_MAP 覆盖剩余 27 个模块 SpecialX 2026-07-05 21:28:40 +08:00
  • 99f15ee37a docs(architecture): 同步缓存基础设施 + classes 标杆迁移 + 缓存策略规则 SpecialX 2026-07-05 19:04:03 +08:00
  • a3dc22cb9e refactor(classes): 客户端组件迁移至 useQuery + queryKeys 示范 SpecialX 2026-07-05 18:57:10 +08:00
  • 9eb02807a4 feat(eslint): 新增缓存策略规则禁止直接调用 revalidatePath/revalidateTag SpecialX 2026-07-05 18:44:07 +08:00
  • 80dd67780c refactor(classes): actions 迁移至 invalidateFor 集中编排 SpecialX 2026-07-05 18:38:58 +08:00
  • 220d702b44 refactor(classes): data-access 迁移至 cacheFn + 双导出 raw 版本 SpecialX 2026-07-05 18:27:32 +08:00
  • dd7a49504f refactor(hooks): useActionQuery/useActionMutation 接入 QueryClient + 向后兼容 SpecialX 2026-07-05 18:15:58 +08:00
  • 0f9d8825e7 docs(cache): 同步 cacheFn 架构图与已知问题速查 SpecialX 2026-07-05 18:07:18 +08:00
  • d6227d6e6c feat(cache): 实现 cacheFn 双层包装(react.cache + cacheStore) SpecialX 2026-07-05 18:07:11 +08:00
  • 92913a728f feat(cache): 实现 invalidateFor 三步编排函数 SpecialX 2026-07-05 18:00:09 +08:00
  • e510f191c9 feat(cache): 新增 query-keys.ts 工厂(classes 模块) SpecialX 2026-07-05 17:56:04 +08:00
  • 2d49f1bad8 feat(cache): 新增 index.ts 公共 API 聚合导出 SpecialX 2026-07-05 17:55:58 +08:00
  • 6baa60b2a1 feat(cache): 新增 INVALIDATION_MAP 集中式失效映射表(classes 模块) SpecialX 2026-07-05 17:52:41 +08:00
  • 13409e55f1 feat(cache): 新增 store-factory(CACHE_DRIVER 切换) SpecialX 2026-07-05 17:52:24 +08:00
  • 1756ac21a8 feat(cache): 新增客户端失效映射子集(queryKeys only) SpecialX 2026-07-05 17:52:19 +08:00
  • 0058b0b311 feat(cache): 实现 MemoryCacheStore(LRU + TTL + tag 索引) SpecialX 2026-07-05 17:49:51 +08:00
  • 4174cd61d7 feat(cache): 实现 RedisCacheStore(多实例 + tag 索引 + fail-open) SpecialX 2026-07-05 17:45:02 +08:00
  • 44f997bad7 refactor(redis): 抽出共享 Redis 客户端单例至 shared/lib/redis-client.ts SpecialX 2026-07-05 17:40:45 +08:00
  • fcf89dfb2c feat(cache): 新增 cache/types.ts 类型定义 SpecialX 2026-07-05 17:35:17 +08:00
  • bc03275262 refactor(cache): 提升 upstash-modules 类型声明至 shared/lib SpecialX 2026-07-05 17:33:31 +08:00
  • 16ffd44161 feat(cache): 新增 CACHE_DRIVER 环境变量 SpecialX 2026-07-05 17:32:01 +08:00
  • be31da6223 docs(cache): 缓存策略落地实施计划 + 修正 INVALIDATION_MAP 占位符一致性 SpecialX 2026-07-05 01:37:15 +08:00
  • 8afd7af6dc docs(cache): 缓存策略落地专项设计文档 v1 - 全栈缓存策略一致性(服务端数据缓存+客户端 TanStack Query+失效编排) SpecialX 2026-07-05 01:30:59 +08:00
  • 9ec1be1528 fix(design-tokens): 补充 semantic-dark.css 缺失的 --radius 令牌 SpecialX 2026-07-05 01:09:36 +08:00
  • 214ebec976 refactor(design-tokens): 全量体系化重建设计令牌 SpecialX 2026-07-05 01:03:19 +08:00
  • d1ad7a1f75 docs(architecture): update impact map, data, troubleshooting, add mockups SpecialX 2026-07-04 23:02:14 +08:00
  • e962b67050 feat(lesson-preparation): update paper-editor, detail-panel, AI node assist, i18n SpecialX 2026-07-04 23:02:04 +08:00
  • 0780524c08 docs(troubleshooting): V4 备课编辑器规则 SpecialX 2026-07-04 12:01:06 +08:00
  • 5ca2a76e3a docs(architecture): V4 纸感重构架构图同步 SpecialX 2026-07-04 11:59:39 +08:00
  • 0e4eccec21 chore(lesson-preparation): V4 lint + tsc 零错误验证 SpecialX 2026-07-04 11:53:13 +08:00
  • e762490f19 refactor(lesson-preparation): print-view 适配 V4 SpecialX 2026-07-04 11:47:50 +08:00
  • 5d306dc686 refactor(lesson-preparation): 删除废弃的 React Flow 画布和字符串锚点文件 SpecialX 2026-07-04 11:46:31 +08:00
  • 124ed97060 refactor(lesson-preparation): 主编辑器三栏布局(结构树 + 纸 + 详情面板) SpecialX 2026-07-04 11:44:26 +08:00
  • e29f30d278 feat(lesson-preparation): v3 锚点失效提示 banner SpecialX 2026-07-04 11:41:24 +08:00
  • 6dd3b1fecd feat(lesson-preparation): 注册 interaction block 到 registry SpecialX 2026-07-04 11:40:46 +08:00
  • 85121c49a3 fix(lesson-preparation): 重命名 TreeNodeRow.children prop 为 childItems 避免 react/no-children-prop SpecialX 2026-07-04 11:36:41 +08:00
  • 8ff14fce1c feat(lesson-preparation): 右栏详情面板容器 SpecialX 2026-07-04 11:33:03 +08:00
  • 24b8ae78c6 feat(lesson-preparation): 师生交互 block(详情编辑入口) SpecialX 2026-07-04 11:32:58 +08:00
  • 43f30f4013 feat(lesson-preparation): 师生交互编辑器(对话轮次增删改) SpecialX 2026-07-04 11:32:54 +08:00
  • 40cba54ed4 feat(lesson-preparation): 详情面板属性条 SpecialX 2026-07-04 11:32:49 +08:00
  • a4c9eb02b4 feat(lesson-preparation): 详情面板头部 SpecialX 2026-07-04 11:32:44 +08:00
  • 05f9b4fd9d feat(lesson-preparation): 左栏结构树容器 SpecialX 2026-07-04 11:31:03 +08:00