Asem75 commited on
Commit
8ad1693
·
verified ·
1 Parent(s): 1fe6374

Upload 9 files

Browse files
ai_task_queue_manager_integration_contract.json ADDED
@@ -0,0 +1,67 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "ai_task_queue_manager_integration_contract",
3
+ "version": "2.0.0",
4
+ "source_manager_verified": "AITaskQueueManager V13 remedial lane + Question Quality V5 patch",
5
+ "must_preserve": {
6
+ "remedial_public_methods": [
7
+ "auto_create_from_gap_report",
8
+ "create_remedial_task",
9
+ "get_student_gate_status",
10
+ "process_one_task",
11
+ "process_task_by_id",
12
+ "get_ready_lessons",
13
+ "get_lesson_text",
14
+ "mark_lesson_watched",
15
+ "format_student_remedial_center"
16
+ ],
17
+ "remedial_task_type": "remedial_lesson",
18
+ "remedial_task_prefix": "remedial_",
19
+ "existing_media_contract": true,
20
+ "existing_shared_package_behavior": true,
21
+ "existing_question_quality_repair_history": true
22
+ },
23
+ "additive_changes": {
24
+ "load_subjects_registry": "subjects_registry.json",
25
+ "load_ai_task_registry": "ai_task_registry.json",
26
+ "normalize_subject_from_registry_aliases": true,
27
+ "quality_scope": [
28
+ "subject",
29
+ "grade",
30
+ "stage",
31
+ "skill_id"
32
+ ],
33
+ "translation_scope": [
34
+ "subject",
35
+ "source_language",
36
+ "target_language",
37
+ "grade",
38
+ "stage",
39
+ "skill_id"
40
+ ],
41
+ "translation_tasks": [
42
+ "question_translation",
43
+ "translated_question_concept_review"
44
+ ],
45
+ "translation_storage": "same_question_record_with_translation_history",
46
+ "no_separate_translation_manager": true,
47
+ "no_subject_specific_bank_files": true
48
+ },
49
+ "queue_priority": {
50
+ "critical": [
51
+ "remedial_lesson",
52
+ "remedial_plan_generation",
53
+ "remedial_lesson_generation",
54
+ "remedial_media_generation"
55
+ ],
56
+ "normal": [
57
+ "remedial_mastery_recheck"
58
+ ],
59
+ "batch": [
60
+ "question_quality",
61
+ "question_repair",
62
+ "question_translation",
63
+ "translated_question_concept_review"
64
+ ]
65
+ },
66
+ "safety_rule": "If an admin batch task and a student remedial task compete for the same constrained AI resource, remedial takes priority; batch task pauses/checkpoints rather than breaking the remedial flow."
67
+ }
ai_task_queue_multisubject_modifications.json ADDED
@@ -0,0 +1,68 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "ai_task_queue_multisubject_modification_plan",
3
+ "version": "1.0.0",
4
+ "files_to_add_or_replace": [
5
+ "subjects_registry.json <- subjects_registry_v1_1_multitask.json",
6
+ "ai_task_registry.json",
7
+ "question_quality_policy.json"
8
+ ],
9
+ "python_files_to_modify": [
10
+ {
11
+ "file": "ai_task_queue_manager.py",
12
+ "changes": [
13
+ "استبدال normalize_subject() hardcoded بقراءة aliases من subjects_registry.json.",
14
+ "تعميم scan_question_bank_for_audit(subject=None, grade=None, stage=None, skill_id=None).",
15
+ "تعميم create_or_resume_question_quality_task(subject='all', grade=None, stage=None, skill_id=None, requested_by='admin').",
16
+ "تغيير task_id من grade-only إلى task_name + subject + scope + scan_id.",
17
+ "حفظ task_name وsubject وgrade/stage/skill_id داخل Snapshot وكل سجل عمل.",
18
+ "إضافة create_or_resume_question_translation_task(...).",
19
+ "إضافة run_question_translation_task(...).",
20
+ "إضافة run_translated_question_concept_review(...).",
21
+ "عدم إنشاء بنوك ترجمة منفصلة؛ الكتابة في نفس سجل السؤال مع translation_history.",
22
+ "الإبقاء على ملفات approved/review/intermediate نفسها لجميع المواد.",
23
+ "إزالة phi_status/qwen_status من العقد الجديد تدريجياً واستبدالهما role_status/task_phase مع إبقاء توافق القراءة للمهام القديمة.",
24
+ "استدعاء AIManager.run_task(task_name=...) بدل أسماء النماذج."
25
+ ]
26
+ },
27
+ {
28
+ "file": "ai_manager.py",
29
+ "changes": [
30
+ "إضافة aliases للمهام الثلاث الجديدة إن لزم.",
31
+ "تحديث embedded fallback official_task_names ليشمل question_quality وquestion_translation وtranslated_question_concept_review.",
32
+ "لا يضاف أي اسم نموذج إلى callers؛ resolve_ai_role يقرأ ai_task_registry.json."
33
+ ]
34
+ },
35
+ {
36
+ "file": "ai_models.py",
37
+ "changes": [
38
+ "التأكد من وجود roles وظيفية: question_support_reviewer, question_translation, translated_question_concept_review.",
39
+ "ربط كل role بالنموذج الحالي من الإعدادات فقط؛ لا hardcode في AITaskQueueManager."
40
+ ]
41
+ },
42
+ {
43
+ "file": "admin_office_ui.py",
44
+ "changes": [
45
+ "قائمة المادة تأتي من subjects_registry.json مع خيار كل المواد.",
46
+ "إظهار task filter: تدقيق / ترجمة / مراجعة مفهوم الترجمة.",
47
+ "grade/stage يظهران ديناميكياً حسب المادة.",
48
+ "نفس تبويب المرفوضات والمعتمد لكل المواد مع فلتر subject."
49
+ ]
50
+ }
51
+ ],
52
+ "recommended_new_public_methods": [
53
+ "list_supported_subjects()",
54
+ "scan_question_bank_for_audit(subject=None, grade=None, stage=None, skill_id=None)",
55
+ "create_or_resume_question_quality_task(subject='all', grade=None, stage=None, skill_id=None, requested_by='admin')",
56
+ "create_or_resume_question_translation_task(subject, source_language, target_language, grade=None, stage=None, skill_id=None, requested_by='admin')",
57
+ "run_question_translation_task(task_id, max_items=0, max_retries=2)",
58
+ "run_translated_question_concept_review(task_id, max_items=0, max_retries=2)",
59
+ "question_task_progress(task_id)"
60
+ ],
61
+ "do_not_create": [
62
+ "question_translation_task_manager.py",
63
+ "arabic_quality_bank.jsonl",
64
+ "math_quality_bank.jsonl",
65
+ "arabic_rejected.jsonl",
66
+ "translation_bank_arabic.jsonl"
67
+ ]
68
+ }
ai_task_registry.json CHANGED
@@ -1,235 +1,241 @@
1
  {
2
- "schema_version": "1.0.0",
3
- "registry_version": "ai_task_registry_v1_local_first",
4
- "generated_at_utc": "2026-08-03T20:37:39.499833+00:00",
5
- "project": "Divid Teacher",
6
- "purpose_ar": "سجل مركزي يربط وظائف المنصة بالمنفذ المحلي الحالي وبالدور الذكي المستقبلي دون ربط SessionManager بأسماء النماذج.",
7
  "runtime_policy": {
8
- "default_mode": "local_only",
9
- "supported_modes": [
10
- "local_only",
11
- "auto",
12
- "ai_only"
13
- ],
14
- "current_environment": "zero_gpu_free",
15
- "session_manager_uses_task_names_only": true,
16
- "model_names_allowed_in_session_manager": false,
17
- "legacy_model_aliases_allowed_for_compatibility_only": true
18
  },
19
  "official_task_names": [
20
- "diagnostic_item_selection",
21
- "diagnostic_question_generation",
22
- "diagnostic_result_analysis",
23
  "remedial_plan_generation",
24
  "remedial_lesson_generation",
 
25
  "remedial_mastery_recheck",
 
 
 
 
 
 
 
26
  "educational_image_generation",
27
  "educational_animation_planning"
28
  ],
29
  "tasks": {
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
30
  "diagnostic_item_selection": {
31
- "description_ar": "اختيار أسئلة الفحص والوسام المرتبطة بالمهارة والمستوى.",
32
- "current_execution": "local",
33
- "primary_provider": {
34
- "module": "question_bank_manager",
35
- "role": "المصدر المركزي المستقبلي لأسئلة المهارات"
36
- },
37
- "current_compatibility_provider": {
38
- "module": "skill_math_bank",
39
- "role": "مصدر الأسئلة العامل حاليًا داخل BadgeGameManager"
40
- },
41
- "fallback_provider": {
42
- "module": "badge_game_manager",
43
- "role": "أسئلة طوارئ محلية فقط"
44
- },
45
- "ai_role": null,
46
- "gpu_required": false,
47
- "allowed_sources": [
48
- "TIMSS released items",
49
- "Ireland public assessment resources",
50
- "New Zealand public assessment resources",
51
- "original_divid_items"
52
- ],
53
- "forbidden_behavior": [
54
- "توليد أسئلة الوسام مباشرة داخل SessionManager",
55
- "استدعاء نموذج باسم Phi أو Qwen",
56
- "تعريف شجرة المهارات داخل بنك الأسئلة"
57
- ]
58
  },
59
  "diagnostic_question_generation": {
60
- "description_ar": "إنشاء أسئلة أصلية جديدة عند نقص الأسئلة الم��خصة.",
61
- "current_execution": "local_templates_and_reviewed_items",
62
- "primary_provider": {
63
- "module": "question_bank_manager",
64
- "role": "إنشاء أو استيراد أسئلة مرتبطة بـ skill_id"
65
- },
66
- "future_ai_role": "lesson_planner",
67
- "ai_is_optional": true,
68
- "gpu_required_now": false,
69
- "review_required_before_student_use": true,
70
- "forbidden_behavior": [
71
- "استخدام سؤال مولد آليًا دون فحص الإجابة والخيارات",
72
- "استخدام AI كمصدر وحيد لفحص المستوى"
73
- ]
74
  },
75
  "diagnostic_result_analysis": {
76
- "description_ar": "تحليل إجابات الطالب وتحديد الإتقان والفجوة.",
77
- "current_execution": "local",
78
- "primary_provider": {
79
- "module": "level_test_manager",
80
- "role": "تحليل تشخيصي محلي"
81
- },
82
- "supporting_provider": {
83
- "module": "skills_taxonomy_manager",
84
- "role": "تحديد المتطلبات السابقة وسلسلة الفاقد"
85
- },
86
- "legacy_provider": {
87
- "module": "global_diagnostic_manager",
88
- "status": "freeze_then_refactor",
89
- "reason_ar": "النسخة الحالية مرتبطة بـ Phi وتعرّف مهارات وأسئلة داخلها"
90
- },
91
- "ai_role": null,
92
- "gpu_required": false
93
  },
94
  "remedial_plan_generation": {
95
- "description_ar": "بناء الخطة العلاجية من تقرير الفاقد.",
96
- "current_execution": "local",
97
- "primary_provider": {
98
- "module": "remedial_plan_bank",
99
- "role": "الخطة العلاجية المحلية الحالية"
100
- },
101
- "supporting_provider": {
102
- "module": "skills_taxonomy_manager",
103
- "role": "المهارة والمتطلبات والأخطاء والإجراءات العلاجية"
104
- },
105
- "future_ai_role": "lesson_planner",
106
- "ai_is_optional": true,
107
- "gpu_required_now": false
108
  },
109
  "remedial_lesson_generation": {
110
- "description_ar": "تحويل الخطة العلاجية إلى حصة طالب قابلة للعرض والميديا.",
111
- "current_execution": "local",
112
- "primary_provider": {
113
- "module": "ai_task_queue_manager",
114
- "role": "إنشاء المهمة وتجهيز الحصة المؤجلة"
115
- },
116
- "content_provider": {
117
- "module": "remedial_plan_bank",
118
- "role": "الشرح والأمثلة والتدريبات المحلية"
119
- },
120
- "media_provider": {
121
- "module": "media_generation_manager",
122
- "role": "إنتاج الفيديو والصوت والشرائح"
123
- },
124
- "future_ai_role": "teacher_chat",
125
- "ai_is_optional": true,
126
- "gpu_required_now": false
127
  },
128
  "remedial_mastery_recheck": {
129
- "description_ar": "إعادة فحص نفس المهارة بعد العلاج.",
130
- "current_execution": "local",
131
- "primary_provider": {
132
- "module": "level_test_manager",
133
- "role": "إعادة القياس"
134
- },
135
- "question_provider": {
136
- "module": "question_bank_manager",
137
- "role": "اختيار سؤال جديد غير المستخدم قبل العلاج"
138
- },
139
- "progress_provider": {
140
- "module": "badge_progress_manager",
141
- "role": "حفظ النتيجة ومنح الوسام أو استمرار العلاج"
142
- },
143
- "ai_role": null,
144
- "gpu_required": false
145
  },
146
  "educational_image_generation": {
147
- "description_ar": "إنشاء أو اختيار صورة تعليمية للحصة.",
148
- "current_execution": "local_or_disabled",
149
- "primary_provider": {
150
- "module": "media_generation_manager",
151
- "role": "اختيار بديل بصري ��حلي عند غياب مولد الصور"
152
- },
153
- "future_ai_role": "image_generator",
154
- "ai_is_optional": true,
155
- "gpu_required_now": false
156
  },
157
  "educational_animation_planning": {
158
- "description_ar": "بناء مخطط مشاهد الأنيميشن التعليمية.",
159
- "current_execution": "local_templates",
160
- "primary_provider": {
161
- "module": "media_generation_manager",
162
- "role": "تجهيز مشاهد وقوالب محلية"
163
- },
164
- "future_ai_role": "animation_generator",
165
- "ai_is_optional": true,
166
- "gpu_required_now": false
167
- }
168
- },
169
- "model_role_mapping": {
170
- "lesson_planner": {
171
- "function_categories": [
172
- "diagnostic_question_generation",
173
- "remedial_plan_generation"
174
- ],
175
- "current_status": "optional_disabled_in_local_only"
176
  },
177
- "teacher_chat": {
178
- "function_categories": [
179
- "remedial_lesson_generation"
 
 
 
 
 
 
 
180
  ],
181
- "current_status": "optional_disabled_in_local_only"
 
182
  },
183
- "image_generator": {
184
- "function_categories": [
185
- "educational_image_generation"
186
- ],
187
- "current_status": "optional"
 
 
188
  },
189
- "animation_generator": {
190
- "function_categories": [
191
- "educational_animation_planning"
192
- ],
193
- "current_status": "optional"
194
- }
195
- },
196
- "legacy_aliases": {
197
- "phi": {
198
- "maps_to": "lesson_planner",
199
- "status": "compatibility_only",
200
- "must_not_be_used_by_new_code": true
201
- },
202
- "qwen": {
203
- "maps_to": "teacher_chat",
204
- "status": "compatibility_only",
205
- "must_not_be_used_by_new_code": true
 
206
  }
207
  },
208
- "question_flow_now": [
209
- "SessionManager يطلب بدء الوسام",
210
- "BadgeGameManager يطلب الأسئلة من skill_math_bank",
211
- "عند تعذر البنك يستخدم BadgeGameManager أسئلة طوارئ",
212
- "BadgeGameManager يعرض السؤال ويسجل الإجابة",
213
- "BadgeProgressManager يحلل النتيجة ويحفظ التقدم",
214
- "SessionManager يستلم تقرير الفاقد",
215
- "AITaskQueueManager ينشئ الحصة العلاجية",
216
- "RemedialPlanBank يبني المحتوى المحلي"
 
 
 
 
217
  ],
218
- "question_flow_target": [
219
- "SessionManager يطلب بدء الوسام",
220
- "BadgeGameManager يطلب diagnostic_item_selection",
221
- "QuestionBankManager يختار سؤالًا مرتبطًا بـ skill_id",
222
- "BadgeGameManager يعرض السؤال ويسجل الإجابة",
223
- "LevelTestManager يحلل الأدلة",
224
- "BadgeProgressManager يحفظ الإتقان أو الفاقد",
225
- "SkillsTaxonomyManager يحدد أصل الفاقد",
226
- "RemedialPlanBank يبني العلاج المحلي"
 
227
  ],
228
- "protected_rules": {
229
- "do_not_modify_app_now": true,
230
- "do_not_modify_working_millionaire_game_ui": true,
231
- "do_not_modify_video_pipeline_now": true,
232
- "do_not_modify_whiteboard_now": true,
233
- "do_not_delete_global_diagnostic_before_import_audit": true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
234
  }
235
  }
 
