hydro-ai-helper 2.3.0 → 2.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/dist/handlers/adminConfigHandler.js +30 -0
- package/dist/handlers/adminConfigHandler.js.map +1 -1
- package/dist/handlers/batchSummaryHandler.js +15 -8
- package/dist/handlers/batchSummaryHandler.js.map +1 -1
- package/dist/handlers/studentHandler.js +1 -1
- package/dist/handlers/studentHandler.js.map +1 -1
- package/dist/handlers/teachingSummaryHandler.js +38 -9
- package/dist/handlers/teachingSummaryHandler.js.map +1 -1
- package/dist/models/aiConfig.js +15 -2
- package/dist/models/aiConfig.js.map +1 -1
- package/dist/models/studentSummary.js +13 -0
- package/dist/models/studentSummary.js.map +1 -1
- package/dist/models/teachingSummary.js +2 -0
- package/dist/models/teachingSummary.js.map +1 -1
- package/dist/services/analyzers/errorClusterAnalyzer.js +1 -0
- package/dist/services/analyzers/errorClusterAnalyzer.js.map +1 -1
- package/dist/services/analyzers/findingConsolidator.js +172 -0
- package/dist/services/analyzers/findingConsolidator.js.map +1 -0
- package/dist/services/batchSummaryService.js +79 -38
- package/dist/services/batchSummaryService.js.map +1 -1
- package/dist/services/openaiClient.js +59 -28
- package/dist/services/openaiClient.js.map +1 -1
- package/dist/services/promptService.js +49 -24
- package/dist/services/promptService.js.map +1 -1
- package/dist/services/teachingAnalysisService.js +13 -2
- package/dist/services/teachingAnalysisService.js.map +1 -1
- package/dist/services/teachingSuggestionService.js +43 -44
- package/dist/services/teachingSuggestionService.js.map +1 -1
- package/frontend/admin/BudgetConfigForm.tsx +1 -1
- package/frontend/admin/ConfigPanel.tsx +53 -3
- package/frontend/admin/EndpointManager.tsx +1 -1
- package/frontend/admin/FeedbackForm.tsx +1 -1
- package/frontend/admin/JailbreakLogsViewer.tsx +1 -1
- package/frontend/admin/ScenarioModelSelector.tsx +238 -0
- package/frontend/admin/TelemetrySettings.tsx +1 -1
- package/frontend/admin/VersionBadge.tsx +1 -1
- package/frontend/admin/configTypes.ts +9 -0
- package/frontend/batchSummary/BatchSummaryPanel.tsx +29 -1
- package/frontend/batchSummary/StudentSummaryView.tsx +47 -14
- package/frontend/batchSummary/SummaryCard.tsx +1 -1
- package/frontend/batchSummary/useBatchSummary.ts +26 -8
- package/frontend/components/AIHelperDashboard.tsx +1 -1
- package/frontend/components/ErrorBoundary.tsx +1 -1
- package/frontend/components/ScoreboardTabContainer.tsx +1 -1
- package/frontend/generated/localeFallback.ts +1502 -0
- package/frontend/problem_detail.page.tsx +1 -1
- package/frontend/student/AIAssistantPanel.tsx +1 -1
- package/frontend/student/ChatInput.tsx +1 -1
- package/frontend/student/ChatMessageList.tsx +1 -1
- package/frontend/student/ThinkingBlock.tsx +1 -1
- package/frontend/student/hooks/useChatSession.ts +1 -1
- package/frontend/teacher/AnalyticsPage.tsx +1 -1
- package/frontend/teacher/ClassAnalyticsTable.tsx +1 -1
- package/frontend/teacher/ConversationDetail.tsx +1 -1
- package/frontend/teacher/ConversationDetailModal.tsx +1 -1
- package/frontend/teacher/ConversationList.tsx +1 -1
- package/frontend/teacher/CostDashboard.tsx +1 -1
- package/frontend/teacher/ExportDialog.tsx +1 -1
- package/frontend/teacher/MetricsPanel.tsx +1 -1
- package/frontend/teacher/ProblemAnalyticsTable.tsx +1 -1
- package/frontend/teacher/StudentAnalyticsTable.tsx +1 -1
- package/frontend/teacher/analyticsTypes.ts +1 -1
- package/frontend/teachingSummary/TeachingReviewPanel.tsx +1 -1
- package/frontend/teachingSummary/TeachingSummaryPanel.tsx +525 -175
- package/frontend/teachingSummary/useTeachingSummary.ts +10 -0
- package/frontend/utils/i18n.ts +32 -0
- package/frontend/utils/i18nFallbackCore.ts +30 -0
- package/locales/en.yaml +30 -6
- package/locales/zh.yaml +30 -6
- package/package.json +3 -1
|
@@ -129,6 +129,31 @@ class TeachingSummaryHandler extends hydrooj_1.Handler {
|
|
|
129
129
|
this.response.type = 'application/json';
|
|
130
130
|
}
|
|
131
131
|
}
|
|
132
|
+
/**
|
|
133
|
+
* 解析发现项涉及的学生 uid → 用户名映射(best-effort,失败不阻塞生成)
|
|
134
|
+
*/
|
|
135
|
+
async resolveStudentNames(findings) {
|
|
136
|
+
const names = {};
|
|
137
|
+
try {
|
|
138
|
+
const uids = new Set();
|
|
139
|
+
for (const f of findings) {
|
|
140
|
+
for (const uid of f.evidence.affectedStudents)
|
|
141
|
+
uids.add(uid);
|
|
142
|
+
}
|
|
143
|
+
if (uids.size === 0)
|
|
144
|
+
return names;
|
|
145
|
+
const userDocs = await this.ctx.db.collection('user')
|
|
146
|
+
.find({ _id: { $in: Array.from(uids) } }, { projection: { _id: 1, uname: 1 } })
|
|
147
|
+
.toArray();
|
|
148
|
+
for (const u of userDocs) {
|
|
149
|
+
names[String(u._id)] = u.uname || `User #${u._id}`;
|
|
150
|
+
}
|
|
151
|
+
}
|
|
152
|
+
catch (err) {
|
|
153
|
+
console.error('[TeachingSummaryHandler] resolveStudentNames failed:', err);
|
|
154
|
+
}
|
|
155
|
+
return names;
|
|
156
|
+
}
|
|
132
157
|
async generateAsync(model, domainId, summaryId, contestObjId, tdoc, studentUids, teachingFocus) {
|
|
133
158
|
const startTime = Date.now();
|
|
134
159
|
this.ctx.get('featureStatsModel')?.recordAttempt('teaching_summary').catch(() => { });
|
|
@@ -200,7 +225,7 @@ class TeachingSummaryHandler extends hydrooj_1.Handler {
|
|
|
200
225
|
// validated only top-level apiBaseUrl/modelName/apiKeyEncrypted, which are
|
|
201
226
|
// empty under the v2 multi-endpoint config — causing "AI 服务配置不完整"
|
|
202
227
|
// even when chat worked. MultiModelClient also falls back to legacy fields.
|
|
203
|
-
const aiClient = await (0, openaiClient_1.createMultiModelClientFromConfig)(this.ctx);
|
|
228
|
+
const aiClient = await (0, openaiClient_1.createMultiModelClientFromConfig)(this.ctx, undefined, 'teachingAnalysis');
|
|
204
229
|
const suggestionService = new teachingSuggestionService_1.TeachingSuggestionService(aiClient);
|
|
205
230
|
// Extract related findings for fill-in candidates
|
|
206
231
|
const fillInRelatedFindings = fillInCandidatesForPrompt.length > 0
|
|
@@ -208,7 +233,7 @@ class TeachingSummaryHandler extends hydrooj_1.Handler {
|
|
|
208
233
|
.filter(f => f.evidence.affectedProblems.some(pid => fillInCandidatesForPrompt.some(c => c.pid === pid)))
|
|
209
234
|
.map(f => ({
|
|
210
235
|
title: f.title,
|
|
211
|
-
errorSignature: f.
|
|
236
|
+
errorSignature: f.errorSignature,
|
|
212
237
|
affectedCount: f.evidence.affectedStudents.length,
|
|
213
238
|
}))
|
|
214
239
|
: [];
|
|
@@ -229,17 +254,15 @@ class TeachingSummaryHandler extends hydrooj_1.Handler {
|
|
|
229
254
|
})
|
|
230
255
|
: Promise.resolve(null),
|
|
231
256
|
]);
|
|
232
|
-
const combinedSuggestion = fillInResult
|
|
233
|
-
? `${overallResult.text}\n\n${fillInResult.text}`
|
|
234
|
-
: overallResult.text;
|
|
235
257
|
let totalPromptTokens = overallResult.tokenUsage.promptTokens
|
|
236
258
|
+ (fillInResult?.tokenUsage.promptTokens ?? 0);
|
|
237
259
|
let totalCompletionTokens = overallResult.tokenUsage.completionTokens
|
|
238
260
|
+ (fillInResult?.tokenUsage.completionTokens ?? 0);
|
|
239
|
-
// Deep dives for findings
|
|
261
|
+
// Deep dives only for primary findings — secondary ones are shown as
|
|
262
|
+
// one-liners in the UI and don't warrant an extra LLM call each
|
|
240
263
|
const deepDiveResults = {};
|
|
241
264
|
const problemDocMap = new Map(problemDocs.map((doc) => [doc.docId, doc]));
|
|
242
|
-
const deepDiveFindings = analysisResult.findings.filter(f => f.needsDeepDive);
|
|
265
|
+
const deepDiveFindings = analysisResult.findings.filter(f => f.needsDeepDive && !f.isSecondary);
|
|
243
266
|
// Batch-fetch code samples for all deep-dive findings (avoids N+1 queries)
|
|
244
267
|
if (deepDiveFindings.length > 0) {
|
|
245
268
|
await model.updateProgress(summaryId, 'deep_diving');
|
|
@@ -299,12 +322,18 @@ class TeachingSummaryHandler extends hydrooj_1.Handler {
|
|
|
299
322
|
totalPromptTokens += deepDiveResult.tokenUsage.promptTokens;
|
|
300
323
|
totalCompletionTokens += deepDiveResult.tokenUsage.completionTokens;
|
|
301
324
|
}
|
|
302
|
-
//
|
|
325
|
+
// Resolve student names referenced by findings so the UI can show
|
|
326
|
+
// actionable name lists instead of opaque uid counts
|
|
327
|
+
const studentNames = await this.resolveStudentNames(analysisResult.findings);
|
|
328
|
+
// Save completed results — homework is stored separately from the main
|
|
329
|
+
// suggestion so the UI can surface it as a first-class deliverable
|
|
303
330
|
await model.updateProgress(summaryId, 'saving');
|
|
304
331
|
await model.saveResults(summaryId, {
|
|
305
332
|
stats: analysisResult.stats,
|
|
306
333
|
findings: analysisResult.findings,
|
|
307
|
-
overallSuggestion:
|
|
334
|
+
overallSuggestion: overallResult.text,
|
|
335
|
+
homeworkText: fillInResult?.text ?? '',
|
|
336
|
+
studentNames,
|
|
308
337
|
deepDiveResults,
|
|
309
338
|
tokenUsage: { promptTokens: totalPromptTokens, completionTokens: totalCompletionTokens },
|
|
310
339
|
generationTimeMs: Date.now() - startTime,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teachingSummaryHandler.js","sourceRoot":"","sources":["../../src/handlers/teachingSummaryHandler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"teachingSummaryHandler.js","sourceRoot":"","sources":["../../src/handlers/teachingSummaryHandler.ts"],"names":[],"mappings":"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"}
|
package/dist/models/aiConfig.js
CHANGED
|
@@ -8,11 +8,12 @@
|
|
|
8
8
|
* v2 新增:支持多 API 端点配置、模型自动获取、Fallback 机制
|
|
9
9
|
*/
|
|
10
10
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
11
|
-
exports.AIConfigModel = exports.CURRENT_CONFIG_VERSION = void 0;
|
|
11
|
+
exports.AIConfigModel = exports.AI_SCENARIOS = exports.CURRENT_CONFIG_VERSION = void 0;
|
|
12
12
|
const crypto_1 = require("crypto");
|
|
13
13
|
const crypto_2 = require("../lib/crypto");
|
|
14
14
|
/** 当前配置版本号 */
|
|
15
15
|
exports.CURRENT_CONFIG_VERSION = 2;
|
|
16
|
+
exports.AI_SCENARIOS = ['studentChat', 'learningSummary', 'teachingAnalysis'];
|
|
16
17
|
/**
|
|
17
18
|
* AI Config Model 操作类
|
|
18
19
|
* 封装 AI 配置的 CRUD 操作
|
|
@@ -181,7 +182,19 @@ class AIConfigModel {
|
|
|
181
182
|
const endpoints = config.endpoints.filter(ep => ep.id !== endpointId);
|
|
182
183
|
// 同时移除引用该端点的 selectedModels
|
|
183
184
|
const selectedModels = config.selectedModels.filter(sm => sm.endpointId !== endpointId);
|
|
184
|
-
|
|
185
|
+
// 同时清理各场景模型链中对该端点的引用
|
|
186
|
+
let scenarioModels = config.scenarioModels;
|
|
187
|
+
if (scenarioModels) {
|
|
188
|
+
const cleaned = {};
|
|
189
|
+
for (const scenario of exports.AI_SCENARIOS) {
|
|
190
|
+
const chain = scenarioModels[scenario];
|
|
191
|
+
if (chain?.length) {
|
|
192
|
+
cleaned[scenario] = chain.filter(sm => sm.endpointId !== endpointId);
|
|
193
|
+
}
|
|
194
|
+
}
|
|
195
|
+
scenarioModels = cleaned;
|
|
196
|
+
}
|
|
197
|
+
await this.updateConfig({ endpoints, selectedModels, ...(scenarioModels ? { scenarioModels } : {}) });
|
|
185
198
|
}
|
|
186
199
|
/**
|
|
187
200
|
* 更新选中的模型列表
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aiConfig.js","sourceRoot":"","sources":["../../src/models/aiConfig.ts"],"names":[],"mappings":";AAAA;;;;;;;GAOG;;;AAGH,mCAAoC;AACpC,0CAA0C;AAE1C,cAAc;AACD,QAAA,sBAAsB,GAAG,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"aiConfig.js","sourceRoot":"","sources":["../../src/models/aiConfig.ts"],"names":[],"mappings":"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"}
|
|
@@ -60,6 +60,19 @@ class StudentSummaryModel {
|
|
|
60
60
|
const result = await this.collection.updateMany({ jobId, status: 'completed', publishStatus: 'draft' }, { $set: { publishStatus: 'published', updatedAt: new Date() } });
|
|
61
61
|
return result.modifiedCount;
|
|
62
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Counts of students in a job that publishAll cannot reach: generation
|
|
65
|
+
* failed, or not generated yet (pending/generating). Surfaced to the teacher
|
|
66
|
+
* on publish — otherwise these students are skipped silently and see a blank
|
|
67
|
+
* learning-summary tab while the teacher believes everything was published.
|
|
68
|
+
*/
|
|
69
|
+
async countUnpublishableByJob(jobId) {
|
|
70
|
+
const [failed, pending] = await Promise.all([
|
|
71
|
+
this.collection.countDocuments({ jobId, status: 'failed' }),
|
|
72
|
+
this.collection.countDocuments({ jobId, status: { $in: ['pending', 'generating'] } }),
|
|
73
|
+
]);
|
|
74
|
+
return { failed, pending };
|
|
75
|
+
}
|
|
63
76
|
async publishOne(id) {
|
|
64
77
|
await this.collection.updateOne({ _id: id }, { $set: { publishStatus: 'published', updatedAt: new Date() } });
|
|
65
78
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"studentSummary.js","sourceRoot":"","sources":["../../src/models/studentSummary.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"studentSummary.js","sourceRoot":"","sources":["../../src/models/studentSummary.ts"],"names":[],"mappings":";;;AAmCA,MAAa,mBAAmB;IAG9B,YAAY,EAAM;QAChB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC,UAAU,CAAiB,sBAAsB,CAAC,CAAC;IAC1E,CAAC;IAED,KAAK,CAAC,aAAa;QACjB,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAC/B,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EACvB,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,yBAAyB,EAAE,CAClD,CAAC;QACF,MAAM,IAAI,CAAC,UAAU,CAAC,WAAW,CAC/B,EAAE,QAAQ,EAAE,CAAC,EAAE,SAAS,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,EACxC,EAAE,IAAI,EAAE,+BAA+B,EAAE,CAC1C,CAAC;QACF,OAAO,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAC;IACpE,CAAC;IAED,KAAK,CAAC,WAAW,CACf,KAAmB,EACnB,QAAgB,EAChB,SAAuB,EACvB,OAAiB;QAEjB,MAAM,IAAI,CAAC,eAAe,CAAC,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,OAAO,CAAC,CAAC;IAClE,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAmB,EAAE,MAAc;QACxD,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC,CAAC;IACpD,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,KAAmB;QACpC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IACvE,CAAC;IAED,KAAK,CAAC,uBAAuB,CAC3B,QAAgB,EAChB,SAAuB,EACvB,MAAc;QAEd,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAC7B,QAAQ;YACR,SAAS;YACT,MAAM;YACN,aAAa,EAAE,WAAW;YAC1B,MAAM,EAAE,WAAW;SACpB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAgB;QACnC,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAC1D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,EAAgB,EAChB,OAAe,EACf,gBAAmC,EACnC,UAAkD;QAElD,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX;YACE,IAAI,EAAE;gBACJ,MAAM,EAAE,WAAW;gBACnB,OAAO;gBACP,eAAe,EAAE,OAAO;gBACxB,gBAAgB;gBAChB,UAAU;gBACV,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB;SACF,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAgB,EAAE,KAAa;QAC9C,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,KAAK,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAC7D,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,EAAgB;QACnC,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CACpE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,oBAAoB,CAAC,KAAmB;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC7C,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,EAC3B,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,KAAK,EAAE,IAAI,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CACpE,CAAC;QACF,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,WAAW,CAAC,EAAgB,EAAE,OAAe;QACjD,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAC7C,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAmB;QAClC,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC7C,EAAE,KAAK,EAAE,MAAM,EAAE,WAAW,EAAE,aAAa,EAAE,OAAO,EAAE,EACtD,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAChE,CAAC;QACF,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED;;;;;OAKG;IACH,KAAK,CAAC,uBAAuB,CAAC,KAAmB;QAC/C,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,MAAM,OAAO,CAAC,GAAG,CAAC;YAC1C,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,CAAC;YAC3D,IAAI,CAAC,UAAU,CAAC,cAAc,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,EAAE,GAAG,EAAE,CAAC,SAAS,EAAE,YAAY,CAAC,EAAE,EAAE,CAAC;SACtF,CAAC,CAAC;QACH,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,EAAgB;QAC/B,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX,EAAE,IAAI,EAAE,EAAE,aAAa,EAAE,WAAW,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CAChE,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,EAAgB;QAClC,MAAM,IAAI,CAAC,UAAU,CAAC,SAAS,CAC7B,EAAE,GAAG,EAAE,EAAE,EAAE,EACX;YACE,IAAI,EAAE;gBACJ,OAAO,EAAE,IAAI;gBACb,MAAM,EAAE,SAAS;gBACjB,aAAa,EAAE,OAAO;gBACtB,SAAS,EAAE,IAAI,IAAI,EAAE;aACtB;SACF,CACF,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAmB;QACxC,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC;IAC1F,CAAC;IAED,KAAK,CAAC,wBAAwB,CAAC,KAAmB;QAChD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAC7C,EAAE,KAAK,EAAE,MAAM,EAAE,YAAY,EAAE,EAC/B,EAAE,IAAI,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,EAAE,IAAI,IAAI,EAAE,EAAE,EAAE,CACvD,CAAC;QACF,OAAO,MAAM,CAAC,aAAa,CAAC;IAC9B,CAAC;IAED,KAAK,CAAC,kBAAkB,CAAC,KAAmB;QAC1C,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YACxC,KAAK;YACL,KAAK,EAAE,EAAE,GAAG,EAAE,CAAC,UAAU,EAAE,kBAAkB,CAAC,EAAE;SACjD,CAAC,CAAC;QACH,OAAO,GAAG,KAAK,IAAI,CAAC;IACtB,CAAC;IAED,KAAK,CAAC,eAAe,CACnB,KAAmB,EACnB,QAAgB,EAChB,SAAuB,EACvB,OAAiB;QAEjB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;YAAE,OAAO,CAAC,CAAC;QACnC,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;QACvB,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YACpC,KAAK;YACL,QAAQ;YACR,SAAS;YACT,MAAM;YACN,MAAM,EAAE,SAAkB;YAC1B,aAAa,EAAE,OAAgB;YAC/B,OAAO,EAAE,IAAI;YACb,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,EAAE;YACpB,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,UAAU,EAAE,CAAC,EAAE;YACxC,KAAK,EAAE,IAAI;YACX,SAAS,EAAE,GAAG;YACd,SAAS,EAAE,GAAG;SACf,CAAC,CAAC,CAAC;QACJ,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,IAAwB,EAAE,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;YAC9F,OAAO,MAAM,CAAC,aAAa,CAAC;QAC9B,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,GAAG,CAAC,IAAI,KAAK,KAAK,IAAI,GAAG,CAAC,WAAW,EAAE,CAAC;gBAC1C,OAAO,GAAG,CAAC,MAAM,EAAE,aAAa,IAAI,CAAC,CAAC;YACxC,CAAC;YACD,MAAM,GAAG,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,gBAAgB,CAAC,KAAmB;QACxC,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,UAAU;aAC/B,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,UAAU,EAAE,EAAE,MAAM,EAAE,CAAC,EAAE,EAAE,CAAC;aAC9C,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACnC,CAAC;CACF;AAlND,kDAkNC"}
|
|
@@ -122,6 +122,8 @@ class TeachingSummaryModel {
|
|
|
122
122
|
stats: data.stats,
|
|
123
123
|
findings: data.findings,
|
|
124
124
|
overallSuggestion: data.overallSuggestion,
|
|
125
|
+
homeworkText: data.homeworkText ?? '',
|
|
126
|
+
studentNames: data.studentNames ?? {},
|
|
125
127
|
deepDiveResults: data.deepDiveResults ?? {},
|
|
126
128
|
tokenUsage: data.tokenUsage,
|
|
127
129
|
generationTimeMs: data.generationTimeMs,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"teachingSummary.js","sourceRoot":"","sources":["../../src/models/teachingSummary.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;AAIH,4DAAyD;
|
|
1
|
+
{"version":3,"file":"teachingSummary.js","sourceRoot":"","sources":["../../src/models/teachingSummary.ts"],"names":[],"mappings":"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"}
|
|
@@ -81,6 +81,7 @@ function analyzeErrorClusters(records, pids, totalStudents, pidTitles) {
|
|
|
81
81
|
dimension: 'errorCluster',
|
|
82
82
|
severity: uids.size >= totalStudents * 0.5 ? 'high' : 'medium',
|
|
83
83
|
title: `${pidTitles?.get(pid) || `题目 ${pid}`}:${pct}% 学生遇到相同错误模式 (${statusLabel})`,
|
|
84
|
+
errorSignature: sig,
|
|
84
85
|
evidence: {
|
|
85
86
|
affectedStudents: Array.from(uids),
|
|
86
87
|
affectedProblems: [pid],
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"errorClusterAnalyzer.js","sourceRoot":"","sources":["../../../src/services/analyzers/errorClusterAnalyzer.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;AAmBH,wCAkBC;AAED,wDAQC;AAED,
|
|
1
|
+
{"version":3,"file":"errorClusterAnalyzer.js","sourceRoot":"","sources":["../../../src/services/analyzers/errorClusterAnalyzer.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,172 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Finding Consolidator — 发现项整合器
|
|
4
|
+
*
|
|
5
|
+
* 规则引擎的 11 个维度常对同一现象从不同角度各出一条发现,教师会看到大量重复内容:
|
|
6
|
+
* commonError 与 errorCluster 对同一题目各出一条、crossCorrelation 把 atRisk 的
|
|
7
|
+
* 学生集合重新切一遍再出一条。本模块在 LLM 调用与前端展示之前做三件事:
|
|
8
|
+
*
|
|
9
|
+
* 1. 合并:同题且学生集合高度重叠的 errorCluster 并入 commonError,
|
|
10
|
+
* 错误签名与代码样本随主发现保留;
|
|
11
|
+
* 2. 折叠:学生集合基本被某个主发现覆盖的 crossCorrelation 降级为该发现的
|
|
12
|
+
* supplements 补充说明,不再单独成条;
|
|
13
|
+
* 3. 排序限量:按严重度 + 影响人数排序,前 MAX_PRIMARY 条为重点问题,
|
|
14
|
+
* 其余标记 isSecondary(前端在"其他观察"中一行带过)。
|
|
15
|
+
* progress(正向进展)不参与排序限量,固定排在最后由前端另行展示。
|
|
16
|
+
*/
|
|
17
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
18
|
+
exports.MAX_PRIMARY = void 0;
|
|
19
|
+
exports.consolidateFindings = consolidateFindings;
|
|
20
|
+
exports.MAX_PRIMARY = 5;
|
|
21
|
+
/** errorCluster 并入 commonError 所需的最小学生重叠率(占较小集合的比例) */
|
|
22
|
+
const MERGE_OVERLAP_THRESHOLD = 0.5;
|
|
23
|
+
/** crossCorrelation 折叠为补充说明所需的最小学生包含率 */
|
|
24
|
+
const FOLD_CONTAINMENT_THRESHOLD = 0.8;
|
|
25
|
+
const SEVERITY_RANK = {
|
|
26
|
+
high: 2,
|
|
27
|
+
medium: 1,
|
|
28
|
+
low: 0,
|
|
29
|
+
};
|
|
30
|
+
function overlapRatio(a, b) {
|
|
31
|
+
if (a.length === 0 || b.length === 0)
|
|
32
|
+
return 0;
|
|
33
|
+
const setB = new Set(b);
|
|
34
|
+
let shared = 0;
|
|
35
|
+
for (const uid of a) {
|
|
36
|
+
if (setB.has(uid))
|
|
37
|
+
shared++;
|
|
38
|
+
}
|
|
39
|
+
return shared / Math.min(a.length, b.length);
|
|
40
|
+
}
|
|
41
|
+
/** |a ∩ b| / |a| — a 被 b 覆盖的比例 */
|
|
42
|
+
function containmentRatio(a, b) {
|
|
43
|
+
if (a.length === 0)
|
|
44
|
+
return 0;
|
|
45
|
+
const setB = new Set(b);
|
|
46
|
+
let shared = 0;
|
|
47
|
+
for (const uid of a) {
|
|
48
|
+
if (setB.has(uid))
|
|
49
|
+
shared++;
|
|
50
|
+
}
|
|
51
|
+
return shared / a.length;
|
|
52
|
+
}
|
|
53
|
+
function maxSeverity(a, b) {
|
|
54
|
+
return SEVERITY_RANK[a] >= SEVERITY_RANK[b] ? a : b;
|
|
55
|
+
}
|
|
56
|
+
/** 从错误签名提取状态标签(如 "WA:tests[3,4]" → "WA") */
|
|
57
|
+
function signatureStatusLabel(signature) {
|
|
58
|
+
if (!signature)
|
|
59
|
+
return null;
|
|
60
|
+
const idx = signature.indexOf(':');
|
|
61
|
+
return idx > 0 ? signature.slice(0, idx) : signature;
|
|
62
|
+
}
|
|
63
|
+
function pushSupplement(host, text) {
|
|
64
|
+
if (!host.supplements)
|
|
65
|
+
host.supplements = [];
|
|
66
|
+
if (!host.supplements.includes(text))
|
|
67
|
+
host.supplements.push(text);
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Step 1: 将 errorCluster 并入同题、学生高度重叠的 commonError。
|
|
71
|
+
* 优先选择标题含有相同错误状态标签(WA/TLE/...)的宿主。
|
|
72
|
+
*/
|
|
73
|
+
function mergeErrorClusters(findings) {
|
|
74
|
+
const commonErrors = findings.filter(f => f.dimension === 'commonError');
|
|
75
|
+
const dropped = new Set();
|
|
76
|
+
for (const cluster of findings) {
|
|
77
|
+
if (cluster.dimension !== 'errorCluster')
|
|
78
|
+
continue;
|
|
79
|
+
const pid = cluster.evidence.affectedProblems[0];
|
|
80
|
+
if (pid === undefined)
|
|
81
|
+
continue;
|
|
82
|
+
const candidates = commonErrors
|
|
83
|
+
.filter(host => host.evidence.affectedProblems.length === 1
|
|
84
|
+
&& host.evidence.affectedProblems[0] === pid)
|
|
85
|
+
.map(host => ({
|
|
86
|
+
host,
|
|
87
|
+
overlap: overlapRatio(cluster.evidence.affectedStudents, host.evidence.affectedStudents),
|
|
88
|
+
}))
|
|
89
|
+
.filter(({ overlap }) => overlap >= MERGE_OVERLAP_THRESHOLD);
|
|
90
|
+
if (candidates.length === 0)
|
|
91
|
+
continue;
|
|
92
|
+
// 同状态标签的宿主优先,其次按重叠率
|
|
93
|
+
const statusLabel = signatureStatusLabel(cluster.errorSignature);
|
|
94
|
+
candidates.sort((a, b) => {
|
|
95
|
+
if (statusLabel) {
|
|
96
|
+
const aMatch = a.host.title.includes(statusLabel) ? 1 : 0;
|
|
97
|
+
const bMatch = b.host.title.includes(statusLabel) ? 1 : 0;
|
|
98
|
+
if (aMatch !== bMatch)
|
|
99
|
+
return bMatch - aMatch;
|
|
100
|
+
}
|
|
101
|
+
return b.overlap - a.overlap;
|
|
102
|
+
});
|
|
103
|
+
const host = candidates[0].host;
|
|
104
|
+
host.severity = maxSeverity(host.severity, cluster.severity);
|
|
105
|
+
host.needsDeepDive = host.needsDeepDive || cluster.needsDeepDive;
|
|
106
|
+
if (!host.errorSignature)
|
|
107
|
+
host.errorSignature = cluster.errorSignature;
|
|
108
|
+
if (!host.evidence.samples?.code?.length && cluster.evidence.samples?.code?.length) {
|
|
109
|
+
host.evidence.samples = cluster.evidence.samples;
|
|
110
|
+
}
|
|
111
|
+
const clusterSize = cluster.evidence.affectedStudents.length;
|
|
112
|
+
host.evidence.metrics.sameSignatureCount = clusterSize;
|
|
113
|
+
pushSupplement(host, `${clusterSize} 名学生的最后一次提交失败在同一处(错误签名 ${cluster.errorSignature || '相同错误模式'}),大概率是同一个知识点没讲透`);
|
|
114
|
+
dropped.add(cluster.id);
|
|
115
|
+
}
|
|
116
|
+
return findings.filter(f => !dropped.has(f.id));
|
|
117
|
+
}
|
|
118
|
+
/**
|
|
119
|
+
* Step 2: 学生集合基本被某主发现覆盖的 crossCorrelation 折叠为其补充说明。
|
|
120
|
+
*/
|
|
121
|
+
function foldCrossCorrelations(findings) {
|
|
122
|
+
const hosts = findings.filter(f => f.dimension !== 'crossCorrelation' && f.dimension !== 'progress');
|
|
123
|
+
const dropped = new Set();
|
|
124
|
+
for (const cross of findings) {
|
|
125
|
+
if (cross.dimension !== 'crossCorrelation')
|
|
126
|
+
continue;
|
|
127
|
+
if (cross.evidence.affectedStudents.length === 0)
|
|
128
|
+
continue;
|
|
129
|
+
let best = null;
|
|
130
|
+
let bestContainment = 0;
|
|
131
|
+
for (const host of hosts) {
|
|
132
|
+
const containment = containmentRatio(cross.evidence.affectedStudents, host.evidence.affectedStudents);
|
|
133
|
+
if (containment > bestContainment) {
|
|
134
|
+
bestContainment = containment;
|
|
135
|
+
best = host;
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
if (best && bestContainment >= FOLD_CONTAINMENT_THRESHOLD) {
|
|
139
|
+
pushSupplement(best, cross.title);
|
|
140
|
+
dropped.add(cross.id);
|
|
141
|
+
}
|
|
142
|
+
}
|
|
143
|
+
return findings.filter(f => !dropped.has(f.id));
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Step 3: 排序限量。progress 固定最后且不占重点名额。
|
|
147
|
+
*/
|
|
148
|
+
function rankAndCap(findings) {
|
|
149
|
+
const progress = findings.filter(f => f.dimension === 'progress');
|
|
150
|
+
const rest = findings.filter(f => f.dimension !== 'progress');
|
|
151
|
+
rest.sort((a, b) => {
|
|
152
|
+
const sev = SEVERITY_RANK[b.severity] - SEVERITY_RANK[a.severity];
|
|
153
|
+
if (sev !== 0)
|
|
154
|
+
return sev;
|
|
155
|
+
return b.evidence.affectedStudents.length - a.evidence.affectedStudents.length;
|
|
156
|
+
});
|
|
157
|
+
rest.forEach((f, idx) => {
|
|
158
|
+
if (idx >= exports.MAX_PRIMARY)
|
|
159
|
+
f.isSecondary = true;
|
|
160
|
+
});
|
|
161
|
+
return [...rest, ...progress];
|
|
162
|
+
}
|
|
163
|
+
/**
|
|
164
|
+
* 主入口:合并 → 折叠 → 排序限量。
|
|
165
|
+
* 就地修改传入的 finding 对象(宿主吸收补充信息),返回整合后的新数组。
|
|
166
|
+
*/
|
|
167
|
+
function consolidateFindings(findings) {
|
|
168
|
+
const merged = mergeErrorClusters(findings);
|
|
169
|
+
const folded = foldCrossCorrelations(merged);
|
|
170
|
+
return rankAndCap(folded);
|
|
171
|
+
}
|
|
172
|
+
//# sourceMappingURL=findingConsolidator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"findingConsolidator.js","sourceRoot":"","sources":["../../../src/services/analyzers/findingConsolidator.ts"],"names":[],"mappings":"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"}
|