forked from baskbuddy/zhangshun
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
3.2 KiB
3.2 KiB
learning path Specification
Purpose
定义基于缺失 TOP10 技能的确定性学习路径生成行为。
Requirements
Requirement: Learning path consumes unmatched TOP10 skills
学习路径接口 MUST 复用个人技能匹配结果,并只包含当前 TOP10 中未命中的技能;不得包含已命中技能或 TOP10 之外的技能。
Scenario: Student has skill gaps
- WHEN 当前 TOP10 中部分技能未命中
- THEN 学习路径 MUST 包含全部未命中技能且不含已命中技能
Scenario: Student has no skill gaps
- WHEN 当前 TOP10 全部命中
- THEN 学习路径 MUST 返回空列表和总数 0
Scenario: Student has no matching skill evidence
- WHEN 学生没有技能数据
- THEN 学习路径 MUST 包含当前 TOP10 的全部技能
Requirement: Learning priority follows heat order
学习路径项 MUST 按与 TOP10 相同的热度顺序排列,并从 1 开始连续编号;空热度技能继续遵守词云的末位排序规则。
Scenario: Multiple missing skills are ordered
- WHEN 缺失技能包含多个热度不同的技能
- THEN 热度最高的技能 MUST 获得优先级 1,后续技能依次编号
Scenario: Missing skills have equal heat
- WHEN 缺失技能热度相同
- THEN 优先级 MUST 沿用词云的稳定次级排序,重复请求结果一致
Scenario: Only one skill is missing
- WHEN 当前 TOP10 只有一项未命中
- THEN 该技能 MUST 返回优先级 1
Requirement: Learning suggestions are deterministic and industry-neutral
每项学习建议 MUST 由后端按技能分类的通用模板生成,不调用 AI、知识库问答或外部课程服务;建议不得包含课程链接、讲师、价格、学习时长或完成度。
Scenario: Programming language gap is returned
- WHEN 缺失技能属于编程语言分类
- THEN 建议 MUST 描述基础语法学习和编码练习方向
Scenario: Framework gap is returned
- WHEN 缺失技能属于框架分类
- THEN 建议 MUST 描述核心概念学习和小型项目实践方向
Scenario: Tool gap is returned
- WHEN 缺失技能属于工具分类
- THEN 建议 MUST 描述安装配置和工程实践方向
Scenario: Unknown category is returned
- WHEN 缺失技能无法匹配特定模板分类
- THEN 系统 MUST 返回一条行业无关的通用学习建议
Requirement: Learning path response is actionable and minimal
每个学习路径项 MUST 返回技能 ID、技能名称、技能分类、优先级和简化学习建议;响应 MUST 不包含个人隐私、简历原文或模型推理内容。
Scenario: A learning item is generated
- WHEN 存在未命中技能
- THEN 每个路径项 MUST 同时具备技能身份、分类、连续优先级和建议文本
Scenario: Repeated request is made
- WHEN 学生资料、词库数据和筛选条件均未变化
- THEN 接口 MUST 返回相同顺序、相同优先级和相同建议
Scenario: Response contains no private profile data
- WHEN 学习路径成功返回
- THEN 响应 MUST 不含手机号、邮箱、简历文件、原始
skills_json或其他无关个人数据