@dzhechkov/skills-academic 0.1.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.
@@ -0,0 +1,69 @@
1
+ # question-generator evaluation
2
+ # Run: aqe eval question-generator
3
+
4
+ test_cases:
5
+ - name: "basic invocation"
6
+ input: "Сгенерируй вопросы к защите"
7
+ expected:
8
+ status: success
9
+ summary_contains: "question-generator"
10
+
11
+ - name: "questions from topic"
12
+ input: "Сгенерируй вопросы к защите ВКР на тему 'Влияние цифровой трансформации на управление знаниями'"
13
+ expected:
14
+ status: success
15
+ has_fields:
16
+ - topic
17
+ - questions
18
+ - stats
19
+
20
+ - name: "all categories present"
21
+ input: "Сгенерируй вопросы всех категорий по ВКР о машинном обучении в медицине"
22
+ expected:
23
+ status: success
24
+ questions_categories_include:
25
+ - basic
26
+ - methodological
27
+ - practical
28
+ - critical
29
+ - related
30
+
31
+ - name: "difficulty ranking"
32
+ input: "Ранжируй вопросы по сложности от базовых к экспертным"
33
+ expected:
34
+ status: success
35
+ has_fields:
36
+ - questions
37
+ questions_sorted_by: difficulty
38
+
39
+ - name: "expected keywords"
40
+ input: "Для каждого вопроса укажи ожидаемые ключевые слова в ответе"
41
+ expected:
42
+ status: success
43
+ all_questions_have: expected_keywords
44
+
45
+ - name: "basic questions only"
46
+ input: "Сгенерируй только базовые вопросы для проверки понимания темы"
47
+ expected:
48
+ status: success
49
+ questions_category_filter: basic
50
+
51
+ - name: "provocative questions"
52
+ input: "Подготовь провокационные вопросы по слабым местам работы"
53
+ expected:
54
+ status: success
55
+ has_fields:
56
+ - questions
57
+ questions_categories_include:
58
+ - critical
59
+
60
+ - name: "question count and stats"
61
+ input: "Сгенерируй 10-15 вопросов и покажи статистику по категориям"
62
+ expected:
63
+ status: success
64
+ has_fields:
65
+ - stats
66
+ stats_has:
67
+ - total_questions
68
+ - by_category
69
+ - by_difficulty
@@ -0,0 +1,87 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "question-generator output",
4
+ "description": "Structured output from the question-generator skill",
5
+ "type": "object",
6
+ "required": ["status", "topic", "questions", "stats"],
7
+ "properties": {
8
+ "status": {
9
+ "type": "string",
10
+ "enum": ["success", "error", "skipped"]
11
+ },
12
+ "topic": {
13
+ "type": "string",
14
+ "description": "Thesis topic"
15
+ },
16
+ "key_concepts": {
17
+ "type": "array",
18
+ "items": { "type": "string" },
19
+ "description": "Key concepts extracted from the thesis"
20
+ },
21
+ "key_methods": {
22
+ "type": "array",
23
+ "items": { "type": "string" },
24
+ "description": "Key methods used in the thesis"
25
+ },
26
+ "key_results": {
27
+ "type": "array",
28
+ "items": { "type": "string" },
29
+ "description": "Key results of the thesis"
30
+ },
31
+ "questions": {
32
+ "type": "array",
33
+ "items": {
34
+ "type": "object",
35
+ "required": ["text", "category", "difficulty", "expected_keywords"],
36
+ "properties": {
37
+ "text": {
38
+ "type": "string",
39
+ "description": "Question text in Russian"
40
+ },
41
+ "category": {
42
+ "type": "string",
43
+ "enum": ["basic", "methodological", "practical", "critical", "related"],
44
+ "description": "Question category"
45
+ },
46
+ "difficulty": {
47
+ "type": "integer",
48
+ "minimum": 1,
49
+ "maximum": 3,
50
+ "description": "Difficulty level: 1=basic, 2=advanced, 3=expert"
51
+ },
52
+ "expected_keywords": {
53
+ "type": "array",
54
+ "items": { "type": "string" },
55
+ "minItems": 1,
56
+ "description": "Expected keywords in the answer"
57
+ }
58
+ }
59
+ },
60
+ "minItems": 1
61
+ },
62
+ "stats": {
63
+ "type": "object",
64
+ "properties": {
65
+ "total_questions": { "type": "integer" },
66
+ "by_category": {
67
+ "type": "object",
68
+ "properties": {
69
+ "basic": { "type": "integer" },
70
+ "methodological": { "type": "integer" },
71
+ "practical": { "type": "integer" },
72
+ "critical": { "type": "integer" },
73
+ "related": { "type": "integer" }
74
+ }
75
+ },
76
+ "by_difficulty": {
77
+ "type": "object",
78
+ "properties": {
79
+ "level_1": { "type": "integer" },
80
+ "level_2": { "type": "integer" },
81
+ "level_3": { "type": "integer" }
82
+ }
83
+ }
84
+ }
85
+ }
86
+ }
87
+ }
@@ -0,0 +1,49 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "title": "question-generator config validator",
4
+ "description": "Validates configuration inputs for the question-generator skill",
5
+ "type": "object",
6
+ "properties": {
7
+ "thesis_path": {
8
+ "type": "string",
9
+ "description": "Path to the thesis document (PDF or text)"
10
+ },
11
+ "thesis_topic": {
12
+ "type": "string",
13
+ "description": "Thesis topic (if document not provided)"
14
+ },
15
+ "thesis_abstract": {
16
+ "type": "string",
17
+ "description": "Thesis abstract text (if document not provided)"
18
+ },
19
+ "categories": {
20
+ "type": "array",
21
+ "items": {
22
+ "type": "string",
23
+ "enum": ["basic", "methodological", "practical", "critical", "related"]
24
+ },
25
+ "default": ["basic", "methodological", "practical", "critical", "related"],
26
+ "description": "Which question categories to generate"
27
+ },
28
+ "max_questions": {
29
+ "type": "integer",
30
+ "minimum": 5,
31
+ "maximum": 30,
32
+ "default": 15,
33
+ "description": "Maximum number of questions to generate"
34
+ },
35
+ "difficulty_range": {
36
+ "type": "object",
37
+ "properties": {
38
+ "min": { "type": "integer", "minimum": 1, "maximum": 3 },
39
+ "max": { "type": "integer", "minimum": 1, "maximum": 3 }
40
+ },
41
+ "default": { "min": 1, "max": 3 },
42
+ "description": "Difficulty range for generated questions"
43
+ }
44
+ },
45
+ "anyOf": [
46
+ { "required": ["thesis_path"] },
47
+ { "required": ["thesis_topic"] }
48
+ ]
49
+ }