- 学生画的图现在按例子和测试数据评(拼成程序跑),参考图用不上了:「让学生自己画」 只剩一句说明,保存前改成检查有没有例子;「给学生的提示」那一栏去掉(学生从来看不到, 16 道题也都没填) - 「给学生看一张参考流程图」改用学生画图的同一个编辑器,存结构树(problem.flowchart_data, 原来是死列),Mermaid 由后端照它生成,题面里的图和学生交的图同一套形状 - 「AI 照 Python 答案画一张」改成出结构树,直接摆在画布上接着改;for 循环画成 计数变量 + 当型循环 - 老题手写的 Mermaid 照旧给代码框,旁边「改用画布画」 Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
b9ece7d38f
commit
6e946c99fb
8 files changed
+168
-57
No files matched your search
@@ -675,8 +675,9 @@ export const generateFlowchartRequestSchema = z.object({
|
||||
.min(1)
|
||||
.max(64 * 1024),
|
||||
})
|
||||
/** AI 照 Python 答案画的参考流程图:结构树(FlowDoc),后台画布直接摆上去接着改 */
|
||||
export const generateFlowchartResponseSchema = z.object({
|
||||
flowchart: z.string(),
|
||||
doc: z.record(z.string(), z.unknown()),
|
||||
})
|
||||
|
||||
// ---------------------------------------------------------------- 题目管理
|
||||
@@ -771,6 +772,8 @@ export const adminProblemSchema = z.object({
|
||||
allowFlowchart: z.boolean(),
|
||||
showFlowchart: z.boolean(),
|
||||
mermaidCode: z.string().nullable(),
|
||||
/** 参考流程图的结构树(FlowDoc);2026-10 之前出的题只有 mermaidCode,这里是空对象 */
|
||||
flowchartData: z.record(z.string(), z.unknown()),
|
||||
flowchartHint: z.string().nullable(),
|
||||
astRules: astRulesSchema.nullable(),
|
||||
answers: z.array(problemAnswerSchema),
|
||||
@@ -823,6 +826,11 @@ export const createProblemRequestSchema = z.object({
|
||||
allowFlowchart: z.boolean().default(false),
|
||||
showFlowchart: z.boolean().default(false),
|
||||
mermaidCode: z.string().nullable().default(null),
|
||||
/**
|
||||
* 用画布画的参考流程图(FlowDoc)。给了就以它为准,mermaidCode 由后端照它重新生成;
|
||||
* 不给(老题只有手写的 Mermaid)就原样存 mermaidCode
|
||||
*/
|
||||
flowchartData: z.record(z.string(), z.unknown()).nullable().default(null),
|
||||
flowchartHint: z.string().nullable().default(null),
|
||||
astRules: astRulesSchema.nullable().default(null),
|
||||
// order_sensitive 缺省补 false —— 与旧后端 SQLConfigSerializer 的
|
||||
|
||||
Reference in new issue
Block a user