fix: derive runtime banner from package version - #363
Conversation
|
Warning Review limit reachedNext included review available in 59 minutes. View limit detailsLimit details: You’ve used the included review currently available. You've used all free OSS reviews for now. Wait for the free limit to reset to keep reviewing this public repository. Review configuration: ⚙️ Run configurationConfiguration used: Organization UI Review profile: CHILL Plan: Advanced Run ID: 📒 Files selected for processing (2)
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 |
|
@coderabbitai review Current-head review requested for |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
echo '== HEAD =='
git rev-parse HEAD
git status --short
git show --no-ext-diff --format=fuller --stat HEAD
echo '== Changed files versus first parent =='
git diff --no-ext-diff --name-status HEAD^ HEAD
git diff --no-ext-diff --unified=80 HEAD^ HEAD -- DESCRIPTION
echo '== Candidate repository files =='
fd -t f -a -E .git | sed -n '1,240p'
echo '== R source outline =='
fd -e R -t f -a -E .git -x ast-grep outline {} --items all --type function --view compact 2>/dev/null || true
echo '== Version and autoFIPC references =='
rg -n -i -C 4 \
-e 'packageVersion\s*\(' \
-e '\bautoFIPC\s*<-|\bautoFIPC\s*=' \
-e 'aFIPC[[:space:]]+[0-9]+\.[0-9]+' \
-e 'Version:' \
-e '0\.2' \
-g '*.R' -g 'DESCRIPTION' -g '*test*' -g '*.md' .
echo '== Full current-head patch =='
git diff --no-ext-diff --unified=100 HEAD^ HEADLength of output: 226160 🏁 Script executed: #!/bin/bash
set -euo pipefail
echo '== Pull request metadata and current checks =='
gh pr view 363 --repo ContextualWisdomLab/aFIPC \
--json number,state,isDraft,baseRefName,headRefName,headRefOid,commits,statusCheckRollup,url
gh api "repos/ContextualWisdomLab/aFIPC/commits/3e21ef336e140b36b0a51c956995dbe982050aa6/check-runs?per_page=100" \
--jq '.check_runs[] | [.name, .status, .conclusion, .details_url] | `@tsv`' || true
echo '== PR merge base and complete PR change set =='
base="$(git merge-base HEAD origin/"$(gh pr view 363 --repo ContextualWisdomLab/aFIPC --json baseRefName --jq .baseRefName)")"
echo "MERGE_BASE=$base"
git diff --no-ext-diff --name-status "$base"...HEAD
git diff --no-ext-diff --stat "$base"...HEAD
git diff --no-ext-diff --unified=40 "$base"...HEAD -- R/aFIPC.R tests/testthat/test-package-version-banner.R tests/testthat/test-fixed-parameter-calibration.R
echo '== Version-banner regression =='
cat -n tests/testthat/test-package-version-banner.R
echo '== Calibration regression outline and contents =='
ast-grep outline tests/testthat/test-fixed-parameter-calibration.R --items all --view expanded 2>/dev/null || true
cat -n tests/testthat/test-fixed-parameter-calibration.R
echo '== Exact source context for the banner and calibration inputs =='
sed -n '36,140p' R/aFIPC.R
sed -n '500,550p' R/aFIPC.R
echo '== Repository-owned version references, excluding vendored packrat =='
rg -n -i -g '!packrat/**' \
-e 'packageVersion\s*\(\s*["'\'']aFIPC["'\'']\s*\)' \
-e 'aFIPC[[:space:]]+[0-9]+\.[0-9]+' \
-e '^[[:space:]]*Version:' \
-e '0\.2' \
DESCRIPTION R tests man docs README.md 2>/dev/null || trueLength of output: 35536 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo="ContextualWisdomLab/aFIPC"
sha="3e21ef336e140b36b0a51c956995dbe982050aa6"
echo '== Current pull-request checks =='
gh pr checks 363 --repo "$repo" --watch=false || true
echo '== Current check-run status =='
gh api "repos/$repo/commits/$sha/check-runs?per_page=100" \
--jq '.check_runs[] | [.name, .status, (.conclusion // ""), .details_url] | `@tsv`'
echo '== Failed CodeQL compatibility job details =='
gh run view 34623804785 --repo "$repo" --job 103344388114 --log-failed 2>&1 | tail -n 220 || true
echo '== Dispatched CodeQL workflow state =='
gh run list --repo "$repo" --commit "$sha" --workflow "CodeQL PR" --limit 10 \
--json databaseId,status,conclusion,displayTitle,createdAt,updatedAt,urlLength of output: 8868
Gate verification is incomplete for commit
Keep the PR Draft until the pending checks complete and the CodeQL failure is resolved or superseded by a successful current-head CodeQL result.
|
Finding
DESCRIPTIONis the R package version authority and declares0.1.0, while protectedautoFIPC()hard-codes runtime banneraFIPC 0.2. There is no accepted ADR/API contract establishing0.2as a separate method-version namespace, so this is a real version-authority mismatch rather than a documentation distinction to invent.TDD lineage
Test-only RED head:
7eef331d38cbd40d68b8a5847b2a27c692713e50.The focused regression captures the first
autoFIPC()message before the existing input-validation error and requires the banner version to equalutils::packageVersion("aFIPC"). On the protected base that expectation is0.1.0, while implementation emits0.2.The successor was pushed before a terminal hosted result for that RED generation, so no hosted RED is claimed.
Minimal causal repair
Current exact head:
3e21ef336e140b36b0a51c956995dbe982050aa6on protected basemaster@f87c2324f1686135e57d8730c1b0b9420874f300.Effective compare is limited to two paths:
R/aFIPC.R: replace the hard-coded0.2literal withas.character(utils::packageVersion("aFIPC"))while preserving the existing banner/credit surface;tests/testthat/test-package-version-banner.R: focused metadata-authority regression.An intermediate reconstruction introduced incidental whitespace/roxygen drift. History was not rewritten: ordinary-forward corrective head
3e21ef...restored the protected surrounding bytes, and the final PR diff contains only the intended version-authority change plus regression.Exact-head gates
On
3e21ef...:34623804857: SUCCESS;34623804719: SUCCESS;34623804748: SUCCESS;34623804819: SUCCESS;34623804743: still running at the latest read;34623804785: FAILURE caused by the central producer/consumer settlement ordering defect, not by this two-file leaf change. The compatibility consumer terminalized at 16:49:34Z; authoritative dispatch did not start until 16:49:38Z and then succeeded. Exact evidence was delivered to canonical owner.github#2051.Current-head CodeRabbit review has been requested but is not treated as an approval.
Merge acceptance
Keep Draft until one unchanged exact head has terminal R/package and applicable quality/security gates, the central required-CodeQL owner-path accepts this identity correctly, zero valid unresolved current-head findings, and qualifying independent review. No self-approval, no-op retrigger, fixed-sleep workaround, gate weakening, force push, or fabricated second version authority.