1
  {
2
+ "schema_version": "3.0.0",
3
+ "registry_version": "ai_tasks_multisubject_remedial_quality_translation_v3",
 
 
 
4
  "runtime_policy": {
5
+ "default_mode": "auto",
6
+ "queue_manager": "ai_task_queue_manager.py",
7
+ "subjects_registry": "subjects_registry.json",
8
+ "roles_not_model_names": true,
9
+ "default_lane": "remedial",
10
+ "remedial_has_priority_over_admin_batch_tasks": true,
11
+ "admin_batch_tasks_must_not_break_student_remedial_lane": true
 
 
 
12
  },
13
  "official_task_names": [
14
+ "remedial_lesson",
15
+ "remedial_shared_package_lookup",
 
16
  "remedial_plan_generation",
17
  "remedial_lesson_generation",
18
+ "remedial_media_generation",
19
  "remedial_mastery_recheck",
20
+ "question_quality",
21
+ "question_repair",
22
+ "question_translation",
23
+ "translated_question_concept_review",
24
+ "diagnostic_item_selection",
25
+ "diagnostic_question_generation",
26
+ "diagnostic_result_analysis",
27
  "educational_image_generation",
28
  "educational_animation_planning"
29
  ],
30
  "tasks": {
31
+ "question_quality": {
32
+ "category": "question_bank",
33
+ "queue_lane": "question_quality",
34
+ "requires_subject": true,
35
+ "requires_skill_id": false,
36
+ "requires_languages": false,
37
+ "ai_role": "question_support_reviewer",
38
+ "subject_policy_source": "subjects_registry.json",
39
+ "quality_policy_source": "question_quality_policy.json",
40
+ "input_bank": "question_bank.jsonl",
41
+ "intermediate_bank": "question_quality_intermediate.jsonl",
42
+ "approved_bank": "quality_question_bank.jsonl",
43
+ "review_queue": "question_review_queue.jsonl",
44
+ "shared_across_subjects": true
45
+ },
46
+ "question_translation": {
47
+ "category": "question_bank",
48
+ "queue_lane": "question_translation",
49
+ "requires_subject": true,
50
+ "requires_skill_id": false,
51
+ "requires_languages": true,
52
+ "ai_role": "question_translation",
53
+ "subject_policy_source": "subjects_registry.json",
54
+ "preserve_original": true,
55
+ "preserve_answer": true,
56
+ "preserve_choices": true,
57
+ "preserve_source_metadata": true,
58
+ "writes_back_to_same_question_record": true,
59
+ "shared_across_subjects": true
60
+ },
61
+ "translated_question_concept_review": {
62
+ "category": "question_bank",
63
+ "queue_lane": "question_translation",
64
+ "requires_subject": true,
65
+ "requires_skill_id": false,
66
+ "requires_languages": true,
67
+ "ai_role": "translated_question_concept_review",
68
+ "subject_policy_source": "subjects_registry.json",
69
+ "review_scope": "concept_scientific_mathematical_semantic_clarity_after_translation",
70
+ "not_language_proofreading_role": true,
71
+ "writes_back_to_same_question_record": true,
72
+ "shared_across_subjects": true
73
+ },
74
  "diagnostic_item_selection": {
75
+ "category": "diagnostic",
76
+ "ai_role": "",
77
+ "local_first": true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
78
  },
79
  "diagnostic_question_generation": {
80
+ "category": "diagnostic",
81
+ "ai_role": "question_support_generator"
 
 
 
 
 
 
 
 
 
 
 
 
82
  },
83
  "diagnostic_result_analysis": {
84
+ "category": "diagnostic",
85
+ "ai_role": "",
86
+ "local_first": true
 
 
 
 
 
 
 
 
 
 
 
 
 
 
87
  },
88
  "remedial_plan_generation": {
89
+ "category": "remedial",
90
+ "queue_lane": "remedial",
91
+ "requires_subject": true,
92
+ "requires_skill_id": true,
93
+ "ai_role": "lesson_planner",
94
+ "local_fallback": "remedial_plan_bank",
95
+ "description": "بناء الخطة العلاجية وفق المهارة ونوع الخطأ وشدة العلاج."
 
 
 
 
 
 
96
  },
97
  "remedial_lesson_generation": {
98
+ "category": "remedial",
99
+ "queue_lane": "remedial",
100
+ "requires_subject": true,
101
+ "requires_skill_id": true,
102
+ "ai_role": "teacher_chat",
103
+ "local_fallback": "structured_local_lesson",
104
+ "description": "صياغة الحصة التعليمية المنظمة؛ لا يقرر الإتقان."
 
 
 
 
 
 
 
 
 
 
105
  },
106
  "remedial_mastery_recheck": {
107
+ "category": "remedial",
108
+ "queue_lane": "remedial",
109
+ "requires_subject": true,
110
+ "requires_skill_id": true,
111
+ "local_first": true,
112
+ "executor": "question_bank_manager + badge_progress_manager",
113
+ "description": "إعادة فحص المهارة بعناصر جديدة بعد الحصة؛ الحكم النهائي 100% من الأدلة المطلوبة."
 
 
 
 
 
 
 
 
 
114
  },
115
  "educational_image_generation": {
116
+ "category": "media",
117
+ "ai_role": "image_generator"
 
 
 
 
 
 
 
118
  },
119
  "educational_animation_planning": {
120
+ "category": "media",
121
+ "ai_role": "animation_generator"
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
122
  },
123
+ "remedial_lesson": {
124
+ "category": "remedial",
125
+ "queue_lane": "remedial",
126
+ "requires_subject": true,
127
+ "requires_student": true,
128
+ "requires_skill_id": true,
129
+ "local_orchestration": true,
130
+ "entry_points": [
131
+ "auto_create_from_gap_report",
132
+ "create_remedial_task"
133
  ],
134
+ "description": "المهمة الأساسية الحالية: إنشاء/استكمال حصة علاجية من تقرير الفاقد مع الحفاظ على بوابة الطالب ومسار الوسائط والحفظ.",
135
+ "do_not_replace_existing_pipeline": true
136
  },
137
+ "remedial_shared_package_lookup": {
138
+ "category": "remedial",
139
+ "queue_lane": "remedial",
140
+ "requires_subject": true,
141
+ "requires_skill_id": true,
142
+ "local_first": true,
143
+ "description": "البحث أولاً عن حزمة علاجية مشتركة جاهزة في خزنة الأستاذ قبل إنشاء حصة جديدة."
144
  },
145
+ "remedial_media_generation": {
146
+ "category": "remedial_media",
147
+ "queue_lane": "remedial",
148
+ "requires_subject": true,
149
+ "requires_skill_id": true,
150
+ "executor": "media_generation_manager",
151
+ "local_or_external_provider": true,
152
+ "description": "إنتاج/استعادة الفيديو والصوت والصور للحصة، مع بقاء واجهة AITaskQueueManager ثابتة."
153
+ },
154
+ "question_repair": {
155
+ "category": "question_bank",
156
+ "queue_lane": "question_quality",
157
+ "requires_subject": true,
158
+ "requires_skill_id": false,
159
+ "ai_role": "question_support_generator",
160
+ "review_role": "question_support_reviewer",
161
+ "shared_across_subjects": true,
162
+ "writes_to_shared_review_queue": true
163
  }
164
  },
165
+ "required_queue_task_fields": [
166
+ "task_id",
167
+ "task_name",
168
+ "subject",
169
+ "status",
170
+ "requested_by",
171
+ "created_at",
172
+ "updated_at"
173
+ ],
174
+ "translation_required_fields": [
175
+ "source_language",
176
+ "target_language",
177
+ "question_id"
178
  ],
179
+ "question_record_translation_fields": [
180
+ "original_text",
181
+ "original_choices",
182
+ "original_correct_answer",
183
+ "translated_text",
184
+ "translated_choices",
185
+ "translated_correct_answer",
186
+ "translation_status",
187
+ "concept_review_status",
188
+ "translation_history"
189
  ],
190
+ "critical_rule": "remedial_lesson_lane_is_core_and_must_not_be_removed_or_replaced_by_quality_or_translation",
191
+ "lanes": {
192
+ "remedial": {
193
+ "priority": "critical_core",
194
+ "existing_lane": true,
195
+ "must_preserve_existing_public_api": true,
196
+ "public_api": [
197
+ "auto_create_from_gap_report",
198
+ "create_remedial_task",
199
+ "get_student_gate_status",
200
+ "process_one_task",
201
+ "process_task_by_id",
202
+ "get_ready_lessons",
203
+ "get_lesson_text",
204
+ "mark_lesson_watched",
205
+ "format_student_remedial_center"
206
+ ],
207
+ "flow": [
208
+ "remedial_shared_package_lookup",
209
+ "remedial_plan_generation",
210
+ "remedial_lesson_generation",
211
+ "remedial_media_generation",
212
+ "remedial_mastery_recheck"
213
+ ]
214
+ },
215
+ "question_quality": {
216
+ "priority": "admin_batch",
217
+ "shared_across_subjects": true,
218
+ "flow": [
219
+ "question_quality",
220
+ "question_repair"
221
+ ]
222
+ },
223
+ "question_translation": {
224
+ "priority": "admin_batch",
225
+ "shared_across_subjects": true,
226
+ "flow": [
227
+ "question_translation",
228
+ "translated_question_concept_review",
229
+ "question_quality"
230
+ ]
231
+ }
232
+ },
233
+ "compatibility_contract": {
234
+ "preserve_remedial_version_and_files": true,
235
+ "preserve_existing_remedial_task_directories": true,
236
+ "preserve_existing_shared_package_lookup": true,
237
+ "preserve_existing_media_generation_contract": true,
238
+ "preserve_existing_session_manager_calls": true,
239
+ "quality_translation_are_additive_lanes": true
240
  }
241
  }
