docs: ai 协作文档体系重构与多 ai 仲裁结果落地
1.AI 协作文档体系重构(objections/worklines/contracts+matrix.md) 2.coord 仲裁文档(final-decisions/cross-review/final-rulings/orchestration) 3.各服务 01/02 文档补全 4.共享包初始化(shared-ts/shared-go/hooks/ui-components/ui-tokens) 5.Proto 契约补全 6.004 架构影响地图更新 7.端口分配表 8.设计规格文档
This commit is contained in:
45
docs/architecture/issues/worklines/admin-portal_workline.md
Normal file
45
docs/architecture/issues/worklines/admin-portal_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# admin-portal 工作排期
|
||||
|
||||
> 负责人:ai16
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/admin-portal_contract.md](../contracts/admin-portal_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
admin-portal 是管理端微前端,通过 MF Remote 接入主应用,覆盖用户管理、角色权限、审计日志等场景。全阶段目标:P2 MF Remote 骨架 → P3 用户管理+角色权限+审计日志 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai16 admin-portal 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a16a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai16 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai16
|
||||
- **交付物**:⚠️ 由 ai16 自行补充
|
||||
- **依赖**:见 [contracts/admin-portal_contract.md](../contracts/admin-portal_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai16 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai16 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai16 自行补充
|
||||
45
docs/architecture/issues/worklines/ai_workline.md
Normal file
45
docs/architecture/issues/worklines/ai_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# ai 工作排期
|
||||
|
||||
> 负责人:ai12
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/ai_contract.md](../contracts/ai_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
ai 是智能服务,提供 AiService(6 个 RPC),结合 Elasticsearch 检索与 LLM 网关实现智能问答与推荐。全阶段目标:P2 ES 接入+LLM 网关 → P3 AiService 6 RPC → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai12 ai 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a12a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai12 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai12
|
||||
- **交付物**:⚠️ 由 ai12 自行补充
|
||||
- **依赖**:见 [contracts/ai_contract.md](../contracts/ai_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai12 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai12 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai12 自行补充
|
||||
57
docs/architecture/issues/worklines/api-gateway_workline.md
Normal file
57
docs/architecture/issues/worklines/api-gateway_workline.md
Normal file
@@ -0,0 +1,57 @@
|
||||
# api-gateway 工作排期
|
||||
|
||||
> 负责人:ai01
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/api-gateway_contract.md](../contracts/api-gateway_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
api-gateway 是 Edu 系统统一入口,负责路由、JWT 验签、限流、熔断、CORS。全阶段目标:P2 路由+JWT → P3 限流加固 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai01 api-gateway 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2 基础
|
||||
路由表+双入口+shared-go :a1a, 2026-07-10, 3d
|
||||
JWT校验+JWKS fetcher :a1b, after a1a, 3d
|
||||
限流+熔断+CORS :a1c, after a1b, 2d
|
||||
|
||||
section P3-P6 持续优化
|
||||
路由扩展(student/parent/admin) :a1d, after a1c, 2d
|
||||
指标+链路加固 :a1e, after a1d, 2d
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai01 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### P2:路由表 + JWT + 限流
|
||||
|
||||
- **负责人**:ai01
|
||||
- **交付物**:
|
||||
- `services/api-gateway/internal/routing/router.go` — 路由表
|
||||
- `/api/v1/teacher/*` → teacher-bff:3003 代理
|
||||
- `/api/v1/iam/*` → iam:3002 代理
|
||||
- JWT RS256 验签(shared-go/jwks)
|
||||
- 限流 + 熔断 + CORS
|
||||
- **依赖**:shared-go 骨架(批次 0 已完成)+ iam GetPublicKey(ai06)
|
||||
- **验收标准**:路由双入口 + JWT 验签 + 限流 + CORS 白名单
|
||||
- **完整 P3-P6 任务**:⚠️ 由 ai01 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:iam GetPublicKey RPC(ai06)
|
||||
- **我的就绪信号**:api-gateway :8080 可访问 + JWT 验签可用
|
||||
107
docs/architecture/issues/worklines/classes_workline.md
Normal file
107
docs/architecture/issues/worklines/classes_workline.md
Normal file
@@ -0,0 +1,107 @@
|
||||
# classes 工作排期
|
||||
|
||||
> 负责人:ai07
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/classes_contract.md](../contracts/classes_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
> 特殊说明:classes 是黄金模板(P1 已实现),P3 合并入 core-edu(ai08 接管)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
classes 是 Edu 微服务的黄金模板,P1 阶段已实现班级 CRUD + 全横切关注点。P3 阶段合并入 core-edu 后,classes 模块代码由 ai08 接管维护,但黄金模板对照 checklist 由 ai07 持续维护。
|
||||
|
||||
**全阶段目标**:
|
||||
|
||||
- P1(已完成):班级 CRUD + 黄金模板 + 6 项整改
|
||||
- P3:合并入 core-edu + Outbox + gRPC + DataScope + Redis 缓存 + cuid2 迁移
|
||||
- P6:黄金模板 checklist 持续维护 + 硬化
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P1-P6)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai07 classes 黄金模板全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P1 黄金模板整改
|
||||
阶段1+2架构设计文档 :crit, a7a, 2026-07-10, 1d
|
||||
typeorm移除+tracer修复+@Query替换 :crit, a7b, 2026-07-10, 1d
|
||||
测试覆盖率60→80%+Dockerfile升级 :a7c, 2026-07-11, 1d
|
||||
schema索引补齐 :a7d, 2026-07-11, 1d
|
||||
|
||||
section P3 合并入core-edu
|
||||
shared/outbox目录补齐 :a7e, 2026-07-14, 2d
|
||||
cuid2迁移+DataScope注入 :a7f, 2026-07-15, 2d
|
||||
Redis缓存+软删除+分页 :a7g, 2026-07-17, 3d
|
||||
gRPC 50053启用+核心edu合并 :a7h, 2026-07-20, 2d
|
||||
|
||||
section P6 硬化
|
||||
黄金模板checklist持续维护 :a7i, 2026-07-25, 5d
|
||||
可观测性增强+告警规则 :a7j, 2026-07-30, 3d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### P1:黄金模板整改(立即)
|
||||
|
||||
| # | 任务 | 交付物 | 验收标准 | 状态 |
|
||||
| --- | ----------------------------------- | ------------------------------------------------------------------------- | --------------------------------- | --------- |
|
||||
| 1 | 阶段 1+2 架构设计文档 | `services/classes/docs/01-understanding.md` + `02-architecture-design.md` | coord 交叉审查通过 | ✅ 已完成 |
|
||||
| 2 | 移除 typeorm 冗余依赖 | `package.json` 删除 typeorm 行 | `pnpm install` 零错误 | 待执行 |
|
||||
| 3 | tracer.ts console.log → logger.info | `src/shared/observability/tracer.ts` L20 | grep `console.log` 返回 0 | 待执行 |
|
||||
| 4 | controller list @Req → @Query | `src/classes/classes.controller.ts` L49-53 | list 方法用 `@Query('gradeId')` | 待执行 |
|
||||
| 5 | 测试覆盖率阈值 60% → 80% | `vitest.config.ts` + 补测试用例 | `pnpm test:coverage` 达 80% | 待执行 |
|
||||
| 6 | Dockerfile node:20 → node:22 | `Dockerfile` | 基础镜像 `node:22-alpine` | 待执行 |
|
||||
| 7 | schema 补齐索引 | `classes.schema.ts` + 迁移脚本 | grade_id / head_teacher_id 有索引 | 待执行 |
|
||||
|
||||
### P3:合并入 core-edu(交接给 ai08)
|
||||
|
||||
| # | 任务 | 交付物 | 验收标准 | 状态 |
|
||||
| --- | ------------------------- | ---------------------------------------------------------- | ------------------------------- | ------ |
|
||||
| 1 | `shared/outbox/` 目录补齐 | outbox.repository / outbox.publisher / outbox.relay-worker | 事件可发布到 Kafka | 待执行 |
|
||||
| 2 | cuid2 迁移 | id 字段 uuid v4 → cuid2 + 数据迁移脚本 | 双写过渡期完成 | 待执行 |
|
||||
| 3 | DataScope 6 级 WHERE 注入 | Repository list 方法接收 dataScope 参数 | 6 级过滤生效 | 待执行 |
|
||||
| 4 | Redis 班级列表缓存 | cachedList 方法 + TTL 5 分钟 + 事件失效 | 缓存命中率 > 80% | 待执行 |
|
||||
| 5 | 软删除 + 审计字段 | deleted_at / created_by / updated_by | DELETE 改软删除 | 待执行 |
|
||||
| 6 | 分页 + 批量查询 | 游标分页 + POST /classes/batch | proto page_size/page_token 落地 | 待执行 |
|
||||
| 7 | gRPC server 50053 启用 | ClassService 5 RPC 实现 | gRPC health check SERVING | 待执行 |
|
||||
| 8 | PermissionGuard 改调 iam | 动态权限查询 getEffectivePermissions | 角色变更无需改代码重启 | 待执行 |
|
||||
|
||||
### P6:硬化
|
||||
|
||||
| # | 任务 | 交付物 | 验收标准 | 状态 |
|
||||
| --- | --------------------------- | ---------------------------------- | ---------------- | ------ |
|
||||
| 1 | 黄金模板 checklist 持续维护 | 02-architecture-design.md §10 更新 | 覆盖全部新模式 | 待执行 |
|
||||
| 2 | 可观测性增强 | 日志注入 traceId + Outbox 积压告警 | Grafana 面板可用 | 待执行 |
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:
|
||||
- MySQL classes_db(P1 已就绪)
|
||||
- api-gateway 路由注册(P1 已就绪)
|
||||
- P3:iam `BatchGetUsers` + `getEffectivePermissions`
|
||||
- P3:Kafka 基础设施(ai08 启用)
|
||||
- **我的就绪信号**:
|
||||
- P1:REST API 5 端点 + /healthz + /readyz + /metrics 可用(已就绪)
|
||||
- P3:gRPC 50053 + Outbox 事件发布 + Redis 缓存可用
|
||||
- **交接信号**:P3 合并时,ai07 向 ai08 交接 classes 模块,交接清单见 02-architecture-design.md §11
|
||||
|
||||
---
|
||||
|
||||
## §5 交接计划(ai07 → ai08)
|
||||
|
||||
| 交接项 | 内容 | 时间 |
|
||||
| ------------------ | ------------------------------------------------------- | --------- |
|
||||
| 源码交接 | `services/classes/src/` 全部源码 | P3 启动时 |
|
||||
| 文档交接 | `services/classes/docs/` 2 份设计文档 | P3 启动时 |
|
||||
| proto 交接 | `classes.proto` 由 core-edu 实现承载 | P3 启动时 |
|
||||
| 黄金模板保留 | `services/classes/` 保留作只读对照基准(待 coord 仲裁) | P3 合并后 |
|
||||
| checklist 持续维护 | ai07 持续维护 02-architecture-design.md §10 | 跨阶段 |
|
||||
45
docs/architecture/issues/worklines/content_workline.md
Normal file
45
docs/architecture/issues/worklines/content_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# content 工作排期
|
||||
|
||||
> 负责人:ai09
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/content_contract.md](../contracts/content_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
content 是内容服务,提供 TextbookService、ChapterService、KnowledgeGraphService、QuestionService,结合 Neo4j 知识图谱与 Elasticsearch 全文检索。全阶段目标:P2 服务骨架+Neo4j+ES → P3 四大 Service 实现 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai09 content 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a9a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai09 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai09
|
||||
- **交付物**:⚠️ 由 ai09 自行补充
|
||||
- **依赖**:见 [contracts/content_contract.md](../contracts/content_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai09 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai09 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai09 自行补充
|
||||
45
docs/architecture/issues/worklines/core-edu_workline.md
Normal file
45
docs/architecture/issues/worklines/core-edu_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# core-edu 工作排期
|
||||
|
||||
> 负责人:ai08
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/core-edu_contract.md](../contracts/core-edu_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
core-edu 是教学核心服务,提供 ClassService、ExamService、HomeworkService、GradeService、AttendanceService,并基于 Outbox 模式发布领域事件。全阶段目标:P2 服务骨架+Outbox → P3 五大 Service 实现 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai08 core-edu 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a8a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai08 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai08
|
||||
- **交付物**:⚠️ 由 ai08 自行补充
|
||||
- **依赖**:见 [contracts/core-edu_contract.md](../contracts/core-edu_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai08 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai08 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai08 自行补充
|
||||
45
docs/architecture/issues/worklines/data-ana_workline.md
Normal file
45
docs/architecture/issues/worklines/data-ana_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# data-ana 工作排期
|
||||
|
||||
> 负责人:ai11
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/data-ana_contract.md](../contracts/data-ana_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
data-ana 是数据分析服务,提供 AnalyticsService(12 个 RPC),基于 ClickHouse 列存查询与 CDC 消费实现实时分析。全阶段目标:P2 ClickHouse 接入+CDC 消费 → P3 AnalyticsService 12 RPC → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai11 data-ana 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a11a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai11 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai11
|
||||
- **交付物**:⚠️ 由 ai11 自行补充
|
||||
- **依赖**:见 [contracts/data-ana_contract.md](../contracts/data-ana_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai11 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai11 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai11 自行补充
|
||||
56
docs/architecture/issues/worklines/iam_workline.md
Normal file
56
docs/architecture/issues/worklines/iam_workline.md
Normal file
@@ -0,0 +1,56 @@
|
||||
# iam 工作排期
|
||||
|
||||
> 负责人:ai06
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/iam_contract.md](../contracts/iam_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
iam 是身份认证服务,全阶段目标:gRPC 50052 + 12 RPC + /readyz 深度 + iam_student_guardians + DataScope + 审计日志 + Outbox。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai06 iam 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2.1 核心
|
||||
gRPC server 50052启用 :crit, a6a, 2026-07-10, 2d
|
||||
12 RPC实现 :crit, a6b, after a6a, 4d
|
||||
/readyz深度(5依赖) :a6c, after a6b, 1d
|
||||
iam_student_guardians+DataScope :a6d, after a6b, 1d
|
||||
|
||||
section P2.2-P6 扩展
|
||||
审计日志+Outbox :a6e, after a6d, 3d
|
||||
持续补全 :a6f, after a6e, 5d
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai06 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### P2.1:gRPC + 12 RPC + /readyz + DataScope
|
||||
|
||||
- **负责人**:ai06
|
||||
- **交付物**:
|
||||
- gRPC server 50052 + 12 RPC(见 iam.proto)
|
||||
- /readyz 5 项依赖检查
|
||||
- iam_student_guardians 表 + DataScope=CHILDREN
|
||||
- **依赖**:iam.proto(批次 0 已完成)
|
||||
- **验收标准**:12 RPC 全部可用 + /readyz 返回 5 项状态
|
||||
- **完整 P2.2-P6 任务**:⚠️ 由 ai06 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:无(iam 是基础服务)
|
||||
- **我的就绪信号**:gRPC 50052 启用 + GetPublicKey RPC 可用 + HealthService.Check 返回 SERVING
|
||||
45
docs/architecture/issues/worklines/msg_workline.md
Normal file
45
docs/architecture/issues/worklines/msg_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# msg 工作排期
|
||||
|
||||
> 负责人:ai10
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/msg_contract.md](../contracts/msg_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
msg 是消息服务,提供 NotificationService、PreferenceService、TemplateService,并基于 Outbox 模式发布消息事件。全阶段目标:P2 服务骨架+Outbox → P3 三大 Service 实现 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai10 msg 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a10a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai10 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai10
|
||||
- **交付物**:⚠️ 由 ai10 自行补充
|
||||
- **依赖**:见 [contracts/msg_contract.md](../contracts/msg_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai10 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai10 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai10 自行补充
|
||||
45
docs/architecture/issues/worklines/parent-bff_workline.md
Normal file
45
docs/architecture/issues/worklines/parent-bff_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# parent-bff 工作排期
|
||||
|
||||
> 负责人:ai05
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/parent-bff_contract.md](../contracts/parent-bff_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
parent-bff 为家长端提供 GraphQL 聚合 API,覆盖 Dashboard、多子女切换、成绩趋势等场景。全阶段目标:P2 GraphQL schema 骨架 → P3 Dashboard+多子女+成绩趋势 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai05 parent-bff 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a5a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai05 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai05
|
||||
- **交付物**:⚠️ 由 ai05 自行补充
|
||||
- **依赖**:见 [contracts/parent-bff_contract.md](../contracts/parent-bff_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai05 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai05 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai05 自行补充
|
||||
45
docs/architecture/issues/worklines/parent-portal_workline.md
Normal file
45
docs/architecture/issues/worklines/parent-portal_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# parent-portal 工作排期
|
||||
|
||||
> 负责人:ai15
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/parent-portal_contract.md](../contracts/parent-portal_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
parent-portal 是家长端微前端,通过 MF Remote 接入主应用,覆盖 Dashboard、多子女切换等场景。全阶段目标:P2 MF Remote 骨架 → P3 Dashboard+多子女切换 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai15 parent-portal 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a15a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai15 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai15
|
||||
- **交付物**:⚠️ 由 ai15 自行补充
|
||||
- **依赖**:见 [contracts/parent-portal_contract.md](../contracts/parent-portal_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai15 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai15 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai15 自行补充
|
||||
45
docs/architecture/issues/worklines/push-gateway_workline.md
Normal file
45
docs/architecture/issues/worklines/push-gateway_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# push-gateway 工作排期
|
||||
|
||||
> 负责人:ai02
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/push-gateway_contract.md](../contracts/push-gateway_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
push-gateway 负责长连接接入(HTTP /internal/* + WebSocket/SSE)与多设备会话管理,配合审计表实现消息推送可观测。全阶段目标:P2 HTTP+WS 接入 → P3 多设备会话 → P4-P6 审计与加固。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai02 push-gateway 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a2a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai02 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai02
|
||||
- **交付物**:⚠️ 由 ai02 自行补充
|
||||
- **依赖**:见 [contracts/push-gateway_contract.md](../contracts/push-gateway_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai02 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai02 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai02 自行补充
|
||||
45
docs/architecture/issues/worklines/student-bff_workline.md
Normal file
45
docs/architecture/issues/worklines/student-bff_workline.md
Normal file
@@ -0,0 +1,45 @@
|
||||
# student-bff 工作排期
|
||||
|
||||
> 负责人:ai04
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/student-bff_contract.md](../contracts/student-bff_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
student-bff 为学生端提供 GraphQL 聚合 API,覆盖 Dashboard、考试作答、作业提交等场景。全阶段目标:P2 GraphQL schema 骨架 → P3 Dashboard+考试+作业聚合 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai04 student-bff 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a4a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai04 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai04
|
||||
- **交付物**:⚠️ 由 ai04 自行补充
|
||||
- **依赖**:见 [contracts/student-bff_contract.md](../contracts/student-bff_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai04 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai04 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai04 自行补充
|
||||
@@ -0,0 +1,45 @@
|
||||
# student-portal 工作排期
|
||||
|
||||
> 负责人:ai14
|
||||
> 关联:[workline.md](../workline.md)、[coord.md](../coord.md)、[contracts/student-portal_contract.md](../contracts/student-portal_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
student-portal 是学生端微前端,通过 MF Remote 接入主应用,覆盖考试作答、作业提交等场景。全阶段目标:P2 MF Remote 骨架 → P3 考试作答+作业提交 → P4-P6 持续优化。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai14 student-portal 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2-P6
|
||||
[阶段任务] :a14a, 2026-07-10, Xd
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai14 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### 全阶段任务
|
||||
|
||||
- **负责人**:ai14
|
||||
- **交付物**:⚠️ 由 ai14 自行补充
|
||||
- **依赖**:见 [contracts/student-portal_contract.md](../contracts/student-portal_contract.md)
|
||||
- **验收标准**:⚠️ 由 ai14 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:⚠️ 由 ai14 自行补充(见 contract.md)
|
||||
- **我的就绪信号**:⚠️ 由 ai14 自行补充
|
||||
58
docs/architecture/issues/worklines/teacher-bff_workline.md
Normal file
58
docs/architecture/issues/worklines/teacher-bff_workline.md
Normal file
@@ -0,0 +1,58 @@
|
||||
# teacher-bff 工作排期
|
||||
|
||||
> 负责人:ai03
|
||||
> 关联:[workline.md](../workline.md)、[coord.md §1 ARB-001](../coord.md)、[contracts/teacher-bff_contract.md](../contracts/teacher-bff_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,最后统一集成测试)
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
teacher-bff 是教学场景域聚合层,全阶段目标:P2 GraphQL schema 第一版 → P3 扩展 exams/homework/grades → P4 学情分析 → P5 通知+SSE → P6 admin 命名空间。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6,各 AI 自行细化)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai03 teacher-bff 全阶段排期
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2 GraphQL 基础
|
||||
schema第一版(ARB-001) :crit, a3a, 2026-07-10, 2d
|
||||
Yoga endpoint+5 Query Resolver :crit, a3b, after a3a, 3d
|
||||
DataLoader+N+1防御 :a3c, after a3b, 1d
|
||||
ActionState信封+降级模式B :a3d, after a3b, 1d
|
||||
|
||||
section P3-P6 扩展
|
||||
exams/homework/grades Query :a3e, after a3d, 3d
|
||||
学情分析+通知+SSE :a3f, after a3e, 4d
|
||||
admin命名空间 :a3g, after a3f, 2d
|
||||
```
|
||||
|
||||
> **注意**:以上为 coord 初始规划,ai03 接管后必须自行细化为完整 P2-P6 排期。
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### P2:GraphQL schema + 5 Query + DataLoader + ActionState
|
||||
|
||||
- **负责人**:ai03
|
||||
- **交付物**:
|
||||
- `packages/shared-ts/contracts/graphql/teacher-bff.graphql` — P2 schema
|
||||
- Yoga endpoint `POST /graphql`
|
||||
- 5 Query:dashboard / viewports / me / classes / class
|
||||
- DataLoader + ActionState 信封 + 降级模式 B
|
||||
- **依赖**:iam gRPC(ai06)+ coord 仲裁 ARB-001
|
||||
- **验收标准**:5 Query 可用 + ActionState 信封 + depth ≤ 7
|
||||
- **完整 P3-P6 任务**:⚠️ 由 ai03 自行补充
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
- **我依赖**:iam gRPC 50052(ai06)+ core-edu gRPC 50053(ai08,P3+)
|
||||
- **我的就绪信号**:POST /graphql 可用 + dashboard Query 返回正确数据
|
||||
170
docs/architecture/issues/worklines/teacher-portal_workline.md
Normal file
170
docs/architecture/issues/worklines/teacher-portal_workline.md
Normal file
@@ -0,0 +1,170 @@
|
||||
# teacher-portal 工作排期
|
||||
|
||||
> 负责人:ai13
|
||||
> 关联:[workline.md](../workline.md)、[coord.md §2 ARB-002](../coord.md)、[contracts/teacher-portal_contract.md](../contracts/teacher-portal_contract.md)
|
||||
> 模式:全并行(各 AI 一口气完成 P2-P6 全部代码,开发期间用 mock,最后统一集成测试)
|
||||
> 依据:president-final-rulings.md §3.5(ai13 P2 功能范围)+ §7.13(ai13 工作内容最终清单)+ 03-long-term-architecture.md §1.1 阶段能力累积矩阵
|
||||
|
||||
---
|
||||
|
||||
## §1 总览
|
||||
|
||||
teacher-portal 是教学场景域微前端(MF Shell),全阶段目标:P2 MF Shell + GraphQL client + 基础页面 → P3 考试/作业/成绩 → P4 知识图谱/学情 → P5 推送/AI → P6 可观测性硬化。
|
||||
|
||||
**全并行模式**:ai13 一口气完成 P2-P6 全部代码,开发期间用 MSW mock 上游(teacher-bff GraphQL / api-gateway HTTP / push-gateway WebSocket),上游就绪后在 [matrix.md](../matrix.md) §8 更新就绪信号,最后统一集成测试。
|
||||
|
||||
---
|
||||
|
||||
## §2 全阶段甘特图(P2-P6)
|
||||
|
||||
```mermaid
|
||||
gantt
|
||||
title ai13 teacher-portal 全阶段排期(全并行)
|
||||
dateFormat YYYY-MM-DD
|
||||
axisFormat %m-%d
|
||||
|
||||
section P2 基础
|
||||
packages骨架(ui-tokens/ui-components/hooks) :crit, a13p0, 2026-07-09, 1d
|
||||
MF Shell配置(NextFederationPlugin) :crit, a13a, after a13p0, 2d
|
||||
GraphQLProvider+urql client单例 :crit, a13b, after a13a, 2d
|
||||
AppShell+路由骨架+设计令牌三层 :a13c, after a13b, 2d
|
||||
登录页+权限上下文+Token存储 :a13d, after a13c, 2d
|
||||
Dashboard框架+班级列表+学生列表+个人设置 :a13e, after a13d, 3d
|
||||
|
||||
section P3 教学核心
|
||||
考试管理页面(列表/创建/详情) :a13f, after a13e, 3d
|
||||
作业管理页面(布置/批改) :a13g, after a13f, 3d
|
||||
成绩管理页面(录入/分析) :a13h, after a13g, 2d
|
||||
乐观更新+多Tab会话同步 :a13i, after a13h, 2d
|
||||
|
||||
section P4 知识与学情
|
||||
知识图谱可视化页面 :a13j, after a13i, 3d
|
||||
学情分析仪表盘(宽表5s) :a13k, after a13j, 3d
|
||||
parent-portal Remote接入 :a13l, after a13k, 1d
|
||||
|
||||
section P5 推送与AI
|
||||
WebSocket通知中心 :a13m, after a13l, 2d
|
||||
AI辅助出题(SSE流式) :a13n, after a13m, 3d
|
||||
AI生成教案/学情报告 :a13o, after a13n, 2d
|
||||
|
||||
section P6 硬化
|
||||
Sentry+RUM+OTel browser :a13p, after a13o, 2d
|
||||
A11y审计(WCAG 2.2 AA) :a13q, after a13p, 2d
|
||||
性能优化+bundle门禁 :a13r, after a13q, 2d
|
||||
localStorage→httpOnly Cookie迁移 :a13s, after a13r, 1d
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
## §3 详细任务
|
||||
|
||||
### P2:MF Shell + GraphQL client + 基础页面
|
||||
|
||||
- **负责人**:ai13
|
||||
- **裁决依据**:总裁裁决 §3.5(ai13 P2 功能范围)+ F9(GraphQL P2 起)+ F12(localStorage token)+ §2.17(MF GraphQL client 单例方案 A)+ §2.18(packages 批次 0.15)
|
||||
- **交付物**:
|
||||
- ✅ packages 骨架(ui-tokens/ui-components/hooks,批次 0.15 已完成)
|
||||
- NextFederationPlugin 配置(exposes AppShell + shared react/urql/graphql singleton,无 remotes)
|
||||
- GraphQLProvider + urql client 单例(Shell 暴露,Remote 复用,§2.17 方案 A)
|
||||
- AppShell(Layout + 侧边栏 + 路由守卫 + ErrorBoundary + 设计令牌三层 primitive/semantic/tailwind-theme)
|
||||
- 登录页(POST /api/auth/login → JWT 存 localStorage,F12)
|
||||
- 权限上下文(usePermission + useViewports,权限点 `<RESOURCE>_<ACTION>` F7)
|
||||
- Dashboard 框架(teacherDashboard GraphQL query)
|
||||
- 班级列表页(myClasses GraphQL query,iam 数据)
|
||||
- 学生列表页(classStudents GraphQL query,iam 数据)
|
||||
- 个人设置页(currentUser + updateUser GraphQL query/mutation)
|
||||
- **依赖**:teacher-bff GraphQL schema 第一版(ai03 + coord 仲裁 ISSUE-037)+ api-gateway 路由(ai01)
|
||||
- **Mock 策略**:MSW 拦截 POST /api/teacher/graphql + POST /api/auth/login(见 contract.md §4.2)
|
||||
- **验收标准**:MF 配置不破坏单体 + GraphQL 拉取数据 + 登录→Dashboard→班级列表→学生列表链路通
|
||||
|
||||
### P3:考试/作业/成绩 + 乐观更新 + 多 Tab 同步
|
||||
|
||||
- **负责人**:ai13
|
||||
- **交付物**:
|
||||
- 考试管理页面(classExams list / createExam mutation / examDetail)
|
||||
- 作业管理页面(classHomework list / assignHomework mutation / homeworkDetail / 批改界面)
|
||||
- 成绩管理页面(studentGrades list / recordGrade mutation / 成绩分析图表)
|
||||
- 乐观更新(useMutation onMutate 回滚 + invalidateQueries,见 03 §10.1)
|
||||
- 多 Tab 会话同步(BroadcastChannel('edu-session'),见 03 §2.5)
|
||||
- **依赖**:teacher-bff 扩展 core-edu gRPC 调用(ai03 P3,core-edu ai08 P3 启用 gRPC)
|
||||
- **Mock 策略**:MSW 返回固定考试/作业/成绩数据
|
||||
- **验收标准**:教师创建考试→学生(student-portal Remote)作答→教师批改全链路(mock)+ 乐观更新回滚正确 + 多 Tab 登出同步
|
||||
|
||||
### P4:知识图谱 + 学情分析 + parent-portal Remote
|
||||
|
||||
- **负责人**:ai13
|
||||
- **交付物**:
|
||||
- 知识图谱可视化页面(recharts/d3 节点图,CSR + @next/dynamic 懒加载)
|
||||
- 学情分析仪表盘(宽表 5s 返回,ISR revalidate 60s + CSR 交互)
|
||||
- parent-portal Remote 接入(MF remotes 配置,feature flag NEXT_PUBLIC_MF_ENABLED)
|
||||
- **依赖**:teacher-bff 扩展 content/data-ana gRPC 调用(ai03 P4,content ai09 P4 / data-ana ai11 P4 启用 gRPC)+ parent-portal(ai15 P4)
|
||||
- **Mock 策略**:MSW 返回固定知识图谱 + 学情宽表数据
|
||||
- **验收标准**:教师查看知识图谱 + 学情宽表 5s 返回(mock)+ parent-portal Remote 在 Shell 内渲染
|
||||
|
||||
### P5:WebSocket 推送 + AI 辅助 + 通知中心
|
||||
|
||||
- **负责人**:ai13
|
||||
- **交付物**:
|
||||
- WebSocket 通知中心(ws://push-gateway:8081/ws,实时通知 + BroadcastChannel 跨 Tab)
|
||||
- AI 辅助出题(SSE 流式,generateQuestion subscription)
|
||||
- AI 生成教案/学情报告(generateLessonPlan / generateReport mutation)
|
||||
- **依赖**:push-gateway WebSocket(ai02 P5)+ ai 服务 gRPC(ai12 P5 启用 gRPC)+ msg 服务(ai10 P5)
|
||||
- **Mock 策略**:mock-socket 模拟 WS 推送 + MSW 返回固定 AI 响应(SSE 用 ReadableStream mock)
|
||||
- **验收标准**:全校广播实时到达(mock)+ AI 流式出题(mock)+ 通知中心实时更新
|
||||
|
||||
### P6:可观测性硬化 + A11y + 性能 + Token 迁移
|
||||
|
||||
- **负责人**:ai13
|
||||
- **交付物**:
|
||||
- Sentry 错误追踪 + Session Replay(NEXT_PUBLIC_SENTRY_DSN + beforeSend PII 过滤)
|
||||
- Web Vitals RUM(LCP/INP/CLS/TTFB → /api/v1/admin/web-vitals)
|
||||
- OTel browser SDK(自动埋点 fetch/XHR/document load → OTLP collector)
|
||||
- A11y 审计(WCAG 2.2 AA:eslint-plugin-jsx-a11y + @axe-core/playwright + 对比度审计)
|
||||
- 性能优化(bundle analyzer + size-limit CI 门禁:Shell <150KB / Remote <80KB / CSS <50KB)
|
||||
- localStorage → httpOnly Cookie 迁移(iam refresh cookie 端点就绪后 + CSRF 防护)
|
||||
- **依赖**:全链路可观测就绪(iam refresh cookie + Sentry DSN + OTel collector)
|
||||
- **验收标准**:99.9% 可用 + WCAG 2.2 AA + LCP <2.5s / INP <200ms / CLS <0.1(P75)
|
||||
|
||||
---
|
||||
|
||||
## §4 依赖与就绪信号
|
||||
|
||||
### §4.1 我依赖的上游就绪标志
|
||||
|
||||
| 上游 | 就绪标志 | 阻塞阶段 | 状态 |
|
||||
| --------------------------------------------------------- | ------------------------------------------------- | -------- | ---------------------- |
|
||||
| packages 骨架(ai13 自建) | ui-tokens/ui-components/hooks 可 import | P2 启动 | ✅ 已就绪(批次 0.15) |
|
||||
| teacher-bff GraphQL schema(ai03 + coord 仲裁 ISSUE-037) | packages/shared-ts/contracts/graphql/ 第一版 | P2 启动 | ⏳ 待 coord 仲裁 |
|
||||
| api-gateway HTTP :8080(ai01) | /api/teacher/graphql + /api/auth/login 路由可用 | P2 启动 | ⏳ 待 ai01 |
|
||||
| teacher-bff core-edu 扩展(ai03 P3) | classExams/classHomework/studentGrades query 可用 | P3 启动 | ⏳ 待 ai03 P3 |
|
||||
| teacher-bff content/data-ana 扩展(ai03 P4) | knowledgeGraph/studentAnalytics query 可用 | P4 启动 | ⏳ 待 ai03 P4 |
|
||||
| push-gateway WebSocket :8081/ws(ai02 P5) | WS 连接可建立 + 推送可接收 | P5 启动 | ⏳ 待 ai02 P5 |
|
||||
| ai 服务 gRPC(ai12 P5) | generateQuestion/generateLessonPlan 可调 | P5 启动 | ⏳ 待 ai12 P5 |
|
||||
| iam refresh cookie 端点(ai06 P6) | POST /iam/auth/refresh 返回 httpOnly cookie | P6 启动 | ⏳ 待 ai06 P6 |
|
||||
|
||||
### §4.2 我的就绪信号(供下游消费)
|
||||
|
||||
| 信号 | 就绪标志 | 消费方 |
|
||||
| ------------------------------- | -------------------------------------- | ---------------------------------- |
|
||||
| teacher-portal dev server :4000 | next dev -p 4000 可访问 | 无(最前端) |
|
||||
| MF Shell 可加载 | 首页渲染 AppShell + 导航 | student/parent/admin Remote(P3+) |
|
||||
| 登录流程可用 | POST /api/auth/login → JWT → Dashboard | 无(最前端) |
|
||||
| GraphQL 查询可执行 | currentUser/myClasses 返回数据 | 无(最前端) |
|
||||
| parent-portal Remote 接入点 | MF remotes 配置就绪 | parent-portal(ai15 P4) |
|
||||
|
||||
---
|
||||
|
||||
## §5 全并行开发说明
|
||||
|
||||
按 [matrix.md](../matrix.md) §全并行模式:
|
||||
|
||||
1. ai13 一口气完成 P2-P6 全部代码,开发期间用 MSW mock 上游
|
||||
2. 上游就绪后在 matrix.md §8 更新就绪信号
|
||||
3. 所有模块就绪后统一集成测试(matrix.md §9 检查清单)
|
||||
4. Mock 切换:NEXT_PUBLIC_API_MOCKING=enabled → disabled
|
||||
|
||||
---
|
||||
|
||||
**AI Agent**: ai13(teacher-portal)
|
||||
**Branch**: feat/teacher-portal-workline-ai13
|
||||
**Coordinator**: coord-ai
|
||||
Reference in New Issue
Block a user