test(streaming): kill piezoStream surviving mutants (#591 hit list)#665
Conversation
|
Warning Review limit reached
Next review available in: 56 minutes Enable usage-based reviews in Billing to review now. Otherwise, wait until the next included review is available. How can I continue?After more reviews become available, a review can be triggered using the To avoid repeated limits, reduce automatic review volume by pausing incremental auto-reviews earlier, using label-based review opt-in, excluding WIP or generated PR titles, or requesting reviews manually when the PR is ready. If your team needs uninterrupted high-volume reviews, an organization admin can enable usage-based reviews. How do review limits work?CodeRabbit enforces per-developer PR review limits for each organization. Most developers receive the normal plan review availability. For paid Pro and Pro+ PR reviews, CodeRabbit uses adaptive limits for sustained high-volume activity. When a developer's recent PR review activity reaches the 95th percentile or higher among CodeRabbit users, additional reviews become available more gradually as earlier reviews age out of the rolling window. Please refer docs for additional details. Review details⚙️ Run configurationConfiguration used: defaults Review profile: CHILL Plan: Pro Run ID: 📒 Files selected for processing (4)
✨ Finishing Touches🧪 Generate unit tests (beta)
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
Codecov Report✅ All modified and coverable lines are covered by tests. 📢 Thoughts on this report? Let us know! |
|
🎉 This PR is included in version 2.5.0 🎉 The release is available on GitHub release Your semantic-release bot 📦🚀 |
Mutation test report
Full HTML reports: |
Summary
Works this week's top entry on the mutation hit list (#591):
src/streaming/piezoStream.ts, 151 surviving mutants — the largest single contributor after last week's mqttBridge pass (#635).mutation-report-streamingartifact:readRawRecord: direct byte-level tests — every seq/data CBOR encoding width (inline/1/2/4/8-byte), the 23-byte inline boundary, per-byte key corruption, exact error messages,data: nullfor placeholders, exactnextOffset.findIndexEntry: boundary-exact binary-search assertions (kills the</<=and loop-condition mutants).decodeSensorFrames: primitive/null inner values must not abort the batch.incomplete/droppedFramesabsent on clean replays, distinct error messages for no-file vs no-frames, numeric-string andInfinitytimestamps rejected.0xa2, Pod 3 scalar capSense snapshot, non-frzHealth frames don't reach server listeners.readRawRecord,findIndexEntry,int32BufferToArray,decodeSensorFramesadded to the existing__test__export so the parser can be tested without a WS server per assertion./mutation-hitlistskill (.claude/skills/mutation-hitlist/): packages the weekly workflow — issue lookup, artifact download,survivors.pyextraction, killing-test playbook by mutator type, known equivalent-mutant categories, CI-based verification.Expected remaining survivors are the documented equivalent classes: module-level initializer mutants (false survivors under the vitest runner's module cache), timing/perf-only values (poll intervals, yield cadence, read-chunk sizes), and double-guarded checks. The
mutation-testlabel on this PR triggers the scoped CI run for exact numbers.Test plan
pnpm exec vitest run src/streaming/tests/piezoStream.test.ts— 91 passed, 0 failedmutation-testlabel applied → CI mutation run on this PR posts the before/after summary🛏️ Beam this PR onto a sleepypod ✨
Pick the snippet that matches your pod. Already-installed pods can't use the curl bootstraps below — sleepypod's egress firewall DROPs github.com, and the script that knows how to unblock WAN is the very file curl is trying to fetch. Use
sp-updateinstead; it's on disk and opens WAN as its first step.🔄 Already on a sleepypod (most common — review a PR on a running pod):
🚀 Fresh pod / first install — bootstraps from GitHub, rebuilds every push:
curl -fsSL https://raw.githubusercontent.com/sleepypod/core/test/piezostream-mutants-591/scripts/install \ | sudo bash -s -- --branch test/piezostream-mutants-591🎯 Pin to this exact build (run 29174117551 ·
3081292) — fresh-pod path, locked to one CI artifact for reproducible review:🧊 Artifact:
sleepypod-core· self-destructs in 30 days 💥