INNER CODE UNIT · TypeScript
calcLevel
vibeeval/vibecosystem · hooks/src/achievement-tracker.ts:55
function calcLevel(xp: number): number {
for (const [lvl, threshold] of LEVEL_THRESHOLDS) {
if (xp >= threshold) return lvl;
}
return 1;
}
function streakMultiplier(streak: number): number {
if (streak >= 30) return 3.0;
if (streak >= 14) return 2.0;
if (streak >= 7) return 1.5;
if (streak >= 3) return 1.25;
return 1.0;
}
const ACHIEVEMENTS_PATH = join(homedir(), '.claude', 'achievements.json');
const TODAY = new Date().toISOString().slice(0, 10);