@boshu2/vibe-check 1.4.0 → 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 +11 -1
- package/PLAN-ultimate-game.md +1362 -0
- package/claude-progress.json +14 -8
- package/claude-progress.txt +53 -0
- package/dist/commands/profile.d.ts.map +1 -1
- package/dist/commands/profile.js +140 -31
- 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/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/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 +35 -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 +55 -1
- package/package.json +1 -1
package/claude-progress.json
CHANGED
|
@@ -1,19 +1,16 @@
|
|
|
1
1
|
{
|
|
2
2
|
"project": "vibe-check",
|
|
3
3
|
"created": "2025-11-29",
|
|
4
|
-
"version": "1.
|
|
4
|
+
"version": "1.4.0",
|
|
5
5
|
"current_state": {
|
|
6
6
|
"working_on": null,
|
|
7
7
|
"blockers": [],
|
|
8
|
-
"next_steps": [
|
|
9
|
-
"VIBE-013: Pattern memory (track spiral triggers)",
|
|
10
|
-
"VIBE-014: Intervention tracking (what breaks spirals)"
|
|
11
|
-
]
|
|
8
|
+
"next_steps": []
|
|
12
9
|
},
|
|
13
10
|
"stats": {
|
|
14
|
-
"test_files":
|
|
15
|
-
"tests_passing":
|
|
16
|
-
"npm_version": "1.
|
|
11
|
+
"test_files": 8,
|
|
12
|
+
"tests_passing": 119,
|
|
13
|
+
"npm_version": "1.4.0"
|
|
17
14
|
},
|
|
18
15
|
"sessions": [
|
|
19
16
|
{
|
|
@@ -51,6 +48,15 @@
|
|
|
51
48
|
"summary": "Major refactor: removed ML cruft (1563 lines), added session workflow, watch mode, automatic baseline comparison. Published v1.3.0, v1.3.1, v1.3.2",
|
|
52
49
|
"commits": ["858ee83", "eed8163", "fb88a68"],
|
|
53
50
|
"features_completed": ["VIBE-009", "VIBE-010", "VIBE-011", "VIBE-012"]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"session_id": "2025-11-29-005",
|
|
54
|
+
"started": "2025-11-29T16:20:00Z",
|
|
55
|
+
"ended": "2025-11-29T17:10:00Z",
|
|
56
|
+
"vibe_level": 3,
|
|
57
|
+
"summary": "Pattern memory and intervention tracking: 1594 lines, 39 new tests, published v1.4.0. All 14 features complete.",
|
|
58
|
+
"commits": ["5c92c78", "512eac2"],
|
|
59
|
+
"features_completed": ["VIBE-013", "VIBE-014"]
|
|
54
60
|
}
|
|
55
61
|
]
|
|
56
62
|
}
|
package/claude-progress.txt
CHANGED
|
@@ -3,6 +3,59 @@ Created: 2025-11-29
|
|
|
3
3
|
|
|
4
4
|
## Session Log
|
|
5
5
|
|
|
6
|
+
--- 2025-11-29 17:10 - Pattern Memory & Intervention Tracking Session ---
|
|
7
|
+
|
|
8
|
+
VIBE LEVEL: 3 (Features with verification)
|
|
9
|
+
|
|
10
|
+
COMPLETED:
|
|
11
|
+
- VIBE-013: Pattern memory - tracks spiral triggers over time
|
|
12
|
+
- VIBE-014: Intervention tracking - records what breaks your spirals
|
|
13
|
+
- New `vibe-check intervene` command with 7 intervention types
|
|
14
|
+
- Profile integration: --patterns and --interventions flags
|
|
15
|
+
- 39 new tests (17 pattern memory + 22 intervention memory)
|
|
16
|
+
- Published v1.4.0 to npm
|
|
17
|
+
|
|
18
|
+
COMMITS (2 this session):
|
|
19
|
+
- 5c92c78 feat(v1.4): add pattern memory to track spiral triggers
|
|
20
|
+
- 512eac2 feat(v1.4): add intervention tracking to record what breaks spirals
|
|
21
|
+
|
|
22
|
+
NEW FEATURES:
|
|
23
|
+
- `vibe-check profile --patterns` - See your top spiral triggers
|
|
24
|
+
- `vibe-check profile --interventions` - See what breaks your spirals
|
|
25
|
+
- `vibe-check intervene <type>` - Record an intervention
|
|
26
|
+
- `vibe-check intervene --list` - List intervention types
|
|
27
|
+
- `vibe-check intervene --stats` - View your intervention statistics
|
|
28
|
+
|
|
29
|
+
INTERVENTION TYPES:
|
|
30
|
+
- TRACER_TEST, BREAK, DOCS, REFACTOR, HELP, ROLLBACK, OTHER
|
|
31
|
+
|
|
32
|
+
VIBE-CHECK RESULTS (This Session):
|
|
33
|
+
- Overall: ELITE
|
|
34
|
+
- Trust Pass Rate: 100%
|
|
35
|
+
- Rework Ratio: 0%
|
|
36
|
+
- Spirals: 0
|
|
37
|
+
- Vibe Score: 88%
|
|
38
|
+
|
|
39
|
+
PROFILE STATUS:
|
|
40
|
+
- Level 5 Master (180/1000 XP)
|
|
41
|
+
- 1-day streak
|
|
42
|
+
- 119 tests passing
|
|
43
|
+
|
|
44
|
+
PROJECT STATUS:
|
|
45
|
+
- **ALL 14 FEATURES COMPLETE**
|
|
46
|
+
- v1.4.0 published to npm
|
|
47
|
+
|
|
48
|
+
REMAINING:
|
|
49
|
+
- None! All planned features implemented.
|
|
50
|
+
|
|
51
|
+
FUTURE IDEAS:
|
|
52
|
+
- VS Code extension for watch mode
|
|
53
|
+
- Team/org statistics
|
|
54
|
+
- Integration with CI systems
|
|
55
|
+
- Historical trend charts
|
|
56
|
+
|
|
57
|
+
================================================================================
|
|
58
|
+
|
|
6
59
|
--- 2025-11-29 16:05 - Major Refactor: Simplify & Add Real Value Session ---
|
|
7
60
|
|
|
8
61
|
VIBE LEVEL: 3 (Features with verification)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,wBAAgB,oBAAoB,IAAI,OAAO,CAmB9C;AAkZD,wBAAsB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D"}
|
package/dist/commands/profile.js
CHANGED
|
@@ -8,11 +8,18 @@ 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");
|
|
14
15
|
const pattern_memory_1 = require("../gamification/pattern-memory");
|
|
15
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");
|
|
16
23
|
function createProfileCommand() {
|
|
17
24
|
const cmd = new commander_1.Command('profile')
|
|
18
25
|
.description('View your vibe-check profile, stats, and achievements')
|
|
@@ -20,6 +27,12 @@ function createProfileCommand() {
|
|
|
20
27
|
.option('--stats', 'Show detailed stats', false)
|
|
21
28
|
.option('--patterns', 'Show spiral pattern memory (your triggers)', false)
|
|
22
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)
|
|
23
36
|
.option('--json', 'Output as JSON', false)
|
|
24
37
|
.action(async (options) => {
|
|
25
38
|
await runProfile(options);
|
|
@@ -28,6 +41,17 @@ function createProfileCommand() {
|
|
|
28
41
|
}
|
|
29
42
|
async function runProfile(options) {
|
|
30
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
|
+
}
|
|
31
55
|
if (options.json) {
|
|
32
56
|
console.log(JSON.stringify(profile, null, 2));
|
|
33
57
|
return;
|
|
@@ -36,70 +60,106 @@ async function runProfile(options) {
|
|
|
36
60
|
const levelInfo = types_1.LEVELS.find(l => l.level === xp.level);
|
|
37
61
|
const achievementCounts = (0, profile_1.getAchievementCounts)(profile);
|
|
38
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);
|
|
39
66
|
// Header
|
|
40
67
|
console.log();
|
|
41
|
-
console.log(chalk_1.default.cyan('
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
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
|
|
45
76
|
const levelBar = createProgressBar((0, xp_1.getLevelProgress)(xp), 20);
|
|
46
|
-
|
|
47
|
-
console.log(chalk_1.default.cyan('│') + ` ${levelBar} ${chalk_1.default.gray(
|
|
48
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
49
|
-
// Streak
|
|
50
|
-
const streakDisplay = streak
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
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('│'));
|
|
54
86
|
const weeklyBar = createProgressBar((streak.weeklyProgress / streak.weeklyGoal) * 100, 5);
|
|
55
|
-
console.log(chalk_1.default.cyan('│') + ` 📅 Weekly Goal: ${streak.weeklyProgress}/${streak.weeklyGoal} ${weeklyBar}`.padEnd(
|
|
56
|
-
console.log(chalk_1.default.cyan('│') + ` 🏆 Achievements: ${achievementCounts.unlocked}/${achievementCounts.total} unlocked`.padEnd(
|
|
57
|
-
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
|
+
}
|
|
58
116
|
// 30-Day Stats
|
|
59
|
-
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('│'));
|
|
60
119
|
const avgScore = recentSessions.length > 0
|
|
61
120
|
? Math.round(recentSessions.reduce((sum, s) => sum + s.vibeScore, 0) / recentSessions.length)
|
|
62
121
|
: 0;
|
|
63
122
|
const totalCommits = recentSessions.reduce((sum, s) => sum + s.commits, 0);
|
|
64
|
-
console.log(chalk_1.default.cyan('│') + ` ├─ Avg Vibe Score: ${chalk_1.default.bold(avgScore.toString())}%`.padEnd(
|
|
65
|
-
console.log(chalk_1.default.cyan('│') + ` ├─ Sessions: ${chalk_1.default.bold(recentSessions.length.toString())}`.padEnd(
|
|
66
|
-
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('│'));
|
|
67
126
|
const spiralsAvoided = recentSessions.filter(s => s.spirals === 0 && s.commits >= 10).length;
|
|
68
|
-
console.log(chalk_1.default.cyan('│') + ` └─ Zero-Spiral Sessions: ${chalk_1.default.bold(spiralsAvoided.toString())}`.padEnd(
|
|
69
|
-
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('│'));
|
|
70
129
|
// Pattern Memory Summary
|
|
71
130
|
const patternInfo = (0, pattern_memory_1.formatPatternMemory)(profile.patternMemory || { version: '1.0.0', records: [], patternCounts: {}, componentCounts: {}, patternDurations: {}, topPatterns: [], topComponents: [], avgRecoveryTime: 0, totalSpirals: 0 });
|
|
72
131
|
if (patternInfo.hasData) {
|
|
73
|
-
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🧠 Spiral Triggers').padEnd(
|
|
132
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🧠 Spiral Triggers').padEnd(66) + chalk_1.default.cyan('│'));
|
|
74
133
|
if (patternInfo.topPatterns.length > 0) {
|
|
75
134
|
const topTrigger = patternInfo.topPatterns[0];
|
|
76
|
-
console.log(chalk_1.default.cyan('│') + ` └─ Top: ${chalk_1.default.yellow(topTrigger.displayName)} (${topTrigger.count}×)`.padEnd(
|
|
135
|
+
console.log(chalk_1.default.cyan('│') + ` └─ Top: ${chalk_1.default.yellow(topTrigger.displayName)} (${topTrigger.count}×)`.padEnd(66) + chalk_1.default.cyan('│'));
|
|
77
136
|
}
|
|
78
|
-
console.log(chalk_1.default.cyan('│') + ` Avg recovery: ${chalk_1.default.gray(patternInfo.avgRecoveryTime + ' min')}`.padEnd(
|
|
79
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
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('│'));
|
|
80
139
|
}
|
|
81
140
|
// Intervention Memory Summary
|
|
82
141
|
const interventionInfo = (0, intervention_memory_1.formatInterventionMemory)(profile.interventionMemory);
|
|
83
142
|
if (interventionInfo.hasData) {
|
|
84
|
-
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🛠️ What Breaks Spirals').padEnd(
|
|
143
|
+
console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🛠️ What Breaks Spirals').padEnd(66) + chalk_1.default.cyan('│'));
|
|
85
144
|
if (interventionInfo.topInterventions.length > 0) {
|
|
86
145
|
const top = interventionInfo.topInterventions[0];
|
|
87
|
-
console.log(chalk_1.default.cyan('│') + ` └─ Go-to: ${chalk_1.default.green(top.icon + ' ' + top.name)} (${top.count}×)`.padEnd(
|
|
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('│'));
|
|
88
147
|
}
|
|
89
|
-
console.log(chalk_1.default.cyan('│') + ''.padEnd(
|
|
148
|
+
console.log(chalk_1.default.cyan('│') + ''.padEnd(56) + chalk_1.default.cyan('│'));
|
|
90
149
|
}
|
|
91
150
|
// Recent achievements
|
|
92
151
|
const recentAchievements = achievements.slice(-3).reverse();
|
|
93
152
|
if (recentAchievements.length > 0) {
|
|
94
|
-
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('│'));
|
|
95
155
|
for (const ach of recentAchievements) {
|
|
96
156
|
const dateStr = ach.unlockedAt
|
|
97
157
|
? new Date(ach.unlockedAt).toLocaleDateString('en-US', { month: 'short', day: 'numeric' })
|
|
98
158
|
: '';
|
|
99
|
-
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('│'));
|
|
100
160
|
}
|
|
101
161
|
}
|
|
102
|
-
console.log(chalk_1.default.cyan('
|
|
162
|
+
console.log(chalk_1.default.cyan('╰─────────────────────────────────────────────────────────╯'));
|
|
103
163
|
console.log();
|
|
104
164
|
// Show all achievements if requested
|
|
105
165
|
if (options.achievements) {
|
|
@@ -117,12 +177,61 @@ async function runProfile(options) {
|
|
|
117
177
|
if (options.interventions) {
|
|
118
178
|
showInterventionMemory(profile.interventionMemory);
|
|
119
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
|
+
}
|
|
120
203
|
}
|
|
121
204
|
function createProgressBar(percent, length) {
|
|
122
205
|
const filled = Math.round((percent / 100) * length);
|
|
123
206
|
const empty = length - filled;
|
|
124
207
|
return chalk_1.default.green('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
|
|
125
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
|
+
}
|
|
126
235
|
function showAllAchievements(unlockedAchievements) {
|
|
127
236
|
const allAchievements = (0, achievements_1.getAllAchievements)(unlockedAchievements);
|
|
128
237
|
const unlockedIds = new Set(unlockedAchievements.map(a => a.id));
|
|
@@ -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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"}
|