@boshu2/vibe-check 1.3.2 → 1.4.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.
Files changed (40) hide show
  1. package/.vibe-check/sessions.json +11 -1
  2. package/claude-progress.json +17 -5
  3. package/claude-progress.txt +50 -0
  4. package/dist/cli.js +1 -0
  5. package/dist/cli.js.map +1 -1
  6. package/dist/commands/analyze.d.ts.map +1 -1
  7. package/dist/commands/analyze.js +2 -1
  8. package/dist/commands/analyze.js.map +1 -1
  9. package/dist/commands/index.d.ts +1 -0
  10. package/dist/commands/index.d.ts.map +1 -1
  11. package/dist/commands/index.js +3 -1
  12. package/dist/commands/index.js.map +1 -1
  13. package/dist/commands/intervene.d.ts +15 -0
  14. package/dist/commands/intervene.d.ts.map +1 -0
  15. package/dist/commands/intervene.js +183 -0
  16. package/dist/commands/intervene.js.map +1 -0
  17. package/dist/commands/profile.d.ts.map +1 -1
  18. package/dist/commands/profile.js +117 -0
  19. package/dist/commands/profile.js.map +1 -1
  20. package/dist/gamification/index.d.ts +3 -0
  21. package/dist/gamification/index.d.ts.map +1 -1
  22. package/dist/gamification/index.js +5 -1
  23. package/dist/gamification/index.js.map +1 -1
  24. package/dist/gamification/intervention-memory.d.ts +61 -0
  25. package/dist/gamification/intervention-memory.d.ts.map +1 -0
  26. package/dist/gamification/intervention-memory.js +229 -0
  27. package/dist/gamification/intervention-memory.js.map +1 -0
  28. package/dist/gamification/pattern-memory.d.ts +45 -0
  29. package/dist/gamification/pattern-memory.d.ts.map +1 -0
  30. package/dist/gamification/pattern-memory.js +188 -0
  31. package/dist/gamification/pattern-memory.js.map +1 -0
  32. package/dist/gamification/profile.d.ts +2 -1
  33. package/dist/gamification/profile.d.ts.map +1 -1
  34. package/dist/gamification/profile.js +15 -1
  35. package/dist/gamification/profile.js.map +1 -1
  36. package/dist/gamification/types.d.ts +38 -0
  37. package/dist/gamification/types.d.ts.map +1 -1
  38. package/dist/gamification/types.js.map +1 -1
  39. package/feature-list.json +37 -1
  40. package/package.json +1 -1
@@ -17,8 +17,18 @@
17
17
  "trustPassRate": 100,
18
18
  "reworkRatio": 14,
19
19
  "spirals": 0
20
+ },
21
+ {
22
+ "id": "2025-11-29T21:01",
23
+ "startedAt": "2025-11-29T21:01:28.000Z",
24
+ "endedAt": "2025-11-29T21:45:06.000Z",
25
+ "commits": 3,
26
+ "trustPassRate": 100,
27
+ "reworkRatio": 0,
28
+ "spirals": 0,
29
+ "vibeScore": 0.93
20
30
  }
21
31
  ],
22
32
  "baseline": null,
23
- "lastUpdated": "2025-11-29T21:00:38.912Z"
33
+ "lastUpdated": "2025-11-29T22:07:49.474Z"
24
34
  }
