@boshu2/vibe-check 1.8.1 → 2.0.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 (371) hide show
  1. package/.claude/settings.local.json +1 -1
  2. package/CHANGELOG.md +10 -0
  3. package/Makefile +4 -4
  4. package/bin/vibe-check.js +1 -1
  5. package/claude-progress.json +18 -0
  6. package/dist/analysis/cross-session-analysis.d.ts +1 -1
  7. package/dist/analysis/cross-session-analysis.d.ts.map +1 -1
  8. package/dist/analysis/cross-session-analysis.js +9 -18
  9. package/dist/analysis/cross-session-analysis.js.map +1 -1
  10. package/dist/analysis/index.d.ts +1 -1
  11. package/dist/analysis/index.d.ts.map +1 -1
  12. package/dist/analysis/index.js +1 -11
  13. package/dist/analysis/index.js.map +1 -1
  14. package/dist/analyzers/audit.d.ts +28 -0
  15. package/dist/analyzers/audit.d.ts.map +1 -0
  16. package/dist/analyzers/audit.js +86 -0
  17. package/dist/analyzers/audit.js.map +1 -0
  18. package/dist/analyzers/patterns.d.ts +1 -1
  19. package/dist/analyzers/patterns.d.ts.map +1 -1
  20. package/dist/analyzers/patterns.js +4 -10
  21. package/dist/analyzers/patterns.js.map +1 -1
  22. package/dist/analyzers/quality.d.ts +1 -1
  23. package/dist/analyzers/quality.d.ts.map +1 -1
  24. package/dist/analyzers/quality.js +5 -12
  25. package/dist/analyzers/quality.js.map +1 -1
  26. package/dist/analyzers/sessions.d.ts +1 -1
  27. package/dist/analyzers/sessions.d.ts.map +1 -1
  28. package/dist/analyzers/sessions.js +1 -4
  29. package/dist/analyzers/sessions.js.map +1 -1
  30. package/dist/cli.js +20 -20
  31. package/dist/cli.js.map +1 -1
  32. package/dist/commands/analyze.d.ts.map +1 -1
  33. package/dist/commands/analyze.js +114 -149
  34. package/dist/commands/analyze.js.map +1 -1
  35. package/dist/commands/audit.d.ts +3 -0
  36. package/dist/commands/audit.d.ts.map +1 -0
  37. package/dist/commands/audit.js +77 -0
  38. package/dist/commands/audit.js.map +1 -0
  39. package/dist/commands/cache.js +31 -70
  40. package/dist/commands/cache.js.map +1 -1
  41. package/dist/commands/dashboard.d.ts.map +1 -1
  42. package/dist/commands/dashboard.js +22 -58
  43. package/dist/commands/dashboard.js.map +1 -1
  44. package/dist/commands/forensics.d.ts +2 -2
  45. package/dist/commands/forensics.d.ts.map +1 -1
  46. package/dist/commands/forensics.js +41 -48
  47. package/dist/commands/forensics.js.map +1 -1
  48. package/dist/commands/index.d.ts +14 -13
  49. package/dist/commands/index.d.ts.map +1 -1
  50. package/dist/commands/index.js +14 -33
  51. package/dist/commands/index.js.map +1 -1
  52. package/dist/commands/init-hook.js +26 -32
  53. package/dist/commands/init-hook.js.map +1 -1
  54. package/dist/commands/insights.js +39 -45
  55. package/dist/commands/insights.js.map +1 -1
  56. package/dist/commands/pipeline.js +39 -78
  57. package/dist/commands/pipeline.js.map +1 -1
  58. package/dist/commands/profile.js +68 -74
  59. package/dist/commands/profile.js.map +1 -1
  60. package/dist/commands/session.js +88 -129
  61. package/dist/commands/session.js.map +1 -1
  62. package/dist/commands/sessions.d.ts +1 -1
  63. package/dist/commands/sessions.d.ts.map +1 -1
  64. package/dist/commands/sessions.js +42 -49
  65. package/dist/commands/sessions.js.map +1 -1
  66. package/dist/commands/start.js +22 -67
  67. package/dist/commands/start.js.map +1 -1
  68. package/dist/commands/timeline.js +74 -81
  69. package/dist/commands/timeline.js.map +1 -1
  70. package/dist/commands/watch.js +54 -60
  71. package/dist/commands/watch.js.map +1 -1
  72. package/dist/gamification/achievements.d.ts +1 -1
  73. package/dist/gamification/achievements.d.ts.map +1 -1
  74. package/dist/gamification/achievements.js +7 -13
  75. package/dist/gamification/achievements.js.map +1 -1
  76. package/dist/gamification/index.d.ts +8 -8
  77. package/dist/gamification/index.d.ts.map +1 -1
  78. package/dist/gamification/index.js +8 -28
  79. package/dist/gamification/index.js.map +1 -1
  80. package/dist/gamification/profile.d.ts +2 -2
  81. package/dist/gamification/profile.d.ts.map +1 -1
  82. package/dist/gamification/profile.js +21 -64
  83. package/dist/gamification/profile.js.map +1 -1
  84. package/dist/gamification/stats.d.ts +1 -1
  85. package/dist/gamification/stats.d.ts.map +1 -1
  86. package/dist/gamification/stats.js +4 -10
  87. package/dist/gamification/stats.js.map +1 -1
  88. package/dist/gamification/streaks.d.ts +1 -1
  89. package/dist/gamification/streaks.d.ts.map +1 -1
  90. package/dist/gamification/streaks.js +8 -18
  91. package/dist/gamification/streaks.js.map +1 -1
  92. package/dist/gamification/types.js +3 -6
  93. package/dist/gamification/types.js.map +1 -1
  94. package/dist/gamification/xp.d.ts +1 -1
  95. package/dist/gamification/xp.d.ts.map +1 -1
  96. package/dist/gamification/xp.js +29 -38
  97. package/dist/gamification/xp.js.map +1 -1
  98. package/dist/git.d.ts +1 -1
  99. package/dist/git.d.ts.map +1 -1
  100. package/dist/git.js +15 -27
  101. package/dist/git.js.map +1 -1
  102. package/dist/inner-loop/context-amnesia.d.ts +2 -2
  103. package/dist/inner-loop/context-amnesia.d.ts.map +1 -1
  104. package/dist/inner-loop/context-amnesia.js +7 -10
  105. package/dist/inner-loop/context-amnesia.js.map +1 -1
  106. package/dist/inner-loop/index.d.ts +7 -7
  107. package/dist/inner-loop/index.d.ts.map +1 -1
  108. package/dist/inner-loop/index.js +18 -45
  109. package/dist/inner-loop/index.js.map +1 -1
  110. package/dist/inner-loop/instruction-drift.d.ts +2 -2
  111. package/dist/inner-loop/instruction-drift.d.ts.map +1 -1
  112. package/dist/inner-loop/instruction-drift.js +5 -10
  113. package/dist/inner-loop/instruction-drift.js.map +1 -1
  114. package/dist/inner-loop/logging-only.d.ts +2 -2
  115. package/dist/inner-loop/logging-only.d.ts.map +1 -1
  116. package/dist/inner-loop/logging-only.js +9 -17
  117. package/dist/inner-loop/logging-only.js.map +1 -1
  118. package/dist/inner-loop/tests-passing-lie.d.ts +2 -2
  119. package/dist/inner-loop/tests-passing-lie.d.ts.map +1 -1
  120. package/dist/inner-loop/tests-passing-lie.js +12 -17
  121. package/dist/inner-loop/tests-passing-lie.js.map +1 -1
  122. package/dist/inner-loop/types.js +1 -4
  123. package/dist/inner-loop/types.js.map +1 -1
  124. package/dist/insights/generators.d.ts +4 -4
  125. package/dist/insights/generators.d.ts.map +1 -1
  126. package/dist/insights/generators.js +9 -20
  127. package/dist/insights/generators.js.map +1 -1
  128. package/dist/insights/index.d.ts +4 -4
  129. package/dist/insights/index.d.ts.map +1 -1
  130. package/dist/insights/index.js +23 -27
  131. package/dist/insights/index.js.map +1 -1
  132. package/dist/insights/types.js +1 -2
  133. package/dist/insights/types.js.map +1 -1
  134. package/dist/metrics/code-stability.d.ts +1 -1
  135. package/dist/metrics/code-stability.d.ts.map +1 -1
  136. package/dist/metrics/code-stability.js +1 -4
  137. package/dist/metrics/code-stability.js.map +1 -1
  138. package/dist/metrics/file-churn.d.ts +1 -1
  139. package/dist/metrics/file-churn.d.ts.map +1 -1
  140. package/dist/metrics/file-churn.js +1 -4
  141. package/dist/metrics/file-churn.js.map +1 -1
  142. package/dist/metrics/flow.d.ts +1 -1
  143. package/dist/metrics/flow.d.ts.map +1 -1
  144. package/dist/metrics/flow.js +1 -4
  145. package/dist/metrics/flow.js.map +1 -1
  146. package/dist/metrics/index.d.ts +2 -2
  147. package/dist/metrics/index.d.ts.map +1 -1
  148. package/dist/metrics/index.js +15 -20
  149. package/dist/metrics/index.js.map +1 -1
  150. package/dist/metrics/rework.d.ts +1 -1
  151. package/dist/metrics/rework.d.ts.map +1 -1
  152. package/dist/metrics/rework.js +1 -4
  153. package/dist/metrics/rework.js.map +1 -1
  154. package/dist/metrics/spirals.d.ts +1 -1
  155. package/dist/metrics/spirals.d.ts.map +1 -1
  156. package/dist/metrics/spirals.js +5 -10
  157. package/dist/metrics/spirals.js.map +1 -1
  158. package/dist/metrics/time-spiral.d.ts +1 -1
  159. package/dist/metrics/time-spiral.d.ts.map +1 -1
  160. package/dist/metrics/time-spiral.js +1 -4
  161. package/dist/metrics/time-spiral.js.map +1 -1
  162. package/dist/metrics/trust.d.ts +1 -1
  163. package/dist/metrics/trust.d.ts.map +1 -1
  164. package/dist/metrics/trust.js +3 -6
  165. package/dist/metrics/trust.js.map +1 -1
  166. package/dist/metrics/velocity-anomaly.d.ts +1 -1
  167. package/dist/metrics/velocity-anomaly.d.ts.map +1 -1
  168. package/dist/metrics/velocity-anomaly.js +3 -6
  169. package/dist/metrics/velocity-anomaly.js.map +1 -1
  170. package/dist/metrics/velocity.d.ts +1 -1
  171. package/dist/metrics/velocity.d.ts.map +1 -1
  172. package/dist/metrics/velocity.js +6 -10
  173. package/dist/metrics/velocity.js.map +1 -1
  174. package/dist/output/index.d.ts +4 -4
  175. package/dist/output/index.d.ts.map +1 -1
  176. package/dist/output/index.js +10 -18
  177. package/dist/output/index.js.map +1 -1
  178. package/dist/output/json.d.ts +1 -1
  179. package/dist/output/json.d.ts.map +1 -1
  180. package/dist/output/json.js +1 -4
  181. package/dist/output/json.js.map +1 -1
  182. package/dist/output/markdown.d.ts +1 -1
  183. package/dist/output/markdown.d.ts.map +1 -1
  184. package/dist/output/markdown.js +5 -8
  185. package/dist/output/markdown.js.map +1 -1
  186. package/dist/output/terminal.d.ts +1 -1
  187. package/dist/output/terminal.d.ts.map +1 -1
  188. package/dist/output/terminal.js +55 -62
  189. package/dist/output/terminal.js.map +1 -1
  190. package/dist/output/timeline-html.d.ts +1 -1
  191. package/dist/output/timeline-html.d.ts.map +1 -1
  192. package/dist/output/timeline-html.js +5 -8
  193. package/dist/output/timeline-html.js.map +1 -1
  194. package/dist/output/timeline-markdown.d.ts +1 -1
  195. package/dist/output/timeline-markdown.d.ts.map +1 -1
  196. package/dist/output/timeline-markdown.js +5 -8
  197. package/dist/output/timeline-markdown.js.map +1 -1
  198. package/dist/output/timeline.d.ts +1 -1
  199. package/dist/output/timeline.d.ts.map +1 -1
  200. package/dist/output/timeline.js +46 -52
  201. package/dist/output/timeline.js.map +1 -1
  202. package/dist/patterns/detour.d.ts +1 -1
  203. package/dist/patterns/detour.d.ts.map +1 -1
  204. package/dist/patterns/detour.js +1 -4
  205. package/dist/patterns/detour.js.map +1 -1
  206. package/dist/patterns/flow-state.d.ts +1 -1
  207. package/dist/patterns/flow-state.d.ts.map +1 -1
  208. package/dist/patterns/flow-state.js +1 -4
  209. package/dist/patterns/flow-state.js.map +1 -1
  210. package/dist/patterns/index.d.ts +7 -7
  211. package/dist/patterns/index.d.ts.map +1 -1
  212. package/dist/patterns/index.js +7 -21
  213. package/dist/patterns/index.js.map +1 -1
  214. package/dist/patterns/intervention-effectiveness.d.ts +1 -1
  215. package/dist/patterns/intervention-effectiveness.d.ts.map +1 -1
  216. package/dist/patterns/intervention-effectiveness.js +3 -8
  217. package/dist/patterns/intervention-effectiveness.js.map +1 -1
  218. package/dist/patterns/late-night.d.ts +1 -1
  219. package/dist/patterns/late-night.d.ts.map +1 -1
  220. package/dist/patterns/late-night.js +1 -4
  221. package/dist/patterns/late-night.js.map +1 -1
  222. package/dist/patterns/post-delete-sprint.d.ts +1 -1
  223. package/dist/patterns/post-delete-sprint.d.ts.map +1 -1
  224. package/dist/patterns/post-delete-sprint.js +1 -4
  225. package/dist/patterns/post-delete-sprint.js.map +1 -1
  226. package/dist/patterns/spiral-regression.d.ts +1 -1
  227. package/dist/patterns/spiral-regression.d.ts.map +1 -1
  228. package/dist/patterns/spiral-regression.js +3 -8
  229. package/dist/patterns/spiral-regression.js.map +1 -1
  230. package/dist/patterns/thrashing.d.ts +1 -1
  231. package/dist/patterns/thrashing.d.ts.map +1 -1
  232. package/dist/patterns/thrashing.js +3 -6
  233. package/dist/patterns/thrashing.js.map +1 -1
  234. package/dist/score/index.d.ts +3 -3
  235. package/dist/score/index.d.ts.map +1 -1
  236. package/dist/score/index.js +4 -10
  237. package/dist/score/index.js.map +1 -1
  238. package/dist/score/weights.js +2 -6
  239. package/dist/score/weights.js.map +1 -1
  240. package/dist/sessions/index.js +9 -51
  241. package/dist/sessions/index.js.map +1 -1
  242. package/dist/storage/atomic.js +10 -51
  243. package/dist/storage/atomic.js.map +1 -1
  244. package/dist/storage/commit-log.d.ts +1 -1
  245. package/dist/storage/commit-log.d.ts.map +1 -1
  246. package/dist/storage/commit-log.js +11 -51
  247. package/dist/storage/commit-log.js.map +1 -1
  248. package/dist/storage/index.d.ts +5 -5
  249. package/dist/storage/index.d.ts.map +1 -1
  250. package/dist/storage/index.js +5 -37
  251. package/dist/storage/index.js.map +1 -1
  252. package/dist/storage/schema.js +4 -9
  253. package/dist/storage/schema.js.map +1 -1
  254. package/dist/storage/spiral-history.js +14 -57
  255. package/dist/storage/spiral-history.js.map +1 -1
  256. package/dist/storage/timeline-store.d.ts +2 -2
  257. package/dist/storage/timeline-store.d.ts.map +1 -1
  258. package/dist/storage/timeline-store.js +17 -61
  259. package/dist/storage/timeline-store.js.map +1 -1
  260. package/dist/types.js +1 -2
  261. package/docs/ENHANCEMENT-PLAN.md +361 -0
  262. package/feature-list.json +6 -0
  263. package/package.json +8 -7
  264. package/dist/calibration/ece.d.ts +0 -26
  265. package/dist/calibration/ece.d.ts.map +0 -1
  266. package/dist/calibration/ece.js +0 -93
  267. package/dist/calibration/ece.js.map +0 -1
  268. package/dist/calibration/index.d.ts +0 -3
  269. package/dist/calibration/index.d.ts.map +0 -1
  270. package/dist/calibration/index.js +0 -15
  271. package/dist/calibration/index.js.map +0 -1
  272. package/dist/calibration/storage.d.ts +0 -34
  273. package/dist/calibration/storage.d.ts.map +0 -1
  274. package/dist/calibration/storage.js +0 -188
  275. package/dist/calibration/storage.js.map +0 -1
  276. package/dist/commands/intervene.d.ts +0 -15
  277. package/dist/commands/intervene.d.ts.map +0 -1
  278. package/dist/commands/intervene.js +0 -183
  279. package/dist/commands/intervene.js.map +0 -1
  280. package/dist/commands/learn.d.ts +0 -3
  281. package/dist/commands/learn.d.ts.map +0 -1
  282. package/dist/commands/learn.js +0 -161
  283. package/dist/commands/learn.js.map +0 -1
  284. package/dist/commands/lesson.d.ts +0 -8
  285. package/dist/commands/lesson.d.ts.map +0 -1
  286. package/dist/commands/lesson.js +0 -206
  287. package/dist/commands/lesson.js.map +0 -1
  288. package/dist/commands/level.d.ts +0 -3
  289. package/dist/commands/level.d.ts.map +0 -1
  290. package/dist/commands/level.js +0 -277
  291. package/dist/commands/level.js.map +0 -1
  292. package/dist/gamification/badges.d.ts +0 -29
  293. package/dist/gamification/badges.d.ts.map +0 -1
  294. package/dist/gamification/badges.js +0 -114
  295. package/dist/gamification/badges.js.map +0 -1
  296. package/dist/gamification/challenges.d.ts +0 -42
  297. package/dist/gamification/challenges.d.ts.map +0 -1
  298. package/dist/gamification/challenges.js +0 -184
  299. package/dist/gamification/challenges.js.map +0 -1
  300. package/dist/gamification/hall-of-fame.d.ts +0 -17
  301. package/dist/gamification/hall-of-fame.d.ts.map +0 -1
  302. package/dist/gamification/hall-of-fame.js +0 -64
  303. package/dist/gamification/hall-of-fame.js.map +0 -1
  304. package/dist/gamification/intervention-memory.d.ts +0 -61
  305. package/dist/gamification/intervention-memory.d.ts.map +0 -1
  306. package/dist/gamification/intervention-memory.js +0 -229
  307. package/dist/gamification/intervention-memory.js.map +0 -1
  308. package/dist/gamification/leaderboards.d.ts +0 -49
  309. package/dist/gamification/leaderboards.d.ts.map +0 -1
  310. package/dist/gamification/leaderboards.js +0 -179
  311. package/dist/gamification/leaderboards.js.map +0 -1
  312. package/dist/gamification/pattern-memory.d.ts +0 -45
  313. package/dist/gamification/pattern-memory.d.ts.map +0 -1
  314. package/dist/gamification/pattern-memory.js +0 -188
  315. package/dist/gamification/pattern-memory.js.map +0 -1
  316. package/dist/gamification/share.d.ts +0 -29
  317. package/dist/gamification/share.d.ts.map +0 -1
  318. package/dist/gamification/share.js +0 -57
  319. package/dist/gamification/share.js.map +0 -1
  320. package/dist/learning/cadence.d.ts +0 -15
  321. package/dist/learning/cadence.d.ts.map +0 -1
  322. package/dist/learning/cadence.js +0 -130
  323. package/dist/learning/cadence.js.map +0 -1
  324. package/dist/learning/index.d.ts +0 -19
  325. package/dist/learning/index.d.ts.map +0 -1
  326. package/dist/learning/index.js +0 -35
  327. package/dist/learning/index.js.map +0 -1
  328. package/dist/learning/lessons-storage.d.ts +0 -48
  329. package/dist/learning/lessons-storage.d.ts.map +0 -1
  330. package/dist/learning/lessons-storage.js +0 -266
  331. package/dist/learning/lessons-storage.js.map +0 -1
  332. package/dist/learning/lessons-types.d.ts +0 -83
  333. package/dist/learning/lessons-types.d.ts.map +0 -1
  334. package/dist/learning/lessons-types.js +0 -15
  335. package/dist/learning/lessons-types.js.map +0 -1
  336. package/dist/learning/nudges.d.ts +0 -20
  337. package/dist/learning/nudges.d.ts.map +0 -1
  338. package/dist/learning/nudges.js +0 -68
  339. package/dist/learning/nudges.js.map +0 -1
  340. package/dist/learning/retrospective.d.ts +0 -27
  341. package/dist/learning/retrospective.d.ts.map +0 -1
  342. package/dist/learning/retrospective.js +0 -184
  343. package/dist/learning/retrospective.js.map +0 -1
  344. package/dist/learning/storage.d.ts +0 -44
  345. package/dist/learning/storage.d.ts.map +0 -1
  346. package/dist/learning/storage.js +0 -194
  347. package/dist/learning/storage.js.map +0 -1
  348. package/dist/learning/surfacing.d.ts +0 -36
  349. package/dist/learning/surfacing.d.ts.map +0 -1
  350. package/dist/learning/surfacing.js +0 -255
  351. package/dist/learning/surfacing.js.map +0 -1
  352. package/dist/learning/synthesis.d.ts +0 -17
  353. package/dist/learning/synthesis.d.ts.map +0 -1
  354. package/dist/learning/synthesis.js +0 -293
  355. package/dist/learning/synthesis.js.map +0 -1
  356. package/dist/learning/types.d.ts +0 -60
  357. package/dist/learning/types.d.ts.map +0 -1
  358. package/dist/learning/types.js +0 -17
  359. package/dist/learning/types.js.map +0 -1
  360. package/dist/recommend/index.d.ts +0 -3
  361. package/dist/recommend/index.d.ts.map +0 -1
  362. package/dist/recommend/index.js +0 -14
  363. package/dist/recommend/index.js.map +0 -1
  364. package/dist/recommend/ordered-logistic.d.ts +0 -49
  365. package/dist/recommend/ordered-logistic.d.ts.map +0 -1
  366. package/dist/recommend/ordered-logistic.js +0 -153
  367. package/dist/recommend/ordered-logistic.js.map +0 -1
  368. package/dist/recommend/questions.d.ts +0 -19
  369. package/dist/recommend/questions.d.ts.map +0 -1
  370. package/dist/recommend/questions.js +0 -73
  371. package/dist/recommend/questions.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/calibration/storage.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,gBAAgB,EAAE,iBAAiB,EAAE,MAAM,UAAU,CAAC;AAyB/D;;GAEG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAE3D;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAoBlE;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAS/E;AAED;;;;;;;;GAQG;AACH,wBAAgB,SAAS,CACvB,QAAQ,EAAE,MAAM,EAChB,MAAM,EAAE,iBAAiB,GACxB,gBAAgB,CAmBlB;AAED;;;;GAIG;AACH,wBAAgB,OAAO,CAAC,KAAK,EAAE,gBAAgB,GAAG,gBAAgB,CAmCjE;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,gBAAgB,CAQ/D"}
