Skip to content

Commit eeff071

Browse files
fieldingclaude
andcommitted
Clean up README: add testing section, update structure and roadmap
- Add Testing section with test count and how to run - Add fmt.zig and show.zig --stat to project structure - Remove completed roadmap items (keep only remaining TODOs) - Add show <rev>:<path> to roadmap (36% of show usage) Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
1 parent c533f37 commit eeff071

1 file changed

Lines changed: 11 additions & 7 deletions

File tree

README.md

Lines changed: 11 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -140,6 +140,14 @@ nit uses [libgit2](https://libgit2.org/) directly via Zig's zero-cost C interop
140140

141141
For commands nit hasn't implemented yet, it calls `execvpe("git", ...)` which replaces the nit process with git - zero overhead, no wrapper tax.
142142

143+
## Testing
144+
145+
78 conformance tests verify nit's output matches git across: all 4 commands in compact and human mode, passthrough for unknown commands and flags, edge cases (clean tree, deleted files, renames, merge commits, detached HEAD, staged new/delete, subdirectories, aliases, flag combos, not-a-repo).
146+
147+
```sh
148+
zig build && ./tests/conformance.sh
149+
```
150+
143151
## Project Structure
144152

145153
```
@@ -148,23 +156,19 @@ src/
148156
cli.zig arg parsing, dispatch, git passthrough
149157
git.zig libgit2 wrapper (@cImport, repo, error handling)
150158
color.zig ANSI escape codes + TTY detection
159+
fmt.zig shared diff callbacks, stat output, date formatting
151160
cmd/
152161
status.zig compact + human output
153162
log.zig oneline + human with dates
154163
diff.zig stripped headers + colored human mode
155-
show.zig commit info + patch
164+
show.zig commit info + patch + --stat
156165
```
157166

158167
## Roadmap
159168

160-
- [x] `show` command (4th most token-heavy in real agent sessions)
161-
- [x] Strip diff chrome (remove `diff --git` / `---`/`+++` / hunk context text in compact mode)
162-
- [x] ANSI colored human mode (`-H`) for all commands
163-
- [x] Cross-platform release binaries (GitHub Actions)
164-
- [x] Homebrew formula (`brew install fielding/tap/nit`)
165-
- [x] Context line experiments validating U1 default
166169
- [ ] `branch` command (compact listing)
167170
- [ ] `stash` command
171+
- [ ] `show <rev>:<path>` native implementation (36% of show usage)
168172
- [ ] Benchmark against larger repos (linux kernel, chromium)
169173

170174
## License

0 commit comments

Comments
 (0)