@boshu2/vibe-check 1.3.2 → 1.5.0
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.
- package/.vibe-check/sessions.json +21 -1
- package/PLAN-ultimate-game.md +1362 -0
- package/claude-progress.json +21 -3
- package/claude-progress.txt +103 -0
- package/dist/cli.js +1 -0
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +2 -1
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/index.d.ts +1 -0
- package/dist/commands/index.d.ts.map +1 -1
- package/dist/commands/index.js +3 -1
- package/dist/commands/index.js.map +1 -1
- package/dist/commands/intervene.d.ts +15 -0
- package/dist/commands/intervene.d.ts.map +1 -0
- package/dist/commands/intervene.js +183 -0
- package/dist/commands/intervene.js.map +1 -0
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +250 -24
- package/dist/commands/profile.js.map +1 -1
- package/dist/gamification/badges.d.ts +29 -0
- package/dist/gamification/badges.d.ts.map +1 -0
- package/dist/gamification/badges.js +114 -0
- package/dist/gamification/badges.js.map +1 -0
- package/dist/gamification/challenges.d.ts +42 -0
- package/dist/gamification/challenges.d.ts.map +1 -0
- package/dist/gamification/challenges.js +184 -0
- package/dist/gamification/challenges.js.map +1 -0
- package/dist/gamification/hall-of-fame.d.ts +17 -0
- package/dist/gamification/hall-of-fame.d.ts.map +1 -0
- package/dist/gamification/hall-of-fame.js +64 -0
- package/dist/gamification/hall-of-fame.js.map +1 -0
- package/dist/gamification/index.d.ts +3 -0
- package/dist/gamification/index.d.ts.map +1 -1
- package/dist/gamification/index.js +5 -1
- package/dist/gamification/index.js.map +1 -1
- package/dist/gamification/intervention-memory.d.ts +61 -0
- package/dist/gamification/intervention-memory.d.ts.map +1 -0
- package/dist/gamification/intervention-memory.js +229 -0
- package/dist/gamification/intervention-memory.js.map +1 -0
- package/dist/gamification/leaderboards.d.ts +49 -0
- package/dist/gamification/leaderboards.d.ts.map +1 -0
- package/dist/gamification/leaderboards.js +179 -0
- package/dist/gamification/leaderboards.js.map +1 -0
- package/dist/gamification/pattern-memory.d.ts +45 -0
- package/dist/gamification/pattern-memory.d.ts.map +1 -0
- package/dist/gamification/pattern-memory.js +188 -0
- package/dist/gamification/pattern-memory.js.map +1 -0
- package/dist/gamification/profile.d.ts +2 -1
- package/dist/gamification/profile.d.ts.map +1 -1
- package/dist/gamification/profile.js +15 -1
- package/dist/gamification/profile.js.map +1 -1
- package/dist/gamification/share.d.ts +29 -0
- package/dist/gamification/share.d.ts.map +1 -0
- package/dist/gamification/share.js +57 -0
- package/dist/gamification/share.js.map +1 -0
- package/dist/gamification/stats.d.ts +34 -0
- package/dist/gamification/stats.d.ts.map +1 -0
- package/dist/gamification/stats.js +91 -0
- package/dist/gamification/stats.js.map +1 -0
- package/dist/gamification/streaks.d.ts +9 -1
- package/dist/gamification/streaks.d.ts.map +1 -1
- package/dist/gamification/streaks.js +37 -4
- package/dist/gamification/streaks.js.map +1 -1
- package/dist/gamification/types.d.ts +73 -0
- package/dist/gamification/types.d.ts.map +1 -1
- package/dist/gamification/types.js +11 -3
- package/dist/gamification/types.js.map +1 -1
- package/dist/gamification/xp.d.ts +6 -2
- package/dist/gamification/xp.d.ts.map +1 -1
- package/dist/gamification/xp.js +27 -5
- package/dist/gamification/xp.js.map +1 -1
- package/dist/output/terminal.d.ts.map +1 -1
- package/dist/output/terminal.js +39 -0
- package/dist/output/terminal.js.map +1 -1
- package/feature-list.json +91 -1
- package/package.json +1 -1
package/dist/commands/profile.js
CHANGED
|
@@ -8,14 +8,31 @@ exports.runProfile2 = runProfile2;
|
|
|
8
8
|
const commander_1 = require("commander");
|
|
9
9
|
const chalk_1 = __importDefault(require("chalk"));
|
|
10
10
|
const profile_1 = require("../gamification/profile");
|
|
11
|
+
const streaks_1 = require("../gamification/streaks");
|
|
11
12
|
const xp_1 = require("../gamification/xp");
|
|
12
13
|
const types_1 = require("../gamification/types");
|
|
13
14
|
const achievements_1 = require("../gamification/achievements");
|
|
15
|
+
const pattern_memory_1 = require("../gamification/pattern-memory");
|
|
16
|
+
const intervention_memory_1 = require("../gamification/intervention-memory");
|
|
17
|
+
const challenges_1 = require("../gamification/challenges");
|
|
18
|
+
const leaderboards_1 = require("../gamification/leaderboards");
|
|
19
|
+
const hall_of_fame_1 = require("../gamification/hall-of-fame");
|
|
20
|
+
const stats_1 = require("../gamification/stats");
|
|
21
|
+
const badges_1 = require("../gamification/badges");
|
|
22
|
+
const share_1 = require("../gamification/share");
|
|
14
23
|
function createProfileCommand() {
|
|
15
24
|
const cmd = new commander_1.Command('profile')
|
|
16
25
|
.description('View your vibe-check profile, stats, and achievements')
|
|
17
26
|
.option('--achievements', 'Show all achievements', false)
|
|
18
27
|
.option('--stats', 'Show detailed stats', false)
|
|
28
|
+
.option('--patterns', 'Show spiral pattern memory (your triggers)', false)
|
|
29
|
+
.option('--interventions', 'Show intervention memory (what breaks spirals)', false)
|
|
30
|
+
.option('--challenges', 'Show weekly challenges', false)
|
|
31
|
+
.option('--leaderboard', 'Show personal leaderboard', false)
|
|
32
|
+
.option('--hall-of-fame', 'Show Hall of Fame records', false)
|
|
33
|
+
.option('--weekly', 'Show this week stats', false)
|
|
34
|
+
.option('--share', 'Output shareable profile text', false)
|
|
35
|
+
.option('--share-json', 'Output shareable profile as JSON', false)
|
|
19
36
|
.option('--json', 'Output as JSON', false)
|
|
20
37
|
.action(async (options) => {
|
|
21
38
|
await runProfile(options);
|
|
@@ -24,6 +41,17 @@ function createProfileCommand() {
|
|
|
24
41
|
}
|
|
25
42
|
async function runProfile(options) {
|
|
26
43
|
const profile = (0, profile_1.loadProfile)();
|
|
44
|
+
// Handle share options first (standalone output)
|
|
45
|
+
if (options.share) {
|
|
46
|
+
const shareable = (0, share_1.createShareableProfile)(profile);
|
|
47
|
+
console.log((0, share_1.formatShareText)(shareable));
|
|
48
|
+
return;
|
|
49
|
+
}
|
|
50
|
+
if (options['share-json']) {
|
|
51
|
+
const shareable = (0, share_1.createShareableProfile)(profile);
|
|
52
|
+
console.log((0, share_1.formatShareJSON)(shareable));
|
|
53
|
+
return;
|
|
54
|
+
}
|
|
27
55
|
if (options.json) {
|
|
28
56
|
console.log(JSON.stringify(profile, null, 2));
|
|
29
57
|
return;
|
|
@@ -32,49 +60,106 @@ async function runProfile(options) {
|
|
|
32
60
|
const levelInfo = types_1.LEVELS.find(l => l.level === xp.level);
|
|
33
61
|
const achievementCounts = (0, profile_1.getAchievementCounts)(profile);
|
|
34
62
|
const recentSessions = (0, profile_1.getRecentSessions)(profile, 30);
|
|
63
|
+
// Get badge
|
|
64
|
+
const badge = (0, badges_1.getCurrentBadge)(stats.totalSessions, streak.longest, xp.total);
|
|
65
|
+
const nextBadge = (0, badges_1.getNextBadge)(stats.totalSessions, streak.longest, xp.total);
|
|
35
66
|
// Header
|
|
36
67
|
console.log();
|
|
37
|
-
console.log(chalk_1.default.cyan('
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
68
|
+
console.log(chalk_1.default.cyan('╭─────────────────────────────────────────────────────────╮'));
|
|
69
|
+
// Title with prestige and badge
|
|
70
|
+
const prestigeStr = xp.prestigeTier ? ` ${types_1.PRESTIGE_TIERS[xp.prestigeTier - 1].icon}` : '';
|
|
71
|
+
const badgeStr = badge ? ` ${badge.icon} ${badge.name}` : '';
|
|
72
|
+
const titleLine = `${levelInfo.icon}${prestigeStr} ${xp.levelName}${badgeStr}`;
|
|
73
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold.white(` ${titleLine}`).padEnd(66) + chalk_1.default.cyan('│'));
|
|
74
|
+
console.log(chalk_1.default.cyan('├─────────────────────────────────────────────────────────┤'));
|
|
75
|
+
// Level/XP
|
|
41
76
|
const levelBar = createProgressBar((0, xp_1.getLevelProgress)(xp), 20);
|
|
42
|
-
|
|
43
|
-
console.log(chalk_1.default.cyan('│') + ` ${levelBar} ${chalk_1.default.gray(
|
|
44
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
45
|
-
// Streak
|
|
46
|
-
const streakDisplay = streak
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
77
|
+
const xpDisplay = xp.nextLevelXP === Infinity ? `${xp.total} XP (MAX)` : `${xp.currentLevelXP}/${xp.nextLevelXP} XP`;
|
|
78
|
+
console.log(chalk_1.default.cyan('│') + ` ${levelBar} ${chalk_1.default.gray(xpDisplay)}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
79
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
80
|
+
// Streak with enhanced display
|
|
81
|
+
const streakDisplay = (0, streaks_1.formatStreak)(streak);
|
|
82
|
+
console.log(chalk_1.default.cyan('│') + ` ${streakDisplay}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
83
|
+
// Freezes
|
|
84
|
+
const freezeDisplay = (0, streaks_1.formatFreezes)(streak);
|
|
85
|
+
console.log(chalk_1.default.cyan('│') + ` ${freezeDisplay}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
50
86
|
const weeklyBar = createProgressBar((streak.weeklyProgress / streak.weeklyGoal) * 100, 5);
|
|
51
|
-
console.log(chalk_1.default.cyan('│') + ` 📅 Weekly Goal: ${streak.weeklyProgress}/${streak.weeklyGoal} ${weeklyBar}`.padEnd(
|
|
52
|
-
console.log(chalk_1.default.cyan('│') + ` 🏆 Achievements: ${achievementCounts.unlocked}/${achievementCounts.total} unlocked`.padEnd(
|
|
53
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
87
|
+
console.log(chalk_1.default.cyan('│') + ` 📅 Weekly Goal: ${streak.weeklyProgress}/${streak.weeklyGoal} ${weeklyBar}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
88
|
+
console.log(chalk_1.default.cyan('│') + ` 🏆 Achievements: ${achievementCounts.unlocked}/${achievementCounts.total} unlocked`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
89
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
90
|
+
// Weekly Challenges Section
|
|
91
|
+
const challenges = (0, challenges_1.getCurrentChallenges)(profile);
|
|
92
|
+
if (challenges.length > 0) {
|
|
93
|
+
console.log(chalk_1.default.cyan('├─────────────────────────────────────────────────────────┤'));
|
|
94
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold.yellow(' WEEKLY CHALLENGES').padEnd(66) + chalk_1.default.cyan('│'));
|
|
95
|
+
for (const c of challenges) {
|
|
96
|
+
const progressBar = createChallengeBar(c.progress, c.target, 10);
|
|
97
|
+
const status = c.completed
|
|
98
|
+
? chalk_1.default.green(`✓ COMPLETE (+${c.reward} XP)`)
|
|
99
|
+
: `${c.progress}/${c.target}`;
|
|
100
|
+
console.log(chalk_1.default.cyan('│') + ` ${c.icon} ${c.name}: ${progressBar} ${status}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
101
|
+
}
|
|
102
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
103
|
+
}
|
|
104
|
+
// Weekly Stats Section
|
|
105
|
+
const weeklyStats = (0, stats_1.getWeeklyStats)(profile.sessions);
|
|
106
|
+
if (weeklyStats.sessions > 0) {
|
|
107
|
+
console.log(chalk_1.default.cyan('├─────────────────────────────────────────────────────────┤'));
|
|
108
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 📅 THIS WEEK').padEnd(66) + chalk_1.default.cyan('│'));
|
|
109
|
+
console.log(chalk_1.default.cyan('│') + ` Avg Score: ${weeklyStats.avgScore}% ${weeklyStats.trend.emoji}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
110
|
+
console.log(chalk_1.default.cyan('│') + ` Sessions: ${weeklyStats.sessions} | XP: ${weeklyStats.xpEarned}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
111
|
+
if (weeklyStats.sparkline) {
|
|
112
|
+
console.log(chalk_1.default.cyan('│') + ` Trend: ${weeklyStats.sparkline}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
113
|
+
}
|
|
114
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
115
|
+
}
|
|
54
116
|
// 30-Day Stats
|
|
55
|
-
console.log(chalk_1.default.cyan('
|
|
117
|
+
console.log(chalk_1.default.cyan('├─────────────────────────────────────────────────────────┤'));
|
|
118
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 📊 30-Day Stats').padEnd(66) + chalk_1.default.cyan('│'));
|
|
56
119
|
const avgScore = recentSessions.length > 0
|
|
57
120
|
? Math.round(recentSessions.reduce((sum, s) => sum + s.vibeScore, 0) / recentSessions.length)
|
|
58
121
|
: 0;
|
|
59
122
|
const totalCommits = recentSessions.reduce((sum, s) => sum + s.commits, 0);
|
|
60
|
-
console.log(chalk_1.default.cyan('│') + ` ├─ Avg Vibe Score: ${chalk_1.default.bold(avgScore.toString())}%`.padEnd(
|
|
61
|
-
console.log(chalk_1.default.cyan('│') + ` ├─ Sessions: ${chalk_1.default.bold(recentSessions.length.toString())}`.padEnd(
|
|
62
|
-
console.log(chalk_1.default.cyan('│') + ` ├─ Commits Analyzed: ${chalk_1.default.bold(totalCommits.toString())}`.padEnd(
|
|
123
|
+
console.log(chalk_1.default.cyan('│') + ` ├─ Avg Vibe Score: ${chalk_1.default.bold(avgScore.toString())}%`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
124
|
+
console.log(chalk_1.default.cyan('│') + ` ├─ Sessions: ${chalk_1.default.bold(recentSessions.length.toString())}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
125
|
+
console.log(chalk_1.default.cyan('│') + ` ├─ Commits Analyzed: ${chalk_1.default.bold(totalCommits.toString())}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
63
126
|
const spiralsAvoided = recentSessions.filter(s => s.spirals === 0 && s.commits >= 10).length;
|
|
64
|
-
console.log(chalk_1.default.cyan('│') + ` └─ Zero-Spiral Sessions: ${chalk_1.default.bold(spiralsAvoided.toString())}`.padEnd(
|
|
65
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
127
|
+
console.log(chalk_1.default.cyan('│') + ` └─ Zero-Spiral Sessions: ${chalk_1.default.bold(spiralsAvoided.toString())}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
128
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
129
|
+
// Pattern Memory Summary
|
|
130
|
+
const patternInfo = (0, pattern_memory_1.formatPatternMemory)(profile.patternMemory || { version: '1.0.0', records: [], patternCounts: {}, componentCounts: {}, patternDurations: {}, topPatterns: [], topComponents: [], avgRecoveryTime: 0, totalSpirals: 0 });
|
|
131
|
+
if (patternInfo.hasData) {
|
|
132
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🧠 Spiral Triggers').padEnd(66) + chalk_1.default.cyan('│'));
|
|
133
|
+
if (patternInfo.topPatterns.length > 0) {
|
|
134
|
+
const topTrigger = patternInfo.topPatterns[0];
|
|
135
|
+
console.log(chalk_1.default.cyan('│') + ` └─ Top: ${chalk_1.default.yellow(topTrigger.displayName)} (${topTrigger.count}×)`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
136
|
+
}
|
|
137
|
+
console.log(chalk_1.default.cyan('│') + ` Avg recovery: ${chalk_1.default.gray(patternInfo.avgRecoveryTime + ' min')}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
138
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
139
|
+
}
|
|
140
|
+
// Intervention Memory Summary
|
|
141
|
+
const interventionInfo = (0, intervention_memory_1.formatInterventionMemory)(profile.interventionMemory);
|
|
142
|
+
if (interventionInfo.hasData) {
|
|
143
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🛠️ What Breaks Spirals').padEnd(66) + chalk_1.default.cyan('│'));
|
|
144
|
+
if (interventionInfo.topInterventions.length > 0) {
|
|
145
|
+
const top = interventionInfo.topInterventions[0];
|
|
146
|
+
console.log(chalk_1.default.cyan('│') + ` └─ Go-to: ${chalk_1.default.green(top.icon + ' ' + top.name)} (${top.count}×)`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
147
|
+
}
|
|
148
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
149
|
+
}
|
|
66
150
|
// Recent achievements
|
|
67
151
|
const recentAchievements = achievements.slice(-3).reverse();
|
|
68
152
|
if (recentAchievements.length > 0) {
|
|
69
|
-
console.log(chalk_1.default.cyan('
|
|
153
|
+
console.log(chalk_1.default.cyan('├─────────────────────────────────────────────────────────┤'));
|
|
154
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' Recent Achievements:').padEnd(66) + chalk_1.default.cyan('│'));
|
|
70
155
|
for (const ach of recentAchievements) {
|
|
71
156
|
const dateStr = ach.unlockedAt
|
|
72
157
|
? new Date(ach.unlockedAt).toLocaleDateString('en-US', { month: 'short', day: 'numeric' })
|
|
73
158
|
: '';
|
|
74
|
-
console.log(chalk_1.default.cyan('│') + ` ${ach.icon} ${ach.name} ${chalk_1.default.gray(`(${dateStr})`)}`.padEnd(
|
|
159
|
+
console.log(chalk_1.default.cyan('│') + ` ${ach.icon} ${ach.name} ${chalk_1.default.gray(`(${dateStr})`)}`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
75
160
|
}
|
|
76
161
|
}
|
|
77
|
-
console.log(chalk_1.default.cyan('
|
|
162
|
+
console.log(chalk_1.default.cyan('╰─────────────────────────────────────────────────────────╯'));
|
|
78
163
|
console.log();
|
|
79
164
|
// Show all achievements if requested
|
|
80
165
|
if (options.achievements) {
|
|
@@ -84,12 +169,69 @@ async function runProfile(options) {
|
|
|
84
169
|
if (options.stats) {
|
|
85
170
|
showDetailedStats(profile);
|
|
86
171
|
}
|
|
172
|
+
// Show pattern memory if requested
|
|
173
|
+
if (options.patterns) {
|
|
174
|
+
showPatternMemory(profile.patternMemory);
|
|
175
|
+
}
|
|
176
|
+
// Show intervention memory if requested
|
|
177
|
+
if (options.interventions) {
|
|
178
|
+
showInterventionMemory(profile.interventionMemory);
|
|
179
|
+
}
|
|
180
|
+
// Show challenges if requested
|
|
181
|
+
if (options.challenges) {
|
|
182
|
+
showChallenges(challenges);
|
|
183
|
+
}
|
|
184
|
+
// Show leaderboard if requested
|
|
185
|
+
if (options.leaderboard) {
|
|
186
|
+
const leaderboards = (0, leaderboards_1.loadLeaderboards)();
|
|
187
|
+
console.log(chalk_1.default.bold('\n🏆 Personal Leaderboard\n'));
|
|
188
|
+
console.log((0, leaderboards_1.formatLeaderboard)(leaderboards));
|
|
189
|
+
console.log();
|
|
190
|
+
}
|
|
191
|
+
// Show Hall of Fame if requested
|
|
192
|
+
if (options['hall-of-fame']) {
|
|
193
|
+
const leaderboards = (0, leaderboards_1.loadLeaderboards)();
|
|
194
|
+
const records = (0, hall_of_fame_1.getHallOfFame)(leaderboards);
|
|
195
|
+
console.log('\n' + (0, hall_of_fame_1.formatHallOfFame)(records));
|
|
196
|
+
}
|
|
197
|
+
// Show weekly stats if requested
|
|
198
|
+
if (options.weekly) {
|
|
199
|
+
console.log(chalk_1.default.bold('\n📅 Weekly Statistics\n'));
|
|
200
|
+
console.log((0, stats_1.formatWeeklyStats)(weeklyStats));
|
|
201
|
+
console.log();
|
|
202
|
+
}
|
|
87
203
|
}
|
|
88
204
|
function createProgressBar(percent, length) {
|
|
89
205
|
const filled = Math.round((percent / 100) * length);
|
|
90
206
|
const empty = length - filled;
|
|
91
207
|
return chalk_1.default.green('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
|
|
92
208
|
}
|
|
209
|
+
function createChallengeBar(current, total, length) {
|
|
210
|
+
const pct = Math.min(current / total, 1);
|
|
211
|
+
const filled = Math.round(pct * length);
|
|
212
|
+
const empty = length - filled;
|
|
213
|
+
return chalk_1.default.yellow('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
|
|
214
|
+
}
|
|
215
|
+
function showChallenges(challenges) {
|
|
216
|
+
console.log(chalk_1.default.bold('\n🎯 Weekly Challenges\n'));
|
|
217
|
+
if (challenges.length === 0) {
|
|
218
|
+
console.log(chalk_1.default.gray(' No challenges available this week.'));
|
|
219
|
+
console.log();
|
|
220
|
+
return;
|
|
221
|
+
}
|
|
222
|
+
for (const c of challenges) {
|
|
223
|
+
const progressBar = createChallengeBar(c.progress, c.target, 15);
|
|
224
|
+
const pct = Math.round((c.progress / c.target) * 100);
|
|
225
|
+
const status = c.completed
|
|
226
|
+
? chalk_1.default.green('✓ COMPLETE')
|
|
227
|
+
: chalk_1.default.gray(`${pct}%`);
|
|
228
|
+
console.log(` ${c.icon} ${chalk_1.default.bold(c.name)}`);
|
|
229
|
+
console.log(` ${c.description}`);
|
|
230
|
+
console.log(` ${progressBar} ${c.progress}/${c.target} ${status}`);
|
|
231
|
+
console.log(` Reward: ${chalk_1.default.yellow(`+${c.reward} XP`)}`);
|
|
232
|
+
console.log();
|
|
233
|
+
}
|
|
234
|
+
}
|
|
93
235
|
function showAllAchievements(unlockedAchievements) {
|
|
94
236
|
const allAchievements = (0, achievements_1.getAllAchievements)(unlockedAchievements);
|
|
95
237
|
const unlockedIds = new Set(unlockedAchievements.map(a => a.id));
|
|
@@ -137,6 +279,90 @@ function showDetailedStats(profile) {
|
|
|
137
279
|
console.log(` Longest Streak: ${chalk_1.default.bold(streak.longest)} days`);
|
|
138
280
|
console.log();
|
|
139
281
|
}
|
|
282
|
+
function showPatternMemory(memory) {
|
|
283
|
+
const patternInfo = (0, pattern_memory_1.formatPatternMemory)(memory);
|
|
284
|
+
console.log(chalk_1.default.bold('\n🧠 Pattern Memory - Your Spiral Triggers\n'));
|
|
285
|
+
if (!patternInfo.hasData) {
|
|
286
|
+
console.log(chalk_1.default.gray(' No spiral patterns recorded yet.'));
|
|
287
|
+
console.log(chalk_1.default.gray(' When spirals are detected, patterns will be tracked here.'));
|
|
288
|
+
console.log();
|
|
289
|
+
return;
|
|
290
|
+
}
|
|
291
|
+
// Summary
|
|
292
|
+
console.log(chalk_1.default.bold('Summary'));
|
|
293
|
+
console.log(` ${patternInfo.summary}`);
|
|
294
|
+
console.log(` Total spirals recorded: ${chalk_1.default.bold(patternInfo.totalSpirals.toString())}`);
|
|
295
|
+
console.log(` Average recovery time: ${chalk_1.default.bold(patternInfo.avgRecoveryTime.toString())} minutes`);
|
|
296
|
+
console.log();
|
|
297
|
+
// Top patterns
|
|
298
|
+
if (patternInfo.topPatterns.length > 0) {
|
|
299
|
+
console.log(chalk_1.default.bold('Top Spiral Patterns'));
|
|
300
|
+
for (const pattern of patternInfo.topPatterns) {
|
|
301
|
+
const bar = createPatternBar(pattern.count, patternInfo.totalSpirals);
|
|
302
|
+
console.log(` ${bar} ${chalk_1.default.yellow(pattern.displayName)} (${pattern.count}×, ${pattern.totalMinutes}m total)`);
|
|
303
|
+
console.log(chalk_1.default.gray(` 💡 ${pattern.advice}`));
|
|
304
|
+
}
|
|
305
|
+
console.log();
|
|
306
|
+
}
|
|
307
|
+
// Top components
|
|
308
|
+
if (patternInfo.topComponents.length > 0) {
|
|
309
|
+
console.log(chalk_1.default.bold('Top Triggering Components'));
|
|
310
|
+
for (const comp of patternInfo.topComponents) {
|
|
311
|
+
const bar = createPatternBar(comp.count, patternInfo.totalSpirals);
|
|
312
|
+
console.log(` ${bar} ${comp.component} (${comp.count}×)`);
|
|
313
|
+
}
|
|
314
|
+
console.log();
|
|
315
|
+
}
|
|
316
|
+
console.log(chalk_1.default.gray('Use this data to identify recurring issues and add tracer tests.'));
|
|
317
|
+
console.log();
|
|
318
|
+
}
|
|
319
|
+
function createPatternBar(count, total) {
|
|
320
|
+
const pct = total > 0 ? (count / total) * 100 : 0;
|
|
321
|
+
const filled = Math.round(pct / 10);
|
|
322
|
+
const empty = 10 - filled;
|
|
323
|
+
return chalk_1.default.yellow('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
|
|
324
|
+
}
|
|
325
|
+
function createInterventionBar(count, total) {
|
|
326
|
+
const pct = total > 0 ? (count / total) * 100 : 0;
|
|
327
|
+
const filled = Math.round(pct / 10);
|
|
328
|
+
const empty = 10 - filled;
|
|
329
|
+
return chalk_1.default.green('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
|
|
330
|
+
}
|
|
331
|
+
function showInterventionMemory(memory) {
|
|
332
|
+
const interventionInfo = (0, intervention_memory_1.formatInterventionMemory)(memory);
|
|
333
|
+
console.log(chalk_1.default.bold('\n🛠️ Intervention Memory - What Breaks Your Spirals\n'));
|
|
334
|
+
if (!interventionInfo.hasData) {
|
|
335
|
+
console.log(chalk_1.default.gray(' No interventions recorded yet.'));
|
|
336
|
+
console.log(chalk_1.default.gray(' When you break out of a spiral, record what helped:'));
|
|
337
|
+
console.log(chalk_1.default.gray(' vibe-check intervene TRACER_TEST --pattern SECRETS_AUTH'));
|
|
338
|
+
console.log();
|
|
339
|
+
return;
|
|
340
|
+
}
|
|
341
|
+
// Summary
|
|
342
|
+
console.log(chalk_1.default.bold('Summary'));
|
|
343
|
+
console.log(` ${interventionInfo.summary}`);
|
|
344
|
+
console.log(` Average spiral duration: ${chalk_1.default.bold(interventionInfo.avgTimeToIntervene.toString())} minutes`);
|
|
345
|
+
console.log();
|
|
346
|
+
// Top interventions
|
|
347
|
+
if (interventionInfo.topInterventions.length > 0) {
|
|
348
|
+
console.log(chalk_1.default.bold('Your Go-To Interventions'));
|
|
349
|
+
for (const int of interventionInfo.topInterventions) {
|
|
350
|
+
const bar = createInterventionBar(int.count, interventionInfo.totalInterventions);
|
|
351
|
+
console.log(` ${int.icon} ${int.name.padEnd(15)} ${bar} ${int.count}×`);
|
|
352
|
+
}
|
|
353
|
+
console.log();
|
|
354
|
+
}
|
|
355
|
+
// Pattern-specific recommendations
|
|
356
|
+
if (interventionInfo.patternRecommendations.length > 0) {
|
|
357
|
+
console.log(chalk_1.default.bold('What Works by Pattern'));
|
|
358
|
+
for (const rec of interventionInfo.patternRecommendations) {
|
|
359
|
+
console.log(` ${chalk_1.default.yellow(rec.pattern)}: ${rec.interventions.join(', ')}`);
|
|
360
|
+
}
|
|
361
|
+
console.log();
|
|
362
|
+
}
|
|
363
|
+
console.log(chalk_1.default.gray('Keep recording what breaks your spirals to build your playbook!'));
|
|
364
|
+
console.log();
|
|
365
|
+
}
|
|
140
366
|
async function runProfile2(options) {
|
|
141
367
|
return runProfile(options);
|
|
142
368
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"profile.js","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
export interface RankBadge {
|
|
2
|
+
id: string;
|
|
3
|
+
name: string;
|
|
4
|
+
icon: string;
|
|
5
|
+
color: string;
|
|
6
|
+
requirement: string;
|
|
7
|
+
threshold: {
|
|
8
|
+
type: 'sessions' | 'streak' | 'xp' | 'score';
|
|
9
|
+
value: number;
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
export declare const RANK_BADGES: RankBadge[];
|
|
13
|
+
/**
|
|
14
|
+
* Get current rank badge
|
|
15
|
+
*/
|
|
16
|
+
export declare function getCurrentBadge(sessions: number, streak: number, xp: number): RankBadge | null;
|
|
17
|
+
/**
|
|
18
|
+
* Get next badge and progress
|
|
19
|
+
*/
|
|
20
|
+
export declare function getNextBadge(sessions: number, streak: number, xp: number): {
|
|
21
|
+
badge: RankBadge;
|
|
22
|
+
progress: number;
|
|
23
|
+
remaining: string;
|
|
24
|
+
} | null;
|
|
25
|
+
/**
|
|
26
|
+
* Format badge display
|
|
27
|
+
*/
|
|
28
|
+
export declare function formatBadge(badge: RankBadge | null): string;
|
|
29
|
+
//# sourceMappingURL=badges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badges.d.ts","sourceRoot":"","sources":["../../src/gamification/badges.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;IACpB,SAAS,EAAE;QACT,IAAI,EAAE,UAAU,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC;QAC7C,KAAK,EAAE,MAAM,CAAC;KACf,CAAC;CACH;AAED,eAAO,MAAM,WAAW,EAAE,SAAS,EAyClC,CAAC;AAEF;;GAEG;AACH,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,GACT,SAAS,GAAG,IAAI,CAoBlB;AAED;;GAEG;AACH,wBAAgB,YAAY,CAC1B,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,MAAM,EACd,EAAE,EAAE,MAAM,GACT;IAAE,KAAK,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,CAAC;IAAC,SAAS,EAAE,MAAM,CAAA;CAAE,GAAG,IAAI,CAiClE;AAED;;GAEG;AACH,wBAAgB,WAAW,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI,GAAG,MAAM,CAG3D"}
|
|
@@ -0,0 +1,114 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.RANK_BADGES = void 0;
|
|
4
|
+
exports.getCurrentBadge = getCurrentBadge;
|
|
5
|
+
exports.getNextBadge = getNextBadge;
|
|
6
|
+
exports.formatBadge = formatBadge;
|
|
7
|
+
exports.RANK_BADGES = [
|
|
8
|
+
{
|
|
9
|
+
id: 'bronze',
|
|
10
|
+
name: 'Bronze',
|
|
11
|
+
icon: '🥉',
|
|
12
|
+
color: '#CD7F32',
|
|
13
|
+
requirement: '10 sessions',
|
|
14
|
+
threshold: { type: 'sessions', value: 10 },
|
|
15
|
+
},
|
|
16
|
+
{
|
|
17
|
+
id: 'silver',
|
|
18
|
+
name: 'Silver',
|
|
19
|
+
icon: '🥈',
|
|
20
|
+
color: '#C0C0C0',
|
|
21
|
+
requirement: '50 sessions',
|
|
22
|
+
threshold: { type: 'sessions', value: 50 },
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
id: 'gold',
|
|
26
|
+
name: 'Gold',
|
|
27
|
+
icon: '🥇',
|
|
28
|
+
color: '#FFD700',
|
|
29
|
+
requirement: '100 sessions',
|
|
30
|
+
threshold: { type: 'sessions', value: 100 },
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
id: 'platinum',
|
|
34
|
+
name: 'Platinum',
|
|
35
|
+
icon: '💎',
|
|
36
|
+
color: '#E5E4E2',
|
|
37
|
+
requirement: '14-day streak',
|
|
38
|
+
threshold: { type: 'streak', value: 14 },
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
id: 'diamond',
|
|
42
|
+
name: 'Diamond',
|
|
43
|
+
icon: '🔷',
|
|
44
|
+
color: '#B9F2FF',
|
|
45
|
+
requirement: '5000+ XP',
|
|
46
|
+
threshold: { type: 'xp', value: 5000 },
|
|
47
|
+
},
|
|
48
|
+
];
|
|
49
|
+
/**
|
|
50
|
+
* Get current rank badge
|
|
51
|
+
*/
|
|
52
|
+
function getCurrentBadge(sessions, streak, xp) {
|
|
53
|
+
// Check from highest to lowest
|
|
54
|
+
for (let i = exports.RANK_BADGES.length - 1; i >= 0; i--) {
|
|
55
|
+
const badge = exports.RANK_BADGES[i];
|
|
56
|
+
const { type, value } = badge.threshold;
|
|
57
|
+
switch (type) {
|
|
58
|
+
case 'sessions':
|
|
59
|
+
if (sessions >= value)
|
|
60
|
+
return badge;
|
|
61
|
+
break;
|
|
62
|
+
case 'streak':
|
|
63
|
+
if (streak >= value)
|
|
64
|
+
return badge;
|
|
65
|
+
break;
|
|
66
|
+
case 'xp':
|
|
67
|
+
if (xp >= value)
|
|
68
|
+
return badge;
|
|
69
|
+
break;
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
return null;
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Get next badge and progress
|
|
76
|
+
*/
|
|
77
|
+
function getNextBadge(sessions, streak, xp) {
|
|
78
|
+
const current = getCurrentBadge(sessions, streak, xp);
|
|
79
|
+
const currentIdx = current ? exports.RANK_BADGES.findIndex(b => b.id === current.id) : -1;
|
|
80
|
+
if (currentIdx >= exports.RANK_BADGES.length - 1)
|
|
81
|
+
return null;
|
|
82
|
+
const next = exports.RANK_BADGES[currentIdx + 1];
|
|
83
|
+
const { type, value } = next.threshold;
|
|
84
|
+
let currentValue;
|
|
85
|
+
let unit;
|
|
86
|
+
switch (type) {
|
|
87
|
+
case 'sessions':
|
|
88
|
+
currentValue = sessions;
|
|
89
|
+
unit = 'sessions';
|
|
90
|
+
break;
|
|
91
|
+
case 'streak':
|
|
92
|
+
currentValue = streak;
|
|
93
|
+
unit = 'day streak';
|
|
94
|
+
break;
|
|
95
|
+
case 'xp':
|
|
96
|
+
currentValue = xp;
|
|
97
|
+
unit = 'XP';
|
|
98
|
+
break;
|
|
99
|
+
default:
|
|
100
|
+
return null;
|
|
101
|
+
}
|
|
102
|
+
const progress = Math.min((currentValue / value) * 100, 99);
|
|
103
|
+
const remaining = `${value - currentValue} ${unit}`;
|
|
104
|
+
return { badge: next, progress, remaining };
|
|
105
|
+
}
|
|
106
|
+
/**
|
|
107
|
+
* Format badge display
|
|
108
|
+
*/
|
|
109
|
+
function formatBadge(badge) {
|
|
110
|
+
if (!badge)
|
|
111
|
+
return 'No badge yet';
|
|
112
|
+
return `${badge.icon} ${badge.name} Tier`;
|
|
113
|
+
}
|
|
114
|
+
//# sourceMappingURL=badges.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"badges.js","sourceRoot":"","sources":["../../src/gamification/badges.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { UserProfile, SessionRecord, StreakState } from './types';
|
|
2
|
+
export type ChallengeType = 'TRUST_STREAK' | 'ZERO_SPIRALS' | 'ELITE_COUNT' | 'COMMIT_VOLUME' | 'STREAK_EXTEND';
|
|
3
|
+
export interface Challenge {
|
|
4
|
+
id: string;
|
|
5
|
+
type: ChallengeType;
|
|
6
|
+
name: string;
|
|
7
|
+
description: string;
|
|
8
|
+
icon: string;
|
|
9
|
+
target: number;
|
|
10
|
+
progress: number;
|
|
11
|
+
reward: number;
|
|
12
|
+
weekStart: string;
|
|
13
|
+
completed: boolean;
|
|
14
|
+
completedAt?: string;
|
|
15
|
+
}
|
|
16
|
+
export declare const CHALLENGE_DEFINITIONS: Record<ChallengeType, {
|
|
17
|
+
name: string;
|
|
18
|
+
description: (target: number) => string;
|
|
19
|
+
icon: string;
|
|
20
|
+
targets: number[];
|
|
21
|
+
rewards: number[];
|
|
22
|
+
}>;
|
|
23
|
+
/**
|
|
24
|
+
* Generate weekly challenges based on user's weak metrics
|
|
25
|
+
*/
|
|
26
|
+
export declare function generateWeeklyChallenges(profile: UserProfile): Challenge[];
|
|
27
|
+
/**
|
|
28
|
+
* Update challenge progress after a session
|
|
29
|
+
*/
|
|
30
|
+
export declare function updateChallengeProgress(challenges: Challenge[], session: SessionRecord, streak: StreakState): {
|
|
31
|
+
challenges: Challenge[];
|
|
32
|
+
completed: Challenge[];
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* Get current week's challenges, generating if needed
|
|
36
|
+
*/
|
|
37
|
+
export declare function getCurrentChallenges(profile: UserProfile): Challenge[];
|
|
38
|
+
/**
|
|
39
|
+
* Format challenges for display
|
|
40
|
+
*/
|
|
41
|
+
export declare function formatChallenges(challenges: Challenge[]): string;
|
|
42
|
+
//# sourceMappingURL=challenges.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"challenges.d.ts","sourceRoot":"","sources":["../../src/gamification/challenges.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGlE,MAAM,MAAM,aAAa,GACrB,cAAc,GACd,cAAc,GACd,aAAa,GACb,eAAe,GACf,eAAe,CAAC;AAEpB,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,aAAa,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AAED,eAAO,MAAM,qBAAqB,EAAE,MAAM,CAAC,aAAa,EAAE;IACxD,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,MAAM,CAAC;IACxC,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,OAAO,EAAE,MAAM,EAAE,CAAC;CACnB,CAoCA,CAAC;AAEF;;GAEG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,EAAE,CAyC1E;AAqBD;;GAEG;AACH,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,SAAS,EAAE,EACvB,OAAO,EAAE,aAAa,EACtB,MAAM,EAAE,WAAW,GAClB;IAAE,UAAU,EAAE,SAAS,EAAE,CAAC;IAAC,SAAS,EAAE,SAAS,EAAE,CAAA;CAAE,CAgCrD;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAAC,OAAO,EAAE,WAAW,GAAG,SAAS,EAAE,CAatE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,CAAC,UAAU,EAAE,SAAS,EAAE,GAAG,MAAM,CAUhE"}
|