arabic_assessment_items.json ADDED
The diff for this file is too large to render. See raw diff
 
arabic_question_type_registry.json ADDED
@@ -0,0 +1,1492 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "divid_teacher_arabic_question_type_registry",
3
+ "schema_version": "2.0.0",
4
+ "language": "ar",
5
+ "scope": "global_arabic_all_stages",
6
+ "purpose": "سجل موحد لأنواع أسئلة اللغة العربية وطريقة العرض والاستجابة والتصحيح والتوافق مع الهاتف والسبورة والصوت.",
7
+ "scoring_modes": [
8
+ "exact_match",
9
+ "normalized_text",
10
+ "set_match",
11
+ "sequence_match",
12
+ "pair_match",
13
+ "rubric",
14
+ "audio_evidence",
15
+ "whiteboard_evidence"
16
+ ],
17
+ "common_fields": [
18
+ "item_type",
19
+ "interaction_payload",
20
+ "response_schema",
21
+ "scoring_mode",
22
+ "correct_response",
23
+ "partial_credit",
24
+ "feedback_by_error",
25
+ "renderer",
26
+ "accessibility",
27
+ "fallback_renderer"
28
+ ],
29
+ "types": [
30
+ {
31
+ "item_type": "audio_choice",
32
+ "title_ar": "اختيار بعد الاستماع",
33
+ "input_mode": "audio",
34
+ "response_mode": "tap_choice",
35
+ "scoring_mode": "exact_match",
36
+ "renderer": "audio_choice_renderer",
37
+ "fallback_renderer": "audio_replay_plus_large_choices",
38
+ "supports_stage_01": true,
39
+ "use_cases": [
40
+ "sound_picture_match",
41
+ "initial_final_sound",
42
+ "phoneme_position",
43
+ "rhyme_match"
44
+ ],
45
+ "accessibility": {
46
+ "audio_replay": true,
47
+ "large_touch_targets": true,
48
+ "rtl": true
49
+ }
50
+ },
51
+ {
52
+ "item_type": "audio_same_different",
53
+ "title_ar": "متماثل أم مختلف",
54
+ "input_mode": "audio_pair",
55
+ "response_mode": "binary_choice",
56
+ "scoring_mode": "exact_match",
57
+ "renderer": "audio_same_different_renderer",
58
+ "fallback_renderer": "audio_pair_binary_buttons",
59
+ "supports_stage_01": true,
60
+ "use_cases": [
61
+ "same_different_audio",
62
+ "rhyme_sort"
63
+ ],
64
+ "accessibility": {
65
+ "audio_replay": true,
66
+ "large_touch_targets": true,
67
+ "rtl": true
68
+ }
69
+ },
70
+ {
71
+ "item_type": "audio_sort",
72
+ "title_ar": "تصنيف أصوات",
73
+ "input_mode": "audio_multi",
74
+ "response_mode": "drag_drop_or_tap_sort",
75
+ "scoring_mode": "set_match",
76
+ "renderer": "audio_sort_renderer",
77
+ "fallback_renderer": "tap_category_renderer",
78
+ "supports_stage_01": true,
79
+ "use_cases": [
80
+ "speech_vs_non_speech",
81
+ "syllable_sort",
82
+ "rhyme_sort"
83
+ ],
84
+ "accessibility": {
85
+ "audio_replay": true,
86
+ "drag_optional": true,
87
+ "rtl": true
88
+ }
89
+ },
90
+ {
91
+ "item_type": "spoken_word_count",
92
+ "title_ar": "عد كلمات الجملة المسموعة",
93
+ "input_mode": "audio_sentence",
94
+ "response_mode": "tap_count_or_tokenize",
95
+ "scoring_mode": "exact_match",
96
+ "renderer": "spoken_word_count_renderer",
97
+ "fallback_renderer": "number_choice_renderer",
98
+ "supports_stage_01": true,
99
+ "use_cases": [
100
+ "spoken_word_blocks"
101
+ ],
102
+ "accessibility": {
103
+ "audio_replay": true,
104
+ "rtl": true
105
+ }
106
+ },
107
+ {
108
+ "item_type": "ordering",
109
+ "title_ar": "ترتيب وحدات مسموعة",
110
+ "input_mode": "audio_or_visual_tokens",
111
+ "response_mode": "drag_drop_or_tap_order",
112
+ "scoring_mode": "sequence_match",
113
+ "renderer": "ordering_renderer",
114
+ "fallback_renderer": "tap_sequence_renderer",
115
+ "supports_stage_01": true,
116
+ "use_cases": [
117
+ "audio_sequence",
118
+ "phoneme_sequence"
119
+ ],
120
+ "accessibility": {
121
+ "drag_optional": true,
122
+ "rtl": true
123
+ }
124
+ },
125
+ {
126
+ "item_type": "syllable_segmentation",
127
+ "title_ar": "تقسيم الكلمة إلى مقاطع",
128
+ "input_mode": "audio_word",
129
+ "response_mode": "tap_blocks_or_spoken",
130
+ "scoring_mode": "sequence_match",
131
+ "renderer": "syllable_segmentation_renderer",
132
+ "fallback_renderer": "tap_boundary_renderer",
133
+ "supports_stage_01": true,
134
+ "use_cases": [
135
+ "syllable_split",
136
+ "syllable_counter"
137
+ ],
138
+ "accessibility": {
139
+ "audio_replay": true,
140
+ "spoken_optional": true,
141
+ "rtl": true
142
+ }
143
+ },
144
+ {
145
+ "item_type": "syllable_blending",
146
+ "title_ar": "دمج المقاطع",
147
+ "input_mode": "audio_segments",
148
+ "response_mode": "spoken_or_choice",
149
+ "scoring_mode": "audio_evidence",
150
+ "renderer": "syllable_blending_renderer",
151
+ "fallback_renderer": "picture_choice_after_audio",
152
+ "supports_stage_01": true,
153
+ "use_cases": [
154
+ "syllable_merge"
155
+ ],
156
+ "accessibility": {
157
+ "audio_replay": true,
158
+ "rtl": true
159
+ }
160
+ },
161
+ {
162
+ "item_type": "phoneme_identification",
163
+ "title_ar": "تحديد صوت",
164
+ "input_mode": "audio_word",
165
+ "response_mode": "tap_audio_token_or_spoken",
166
+ "scoring_mode": "exact_match",
167
+ "renderer": "phoneme_identification_renderer",
168
+ "fallback_renderer": "audio_choice_renderer",
169
+ "supports_stage_01": true,
170
+ "use_cases": [
171
+ "initial_sound",
172
+ "final_sound",
173
+ "phoneme_presence",
174
+ "phoneme_position"
175
+ ],
176
+ "accessibility": {
177
+ "audio_replay": true,
178
+ "rtl": true
179
+ }
180
+ },
181
+ {
182
+ "item_type": "phoneme_blending",
183
+ "title_ar": "دمج الأصوات",
184
+ "input_mode": "audio_phoneme_sequence",
185
+ "response_mode": "spoken_or_picture_choice",
186
+ "scoring_mode": "audio_evidence",
187
+ "renderer": "phoneme_blending_renderer",
188
+ "fallback_renderer": "picture_choice_after_audio",
189
+ "supports_stage_01": true,
190
+ "use_cases": [
191
+ "phoneme_merge",
192
+ "phoneme_merge_picture"
193
+ ],
194
+ "accessibility": {
195
+ "audio_replay": true,
196
+ "rtl": true
197
+ }
198
+ },
199
+ {
200
+ "item_type": "phoneme_segmentation",
201
+ "title_ar": "تجزئة الكلمة إلى أصوات",
202
+ "input_mode": "audio_word",
203
+ "response_mode": "phoneme_tokens_or_spoken",
204
+ "scoring_mode": "sequence_match",
205
+ "renderer": "phoneme_segmentation_renderer",
206
+ "fallback_renderer": "tap_token_sequence_renderer",
207
+ "supports_stage_01": true,
208
+ "use_cases": [
209
+ "phoneme_split",
210
+ "phoneme_counter",
211
+ "phoneme_isolation"
212
+ ],
213
+ "accessibility": {
214
+ "audio_replay": true,
215
+ "rtl": true
216
+ }
217
+ },
218
+ {
219
+ "item_type": "phoneme_manipulation",
220
+ "title_ar": "إضافة/حذف/استبدال صوت",
221
+ "input_mode": "audio_word_plus_instruction",
222
+ "response_mode": "spoken_or_choice",
223
+ "scoring_mode": "audio_evidence",
224
+ "renderer": "phoneme_manipulation_renderer",
225
+ "fallback_renderer": "audio_choice_renderer",
226
+ "supports_stage_01": true,
227
+ "use_cases": [
228
+ "phoneme_add",
229
+ "phoneme_delete",
230
+ "phoneme_substitute"
231
+ ],
232
+ "accessibility": {
233
+ "audio_replay": true,
234
+ "rtl": true
235
+ }
236
+ },
237
+ {
238
+ "item_type": "spoken_response",
239
+ "title_ar": "إجابة شفهية",
240
+ "input_mode": "audio_prompt_or_visual_prompt",
241
+ "response_mode": "recorded_speech",
242
+ "scoring_mode": "audio_evidence",
243
+ "renderer": "spoken_response_renderer",
244
+ "fallback_renderer": "teacher_or_ai_review_queue",
245
+ "supports_stage_01": true,
246
+ "use_cases": [
247
+ "produce_rhyme",
248
+ "produce_initial_sound_word",
249
+ "produce_final_sound_word",
250
+ "name_result"
251
+ ],
252
+ "accessibility": {
253
+ "record_retry_before_confirm": true,
254
+ "rtl": true
255
+ }
256
+ },
257
+ {
258
+ "item_type": "matching",
259
+ "title_ar": "مطابقة",
260
+ "input_mode": "audio_visual_pairs",
261
+ "response_mode": "tap_pair_or_drag_drop",
262
+ "scoring_mode": "pair_match",
263
+ "renderer": "matching_renderer",
264
+ "fallback_renderer": "tap_pair_renderer",
265
+ "supports_stage_01": true,
266
+ "use_cases": [
267
+ "sound_picture_match",
268
+ "sound_pair_match"
269
+ ],
270
+ "accessibility": {
271
+ "drag_optional": true,
272
+ "rtl": true
273
+ }
274
+ },
275
+ {
276
+ "item_type": "multi_select",
277
+ "title_ar": "اختيار عدة إجابات",
278
+ "input_mode": "audio_or_visual",
279
+ "response_mode": "multi_tap",
280
+ "scoring_mode": "set_match",
281
+ "renderer": "multi_select_renderer",
282
+ "fallback_renderer": "checkbox_large_touch_renderer",
283
+ "supports_stage_01": true,
284
+ "use_cases": [
285
+ "phoneme_presence_multi"
286
+ ],
287
+ "accessibility": {
288
+ "large_touch_targets": true,
289
+ "rtl": true
290
+ }
291
+ },
292
+ {
293
+ "item_type": "whiteboard_response",
294
+ "title_ar": "استجابة على السبورة",
295
+ "input_mode": "audio_or_visual_prompt",
296
+ "response_mode": "whiteboard",
297
+ "scoring_mode": "whiteboard_evidence",
298
+ "renderer": "whiteboard_response_renderer",
299
+ "fallback_renderer": "structured_tokens_renderer",
300
+ "supports_stage_01": true,
301
+ "use_cases": [
302
+ "token_arrangement_only_stage_01"
303
+ ],
304
+ "accessibility": {
305
+ "touch_first": true,
306
+ "rtl": true
307
+ }
308
+ },
309
+ {
310
+ "item_type": "letter_identification",
311
+ "title_ar": "تمييز/تسمية حرف",
312
+ "input_mode": "visual_letter",
313
+ "response_mode": "tap_choice_or_spoken",
314
+ "scoring_mode": "exact_match",
315
+ "renderer": "letter_identification_renderer",
316
+ "fallback_renderer": "large_touch_choice_renderer",
317
+ "supports_stage_01": false,
318
+ "supports_stage_02": true,
319
+ "use_cases": [
320
+ "letter_match",
321
+ "letter_name",
322
+ "letter_visual_discrimination"
323
+ ],
324
+ "accessibility": {
325
+ "large_touch_targets": true,
326
+ "rtl": true,
327
+ "drag_optional": true
328
+ }
329
+ },
330
+ {
331
+ "item_type": "grapheme_phoneme_match",
332
+ "title_ar": "مطابقة الحرف بالصوت",
333
+ "input_mode": "audio_visual",
334
+ "response_mode": "tap_pair",
335
+ "scoring_mode": "pair_match",
336
+ "renderer": "grapheme_phoneme_renderer",
337
+ "fallback_renderer": "large_touch_choice_renderer",
338
+ "supports_stage_01": false,
339
+ "supports_stage_02": true,
340
+ "use_cases": [
341
+ "grapheme_phoneme_match",
342
+ "sound_to_letter",
343
+ "letter_to_sound"
344
+ ],
345
+ "accessibility": {
346
+ "large_touch_targets": true,
347
+ "rtl": true,
348
+ "drag_optional": true
349
+ }
350
+ },
351
+ {
352
+ "item_type": "letter_form_matching",
353
+ "title_ar": "مطابقة أشكال الحرف",
354
+ "input_mode": "visual_letter_forms",
355
+ "response_mode": "tap_pair_or_drag",
356
+ "scoring_mode": "pair_match",
357
+ "renderer": "letter_form_renderer",
358
+ "fallback_renderer": "large_touch_choice_renderer",
359
+ "supports_stage_01": false,
360
+ "supports_stage_02": true,
361
+ "use_cases": [
362
+ "letter_form",
363
+ "letter_form_position",
364
+ "letter_form_family"
365
+ ],
366
+ "accessibility": {
367
+ "large_touch_targets": true,
368
+ "rtl": true,
369
+ "drag_optional": true
370
+ }
371
+ },
372
+ {
373
+ "item_type": "letter_joining",
374
+ "title_ar": "اتصال الحروف",
375
+ "input_mode": "visual_letter_tokens",
376
+ "response_mode": "drag_drop_or_tap",
377
+ "scoring_mode": "sequence_match",
378
+ "renderer": "letter_joining_renderer",
379
+ "fallback_renderer": "large_touch_choice_renderer",
380
+ "supports_stage_01": false,
381
+ "supports_stage_02": true,
382
+ "use_cases": [
383
+ "connectivity_sort",
384
+ "letter_join_choice",
385
+ "letter_join_build"
386
+ ],
387
+ "accessibility": {
388
+ "large_touch_targets": true,
389
+ "rtl": true,
390
+ "drag_optional": true
391
+ }
392
+ },
393
+ {
394
+ "item_type": "diacritic_choice",
395
+ "title_ar": "اختيار الحركة/العلامة",
396
+ "input_mode": "audio_visual",
397
+ "response_mode": "tap_choice",
398
+ "scoring_mode": "exact_match",
399
+ "renderer": "diacritic_choice_renderer",
400
+ "fallback_renderer": "large_touch_choice_renderer",
401
+ "supports_stage_01": false,
402
+ "supports_stage_02": true,
403
+ "use_cases": [
404
+ "diacritic_identify",
405
+ "diacritic_sound",
406
+ "tanwin_identify"
407
+ ],
408
+ "accessibility": {
409
+ "large_touch_targets": true,
410
+ "rtl": true,
411
+ "drag_optional": true
412
+ }
413
+ },
414
+ {
415
+ "item_type": "diacritic_drag",
416
+ "title_ar": "وضع الحركة على الحرف",
417
+ "input_mode": "visual_letter",
418
+ "response_mode": "drag_drop_or_tap",
419
+ "scoring_mode": "exact_match",
420
+ "renderer": "diacritic_drag_renderer",
421
+ "fallback_renderer": "large_touch_choice_renderer",
422
+ "supports_stage_01": false,
423
+ "supports_stage_02": true,
424
+ "use_cases": [
425
+ "diacritic_place"
426
+ ],
427
+ "accessibility": {
428
+ "large_touch_targets": true,
429
+ "rtl": true,
430
+ "drag_optional": true
431
+ }
432
+ },
433
+ {
434
+ "item_type": "word_decoding",
435
+ "title_ar": "فك كلمة مكتوبة",
436
+ "input_mode": "visual_word",
437
+ "response_mode": "spoken_or_choice",
438
+ "scoring_mode": "audio_evidence",
439
+ "renderer": "word_decoding_renderer",
440
+ "fallback_renderer": "large_touch_choice_renderer",
441
+ "supports_stage_01": false,
442
+ "supports_stage_02": true,
443
+ "use_cases": [
444
+ "word_decode",
445
+ "word_fluency_bridge"
446
+ ],
447
+ "accessibility": {
448
+ "large_touch_targets": true,
449
+ "rtl": true,
450
+ "drag_optional": true
451
+ }
452
+ },
453
+ {
454
+ "item_type": "word_building",
455
+ "title_ar": "بناء كلمة",
456
+ "input_mode": "letter_tokens",
457
+ "response_mode": "drag_drop_or_tap_order",
458
+ "scoring_mode": "sequence_match",
459
+ "renderer": "word_building_renderer",
460
+ "fallback_renderer": "large_touch_choice_renderer",
461
+ "supports_stage_01": false,
462
+ "supports_stage_02": true,
463
+ "use_cases": [
464
+ "word_build"
465
+ ],
466
+ "accessibility": {
467
+ "large_touch_targets": true,
468
+ "rtl": true,
469
+ "drag_optional": true
470
+ }
471
+ },
472
+ {
473
+ "item_type": "handwriting_trace",
474
+ "title_ar": "تتبع الحرف",
475
+ "input_mode": "visual_trace",
476
+ "response_mode": "touch_stroke",
477
+ "scoring_mode": "whiteboard_evidence",
478
+ "renderer": "handwriting_trace_renderer",
479
+ "fallback_renderer": "large_touch_choice_renderer",
480
+ "supports_stage_01": false,
481
+ "supports_stage_02": true,
482
+ "use_cases": [
483
+ "handwriting_trace"
484
+ ],
485
+ "accessibility": {
486
+ "large_touch_targets": true,
487
+ "rtl": true,
488
+ "drag_optional": true
489
+ }
490
+ },
491
+ {
492
+ "item_type": "handwriting_copy",
493
+ "title_ar": "نسخ الحرف",
494
+ "input_mode": "visual_model",
495
+ "response_mode": "whiteboard",
496
+ "scoring_mode": "whiteboard_evidence",
497
+ "renderer": "handwriting_copy_renderer",
498
+ "fallback_renderer": "large_touch_choice_renderer",
499
+ "supports_stage_01": false,
500
+ "supports_stage_02": true,
501
+ "use_cases": [
502
+ "handwriting_copy"
503
+ ],
504
+ "accessibility": {
505
+ "large_touch_targets": true,
506
+ "rtl": true,
507
+ "drag_optional": true
508
+ }
509
+ },
510
+ {
511
+ "item_type": "minimal_pair_visual",
512
+ "title_ar": "تمييز فرق كتابي دقيق",
513
+ "input_mode": "visual_pair",
514
+ "response_mode": "tap_choice",
515
+ "scoring_mode": "exact_match",
516
+ "renderer": "minimal_pair_visual_renderer",
517
+ "fallback_renderer": "large_touch_choice_renderer",
518
+ "supports_stage_01": false,
519
+ "supports_stage_02": true,
520
+ "use_cases": [
521
+ "minimal_grapheme_contrast",
522
+ "minimal_diacritic_contrast"
523
+ ],
524
+ "accessibility": {
525
+ "large_touch_targets": true,
526
+ "rtl": true,
527
+ "drag_optional": true
528
+ }
529
+ },
530
+ {
531
+ "item_type": "sight_word_flash",
532
+ "title_ar": "تعرف سريع على كلمة",
533
+ "input_mode": "visual_word_timed",
534
+ "response_mode": "tap_or_spoken",
535
+ "scoring_mode": "exact_match",
536
+ "renderer": "sight_word_flash_renderer",
537
+ "fallback_renderer": "large_touch_renderer",
538
+ "supports_stage_03": true,
539
+ "use_cases": [
540
+ "sight_word_flash"
541
+ ],
542
+ "accessibility": {
543
+ "rtl": true,
544
+ "large_touch_targets": true,
545
+ "audio_replay_if_applicable": true
546
+ }
547
+ },
548
+ {
549
+ "item_type": "oral_reading",
550
+ "title_ar": "قراءة جهرية",
551
+ "input_mode": "visual_text",
552
+ "response_mode": "recorded_speech",
553
+ "scoring_mode": "audio_evidence",
554
+ "renderer": "oral_reading_renderer",
555
+ "fallback_renderer": "large_touch_renderer",
556
+ "supports_stage_03": true,
557
+ "use_cases": [
558
+ "oral_reading_accuracy",
559
+ "oral_reading_rate",
560
+ "paragraph_oral_reading"
561
+ ],
562
+ "accessibility": {
563
+ "rtl": true,
564
+ "large_touch_targets": true,
565
+ "audio_replay_if_applicable": true
566
+ }
567
+ },
568
+ {
569
+ "item_type": "sentence_picture_match",
570
+ "title_ar": "مطابقة جملة بصورة",
571
+ "input_mode": "visual_text_and_image",
572
+ "response_mode": "tap_choice",
573
+ "scoring_mode": "exact_match",
574
+ "renderer": "sentence_picture_renderer",
575
+ "fallback_renderer": "large_touch_renderer",
576
+ "supports_stage_03": true,
577
+ "use_cases": [
578
+ "sentence_picture_match",
579
+ "picture_sentence_match"
580
+ ],
581
+ "accessibility": {
582
+ "rtl": true,
583
+ "large_touch_targets": true,
584
+ "audio_replay_if_applicable": true
585
+ }
586
+ },
587
+ {
588
+ "item_type": "sentence_cloze",
589
+ "title_ar": "إكمال جملة",
590
+ "input_mode": "visual_sentence",
591
+ "response_mode": "tap_or_text",
592
+ "scoring_mode": "normalized_text",
593
+ "renderer": "sentence_cloze_renderer",
594
+ "fallback_renderer": "large_touch_renderer",
595
+ "supports_stage_03": true,
596
+ "use_cases": [
597
+ "sentence_cloze"
598
+ ],
599
+ "accessibility": {
600
+ "rtl": true,
601
+ "large_touch_targets": true,
602
+ "audio_replay_if_applicable": true
603
+ }
604
+ },
605
+ {
606
+ "item_type": "explicit_comprehension",
607
+ "title_ar": "فهم صريح",
608
+ "input_mode": "text_or_audio_text",
609
+ "response_mode": "tap_or_short_answer",
610
+ "scoring_mode": "normalized_text",
611
+ "renderer": "explicit_comprehension_renderer",
612
+ "fallback_renderer": "large_touch_renderer",
613
+ "supports_stage_03": true,
614
+ "use_cases": [
615
+ "explicit_info",
616
+ "character_identification",
617
+ "setting_identification"
618
+ ],
619
+ "accessibility": {
620
+ "rtl": true,
621
+ "large_touch_targets": true,
622
+ "audio_replay_if_applicable": true
623
+ }
624
+ },
625
+ {
626
+ "item_type": "event_ordering",
627
+ "title_ar": "ترتيب أحداث",
628
+ "input_mode": "text_plus_event_cards",
629
+ "response_mode": "drag_or_tap_order",
630
+ "scoring_mode": "sequence_match",
631
+ "renderer": "event_ordering_renderer",
632
+ "fallback_renderer": "large_touch_renderer",
633
+ "supports_stage_03": true,
634
+ "use_cases": [
635
+ "event_sequence"
636
+ ],
637
+ "accessibility": {
638
+ "rtl": true,
639
+ "large_touch_targets": true,
640
+ "audio_replay_if_applicable": true
641
+ }
642
+ },
643
+ {
644
+ "item_type": "main_idea",
645
+ "title_ar": "الفكرة الرئيسة",
646
+ "input_mode": "short_text",
647
+ "response_mode": "tap_or_short_answer",
648
+ "scoring_mode": "rubric",
649
+ "renderer": "main_idea_renderer",
650
+ "fallback_renderer": "large_touch_renderer",
651
+ "supports_stage_03": true,
652
+ "use_cases": [
653
+ "main_idea",
654
+ "title_choice",
655
+ "supporting_detail"
656
+ ],
657
+ "accessibility": {
658
+ "rtl": true,
659
+ "large_touch_targets": true,
660
+ "audio_replay_if_applicable": true
661
+ }
662
+ },
663
+ {
664
+ "item_type": "simple_inference",
665
+ "title_ar": "استنتاج بسيط",
666
+ "input_mode": "short_text",
667
+ "response_mode": "tap_or_short_answer",
668
+ "scoring_mode": "rubric",
669
+ "renderer": "simple_inference_renderer",
670
+ "fallback_renderer": "large_touch_renderer",
671
+ "supports_stage_03": true,
672
+ "use_cases": [
673
+ "simple_inference",
674
+ "prediction",
675
+ "inference_validity"
676
+ ],
677
+ "accessibility": {
678
+ "rtl": true,
679
+ "large_touch_targets": true,
680
+ "audio_replay_if_applicable": true
681
+ }
682
+ },
683
+ {
684
+ "item_type": "vocabulary_context",
685
+ "title_ar": "مفردات في السياق",
686
+ "input_mode": "sentence_or_short_text",
687
+ "response_mode": "tap_or_short_answer",
688
+ "scoring_mode": "normalized_text",
689
+ "renderer": "vocab_context_renderer",
690
+ "fallback_renderer": "large_touch_renderer",
691
+ "supports_stage_03": true,
692
+ "use_cases": [
693
+ "vocab_context",
694
+ "synonym_match",
695
+ "antonym_match"
696
+ ],
697
+ "accessibility": {
698
+ "rtl": true,
699
+ "large_touch_targets": true,
700
+ "audio_replay_if_applicable": true
701
+ }
702
+ },
703
+ {
704
+ "item_type": "simple_dictation",
705
+ "title_ar": "إملاء مبكر",
706
+ "input_mode": "audio_word_or_sentence",
707
+ "response_mode": "keyboard_or_whiteboard",
708
+ "scoring_mode": "normalized_text",
709
+ "renderer": "simple_dictation_renderer",
710
+ "fallback_renderer": "large_touch_renderer",
711
+ "supports_stage_03": true,
712
+ "use_cases": [
713
+ "simple_dictation"
714
+ ],
715
+ "accessibility": {
716
+ "rtl": true,
717
+ "large_touch_targets": true,
718
+ "audio_replay_if_applicable": true
719
+ }
720
+ },
721
+ {
722
+ "item_type": "sentence_writing",
723
+ "title_ar": "كتابة جملة",
724
+ "input_mode": "image_or_prompt",
725
+ "response_mode": "keyboard_or_whiteboard",
726
+ "scoring_mode": "rubric",
727
+ "renderer": "sentence_writing_renderer",
728
+ "fallback_renderer": "large_touch_renderer",
729
+ "supports_stage_03": true,
730
+ "use_cases": [
731
+ "picture_sentence_write",
732
+ "two_sentence_write"
733
+ ],
734
+ "accessibility": {
735
+ "rtl": true,
736
+ "large_touch_targets": true,
737
+ "audio_replay_if_applicable": true
738
+ }
739
+ },
740
+ {
741
+ "item_type": "punctuation_place",
742
+ "title_ar": "علامات ترقيم",
743
+ "input_mode": "visual_sentence",
744
+ "response_mode": "tap_place_or_drag",
745
+ "scoring_mode": "exact_match",
746
+ "renderer": "punctuation_place_renderer",
747
+ "fallback_renderer": "large_touch_renderer",
748
+ "supports_stage_03": true,
749
+ "use_cases": [
750
+ "punctuation_place"
751
+ ],
752
+ "accessibility": {
753
+ "rtl": true,
754
+ "large_touch_targets": true,
755
+ "audio_replay_if_applicable": true
756
+ }
757
+ },
758
+ {
759
+ "item_type": "simple_editing",
760
+ "title_ar": "مراجعة جملة",
761
+ "input_mode": "visual_sentence",
762
+ "response_mode": "tap_edit",
763
+ "scoring_mode": "rubric",
764
+ "renderer": "simple_editing_renderer",
765
+ "fallback_renderer": "large_touch_renderer",
766
+ "supports_stage_03": true,
767
+ "use_cases": [
768
+ "simple_editing"
769
+ ],
770
+ "accessibility": {
771
+ "rtl": true,
772
+ "large_touch_targets": true,
773
+ "audio_replay_if_applicable": true
774
+ }
775
+ },
776
+ {
777
+ "item_type": "multi_paragraph_comprehension",
778
+ "title_ar": "فهم نص متعدد الفقرات",
779
+ "input_mode": "multi_paragraph_text",
780
+ "response_mode": "tap_or_short_answer",
781
+ "scoring_mode": "rubric",
782
+ "renderer": "multi_paragraph_renderer",
783
+ "fallback_renderer": "large_touch_renderer",
784
+ "supports_stage_04": true,
785
+ "use_cases": [
786
+ "multi_location_retrieval",
787
+ "information_integration"
788
+ ],
789
+ "accessibility": {
790
+ "rtl": true,
791
+ "large_touch_targets": true
792
+ }
793
+ },
794
+ {
795
+ "item_type": "text_evidence_selection",
796
+ "title_ar": "اختيار دليل نصي",
797
+ "input_mode": "text_plus_evidence_options",
798
+ "response_mode": "multi_tap",
799
+ "scoring_mode": "set_match",
800
+ "renderer": "text_evidence_renderer",
801
+ "fallback_renderer": "large_touch_renderer",
802
+ "supports_stage_04": true,
803
+ "use_cases": [
804
+ "text_evidence",
805
+ "evidence_response"
806
+ ],
807
+ "accessibility": {
808
+ "rtl": true,
809
+ "large_touch_targets": true
810
+ }
811
+ },
812
+ {
813
+ "item_type": "compare_contrast",
814
+ "title_ar": "مقارنة ومقابلة",
815
+ "input_mode": "text_or_cards",
816
+ "response_mode": "drag_or_short_answer",
817
+ "scoring_mode": "rubric",
818
+ "renderer": "compare_contrast_renderer",
819
+ "fallback_renderer": "large_touch_renderer",
820
+ "supports_stage_04": true,
821
+ "use_cases": [
822
+ "character_compare",
823
+ "compare_contrast"
824
+ ],
825
+ "accessibility": {
826
+ "rtl": true,
827
+ "large_touch_targets": true
828
+ }
829
+ },
830
+ {
831
+ "item_type": "author_purpose",
832
+ "title_ar": "غرض الكاتب",
833
+ "input_mode": "short_text",
834
+ "response_mode": "tap_choice",
835
+ "scoring_mode": "exact_match",
836
+ "renderer": "author_purpose_renderer",
837
+ "fallback_renderer": "large_touch_renderer",
838
+ "supports_stage_04": true,
839
+ "use_cases": [
840
+ "author_purpose"
841
+ ],
842
+ "accessibility": {
843
+ "rtl": true,
844
+ "large_touch_targets": true
845
+ }
846
+ },
847
+ {
848
+ "item_type": "fact_opinion",
849
+ "title_ar": "حقيقة ورأي",
850
+ "input_mode": "sentence_cards",
851
+ "response_mode": "sort_or_tap",
852
+ "scoring_mode": "set_match",
853
+ "renderer": "fact_opinion_renderer",
854
+ "fallback_renderer": "large_touch_renderer",
855
+ "supports_stage_04": true,
856
+ "use_cases": [
857
+ "fact_opinion"
858
+ ],
859
+ "accessibility": {
860
+ "rtl": true,
861
+ "large_touch_targets": true
862
+ }
863
+ },
864
+ {
865
+ "item_type": "text_structure",
866
+ "title_ar": "بنية النص",
867
+ "input_mode": "short_text",
868
+ "response_mode": "tap_or_order",
869
+ "scoring_mode": "rubric",
870
+ "renderer": "text_structure_renderer",
871
+ "fallback_renderer": "large_touch_renderer",
872
+ "supports_stage_04": true,
873
+ "use_cases": [
874
+ "text_type",
875
+ "problem_solution",
876
+ "cause_effect",
877
+ "procedure_order"
878
+ ],
879
+ "accessibility": {
880
+ "rtl": true,
881
+ "large_touch_targets": true
882
+ }
883
+ },
884
+ {
885
+ "item_type": "context_clue",
886
+ "title_ar": "قرائن السياق",
887
+ "input_mode": "sentence_or_paragraph",
888
+ "response_mode": "highlight_plus_choice",
889
+ "scoring_mode": "rubric",
890
+ "renderer": "context_clue_renderer",
891
+ "fallback_renderer": "large_touch_renderer",
892
+ "supports_stage_04": true,
893
+ "use_cases": [
894
+ "definition_clue",
895
+ "example_clue",
896
+ "contrast_clue",
897
+ "synonym_clue"
898
+ ],
899
+ "accessibility": {
900
+ "rtl": true,
901
+ "large_touch_targets": true
902
+ }
903
+ },
904
+ {
905
+ "item_type": "orthography_choice",
906
+ "title_ar": "اختيار الرسم الإملائي",
907
+ "input_mode": "visual_word_options",
908
+ "response_mode": "tap_choice",
909
+ "scoring_mode": "exact_match",
910
+ "renderer": "orthography_choice_renderer",
911
+ "fallback_renderer": "large_touch_renderer",
912
+ "supports_stage_04": true,
913
+ "use_cases": [
914
+ "spelling_choice",
915
+ "taa_marbuta_haa",
916
+ "hamza_wasl_qata"
917
+ ],
918
+ "accessibility": {
919
+ "rtl": true,
920
+ "large_touch_targets": true
921
+ }
922
+ },
923
+ {
924
+ "item_type": "orthography_editing",
925
+ "title_ar": "تصحيح إملائي",
926
+ "input_mode": "visual_word_or_sentence",
927
+ "response_mode": "tap_edit",
928
+ "scoring_mode": "normalized_text",
929
+ "renderer": "orthography_editing_renderer",
930
+ "fallback_renderer": "large_touch_renderer",
931
+ "supports_stage_04": true,
932
+ "use_cases": [
933
+ "orthographic_editing"
934
+ ],
935
+ "accessibility": {
936
+ "rtl": true,
937
+ "large_touch_targets": true
938
+ }
939
+ },
940
+ {
941
+ "item_type": "grammar_labeling",
942
+ "title_ar": "وسم نحوي",
943
+ "input_mode": "sentence_tokens",
944
+ "response_mode": "drag_label_or_tap",
945
+ "scoring_mode": "pair_match",
946
+ "renderer": "grammar_labeling_renderer",
947
+ "fallback_renderer": "large_touch_renderer",
948
+ "supports_stage_04": true,
949
+ "use_cases": [
950
+ "pos_sort",
951
+ "subject_predicate",
952
+ "verb_subject",
953
+ "object_identification"
954
+ ],
955
+ "accessibility": {
956
+ "rtl": true,
957
+ "large_touch_targets": true
958
+ }
959
+ },
960
+ {
961
+ "item_type": "grammar_transform",
962
+ "title_ar": "تحويل نحوي/صرفي",
963
+ "input_mode": "word_or_sentence",
964
+ "response_mode": "text_or_choice",
965
+ "scoring_mode": "normalized_text",
966
+ "renderer": "grammar_transform_renderer",
967
+ "fallback_renderer": "large_touch_renderer",
968
+ "supports_stage_04": true,
969
+ "use_cases": [
970
+ "number_transform",
971
+ "verb_transform"
972
+ ],
973
+ "accessibility": {
974
+ "rtl": true,
975
+ "large_touch_targets": true
976
+ }
977
+ },
978
+ {
979
+ "item_type": "paragraph_builder",
980
+ "title_ar": "بناء فقرة",
981
+ "input_mode": "sentence_cards",
982
+ "response_mode": "drag_order_plus_edit",
983
+ "scoring_mode": "rubric",
984
+ "renderer": "paragraph_builder_renderer",
985
+ "fallback_renderer": "large_touch_renderer",
986
+ "supports_stage_04": true,
987
+ "use_cases": [
988
+ "paragraph_builder",
989
+ "paragraph_order",
990
+ "paragraph_coherence"
991
+ ],
992
+ "accessibility": {
993
+ "rtl": true,
994
+ "large_touch_targets": true
995
+ }
996
+ },
997
+ {
998
+ "item_type": "paragraph_writing",
999
+ "title_ar": "كتابة فقرة",
1000
+ "input_mode": "prompt_or_image",
1001
+ "response_mode": "keyboard_or_whiteboard",
1002
+ "scoring_mode": "rubric",
1003
+ "renderer": "paragraph_writing_renderer",
1004
+ "fallback_renderer": "large_touch_renderer",
1005
+ "supports_stage_04": true,
1006
+ "use_cases": [
1007
+ "descriptive_paragraph",
1008
+ "narrative_paragraph",
1009
+ "informative_paragraph"
1010
+ ],
1011
+ "accessibility": {
1012
+ "rtl": true,
1013
+ "large_touch_targets": true
1014
+ }
1015
+ },
1016
+ {
1017
+ "item_type": "constructed_response",
1018
+ "title_ar": "إجابة إنشائية قصيرة",
1019
+ "input_mode": "text_question",
1020
+ "response_mode": "keyboard_or_whiteboard",
1021
+ "scoring_mode": "rubric",
1022
+ "renderer": "constructed_response_renderer",
1023
+ "fallback_renderer": "large_touch_renderer",
1024
+ "supports_stage_04": true,
1025
+ "use_cases": [
1026
+ "constructed_response",
1027
+ "evidence_response"
1028
+ ],
1029
+ "accessibility": {
1030
+ "rtl": true,
1031
+ "large_touch_targets": true
1032
+ }
1033
+ },
1034
+ {
1035
+ "item_type": "claim_evidence",
1036
+ "title_ar": "ادعاء ودليل",
1037
+ "input_mode": "text_cards",
1038
+ "response_mode": "drag_pair_or_select",
1039
+ "scoring_mode": "rubric",
1040
+ "renderer": "claim_evidence_renderer",
1041
+ "supports_stage_05": true,
1042
+ "accessibility": {
1043
+ "rtl": true,
1044
+ "large_touch_targets": true
1045
+ }
1046
+ },
1047
+ {
1048
+ "item_type": "two_text_compare",
1049
+ "title_ar": "مقارنة نصين",
1050
+ "input_mode": "two_texts",
1051
+ "response_mode": "matrix_or_short_answer",
1052
+ "scoring_mode": "rubric",
1053
+ "renderer": "two_text_compare_renderer",
1054
+ "supports_stage_05": true,
1055
+ "accessibility": {
1056
+ "rtl": true,
1057
+ "large_touch_targets": true
1058
+ }
1059
+ },
1060
+ {
1061
+ "item_type": "point_of_view",
1062
+ "title_ar": "وجهة النظر",
1063
+ "input_mode": "text",
1064
+ "response_mode": "choice_or_short_answer",
1065
+ "scoring_mode": "rubric",
1066
+ "renderer": "point_of_view_renderer",
1067
+ "supports_stage_05": true,
1068
+ "accessibility": {
1069
+ "rtl": true,
1070
+ "large_touch_targets": true
1071
+ }
1072
+ },
1073
+ {
1074
+ "item_type": "advanced_inference",
1075
+ "title_ar": "استنتاج متقدم",
1076
+ "input_mode": "text",
1077
+ "response_mode": "short_answer_or_choice",
1078
+ "scoring_mode": "rubric",
1079
+ "renderer": "advanced_inference_renderer",
1080
+ "supports_stage_05": true,
1081
+ "accessibility": {
1082
+ "rtl": true,
1083
+ "large_touch_targets": true
1084
+ }
1085
+ },
1086
+ {
1087
+ "item_type": "morphology_analysis",
1088
+ "title_ar": "تحليل صرفي",
1089
+ "input_mode": "word",
1090
+ "response_mode": "token_label_or_text",
1091
+ "scoring_mode": "rubric",
1092
+ "renderer": "morphology_renderer",
1093
+ "supports_stage_05": true,
1094
+ "accessibility": {
1095
+ "rtl": true,
1096
+ "large_touch_targets": true
1097
+ }
1098
+ },
1099
+ {
1100
+ "item_type": "case_ending",
1101
+ "title_ar": "ضبط إعرابي",
1102
+ "input_mode": "sentence",
1103
+ "response_mode": "diacritic_place_or_choice",
1104
+ "scoring_mode": "exact_match",
1105
+ "renderer": "case_ending_renderer",
1106
+ "supports_stage_05": true,
1107
+ "accessibility": {
1108
+ "rtl": true,
1109
+ "large_touch_targets": true
1110
+ }
1111
+ },
1112
+ {
1113
+ "item_type": "advanced_orthography",
1114
+ "title_ar": "إملاء متقدم",
1115
+ "input_mode": "word_or_sentence",
1116
+ "response_mode": "edit_or_write",
1117
+ "scoring_mode": "normalized_text",
1118
+ "renderer": "advanced_orthography_renderer",
1119
+ "supports_stage_05": true,
1120
+ "accessibility": {
1121
+ "rtl": true,
1122
+ "large_touch_targets": true
1123
+ }
1124
+ },
1125
+ {
1126
+ "item_type": "multi_paragraph_writing",
1127
+ "title_ar": "كتابة متعددة الفقرات",
1128
+ "input_mode": "prompt",
1129
+ "response_mode": "keyboard_or_whiteboard",
1130
+ "scoring_mode": "rubric",
1131
+ "renderer": "multi_paragraph_writing_renderer",
1132
+ "supports_stage_05": true,
1133
+ "accessibility": {
1134
+ "rtl": true,
1135
+ "large_touch_targets": true
1136
+ }
1137
+ },
1138
+ {
1139
+ "item_type": "literary_analysis_basic",
1140
+ "title_ar": "تحليل أدبي أولي",
1141
+ "input_mode": "literary_text",
1142
+ "response_mode": "choice_or_short_answer",
1143
+ "scoring_mode": "rubric",
1144
+ "renderer": "literary_analysis_renderer",
1145
+ "supports_stage_05": true,
1146
+ "accessibility": {
1147
+ "rtl": true,
1148
+ "large_touch_targets": true
1149
+ }
1150
+ },
1151
+ {
1152
+ "item_type": "revision_proofreading",
1153
+ "title_ar": "مراجعة وتحرير",
1154
+ "input_mode": "draft_text",
1155
+ "response_mode": "edit",
1156
+ "scoring_mode": "rubric",
1157
+ "renderer": "revision_renderer",
1158
+ "supports_stage_05": true,
1159
+ "accessibility": {
1160
+ "rtl": true,
1161
+ "large_touch_targets": true
1162
+ }
1163
+ },
1164
+ {
1165
+ "item_type": "argument_analysis",
1166
+ "title_ar": "تحليل الحجة",
1167
+ "input_mode": "argument_text",
1168
+ "response_mode": "map_select_or_short_answer",
1169
+ "scoring_mode": "rubric",
1170
+ "renderer": "argument_analysis_renderer",
1171
+ "supports_stage_06": true,
1172
+ "accessibility": {
1173
+ "rtl": true,
1174
+ "large_touch_targets": true
1175
+ }
1176
+ },
1177
+ {
1178
+ "item_type": "source_synthesis",
1179
+ "title_ar": "دمج مصدرين",
1180
+ "input_mode": "two_sources",
1181
+ "response_mode": "matrix_or_constructed",
1182
+ "scoring_mode": "rubric",
1183
+ "renderer": "source_synthesis_renderer",
1184
+ "supports_stage_06": true,
1185
+ "accessibility": {
1186
+ "rtl": true,
1187
+ "large_touch_targets": true
1188
+ }
1189
+ },
1190
+ {
1191
+ "item_type": "rhetorical_analysis",
1192
+ "title_ar": "تحليل بلاغي",
1193
+ "input_mode": "literary_or_persuasive_text",
1194
+ "response_mode": "label_plus_explain",
1195
+ "scoring_mode": "rubric",
1196
+ "renderer": "rhetorical_analysis_renderer",
1197
+ "supports_stage_06": true,
1198
+ "accessibility": {
1199
+ "rtl": true,
1200
+ "large_touch_targets": true
1201
+ }
1202
+ },
1203
+ {
1204
+ "item_type": "advanced_grammar_parse",
1205
+ "title_ar": "تحليل نحوي متقدم",
1206
+ "input_mode": "sentence",
1207
+ "response_mode": "token_labels_or_constructed",
1208
+ "scoring_mode": "rubric",
1209
+ "renderer": "advanced_grammar_renderer",
1210
+ "supports_stage_06": true,
1211
+ "accessibility": {
1212
+ "rtl": true,
1213
+ "large_touch_targets": true
1214
+ }
1215
+ },
1216
+ {
1217
+ "item_type": "advanced_morphology",
1218
+ "title_ar": "تحليل صرفي متقدم",
1219
+ "input_mode": "word",
1220
+ "response_mode": "morph_tiles_or_text",
1221
+ "scoring_mode": "rubric",
1222
+ "renderer": "advanced_morphology_renderer",
1223
+ "supports_stage_06": true,
1224
+ "accessibility": {
1225
+ "rtl": true,
1226
+ "large_touch_targets": true
1227
+ }
1228
+ },
1229
+ {
1230
+ "item_type": "argument_writing",
1231
+ "title_ar": "كتابة حجاجية",
1232
+ "input_mode": "prompt_sources_optional",
1233
+ "response_mode": "keyboard_or_whiteboard",
1234
+ "scoring_mode": "rubric",
1235
+ "renderer": "argument_writing_renderer",
1236
+ "supports_stage_06": true,
1237
+ "accessibility": {
1238
+ "rtl": true,
1239
+ "large_touch_targets": true
1240
+ }
1241
+ },
1242
+ {
1243
+ "item_type": "mixed_text_comprehension",
1244
+ "title_ar": "فهم نص مختلط",
1245
+ "input_mode": "text_table_chart",
1246
+ "response_mode": "select_or_constructed",
1247
+ "scoring_mode": "rubric",
1248
+ "renderer": "mixed_text_renderer",
1249
+ "supports_stage_06": true,
1250
+ "accessibility": {
1251
+ "rtl": true,
1252
+ "large_touch_targets": true
1253
+ }
1254
+ },
1255
+ {
1256
+ "item_type": "source_attribution",
1257
+ "title_ar": "نسبة المعلومات للمصدر",
1258
+ "input_mode": "source_plus_response",
1259
+ "response_mode": "edit_or_constructed",
1260
+ "scoring_mode": "rubric",
1261
+ "renderer": "source_attribution_renderer",
1262
+ "supports_stage_06": true,
1263
+ "accessibility": {
1264
+ "rtl": true,
1265
+ "large_touch_targets": true
1266
+ }
1267
+ },
1268
+ {
1269
+ "item_type": "critical_evaluation",
1270
+ "title_ar": "تقييم نقدي متقدم",
1271
+ "input_mode": "one_or_more_texts",
1272
+ "response_mode": "constructed_or_matrix",
1273
+ "scoring_mode": "rubric",
1274
+ "renderer": "critical_evaluation_renderer",
1275
+ "supports_stage_07": true,
1276
+ "accessibility": {
1277
+ "rtl": true,
1278
+ "large_touch_targets": true
1279
+ }
1280
+ },
1281
+ {
1282
+ "item_type": "literary_criticism",
1283
+ "title_ar": "نقد وتحليل أدبي",
1284
+ "input_mode": "literary_text",
1285
+ "response_mode": "annotation_plus_constructed",
1286
+ "scoring_mode": "rubric",
1287
+ "renderer": "literary_criticism_renderer",
1288
+ "supports_stage_07": true,
1289
+ "accessibility": {
1290
+ "rtl": true,
1291
+ "large_touch_targets": true
1292
+ }
1293
+ },
1294
+ {
1295
+ "item_type": "advanced_rhetoric",
1296
+ "title_ar": "بلاغة متقدمة",
1297
+ "input_mode": "literary_or_rhetorical_text",
1298
+ "response_mode": "label_explain_compare",
1299
+ "scoring_mode": "rubric",
1300
+ "renderer": "advanced_rhetoric_renderer",
1301
+ "supports_stage_07": true,
1302
+ "accessibility": {
1303
+ "rtl": true,
1304
+ "large_touch_targets": true
1305
+ }
1306
+ },
1307
+ {
1308
+ "item_type": "full_grammar_analysis",
1309
+ "title_ar": "تحليل نحوي كامل",
1310
+ "input_mode": "complex_sentence",
1311
+ "response_mode": "parse_label_explain",
1312
+ "scoring_mode": "rubric",
1313
+ "renderer": "full_grammar_renderer",
1314
+ "supports_stage_07": true,
1315
+ "accessibility": {
1316
+ "rtl": true,
1317
+ "large_touch_targets": true
1318
+ }
1319
+ },
1320
+ {
1321
+ "item_type": "research_source_evaluation",
1322
+ "title_ar": "تقييم المصادر البحثية",
1323
+ "input_mode": "source_cards",
1324
+ "response_mode": "matrix_plus_justification",
1325
+ "scoring_mode": "rubric",
1326
+ "renderer": "source_evaluation_renderer",
1327
+ "supports_stage_07": true,
1328
+ "accessibility": {
1329
+ "rtl": true,
1330
+ "large_touch_targets": true
1331
+ }
1332
+ },
1333
+ {
1334
+ "item_type": "multi_source_research",
1335
+ "title_ar": "بحث متعدد المصادر",
1336
+ "input_mode": "multiple_sources",
1337
+ "response_mode": "notes_synthesis_constructed",
1338
+ "scoring_mode": "rubric",
1339
+ "renderer": "research_workspace_renderer",
1340
+ "supports_stage_07": true,
1341
+ "accessibility": {
1342
+ "rtl": true,
1343
+ "large_touch_targets": true
1344
+ }
1345
+ },
1346
+ {
1347
+ "item_type": "academic_essay",
1348
+ "title_ar": "كتابة أكاديمية",
1349
+ "input_mode": "prompt_sources",
1350
+ "response_mode": "outline_write_revise",
1351
+ "scoring_mode": "rubric",
1352
+ "renderer": "academic_essay_renderer",
1353
+ "supports_stage_07": true,
1354
+ "accessibility": {
1355
+ "rtl": true,
1356
+ "large_touch_targets": true
1357
+ }
1358
+ },
1359
+ {
1360
+ "item_type": "multimodal_critical_analysis",
1361
+ "title_ar": "تحليل نقدي متعدد الوسائط",
1362
+ "input_mode": "text_chart_visual",
1363
+ "response_mode": "annotate_constructed",
1364
+ "scoring_mode": "rubric",
1365
+ "renderer": "multimodal_critical_renderer",
1366
+ "supports_stage_07": true,
1367
+ "accessibility": {
1368
+ "rtl": true,
1369
+ "large_touch_targets": true
1370
+ }
1371
+ },
1372
+ {
1373
+ "item_type": "listening_comprehension",
1374
+ "title_ar": "فهم مسموع",
1375
+ "input_mode": "audio",
1376
+ "response_mode": "choice_order_or_constructed",
1377
+ "scoring_mode": "rubric",
1378
+ "renderer": "listening_renderer",
1379
+ "supports_gap_audit_final": true,
1380
+ "accessibility": {
1381
+ "rtl": true,
1382
+ "large_touch_targets": true
1383
+ }
1384
+ },
1385
+ {
1386
+ "item_type": "oral_response",
1387
+ "title_ar": "استجابة وتحدث شفهي",
1388
+ "input_mode": "microphone",
1389
+ "response_mode": "recorded_speech",
1390
+ "scoring_mode": "rubric",
1391
+ "renderer": "oral_response_renderer",
1392
+ "supports_gap_audit_final": true,
1393
+ "accessibility": {
1394
+ "rtl": true,
1395
+ "large_touch_targets": true
1396
+ }
1397
+ },
1398
+ {
1399
+ "item_type": "oral_presentation",
1400
+ "title_ar": "عرض شفهي",
1401
+ "input_mode": "microphone_plus_optional_visual",
1402
+ "response_mode": "recorded_presentation",
1403
+ "scoring_mode": "rubric",
1404
+ "renderer": "oral_presentation_renderer",
1405
+ "supports_gap_audit_final": true,
1406
+ "accessibility": {
1407
+ "rtl": true,
1408
+ "large_touch_targets": true
1409
+ }
1410
+ },
1411
+ {
1412
+ "item_type": "oral_discussion_debate",
1413
+ "title_ar": "حوار ومناظرة",
1414
+ "input_mode": "microphone_turns",
1415
+ "response_mode": "recorded_dialogue",
1416
+ "scoring_mode": "rubric",
1417
+ "renderer": "oral_discussion_renderer",
1418
+ "supports_gap_audit_final": true,
1419
+ "accessibility": {
1420
+ "rtl": true,
1421
+ "large_touch_targets": true
1422
+ }
1423
+ },
1424
+ {
1425
+ "item_type": "pronunciation_prosody",
1426
+ "title_ar": "نطق وتنغيم",
1427
+ "input_mode": "audio_plus_microphone",
1428
+ "response_mode": "recorded_speech",
1429
+ "scoring_mode": "rubric",
1430
+ "renderer": "pronunciation_renderer",
1431
+ "supports_gap_audit_final": true,
1432
+ "accessibility": {
1433
+ "rtl": true,
1434
+ "large_touch_targets": true
1435
+ }
1436
+ },
1437
+ {
1438
+ "item_type": "poetry_recitation_analysis",
1439
+ "title_ar": "إلقاء وتحليل الشعر",
1440
+ "input_mode": "poem_audio_text",
1441
+ "response_mode": "record_or_constructed",
1442
+ "scoring_mode": "rubric",
1443
+ "renderer": "poetry_renderer",
1444
+ "supports_gap_audit_final": true,
1445
+ "accessibility": {
1446
+ "rtl": true,
1447
+ "large_touch_targets": true
1448
+ }
1449
+ },
1450
+ {
1451
+ "item_type": "literary_context",
1452
+ "title_ar": "السياق والتاريخ الأدبي",
1453
+ "input_mode": "text_timeline_cards",
1454
+ "response_mode": "choice_match_or_constructed",
1455
+ "scoring_mode": "rubric",
1456
+ "renderer": "literary_context_renderer",
1457
+ "supports_gap_audit_final": true,
1458
+ "accessibility": {
1459
+ "rtl": true,
1460
+ "large_touch_targets": true
1461
+ }
1462
+ },
1463
+ {
1464
+ "item_type": "handwriting_arabic",
1465
+ "title_ar": "الخط والكتابة اليدوية",
1466
+ "input_mode": "whiteboard_or_image",
1467
+ "response_mode": "handwriting",
1468
+ "scoring_mode": "rubric",
1469
+ "renderer": "handwriting_renderer",
1470
+ "supports_gap_audit_final": true,
1471
+ "accessibility": {
1472
+ "rtl": true,
1473
+ "large_touch_targets": true
1474
+ }
1475
+ }
1476
+ ],
1477
+ "global_policies": {
1478
+ "confirm_answer_before_scoring": true,
1479
+ "dont_know_supported": true,
1480
+ "stop_on_first_confirmed_error": true,
1481
+ "mastery_required_percent": 100,
1482
+ "audio_replay_default_max": 2,
1483
+ "new_items_required_for_recheck": true,
1484
+ "dialect_difference_must_not_auto_count_as_error": true
1485
+ },
1486
+ "cumulative_through_stage": 7,
1487
+ "counts": {
1488
+ "question_types_total": 87,
1489
+ "gap_audit_added_types": 8
1490
+ },
1491
+ "release": "FINAL_AFTER_GAP_AUDIT"
1492
+ }
arabic_skills_global.json ADDED
The diff for this file is too large to render. See raw diff
 
