fix(benchmarks): drop the leftover bash tail in the coverage step - #134
Merged
Conversation
When the coverage step was switched to call benchmark-manifest.py summarise, the
replacement missed a trailing fragment of the bash implementation it superseded: a
truncation-narrative block and a final echo, both still referencing ${missing} and
${missing_names}, which no longer exist.
The first post-merge Performance Benchmark run shows the effect — two verdict
lines, the second with an empty count:
Benchmark coverage: 0 of 12 expected summary document(s) absent (...)
Benchmark coverage: expected summary document(s) absent (...)
The duplicate line is cosmetic, but the truncation block is not. The step runs
under `bash -e`, and `[ "${missing}" -gt 0 ]` with an unset operand is a syntax
error, so on a FAILED benchmark run the step would abort instead of printing the
narrative — the one case the narrative exists for. That path had not run yet.
summarise already emits that narrative, in both the truncated and
not-truncated forms, so this is a pure deletion with no replacement needed.
Co-Authored-By: Claude <noreply@anthropic.com>
|
Important Review skippedAuto reviews are limited based on label configuration. 🚫 Excluded labels (none allowed) (1)
Please check the settings in the CodeRabbit UI or the ⚙️ Run configurationConfiguration used: Repository: cuioss/coderabbit/.coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: You can disable this status message by setting the Use the checkbox below for a quick retry:
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 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Intent
Follow-up to #131. Removes a leftover fragment of the bash implementation that the
manifest-driven coverage step replaced.
What happened
#131 switched the "Summarise benchmark coverage" step to call
benchmark-manifest.py summarise, but the replacement missed a trailing block: atruncation-narrative
ifand a finalecho, both still referencing${missing}and${missing_names}, which the deleted bash had defined.The first post-merge Performance Benchmark run surfaced it — two verdict lines, the
second with an empty count:
Why it is not just cosmetic
The duplicate line is harmless. The truncation block is not.
The step runs under
shell: /usr/bin/bash -e, and[ "${missing}" -gt 0 ]with anunset operand is a syntax error. So on a failed benchmark run the step would abort
rather than print the truncation narrative — precisely the case that narrative exists
to explain. That path had not executed yet, because the run that exposed the leftover
succeeded.
Why a pure deletion
summarisealready emits the same narrative in both branches (truncated, and"failed after every goal produced a summary"), so nothing is lost by removing the bash
copy. Keeping it would also re-create the two-implementations-of-one-contract problem
that motivated calling
summarisein the first place.Verification
Quality gate green. The step's own behaviour only exercises in a post-merge
Performance Benchmark run; the
summarisecode path this defers to was verified in#131 across all three exit semantics (complete coverage, missing document, absent
manifest) and is unchanged here.
skip-bot-reviewapplied: a 17-line dead-code deletion with no reachable behaviourchange on the success path.