Skip to content

chore(nil-kill): extract gem tool and remove legacy scripts#59

Merged
cuzzo merged 1 commit into
masterfrom
nil-kill-prod
May 17, 2026
Merged

chore(nil-kill): extract gem tool and remove legacy scripts#59
cuzzo merged 1 commit into
masterfrom
nil-kill-prod

Conversation

@cuzzo
Copy link
Copy Markdown
Owner

@cuzzo cuzzo commented May 11, 2026

No description provided.

@codecov-commenter
Copy link
Copy Markdown

codecov-commenter commented May 11, 2026

⚠️ Please install the 'codecov app svg image' to ensure uploads and comments are reliably processed by Codecov.

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 92.70%. Comparing base (b183518) to head (b9dea87).
❗ Your organization needs to install the Codecov GitHub app to enable full functionality.

Additional details and impacted files
@@            Coverage Diff             @@
##           master      #59      +/-   ##
==========================================
- Coverage   92.71%   92.70%   -0.01%     
==========================================
  Files         208      208              
  Lines       52716    52716              
  Branches    12381    12381              
==========================================
- Hits        48876    48872       -4     
- Misses       3840     3844       +4     
Flag Coverage Δ
fuzz 46.11% <100.00%> (ø)
ruby 90.61% <100.00%> (ø)
transpile-tests 82.12% <100.00%> (ø)
zig 96.35% <ø> (-0.03%) ⬇️

Flags with carried forward coverage won't be shown. Click here to find out more.

