@boshu2/vibe-check 1.2.0 → 1.3.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/.claude/settings.local.json +6 -0
- package/README.md +88 -260
- package/SECURITY.md +178 -0
- package/claude-progress.json +44 -0
- package/claude-progress.txt +98 -0
- package/dist/cli.js +2 -6
- package/dist/cli.js.map +1 -1
- package/dist/commands/analyze.d.ts +0 -2
- package/dist/commands/analyze.d.ts.map +1 -1
- package/dist/commands/analyze.js +59 -62
- package/dist/commands/analyze.js.map +1 -1
- package/dist/commands/index.d.ts +1 -1
- package/dist/commands/index.js +3 -3
- package/dist/commands/init-hook.d.ts.map +1 -1
- package/dist/commands/init-hook.js +6 -2
- package/dist/commands/init-hook.js.map +1 -1
- package/dist/commands/start.d.ts +21 -0
- package/dist/commands/start.d.ts.map +1 -0
- package/dist/commands/start.js +139 -0
- package/dist/commands/start.js.map +1 -0
- package/dist/output/json.d.ts.map +1 -1
- package/dist/output/json.js +0 -8
- package/dist/output/json.js.map +1 -1
- package/dist/output/markdown.d.ts.map +1 -1
- package/dist/output/markdown.js +0 -6
- package/dist/output/markdown.js.map +1 -1
- package/dist/output/terminal.d.ts.map +1 -1
- package/dist/output/terminal.js +0 -20
- package/dist/output/terminal.js.map +1 -1
- package/dist/types.d.ts +0 -33
- package/dist/types.d.ts.map +1 -1
- package/feature-list.json +56 -0
- package/hooks/pre-push +6 -2
- package/package.json +1 -1
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# Progress Log - vibe-check
|
|
2
|
+
Created: 2025-11-29
|
|
3
|
+
|
|
4
|
+
## Session Log
|
|
5
|
+
|
|
6
|
+
--- 2025-11-29 13:15 - Git Hook, Security Review & Full Polish Session ---
|
|
7
|
+
|
|
8
|
+
VIBE LEVEL: 3 (Features with verification)
|
|
9
|
+
|
|
10
|
+
COMPLETED:
|
|
11
|
+
- Implemented pre-push git hook (`vibe-check init-hook` command)
|
|
12
|
+
- Hook runs vibe-check automatically before every push
|
|
13
|
+
- Configurable blocking on LOW rating via env vars
|
|
14
|
+
- Published v1.2.0 to npm
|
|
15
|
+
- Conducted full security review of codebase
|
|
16
|
+
- Created SECURITY.md with threat model and assessment
|
|
17
|
+
- Fixed hook to use local dist or npx fallback
|
|
18
|
+
|
|
19
|
+
COMMITS (6 this session):
|
|
20
|
+
- 9ae35d6 docs: add security policy and assessment
|
|
21
|
+
- 464a4ee test: verify pre-push hook works
|
|
22
|
+
- ad18702 fix(hook): use npx --yes for reliable command execution
|
|
23
|
+
- f1d0843 feat: add init-hook command for pre-push git hook
|
|
24
|
+
- e4c9027 feat: add --simple flag and comprehensive gamification tests
|
|
25
|
+
|
|
26
|
+
PUBLISHED:
|
|
27
|
+
- @boshu2/vibe-check@1.2.0 (git hook feature)
|
|
28
|
+
|
|
29
|
+
ACHIEVEMENTS THIS SESSION:
|
|
30
|
+
- 📊 Getting Started (10 sessions complete)
|
|
31
|
+
- 🏆 Personal Best: 96% Vibe Score
|
|
32
|
+
|
|
33
|
+
PROFILE STATUS:
|
|
34
|
+
- Level 4 Expert (320/400 XP)
|
|
35
|
+
- 1-day streak
|
|
36
|
+
|
|
37
|
+
================================================================================
|
|
38
|
+
|
|
39
|
+
--- 2025-11-29 13:00 - Documentation, Tests & npm Publish Session ---
|
|
40
|
+
|
|
41
|
+
VIBE LEVEL: 3 (Features with verification)
|
|
42
|
+
|
|
43
|
+
COMPLETED:
|
|
44
|
+
- Updated CHANGELOG.md with complete 1.1.0 release notes
|
|
45
|
+
- Updated README.md with gamification docs, profile command, and levels table
|
|
46
|
+
- Updated CLAUDE.md with full architecture and commands documentation
|
|
47
|
+
- Implemented Sprint 4: --simple flag for progressive disclosure output
|
|
48
|
+
- Added 57 new tests for gamification module (XP, achievements, streaks)
|
|
49
|
+
- Published v1.1.0 to npm (from 1.0.2)
|
|
50
|
+
|
|
51
|
+
TEST RESULTS:
|
|
52
|
+
- 8 test files, 108 tests passing
|
|
53
|
+
- Coverage: gamification/xp, gamification/achievements, gamification/streaks
|
|
54
|
+
|
|
55
|
+
PUBLISHED:
|
|
56
|
+
- @boshu2/vibe-check@1.1.0 on npm
|
|
57
|
+
- New features: gamification, profile command, --simple flag, GitHub Action
|
|
58
|
+
|
|
59
|
+
================================================================================
|
|
60
|
+
|
|
61
|
+
--- 2025-11-29 12:50 - UX Improvement Session (Dogfooding + 3 Sprints) ---
|
|
62
|
+
|
|
63
|
+
VIBE LEVEL: 3 (Features with verification)
|
|
64
|
+
|
|
65
|
+
COMPLETED:
|
|
66
|
+
- GitHub Action for PR comments (action.yml)
|
|
67
|
+
- JSON file output (--output flag)
|
|
68
|
+
- CI dogfood job to validate all CLI commands
|
|
69
|
+
- Node 20+ requirement (vitest 4.x compatibility)
|
|
70
|
+
- Package updates to Nov 2025 stable versions
|
|
71
|
+
- Sprint 1: Grammar fix, jargon rename, confidence display, date period
|
|
72
|
+
- Sprint 2: Summary + Opportunities section with actionable tips
|
|
73
|
+
- Sprint 3: XP deduplication to prevent gaming
|
|
74
|
+
|
|
75
|
+
COMMITS (8 this session):
|
|
76
|
+
- 9fca764 feat(gamification): prevent XP gaming with period deduplication
|
|
77
|
+
- 43bf561 feat(ux): add actionable summary and opportunities section
|
|
78
|
+
- c521144 fix(ux): improve CLI output clarity and trust
|
|
79
|
+
- a2fb133 chore(deps): update to Nov 2025 stable versions
|
|
80
|
+
- 62c512a fix: require Node 20+ (vitest 4.x compatibility)
|
|
81
|
+
- 9e06f71 ci: add dogfood job to validate all CLI commands
|
|
82
|
+
- 70dbd6f feat: add GitHub Action and JSON file output
|
|
83
|
+
|
|
84
|
+
ALL FEATURES COMPLETE (5/5):
|
|
85
|
+
- VIBE-001: Gamification module ✓
|
|
86
|
+
- VIBE-002: Profile command ✓
|
|
87
|
+
- VIBE-003: Dashboard shell ✓
|
|
88
|
+
- VIBE-004: GitHub Action ✓
|
|
89
|
+
- VIBE-005: JSON output ✓
|
|
90
|
+
|
|
91
|
+
NEXT SESSION COULD:
|
|
92
|
+
- Sprint 4: Progressive disclosure (--simple flag)
|
|
93
|
+
- Publish new version to npm
|
|
94
|
+
- Test GitHub Action on another repo
|
|
95
|
+
- Add more achievements
|
|
96
|
+
|
|
97
|
+
================================================================================
|
|
98
|
+
|
package/dist/cli.js
CHANGED
|
@@ -8,11 +8,11 @@ const { version } = require('../package.json');
|
|
|
8
8
|
const program = new commander_1.Command();
|
|
9
9
|
program
|
|
10
10
|
.name('vibe-check')
|
|
11
|
-
.description('
|
|
11
|
+
.description('Quick check: are you building or spiraling?')
|
|
12
12
|
.version(version);
|
|
13
13
|
// Add subcommands
|
|
14
14
|
program.addCommand((0, commands_1.createAnalyzeCommand)());
|
|
15
|
-
program.addCommand((0, commands_1.
|
|
15
|
+
program.addCommand((0, commands_1.createStartCommand)());
|
|
16
16
|
program.addCommand((0, commands_1.createProfileCommand)());
|
|
17
17
|
program.addCommand((0, commands_1.createInitHookCommand)());
|
|
18
18
|
// Default behavior: if no subcommand, run analyze with passed options
|
|
@@ -24,8 +24,6 @@ program
|
|
|
24
24
|
.option('-r, --repo <path>', 'Repository path', process.cwd())
|
|
25
25
|
.option('-v, --verbose', 'Show verbose output', false)
|
|
26
26
|
.option('--score', 'Include VibeScore and code pattern metrics', false)
|
|
27
|
-
.option('--recommend', 'Include level recommendation', false)
|
|
28
|
-
.option('--calibrate <level>', 'Record calibration sample with declared level (0-5)')
|
|
29
27
|
.option('-o, --output <file>', 'Write JSON results to file')
|
|
30
28
|
.option('-s, --simple', 'Simplified output (fewer details)', false)
|
|
31
29
|
.action(async (options) => {
|
|
@@ -37,8 +35,6 @@ program
|
|
|
37
35
|
repo: options.repo,
|
|
38
36
|
verbose: options.verbose,
|
|
39
37
|
score: options.score,
|
|
40
|
-
recommend: options.recommend,
|
|
41
|
-
calibrate: options.calibrate,
|
|
42
38
|
output: options.output,
|
|
43
39
|
simple: options.simple,
|
|
44
40
|
});
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAA+H;AAE/H,8DAA8D;AAC9D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAA+H;AAE/H,8DAA8D;AAC9D,MAAM,EAAE,OAAO,EAAE,GAAG,OAAO,CAAC,iBAAiB,CAAC,CAAC;AAE/C,MAAM,OAAO,GAAG,IAAI,mBAAO,EAAE,CAAC;AAE9B,OAAO;KACJ,IAAI,CAAC,YAAY,CAAC;KAClB,WAAW,CAAC,6CAA6C,CAAC;KAC1D,OAAO,CAAC,OAAO,CAAC,CAAC;AAEpB,kBAAkB;AAClB,OAAO,CAAC,UAAU,CAAC,IAAA,+BAAoB,GAAE,CAAC,CAAC;AAC3C,OAAO,CAAC,UAAU,CAAC,IAAA,6BAAkB,GAAE,CAAC,CAAC;AACzC,OAAO,CAAC,UAAU,CAAC,IAAA,+BAAoB,GAAE,CAAC,CAAC;AAC3C,OAAO,CAAC,UAAU,CAAC,IAAA,gCAAqB,GAAE,CAAC,CAAC;AAE5C,sEAAsE;AACtE,yDAAyD;AACzD,OAAO;KACJ,MAAM,CAAC,gBAAgB,EAAE,8CAA8C,CAAC;KACxE,MAAM,CAAC,gBAAgB,EAAE,sCAAsC,CAAC;KAChE,MAAM,CAAC,qBAAqB,EAAE,yCAAyC,EAAE,UAAU,CAAC;KACpF,MAAM,CAAC,mBAAmB,EAAE,iBAAiB,EAAE,OAAO,CAAC,GAAG,EAAE,CAAC;KAC7D,MAAM,CAAC,eAAe,EAAE,qBAAqB,EAAE,KAAK,CAAC;KACrD,MAAM,CAAC,SAAS,EAAE,4CAA4C,EAAE,KAAK,CAAC;KACtE,MAAM,CAAC,qBAAqB,EAAE,4BAA4B,CAAC;KAC3D,MAAM,CAAC,cAAc,EAAE,mCAAmC,EAAE,KAAK,CAAC;KAClE,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;IACxB,wDAAwD;IACxD,MAAM,IAAA,qBAAU,EAAC;QACf,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,IAAI,EAAE,OAAO,CAAC,IAAI;QAClB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,MAAM,EAAE,OAAO,CAAC,MAAM;KACvB,CAAC,CAAC;AACL,CAAC,CAAC,CAAC;AAEL,OAAO,CAAC,KAAK,EAAE,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAoBpC,MAAM,WAAW,cAAc;IAC7B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,OAAO,CAAC;IACf,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,OAAO,CAAC;CACjB;AAED,wBAAgB,oBAAoB,IAAI,OAAO,CAgB9C;AAED,wBAAsB,UAAU,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAyPvE"}
|
package/dist/commands/analyze.js
CHANGED
|
@@ -17,10 +17,9 @@ const time_spiral_1 = require("../metrics/time-spiral");
|
|
|
17
17
|
const velocity_anomaly_1 = require("../metrics/velocity-anomaly");
|
|
18
18
|
const code_stability_1 = require("../metrics/code-stability");
|
|
19
19
|
const score_1 = require("../score");
|
|
20
|
-
const recommend_1 = require("../recommend");
|
|
21
|
-
const calibration_1 = require("../calibration");
|
|
22
20
|
const profile_1 = require("../gamification/profile");
|
|
23
21
|
const types_1 = require("../gamification/types");
|
|
22
|
+
const start_1 = require("./start");
|
|
24
23
|
function createAnalyzeCommand() {
|
|
25
24
|
const cmd = new commander_1.Command('analyze')
|
|
26
25
|
.description('Analyze git history for vibe coding metrics')
|
|
@@ -30,8 +29,6 @@ function createAnalyzeCommand() {
|
|
|
30
29
|
.option('-r, --repo <path>', 'Repository path', process.cwd())
|
|
31
30
|
.option('-v, --verbose', 'Show verbose output', false)
|
|
32
31
|
.option('--score', 'Include VibeScore and code pattern metrics', false)
|
|
33
|
-
.option('--recommend', 'Include level recommendation', false)
|
|
34
|
-
.option('--calibrate <level>', 'Record calibration sample with declared level (0-5)')
|
|
35
32
|
.option('-o, --output <file>', 'Write JSON results to file')
|
|
36
33
|
.option('-s, --simple', 'Simplified output (fewer details)', false)
|
|
37
34
|
.action(async (options) => {
|
|
@@ -41,7 +38,9 @@ function createAnalyzeCommand() {
|
|
|
41
38
|
}
|
|
42
39
|
async function runAnalyze(options) {
|
|
43
40
|
try {
|
|
44
|
-
const { since, until, format, repo, verbose, score,
|
|
41
|
+
const { since, until, format, repo, verbose, score, output, simple } = options;
|
|
42
|
+
// Check for active session
|
|
43
|
+
const session = (0, start_1.loadSession)(repo);
|
|
45
44
|
// Validate format
|
|
46
45
|
const validFormats = ['terminal', 'json', 'markdown'];
|
|
47
46
|
if (!validFormats.includes(format)) {
|
|
@@ -90,8 +89,9 @@ async function runAnalyze(options) {
|
|
|
90
89
|
...result,
|
|
91
90
|
semanticMetrics: result.metrics,
|
|
92
91
|
};
|
|
93
|
-
// Enhanced analysis
|
|
94
|
-
|
|
92
|
+
// Enhanced analysis - always compute for session comparison
|
|
93
|
+
const needsEnhanced = score || session !== null;
|
|
94
|
+
if (needsEnhanced) {
|
|
95
95
|
if (verbose) {
|
|
96
96
|
console.error(chalk_1.default.gray('Computing semantic-free metrics...'));
|
|
97
97
|
}
|
|
@@ -116,61 +116,6 @@ async function runAnalyze(options) {
|
|
|
116
116
|
codeStability,
|
|
117
117
|
});
|
|
118
118
|
resultV2.vibeScore = vibeScore;
|
|
119
|
-
if (recommend) {
|
|
120
|
-
// Default questions (neutral for now)
|
|
121
|
-
const defaultQuestions = {
|
|
122
|
-
reversibility: 0,
|
|
123
|
-
blastRadius: 0,
|
|
124
|
-
verificationCost: 0,
|
|
125
|
-
domainComplexity: 0,
|
|
126
|
-
aiTrackRecord: 0,
|
|
127
|
-
};
|
|
128
|
-
const features = [
|
|
129
|
-
defaultQuestions.reversibility,
|
|
130
|
-
defaultQuestions.blastRadius,
|
|
131
|
-
defaultQuestions.verificationCost,
|
|
132
|
-
defaultQuestions.domainComplexity,
|
|
133
|
-
defaultQuestions.aiTrackRecord,
|
|
134
|
-
fileChurn.value / 100,
|
|
135
|
-
timeSpiral.value / 100,
|
|
136
|
-
velocityAnomaly.value / 100,
|
|
137
|
-
codeStability.value / 100,
|
|
138
|
-
];
|
|
139
|
-
const prediction = (0, recommend_1.predictWithConfidence)(features);
|
|
140
|
-
resultV2.recommendation = {
|
|
141
|
-
level: prediction.level,
|
|
142
|
-
confidence: Math.round(prediction.confidence * 100) / 100,
|
|
143
|
-
probabilities: prediction.probs,
|
|
144
|
-
ci: prediction.ci,
|
|
145
|
-
questions: defaultQuestions,
|
|
146
|
-
};
|
|
147
|
-
}
|
|
148
|
-
if (calibrate !== undefined) {
|
|
149
|
-
const declaredLevel = parseInt(calibrate, 10);
|
|
150
|
-
if (declaredLevel >= 0 && declaredLevel <= 5) {
|
|
151
|
-
const outcome = (0, calibration_1.assessOutcome)(vibeScore.value, declaredLevel);
|
|
152
|
-
const sample = {
|
|
153
|
-
timestamp: new Date(),
|
|
154
|
-
vibeScore: vibeScore.value,
|
|
155
|
-
declaredLevel: declaredLevel,
|
|
156
|
-
outcome,
|
|
157
|
-
features: [
|
|
158
|
-
fileChurn.value / 100,
|
|
159
|
-
timeSpiral.value / 100,
|
|
160
|
-
velocityAnomaly.value / 100,
|
|
161
|
-
codeStability.value / 100,
|
|
162
|
-
],
|
|
163
|
-
modelVersion: '2.0.0',
|
|
164
|
-
};
|
|
165
|
-
(0, calibration_1.addSample)(repo, sample);
|
|
166
|
-
if (verbose) {
|
|
167
|
-
console.error(chalk_1.default.gray(`Calibration sample recorded: Level ${declaredLevel} → Score ${vibeScore.value} (${outcome})`));
|
|
168
|
-
}
|
|
169
|
-
}
|
|
170
|
-
else {
|
|
171
|
-
console.error(chalk_1.default.yellow(`Warning: Invalid calibrate level ${calibrate}, must be 0-5`));
|
|
172
|
-
}
|
|
173
|
-
}
|
|
174
119
|
}
|
|
175
120
|
// Write to file if requested (always JSON format)
|
|
176
121
|
if (output) {
|
|
@@ -183,6 +128,58 @@ async function runAnalyze(options) {
|
|
|
183
128
|
// Output result to console
|
|
184
129
|
const formattedOutput = (0, output_1.formatOutput)(resultV2, format, { simple });
|
|
185
130
|
console.log(formattedOutput);
|
|
131
|
+
// Session comparison (if session was active)
|
|
132
|
+
if (session && format === 'terminal' && resultV2.vibeScore) {
|
|
133
|
+
// Metrics are already in percentage form (e.g., 100 for 100%)
|
|
134
|
+
const trustPassRate = result.metrics.trustPassRate.value;
|
|
135
|
+
const reworkRatio = result.metrics.reworkRatio.value;
|
|
136
|
+
const levelInfo = start_1.LEVEL_INFO[session.level];
|
|
137
|
+
// Parse expectations (already in percentage form like ">65%")
|
|
138
|
+
const expectTrust = parseFloat(levelInfo.expectTrust.replace(/[><%]/g, ''));
|
|
139
|
+
const expectRework = parseFloat(levelInfo.expectRework.replace(/[<%]/g, ''));
|
|
140
|
+
// Calculate session duration
|
|
141
|
+
const startTime = new Date(session.startedAt);
|
|
142
|
+
const duration = Math.round((Date.now() - startTime.getTime()) / 60000);
|
|
143
|
+
console.log('');
|
|
144
|
+
console.log(chalk_1.default.bold.cyan('SESSION COMPLETE'));
|
|
145
|
+
console.log('');
|
|
146
|
+
console.log(` Declared: Level ${session.level} - ${levelInfo.name} (${levelInfo.trust} trust)`);
|
|
147
|
+
console.log(` Duration: ${duration} min, ${commits.length} commits`);
|
|
148
|
+
console.log('');
|
|
149
|
+
// Compare trust pass rate
|
|
150
|
+
const trustOk = trustPassRate >= expectTrust;
|
|
151
|
+
const trustIcon = trustOk ? chalk_1.default.green('✓') : chalk_1.default.yellow('⚠');
|
|
152
|
+
const trustExpect = `expected ${levelInfo.expectTrust}`;
|
|
153
|
+
console.log(` Trust Pass: ${Math.round(trustPassRate)}% (${trustExpect}) ${trustIcon}`);
|
|
154
|
+
// Compare rework ratio
|
|
155
|
+
const reworkOk = reworkRatio <= expectRework;
|
|
156
|
+
const reworkIcon = reworkOk ? chalk_1.default.green('✓') : chalk_1.default.yellow('⚠');
|
|
157
|
+
const reworkExpect = `expected ${levelInfo.expectRework}`;
|
|
158
|
+
console.log(` Rework: ${Math.round(reworkRatio)}% (${reworkExpect}) ${reworkIcon}`);
|
|
159
|
+
console.log('');
|
|
160
|
+
// Verdict
|
|
161
|
+
if (trustOk && reworkOk) {
|
|
162
|
+
console.log(chalk_1.default.green(` ✓ Level ${session.level} was appropriate for this work`));
|
|
163
|
+
}
|
|
164
|
+
else if (!trustOk && !reworkOk) {
|
|
165
|
+
const suggestedLevel = Math.max(0, session.level - 2);
|
|
166
|
+
console.log(chalk_1.default.yellow(` ⚠ Level ${session.level} was too optimistic`));
|
|
167
|
+
console.log(chalk_1.default.gray(` Consider Level ${suggestedLevel} for similar tasks`));
|
|
168
|
+
}
|
|
169
|
+
else if (!trustOk) {
|
|
170
|
+
const suggestedLevel = Math.max(0, session.level - 1);
|
|
171
|
+
console.log(chalk_1.default.yellow(` ⚠ Trust was lower than expected`));
|
|
172
|
+
console.log(chalk_1.default.gray(` Consider Level ${suggestedLevel} for similar tasks`));
|
|
173
|
+
}
|
|
174
|
+
else {
|
|
175
|
+
// High trust but also high rework - likely iteration pattern
|
|
176
|
+
console.log(chalk_1.default.blue(` ℹ Good trust but high iteration`));
|
|
177
|
+
console.log(chalk_1.default.gray(` This might be expected for exploratory work`));
|
|
178
|
+
}
|
|
179
|
+
console.log('');
|
|
180
|
+
// Clear the session
|
|
181
|
+
(0, start_1.clearSession)(repo);
|
|
182
|
+
}
|
|
186
183
|
// Record session and show gamification (only for terminal format with score)
|
|
187
184
|
if (format === 'terminal' && resultV2.vibeScore) {
|
|
188
185
|
const spiralCount = result.fixChains.filter(fc => fc.isSpiral).length;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"analyze.js","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
export { createAnalyzeCommand, runAnalyze, AnalyzeOptions } from './analyze';
|
|
2
|
-
export {
|
|
2
|
+
export { createStartCommand } from './start';
|
|
3
3
|
export { createProfileCommand } from './profile';
|
|
4
4
|
export { createInitHookCommand } from './init-hook';
|
|
5
5
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/commands/index.js
CHANGED
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.createInitHookCommand = exports.createProfileCommand = exports.
|
|
3
|
+
exports.createInitHookCommand = exports.createProfileCommand = exports.createStartCommand = exports.runAnalyze = exports.createAnalyzeCommand = void 0;
|
|
4
4
|
var analyze_1 = require("./analyze");
|
|
5
5
|
Object.defineProperty(exports, "createAnalyzeCommand", { enumerable: true, get: function () { return analyze_1.createAnalyzeCommand; } });
|
|
6
6
|
Object.defineProperty(exports, "runAnalyze", { enumerable: true, get: function () { return analyze_1.runAnalyze; } });
|
|
7
|
-
var
|
|
8
|
-
Object.defineProperty(exports, "
|
|
7
|
+
var start_1 = require("./start");
|
|
8
|
+
Object.defineProperty(exports, "createStartCommand", { enumerable: true, get: function () { return start_1.createStartCommand; } });
|
|
9
9
|
var profile_1 = require("./profile");
|
|
10
10
|
Object.defineProperty(exports, "createProfileCommand", { enumerable: true, get: function () { return profile_1.createProfileCommand; } });
|
|
11
11
|
var init_hook_1 = require("./init-hook");
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-hook.d.ts","sourceRoot":"","sources":["../../src/commands/init-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"init-hook.d.ts","sourceRoot":"","sources":["../../src/commands/init-hook.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA4GpC,wBAAgB,qBAAqB,IAAI,OAAO,CAU/C"}
|
|
@@ -64,8 +64,12 @@ while read local_ref local_sha remote_ref remote_sha; do
|
|
|
64
64
|
echo -e "Analyzing \${GREEN}$COMMIT_COUNT\${NC} commit(s) on \${CYAN}$local_ref\${NC}"
|
|
65
65
|
echo
|
|
66
66
|
|
|
67
|
-
# Build vibe-check command
|
|
68
|
-
|
|
67
|
+
# Build vibe-check command (use local if available, otherwise npx)
|
|
68
|
+
if command -v vibe-check &> /dev/null; then
|
|
69
|
+
VIBE_CMD="vibe-check"
|
|
70
|
+
else
|
|
71
|
+
VIBE_CMD="npx --yes @boshu2/vibe-check"
|
|
72
|
+
fi
|
|
69
73
|
|
|
70
74
|
if [ "$VIBE_CHECK_SIMPLE" = "true" ]; then
|
|
71
75
|
VIBE_CMD="$VIBE_CMD --simple"
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init-hook.js","sourceRoot":"","sources":["../../src/commands/init-hook.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"init-hook.js","sourceRoot":"","sources":["../../src/commands/init-hook.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import { Command } from 'commander';
|
|
2
|
+
interface Session {
|
|
3
|
+
level: number;
|
|
4
|
+
startedAt: string;
|
|
5
|
+
startCommit: string | null;
|
|
6
|
+
repoPath: string;
|
|
7
|
+
}
|
|
8
|
+
declare const LEVEL_INFO: Record<number, {
|
|
9
|
+
name: string;
|
|
10
|
+
trust: string;
|
|
11
|
+
expectRework: string;
|
|
12
|
+
expectTrust: string;
|
|
13
|
+
}>;
|
|
14
|
+
export declare function getVibeCheckDir(repoPath?: string): string;
|
|
15
|
+
export declare function getSessionPath(repoPath?: string): string;
|
|
16
|
+
export declare function loadSession(repoPath?: string): Session | null;
|
|
17
|
+
export declare function saveSession(session: Session): void;
|
|
18
|
+
export declare function clearSession(repoPath?: string): void;
|
|
19
|
+
export declare function createStartCommand(): Command;
|
|
20
|
+
export { LEVEL_INFO };
|
|
21
|
+
//# sourceMappingURL=start.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start.d.ts","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAKpC,UAAU,OAAO;IACf,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B,QAAQ,EAAE,MAAM,CAAC;CAClB;AAED,QAAA,MAAM,UAAU,EAAE,MAAM,CAAC,MAAM,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAO1G,CAAC;AAEF,wBAAgB,eAAe,CAAC,QAAQ,GAAE,MAAsB,GAAG,MAAM,CAExE;AAED,wBAAgB,cAAc,CAAC,QAAQ,GAAE,MAAsB,GAAG,MAAM,CAEvE;AAED,wBAAgB,WAAW,CAAC,QAAQ,GAAE,MAAsB,GAAG,OAAO,GAAG,IAAI,CAQ5E;AAED,wBAAgB,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAMlD;AAED,wBAAgB,YAAY,CAAC,QAAQ,GAAE,MAAsB,GAAG,IAAI,CAKnE;AAWD,wBAAgB,kBAAkB,IAAI,OAAO,CA+C5C;AAED,OAAO,EAAE,UAAU,EAAE,CAAC"}
|
|
@@ -0,0 +1,139 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
+
if (k2 === undefined) k2 = k;
|
|
4
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
+
}
|
|
8
|
+
Object.defineProperty(o, k2, desc);
|
|
9
|
+
}) : (function(o, m, k, k2) {
|
|
10
|
+
if (k2 === undefined) k2 = k;
|
|
11
|
+
o[k2] = m[k];
|
|
12
|
+
}));
|
|
13
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
14
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
15
|
+
}) : function(o, v) {
|
|
16
|
+
o["default"] = v;
|
|
17
|
+
});
|
|
18
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
19
|
+
var ownKeys = function(o) {
|
|
20
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
21
|
+
var ar = [];
|
|
22
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
23
|
+
return ar;
|
|
24
|
+
};
|
|
25
|
+
return ownKeys(o);
|
|
26
|
+
};
|
|
27
|
+
return function (mod) {
|
|
28
|
+
if (mod && mod.__esModule) return mod;
|
|
29
|
+
var result = {};
|
|
30
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
31
|
+
__setModuleDefault(result, mod);
|
|
32
|
+
return result;
|
|
33
|
+
};
|
|
34
|
+
})();
|
|
35
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
36
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
37
|
+
};
|
|
38
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
39
|
+
exports.LEVEL_INFO = void 0;
|
|
40
|
+
exports.getVibeCheckDir = getVibeCheckDir;
|
|
41
|
+
exports.getSessionPath = getSessionPath;
|
|
42
|
+
exports.loadSession = loadSession;
|
|
43
|
+
exports.saveSession = saveSession;
|
|
44
|
+
exports.clearSession = clearSession;
|
|
45
|
+
exports.createStartCommand = createStartCommand;
|
|
46
|
+
const commander_1 = require("commander");
|
|
47
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
48
|
+
const fs = __importStar(require("fs"));
|
|
49
|
+
const path = __importStar(require("path"));
|
|
50
|
+
const LEVEL_INFO = {
|
|
51
|
+
5: { name: 'Full Automation', trust: '95%', expectRework: '<5%', expectTrust: '>90%' },
|
|
52
|
+
4: { name: 'High Trust', trust: '80%', expectRework: '<15%', expectTrust: '>80%' },
|
|
53
|
+
3: { name: 'Balanced', trust: '60%', expectRework: '<30%', expectTrust: '>65%' },
|
|
54
|
+
2: { name: 'Careful', trust: '40%', expectRework: '<45%', expectTrust: '>50%' },
|
|
55
|
+
1: { name: 'Skeptical', trust: '20%', expectRework: '<60%', expectTrust: '>30%' },
|
|
56
|
+
0: { name: 'Manual', trust: '0%', expectRework: 'any', expectTrust: 'any' },
|
|
57
|
+
};
|
|
58
|
+
exports.LEVEL_INFO = LEVEL_INFO;
|
|
59
|
+
function getVibeCheckDir(repoPath = process.cwd()) {
|
|
60
|
+
return path.join(repoPath, '.vibe-check');
|
|
61
|
+
}
|
|
62
|
+
function getSessionPath(repoPath = process.cwd()) {
|
|
63
|
+
return path.join(getVibeCheckDir(repoPath), 'session.json');
|
|
64
|
+
}
|
|
65
|
+
function loadSession(repoPath = process.cwd()) {
|
|
66
|
+
const sessionPath = getSessionPath(repoPath);
|
|
67
|
+
if (!fs.existsSync(sessionPath))
|
|
68
|
+
return null;
|
|
69
|
+
try {
|
|
70
|
+
return JSON.parse(fs.readFileSync(sessionPath, 'utf-8'));
|
|
71
|
+
}
|
|
72
|
+
catch {
|
|
73
|
+
return null;
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
function saveSession(session) {
|
|
77
|
+
const dir = getVibeCheckDir(session.repoPath);
|
|
78
|
+
if (!fs.existsSync(dir)) {
|
|
79
|
+
fs.mkdirSync(dir, { recursive: true });
|
|
80
|
+
}
|
|
81
|
+
fs.writeFileSync(getSessionPath(session.repoPath), JSON.stringify(session, null, 2));
|
|
82
|
+
}
|
|
83
|
+
function clearSession(repoPath = process.cwd()) {
|
|
84
|
+
const sessionPath = getSessionPath(repoPath);
|
|
85
|
+
if (fs.existsSync(sessionPath)) {
|
|
86
|
+
fs.unlinkSync(sessionPath);
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
async function getHeadCommit(repoPath) {
|
|
90
|
+
try {
|
|
91
|
+
const { execSync } = await Promise.resolve().then(() => __importStar(require('child_process')));
|
|
92
|
+
return execSync('git rev-parse HEAD', { cwd: repoPath, encoding: 'utf-8' }).trim();
|
|
93
|
+
}
|
|
94
|
+
catch {
|
|
95
|
+
return null;
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
function createStartCommand() {
|
|
99
|
+
const cmd = new commander_1.Command('start')
|
|
100
|
+
.description('Start a session with a declared vibe level')
|
|
101
|
+
.requiredOption('-l, --level <n>', 'Vibe level (0-5)', parseInt)
|
|
102
|
+
.option('-r, --repo <path>', 'Repository path', process.cwd())
|
|
103
|
+
.action(async (options) => {
|
|
104
|
+
const level = options.level;
|
|
105
|
+
if (level < 0 || level > 5 || isNaN(level)) {
|
|
106
|
+
console.error(chalk_1.default.red('Level must be 0-5'));
|
|
107
|
+
process.exit(1);
|
|
108
|
+
}
|
|
109
|
+
const existing = loadSession(options.repo);
|
|
110
|
+
if (existing) {
|
|
111
|
+
console.log(chalk_1.default.yellow('Session already active (started ' + existing.startedAt + ')'));
|
|
112
|
+
console.log(chalk_1.default.gray('Run `vibe-check` to end and compare, or `vibe-check start --level N` to restart'));
|
|
113
|
+
console.log('');
|
|
114
|
+
}
|
|
115
|
+
const info = LEVEL_INFO[level];
|
|
116
|
+
const startCommit = await getHeadCommit(options.repo);
|
|
117
|
+
const session = {
|
|
118
|
+
level,
|
|
119
|
+
startedAt: new Date().toISOString(),
|
|
120
|
+
startCommit,
|
|
121
|
+
repoPath: options.repo,
|
|
122
|
+
};
|
|
123
|
+
saveSession(session);
|
|
124
|
+
console.log('');
|
|
125
|
+
console.log(chalk_1.default.bold.cyan('SESSION STARTED'));
|
|
126
|
+
console.log('');
|
|
127
|
+
console.log(` Level: ${chalk_1.default.bold(level)} - ${info.name}`);
|
|
128
|
+
console.log(` Trust: ${info.trust}`);
|
|
129
|
+
console.log('');
|
|
130
|
+
console.log(chalk_1.default.gray(' Expectations for this level:'));
|
|
131
|
+
console.log(chalk_1.default.gray(` - Trust pass rate: ${info.expectTrust}`));
|
|
132
|
+
console.log(chalk_1.default.gray(` - Rework ratio: ${info.expectRework}`));
|
|
133
|
+
console.log('');
|
|
134
|
+
console.log(chalk_1.default.gray(' When done, run: vibe-check'));
|
|
135
|
+
console.log('');
|
|
136
|
+
});
|
|
137
|
+
return cmd;
|
|
138
|
+
}
|
|
139
|
+
//# sourceMappingURL=start.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"start.js","sourceRoot":"","sources":["../../src/commands/start.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/output/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAM9D,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,MAAM,
|
|
1
|
+
{"version":3,"file":"json.d.ts","sourceRoot":"","sources":["../../src/output/json.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAM9D,wBAAgB,UAAU,CAAC,MAAM,EAAE,eAAe,GAAG,iBAAiB,GAAG,MAAM,CA4F9E"}
|
package/dist/output/json.js
CHANGED
|
@@ -55,14 +55,6 @@ function formatJson(result) {
|
|
|
55
55
|
if (result.vibeScore) {
|
|
56
56
|
output.vibeScore = result.vibeScore;
|
|
57
57
|
}
|
|
58
|
-
if (result.recommendation) {
|
|
59
|
-
output.recommendation = {
|
|
60
|
-
level: result.recommendation.level,
|
|
61
|
-
confidence: result.recommendation.confidence,
|
|
62
|
-
probabilities: result.recommendation.probabilities,
|
|
63
|
-
ci: result.recommendation.ci,
|
|
64
|
-
};
|
|
65
|
-
}
|
|
66
58
|
if (result.semanticFreeMetrics) {
|
|
67
59
|
output.semanticFreeMetrics = {
|
|
68
60
|
fileChurn: {
|