You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
The diff parser (src/engine/diff_parser.rs) and bundling engine (src/engine/bundling/) need hardening to handle edge cases encountered in real-world usage across 13+ repos. This is a prerequisite for #188 (auto-chunking large diffs).
Current State
Component
File
Status
Diff parser
src/engine/diff_parser.rs (594 lines)
Works, but fragile on edge cases
Bundling engine
src/engine/bundling/
Smart grouping exists, no chunking
Review pipeline
src/commands/review.rs
Single-pass, no split logic
Known Issues
1. Diff Parser Edge Cases
No graceful handling of malformed diffs — if git output is incomplete or truncated, parser silently drops data
Binary file detection is prefix-only (^Binary files) — may miss some binary markers
No validation of hunk line counts — parsed old_count/new_count not verified against actual lines collected
Regex on every line — performance concern for large diffs (thousands of lines)
2. Split/Chunking Gaps
No file-level splitting — large single-file diffs cannot be split into hunk groups
Bundling only groups files — does not split oversized groups
No progress reporting during multi-chunk reviews
Cross-file context lost when splitting (related changes in different files get separated)
Proposed Improvements
Phase 1: Diff Parser Hardening
Add validation: verify hunk line counts match collected lines
Activity
feat: diff parser hardening — Phase 1 (#195) (#218)
ajianaz commentedon Jun 7, 2026
Closed — diff parser hardening Phase 1 done in v0.4.6 (PR #218)