@@ -1,188 +0,0 @@
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
- Object.defineProperty(exports, "__esModule", { value: true });
36
- exports.getCalibrationPath = getCalibrationPath;
37
- exports.loadCalibration = loadCalibration;
38
- exports.saveCalibration = saveCalibration;
39
- exports.addSample = addSample;
40
- exports.retrain = retrain;
41
- exports.forceRetrain = forceRetrain;
42
- const fs = __importStar(require("fs"));
43
- const path = __importStar(require("path"));
44
- const ordered_logistic_1 = require("../recommend/ordered-logistic");
45
- const ece_1 = require("./ece");
46
- const CALIBRATION_DIR = '.vibe-check';
47
- const CALIBRATION_FILE = 'calibration.json';
48
- /**
49
- * Retraining triggers for the calibration model.
50
- *
51
- * RETRAIN_SAMPLE_INTERVAL (10): Retrain every 10 samples to incorporate
52
- * new data. Balances learning speed vs. computational cost.
53
- *
54
- * RETRAIN_ECE_THRESHOLD (0.15): If Expected Calibration Error exceeds 15%,
55
- * the model's predictions are poorly calibrated. 15% chosen as "noticeable
56
- * but not catastrophic" miscalibration.
57
- *
58
- * Note: With 14 parameters (9 weights + 5 thresholds), even 10 samples is
59
- * severely underfitting. 20+ samples recommended for reliability.
60
- *
61
- * These values are NOT empirically optimized.
62
- */
63
- const RETRAIN_SAMPLE_INTERVAL = 10;
64
- const RETRAIN_ECE_THRESHOLD = 0.15;
65
- /**
66
- * Get calibration file path for a repository.
67
- */
68
- function getCalibrationPath(repoPath) {
69
- return path.join(repoPath, CALIBRATION_DIR, CALIBRATION_FILE);
70
- }
71
- /**
72
- * Load calibration state from disk.
73
- */
74
- function loadCalibration(repoPath) {
75
- const filePath = getCalibrationPath(repoPath);
76
- if (fs.existsSync(filePath)) {
77
- try {
78
- const data = fs.readFileSync(filePath, 'utf-8');
79
- const state = JSON.parse(data);
80
- // Ensure dates are Date objects
81
- state.lastUpdated = new Date(state.lastUpdated);
82
- state.samples = state.samples.map((s) => ({
83
- ...s,
84
- timestamp: new Date(s.timestamp),
85
- }));
86
- return state;
87
- }
88
- catch {
89
- return defaultCalibrationState();
90
- }
91
- }
92
- return defaultCalibrationState();
93
- }
94
- /**
95
- * Save calibration state to disk.
96
- */
97
- function saveCalibration(repoPath, state) {
98
- const dirPath = path.join(repoPath, CALIBRATION_DIR);
99
- const filePath = getCalibrationPath(repoPath);
100
- if (!fs.existsSync(dirPath)) {
101
- fs.mkdirSync(dirPath, { recursive: true });
102
- }
103
- fs.writeFileSync(filePath, JSON.stringify(state, null, 2));
104
- }
105
- /**
106
- * Add a calibration sample and potentially trigger retraining.
107
- *
108
- * Retraining is triggered when:
109
- * 1. Sample count is a multiple of RETRAIN_SAMPLE_INTERVAL, OR
110
- * 2. ECE exceeds RETRAIN_ECE_THRESHOLD
111
- *
112
- * Returns updated state with potentially new weights.
113
- */
114
- function addSample(repoPath, sample) {
115
- const state = loadCalibration(repoPath);
116
- state.samples.push(sample);
117
- state.lastUpdated = new Date();
118
- // Check if retraining is needed
119
- const shouldRetrain = state.samples.length % RETRAIN_SAMPLE_INTERVAL === 0 ||
120
- state.ece > RETRAIN_ECE_THRESHOLD;
121
- if (shouldRetrain && state.samples.length >= 5) {
122
- const updatedState = retrain(state);
123
- saveCalibration(repoPath, updatedState);
124
- return updatedState;
125
- }
126
- // Just save without retraining
127
- saveCalibration(repoPath, state);
128
- return state;
129
- }
130
- /**
131
- * Retrain the model using all accumulated samples.
132
- *
133
- * Uses batch partial fit with inferred true levels from vibe scores.
134
- */
135
- function retrain(state) {
136
- if (state.samples.length < 5) {
137
- return state; // Not enough data
138
- }
139
- // Prepare training data: use vibeScore to infer "true" level
140
- const trainingData = state.samples.map((sample) => ({
141
- features: sample.features,
142
- trueLevel: (0, ece_1.inferTrueLevel)(sample.vibeScore),
143
- }));
144
- // Start from default model (or could start from current weights)
145
- const initialModel = {
146
- weights: [...ordered_logistic_1.DEFAULT_MODEL.weights],
147
- thresholds: [...ordered_logistic_1.DEFAULT_MODEL.thresholds],
148
- };
149
- // Train with multiple epochs for better convergence
150
- let model = initialModel;
151
- const epochs = Math.min(10, Math.ceil(50 / state.samples.length));
152
- for (let epoch = 0; epoch < epochs; epoch++) {
153
- model = (0, ordered_logistic_1.batchPartialFit)(model, trainingData, 0.05);
154
- }
155
- // Calculate new ECE
156
- const newEce = (0, ece_1.calculateECE)(state.samples);
157
- return {
158
- ...state,
159
- weights: model.weights,
160
- thresholds: model.thresholds,
161
- ece: newEce,
162
- lastUpdated: new Date(),
163
- version: '2.1.0', // Bump version to indicate ML-learned weights
164
- };
165
- }
166
- /**
167
- * Force retraining (manual trigger).
168
- */
169
- function forceRetrain(repoPath) {
170
- const state = loadCalibration(repoPath);
171
- if (state.samples.length < 5) {
172
- return state;
173
- }
174
- const updatedState = retrain(state);
175
- saveCalibration(repoPath, updatedState);
176
- return updatedState;
177
- }
178
- function defaultCalibrationState() {
179
- return {
180
- samples: [],
181
- weights: ordered_logistic_1.DEFAULT_MODEL.weights,
182
- thresholds: ordered_logistic_1.DEFAULT_MODEL.thresholds,
183
- ece: 0,
184
- lastUpdated: new Date(),
185
- version: '2.0.0',
186
- };
187
- }
188
- //# sourceMappingURL=storage.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/calibration/storage.ts"],"names":[],"mappings":"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"}
@@ -1,15 +0,0 @@
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
@@ -1 +0,0 @@
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"}
@@ -1,183 +0,0 @@
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
@@ -1 +0,0 @@
1
- {"version":3,"file":"intervene.js","sourceRoot":"","sources":["../../src/commands/intervene.ts"],"names":[],"mappings":"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"}
@@ -1,3 +0,0 @@
1
- import { Command } from 'commander';
2
- export declare function createLearnCommand(): Command;
3
- //# sourceMappingURL=learn.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"learn.d.ts","sourceRoot":"","sources":["../../src/commands/learn.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAQpC,wBAAgB,kBAAkB,IAAI,OAAO,CAa5C"}
@@ -1,161 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.createLearnCommand = createLearnCommand;
7
- const commander_1 = require("commander");
8
- const chalk_1 = __importDefault(require("chalk"));
9
- const retrospective_1 = require("../learning/retrospective");
10
- const storage_1 = require("../learning/storage");
11
- const pattern_memory_1 = require("../gamification/pattern-memory");
12
- const profile_1 = require("../gamification/profile");
13
- function createLearnCommand() {
14
- const cmd = new commander_1.Command('learn')
15
- .description('Run learning operations - retrospectives, pattern analysis, nudge management')
16
- .option('--retro', 'Run weekly retrospective')
17
- .option('--status', 'Show learning status and pending nudges')
18
- .option('--pattern <name>', 'Show details for a specific pattern (e.g., SSL_TLS)')
19
- .option('--dismiss <id>', 'Dismiss a nudge by ID')
20
- .option('--dismiss-all', 'Dismiss all pending nudges')
21
- .action(async (options) => {
22
- await runLearn(options);
23
- });
24
- return cmd;
25
- }
26
- async function runLearn(options) {
27
- // Default to status if no options
28
- if (!options.retro && !options.pattern && !options.dismiss && !options.dismissAll) {
29
- options.status = true;
30
- }
31
- if (options.retro) {
32
- await runRetro();
33
- return;
34
- }
35
- if (options.status) {
36
- showStatus();
37
- return;
38
- }
39
- if (options.pattern) {
40
- showPattern(options.pattern);
41
- return;
42
- }
43
- if (options.dismissAll) {
44
- dismissAllNudges();
45
- return;
46
- }
47
- if (options.dismiss) {
48
- dismissSingleNudge(options.dismiss);
49
- return;
50
- }
51
- }
52
- async function runRetro() {
53
- const retroCheck = (0, retrospective_1.isRetroDue)();
54
- if (!retroCheck.due) {
55
- console.log(chalk_1.default.yellow(`\nRetrospective not due yet (${retroCheck.daysSince} days since last).`));
56
- console.log(chalk_1.default.gray('Run with --force to run anyway.\n'));
57
- // Ask if they want to run anyway
58
- const profile = (0, profile_1.loadProfile)();
59
- if (profile.sessions.length >= 3) {
60
- console.log(chalk_1.default.gray('Running anyway since you have recent sessions...\n'));
61
- (0, retrospective_1.runAndSaveRetro)();
62
- }
63
- return;
64
- }
65
- (0, retrospective_1.runAndSaveRetro)();
66
- }
67
- function showStatus() {
68
- const state = (0, storage_1.loadLearningState)();
69
- const profile = (0, profile_1.loadProfile)();
70
- const nudges = (0, storage_1.getPendingNudges)(state);
71
- const retroCheck = (0, retrospective_1.isRetroDue)();
72
- console.log('');
73
- console.log(chalk_1.default.bold.cyan('='.repeat(64)));
74
- console.log(chalk_1.default.bold.cyan(' LEARNING STATUS'));
75
- console.log(chalk_1.default.bold.cyan('='.repeat(64)));
76
- console.log('');
77
- // Retro status
78
- if (retroCheck.due) {
79
- console.log(chalk_1.default.yellow(` Retrospective due: ${retroCheck.reason}`));
80
- console.log(chalk_1.default.gray(' Run `vibe-check learn --retro` to complete'));
81
- }
82
- else {
83
- console.log(chalk_1.default.green(` Retrospective: ${retroCheck.daysSince} days ago (due in ${7 - retroCheck.daysSince} days)`));
84
- }
85
- console.log('');
86
- // Pending nudges
87
- if (nudges.length > 0) {
88
- console.log(chalk_1.default.bold.white(` PENDING NUDGES (${nudges.length})`));
89
- for (const nudge of nudges) {
90
- console.log(` ${nudge.icon} ${nudge.title}`);
91
- console.log(chalk_1.default.gray(` ${nudge.message}`));
92
- console.log(chalk_1.default.gray(` ID: ${nudge.id}`));
93
- }
94
- }
95
- else {
96
- console.log(chalk_1.default.gray(' No pending nudges'));
97
- }
98
- console.log('');
99
- // Pattern summary
100
- const patternData = (0, pattern_memory_1.formatPatternMemory)(profile.patternMemory);
101
- if (patternData.hasData) {
102
- console.log(chalk_1.default.bold.white(' PATTERN SUMMARY'));
103
- console.log(` ${patternData.summary}`);
104
- console.log(chalk_1.default.gray(` Avg recovery time: ${patternData.avgRecoveryTime} min`));
105
- }
106
- console.log('');
107
- // Stats
108
- console.log(chalk_1.default.bold.white(' LEARNING STATS'));
109
- console.log(` Retrospectives completed: ${state.totalRetrosCompleted}`);
110
- console.log(` Nudges displayed: ${state.nudgesDisplayed}`);
111
- console.log(` Nudges dismissed: ${state.nudgesDismissed}`);
112
- console.log('');
113
- console.log(chalk_1.default.bold.cyan('='.repeat(64)));
114
- console.log('');
115
- }
116
- function showPattern(patternName) {
117
- const profile = (0, profile_1.loadProfile)();
118
- const displayName = (0, pattern_memory_1.getPatternDisplayName)(patternName);
119
- const advice = (0, pattern_memory_1.getPatternAdvice)(patternName);
120
- console.log('');
121
- console.log(chalk_1.default.bold.cyan(` PATTERN: ${displayName}`));
122
- console.log('');
123
- const patternMemory = profile.patternMemory;
124
- if (!patternMemory) {
125
- console.log(chalk_1.default.gray(' No pattern data recorded yet.'));
126
- return;
127
- }
128
- const records = patternMemory.records.filter(r => r.pattern === patternName);
129
- const count = patternMemory.patternCounts[patternName] || 0;
130
- const totalMinutes = patternMemory.patternDurations[patternName] || 0;
131
- console.log(` Occurrences: ${count}`);
132
- console.log(` Total time lost: ${totalMinutes} min`);
133
- console.log(` Avg recovery: ${count > 0 ? Math.round(totalMinutes / count) : 0} min`);
134
- console.log('');
135
- console.log(chalk_1.default.bold.yellow(` ADVICE: ${advice}`));
136
- console.log('');
137
- // Recent occurrences
138
- if (records.length > 0) {
139
- console.log(chalk_1.default.bold.white(' RECENT OCCURRENCES'));
140
- for (const record of records.slice(-5).reverse()) {
141
- console.log(` ${record.date}: ${record.component} (${record.duration} min, ${record.commits} commits)`);
142
- }
143
- }
144
- console.log('');
145
- }
146
- function dismissAllNudges() {
147
- let state = (0, storage_1.loadLearningState)();
148
- const nudges = (0, storage_1.getPendingNudges)(state);
149
- for (const nudge of nudges) {
150
- state = (0, storage_1.dismissNudge)(state, nudge.id);
151
- }
152
- (0, storage_1.saveLearningState)(state);
153
- console.log(chalk_1.default.green(`\n Dismissed ${nudges.length} nudges.\n`));
154
- }
155
- function dismissSingleNudge(nudgeId) {
156
- const state = (0, storage_1.loadLearningState)();
157
- const updatedState = (0, storage_1.dismissNudge)(state, nudgeId);
158
- (0, storage_1.saveLearningState)(updatedState);
159
- console.log(chalk_1.default.green(`\n Nudge dismissed.\n`));
160
- }
161
- //# sourceMappingURL=learn.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"learn.js","sourceRoot":"","sources":["../../src/commands/learn.ts"],"names":[],"mappings":";;;;;AAQA,gDAaC;AArBD,yCAAoC;AACpC,kDAA0B;AAC1B,6DAAwE;AACxE,iDAA2G;AAC3G,mEAA8G;AAE9G,qDAAsD;AAEtD,SAAgB,kBAAkB;IAChC,MAAM,GAAG,GAAG,IAAI,mBAAO,CAAC,OAAO,CAAC;SAC7B,WAAW,CAAC,8EAA8E,CAAC;SAC3F,MAAM,CAAC,SAAS,EAAE,0BAA0B,CAAC;SAC7C,MAAM,CAAC,UAAU,EAAE,yCAAyC,CAAC;SAC7D,MAAM,CAAC,kBAAkB,EAAE,qDAAqD,CAAC;SACjF,MAAM,CAAC,gBAAgB,EAAE,uBAAuB,CAAC;SACjD,MAAM,CAAC,eAAe,EAAE,4BAA4B,CAAC;SACrD,MAAM,CAAC,KAAK,EAAE,OAAO,EAAE,EAAE;QACxB,MAAM,QAAQ,CAAC,OAAO,CAAC,CAAC;IAC1B,CAAC,CAAC,CAAC;IAEL,OAAO,GAAG,CAAC;AACb,CAAC;AAUD,KAAK,UAAU,QAAQ,CAAC,OAAqB;IAC3C,kCAAkC;IAClC,IAAI,CAAC,OAAO,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,OAAO,IAAI,CAAC,OAAO,CAAC,UAAU,EAAE,CAAC;QAClF,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC;IACxB,CAAC;IAED,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;QAClB,MAAM,QAAQ,EAAE,CAAC;QACjB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,MAAM,EAAE,CAAC;QACnB,UAAU,EAAE,CAAC;QACb,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,UAAU,EAAE,CAAC;QACvB,gBAAgB,EAAE,CAAC;QACnB,OAAO;IACT,CAAC;IAED,IAAI,OAAO,CAAC,OAAO,EAAE,CAAC;QACpB,kBAAkB,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC;QACpC,OAAO;IACT,CAAC;AACH,CAAC;AAED,KAAK,UAAU,QAAQ;IACrB,MAAM,UAAU,GAAG,IAAA,0BAAU,GAAE,CAAC;IAEhC,IAAI,CAAC,UAAU,CAAC,GAAG,EAAE,CAAC;QACpB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,gCAAgC,UAAU,CAAC,SAAS,oBAAoB,CAAC,CAAC,CAAC;QACpG,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mCAAmC,CAAC,CAAC,CAAC;QAE7D,iCAAiC;QACjC,MAAM,OAAO,GAAG,IAAA,qBAAW,GAAE,CAAC;QAC9B,IAAI,OAAO,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC,CAAC;YAC9E,IAAA,+BAAe,GAAE,CAAC;QACpB,CAAC;QACD,OAAO;IACT,CAAC;IAED,IAAA,+BAAe,GAAE,CAAC;AACpB,CAAC;AAED,SAAS,UAAU;IACjB,MAAM,KAAK,GAAG,IAAA,2BAAiB,GAAE,CAAC;IAClC,MAAM,OAAO,GAAG,IAAA,qBAAW,GAAE,CAAC;IAC9B,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;IACvC,MAAM,UAAU,GAAG,IAAA,0BAAU,GAAE,CAAC;IAEhC,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,mBAAmB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,eAAe;IACf,IAAI,UAAU,CAAC,GAAG,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,wBAAwB,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iDAAiD,CAAC,CAAC,CAAC;IAC7E,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oBAAoB,UAAU,CAAC,SAAS,qBAAqB,CAAC,GAAG,UAAU,CAAC,SAAS,QAAQ,CAAC,CAAC,CAAC;IAC1H,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,iBAAiB;IACjB,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,qBAAqB,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACrE,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,OAAO,KAAK,CAAC,IAAI,IAAI,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC;YAChD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,UAAU,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;YACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,cAAc,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qBAAqB,CAAC,CAAC,CAAC;IACjD,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,kBAAkB;IAClB,MAAM,WAAW,GAAG,IAAA,oCAAmB,EAAC,OAAO,CAAC,aAAa,CAAC,CAAC;IAC/D,IAAI,WAAW,CAAC,OAAO,EAAE,CAAC;QACxB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC,CAAC;QACnD,OAAO,CAAC,GAAG,CAAC,OAAO,WAAW,CAAC,OAAO,EAAE,CAAC,CAAC;QAC1C,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,WAAW,CAAC,eAAe,MAAM,CAAC,CAAC,CAAC;IACvF,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,QAAQ;IACR,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,kBAAkB,CAAC,CAAC,CAAC;IAClD,OAAO,CAAC,GAAG,CAAC,iCAAiC,KAAK,CAAC,oBAAoB,EAAE,CAAC,CAAC;IAC3E,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,eAAe,EAAE,CAAC,CAAC;IAC9D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,WAAW,CAAC,WAAmB;IACtC,MAAM,OAAO,GAAG,IAAA,qBAAW,GAAE,CAAC;IAC9B,MAAM,WAAW,GAAG,IAAA,sCAAqB,EAAC,WAAW,CAAC,CAAC;IACvD,MAAM,MAAM,GAAG,IAAA,iCAAgB,EAAC,WAAW,CAAC,CAAC;IAE7C,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,cAAc,WAAW,EAAE,CAAC,CAAC,CAAC;IAC1D,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,MAAM,aAAa,GAAG,OAAO,CAAC,aAAa,CAAC;IAC5C,IAAI,CAAC,aAAa,EAAE,CAAC;QACnB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAC3D,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,aAAa,CAAC,OAAO,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,OAAO,KAAK,WAAW,CAAC,CAAC;IAC7E,MAAM,KAAK,GAAG,aAAa,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAC5D,MAAM,YAAY,GAAG,aAAa,CAAC,gBAAgB,CAAC,WAAW,CAAC,IAAI,CAAC,CAAC;IAEtE,OAAO,CAAC,GAAG,CAAC,kBAAkB,KAAK,EAAE,CAAC,CAAC;IACvC,OAAO,CAAC,GAAG,CAAC,sBAAsB,YAAY,MAAM,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,mBAAmB,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,YAAY,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC;IACvF,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAChB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,aAAa,MAAM,EAAE,CAAC,CAAC,CAAC;IACtD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;IAEhB,qBAAqB;IACrB,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,sBAAsB,CAAC,CAAC,CAAC;QACtD,KAAK,MAAM,MAAM,IAAI,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC;YACjD,OAAO,CAAC,GAAG,CAAC,OAAO,MAAM,CAAC,IAAI,KAAK,MAAM,CAAC,SAAS,KAAK,MAAM,CAAC,QAAQ,SAAS,MAAM,CAAC,OAAO,WAAW,CAAC,CAAC;QAC7G,CAAC;IACH,CAAC;IACD,OAAO,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC;AAClB,CAAC;AAED,SAAS,gBAAgB;IACvB,IAAI,KAAK,GAAG,IAAA,2BAAiB,GAAE,CAAC;IAChC,MAAM,MAAM,GAAG,IAAA,0BAAgB,EAAC,KAAK,CAAC,CAAC;IAEvC,KAAK,MAAM,KAAK,IAAI,MAAM,EAAE,CAAC;QAC3B,KAAK,GAAG,IAAA,sBAAY,EAAC,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,CAAC;IACxC,CAAC;IAED,IAAA,2BAAiB,EAAC,KAAK,CAAC,CAAC;IACzB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,MAAM,CAAC,MAAM,YAAY,CAAC,CAAC,CAAC;AACvE,CAAC;AAED,SAAS,kBAAkB,CAAC,OAAe;IACzC,MAAM,KAAK,GAAG,IAAA,2BAAiB,GAAE,CAAC;IAClC,MAAM,YAAY,GAAG,IAAA,sBAAY,EAAC,KAAK,EAAE,OAAO,CAAC,CAAC;IAClD,IAAA,2BAAiB,EAAC,YAAY,CAAC,CAAC;IAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,wBAAwB,CAAC,CAAC,CAAC;AACrD,CAAC"}
@@ -1,8 +0,0 @@
1
- /**
2
- * Lesson Command
3
- *
4
- * View, manage, and interact with learned lessons.
5
- */
6
- import { Command } from 'commander';
7
- export declare function createLessonCommand(): Command;
8
- //# sourceMappingURL=lesson.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"lesson.d.ts","sourceRoot":"","sources":["../../src/commands/lesson.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAiBpC,wBAAgB,mBAAmB,IAAI,OAAO,CAc7C"}