SpecialX
|
0b42302a64
|
docs(admin-portal): 新增 nextstep-v2.md 记录下游核查结果
v1 声称完成的下游工作经核查实际未完成:
- api-gateway: /api/admin/graphql 路由未注册,go vet 编译失败
- teacher-bff: resolver 已完成但 schema 未同步(命名空间 vs 扁平)
- iam: proto 缺 BatchGetUsers rpc 声明
v2 记录详细核查证据和修复要求
|
2026-07-14 08:26:27 +08:00 |
|
SpecialX
|
d49d211425
|
feat(teacher-portal): 完成参考项目差距闭环 P3-P7 全量实现
- P3 考试/作业/成绩 mutation + 详情页 + 批改界面 + 乐观更新 + 多 Tab 同步
- P4 知识图谱 SVG 可视化 + 学情分析仪表盘 + parent-portal Remote
- P5 WebSocket 通知中心 + AI 出题(SSE) + AI 教案 + AI 学情报告
- P6 可观测性硬化:Sentry + WebVitals + OTel + A11y + 性能配置 + Cookie 迁移
- P7 参考项目差距闭环:新增 35 个页面覆盖 13 个缺失模块
- attendance(考勤 4 页)/questions(题库)/textbooks(教材 2 页)
- classes/[id] 详情 + classes/schedule 课表
- course-plans(2 页)/diagnostic(2 页)/error-book/practice
- exams/[id]/build 组卷 + exams/[id]/analytics 考后分析
- exams/[id]/edit-rich 富文本编辑 + exams/[id]/proctoring 监考
- grades/entry 批量录入 + grades/stats 统计 + grades/analytics 分析 + grades/report-card 报告卡
- homework/submissions 列表 + assignments/[id]/submissions 批量批改
- homework/submissions/[submissionId] 单份批改 + scan-grading 扫描批改
- lesson-plans 编辑器 + library + calendar + heatmap 5 页
- elective 选修课 3 页 /leave 请假 /schedule-changes 调课
- P7 基础设施:61 GraphQL operations + 5 handlers + 13 fixtures + 11 viewports
- 集成 browser.ts/server.ts 注册所有 p7 handlers(fallthrough 顺序)
- viewports.ts 扩展 11 个新导航项
- 验证:tsc --noEmit 零错误 + eslint 零错误
- 文档:workline.md 新增 §5 P7 参考项目差距闭环(含完整文件清单)
|
2026-07-13 14:27:04 +08:00 |
|
SpecialX
|
1eacd1ed87
|
feat(teacher-portal): 完整实现 teacher-portal 微前端
包含 settings/students/api、graphql、mocks、ui-tokens 设计令牌等
|
2026-07-10 19:10:20 +08:00 |
|
SpecialX
|
566060fade
|
feat(infra): p6 hardening - observability and deploy compose
- 5 NestJS services add /metrics endpoint via app.getHttpAdapter()
- prometheus.yml scales to 8 services with rule_files and alertmanager
- monitoring compose replaces blackbox with Loki+Promtail
- Grafana datasource adds Loki
- docker-compose.deploy.yml scales to 11 services
- deploy.env.example completes Neo4j/ES/ClickHouse/LLM vars
- teacher-bff adds health.controller
- CI removes continue-on-error on lint step
- teacher-portal lint script changed to eslint src
|
2026-07-09 10:21:06 +08:00 |
|
SpecialX
|
033c083619
|
feat(teacher-portal): 添加考试作业成绩查询页面
新增 3 个页面位于 (app) 路由组:
/exams - 按班级查询考试列表
/homework - 按班级查询作业列表
/grades - 按考试查询成绩列表
通过 BFF 聚合端点获取 core-edu 数据
遵循纸面设计风格: serif 标题/mono ID/设计令牌
|
2026-07-09 08:07:02 +08:00 |
|
SpecialX
|
2c7afe59ef
|
feat(teacher-portal): 实现登录页侧边栏路由组与真实JWT集成
- lib/auth.ts: localStorage token 存储 + login/logout
- app/login: 登录表单页
- components/AppShell: 视口驱动侧边栏 + 路由保护
- app/(app)/layout: 路由组布局套 AppShell
- app/(app)/dashboard: 聚合统计卡片页
- app/(app)/classes: 迁移 CRUD 改用真实 JWT
- app/page.tsx: 根路径重定向
- known-issues.md: 记录 P2 经验
|
2026-07-09 00:58:42 +08:00 |
|
SpecialX
|
e5902ca2b3
|
fix(api-gateway): 修复尾斜杠重定向循环与 DEV_MODE 旁路
- main.go: 禁用 RedirectTrailingSlash,为 classes/iam/teacher 双注册无尾斜杠与通配符路由
- auth.go: DEV_MODE=true 时接受 Bearer dev-token 注入开发用户
- config.go: 新增 DevMode 配置项与 getEnvBool 工具
- page.tsx: 开发模式请求携带 Authorization: Bearer dev-token
- .env.example: 添加 DEV_MODE=false 默认值与生产警告
|
2026-07-08 15:11:47 +08:00 |
|
SpecialX
|
2ba4250165
|
feat(p1): complete P1 foundation stage
CI Go / test (push) Has been cancelled
CI Proto / lint (push) Has been cancelled
CI Python / test (push) Has been cancelled
CI TypeScript / test (push) Has been cancelled
- monorepo: pnpm workspace + go.work + pyproject.toml + commitlint/husky
- infra: docker-compose (minimal + full profiles) + init-sql + prometheus
- arch-scan: multi-language scanner skeleton (TS/Go/Python/Proto)
- shared-proto: buf v2 + classes.proto (ClassService CRUD contract)
- api-gateway: Go/Gin + JWT HS256 auth + reverse proxy + request ID
- classes: NestJS golden template (error system + observability + middleware + CRUD + tests)
- teacher-portal: Next.js + paper-feel UI design system
- CI/CD: 4 workflows (go/ts/py/proto)
- docs: migration guide + project_rules + coding-standards + git-workflow + ui-design-system + 004 + 9 module READMEs + known-issues + spec/plan migration + roadmap
|
2026-07-07 23:39:37 +08:00 |
|