Skip to content

fix(cli): compact nested raw JSON values into single-line records (FUZZ-017 r2) - #717

Merged
randlee merged 1 commit into
fix/t-7-fuzz-013-r2-all-ops-namesfrom
fix/t-7-fuzz-017-r2-one-line-records
Oct 8, 2026
Merged

randlee merged 1 commit into
fix/t-7-fuzz-013-r2-all-ops-namesfrom
fix/t-7-fuzz-017-r2-one-line-records

Conversation

@randlee

@randlee randlee commented Oct 7, 2026

Copy link
Copy Markdown
Owner

Fixes comp-t-7.fuzz-017-r2-fix (round 2 of FUZZ-017, filed by comp-t-7.6-qa): render --append compacts insignificant whitespace in nested raw JSON values so every record is one physical line, without re-parsing number or string lexemes. Regression test asserts one line per record for a nested value with spaces and newlines.

Rebased b5a181f -> b1cad13 onto #716. Gates at b1cad13: clippy -D warnings clean, fmt clean, cargo test --workspace 1064 passed / 0 failed / 0 ignored.

🤖 Generated with Claude Code

@randlee

randlee commented Oct 7, 2026

Copy link
Copy Markdown
Owner Author

QA fix verification: comp-t-7.fuzz-017-r2-qa (fuzz-017) at b1cad13

Verdict: PASS. 1 carried finding verified fixed (round 2).

Finding Disposition
fuzz-017 fixed

The regression found in round 1 is gone. The fuzz coordinator, locked to fuzz-017, verified at the pinned commit:

  • The reproducer body appends exactly one physical line that parses as JSON ({"a":{"x":1,"y":[1,2]},"b":3}; round 1 gave 3 lines). Tab and CRLF between tokens also give one line.
  • Numbers stay as spelled (12345678901234567890123, 0.1000000000000000055511151231257827, 1e2, 1E+2, -0, -0.0), and string contents (spaces, escaped \n/\t, braces, \", \\, \u escapes) are byte-identical to round 1.
  • Three appends give three lines, no blank lines, one trailing newline. Malformed and non-object bodies still fail closed with the file byte-identical. Compact bodies are byte-identical to round 1.
  • cargo test -p sc-compose --test cli fuzz_017: 2 passed; the full sc-compose suite passes. The new test fails at the round-1 commit ebe5e56.
  • Local fmt, clippy -D warnings and tests are clean at this head.

Notes: object keys are re-serialized by serde, so a key written as ék comes out as ék, and keys are sorted with duplicates resolved to the last value. Both are the same as round 1; I did not compare them with the pre-fix baseline binary.

Disclosures: CI not checked (rate-limit rule). The fix-round scope helper accepted the coordinator as the filing reviewer.

@randlee
randlee force-pushed the fix/t-7-fuzz-017-r2-one-line-records branch from b1cad13 to b2ae09f Compare October 8, 2026 00:25
@randlee
randlee removed this pull request from stack #625 October 8, 2026 00:45
@randlee
randlee added this pull request to stack #739 October 8, 2026 01:15
@randlee
randlee merged commit 19e4cb0 into integrate/phase-t Oct 8, 2026
11 of 15 checks passed
@randlee
randlee deleted the fix/t-7-fuzz-017-r2-one-line-records branch October 8, 2026 01:16
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant