@boshu2/vibe-check 0.1.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/.dockerignore +46 -0
- package/.gitattributes +3 -0
- package/.pre-commit-hooks.yaml +11 -0
- package/AGENTS.md +40 -0
- package/CHANGELOG.md +322 -0
- package/CLAUDE.md +342 -0
- package/CONTRIBUTING.md +227 -0
- package/Dockerfile +26 -0
- package/LICENSE +201 -0
- package/Makefile +213 -0
- package/README.md +165 -0
- package/SECURITY.md +182 -0
- package/action.yml +270 -0
- package/assets/logo-dark.svg +47 -0
- package/assets/logo.svg +47 -0
- package/bin/vc.js +2 -0
- package/bin/vibe-check.js +2 -0
- package/claude-progress.json +312 -0
- package/claude-progress.txt +572 -0
- package/dist/cli.d.ts +3 -0
- package/dist/cli.d.ts.map +1 -0
- package/dist/cli.js +70 -0
- package/dist/cli.js.map +1 -0
- package/dist/commands/analyze-helpers.d.ts +43 -0
- package/dist/commands/analyze-helpers.d.ts.map +1 -0
- package/dist/commands/analyze-helpers.js +124 -0
- package/dist/commands/analyze-helpers.js.map +1 -0
- package/dist/commands/analyze.d.ts +21 -0
- package/dist/commands/analyze.d.ts.map +1 -0
- package/dist/commands/analyze.js +114 -0
- package/dist/commands/analyze.js.map +1 -0
- package/dist/commands/index.d.ts +2 -0
- package/dist/commands/index.d.ts.map +1 -0
- package/dist/commands/index.js +2 -0
- package/dist/commands/index.js.map +1 -0
- package/dist/errors.d.ts +100 -0
- package/dist/errors.d.ts.map +1 -0
- package/dist/errors.js +208 -0
- package/dist/errors.js.map +1 -0
- package/dist/git.d.ts +39 -0
- package/dist/git.d.ts.map +1 -0
- package/dist/git.js +206 -0
- package/dist/git.js.map +1 -0
- package/dist/inner-loop/context-amnesia.d.ts +20 -0
- package/dist/inner-loop/context-amnesia.d.ts.map +1 -0
- package/dist/inner-loop/context-amnesia.js +246 -0
- package/dist/inner-loop/context-amnesia.js.map +1 -0
- package/dist/inner-loop/index.d.ts +39 -0
- package/dist/inner-loop/index.d.ts.map +1 -0
- package/dist/inner-loop/index.js +181 -0
- package/dist/inner-loop/index.js.map +1 -0
- package/dist/inner-loop/instruction-drift.d.ts +36 -0
- package/dist/inner-loop/instruction-drift.d.ts.map +1 -0
- package/dist/inner-loop/instruction-drift.js +270 -0
- package/dist/inner-loop/instruction-drift.js.map +1 -0
- package/dist/inner-loop/logging-only.d.ts +64 -0
- package/dist/inner-loop/logging-only.d.ts.map +1 -0
- package/dist/inner-loop/logging-only.js +292 -0
- package/dist/inner-loop/logging-only.js.map +1 -0
- package/dist/inner-loop/tests-passing-lie.d.ts +34 -0
- package/dist/inner-loop/tests-passing-lie.d.ts.map +1 -0
- package/dist/inner-loop/tests-passing-lie.js +213 -0
- package/dist/inner-loop/tests-passing-lie.js.map +1 -0
- package/dist/inner-loop/types.d.ts +125 -0
- package/dist/inner-loop/types.d.ts.map +1 -0
- package/dist/inner-loop/types.js +27 -0
- package/dist/inner-loop/types.js.map +1 -0
- package/dist/internal/context/index.d.ts +74 -0
- package/dist/internal/context/index.d.ts.map +1 -0
- package/dist/internal/context/index.js +151 -0
- package/dist/internal/context/index.js.map +1 -0
- package/dist/internal/context/types.d.ts +75 -0
- package/dist/internal/context/types.d.ts.map +1 -0
- package/dist/internal/context/types.js +8 -0
- package/dist/internal/context/types.js.map +1 -0
- package/dist/internal/output/contract.d.ts +81 -0
- package/dist/internal/output/contract.d.ts.map +1 -0
- package/dist/internal/output/contract.js +112 -0
- package/dist/internal/output/contract.js.map +1 -0
- package/dist/internal/output/index.d.ts +7 -0
- package/dist/internal/output/index.d.ts.map +1 -0
- package/dist/internal/output/index.js +7 -0
- package/dist/internal/output/index.js.map +1 -0
- package/dist/metrics/flow.d.ts +20 -0
- package/dist/metrics/flow.d.ts.map +1 -0
- package/dist/metrics/flow.js +85 -0
- package/dist/metrics/flow.js.map +1 -0
- package/dist/metrics/index.d.ts +4 -0
- package/dist/metrics/index.d.ts.map +1 -0
- package/dist/metrics/index.js +161 -0
- package/dist/metrics/index.js.map +1 -0
- package/dist/metrics/rework.d.ts +12 -0
- package/dist/metrics/rework.d.ts.map +1 -0
- package/dist/metrics/rework.js +51 -0
- package/dist/metrics/rework.js.map +1 -0
- package/dist/metrics/spirals.d.ts +17 -0
- package/dist/metrics/spirals.d.ts.map +1 -0
- package/dist/metrics/spirals.js +157 -0
- package/dist/metrics/spirals.js.map +1 -0
- package/dist/metrics/trust.d.ts +12 -0
- package/dist/metrics/trust.d.ts.map +1 -0
- package/dist/metrics/trust.js +175 -0
- package/dist/metrics/trust.js.map +1 -0
- package/dist/metrics/velocity.d.ts +25 -0
- package/dist/metrics/velocity.d.ts.map +1 -0
- package/dist/metrics/velocity.js +120 -0
- package/dist/metrics/velocity.js.map +1 -0
- package/dist/output/index.d.ts +10 -0
- package/dist/output/index.d.ts.map +1 -0
- package/dist/output/index.js +20 -0
- package/dist/output/index.js.map +1 -0
- package/dist/output/json.d.ts +3 -0
- package/dist/output/json.d.ts.map +1 -0
- package/dist/output/json.js +48 -0
- package/dist/output/json.js.map +1 -0
- package/dist/output/markdown.d.ts +3 -0
- package/dist/output/markdown.d.ts.map +1 -0
- package/dist/output/markdown.js +84 -0
- package/dist/output/markdown.js.map +1 -0
- package/dist/output/terminal.d.ts +10 -0
- package/dist/output/terminal.d.ts.map +1 -0
- package/dist/output/terminal.js +153 -0
- package/dist/output/terminal.js.map +1 -0
- package/dist/types.d.ts +75 -0
- package/dist/types.d.ts.map +1 -0
- package/dist/types.js +5 -0
- package/dist/types.js.map +1 -0
- package/docs/ARCHITECTURE.md +450 -0
- package/docs/DEPLOYMENT.md +394 -0
- package/docs/METRICS-EXPLAINED.md +394 -0
- package/docs/REFERENCE.md +230 -0
- package/docs/images/dashboard.png +0 -0
- package/drivers/README.md +327 -0
- package/drivers/go.sh +131 -0
- package/drivers/java.sh +137 -0
- package/drivers/javascript.sh +134 -0
- package/drivers/php.sh +132 -0
- package/drivers/python.sh +90 -0
- package/drivers/rust.sh +132 -0
- package/feature-list.json +273 -0
- package/hooks/pre-push +107 -0
- package/package.json +47 -0
- package/vitest.config.ts +25 -0
package/.dockerignore
ADDED
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
# Node modules (installed during build)
|
|
2
|
+
node_modules/
|
|
3
|
+
|
|
4
|
+
# Source files (only need dist/)
|
|
5
|
+
src/
|
|
6
|
+
*.ts
|
|
7
|
+
tsconfig.json
|
|
8
|
+
|
|
9
|
+
# Development files
|
|
10
|
+
.git/
|
|
11
|
+
.github/
|
|
12
|
+
.vscode/
|
|
13
|
+
.vibe-check/
|
|
14
|
+
|
|
15
|
+
# Tests
|
|
16
|
+
test/
|
|
17
|
+
tests/
|
|
18
|
+
*.test.ts
|
|
19
|
+
*.spec.ts
|
|
20
|
+
vitest.config.ts
|
|
21
|
+
|
|
22
|
+
# Documentation
|
|
23
|
+
docs/
|
|
24
|
+
*.md
|
|
25
|
+
!README.md
|
|
26
|
+
|
|
27
|
+
# CI/CD files
|
|
28
|
+
.gitlab-ci.yml
|
|
29
|
+
.travis.yml
|
|
30
|
+
Jenkinsfile
|
|
31
|
+
|
|
32
|
+
# Environment files
|
|
33
|
+
.env
|
|
34
|
+
.env.*
|
|
35
|
+
|
|
36
|
+
# Logs
|
|
37
|
+
*.log
|
|
38
|
+
npm-debug.log*
|
|
39
|
+
|
|
40
|
+
# OS files
|
|
41
|
+
.DS_Store
|
|
42
|
+
Thumbs.db
|
|
43
|
+
|
|
44
|
+
# Coverage
|
|
45
|
+
coverage/
|
|
46
|
+
.nyc_output/
|
package/.gitattributes
ADDED
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
# Pre-commit hooks for vibe-check
|
|
2
|
+
# https://pre-commit.com/
|
|
3
|
+
|
|
4
|
+
- id: vibe-check
|
|
5
|
+
name: Vibe Check - Code Quality Analysis
|
|
6
|
+
description: Analyze git commit patterns for code quality issues
|
|
7
|
+
entry: npx @boshu2/vibe-check
|
|
8
|
+
language: system
|
|
9
|
+
pass_filenames: false
|
|
10
|
+
stages: [commit, push]
|
|
11
|
+
verbose: true
|
package/AGENTS.md
ADDED
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Agent Instructions
|
|
2
|
+
|
|
3
|
+
This project uses **bd** (beads) for issue tracking. Run `bd onboard` to get started.
|
|
4
|
+
|
|
5
|
+
## Quick Reference
|
|
6
|
+
|
|
7
|
+
```bash
|
|
8
|
+
bd ready # Find available work
|
|
9
|
+
bd show <id> # View issue details
|
|
10
|
+
bd update <id> --status in_progress # Claim work
|
|
11
|
+
bd close <id> # Complete work
|
|
12
|
+
bd sync # Sync with git
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Landing the Plane (Session Completion)
|
|
16
|
+
|
|
17
|
+
**When ending a work session**, you MUST complete ALL steps below. Work is NOT complete until `git push` succeeds.
|
|
18
|
+
|
|
19
|
+
**MANDATORY WORKFLOW:**
|
|
20
|
+
|
|
21
|
+
1. **File issues for remaining work** - Create issues for anything that needs follow-up
|
|
22
|
+
2. **Run quality gates** (if code changed) - Tests, linters, builds
|
|
23
|
+
3. **Update issue status** - Close finished work, update in-progress items
|
|
24
|
+
4. **PUSH TO REMOTE** - This is MANDATORY:
|
|
25
|
+
```bash
|
|
26
|
+
git pull --rebase
|
|
27
|
+
bd sync
|
|
28
|
+
git push
|
|
29
|
+
git status # MUST show "up to date with origin"
|
|
30
|
+
```
|
|
31
|
+
5. **Clean up** - Clear stashes, prune remote branches
|
|
32
|
+
6. **Verify** - All changes committed AND pushed
|
|
33
|
+
7. **Hand off** - Provide context for next session
|
|
34
|
+
|
|
35
|
+
**CRITICAL RULES:**
|
|
36
|
+
- Work is NOT complete until `git push` succeeds
|
|
37
|
+
- NEVER stop before pushing - that leaves work stranded locally
|
|
38
|
+
- NEVER say "ready to push when you are" - YOU must push
|
|
39
|
+
- If push fails, resolve and retry until it succeeds
|
|
40
|
+
|
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,322 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
### Changed
|
|
11
|
+
|
|
12
|
+
- **Session Module Refactor** - Split monolithic session.ts into focused modules
|
|
13
|
+
- `session.ts` - Thin orchestrator with re-exports (139 lines)
|
|
14
|
+
- `session-helpers.ts` - Storage, pattern detection, formatting (451 lines)
|
|
15
|
+
- `session-start.ts` - Session initialization and baseline capture (149 lines)
|
|
16
|
+
- `session-end.ts` - Metrics calculation, analysis, output (431 lines)
|
|
17
|
+
- Removed dead `calculateEnhancedMetrics()` function
|
|
18
|
+
- Refactored `runSessionEndCli()` to use shared helpers (DRY)
|
|
19
|
+
- Added debug mode support (`--debug` flag, `DEBUG=1` env var)
|
|
20
|
+
|
|
21
|
+
- **CLI Rebrand** - CLI command name updated from `vibe-check` to `vc` for brevity
|
|
22
|
+
- All commands now use `vc` prefix (e.g., `vc watch`, `vc session start`)
|
|
23
|
+
- Storage directory remains `.vibe-check/` for backwards compatibility
|
|
24
|
+
- npm package name remains `@boshu2/vibe-check`
|
|
25
|
+
- Documentation updated to reflect new command name
|
|
26
|
+
|
|
27
|
+
- **New Agent Commands** - Added computed query commands for agent integration
|
|
28
|
+
- `vc spiral` - "Am I spiraling?" boolean answer with escape actions
|
|
29
|
+
- `vc diagnose` - "What's wrong?" top issue and recommended fix
|
|
30
|
+
- `vc recommend` - "What should I focus on?" prioritized actions
|
|
31
|
+
- `vc prime` - Context recovery after compaction
|
|
32
|
+
- `vc onboard` - Output AGENTS.md snippet for agent integration
|
|
33
|
+
- All commands support `--json` flag for machine-readable output
|
|
34
|
+
|
|
35
|
+
- **Package Structure** - Organized internal modules
|
|
36
|
+
- `src/internal/` contains shared context and output utilities
|
|
37
|
+
- `src/commands/` follows TypeScript CLI conventions (oclif, Commander.js)
|
|
38
|
+
|
|
39
|
+
## [2.4.0] - 2025-12-29
|
|
40
|
+
|
|
41
|
+
### Added
|
|
42
|
+
|
|
43
|
+
- **Complexity Driver Architecture** - Shell-based drivers for language-specific complexity analysis
|
|
44
|
+
- **Python Driver** (`drivers/python.sh`) - Wraps [radon](https://radon.readthedocs.io/) for cyclomatic complexity
|
|
45
|
+
- **JavaScript/TypeScript Driver** (`drivers/javascript.sh`) - Wraps [cyclomatic-complexity](https://github.com/pilotpirxie/cyclomatic-complexity)
|
|
46
|
+
- **Go Driver** (`drivers/go.sh`) - Wraps [gocyclo](https://github.com/fzipp/gocyclo)
|
|
47
|
+
- **Rust Driver** (`drivers/rust.sh`) - Wraps [rust-code-analysis](https://mozilla.github.io/rust-code-analysis/)
|
|
48
|
+
- **PHP Driver** (`drivers/php.sh`) - Wraps [PHPMD](https://phpmd.org/)
|
|
49
|
+
- **Java Driver** (`drivers/java.sh`) - Wraps [PMD](https://pmd.github.io/)
|
|
50
|
+
- All drivers output unified `ComplexityReport` JSON schema
|
|
51
|
+
- Grade thresholds: A (1-5), B (6-10), C (11-20), D (21-30), E (31-40), F (41+)
|
|
52
|
+
|
|
53
|
+
- **CLI Integration** - `vibe-check driver <language> [directory]` command
|
|
54
|
+
- Runs any driver and outputs JSON
|
|
55
|
+
- Helpful error messages when tools not installed
|
|
56
|
+
|
|
57
|
+
- **Modularity Integration** - `--with-complexity <driver>` flag for modularity command
|
|
58
|
+
- Combines complexity data with module analysis
|
|
59
|
+
- Weighted scoring includes complexity grades
|
|
60
|
+
|
|
61
|
+
### Developer
|
|
62
|
+
|
|
63
|
+
- 6 shell drivers in `drivers/` directory
|
|
64
|
+
- `drivers/README.md` with installation and usage docs
|
|
65
|
+
|
|
66
|
+
## [2.3.0] - 2025-12-28
|
|
67
|
+
|
|
68
|
+
### Added
|
|
69
|
+
|
|
70
|
+
- **AI Safety Detection Module** - Detects LLM-specific security antipatterns in commit history
|
|
71
|
+
- **Secret Leakage Detector** - Scans commits for exposed credentials
|
|
72
|
+
- 8 patterns: OpenAI API keys, GitHub PATs, GitLab PATs, AWS keys, Slack tokens, generic secrets
|
|
73
|
+
- Two modes: full diff scanning (async) and message-only scanning (sync)
|
|
74
|
+
- Masks secrets in output (first 8 chars + `***`)
|
|
75
|
+
- Critical severity for high-value secrets (API keys, tokens)
|
|
76
|
+
- **Scope Violation Detector** - Detects files modified outside declared scope
|
|
77
|
+
- Configure via `.vibe-check/scope.yaml` with glob patterns
|
|
78
|
+
- Supports allowed patterns, directories, and exceptions
|
|
79
|
+
- Uses minimatch for flexible pattern matching
|
|
80
|
+
- **Contract Drift Detector** - Tracks commit message format compliance
|
|
81
|
+
- Scores commits against conventional commit format (0-100)
|
|
82
|
+
- Detects issues: missing_type, invalid_type, vague_message, too_short, etc.
|
|
83
|
+
- Calculates baseline vs current compliance with trend detection
|
|
84
|
+
- Configurable drift threshold (default: 30%)
|
|
85
|
+
- **Token Spiral Estimator** - Estimates token usage and detects explosions
|
|
86
|
+
- Three estimation methods: char_count, lines, diff_size
|
|
87
|
+
- Baseline from first 5 commits, explosion at >2x baseline
|
|
88
|
+
- Indicators: large_diff, many_files, massive_additions, bulk_additions
|
|
89
|
+
|
|
90
|
+
- **Watch Mode Integration** - Real-time secret detection with severity-based alerts
|
|
91
|
+
- Rate-limited alerts via commit:pattern:file tracking
|
|
92
|
+
- Red/bold for critical secrets, yellow for warnings
|
|
93
|
+
|
|
94
|
+
- **Session Integration** - AI Safety included in session end metrics
|
|
95
|
+
- New `ai_safety` section in JSON output
|
|
96
|
+
- Terminal output with health status and recommendations
|
|
97
|
+
|
|
98
|
+
### Changed
|
|
99
|
+
|
|
100
|
+
- `analyzeAISafety()` orchestrator runs all 4 detectors and aggregates results
|
|
101
|
+
- Added `minimatch` and `js-yaml` dependencies for scope configuration
|
|
102
|
+
|
|
103
|
+
### Developer
|
|
104
|
+
|
|
105
|
+
- 31 new unit and integration tests for AI Safety module
|
|
106
|
+
- Updated CLAUDE.md with AI Safety documentation and architecture
|
|
107
|
+
|
|
108
|
+
## [2.2.1] - 2025-12-27
|
|
109
|
+
|
|
110
|
+
### Added
|
|
111
|
+
|
|
112
|
+
- **Enhanced Metrics** - Three new metrics for deeper insights into development habits
|
|
113
|
+
- **Tracer Bullet Ratio** - Measures proactive validation via `tracer:` or `tb:` commits
|
|
114
|
+
- Tracers before features = proactive validation (good!)
|
|
115
|
+
- Tracers before fixes = reactive debugging (too late!)
|
|
116
|
+
- Rating: ELITE >20% | HIGH >10% | MEDIUM >5% | LOW <5%
|
|
117
|
+
- **Investigation Gap Detection** - Surfaces hidden debugging time
|
|
118
|
+
- Detects gaps >15min followed by fix commits
|
|
119
|
+
- Shows total investigation time and longest gap
|
|
120
|
+
- Rating: ELITE 0min | HIGH <30min | MEDIUM <60min | LOW >60min
|
|
121
|
+
- **Domain Cohesion Score** - Measures how focused changes are
|
|
122
|
+
- Cohesive commits touch 1 domain
|
|
123
|
+
- Scattered commits touch 3+ domains
|
|
124
|
+
- Rating: ELITE >80% | HIGH >60% | MEDIUM >40% | LOW <40%
|
|
125
|
+
|
|
126
|
+
- **Eldritch Horror Detector** - Detects oversized functions in the `audit` command
|
|
127
|
+
- Functions >200 lines = warning
|
|
128
|
+
- Functions >500 lines = critical
|
|
129
|
+
- Supports TypeScript, JavaScript, Python, Go
|
|
130
|
+
|
|
131
|
+
- **Tracer Commit Type** - New `tracer` commit type recognized
|
|
132
|
+
- Use `tracer:` or `tb:` prefix for tracer bullet commits
|
|
133
|
+
- Example: `tracer(auth): validate OAuth token refresh flow`
|
|
134
|
+
- Tracers are counted separately from features/fixes
|
|
135
|
+
|
|
136
|
+
### Changed
|
|
137
|
+
|
|
138
|
+
- Enhanced metrics are calculated when using `--score` flag
|
|
139
|
+
- Audit command now includes function-level analysis
|
|
140
|
+
|
|
141
|
+
## [2.0.0] - 2025-12-15
|
|
142
|
+
|
|
143
|
+
### Added
|
|
144
|
+
- **Audit Command** - `vibe-check audit` for static analysis of code messes (monoliths, test gaps, TODOs)
|
|
145
|
+
|
|
146
|
+
### Changed
|
|
147
|
+
- **ESM Migration** - Package is now pure ESM (`type: module`). Requires Node.js 20+.
|
|
148
|
+
- **Dependencies** - Updated all dependencies to December 2025 latest versions.
|
|
149
|
+
- **Chalk v5** - Updated to `chalk` v5 (ESM only).
|
|
150
|
+
|
|
151
|
+
## [1.8.0] - 2025-12-05
|
|
152
|
+
|
|
153
|
+
### Added
|
|
154
|
+
|
|
155
|
+
- **Git Forensics** - `vibe-check forensics` command for deep pattern analysis (VIBE-045)
|
|
156
|
+
- Detects debug spirals ("take N" patterns indicating fix-retry loops)
|
|
157
|
+
- Detects vague commits (<20 characters)
|
|
158
|
+
- Detects context amnesia (repeatedly revisiting same scope)
|
|
159
|
+
- Quality metrics: conventional commit %, descriptive commit %
|
|
160
|
+
- Recommendations: sweep, maintain, or celebrate
|
|
161
|
+
- **Session Detection** - `vibe-check sessions` command for work session analysis (VIBE-046)
|
|
162
|
+
- Identifies sessions from commit timestamps (90-minute gap threshold)
|
|
163
|
+
- Session statistics: avg duration, commits per session, longest/shortest
|
|
164
|
+
- Proven algorithm from release-engineering retrospective
|
|
165
|
+
- **Brand Assets** - Professional logo and visual identity
|
|
166
|
+
- SVG logo with spiral-to-checkmark concept
|
|
167
|
+
- Light and dark mode variants
|
|
168
|
+
- Tagline: "catch the spiral before it catches you"
|
|
169
|
+
- **Actionable Coaching** - Personalized coaching based on your spiral history
|
|
170
|
+
- `vibe-check insights` - View your spiral patterns and what works for you
|
|
171
|
+
- Watch mode shows personalized alerts
|
|
172
|
+
- Session end shows coaching for spirals hit during the session
|
|
173
|
+
- All spirals auto-recorded to `~/.vibe-check/spiral-history.ndjson`
|
|
174
|
+
|
|
175
|
+
### Changed
|
|
176
|
+
|
|
177
|
+
- **README Redesign** - Modern visual flow inspired by top npm packages
|
|
178
|
+
- Centered hero section with logo and badges
|
|
179
|
+
- Progressive disclosure structure
|
|
180
|
+
- Cleaner section organization with horizontal rules
|
|
181
|
+
- Scannable tables instead of prose
|
|
182
|
+
- **Security Policy Updated** - Added forensics and sessions to threat model
|
|
183
|
+
|
|
184
|
+
## [1.7.0] - 2025-12-02
|
|
185
|
+
|
|
186
|
+
### Added
|
|
187
|
+
- **Session Integration** - New `vibe-check session` command suite for Claude Code integration
|
|
188
|
+
- `session start` - Capture baseline metrics at session start
|
|
189
|
+
- `session end` - Get session metrics with failure pattern detection
|
|
190
|
+
- `session status` - Show active session info
|
|
191
|
+
- JSON output compatible with `claude-progress.json` format
|
|
192
|
+
- Automatic failure pattern detection (Debug Spiral, Context Amnesia, Velocity Crash, Trust Erosion, Flow Disruption)
|
|
193
|
+
- Auto-generated learnings based on metrics and patterns
|
|
194
|
+
- Baseline comparison with last 7 days
|
|
195
|
+
|
|
196
|
+
### Changed
|
|
197
|
+
- Major cleanup: removed 20 files, -3900 lines of speculative features
|
|
198
|
+
- Removed learning system (zero adoption evidence)
|
|
199
|
+
- Removed advanced gamification (challenges, prestige, leaderboards)
|
|
200
|
+
- Simplified to core value: metrics, coaching, insights
|
|
201
|
+
|
|
202
|
+
## [1.6.0] - 2025-11-30
|
|
203
|
+
|
|
204
|
+
### Added
|
|
205
|
+
- **Dashboard Command** - `vibe-check dashboard` opens a visual dashboard in your browser
|
|
206
|
+
- Score trend charts showing vibe score over time
|
|
207
|
+
- Session rating distribution (Elite/High/Medium/Low)
|
|
208
|
+
- Metrics radar chart
|
|
209
|
+
- Recent sessions list
|
|
210
|
+
- Achievement progress tracking
|
|
211
|
+
- **Insight Engine** - Generates actionable insights from your data
|
|
212
|
+
- Peak productivity hours detection
|
|
213
|
+
- Best coding day analysis
|
|
214
|
+
- Improvement streak tracking
|
|
215
|
+
- Problematic scope warnings (high fix ratios)
|
|
216
|
+
- Streak risk alerts
|
|
217
|
+
- Personal best celebrations
|
|
218
|
+
- Level-up progress notifications
|
|
219
|
+
- Late night coding warnings
|
|
220
|
+
- Recent achievement highlights
|
|
221
|
+
- Dashboard exports data to `dashboard-data.json` for offline viewing
|
|
222
|
+
- `--no-open` flag to export data without opening browser
|
|
223
|
+
- `-o, --output` flag for custom output path
|
|
224
|
+
|
|
225
|
+
## [1.5.0] - 2025-11-30
|
|
226
|
+
|
|
227
|
+
### Added
|
|
228
|
+
- **Timeline Storage** - Persistent storage with schema versioning
|
|
229
|
+
- **Cross-session Queries** - Query patterns across all historical data
|
|
230
|
+
- **Regression Detection** - Detect when metrics are trending worse
|
|
231
|
+
- **Spiral Pattern Memory** - Track which patterns cause the most spirals
|
|
232
|
+
|
|
233
|
+
## [1.4.0] - 2025-11-29
|
|
234
|
+
|
|
235
|
+
### Added
|
|
236
|
+
- **Timeline Command** - `vibe-check timeline` for viewing coding journey
|
|
237
|
+
- **Pattern Memory** - Tracks spiral triggers over time
|
|
238
|
+
- **Intervention Memory** - Tracks what interventions break spirals
|
|
239
|
+
- **Weekly Challenges** - Gamified weekly goals
|
|
240
|
+
|
|
241
|
+
## [1.3.0] - 2025-11-29
|
|
242
|
+
|
|
243
|
+
### Added
|
|
244
|
+
- **Watch Mode** - `vibe-check watch` for real-time spiral detection
|
|
245
|
+
- **Intervene Command** - `vibe-check intervene` to record what broke a spiral
|
|
246
|
+
- **Cache Command** - `vibe-check cache` to manage local storage
|
|
247
|
+
|
|
248
|
+
## [1.2.0] - 2025-11-29
|
|
249
|
+
|
|
250
|
+
### Added
|
|
251
|
+
- **Git Hook** - `vibe-check init-hook` command to install pre-push hook
|
|
252
|
+
- Runs vibe-check automatically before every git push
|
|
253
|
+
- `--block-low` option to reject pushes with LOW rating
|
|
254
|
+
- Configurable via environment variables
|
|
255
|
+
- Pre-push hook script in `hooks/pre-push` for manual installation
|
|
256
|
+
|
|
257
|
+
## [1.1.0] - 2025-11-29
|
|
258
|
+
|
|
259
|
+
### Added
|
|
260
|
+
- **Gamification System** - XP, levels, streaks, and achievements to make vibe-checking more engaging
|
|
261
|
+
- 18 achievements across streak, score, sessions, and special categories
|
|
262
|
+
- XP rewards for sessions, streaks, scores, and achievements
|
|
263
|
+
- Level progression from "Newbie" (1) to "Legend" (10)
|
|
264
|
+
- Daily streaks with weekly goals
|
|
265
|
+
- 2 hidden achievements to discover
|
|
266
|
+
- **Profile Command** - `vibe-check profile` to view your stats, achievements, and progress
|
|
267
|
+
- `--achievements` flag to see all achievements
|
|
268
|
+
- `--stats` flag for detailed statistics
|
|
269
|
+
- `--json` flag for machine-readable output
|
|
270
|
+
- **GitHub Action** - Automated vibe-check on PRs with comment posting
|
|
271
|
+
- Configurable thresholds for pass/fail
|
|
272
|
+
- JSON artifact output option
|
|
273
|
+
- Full PR comment with metrics and recommendations
|
|
274
|
+
- **JSON File Output** - `--output <file>` flag to save results to a JSON file
|
|
275
|
+
- **Dashboard Shell** - Static HTML dashboard for viewing profile (in `dashboard/` directory)
|
|
276
|
+
- **Simple Mode** - `--simple` flag for compact output showing only essential metrics
|
|
277
|
+
- **UX Improvements**
|
|
278
|
+
- Summary section with top strength and focus area
|
|
279
|
+
- Opportunities section with actionable tips for low/medium metrics
|
|
280
|
+
- Date period context in output header
|
|
281
|
+
- Confidence display for level recommendations
|
|
282
|
+
- **Anti-Gaming** - XP deduplication prevents multiple rewards for same time period
|
|
283
|
+
- **Comprehensive Tests** - 108 tests covering gamification, metrics, and scoring
|
|
284
|
+
|
|
285
|
+
### Changed
|
|
286
|
+
- Requires Node.js 20+ (for Vitest 4.x compatibility)
|
|
287
|
+
- Updated all dependencies to November 2025 stable versions
|
|
288
|
+
- Improved CLI output clarity with better terminology
|
|
289
|
+
- Renamed internal "FAAFO metrics" to "vibe metrics" (user-facing term unchanged)
|
|
290
|
+
|
|
291
|
+
### Fixed
|
|
292
|
+
- Grammar issues in CLI output
|
|
293
|
+
- Level recommendation confidence display
|
|
294
|
+
|
|
295
|
+
## [1.0.2] - 2025-11-28
|
|
296
|
+
|
|
297
|
+
### Changed
|
|
298
|
+
- Complete README rewrite with problem-first structure
|
|
299
|
+
- Added "The Problem" and "The Insight" sections
|
|
300
|
+
- Added practical "When to Run" guidance
|
|
301
|
+
- Added prevention tips for debug spiral patterns
|
|
302
|
+
|
|
303
|
+
## [1.0.1] - 2025-11-28
|
|
304
|
+
|
|
305
|
+
### Added
|
|
306
|
+
- LICENSE file (MIT)
|
|
307
|
+
- CHANGELOG.md
|
|
308
|
+
- .npmignore for cleaner package
|
|
309
|
+
- Jest test suite
|
|
310
|
+
- GitHub Actions CI
|
|
311
|
+
|
|
312
|
+
### Fixed
|
|
313
|
+
- Version now imported from package.json (was hardcoded)
|
|
314
|
+
|
|
315
|
+
## [1.0.0] - 2025-11-28
|
|
316
|
+
|
|
317
|
+
### Added
|
|
318
|
+
- Initial release
|
|
319
|
+
- 5 FAAFO metrics: Iteration Velocity, Rework Ratio, Trust Pass Rate, Debug Spiral Duration, Flow Efficiency
|
|
320
|
+
- Terminal, JSON, and Markdown output formats
|
|
321
|
+
- Debug spiral detection with pattern categorization
|
|
322
|
+
- Conventional commit parsing
|