docs: library comments say what the scanner and resolver do, not how they came to be (#6277)
release / govulncheck (push) Successful in 20s
release / web (push) Successful in 1m20s
release / go (push) Successful in 1m37s
release / integration (push) Successful in 5m15s
release / android (push) Successful in 5m26s
release / Build signed APK (releases and dev) (push) Successful in 5m45s
release / Attach APK to the Release (tag releases only) (push) Skipped
release / Build + push container image (push) Successful in 16s
release / Verify release artifacts (tag releases only) (push) Skipped

Rewrites the internal/library comment blocks to rule 32. Task, milestone,
decision and rule ids are gone; the incidents behind them are restated as
the constraint they left (why a file is deleted before its row, why the
missing mark is a mark, why duplicates block on duration). Counts and
album names from one library are dropped from production comments; test
comments keep the names their fixtures use. The tagReadVersion log keeps
each version's before and after, without the measurements.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
2026-10-23 12:27:34 -04:00
co-authored by Claude Opus 5.5
parent 08a2c06b85
commit 7e6228c13f
66 changed files with 578 additions and 564 deletions
+4 -4
View File
@@ -67,7 +67,7 @@ func utf8Frame(values ...string) []byte {
return append([]byte{0x03}, []byte(strings.Join(values, "\x00"))...)
}
// TestReadID3v2GenreValues_MultiValue is the #2499 regression. dhowden/tag
// TestReadID3v2GenreValues_MultiValue: dhowden/tag
// rejoins these values with the empty string, producing "Alternative RockRock";
// the whole point of our own reader is that they stay separate.
func TestReadID3v2GenreValues_MultiValue(t *testing.T) {
@@ -88,7 +88,7 @@ func TestReadID3v2GenreValues_MultiValue(t *testing.T) {
}
}
// The operator's worst case: eight values welded into one 70-character token.
// Eight values that a joining reader would weld into one 70-character token.
func TestReadID3v2GenreValues_ManyValues(t *testing.T) {
values := []string{
"Boom Bap", "Downtempo", "Hip Hop", "Instrumental",
@@ -268,7 +268,7 @@ func TestNormaliseGenreValue(t *testing.T) {
{"empty", "", nil},
{"whitespace only", " ", nil},
// The operator's digit soup, one value at a time.
// Numeric references, one value at a time.
{"bare numeric", "17", []string{"Rock"}},
{"bare numeric pop", "13", []string{"Pop"}},
{"bare numeric electronic", "52", []string{"Electronic"}},
@@ -426,7 +426,7 @@ func TestTrueUpCasing(t *testing.T) {
in string
want string
}{
// The damage actually present in the operator's library (#2468).
// Casing damage tag editors leave.
{"edm acronym", "Edm", "EDM"},
{"idm acronym", "Idm", "IDM"},
{"aor acronym", "Aor", "AOR"},