@thanh01.pmt/curriculum-kit 1.4.38 → 1.4.39

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.
@@ -1394,11 +1394,51 @@ var ExtensionSchema = zod.z.object({
1394
1394
  });
1395
1395
  var QualityAuditVerdictSchema = zod.z.enum(["PASS", "NEEDS_REVISION", "FAIL"]);
1396
1396
  var JudgeCriterionSchema = zod.z.object({
1397
- name: zod.z.string().describe("Criterion name, e.g. Bloom Alignment, Code Validity, Word Count Gate, Language Adherence"),
1397
+ name: zod.z.string().describe("Criterion name, e.g. Bloom Alignment, Code Validity, Word Count Gate, Language Adherence, Step Incrementality"),
1398
1398
  passed: zod.z.boolean(),
1399
1399
  score: zod.z.number().min(0).max(100).describe("Score out of 100"),
1400
1400
  feedback: zod.z.string().describe("Constructive feedback or citation of issues")
1401
1401
  });
1402
+ var ActionableRepairActionSchema = zod.z.enum([
1403
+ "SPLIT_STEP",
1404
+ "REVISE_PROVISIONING",
1405
+ "INSERT_RECAP",
1406
+ "ADJUST_TIME_BUDGET",
1407
+ "SUBSTITUTE_FALLBACK",
1408
+ "REVISE_EXIT_EVIDENCE"
1409
+ ]);
1410
+ var ActionableRepairPromptSchema = zod.z.object({
1411
+ action: ActionableRepairActionSchema,
1412
+ targetId: zod.z.string().describe("ID of the session, feature, or step requiring repair, e.g. U01_M01_L02 or F1-S3"),
1413
+ severity: zod.z.enum(["CRITICAL", "WARNING", "INFO"]).default("WARNING"),
1414
+ rationale: zod.z.string().describe("Pedagogical or technical rationale for why this repair is mandated"),
1415
+ instruction: zod.z.string().describe("Exact, actionable text instruction for the planner/generator in the next turn")
1416
+ });
1417
+ zod.z.object({
1418
+ schema_version: zod.z.number().default(1),
1419
+ projectId: zod.z.string(),
1420
+ overallVerdict: QualityAuditVerdictSchema,
1421
+ totalScore: zod.z.number().min(0).max(100),
1422
+ toolchainFeasibility: JudgeCriterionSchema.describe("Installation friction, admin rights, IDE/compiler matrix"),
1423
+ provisioningStrategy: JudgeCriterionSchema.describe("Clear model for heavy runtimes: Pre-installed lab, Cloud instance, or Dedicated setup"),
1424
+ hardwareRuntimeEnvelope: JudgeCriterionSchema.describe("Memory/Flash limits, pinout conflicts, hardware platform alignment"),
1425
+ timeToHelloWorld: JudgeCriterionSchema.describe("Student time to achieve first working feedback loop (target <= 15 mins)"),
1426
+ actionableRepairs: zod.z.array(ActionableRepairPromptSchema).default([])
1427
+ });
1428
+ zod.z.object({
1429
+ schema_version: zod.z.number().default(1),
1430
+ planHash: zod.z.string(),
1431
+ overallVerdict: QualityAuditVerdictSchema,
1432
+ totalScore: zod.z.number().min(0).max(100),
1433
+ autoApproved: zod.z.boolean().default(false).describe("True if totalScore >= 85 and overallVerdict is PASS"),
1434
+ stepIncrementality: JudgeCriterionSchema.describe("Single leap principle: <= 1 new syntax or 1 new algorithm per step"),
1435
+ zpdSaturation: JudgeCriterionSchema.describe("Vygotsky ZPD: <= 2 new concepts per session (K-12) / 3 (Adults), with prior anchor"),
1436
+ frictionAdjustedBudget: JudgeCriterionSchema.describe("Student time multiplier (2.5x): total content <= 85% session minutes"),
1437
+ epitomeViability: JudgeCriterionSchema.describe("Reigeluth Walking Skeleton: Unit 1 produces an end-to-end runnable MVP"),
1438
+ exitEvidenceSpecificity: JudgeCriterionSchema.describe("Tangible, measurable student deliverable for every session"),
1439
+ actionableRepairs: zod.z.array(ActionableRepairPromptSchema).default([]),
1440
+ summary: zod.z.string().describe("High-level executive evaluation summary")
1441
+ });
1402
1442
  var CurriculumQualityReportSchema = zod.z.object({
1403
1443
  targetArtifactType: zod.z.string().describe("Type of artifact audited, e.g. LESSON, ACT, CODE, WKS, SLIDE"),
1404
1444
  lessonId: zod.z.string(),
@@ -1406,7 +1446,8 @@ var CurriculumQualityReportSchema = zod.z.object({
1406
1446
  totalScore: zod.z.number().min(0).max(100),
1407
1447
  languageAdherencePassed: zod.z.boolean().describe("True if content strictly matches the requested target language"),
1408
1448
  criteria: zod.z.array(JudgeCriterionSchema).min(3),
1409
- actionableRepairPrompts: zod.z.array(zod.z.string()).default([]).describe("Concrete instruction prompts to fix detected issues in the next repair turn")
1449
+ actionableRepairPrompts: zod.z.array(zod.z.string()).default([]).describe("Concrete instruction prompts to fix detected issues in the next repair turn"),
1450
+ structuredRepairs: zod.z.array(ActionableRepairPromptSchema).optional()
1410
1451
  });
1411
1452
  var ProjectProfileSchema = zod.z.object({
1412
1453
  id: zod.z.string().optional(),