question_quality_multisubject_manifest.json ADDED
@@ -0,0 +1,31 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "divid_teacher_question_quality_multisubject_manifest",
3
+ "schema_version": "1.0.0",
4
+ "new_files_to_add_now": [
5
+ "subjects_registry.json",
6
+ "question_quality_policy.json"
7
+ ],
8
+ "existing_files_keep_shared": [
9
+ "external_assessment_items.json",
10
+ "external_question_sources.json",
11
+ "question_bank.jsonl",
12
+ "question_quality_intermediate.jsonl",
13
+ "quality_question_bank.jsonl",
14
+ "question_review_queue.jsonl",
15
+ "question_reports.jsonl"
16
+ ],
17
+ "existing_python_files_to_modify_once": [
18
+ "ai_task_queue_manager.py",
19
+ "question_bank_manager.py",
20
+ "admin_office_ui.py",
21
+ "external_question_import_manager.py"
22
+ ],
23
+ "architecture": {
24
+ "admin_subject_list_source": "subjects_registry.json",
25
+ "audit_task": "AITaskQueueManager.question_quality",
26
+ "student_question_source": "quality_question_bank.jsonl",
27
+ "raw_input": "question_bank.jsonl",
28
+ "external_import_target": "external_assessment_items.json -> question_bank.jsonl",
29
+ "rejected_and_needs_revision": "question_review_queue.jsonl"
30
+ }
31
+ }
question_quality_policy.json ADDED
@@ -0,0 +1,98 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "divid_teacher_question_quality_policy",
3
+ "schema_version": "1.0.0",
4
+ "task_name": "question_quality",
5
+ "single_lane_for_all_subjects": true,
6
+ "bank_files_are_shared_across_subjects": true,
7
+ "subject_is_record_field_not_separate_file": true,
8
+ "required_common_checks": [
9
+ "question_has_subject",
10
+ "question_has_skill_id_when_skill_based",
11
+ "prompt_is_clear",
12
+ "answer_is_present",
13
+ "answer_is_correct",
14
+ "options_are_valid_when_applicable",
15
+ "no_duplicate_or_equivalent_options",
16
+ "item_type_matches_response_schema",
17
+ "skill_alignment",
18
+ "difficulty_reasonable",
19
+ "source_and_license_metadata_when_external",
20
+ "no_student_private_data",
21
+ "renderer_supported_or_fallback_available"
22
+ ],
23
+ "subject_specific_checks": {
24
+ "math": [
25
+ "mathematical_correctness",
26
+ "symbols_and_notation_valid",
27
+ "numeric_tolerance_if_needed",
28
+ "diagram_or_whiteboard_contract_if_needed"
29
+ ],
30
+ "arabic": [
31
+ "modern_standard_arabic_by_default",
32
+ "orthography_correct",
33
+ "diacritics_correct_when_instructionally_required",
34
+ "rtl_text_integrity",
35
+ "dialect_difference_not_marked_wrong_without_policy",
36
+ "audio_prompt_matches_text_when_audio_item",
37
+ "oral_or_reading_rubric_present_when_needed",
38
+ "grammar_morphology_rhetoric_answer_valid"
39
+ ],
40
+ "english": [
41
+ "language_correctness",
42
+ "target_level_alignment"
43
+ ],
44
+ "science": [
45
+ "scientific_correctness",
46
+ "unit_and_term_consistency"
47
+ ],
48
+ "physics": [
49
+ "scientific_correctness",
50
+ "units_dimensions_and_formula_validity"
51
+ ],
52
+ "chemistry": [
53
+ "chemical_formula_equation_and_term_validity"
54
+ ],
55
+ "biology": [
56
+ "biological_concept_correctness"
57
+ ],
58
+ "earth_science": [
59
+ "earth_science_concept_correctness"
60
+ ],
61
+ "environmental_science": [
62
+ "environmental_science_concept_correctness"
63
+ ],
64
+ "computer": [
65
+ "algorithm_code_or_computing_concept_correctness"
66
+ ],
67
+ "islamic": [
68
+ "source_attribution_required_for_quoted_religious_text",
69
+ "curriculum_alignment"
70
+ ],
71
+ "social_studies": [
72
+ "country_curriculum_context_required",
73
+ "date_place_source_consistency"
74
+ ]
75
+ },
76
+ "quality_statuses": [
77
+ "pending",
78
+ "running",
79
+ "approved",
80
+ "needs_revision",
81
+ "rejected"
82
+ ],
83
+ "repair_policy": {
84
+ "same_review_queue_for_all_subjects": true,
85
+ "max_repair_attempts_default": 3,
86
+ "approved_returns_to_quality_bank": true,
87
+ "failed_repairs_stay_in_review_queue": true
88
+ },
89
+ "admin_filters": [
90
+ "subject",
91
+ "grade",
92
+ "stage",
93
+ "status",
94
+ "source_type",
95
+ "item_type",
96
+ "skill_id"
97
+ ]
98
+ }
subjects_registry.json ADDED
@@ -0,0 +1,419 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ {
2
+ "schema_name": "divid_teacher_subjects_registry",
3
+ "schema_version": "1.2.0",
4
+ "single_source_of_truth": true,
5
+ "default_subject": "math",
6
+ "subjects": [
7
+ {
8
+ "subject_id": "math",
9
+ "label_ar": "الرياضيات",
10
+ "label_en": "Mathematics",
11
+ "enabled": true,
12
+ "aliases": [
13
+ "math",
14
+ "mathematics",
15
+ "رياضيات",
16
+ "الرياضيات",
17
+ "ماث"
18
+ ],
19
+ "skills_file": "math_skills_global.json",
20
+ "assessment_templates_file": "global_assessment_items.json",
21
+ "question_type_registry_file": "question_type_registry.json",
22
+ "progression_mode": "skill_global",
23
+ "grade_filter_supported": true,
24
+ "stage_filter_supported": false,
25
+ "quality_enabled": true,
26
+ "translation_enabled": true,
27
+ "quality_profile": "math_quality",
28
+ "translation_profile": "general_question_translation",
29
+ "concept_review_profile": "math_concept_review",
30
+ "translation_policy": {
31
+ "preserve_original": true,
32
+ "preserve_choices": true,
33
+ "preserve_correct_answer": true,
34
+ "preserve_source_metadata": true,
35
+ "skip_when_source_equals_target": true
36
+ },
37
+ "remedial_enabled": true,
38
+ "remedial_profile": "math_remedial"
39
+ },
40
+ {
41
+ "subject_id": "arabic",
42
+ "label_ar": "اللغة العربية",
43
+ "label_en": "Arabic",
44
+ "enabled": true,
45
+ "aliases": [
46
+ "arabic",
47
+ "عربي",
48
+ "لغة عربية",
49
+ "اللغة العربية"
50
+ ],
51
+ "skills_file": "arabic_skills_global_FINAL.json",
52
+ "assessment_templates_file": "arabic_assessment_items_FINAL.json",
53
+ "question_type_registry_file": "arabic_question_type_registry_FINAL.json",
54
+ "progression_mode": "skill_stages",
55
+ "grade_filter_supported": true,
56
+ "stage_filter_supported": true,
57
+ "quality_enabled": true,
58
+ "translation_enabled": true,
59
+ "quality_profile": "arabic_quality",
60
+ "translation_profile": "general_question_translation",
61
+ "concept_review_profile": "arabic_concept_review",
62
+ "translation_policy": {
63
+ "preserve_original": true,
64
+ "preserve_choices": true,
65
+ "preserve_correct_answer": true,
66
+ "preserve_source_metadata": true,
67
+ "skip_when_source_equals_target": true
68
+ },
69
+ "remedial_enabled": true,
70
+ "remedial_profile": "arabic_remedial"
71
+ },
72
+ {
73
+ "subject_id": "english",
74
+ "label_ar": "اللغة الإنجليزية",
75
+ "label_en": "English",
76
+ "enabled": true,
77
+ "aliases": [
78
+ "english",
79
+ "انجليزي",
80
+ "إنجليزي",
81
+ "لغة انجليزية",
82
+ "لغة إنجليزية",
83
+ "اللغة الإنجليزية"
84
+ ],
85
+ "skills_file": "",
86
+ "assessment_templates_file": "",
87
+ "question_type_registry_file": "question_type_registry.json",
88
+ "progression_mode": "skill_global",
89
+ "grade_filter_supported": true,
90
+ "stage_filter_supported": true,
91
+ "quality_enabled": true,
92
+ "translation_enabled": true,
93
+ "quality_profile": "english_quality",
94
+ "translation_profile": "general_question_translation",
95
+ "concept_review_profile": "english_concept_review",
96
+ "translation_policy": {
97
+ "preserve_original": true,
98
+ "preserve_choices": true,
99
+ "preserve_correct_answer": true,
100
+ "preserve_source_metadata": true,
101
+ "skip_when_source_equals_target": true
102
+ },
103
+ "remedial_enabled": true,
104
+ "remedial_profile": "english_remedial"
105
+ },
106
+ {
107
+ "subject_id": "science",
108
+ "label_ar": "العلوم",
109
+ "label_en": "Science",
110
+ "enabled": true,
111
+ "aliases": [
112
+ "science",
113
+ "علوم",
114
+ "العلوم"
115
+ ],
116
+ "skills_file": "",
117
+ "assessment_templates_file": "",
118
+ "question_type_registry_file": "question_type_registry.json",
119
+ "progression_mode": "skill_global",
120
+ "grade_filter_supported": true,
121
+ "stage_filter_supported": true,
122
+ "quality_enabled": true,
123
+ "translation_enabled": true,
124
+ "quality_profile": "science_quality",
125
+ "translation_profile": "general_question_translation",
126
+ "concept_review_profile": "science_concept_review",
127
+ "translation_policy": {
128
+ "preserve_original": true,
129
+ "preserve_choices": true,
130
+ "preserve_correct_answer": true,
131
+ "preserve_source_metadata": true,
132
+ "skip_when_source_equals_target": true
133
+ },
134
+ "remedial_enabled": true,
135
+ "remedial_profile": "science_remedial"
136
+ },
137
+ {
138
+ "subject_id": "physics",
139
+ "label_ar": "الفيزياء",
140
+ "label_en": "Physics",
141
+ "enabled": true,
142
+ "aliases": [
143
+ "physics",
144
+ "فيزياء",
145
+ "الفيزياء"
146
+ ],
147
+ "skills_file": "",
148
+ "assessment_templates_file": "",
149
+ "question_type_registry_file": "question_type_registry.json",
150
+ "progression_mode": "skill_global",
151
+ "grade_filter_supported": true,
152
+ "stage_filter_supported": true,
153
+ "quality_enabled": true,
154
+ "translation_enabled": true,
155
+ "quality_profile": "physics_quality",
156
+ "translation_profile": "general_question_translation",
157
+ "concept_review_profile": "physics_concept_review",
158
+ "translation_policy": {
159
+ "preserve_original": true,
160
+ "preserve_choices": true,
161
+ "preserve_correct_answer": true,
162
+ "preserve_source_metadata": true,
163
+ "skip_when_source_equals_target": true
164
+ },
165
+ "remedial_enabled": true,
166
+ "remedial_profile": "physics_remedial"
167
+ },
168
+ {
169
+ "subject_id": "chemistry",
170
+ "label_ar": "الكيمياء",
171
+ "label_en": "Chemistry",
172
+ "enabled": true,
173
+ "aliases": [
174
+ "chemistry",
175
+ "كيمياء",
176
+ "الكيمياء"
177
+ ],
178
+ "skills_file": "",
179
+ "assessment_templates_file": "",
180
+ "question_type_registry_file": "question_type_registry.json",
181
+ "progression_mode": "skill_global",
182
+ "grade_filter_supported": true,
183
+ "stage_filter_supported": true,
184
+ "quality_enabled": true,
185
+ "translation_enabled": true,
186
+ "quality_profile": "chemistry_quality",
187
+ "translation_profile": "general_question_translation",
188
+ "concept_review_profile": "chemistry_concept_review",
189
+ "translation_policy": {
190
+ "preserve_original": true,
191
+ "preserve_choices": true,
192
+ "preserve_correct_answer": true,
193
+ "preserve_source_metadata": true,
194
+ "skip_when_source_equals_target": true
195
+ },
196
+ "remedial_enabled": true,
197
+ "remedial_profile": "chemistry_remedial"
198
+ },
199
+ {
200
+ "subject_id": "biology",
201
+ "label_ar": "الأحياء",
202
+ "label_en": "Biology",
203
+ "enabled": true,
204
+ "aliases": [
205
+ "biology",
206
+ "أحياء",
207
+ "احياء",
208
+ "الأحياء"
209
+ ],
210
+ "skills_file": "",
211
+ "assessment_templates_file": "",
212
+ "question_type_registry_file": "question_type_registry.json",
213
+ "progression_mode": "skill_global",
214
+ "grade_filter_supported": true,
215
+ "stage_filter_supported": true,
216
+ "quality_enabled": true,
217
+ "translation_enabled": true,
218
+ "quality_profile": "biology_quality",
219
+ "translation_profile": "general_question_translation",
220
+ "concept_review_profile": "biology_concept_review",
221
+ "translation_policy": {
222
+ "preserve_original": true,
223
+ "preserve_choices": true,
224
+ "preserve_correct_answer": true,
225
+ "preserve_source_metadata": true,
226
+ "skip_when_source_equals_target": true
227
+ },
228
+ "remedial_enabled": true,
229
+ "remedial_profile": "biology_remedial"
230
+ },
231
+ {
232
+ "subject_id": "earth_science",
233
+ "label_ar": "علوم الأرض",
234
+ "label_en": "Earth Science",
235
+ "enabled": true,
236
+ "aliases": [
237
+ "earth science",
238
+ "earth_science",
239
+ "علوم الأرض",
240
+ "علوم الارض"
241
+ ],
242
+ "skills_file": "",
243
+ "assessment_templates_file": "",
244
+ "question_type_registry_file": "question_type_registry.json",
245
+ "progression_mode": "skill_global",
246
+ "grade_filter_supported": true,
247
+ "stage_filter_supported": true,
248
+ "quality_enabled": true,
249
+ "translation_enabled": true,
250
+ "quality_profile": "earth_science_quality",
251
+ "translation_profile": "general_question_translation",
252
+ "concept_review_profile": "earth_science_concept_review",
253
+ "translation_policy": {
254
+ "preserve_original": true,
255
+ "preserve_choices": true,
256
+ "preserve_correct_answer": true,
257
+ "preserve_source_metadata": true,
258
+ "skip_when_source_equals_target": true
259
+ },
260
+ "remedial_enabled": true,
261
+ "remedial_profile": "earth_science_remedial"
262
+ },
263
+ {
264
+ "subject_id": "environmental_science",
265
+ "label_ar": "العلوم البيئية",
266
+ "label_en": "Environmental Science",
267
+ "enabled": true,
268
+ "aliases": [
269
+ "environmental science",
270
+ "environmental_science",
271
+ "علوم بيئية",
272
+ "العلوم البيئية"
273
+ ],
274
+ "skills_file": "",
275
+ "assessment_templates_file": "",
276
+ "question_type_registry_file": "question_type_registry.json",
277
+ "progression_mode": "skill_global",
278
+ "grade_filter_supported": true,
279
+ "stage_filter_supported": true,
280
+ "quality_enabled": true,
281
+ "translation_enabled": true,
282
+ "quality_profile": "environmental_science_quality",
283
+ "translation_profile": "general_question_translation",
284
+ "concept_review_profile": "environmental_science_concept_review",
285
+ "translation_policy": {
286
+ "preserve_original": true,
287
+ "preserve_choices": true,
288
+ "preserve_correct_answer": true,
289
+ "preserve_source_metadata": true,
290
+ "skip_when_source_equals_target": true
291
+ },
292
+ "remedial_enabled": true,
293
+ "remedial_profile": "environmental_science_remedial"
294
+ },
295
+ {
296
+ "subject_id": "computer",
297
+ "label_ar": "الحاسوب",
298
+ "label_en": "Computer Science",
299
+ "enabled": true,
300
+ "aliases": [
301
+ "computer",
302
+ "computer science",
303
+ "حاسوب",
304
+ "الحاسوب"
305
+ ],
306
+ "skills_file": "",
307
+ "assessment_templates_file": "",
308
+ "question_type_registry_file": "question_type_registry.json",
309
+ "progression_mode": "skill_global",
310
+ "grade_filter_supported": true,
311
+ "stage_filter_supported": true,
312
+ "quality_enabled": true,
313
+ "translation_enabled": true,
314
+ "quality_profile": "computer_quality",
315
+ "translation_profile": "general_question_translation",
316
+ "concept_review_profile": "computer_concept_review",
317
+ "translation_policy": {
318
+ "preserve_original": true,
319
+ "preserve_choices": true,
320
+ "preserve_correct_answer": true,
321
+ "preserve_source_metadata": true,
322
+ "skip_when_source_equals_target": true
323
+ },
324
+ "remedial_enabled": true,
325
+ "remedial_profile": "computer_remedial"
326
+ },
327
+ {
328
+ "subject_id": "islamic",
329
+ "label_ar": "التربية الإسلامية",
330
+ "label_en": "Islamic Education",
331
+ "enabled": true,
332
+ "aliases": [
333
+ "islamic",
334
+ "islamic education",
335
+ "تربية إسلامية",
336
+ "التربية الإسلامية"
337
+ ],
338
+ "skills_file": "",
339
+ "assessment_templates_file": "",
340
+ "question_type_registry_file": "question_type_registry.json",
341
+ "progression_mode": "curriculum_plus_skills",
342
+ "grade_filter_supported": true,
343
+ "stage_filter_supported": false,
344
+ "quality_enabled": true,
345
+ "translation_enabled": true,
346
+ "quality_profile": "islamic_quality",
347
+ "translation_profile": "general_question_translation",
348
+ "concept_review_profile": "islamic_concept_review",
349
+ "translation_policy": {
350
+ "preserve_original": true,
351
+ "preserve_choices": true,
352
+ "preserve_correct_answer": true,
353
+ "preserve_source_metadata": true,
354
+ "skip_when_source_equals_target": true
355
+ },
356
+ "remedial_enabled": true,
357
+ "remedial_profile": "islamic_remedial"
358
+ },
359
+ {
360
+ "subject_id": "social_studies",
361
+ "label_ar": "الدراسات الاجتماعية",
362
+ "label_en": "Social Studies",
363
+ "enabled": true,
364
+ "aliases": [
365
+ "social studies",
366
+ "social_studies",
367
+ "اجتماعيات",
368
+ "الدراسات الاجتماعية"
369
+ ],
370
+ "skills_file": "",
371
+ "assessment_templates_file": "",
372
+ "question_type_registry_file": "question_type_registry.json",
373
+ "progression_mode": "curriculum_plus_skills",
374
+ "grade_filter_supported": true,
375
+ "stage_filter_supported": false,
376
+ "quality_enabled": true,
377
+ "translation_enabled": true,
378
+ "quality_profile": "social_studies_quality",
379
+ "translation_profile": "general_question_translation",
380
+ "concept_review_profile": "social_studies_concept_review",
381
+ "translation_policy": {
382
+ "preserve_original": true,
383
+ "preserve_choices": true,
384
+ "preserve_correct_answer": true,
385
+ "preserve_source_metadata": true,
386
+ "skip_when_source_equals_target": true
387
+ },
388
+ "remedial_enabled": true,
389
+ "remedial_profile": "social_studies_remedial"
390
+ }
391
+ ],
392
+ "global_bank_files": {
393
+ "raw_bank": "question_bank.jsonl",
394
+ "external_staging": "external_assessment_items.json",
395
+ "quality_intermediate": "question_quality_intermediate.jsonl",
396
+ "quality_approved": "quality_question_bank.jsonl",
397
+ "review_rejected_needs_revision": "question_review_queue.jsonl",
398
+ "reports": "question_reports.jsonl"
399
+ },
400
+ "ai_task_policy": {
401
+ "registry_file": "ai_task_registry.json",
402
+ "shared_tasks": [
403
+ "remedial_lesson",
404
+ "remedial_plan_generation",
405
+ "remedial_lesson_generation",
406
+ "remedial_media_generation",
407
+ "remedial_mastery_recheck",
408
+ "question_quality",
409
+ "question_repair",
410
+ "question_translation",
411
+ "translated_question_concept_review"
412
+ ],
413
+ "task_selection_is_by_subject_field": true,
414
+ "no_subject_specific_queue_files": true,
415
+ "remedial_lane_enabled_for_all_subjects": true,
416
+ "quality_lane_enabled_for_all_subjects": true,
417
+ "translation_lane_enabled_for_all_subjects": true
418
+ }
419
+ }