feat: implement curriculum management system including automated generation, enrichment, and versioning workflows

This commit is contained in:
RaymondVerhoef
2026-05-24 19:50:20 +02:00
parent 8e01b21a50
commit c5e23c77cd
15 changed files with 1354 additions and 623 deletions

View File

@@ -46,6 +46,58 @@ export const EMIT_KNOWLEDGE_GRAPH_TOOL = {
},
};
export const EMIT_CURRICULUM_SCHEDULE_TOOL = {
name: 'emit_curriculum_schedule',
description: 'Emit a 26-week curriculum schedule. One theme per week, with an ordered subset of topics from that theme.',
input_schema: {
type: 'object',
properties: {
weeks: {
type: 'array',
items: {
type: 'object',
properties: {
week_number: { type: 'integer', minimum: 1, maximum: 26 },
theme: { type: 'string' },
topic_ids: { type: 'array', items: { type: 'string' }, minItems: 1 },
estimated_duration: { type: 'integer', minimum: 15, maximum: 45 },
week_rationale: { type: 'string' },
},
required: ['week_number', 'theme', 'topic_ids', 'estimated_duration', 'week_rationale'],
},
minItems: 26,
maxItems: 26,
},
},
required: ['weeks'],
},
};
export const EMIT_TOPIC_ENRICHMENT_TOOL = {
name: 'emit_topic_enrichment',
description: 'Enrich a batch of topics with a theme, complexity_weight, and difficulty.',
input_schema: {
type: 'object',
properties: {
topics: {
type: 'array',
items: {
type: 'object',
properties: {
id: { type: 'string' },
theme: { type: 'string' },
complexity_weight: { type: 'integer', minimum: 1, maximum: 5 },
difficulty: { type: 'string', enum: ['introductory', 'intermediate', 'advanced'] },
},
required: ['id', 'theme', 'complexity_weight', 'difficulty'],
},
minItems: 1,
},
},
required: ['topics'],
},
};
const articleSectionSchema = {
type: 'object',