@@ -1,16 +1,19 @@
1
1
  {
2
2
  "project": "vibe-check",
3
3
  "created": "2025-11-29",
4
- "version": "1.2.0",
4
+ "version": "1.3.2",
5
5
  "current_state": {
6
6
  "working_on": null,
7
7
  "blockers": [],
8
- "next_steps": []
8
+ "next_steps": [
9
+ "VIBE-013: Pattern memory (track spiral triggers)",
10
+ "VIBE-014: Intervention tracking (what breaks spirals)"
11
+ ]
9
12
  },
10
13
  "stats": {
11
- "test_files": 8,
12
- "tests_passing": 108,
13
- "npm_version": "1.2.0"
14
+ "test_files": 6,
15
+ "tests_passing": 80,
16
+ "npm_version": "1.3.2"
14
17
  },
15
18
  "sessions": [
16
19
  {
@@ -39,6 +42,15 @@
39
42
  "summary": "Pre-push git hook, security review, published v1.2.0",
40
43
  "commits": ["f1d0843", "ad18702", "464a4ee", "9ae35d6"],
41
44
  "features_completed": ["VIBE-006", "VIBE-008"]
45
+ },
46
+ {
47
+ "session_id": "2025-11-29-004",
48
+ "started": "2025-11-29T15:00:00Z",
49
+ "ended": "2025-11-29T16:05:00Z",
50
+ "vibe_level": 3,
51
+ "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
+ "commits": ["858ee83", "eed8163", "fb88a68"],
53
+ "features_completed": ["VIBE-009", "VIBE-010", "VIBE-011", "VIBE-012"]
42
54
  }
43
55
  ]
44
56
  }
@@ -3,6 +3,56 @@ Created: 2025-11-29
3
3
 
4
4
  ## Session Log
5
5
 
6
+ --- 2025-11-29 16:05 - Major Refactor: Simplify & Add Real Value Session ---
7
+
8
+ VIBE LEVEL: 3 (Features with verification)
9
+
10
+ COMPLETED:
11
+ - Analyzed vibe-check level system - determined ML prediction was "resume-driven development"
12
+ - Removed 1,563 lines of ML cruft (ordered logistic regression, ECE, calibration)
13
+ - Replaced `vibe-check level` (ML prediction) with `vibe-check start --level N` (declare)
14
+ - Added session comparison: declared level vs actual metrics
15
+ - Implemented watch mode for real-time spiral detection (killer feature)
16
+ - Implemented automatic session detection (no manual start needed)
17
+ - Added baseline comparison: compares current session to YOUR historical patterns
18
+ - Published v1.3.0, v1.3.1, v1.3.2 to npm
19
+
20
+ COMMITS (3 this session):
21
+ - 858ee83 feat(v1.3): replace ML level prediction with session workflow
22
+ - eed8163 feat: add watch mode for real-time spiral detection
23
+ - fb88a68 feat: add automatic session detection and baseline comparison
24
+
25
+ NEW FEATURES:
26
+ - `vibe-check watch` - Real-time spiral detection (polls git, alerts on 3+ fixes)
27
+ - `vibe-check start --level N` - Declare expected level before work
28
+ - Automatic baseline - After 5+ sessions, compares to YOUR patterns
29
+ - Session comparison - Shows if declared level matched reality
30
+
31
+ DELETED (ML CRUFT):
32
+ - src/recommend/ (ordered logistic regression)
33
+ - src/calibration/ (ECE, storage)
34
+ - src/commands/level.ts (ML prediction)
35
+ - --recommend and --calibrate flags
36
+
37
+ KEY INSIGHT:
38
+ "The ML trying to PREDICT your level is BS. You already know what level the task is.
39
+ What's useful is REFLECTION: did reality match your expectation?"
40
+
41
+ PROFILE STATUS:
42
+ - Level 5 Master (115/1000 XP)
43
+ - 1-day streak
44
+
45
+ REMAINING:
46
+ - VIBE-013: Pattern memory (track your spiral triggers)
47
+ - VIBE-014: Intervention tracking (what breaks your spirals)
48
+
49
+ NEXT SESSION SHOULD:
50
+ - Implement pattern memory to track which components cause spirals
51
+ - Add intervention tracking to learn what breaks YOUR spirals
52
+ - Consider VS Code extension for watch mode
53
+
54
+ ================================================================================
55
+
6
56
  --- 2025-11-29 13:15 - Git Hook, Security Review & Full Polish Session ---
7
57
 
8
58
  VIBE LEVEL: 3 (Features with verification)
package/dist/cli.js CHANGED
@@ -16,6 +16,7 @@ program.addCommand((0, commands_1.createStartCommand)());
16
16
  program.addCommand((0, commands_1.createProfileCommand)());
