docs(TODO): SI-vs-binary byte-unit consistency - #270
Merged
Conversation
Byte units must distinguish decimal SI (KB/MB/... = 1000^N) from binary IEC (KiB/MiB/... = 1024^N),
spell each correctly, and never mix the two at one site. Audit every byte parse/format site
(-size/-blocks, --block-size, --summary/-ls human sizes, --buffer, {size}/%s) and make one
convention uniform + documented in --help=size.
helly25
enabled auto-merge (squash)
July 5, 2026 22:31
helly25
added a commit
that referenced
this pull request
Aug 8, 2026
…2 unblock (#403) * docs(TODO): add fuzzy finding + w-shingling near-duplicate detection idea Records two distinct 'approximate match' capabilities under deferred ideas: (1) fzf/fd-style fuzzy name/path matching as its own -fuzzy primary (subsequence vs bounded edit distance; ties into --sort=score/--top); (2) content near-duplicate/similarity via w-shingling (Jaccard over shingle sets, MinHash to scale) as a per-entry matcher against a reference file plus an optional cross-tree clustering reduction. Notes the design-open points (shingle width, threshold, v1 scope, likely a build extra). TaskList #168. * docs(TODO): add MemorySanitizer (MSan) feasibility check Records the question of enabling MSan (uninitialized-read detection) as a fourth sanitizer: macOS is out (Clang/Linux-only), the blocker is needing an MSan-instrumented libc++ (everything else builds from source and gets the flag for free), so the task is to check whether the hermetic LLVM toolchain can supply one and, if so, add a --config=msan + Linux CI cell - else record why not so it isn't re-litigated. TaskList #169. * docs(TODO): record clang-tidy-22 unblock (mbo #270 compile-DB fix) Corrects the clang-tidy follow-up: the parse abort was the compile DB recording Apple clang (not the <version>-shadowing theory), fixed by mbo #270. Records the port checklist (extractor pin bump, hermetic --bcce-compiler + prefer-target-config + Darwin isysroot, the CharTypedefsToIgnore fix, a report-only CI job) and defers the finding sweep + gating.
helly25
added a commit
that referenced
this pull request
Aug 8, 2026
+ xff fix) (#405) clang-tidy-22 aborted on every TU. Two causes, both fixed: 1) compile_commands-update.sh ran `refresh_all --config=clang`, but that flag only configures the extractor tool's own build, never the internal aquery, so every recorded command named the autodetected Apple clang, not the hermetic toolchain (-> 'concepts'/'time.h' not found). Port mbo #270: bump the extractor pin to 6eb3ff1 (adds --bcce-prefer-target-config, dropping 227 duplicate exec-config entries), resolve the hermetic clang++ and pass --bcce-compiler + --bcce-prefer-target-config after --, plus Darwin-only --bcce-copt=-isysroot. Add //tools:show_compiler as the probe target that materializes the toolchain on a fresh checkout. 2) xff-specific: mbo is on the -isystem search path and ships a plain-text file named `version` at its root, which shadows libc++'s <version> (an explicit -isystem beats the compiler's builtin libc++). clang_tidy.sh now prepends the hermetic libc++ dir via --extra-arg-before=-isystem so the real <version> wins (hermetic libc++, matching the DB's clang, not the SDK's). Also fix the dead .clang-tidy option (CharTypdefsToIgnore -> CharTypedefsToIgnore). clang-tidy-22 now parses clean (real findings only, no abort). The hook stays stages:[manual]; the report-only CI job + the residual-finding sweep are the follow-ons (#166).
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Records a backlog item: byte units must clearly separate decimal SI (
KB/MB/GB/TB/PB/EB= 1000^N) from binary IEC (KiB/MiB/GiB/TiB/PiB/EiB= 1024^N), spell each correctly (theimarks binary), and never mix the two at any one site (never printMBfor a 1024^2 value).Audit + reconcile every place bytes are parsed or formatted so one convention is used correctly throughout:
-size/-blockssuffixes (find-nativek/M/Gare binary today),--block-size,--summary/-lshuman sizes (format::SizeUnitsiec/si),--bufferbyte budgets (B/MB/MiB), and{size}/-printf %s. Decide the canonical spelling rule and document it in--help=size.Doc-only (TODO.md).