fix: remove all scaffolding from final mastery skills

The final mastery skills (5d-mastery, 5d-sub-mastery) now have ZERO
scaffolding for students who have fully mastered multi-digit operations:

**Changes to recommendedScaffolding:**
- placeValueColors: 'when3PlusDigits' → 'never' (no color hints)
- borrowNotation: 'whenRegrouping' → 'never' (no scratch boxes for subtraction)

**Final state for both skills:**
- carryBoxes: 'never' (no carry indicators)
- answerBoxes: 'never' (no answer boxes)
- placeValueColors: 'never' (no color coding)
- tenFrames: 'never' (no visual aids)
- borrowNotation: 'never' (no scratch notation for borrowing)
- borrowingHints: 'never' (no hints)

Only structural elements remain:
- problemNumbers: 'always' (numbering 1, 2, 3...)
- cellBorders: 'always' (grid structure)

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
Thomas Hallock 2025-11-10 14:21:13 -06:00
parent 833b481ebb
commit d7bec423e0
1 changed files with 12 additions and 5 deletions

View File

@ -6,7 +6,7 @@ import type { DisplayRules } from './displayRules'
/**
* Skill IDs follow naming convention:
* - Prefix: sd (single-digit), td (two-digit), 3d/4d/5d (multi-digit)
* - Operation: addition skills have descriptive names, subtraction uses "sub" prefix
* - Operation: addition skills have descriptive names, subtraction uses "sub" prefix, mixed uses "mixed" prefix
* - Complexity: no-regroup, simple-regroup, ones-regroup, mixed-regroup, full-regroup
*/
export type SkillId =
@ -329,7 +329,7 @@ export const SKILL_DEFINITIONS: SkillDefinition[] = [
recommendedScaffolding: {
carryBoxes: 'never',
answerBoxes: 'never',
placeValueColors: 'when3PlusDigits',
placeValueColors: 'never',
tenFrames: 'never',
problemNumbers: 'always',
cellBorders: 'always',
@ -577,11 +577,11 @@ export const SKILL_DEFINITIONS: SkillDefinition[] = [
recommendedScaffolding: {
carryBoxes: 'never',
answerBoxes: 'never',
placeValueColors: 'when3PlusDigits',
placeValueColors: 'never',
tenFrames: 'never',
problemNumbers: 'always',
cellBorders: 'always',
borrowNotation: 'whenRegrouping',
borrowNotation: 'never',
borrowingHints: 'never',
},
recommendedProblemCount: 10,
@ -649,7 +649,7 @@ export function findPreviousSkill(
}
/**
* Helper: Get the first umastered skill with prerequisites met
* Helper: Get the first unmastered skill with prerequisites met
*/
export function findCurrentSkill(
masteryStates: Map<SkillId, boolean>,
@ -672,3 +672,10 @@ export function findCurrentSkill(
// All skills mastered! Return the last skill
return skills[skills.length - 1]
}
/**
* Helper: Extract digit complexity from a skill (1-5)
*/
export function getDigitComplexity(skill: SkillDefinition): number {
return skill.digitRange.max
}