@thanh01.pmt/curriculum-kit 1.4.47 → 1.4.49

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.
@@ -2726,7 +2726,25 @@ var PlanningNodeSchema = z.object({
2726
2726
  file: z.string(),
2727
2727
  evidence: z.string().default("")
2728
2728
  })).default([]),
2729
- phase_id: z.string().default("")
2729
+ phase_id: z.string().default(""),
2730
+ // P52/T2.1: tangible user-visible outcome projected from the graph step
2731
+ // (checkpoint candidate for session cutting). Empty = not a checkpoint.
2732
+ user_visible_deliverable: z.string().default(""),
2733
+ // P52/T3.1 — depth-reconcile inputs (mirrored from the feed; optional so
2734
+ // raw graphs without variants keep planning unchanged):
2735
+ // • depth_variants: minutes to teach this node at each depth level (ULO ≤
2736
+ // CIO ≤ SIO) — the reconciler's price list for downgrades.
2737
+ // • depth_scaffold_candidates: parallel to scaffold_candidates but acting
2738
+ // on DEPTH (SIO→CIO, CIO→ULO) instead of lesson time.
2739
+ // • is_core: Master-Tree core concept — never downgraded; escalate instead.
2740
+ depth_variants: z.object({ ulo: z.number().int().nonnegative(), cio: z.number().int().nonnegative(), sio: z.number().int().nonnegative() }).optional(),
2741
+ depth_scaffold_candidates: z.array(z.object({
2742
+ from_depth: DepthLevelSchema,
2743
+ to_depth: DepthLevelSchema,
2744
+ minutes_saved: z.number().int().nonnegative(),
2745
+ reason: z.string().default("")
2746
+ })).optional(),
2747
+ is_core: z.boolean().default(false)
2730
2748
  });
2731
2749
  var DependencyEdgeSchema = z.object({
2732
2750
  from: z.string(),
@@ -3457,9 +3475,9 @@ Evaluate the candidate artifact across these 6 dimensions:
3457
3475
  - 0 pts: Missing critical sections.
3458
3476
 
3459
3477
  5. **Technical & Conceptual Accuracy (15 pts):**
3460
- - 15 pts: Code snippets, logic flows, architectural descriptions, and Mermaid diagrams are conceptually sound and valid. If \`canonicalExposition\` or \`[KNOWLEDGE_EXPOSITION]\` is provided, content strictly adheres to canonical concepts without contradicting definitions or examples.
3478
+ - 15 pts: Code snippets, logic flows, architectural descriptions, and Mermaid diagrams are conceptually sound and valid. Every code identifier uses the REAL standard-library/API spelling of the declared stack (grounded in REFERENCE_PACK / canonical LESSON) \u2014 internal consistency with a glossary term name is NOT evidence of correctness. If \`canonicalExposition\` or \`[KNOWLEDGE_EXPOSITION]\` is provided, content strictly adheres to canonical concepts without contradicting definitions or examples.
3461
3479
  - 8 pts: Minor syntax inaccuracies or unidiomatic code that does not break core concepts.
3462
- - 0 pts: Severe technical hallucinations, broken logic, invalid diagrams, or direct contradiction of canonical exposition knowledge.
3480
+ - 0 pts: Severe technical hallucinations, broken logic, invalid diagrams, invented casing/spelling rules for standard-library identifiers, or direct contradiction of canonical exposition knowledge.
3463
3481
 
3464
3482
  6. **Contract Consistency & Zero-Drift (10 pts):**
3465
3483
  - 10 pts: Satellite artifact strictly adheres to the scope, tech stack, and objectives of Lesson ${lessonId} without introducing unrelated topics. If \`canonicalLessonExcerpt\` is present in candidate JSON, all satellite phases/activities strictly operationalize the master Lesson Flow and Activity Sequence without inventing divergent timelines.
@@ -19515,6 +19533,7 @@ Your task is to author a canonical, publication-grade learning artifact of type
19515
19533
  ${langDirective}
19516
19534
  ${headingDirective}
19517
19535
  2. NON-MOCK CODE INVARIANT: Any code snippet provided MUST be 100% syntactically valid, idiomatic, and executable without placeholders or fake functions.
19536
+ 2b. IDENTIFIER GROUND TRUTH: Never derive identifier casing/spelling from glossary term or concept names (they are pedagogical labels). Copy identifiers EXACTLY from the canonical LESSON and REFERENCE_PACK ground truth present in the context.
19518
19537
  3. PEDAGOGICAL GROUNDING: Strictly align with the ${pedagogy.toUpperCase()} model, Bloom's Revised Taxonomy, and IEEE/ACM CS2023 guidelines.
19519
19538
  4. SCAFFOLDING LEVEL: "${scaffoldingLevel.toUpperCase()}".${scaffoldingRule}
19520
19539
  5. TARGET AUDIENCE: ${gradeLevel ? `Grade ${gradeLevel}, ` : ""}${targetAge} on ${hwStr}.${deviceRule}${classDynamicsRule}${extraContextRule}