17
17
  program.addCommand((0, commands_1.createInitHookCommand)());
18
18
  program.addCommand((0, commands_1.createWatchCommand)());
19
+ program.addCommand((0, commands_1.createInterveneCommand)());
19
20
  // Default behavior: if no subcommand, run analyze with passed options
20
21
  // This maintains backwards compatibility with v1.x usage
21
22
  program
package/dist/cli.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAAmJ;AAEnJ,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;AAC5C,OAAO,CAAC,UAAU,CAAC,IAAA,6BAAkB,GAAE,CAAC,CAAC;AAEzC,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
+ {"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";;;AAEA,yCAAoC;AACpC,yCAA2K;AAE3K,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;AAC5C,OAAO,CAAC,UAAU,CAAC,IAAA,6BAAkB,GAAE,CAAC,CAAC;AACzC,OAAO,CAAC,UAAU,CAAC,IAAA,iCAAsB,GAAE,CAAC,CAAC;AAE7C,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;AA0BpC,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,CA6TvE"}
1
+ {"version":3,"file":"analyze.d.ts","sourceRoot":"","sources":["../../src/commands/analyze.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AA0BpC,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,CA8TvE"}
@@ -226,7 +226,8 @@ async function runAnalyze(options) {
226
226
  // Record session and show gamification (only for terminal format with score)
227
227
  if (format === 'terminal' && resultV2.vibeScore) {
228
228
  const vibeScorePercent = Math.round(resultV2.vibeScore.value * 100);
229
- const gamificationResult = (0, profile_1.recordSession)(vibeScorePercent, result.overall, commits.length, spiralCount, result.period.from, result.period.to);
229
+ const gamificationResult = (0, profile_1.recordSession)(vibeScorePercent, result.overall, commits.length, spiralCount, result.period.from, result.period.to, result.fixChains // Pass fix chains for pattern memory
230
+ );
230
231
  // Show gamification summary
231
232
  console.log();
232
233
  console.log(chalk_1.default.cyan('─'.repeat(64)));
@@ -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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"}
@@ -3,4 +3,5 @@ export { createStartCommand } from './start';
3
3
  export { createProfileCommand } from './profile';
4
4
  export { createInitHookCommand } from './init-hook';
5
5
  export { createWatchCommand } from './watch';
6
+ export { createInterveneCommand } from './intervene';
6
7
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAC7E,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,WAAW,CAAC;AACjD,OAAO,EAAE,qBAAqB,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAAE,kBAAkB,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAC"}
@@ -1,6 +1,6 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createWatchCommand = exports.createInitHookCommand = exports.createProfileCommand = exports.createStartCommand = exports.runAnalyze = exports.createAnalyzeCommand = void 0;
3
+ exports.createInterveneCommand = exports.createWatchCommand = 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; } });
@@ -12,4 +12,6 @@ var init_hook_1 = require("./init-hook");
12
12
  Object.defineProperty(exports, "createInitHookCommand", { enumerable: true, get: function () { return init_hook_1.createInitHookCommand; } });
13
13
  var watch_1 = require("./watch");
14
14
  Object.defineProperty(exports, "createWatchCommand", { enumerable: true, get: function () { return watch_1.createWatchCommand; } });
15
+ var intervene_1 = require("./intervene");
16
+ Object.defineProperty(exports, "createInterveneCommand", { enumerable: true, get: function () { return intervene_1.createInterveneCommand; } });
15
17
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAAA,qCAA6E;AAApE,+GAAA,oBAAoB,OAAA;AAAE,qGAAA,UAAU,OAAA;AACzC,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,qCAAiD;AAAxC,+GAAA,oBAAoB,OAAA;AAC7B,yCAAoD;AAA3C,kHAAA,qBAAqB,OAAA;AAC9B,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/commands/index.ts"],"names":[],"mappings":";;;AAAA,qCAA6E;AAApE,+GAAA,oBAAoB,OAAA;AAAE,qGAAA,UAAU,OAAA;AACzC,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,qCAAiD;AAAxC,+GAAA,oBAAoB,OAAA;AAC7B,yCAAoD;AAA3C,kHAAA,qBAAqB,OAAA;AAC9B,iCAA6C;AAApC,2GAAA,kBAAkB,OAAA;AAC3B,yCAAqD;AAA5C,mHAAA,sBAAsB,OAAA"}
@@ -0,0 +1,15 @@
1
+ /**
2
+ * Intervene Command - Record what broke your spiral
3
+ *
4
+ * Usage:
5
+ * vibe-check intervene <type> [options]
6
+ * vibe-check intervene --list
7
+ *
8
+ * Examples:
9
+ * vibe-check intervene TRACER_TEST
10
+ * vibe-check intervene BREAK --pattern SECRETS_AUTH --duration 45
11
+ * vibe-check intervene --list
12
+ */
13
+ import { Command } from 'commander';
14
+ export declare function createInterveneCommand(): Command;
15
+ //# sourceMappingURL=intervene.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intervene.d.ts","sourceRoot":"","sources":["../../src/commands/intervene.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAuBpC,wBAAgB,sBAAsB,IAAI,OAAO,CAehD"}
@@ -0,0 +1,183 @@
1
+ "use strict";
2
+ /**
3
+ * Intervene Command - Record what broke your spiral
4
+ *
5
+ * Usage:
6
+ * vibe-check intervene <type> [options]
7
+ * vibe-check intervene --list
8
+ *
9
+ * Examples:
10
+ * vibe-check intervene TRACER_TEST
11
+ * vibe-check intervene BREAK --pattern SECRETS_AUTH --duration 45
12
+ * vibe-check intervene --list
13
+ */
14
+ var __importDefault = (this && this.__importDefault) || function (mod) {
15
+ return (mod && mod.__esModule) ? mod : { "default": mod };
16
+ };
17
+ Object.defineProperty(exports, "__esModule", { value: true });
18
+ exports.createInterveneCommand = createInterveneCommand;
19
+ const commander_1 = require("commander");
20
+ const chalk_1 = __importDefault(require("chalk"));
21
+ const profile_1 = require("../gamification/profile");
22
+ const intervention_memory_1 = require("../gamification/intervention-memory");
23
+ const VALID_TYPES = [
24
+ 'TRACER_TEST',
25
+ 'BREAK',
26
+ 'DOCS',
27
+ 'REFACTOR',
28
+ 'HELP',
29
+ 'ROLLBACK',
30
+ 'OTHER',
31
+ ];
32
+ function createInterveneCommand() {
33
+ const cmd = new commander_1.Command('intervene')
34
+ .description('Record what intervention broke your debug spiral')
35
+ .argument('[type]', 'Intervention type (use --list to see options)')
36
+ .option('-l, --list', 'List all intervention types', false)
37
+ .option('-p, --pattern <pattern>', 'The spiral pattern you were debugging')
38
+ .option('-c, --component <component>', 'The component involved')
39
+ .option('-d, --duration <minutes>', 'How long the spiral lasted', '30')
40
+ .option('-n, --notes <notes>', 'Optional notes about what helped')
41
+ .option('--stats', 'Show your intervention statistics', false)
42
+ .action(async (type, options) => {
43
+ await runIntervene(type, options);
44
+ });
45
+ return cmd;
46
+ }
47
+ async function runIntervene(type, options) {
48
+ // List intervention types
49
+ if (options.list) {
50
+ showInterventionTypes();
51
+ return;
52
+ }
53
+ // Show stats
54
+ if (options.stats) {
55
+ showInterventionStats();
56
+ return;
57
+ }
58
+ // Validate type is provided
59
+ if (!type) {
60
+ console.log(chalk_1.default.yellow('\nNo intervention type specified.\n'));
61
+ console.log('Usage: vibe-check intervene <type> [options]');
62
+ console.log('');
63
+ console.log('Run `vibe-check intervene --list` to see available types.');
64
+ console.log('Run `vibe-check intervene --stats` to see your statistics.');
65
+ return;
66
+ }
67
+ // Validate type
68
+ const upperType = type.toUpperCase();
69
+ if (!VALID_TYPES.includes(upperType)) {
70
+ console.log(chalk_1.default.red(`\nInvalid intervention type: ${type}`));
71
+ console.log('');
72
+ console.log('Valid types:');
73
+ for (const t of VALID_TYPES) {
74
+ const icon = (0, intervention_memory_1.getInterventionIcon)(t);
75
+ const name = (0, intervention_memory_1.getInterventionDisplayName)(t);
76
+ console.log(` ${icon} ${chalk_1.default.cyan(t)} - ${name}`);
77
+ }
78
+ return;
79
+ }
80
+ // Parse duration
81
+ const duration = parseInt(options.duration, 10);
82
+ if (isNaN(duration) || duration < 0) {
83
+ console.log(chalk_1.default.red('Invalid duration. Please provide a number of minutes.'));
84
+ return;
85
+ }
86
+ // Load profile and record intervention
87
+ const profile = (0, profile_1.loadProfile)();
88
+ // Initialize intervention memory if needed
89
+ if (!profile.interventionMemory) {
90
+ profile.interventionMemory = (0, intervention_memory_1.createInitialInterventionMemory)();
91
+ }
92
+ // Record the intervention
93
+ profile.interventionMemory = (0, intervention_memory_1.recordIntervention)(profile.interventionMemory, {
94
+ type: upperType,
95
+ spiralPattern: options.pattern?.toUpperCase(),
96
+ spiralComponent: options.component?.toLowerCase(),
97
+ spiralDuration: duration,
98
+ notes: options.notes,
99
+ });
100
+ // Save profile
101
+ (0, profile_1.saveProfile)(profile);
102
+ // Show confirmation
103
+ const icon = (0, intervention_memory_1.getInterventionIcon)(upperType);
104
+ const name = (0, intervention_memory_1.getInterventionDisplayName)(upperType);
105
+ console.log('');
106
+ console.log(chalk_1.default.green(`${icon} Intervention recorded: ${name}`));
107
+ console.log('');
108
+ if (options.pattern) {
109
+ console.log(` Pattern: ${chalk_1.default.yellow(options.pattern.toUpperCase())}`);
110
+ }
111
+ if (options.component) {
112
+ console.log(` Component: ${chalk_1.default.cyan(options.component)}`);
113
+ }
114
+ console.log(` Spiral duration: ${chalk_1.default.gray(`${duration} minutes`)}`);
115
+ if (options.notes) {
116
+ console.log(` Notes: ${chalk_1.default.gray(options.notes)}`);
117
+ }
118
+ console.log('');
119
+ console.log(chalk_1.default.gray(`Total interventions: ${profile.interventionMemory.totalInterventions}`));
120
+ console.log(chalk_1.default.gray('Run `vibe-check intervene --stats` to see patterns'));
121
+ console.log('');
122
+ }
123
+ function showInterventionTypes() {
124
+ const types = (0, intervention_memory_1.getAllInterventionTypes)();
125
+ console.log('');
126
+ console.log(chalk_1.default.bold('Available Intervention Types'));
127
+ console.log('');
128
+ for (const { type, icon, name, description } of types) {
129
+ console.log(` ${icon} ${chalk_1.default.cyan(type.padEnd(12))} ${chalk_1.default.white(name)}`);
130
+ console.log(` ${chalk_1.default.gray(description)}`);
131
+ console.log('');
132
+ }
133
+ console.log(chalk_1.default.gray('Usage: vibe-check intervene <TYPE> [--pattern PATTERN] [--duration MIN]'));
134
+ console.log('');
135
+ console.log(chalk_1.default.gray('Example: vibe-check intervene TRACER_TEST --pattern SECRETS_AUTH --duration 45'));
136
+ console.log('');
137
+ }
138
+ function showInterventionStats() {
139
+ const profile = (0, profile_1.loadProfile)();
140
+ const stats = (0, intervention_memory_1.formatInterventionMemory)(profile.interventionMemory);
141
+ console.log('');
142
+ console.log(chalk_1.default.bold('🛠️ Your Intervention Statistics'));
143
+ console.log('');
144
+ if (!stats.hasData) {
145
+ console.log(chalk_1.default.gray(' No interventions recorded yet.'));
146
+ console.log('');
147
+ console.log(chalk_1.default.gray(' When you break out of a debug spiral, record what helped:'));
148
+ console.log(chalk_1.default.gray(' vibe-check intervene TRACER_TEST --pattern SECRETS_AUTH'));
149
+ console.log('');
150
+ return;
151
+ }
152
+ // Summary
153
+ console.log(chalk_1.default.bold('Summary'));
154
+ console.log(` ${stats.summary}`);
155
+ console.log(` Average spiral duration: ${chalk_1.default.bold(stats.avgTimeToIntervene.toString())} minutes`);
156
+ console.log('');
157
+ // Top interventions
158
+ if (stats.topInterventions.length > 0) {
159
+ console.log(chalk_1.default.bold('Your Go-To Interventions'));
160
+ for (const int of stats.topInterventions) {
161
+ const pct = Math.round((int.count / stats.totalInterventions) * 100);
162
+ const bar = createBar(pct);
163
+ console.log(` ${int.icon} ${int.name.padEnd(15)} ${bar} ${int.count}× (${pct}%)`);
164
+ }
165
+ console.log('');
166
+ }
167
+ // Pattern-specific recommendations
168
+ if (stats.patternRecommendations.length > 0) {
169
+ console.log(chalk_1.default.bold('What Works by Pattern'));
170
+ for (const rec of stats.patternRecommendations) {
171
+ console.log(` ${chalk_1.default.yellow(rec.pattern)}: ${rec.interventions.join(', ')}`);
172
+ }
173
+ console.log('');
174
+ }
175
+ console.log(chalk_1.default.gray('Keep recording interventions to build your personalized playbook!'));
176
+ console.log('');
177
+ }
178
+ function createBar(pct) {
179
+ const filled = Math.round(pct / 10);
180
+ const empty = 10 - filled;
181
+ return chalk_1.default.green('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
182
+ }
183
+ //# sourceMappingURL=intervene.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"intervene.js","sourceRoot":"","sources":["../../src/commands/intervene.ts"],"names":[],"mappings":"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"}
@@ -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;AAYpC,wBAAgB,oBAAoB,IAAI,OAAO,CAW9C;AAqJD,wBAAsB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D"}
1
+ {"version":3,"file":"profile.d.ts","sourceRoot":"","sources":["../../src/commands/profile.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAcpC,wBAAgB,oBAAoB,IAAI,OAAO,CAa9C;AA4RD,wBAAsB,WAAW,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,IAAI,CAAC,CAE7D"}
@@ -11,11 +11,15 @@ const profile_1 = require("../gamification/profile");
11
11
  const xp_1 = require("../gamification/xp");
12
12
  const types_1 = require("../gamification/types");
13
13
  const achievements_1 = require("../gamification/achievements");
14
+ const pattern_memory_1 = require("../gamification/pattern-memory");
15
+ const intervention_memory_1 = require("../gamification/intervention-memory");
14
16
  function createProfileCommand() {
15
17
  const cmd = new commander_1.Command('profile')
16
18
  .description('View your vibe-check profile, stats, and achievements')
17
19
  .option('--achievements', 'Show all achievements', false)
18
20
  .option('--stats', 'Show detailed stats', false)
21
+ .option('--patterns', 'Show spiral pattern memory (your triggers)', false)
22
+ .option('--interventions', 'Show intervention memory (what breaks spirals)', false)
19
23
  .option('--json', 'Output as JSON', false)
20
24
  .action(async (options) => {
21
25
  await runProfile(options);
@@ -63,6 +67,27 @@ async function runProfile(options) {
63
67
  const spiralsAvoided = recentSessions.filter(s => s.spirals === 0 && s.commits >= 10).length;
64
68
  console.log(chalk_1.default.cyan('│') + ` └─ Zero-Spiral Sessions: ${chalk_1.default.bold(spiralsAvoided.toString())}`.padEnd(52) + chalk_1.default.cyan('│'));
65
69
  console.log(chalk_1.default.cyan('│') + ''.padEnd(44) + chalk_1.default.cyan('│'));
70
+ // Pattern Memory Summary
71
+ const patternInfo = (0, pattern_memory_1.formatPatternMemory)(profile.patternMemory || { version: '1.0.0', records: [], patternCounts: {}, componentCounts: {}, patternDurations: {}, topPatterns: [], topComponents: [], avgRecoveryTime: 0, totalSpirals: 0 });
72
+ if (patternInfo.hasData) {
73
+ console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🧠 Spiral Triggers').padEnd(52) + chalk_1.default.cyan('│'));
74
+ if (patternInfo.topPatterns.length > 0) {
75
+ const topTrigger = patternInfo.topPatterns[0];
76
+ console.log(chalk_1.default.cyan('│') + ` └─ Top: ${chalk_1.default.yellow(topTrigger.displayName)} (${topTrigger.count}×)`.padEnd(52) + chalk_1.default.cyan('│'));
77
+ }
78
+ console.log(chalk_1.default.cyan('│') + ` Avg recovery: ${chalk_1.default.gray(patternInfo.avgRecoveryTime + ' min')}`.padEnd(52) + chalk_1.default.cyan('│'));
79
+ console.log(chalk_1.default.cyan('│') + ''.padEnd(44) + chalk_1.default.cyan('│'));
80
+ }
81
+ // Intervention Memory Summary
82
+ const interventionInfo = (0, intervention_memory_1.formatInterventionMemory)(profile.interventionMemory);
83
+ if (interventionInfo.hasData) {
84
+ console.log(chalk_1.default.cyan('│') + chalk_1.default.bold(' 🛠️ What Breaks Spirals').padEnd(52) + chalk_1.default.cyan('│'));
85
+ if (interventionInfo.topInterventions.length > 0) {
86
+ 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(52) + chalk_1.default.cyan('│'));
88
+ }
89
+ console.log(chalk_1.default.cyan('│') + ''.padEnd(44) + chalk_1.default.cyan('│'));
90
+ }
66
91
  // Recent achievements
67
92
  const recentAchievements = achievements.slice(-3).reverse();
68
93
  if (recentAchievements.length > 0) {
@@ -84,6 +109,14 @@ async function runProfile(options) {
84
109
  if (options.stats) {
85
110
  showDetailedStats(profile);
86
111
  }
112
+ // Show pattern memory if requested
113
+ if (options.patterns) {
114
+ showPatternMemory(profile.patternMemory);
115
+ }
116
+ // Show intervention memory if requested
117
+ if (options.interventions) {
118
+ showInterventionMemory(profile.interventionMemory);
119
+ }
87
120
  }
88
121
  function createProgressBar(percent, length) {
89
122
  const filled = Math.round((percent / 100) * length);
@@ -137,6 +170,90 @@ function showDetailedStats(profile) {
137
170
  console.log(` Longest Streak: ${chalk_1.default.bold(streak.longest)} days`);
138
171
  console.log();
139
172
  }
173
+ function showPatternMemory(memory) {
174
+ const patternInfo = (0, pattern_memory_1.formatPatternMemory)(memory);
175
+ console.log(chalk_1.default.bold('\n🧠 Pattern Memory - Your Spiral Triggers\n'));
176
+ if (!patternInfo.hasData) {
177
+ console.log(chalk_1.default.gray(' No spiral patterns recorded yet.'));
178
+ console.log(chalk_1.default.gray(' When spirals are detected, patterns will be tracked here.'));
179
+ console.log();
180
+ return;
181
+ }
182
+ // Summary
183
+ console.log(chalk_1.default.bold('Summary'));
184
+ console.log(` ${patternInfo.summary}`);
185
+ console.log(` Total spirals recorded: ${chalk_1.default.bold(patternInfo.totalSpirals.toString())}`);
186
+ console.log(` Average recovery time: ${chalk_1.default.bold(patternInfo.avgRecoveryTime.toString())} minutes`);
187
+ console.log();
188
+ // Top patterns
189
+ if (patternInfo.topPatterns.length > 0) {
190
+ console.log(chalk_1.default.bold('Top Spiral Patterns'));
191
+ for (const pattern of patternInfo.topPatterns) {
192
+ const bar = createPatternBar(pattern.count, patternInfo.totalSpirals);
193
+ console.log(` ${bar} ${chalk_1.default.yellow(pattern.displayName)} (${pattern.count}×, ${pattern.totalMinutes}m total)`);
194
+ console.log(chalk_1.default.gray(` 💡 ${pattern.advice}`));
195
+ }
196
+ console.log();
197
+ }
198
+ // Top components
199
+ if (patternInfo.topComponents.length > 0) {
200
+ console.log(chalk_1.default.bold('Top Triggering Components'));
201
+ for (const comp of patternInfo.topComponents) {
202
+ const bar = createPatternBar(comp.count, patternInfo.totalSpirals);
203
+ console.log(` ${bar} ${comp.component} (${comp.count}×)`);
204
+ }
205
+ console.log();
206
+ }
207
+ console.log(chalk_1.default.gray('Use this data to identify recurring issues and add tracer tests.'));
208
+ console.log();
209
+ }
210
+ function createPatternBar(count, total) {
211
+ const pct = total > 0 ? (count / total) * 100 : 0;
212
+ const filled = Math.round(pct / 10);
213
+ const empty = 10 - filled;
214
+ return chalk_1.default.yellow('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
215
+ }
216
+ function createInterventionBar(count, total) {
217
+ const pct = total > 0 ? (count / total) * 100 : 0;
218
+ const filled = Math.round(pct / 10);
219
+ const empty = 10 - filled;
220
+ return chalk_1.default.green('█'.repeat(filled)) + chalk_1.default.gray('░'.repeat(empty));
221
+ }
222
+ function showInterventionMemory(memory) {
223
+ const interventionInfo = (0, intervention_memory_1.formatInterventionMemory)(memory);
224
+ console.log(chalk_1.default.bold('\n🛠️ Intervention Memory - What Breaks Your Spirals\n'));
225
+ if (!interventionInfo.hasData) {
226
+ console.log(chalk_1.default.gray(' No interventions recorded yet.'));
227
+ console.log(chalk_1.default.gray(' When you break out of a spiral, record what helped:'));
228
+ console.log(chalk_1.default.gray(' vibe-check intervene TRACER_TEST --pattern SECRETS_AUTH'));
229
+ console.log();
230
+ return;
231
+ }
232
+ // Summary
233
+ console.log(chalk_1.default.bold('Summary'));
234
+ console.log(` ${interventionInfo.summary}`);
235
+ console.log(` Average spiral duration: ${chalk_1.default.bold(interventionInfo.avgTimeToIntervene.toString())} minutes`);
236
+ console.log();
237
+ // Top interventions
238
+ if (interventionInfo.topInterventions.length > 0) {
239
+ console.log(chalk_1.default.bold('Your Go-To Interventions'));
240
+ for (const int of interventionInfo.topInterventions) {
241
+ const bar = createInterventionBar(int.count, interventionInfo.totalInterventions);
242
+ console.log(` ${int.icon} ${int.name.padEnd(15)} ${bar} ${int.count}×`);
243
+ }
244
+ console.log();
245
+ }
246
+ // Pattern-specific recommendations
247
+ if (interventionInfo.patternRecommendations.length > 0) {
248
+ console.log(chalk_1.default.bold('What Works by Pattern'));
249
+ for (const rec of interventionInfo.patternRecommendations) {
250
+ console.log(` ${chalk_1.default.yellow(rec.pattern)}: ${rec.interventions.join(', ')}`);
251
+ }
252
+ console.log();
253
+ }
254
+ console.log(chalk_1.default.gray('Keep recording what breaks your spirals to build your playbook!'));
255
+ console.log();
256
+ }
140
257
  async function runProfile2(options) {
141
258
  return runProfile(options);
142
259
  }