|
1 | 1 | # @lytics/dev-agent-cli |
2 | 2 |
|
| 3 | +## 0.5.0 |
| 4 | + |
| 5 | +### Minor Changes |
| 6 | + |
| 7 | +- d23d1a9: Massive indexing performance and UX improvements |
| 8 | + |
| 9 | + **Performance Optimizations (184% faster):** |
| 10 | + |
| 11 | + - **63x faster metadata collection**: Eliminated 863 individual git calls by using single batched git command |
| 12 | + - **Removed storage size calculation**: Deferred to on-demand in `dev stats` (saves 1-3s) |
| 13 | + - **Simplified ownership tracking**: Author contributions now calculated on-demand in `dev owners` (1s), removed SQLite pre-indexing overhead |
| 14 | + - **Total speedup**: Indexing now completes in ~33s vs ~95s (61s improvement!) |
| 15 | + |
| 16 | + **Architecture Simplifications:** |
| 17 | + |
| 18 | + - Removed `file_authors` SQLite table (on-demand is fast enough) |
| 19 | + - Removed `appendFileAuthors()` and `getFileAuthors()` from MetricsStore |
| 20 | + - Removed `authorContributions` from IndexUpdatedEvent |
| 21 | + - Cleaner separation: metrics for analytics, ownership for developer insights |
| 22 | + |
| 23 | + **UX Improvements (no more silent gaps):** |
| 24 | + |
| 25 | + - **Section-based progress display**: Clean, informative output inspired by Homebrew/Cargo |
| 26 | + - **Applied to 4 commands**: `dev index`, `dev update`, `dev git index`, `dev github index` |
| 27 | + - **Live progress updates**: Shows current progress for each phase (scanning, embedding, git, GitHub) |
| 28 | + - **Clean indexing plan**: Removed INFO timestamps from plan display |
| 29 | + - **Helpful next steps**: Suggests relevant commands after indexing completes |
| 30 | + - **More frequent scanner progress**: Logs every 2 batches OR every 10 seconds (was every 50 files) |
| 31 | + - **Slow file detection**: Debug logs for files/batches taking >5s to process |
| 32 | + - **Cleaner completion summary**: Removed storage size from index output (shown in `dev stats` instead) |
| 33 | + - **Continuous feedback**: Maximum 1-second gaps between progress updates |
| 34 | + - **Context-aware `dev owners` command**: Adapts output based on git status and current directory |
| 35 | + - **Changed files mode**: Shows ownership of uncommitted changes with real-time git log analysis |
| 36 | + - **Root directory mode**: High-level overview of top areas (packages/cli/, packages/core/) |
| 37 | + - **Subdirectory mode**: Detailed expertise for specific area |
| 38 | + - **Smart ownership display**: Asymmetric icons that only flag exceptions (⚠️ for others' files, 🆕 for new files) |
| 39 | + - **Last touched timestamps**: Shows when files were last modified (catches stale code and active development) |
| 40 | + - **Recent activity detection**: Warns when others recently touched your files (prevents conflicts) |
| 41 | + - **Suggested reviewers**: Automatically identifies who to loop in for code reviews |
| 42 | + - **Visual hierarchy**: Tree branches (├─, └─) and emojis (📝, 📁, 👤) for better readability |
| 43 | + - **Activity-focused**: Sorted by last active, not file count (no more leaderboard vibes) |
| 44 | + - **Git root detection**: Works from any subdirectory within the repository |
| 45 | + - **Better developer grouping**: `dev owners` now groups by GitHub handle instead of email (merges multiple emails for same developer) |
| 46 | + - **Graceful degradation**: Verbose mode and non-TTY environments show traditional log output |
| 47 | + |
| 48 | + **Technical Details:** |
| 49 | + |
| 50 | + - Added `log-update` dependency for smooth single-line progress updates |
| 51 | + - New `ProgressRenderer` class for section-based progress display |
| 52 | + - Optimized `buildCodeMetadata()` to derive change frequency from author contributions instead of making separate git calls |
| 53 | + - Scanner now tracks time since last log and ensures updates every 10s |
| 54 | + - Storage size calculation moved from index-time to query-time (lazy evaluation) |
| 55 | + - TTY detection for graceful fallback in CI/CD environments |
| 56 | + |
| 57 | + **Before:** |
| 58 | + |
| 59 | + ``` |
| 60 | + [14:27:37] typescript 3450/3730 (92%) |
| 61 | + ← 3 MINUTES OF SILENCE |
| 62 | + [14:30:09] typescript 3600/3730 (97%) |
| 63 | + ← EMBEDDING COMPLETES |
| 64 | + ← 63 SECONDS OF SILENCE |
| 65 | + [14:31:12] Starting git extraction |
| 66 | + ``` |
| 67 | + |
| 68 | + **After:** |
| 69 | + |
| 70 | + ``` |
| 71 | + ▸ Scanning Repository |
| 72 | + 357/433 files (82%, 119 files/sec) |
| 73 | + ✓ Scanning Repository (3.2s) |
| 74 | + 433 files → 2,525 components |
| 75 | +
|
| 76 | + ▸ Embedding Vectors |
| 77 | + 1,600/2,525 documents (63%, 108 docs/sec) |
| 78 | + ✓ Embedding Vectors (20.7s) |
| 79 | + 2,525 documents |
| 80 | +
|
| 81 | + ▸ Git History |
| 82 | + 150/252 commits (60%) |
| 83 | + ✓ Git History (4.4s) |
| 84 | + 252 commits |
| 85 | +
|
| 86 | + ▸ GitHub Issues/PRs |
| 87 | + 82/163 documents (50%) |
| 88 | + ✓ GitHub Issues/PRs (7.8s) |
| 89 | + 163 documents |
| 90 | +
|
| 91 | + ✓ Repository indexed successfully! |
| 92 | +
|
| 93 | + Indexed: 433 files • 2,525 components • 252 commits • 163 GitHub docs |
| 94 | + Duration: 33.5s |
| 95 | +
|
| 96 | + 💡 Next steps: |
| 97 | + dev map Explore codebase structure |
| 98 | + dev owners See contributor stats |
| 99 | + dev activity Find active files |
| 100 | + ``` |
| 101 | + |
| 102 | +### Patch Changes |
| 103 | + |
| 104 | +- Updated dependencies [d23d1a9] |
| 105 | + - @lytics/dev-agent-core@0.9.0 |
| 106 | + - @lytics/dev-agent-mcp@0.5.1 |
| 107 | + - @lytics/dev-agent-subagents@0.5.1 |
| 108 | + |
3 | 109 | ## 0.4.1 |
4 | 110 |
|
5 | 111 | ### Patch Changes |
|
0 commit comments