☔ View full report in Codecov by Sentry.
📢 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.

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/02_concurrent_search/bench📈 view plot
⚠️ NO THRESHOLD
1.41 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
6.49 units
benchmarks/concurrent/07_stream_merge/bench📈 view plot
⚠️ NO THRESHOLD
1.29 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
36.58 units
benchmarks/concurrent/12_false_sharing/bench📈 view plot
⚠️ NO THRESHOLD
1.33 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,051.57 units
benchmarks/concurrent/19_atomic_ptr/bench📈 view plot
⚠️ NO THRESHOLD
1.48 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
84.18 units
benchmarks/inter-clear/05_concurrent_mvcc_pure_read/bench📈 view plot
⚠️ NO THRESHOLD
1.42 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
359.94 units
benchmarks/sequential/04_hashmap/bench📈 view plot
⚠️ NO THRESHOLD
1.20 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
2,065.38 units
benchmarks/sequential/09_frame_vs_heap/bench📈 view plot
⚠️ NO THRESHOLD
1.28 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,782.41 units
benchmarks/sequential/14_iterator/bench📈 view plot
⚠️ NO THRESHOLD
1.20 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
429.10 units
🐰 View full continuous benchmarking report in Bencher

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/01_socket_throughput/bench📈 view plot
⚠️ NO THRESHOLD
5.31 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,385.15 units
benchmarks/concurrent/06_dynamic_spawn/bench📈 view plot
⚠️ NO THRESHOLD
5.37 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
3,707.49 units
benchmarks/concurrent/11_parallel_aggregation/bench📈 view plot
⚠️ NO THRESHOLD
5.21 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
7,168.09 units
benchmarks/concurrent/18_atomic_counter/bench📈 view plot
⚠️ NO THRESHOLD
5.26 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
45.69 units
benchmarks/inter-clear/04_concurrent_mvcc_fat_struct/bench📈 view plot
⚠️ NO THRESHOLD
5.32 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
335.30 units
benchmarks/sequential/03_alloc_throughput/bench📈 view plot
⚠️ NO THRESHOLD
5.11 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
11,524.88 units
benchmarks/sequential/13_soa_layout/bench📈 view plot
⚠️ NO THRESHOLD
5.24 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
756.26 units
🐰 View full continuous benchmarking report in Bencher

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/05_backpressure/bench📈 view plot
⚠️ NO THRESHOLD
5.91 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,799.14 units
benchmarks/concurrent/10_shard_vs_locked/bench📈 view plot
⚠️ NO THRESHOLD
5.77 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
60,005.11 units
benchmarks/concurrent/16_observables/bench📈 view plot
⚠️ NO THRESHOLD
5.83 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
103.12 units
benchmarks/inter-clear/03_concurrent_mvcc_vs_rwlock/bench📈 view plot
⚠️ NO THRESHOLD
6.65 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
293.87 units
benchmarks/sequential/07_pointer_chase/bench📈 view plot
⚠️ NO THRESHOLD
5.74 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
583.77 units
benchmarks/sequential/12_weak_ref_graph/bench📈 view plot
⚠️ NO THRESHOLD
5.88 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
271.18 units
benchmarks/server/03_pathological/server📈 view plot
⚠️ NO THRESHOLD
5.91 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,003.19 units
🐰 View full continuous benchmarking report in Bencher

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/03_atomic_contention/bench📈 view plot
⚠️ NO THRESHOLD
6.26 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
118.34 units
benchmarks/concurrent/08_pubsub/bench📈 view plot
⚠️ NO THRESHOLD
5.52 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
2,385.91 units
benchmarks/concurrent/13_rwlock_starvation/bench📈 view plot
⚠️ NO THRESHOLD
5.36 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,222.06 units
benchmarks/inter-clear/06_concurrent_mvcc_writer_pressure/bench📈 view plot
⚠️ NO THRESHOLD
5.46 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
2,082.44 units
benchmarks/sequential/05_string_builder/bench📈 view plot
⚠️ NO THRESHOLD
5.29 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
28,044.65 units
benchmarks/sequential/10_pool_vs_multiowned/bench📈 view plot
⚠️ NO THRESHOLD
5.24 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
751.83 units
benchmarks/server/01_tcp_kvstore/server📈 view plot
⚠️ NO THRESHOLD
5.46 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,002.62 units
🐰 View full continuous benchmarking report in Bencher

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/04_fanout_fanin/bench📈 view plot
⚠️ NO THRESHOLD
5.29 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
3,547.97 units
benchmarks/concurrent/09_kvstore/bench📈 view plot
⚠️ NO THRESHOLD
5.53 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
60,004.02 units
benchmarks/concurrent/14_nested_lock/bench📈 view plot
⚠️ NO THRESHOLD
5.52 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
435.29 units
benchmarks/inter-clear/02_concurrent_fsm_vs_stackful/bench_fsm📈 view plot
⚠️ NO THRESHOLD
5.31 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
159.50 units
benchmarks/inter-clear/02_concurrent_fsm_vs_stackful/bench_stackful📈 view plot
⚠️ NO THRESHOLD
5.27 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
193.87 units
benchmarks/sequential/11_pipeline_overhead/bench📈 view plot
⚠️ NO THRESHOLD
5.31 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
13,920.64 units
benchmarks/server/02_json_api/server📈 view plot
⚠️ NO THRESHOLD
5.44 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,002.82 units
🐰 View full continuous benchmarking report in Bencher

@github-actions
Copy link
Copy Markdown

github-actions Bot commented May 11, 2026

🐰 Bencher Report

Branchnil-kill-prod
Testbedubuntu-latest

⚠️ WARNING: No Threshold found!

Without a Threshold, no Alerts will ever be generated.

Click here to create a new Threshold
For more information, see the Threshold documentation.
To only post results if a Threshold exists, set the --ci-only-thresholds flag.

