- 契约 HINT_LEVELS 加两级,HINT_MAX_LEVEL 2 → 4。前端的等级标签和「再多一点提示」 按钮本来就跟着契约和 canEscalate 走,不用改 - L3 分步骤讲思路(中文伪代码),沿用 L0~L2 的零代码规则 - L4 是阶梯上唯一放开代码的一级,上限两行:过滤不再「出现代码就拦」,而是把代码块 非空行、摊平进正文的类代码行、过长的行内代码合起来数,超过 KEY_LINES_MAX 才拦; 没闭合的围栏按开到结尾算。重生成措辞和兜底话术按级补齐 - prompt 版本沿用 3 / 4:LEVEL_COMMON 拆成三句再拼回,L0~L2 的 system 逐字未变 (已对照改前逐字核过),新两级靠 ai_hint.level 区分。不需要迁移 老师按班级 / 作业设最高等级拆到 2e,未做。 Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
This commit is contained in:
@@ -130,16 +130,22 @@ export const HINT_MIN_FAILURES = 1
|
||||
* 和判题状态码一样只能新增、不能改已有含义 —— 教师端「依赖提示」这类风险标签
|
||||
* 要按它聚合,改含义等于把历史数据一起改了。
|
||||
*
|
||||
* 0~2 是一条阶梯,只能逐级上升:**一条新的失败提交最多解锁一级**,而且要学生自己
|
||||
* 点「再多一点提示」才升,不会自动往上爬(2.6)。L3 思路 / L4 示例留给 2d。
|
||||
* 0~4 是一条阶梯,只能逐级上升:**一条新的失败提交最多解锁一级**,而且要学生自己
|
||||
* 点「再多一点提示」才升,不会自动往上爬(2.6)。所以从第一次失败到 L4 至少要交 5 次。
|
||||
*
|
||||
* L3 / L4 是 2d 加的。**L4 是阶梯上唯一允许出现代码的一级**(至多两行,见
|
||||
* `services/hint-filter.ts` 的 `KEY_LINES_MAX`),L0~L3 一行代码都不许有。
|
||||
* 老师按班级 / 作业设最高等级还没做,现在所有题都开到 L4。
|
||||
*/
|
||||
export const HINT_LEVELS = [
|
||||
{ level: 0, name: "反问", summary: "只反问,不给结论" },
|
||||
{ level: 1, name: "定位", summary: "只说问题在哪,不说为什么" },
|
||||
{ level: 2, name: "概念", summary: "讲清涉及的概念,不给改法" },
|
||||
{ level: 3, name: "思路", summary: "分步骤讲解题思路,不写代码" },
|
||||
{ level: 4, name: "示例", summary: "用相似的例子演示,或给出关键的一行" },
|
||||
] as const
|
||||
|
||||
export const HINT_MAX_LEVEL = 2
|
||||
export const HINT_MAX_LEVEL = 4
|
||||
|
||||
/**
|
||||
* 编译失败的提示走这个值,**不在阶梯上**(查阶梯的 SQL 一律 `level >= 0`)。
|
||||
|
||||
Reference in New Issue
Block a user