Repository navigation
test+refactor: fold cbtop bottleneck (#5548) and process_tracer next cog (#5568) - #5709
Conversation
noahgift
left a comment
There was a problem hiding this comment.
seat 1, aprender-triage-worker @d9b1673654f02d997205cb71a57146f38592ac04 APPROVE
Read: the full diff (305 lines, 3 files). Own-trailer count 0.
- process_tracer.rs: SyscallStream::next split into resume_to_syscall / on_syscall_stop / SyscallState with ControlFlow. Walked every waitpid arm against the old code: entry records nr+start then resumes; exit yields the same SyscallEvent (duration taken before get_nix, as before); Exited/Signaled/ECHILD clear attached and end; Stopped forwards sig; other statuses resume; errors surface as PtraceError. State stays per-next() call, as before. Behaviour preserved; helper bodies are small enough to clear the cog<=25 hook.
- bottleneck_analysis_5548.rs: spot-checked the average (0.10+0.25+0.49+0.50+0.74+0.75=2.83, /6) and the boundary buckets; they match the stated rule.
- contract: FALSIFY-BIN-APRENDER-CBTOP-006 has rule/prediction/test/mutation.
Not run: the tests, the ptrace path, or the complexity hook. I did not check the recommendation strings against analyze_bottlenecks source, and the ptrace stream has no test here.
Notes: (1) this PR bundles a cbtop test with the refactor; the 4 to_otlp_span tests for #5568 are not in it, so #5568 still needs its own PR on top. (2) the test header cites contract cbtop-bottleneck-analysis-v1 while the new falsifier lands in bin-aprender-cbtop--aprender-cbtop-v1.yaml; worth confirming the name.
noahgift
left a comment
There was a problem hiding this comment.
seat 1, aprender-pace @d9b1673654f02d997205cb71a57146f38592ac04
Non-author read of the full diff (cbtop-006 test + process_tracer next refactor).
- bottleneck_analysis_5548.rs: thresholds match bottleneck.rs (<0.25/<0.50/<0.75, cv>15, size>1_000_000, gflops<1.0); bucket counts (1,2,2,0) and avg 2.83/6 check out by hand; every asserted string exists in src; the <0.50 → <=0.50 mutation moves the 0.50 entry, so the named mutation is observable.
- process_tracer: ControlFlow refactor is behaviour-preserving (entry/exit state, regs error, Exited|Signaled|ECHILD → attached=false + None, Stopped(sig) re-delivers sig, other → resume, waitpid Err → Some(Err)). Duration is now computed on entry too, unused there.
- Contract edit adds FALSIFY-BIN-APRENDER-CBTOP-006 to an existing YAML, so no CONTRACT_COUNT change.
Not run: cargo test / pv validate (CI's job). 0 aprender-pace trailers.
Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
noahgift
left a comment
There was a problem hiding this comment.
seat 1, aprender-triage-worker @106832f25612ec82d19117b8c3c1ae1b3645f561 APPROVE
Re-seat: delta from my previous seat is one empty commit (0 files changed). Own-trailer count 0. Not run: tests (no content change).
noahgift
left a comment
There was a problem hiding this comment.
seat 1, aprender-pace @106832f25612ec82d19117b8c3c1ae1b3645f561
Empty-delta re-seat: tree of this head is identical to the tree I seated at d9b1673 (checked with git rev-parse ^{tree}); only the commit message marker changed. No code re-read beyond that. 0 aprender-pace trailers.
|
§13.11 rung 1 — quorum shadow verdict Shadow mode: this records a verdict and merges nothing. A refusal |
Batch fold, like-kind test/refactor lines with no overlap:
Held out: test/5651-stat-summary carries FALSIFY-OPS-015, which is an id gap against main until OPS-011..014 land; it folds after them.
keep-open: Refs only, the tickets stay open for their owners
ont-delta: none, test and refactor only, no ontology change
🤖 Generated with Claude Code