feat(流程图): AI 点评改成拿例子和测试数据在图上走一遍,同一张图不能再原样重交抽等级
原来让 AI 按逻辑 40 / 完整 30 / 规范 20 / 清晰 10 打总分:同一张图交两次能差 35 分 (有一张 C 再交变 S),22% 的提交和上一次一模一样;评语里写 node_9 这种学生看不到的编号。 照画布稿 FlowResFail / FlowResPass: - AI 拿题目的例子和最多 3 组测试数据,从开始照着图走到结束,逐组说输出什么、对不对、 最先错在哪个框;全对 A,全对且写法挑不出毛病 S,走对一半以上 B,否则 C - 结果页签:「3 组走对 2 组」,逐组 ✓ / ✗,点开看「你的图输出 / 应该输出」,画布上按先后 编号亮出这一组走过的框、错的那个标红;图一改就不亮,载回那一版又能亮 - 画布和上次评完的那张一模一样时「交给 AI 点评」灰掉;后端也兜着:同一道题一模一样的图 直接照搬上次走例子的结果,不再问 AI - 题目一组例子、测试数据都没有时退回老的四项分;老提交照旧按四项分显示 - 历次等级、提交列表的胶囊只写等级,不写分数 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
09f8a56913
commit
099c6d7ba6
17 files changed
+969
-77
No files matched your search
@@ -130,6 +130,33 @@ export const flowchartStatisticsSchema = z.object({
|
||||
problemCount: z.number().int(),
|
||||
})
|
||||
|
||||
/**
|
||||
* 2026-10 起流程图的评法:AI 拿题目的例子和几组测试数据,在学生的图上从「开始」走到「结束」,
|
||||
* 逐组看输出对不对(不再打逻辑 40 / 完整 30 / 规范 20 / 清晰 10 四项分)。这份报告存在
|
||||
* `ai_criteria_details` 里,靠 `version: 2` 和老的四项分区分开 —— 老提交照旧按四项分显示。
|
||||
*
|
||||
* path / wrongAt 里是 Mermaid 的节点编号(n0 是开始),前端按同一套顺序对回画布上的框。
|
||||
*/
|
||||
export interface FlowchartCaseResult {
|
||||
/** 「例子 1」「测试 6」 */
|
||||
name: string
|
||||
input: string
|
||||
expected: string
|
||||
/** 照着图走出来的输出,多行用换行连起来 */
|
||||
output: string
|
||||
ok: boolean
|
||||
path: string[]
|
||||
wrongAt: string | null
|
||||
why: string
|
||||
}
|
||||
|
||||
export interface FlowchartCaseReport {
|
||||
version: 2
|
||||
passed: number
|
||||
total: number
|
||||
cases: FlowchartCaseResult[]
|
||||
}
|
||||
|
||||
export const flowchartUpdateSchema = z.object({
|
||||
type: z.enum([
|
||||
"flowchart_evaluation_completed",
|
||||
|
||||
Reference in new issue
Block a user