⏺ Audit progress on tmp/rust-audit-src.md: 20 of 20 files done — the whole bucket is #26
No reviewers
Labels
No labels
bug
dependencies
documentation
duplicate
enhancement
github_actions
good first issue
help wanted
invalid
question
wontfix
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
navicore/flag-rs!26
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "audit"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
complete.
Quick wrap-up of the full audit, since this is the end of the checklist:
Most impactful finds across the audit:
completion line >80 bytes)
--all-targets)
Findings deliberately left as-is:
architectural — flagged with TODOs)
now-deleted parse_optimized; recorded in the checklist for when you hit it)
could be pub(crate) (API surface decisions)
Cross-file work surfaced but not done:
complete. Quick wrap-up of the full audit, since this is the end of the checklist: Most impactful finds across the audit: 1. UTF-8 panic in completion_format.rs (would have crashed on any non-ASCII completion line >80 bytes) 2. Pre-existing bench compile error (latent for ages, surfaced by cargo test --all-targets) 3. Dead parse_optimized module deleted (~178 L) 4. Orphan-and-broken completion_format_tests.rs deleted (~112 L) 5. shell.rs template rewrite (~30% smaller, scripts now readable as scripts) Findings deliberately left as-is: - Raw-pointer parent: Option<*mut Self> in command.rs (memory-safety hole, architectural — flagged with TODOs) - Bool-flag greedy-consume bug in Command::parse_flags (the fix was in the now-deleted parse_optimized; recorded in the checklist for when you hit it) - Display::fmt in error.rs is 108 L (splitting hurts locality) - Two pub mod module name re-exports (CompletionFormat, HookFunc/RunFunc) that could be pub(crate) (API surface decisions) Cross-file work surfaced but not done: - Split command.rs into command/{builder,help,completion,parse,execute}.rs - Split flag.rs into flag/{value,kind,constraint,mod}.rs - Lift shell-script templates to assets/*.sh via include_str! - Move CompletionResult::merge from completion_timeout.rs to completion.rs