Click to view all benchmark results
Benchmarkleak-build-msMeasure (units) x 1e3leak-countMeasure (units)leak-run-msMeasure (units)
benchmarks/concurrent/01_socket_throughput/bench📈 view plot
⚠️ NO THRESHOLD
5.48 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
1,437.60 units
benchmarks/concurrent/06_dynamic_spawn/bench📈 view plot
⚠️ NO THRESHOLD
5.27 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
3,693.55 units
benchmarks/concurrent/11_parallel_aggregation/bench📈 view plot
⚠️ NO THRESHOLD
5.20 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
7,333.18 units
benchmarks/concurrent/18_atomic_counter/bench📈 view plot
⚠️ NO THRESHOLD
5.23 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
45.70 units
benchmarks/inter-clear/04_concurrent_mvcc_fat_struct/bench📈 view plot
⚠️ NO THRESHOLD
5.34 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
366.82 units
benchmarks/sequential/03_alloc_throughput/bench📈 view plot
⚠️ NO THRESHOLD
5.20 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
11,588.82 units
benchmarks/sequential/13_soa_layout/bench📈 view plot
⚠️ NO THRESHOLD
5.23 units x 1e3📈 view plot
⚠️ NO THRESHOLD
0.00 units📈 view plot
⚠️ NO THRESHOLD
756.34 units
🐰 View full continuous benchmarking report in Bencher

cuzzo added a commit that referenced this pull request May 16, 2026
User's model validated (target nil|Type|FunctionSignature; String/
Symbol slop; sigs -> T.any(Type,FunctionSignature)). Carrier
disambiguated: Literal#type is a separate token-kind field, no
blast radius. Real obstacle is semantic, not mechanical: the 11
is_a?(Type) sites double as a resolved-vs-unresolved gate, so
normalizing the seam changes which decls get processed. Documented
as the spec for a focused reviewed PR; not auto-run (gates-green !=
provably-correct for semantic change). #48-#51,#53,#57,#59 same.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
…ee; src sig autofixes

Adds the `nil-kill` gem (gems/nil-kill): a runtime+static type-inference
tool that drives `T.untyped`/`T.nilable` out of the codebase, plus the
verified-loop sig autofixes it produced for src/.

Highlights
- collect_ran_untraced / untraced_covered are zero BY CONSTRUCTION:
  * B1 in-place instrumentation -- the real src/ is wrapped in place
    for a collect (one always-wrapped copy at the real path), so every
    load path / subprocess / re-exec records; crash-safe snapshot +
    sentinel restore + self-heal. The parallel instrumented tree and
    the require/require_relative redirect are deleted.
  * A1 single source of truth -- the foreign coverage/.resultset.json
    baseline is removed; never_run_reason is a closed tree over the
    collect's own Coverage. collect_ran_untraced and never_run are not
    report columns: they are hard failures, not silently-zero columns.
- Permanent contract: spec/zero_evidence_gap_guarantee_spec (hermetic
  corpus, every load path incl. spawned subprocess) +
  evidence_gap_invariant_spec (property + negative control) +
  report_evidence_gap_unit_spec + inplace_lifecycle_spec; tracer
  capability matrix retargeted to in-place; shared spec/support harness.
- add_sig apply-offset corruption fixed: action["line"] is a hint;
  the sig is placed at the named def (Prism-relocated if the buffer
  shifted) or refused -- never inserted as dead code mid-body.
- classify_return_untyped_cause no longer pre-empts forwarded-return
  analysis (resolvable forwards -> PropagationGap; transitive wall ->
  NoEvidence/discarded_return; observed-only-nil stays Refused/Pending).
- src/: pure signature refinements only (no logic changes); the
  corrupt autofix batch was reverted. srb tc clean; ruby-unit,
  nil-kill specs, and the examples/benchmarks corpus all green.
- CI: nil-kill-unit job runs the specs without coverage/codecov.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
@cuzzo cuzzo merged commit 540e135 into master May 17, 2026
37 checks passed
cuzzo added a commit that referenced this pull request May 17, 2026
User's model validated (target nil|Type|FunctionSignature; String/
Symbol slop; sigs -> T.any(Type,FunctionSignature)). Carrier
disambiguated: Literal#type is a separate token-kind field, no
blast radius. Real obstacle is semantic, not mechanical: the 11
is_a?(Type) sites double as a resolved-vs-unresolved gate, so
normalizing the seam changes which decls get processed. Documented
as the spec for a focused reviewed PR; not auto-run (gates-green !=
provably-correct for semantic change). #48-#51,#53,#57,#59 same.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
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.

2 participants