Skip to content

Phases 376-378: corrupted-file robustness, TaQL garbage-input fuzz, MSSelection spec fuzz - #119

Merged
barrettp merged 4 commits into
mainfrom
phase376-378-corrupt-taql-fuzz
Oct 9, 2026
Merged

barrettp merged 4 commits into
mainfrom
phase376-378-corrupt-taql-fuzz

Conversation

@barrettp

@barrettp barrettp commented Oct 9, 2026

Copy link
Copy Markdown
Member

Summary

  • 376 Random-corruption fuzz of table files: fixed an IncrementalStMan @inbounds segfault, added row-count cross-checks at open (like casacore's "mismatch in #row") and count guards in AipsIO / TSM / SSM / array-file / container readers. New test/corrupt_tests.jl + child-process fuzz.
  • 377 Mutation fuzz of the TaQL-lite parser: out-of-range integer/float literals saturate like real TaQL, nesting capped (was stack overflow), $N checks, subscripts follow real TaQL (0 = last, errors for out-of-range / end<start / stride<=0), any/all/ntrue/nfalse need Bool, byte/char index fixes for non-ASCII text in sub-queries and CREATE TABLE.
  • 378 Mutation fuzz of every mscal.<sel>('spec'): huge ids saturate, numeric ranges no longer materialise every integer (OOM), out-of-range mscal.time field is an ordinary error.
  • Follow-up from the x86-64 run: a flipped bit giving a Dysco WEIGHT_SPECTRUM a 9.7M x 4 cell shape now fails fast (shape checked against the stored block size and the DATA column).

Test plan

  • Full local suite (Julia 1.13, ARM64): 10456 passed
  • x86-64 Docker (julia 1.10): all passed except one corruption-fuzz stall, fixed above and re-verified on all fuzz kinds
  • CI

🤖 Generated with Claude Code

barrettp and others added 4 commits October 5, 2026 14:30
… memory (ISM segfault, row-count checks, count guards)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…ral saturation, nesting cap, $N checks, subscript rules, Bool reductions, byte/char index fixes)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…pansion, mscal.time field range)

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
…86 corruption-fuzz stall); retry slow fuzz reads

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
@barrettp
barrettp merged commit 1f51cfa into main Oct 9, 2026
3 of 4 checks passed
@barrettp
barrettp deleted the phase376-378-corrupt-taql-fuzz branch October 9, 2026 14:52
@codecov

codecov Bot commented Oct 9, 2026 •

Copy link
Copy Markdown

Codecov Report

❌ Patch coverage is 98.69281% with 2 lines in your changes missing coverage. Please review.
✅ Project coverage is 96.02%. Comparing base (771eecd) to head (40397ae).
⚠️ Report is 7 commits behind head on main.

Files with missing lines Patch % Lines
src/taql/parse.jl 92.59% 2 Missing ⚠️
Additional details and impacted files
@@            Coverage Diff             @@
##             main     #119      +/-   ##
==========================================
+ Coverage   95.80%   96.02%   +0.22%     
==========================================
  Files          52       52              
  Lines       10466    10576     +110     
==========================================
+ Hits        10027    10156     +129     
+ Misses        439      420      -19     

☔ View full report in Codecov by Harness.
📢 Have feedback on the report? Share it here.

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.

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