perf(mmle): use matrix-vector EAP projection - #549
Conversation
MMLE fallback 추정기에서 EAP 능력을 계산할 때 사용되던 축소연산 `(posterior * nodes[None, :]).sum(axis=1)`을 행렬곱 `posterior @ nodes` 연산으로 변경했습니다. 이 변경으로 인해 중간 단계에서 거대한 N x Q 크기의 임시 배열을 할당하고 복사하는 메모리 오버헤드가 사라지며, BLAS 최적화 루틴을 활용하게 되어 전반적인 성능이 향상되었습니다. 성능 하락을 우려하던 일부 연산 방식(`np.ones`를 이용한 내적 등)은 유지 보수성 및 코드 가독성을 위해 기존 `sum(axis=1)`을 유지하여 Bolt 가이드라인을 준수했습니다.
|
Warning Review limit reached
Next review available in: 43 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: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (5)
Comment |
|
@coderabbitai review @opencode-agent @cwl-noema-review Review exact head |
|
|
|
@opencode-agent @cwl-noema-review Final independent exact-head approval requested for |
|
@coderabbitai review Review exact current head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
expected='12fc519ca798c8400840f04b3b19c07754ad7dfe'
actual="$(git rev-parse HEAD)"
printf 'HEAD=%s\nEXPECTED=%s\n' "$actual" "$expected"
git status --short
git show --no-ext-diff --format=fuller --no-renames --stat "$expected"
printf '\n--- changed files ---\n'
git diff-tree --no-commit-id --name-status -r "$expected"
printf '\n--- complete diff ---\n'
git diff --no-ext-diff --find-renames=0 "${expected}^" "$expected" --
printf '\n--- outlines for changed Python files ---\n'
git diff-tree --no-commit-id --name-only -r "$expected" | while IFS= read -r file; do
case "$file" in
*.py)
printf '\n### %s\n' "$file"
ast-grep outline "$file" --items all --view expanded || true
;;
esac
done
printf '\n--- exact-head PR state, checks, reviews, and threads ---\n'
gh pr view 549 --repo ContextualWisdomLab/fast-mlsirm \
--json number,headRefOid,state,isDraft,reviewDecision,reviews,statusCheckRollup,comments \
--jq '{number,headRefOid,state,isDraft,reviewDecision,reviews:(.reviews|map({author:.author.login,state,commit:.commit.oid,submittedAt})),checks:(.statusCheckRollup|map({name,conclusion,status,detailsUrl})),comments:(.comments|map({author:.author.login,createdAt,body}))}' || true
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number=549 -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } body path line originalLine }
}
}
}
}
}
}' --jq '.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false) | {isOutdated, comments: [.comments.nodes[] | {author:.author.login,commit:.commit.oid,path,line,originalLine,body}]}' || trueLength of output: 20698 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr=549
head='12fc519ca798c8400840f04b3b19c07754ad7dfe'
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq .baseRefOid)"
printf 'BASE=%s\nHEAD=%s\n' "$base" "$head"
printf '\n--- complete PR files ---\n'
gh pr view "$pr" --repo "$repo" --json files --jq '.files[] | {path, additions, deletions}' || true
printf '\n--- complete PR diff ---\n'
git diff --no-ext-diff --find-renames=0 "$base" "$head" -- \
.jules/bolt.md \
CHANGELOG.md \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py
printf '\n--- changed file contents ---\n'
for file in \
.jules/bolt.md \
CHANGELOG.md \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py
do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '\n--- MMLE backend dispatch and EAP usage context ---\n'
rg -n -C 5 --glob '*.py' \
'fit_mmle_2pl|_fit_mmle_2pl|posterior\s*@\s*nodes|posterior\s*\*\s*nodes|gauss_hermite_nodes|rust|Rust' \
python tests
printf '\n--- test collection references ---\n'
rg -n -C 3 --glob '*.py' \
'test_one_iteration_eap_matches_independent_weighted_sum_reference|test_eap_projection_retains_the_allocation_bounded_matmul_path|fit_mmle_2pl' \
testsLength of output: 182781 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr=549
head='12fc519ca798c8400840f04b3b19c07754ad7dfe'
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq .baseRefOid)"
files=(
.jules/bolt.md
CHANGELOG.md
docs/changelog.d/mmle-fallback-eap-matmul.md
docs/doctoring/mmle-fallback-eap-matmul.md
python/fast_mlsirm/estimators/mmle.py
tests/test_mmle_fallback_eap_matmul.py
)
printf '%s\n' '--- PR file list ---'
gh pr view "$pr" --repo "$repo" --json files --jq '.files[] | "\(.path) +\(.additions) -\(.deletions)"'
for file in "${files[@]}"; do
printf '\n--- DIFF: %s ---\n' "$file"
git diff --no-ext-diff --find-renames=0 "$base" "$head" -- "$file"
done
printf '\n--- MMLE fallback source ---\n'
cat -n python/fast_mlsirm/estimators/mmle.py
printf '\n--- new EAP test ---\n'
cat -n tests/test_mmle_fallback_eap_matmul.py
printf '\n--- production dispatch boundary ---\n'
sed -n '180,255p' python/fast_mlsirm/fit.py | cat -n
printf '\n--- EAP-pattern occurrences in MMLE source and test ---\n'
rg -n -C 2 'posterior|nodes|theta\s*=|matmul|@' \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.pyLength of output: 36088
I verified the six-file diff. The NumPy fallback uses The Rust The current-head Python, Rust, GPU, fuzz, package, SAST, security, and Strix checks report success. No unresolved review thread was present. You are interacting with an AI system. |
There was a problem hiding this comment.
Pull request overview
OpenCode cannot approve yet because required coverage evidence did not pass.
Review outcome
1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
-
Problem: The required coverage-evidence job result was
failure, so OpenCode cannot establish approval sufficiency for this head. -
Root cause: Automated approval is only valid when the same-head coverage-evidence job proves supported repository test suites passed and configured docstring gates passed or were advisory, or reports not applicable because no supported source files or package manifests exist. Missing, failed, skipped, unavailable, or unsupported-tooling test evidence is a blocker.
-
Fix: Install or configure the repository test/docstring evidence tooling when source files or package manifests exist, rerun the current-head coverage-evidence job, and approve only after it reports
successwith required evidence or explicit no-source not-applicable evidence. -
Regression test: Keep the approval branch checking
needs.coverage-evidence.result == successbefore posting APPROVE, and publish REQUEST_CHANGES when coverage-evidence blocker states such as cancelled, skipped, failed, unsupported-tooling, or below-100 evidence are present. -
Result: REQUEST_CHANGES
-
Reason: coverage-evidence result was
failure, so required test/docstring evidence was not proven for current head12fc519ca798c8400840f04b3b19c07754ad7dfe. -
Head SHA:
12fc519ca798c8400840f04b3b19c07754ad7dfe -
Workflow run: 31002982024
-
Workflow attempt: 1
Coverage evidence
Coverage evidence job did not run or did not publish coverage evidence.
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (3 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (3 files)"]
R1 --> V1["required checks"]
Evidence --> S2["Docs (2 files)"]
S2 --> I2["operator or user guidance"]
I2 --> R2["Review risk: Docs (2 files)"]
R2 --> V2["docs review"]
Evidence --> S3["Test: test_mmle_fallback_eap_matmul.py"]
S3 --> I3["regression suite"]
I3 --> R3["Review risk: Test: test_mmle_fallback_eap_matmul.py"]
R3 --> V3["targeted test run"]
OpenCode Review Overview
Pull request overviewOpenCode cannot approve yet because required coverage evidence did not pass. Review outcome1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
Coverage evidenceCoverage evidence job did not run or did not publish coverage evidence. Changed-File Evidence Mapflowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (2 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (2 files)"]
R1 --> V1["required checks"]
Evidence --> S2["Docs (2 files)"]
S2 --> I2["operator or user guidance"]
I2 --> R2["Review risk: Docs (2 files)"]
R2 --> V2["docs review"]
Evidence --> S3["Test: test_mmle_fallback_eap_matmul.py"]
S3 --> I3["regression suite"]
I3 --> R3["Review risk: Test: test_mmle_fallback_eap_matmul.py"]
R3 --> V3["targeted test run"]
|
|
@coderabbitai review @opencode-agent @cwl-noema-review Review exact current head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='12fc519ca798c8400840f04b3b19c07754ad7dfe'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq .baseRefOid)"
printf '%s\n' "--- exact head ---"
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' "--- complete PR diff ---"
git diff --no-ext-diff --find-renames=0 "$base" "$expected" -- \
.jules/bolt.md \
CHANGELOG.md \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py
printf '%s\n' "--- changed source and test ---"
cat -n python/fast_mlsirm/estimators/mmle.py
cat -n tests/test_mmle_fallback_eap_matmul.py
printf '%s\n' "--- production MMLE dispatch ---"
fd -t f '^fit\.py$' python -x sed -n '180,270p' {} \; | cat -n
printf '%s\n' "--- exact-head PR checks and reviews ---"
gh pr view "$pr" --repo "$repo" \
--json headRefOid,reviewDecision,reviews,statusCheckRollup \
--jq '{
headRefOid,
reviewDecision,
reviews: [.reviews[] | {author: .author.login, state, commit: .commit.oid, submittedAt}],
checks: [.statusCheckRollup[] | {name, status, conclusion, detailsUrl}]
}'
printf '%s\n' "--- unresolved review threads ---"
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } path line originalLine body }
}
}
}
}
}
}' --jq '
.data.repository.pullRequest.reviewThreads.nodes[]
| select(.isResolved == false)
| {isOutdated, comments: [.comments.nodes[] | {author:.author.login, commit:.commit.oid, path, line, originalLine, body}]}'Length of output: 38103
I verified these conditions:
Approval requires a separate top-level You are interacting with an AI system. |
|
The current OpenCode ContextualWisdomLab/.github#784 tracks the fail-closed workflow repair, and draft central PR #789 provides the bounded failure classifier plus exact-head native peer-check verifier at 100% focused statement/branch coverage. No test is skipped and no branch protection is bypassed. Auto-merge remains enabled but cannot act until the central workflow integration and a fresh exact-head independent approval succeed. |
|
@coderabbitai review @cwl-noema-review Review exact current head |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='fe48aef717cae331ffb6c567931ce646f6de1774'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact head ---'
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' '--- complete PR file list and diff stat ---'
gh pr view "$pr" --repo "$repo" --json files \
--jq '.files[] | "\(.path) +\(.additions) -\(.deletions)"'
git diff --no-ext-diff --find-renames=0 --stat "$base" "$expected" --
printf '%s\n' '--- complete PR diff ---'
git diff --no-ext-diff --find-renames=0 "$base" "$expected" --
printf '%s\n' '--- source and test outlines ---'
ast-grep outline python/fast_mlsirm/estimators/mmle.py --items all --view expanded
ast-grep outline tests/test_mmle_fallback_eap_matmul.py --items all --view expanded
printf '%s\n' '--- EAP source and parity test ---'
sed -n '1,320p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,360p' tests/test_mmle_fallback_eap_matmul.py | cat -n
printf '%s\n' '--- production MMLE dispatch ---'
fd -t f '^fit\.py$' python -x sed -n '180,280p' {} \; | cat -n
printf '%s\n' '--- changed documentation ---'
for file in CHANGELOG.md docs/changelog.d/mmle-fallback-eap-matmul.md docs/doctoring/mmle-fallback-eap-matmul.md; do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '%s\n' '--- EAP pattern checks ---'
rg -n -C 3 --glob '*.py' \
'posterior\s*@\s*nodes|posterior\s*\*\s*nodes|fit_mmle_2pl|_fit_mmle_2pl' \
python tests
printf '%s\n' '--- exact-head checks and reviews ---'
gh pr view "$pr" --repo "$repo" \
--json headRefOid,reviewDecision,reviews,statusCheckRollup \
--jq '{
headRefOid,
reviewDecision,
reviews: [.reviews[] | {author: .author.login, state, commit: .commit.oid, submittedAt}],
checks: [.statusCheckRollup[] | {name, status, conclusion, detailsUrl}]
}'
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } path line originalLine body }
}
}
}
}
}
}' --jq '
.data.repository.pullRequest.reviewThreads.nodes[]
| select(.isResolved == false)
| {isOutdated, comments: [.comments.nodes[] | {author:.author.login, commit:.commit.oid, path, line, originalLine, body}]}'Length of output: 202733 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
prior='12fc519ca798c8400840f04b3b19c07754ad7dfe'
current='fe48aef717cae331ffb6c567931ce646f6de1774'
printf '%s\n' '--- delta from prior reviewed head ---'
git diff --no-ext-diff --find-renames=0 --name-status "$prior" "$current"
git diff --no-ext-diff --find-renames=0 "$prior" "$current" --
printf '%s\n' '--- focused parity fixture ---'
sed -n '1,130p' tests/test_mmle_fallback_eap_matmul.py | cat -n
printf '%s\n' '--- focused fallback EAP implementation ---'
sed -n '150,205p' python/fast_mlsirm/estimators/mmle.py | cat -n
printf '%s\n' '--- named workflow run SHA bindings ---'
for run in 31077507993 31077507917 31077507913; do
gh run view "$run" --repo "$repo" \
--json databaseId,headSha,name,status,conclusion,event,workflowName \
--jq '{databaseId, headSha, workflowName, name, event, status, conclusion}'
done
printf '%s\n' '--- current exact-head checks with successful conclusions ---'
gh pr view 549 --repo "$repo" --json headRefOid,statusCheckRollup --jq \
'{headRefOid, successful: [.statusCheckRollup[] | select(.conclusion == "SUCCESS") | .name]}'
printf '%s\n' '--- current-head open review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number=549 -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
comments(first:20) { nodes { commit { oid } } }
}
}
}
}
}' --jq --arg current "$current" \
'[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 9038 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
current='fe48aef717cae331ffb6c567931ce646f6de1774'
printf '%s\n' '--- exact workflow-run bindings ---'
for run in 31077507993 31077507917 31077507913; do
gh api "repos/$repo/actions/runs/$run" --jq \
'{id, name, display_title, event, head_sha, status, conclusion, html_url}'
done
printf '%s\n' '--- unresolved review-thread count ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number=549 -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes { isResolved isOutdated }
}
}
}
}' --jq \
'[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'
printf '%s\n' '--- exact current PR head ---'
gh pr view 549 --repo "$repo" --json headRefOid --jq '.headRefOid'Length of output: 2164
I verified the requested scope:
I did not mutate the branch or merge the PR.
|
There was a problem hiding this comment.
Pull request overview
OpenCode cannot approve yet because required coverage evidence did not pass.
Review outcome
1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
-
Problem: The required coverage-evidence job result was
failure, so OpenCode cannot establish approval sufficiency for this head. -
Root cause: Automated approval is only valid when the same-head coverage-evidence job proves supported repository test suites passed and configured docstring gates passed or were advisory, or reports not applicable because no supported source files or package manifests exist. Missing, failed, skipped, unavailable, or unsupported-tooling test evidence is a blocker.
-
Fix: Install or configure the repository test/docstring evidence tooling when source files or package manifests exist, rerun the current-head coverage-evidence job, and approve only after it reports
successwith required evidence or explicit no-source not-applicable evidence. -
Regression test: Keep the approval branch checking
needs.coverage-evidence.result == successbefore posting APPROVE, and publish REQUEST_CHANGES when coverage-evidence blocker states such as cancelled, skipped, failed, unsupported-tooling, or below-100 evidence are present. -
Result: REQUEST_CHANGES
-
Reason: coverage-evidence result was
failure, so required test/docstring evidence was not proven for current headfe48aef717cae331ffb6c567931ce646f6de1774. -
Head SHA:
fe48aef717cae331ffb6c567931ce646f6de1774 -
Workflow run: 31080795209
-
Workflow attempt: 1
Coverage evidence
Coverage evidence job did not run or did not publish coverage evidence.
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (2 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (2 files)"]
R1 --> V1["required checks"]
Evidence --> S2["Docs (2 files)"]
S2 --> I2["operator or user guidance"]
I2 --> R2["Review risk: Docs (2 files)"]
R2 --> V2["docs review"]
Evidence --> S3["Test: test_mmle_fallback_eap_matmul.py"]
S3 --> I3["regression suite"]
I3 --> R3["Review risk: Test: test_mmle_fallback_eap_matmul.py"]
R3 --> V3["targeted test run"]
|
@opencode-agent @cwl-noema-review Final independent exact-head review requested for |
|
@opencode-agent @cwl-noema-review @coderabbitai review Re-run the independent review on exact head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='fe48aef717cae331ffb6c567931ce646f6de1774'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact head ---'
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' '--- complete PR file list and diff ---'
gh pr view "$pr" --repo "$repo" --json files --jq '.files[] | {path, additions, deletions}'
git diff --no-ext-diff --find-renames=0 "$base" "$expected" --
printf '%s\n' '--- changed Python file outlines ---'
ast-grep outline python/fast_mlsirm/estimators/mmle.py --items all --view expanded
ast-grep outline tests/test_mmle_fallback_eap_matmul.py --items all --view expanded
printf '%s\n' '--- fallback implementation and focused fixture ---'
sed -n '1,280p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,360p' tests/test_mmle_fallback_eap_matmul.py | cat -n
printf '%s\n' '--- production dispatch ---'
fd -t f '^fit\.py$' python -x sed -n '180,290p' {} \; | cat -n
printf '%s\n' '--- documentation and changelog ---'
for file in CHANGELOG.md docs/changelog.d/mmle-fallback-eap-matmul.md docs/doctoring/mmle-fallback-eap-matmul.md; do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '%s\n' '--- EAP projection and dispatch references ---'
rg -n -C 4 --glob '*.py' \
'posterior\s*@\s*nodes|posterior\s*\*\s*nodes|fit_mmle_2pl|_fit_mmle_2pl|fast_mlsirm\._core' \
python tests
printf '%s\n' '--- named exact-head workflow runs ---'
for run in 31077507993 31077507917 31077507913; do
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,workflow_id,name,display_title,event,head_sha,status,conclusion,html_url}'
done
printf '%s\n' '--- current PR checks and reviews ---'
gh pr view "$pr" --repo "$repo" --json headRefOid,reviewDecision,reviews,statusCheckRollup \
--jq '{headRefOid,reviewDecision,reviews:[.reviews[]|{author:.author.login,state,commit:.commit.oid,submittedAt}],checks:[.statusCheckRollup[]|{name,status,conclusion,detailsUrl}]}'
printf '%s\n' '--- current workflow files mentioning coverage, PyO3, native, or central verification ---'
rg -n -i -C 3 'coverage|pyo3|native|central|peer.check|docstring' .github 2>/dev/null || true
printf '%s\n' '--- recent exact-head workflow runs ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq \
'.workflow_runs[] | {id,name,display_title,event,status,conclusion,workflow_id,html_url}'
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } path line originalLine body }
}
}
}
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)]'Length of output: 203207 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
run='31077507156'
printf '%s\n' '--- focused PR diff ---'
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
git diff --no-ext-diff --find-renames=0 "$base" "$head" -- \
CHANGELOG.md \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py
printf '%s\n' '--- current-head review comments ---'
gh api "repos/$repo/pulls/$pr/reviews" --jq \
'.[] | select(.commit_id == "'"$head"'") | {id,user:.user.login,state,submitted_at,body}'
printf '%s\n' '--- review comments attached to current head ---'
gh api "repos/$repo/pulls/$pr/comments?per_page=100" --jq \
'.[] | select(.commit_id == "'"$head"'") | {user:.user.login,path,line,created_at,body}'
printf '%s\n' '--- required OpenCode workflow jobs ---'
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,started_at,completed_at,html_url}'
printf '%s\n' '--- selected coverage and review job logs ---'
for job in 92538698234 92538724028 92538742016; do
printf '\n### job=%s\n' "$job"
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null \
| rg -n -i -C 3 \
'coverage|docstring|pyo3|native|peer|exact.head|head.sha|pass|fail|error|summary|100%' \
|| true
done
printf '%s\n' '--- workflow files that define the required evidence steps ---'
fd -t f . .github/workflows -x sh -c \
'if rg -q -i "coverage-source-tree|coverage-evidence|opencode-review|native peer|docstring" "$1"; then echo "### $1"; rg -n -i -C 4 "coverage-source-tree|coverage-evidence|opencode-review|native peer|docstring" "$1"; fi' sh {}
printf '%s\n' '--- changed-file test and docstrings checks ---'
rg -n -C 3 --glob '*.py' \
'def test_one_iteration_eap_matches_independent_weighted_sum_reference|def test_eap_projection_retains_the_allocation_bounded_matmul_path|"""' \
tests/test_mmle_fallback_eap_matmul.py python/fast_mlsirm/estimators/mmle.pyLength of output: 18431 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
printf '%s\n' '--- cited workflow run metadata ---'
for run in 31080795209 31077507156; do
printf '\n### run=%s\n' "$run"
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,name,display_title,event,head_sha,head_branch,status,conclusion,run_attempt,created_at,updated_at,html_url}'
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,started_at,completed_at,html_url}'
done
printf '%s\n' '--- exact-head workflow inventory ---'
gh api "repos/$repo/contents/.github/workflows?ref=$head" --jq \
'.[] | {name,path,sha,type}'
printf '%s\n' '--- exact-head workflow definitions with evidence terms ---'
for path in $(gh api "repos/$repo/contents/.github/workflows?ref=$head" --jq -r '.[].path'); do
content=$(gh api "repos/$repo/contents/$path?ref=$head" --jq -r '.content' | base64 -d)
if printf '%s' "$content" | rg -q -i 'coverage-evidence|coverage-source-tree|opencode-review|docstring|native peer'; then
printf '\n### %s\n' "$path"
printf '%s' "$content" | rg -n -i -C 8 \
'coverage-evidence|coverage-source-tree|opencode-review|docstring|native peer|coverage'
fi
done
printf '%s\n' '--- run-level annotations and artifacts ---'
for run in 31080795209 31077507156; do
printf '\n### run=%s artifacts\n' "$run"
gh api "repos/$repo/actions/runs/$run/artifacts?per_page=100" --jq \
'.artifacts[] | {id,name,size_in_bytes,expired,created_at}'
doneLength of output: 2078 🏁 Script executed: #!/bin/bash
set -u -o pipefail
repo='ContextualWisdomLab/fast-mlsirm'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
run='31077507156'
job='92538724028'
printf '%s\n' '--- accessible exact-head coverage job ---'
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,started_at,completed_at,steps,html_url}' || true
printf '%s\n' '--- exact-head workflow file inventory ---'
workflow_json="$(gh api "repos/$repo/contents/.github/workflows?ref=$head" 2>&1)" || {
printf '%s\n' "$workflow_json"
exit 0
}
printf '%s\n' "$workflow_json" | jq -r '.[] | "\(.path)\t\(.sha)"'
printf '%s\n' '--- workflows containing coverage evidence controls ---'
printf '%s\n' "$workflow_json" | jq -r '.[].path' | while IFS= read -r path; do
content="$(gh api "repos/$repo/contents/$path?ref=$head" --jq -r '.content' 2>/dev/null | base64 -d)" || continue
if printf '%s' "$content" | rg -q -i 'coverage-evidence|coverage-source-tree|opencode-review|docstring|native'; then
printf '\n### %s\n' "$path"
printf '%s' "$content" | rg -n -i -C 6 \
'coverage-evidence|coverage-source-tree|opencode-review|docstring|native|pytest|coverage'
fi
done
printf '%s\n' '--- exact-head required OpenCode workflow and artifact metadata ---'
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,head_sha,event,status,conclusion,workflow_id,run_attempt,created_at,updated_at}' || true
gh api "repos/$repo/actions/runs/$run/artifacts?per_page=100" --jq \
'.artifacts[] | {id,name,size_in_bytes,expired,created_at}' || true
printf '%s\n' '--- exact-head review decision and unresolved threads ---'
gh pr view 549 --repo "$repo" --json headRefOid,reviewDecision --jq '{headRefOid,reviewDecision}' || true
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number=549 -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length' || trueLength of output: 4204
The implementation review found no defect in the EAP change. The fallback uses However, the current exact-head
The job does not run tests, docstring checks, PyO3/native checks, or a peer-evidence verifier. Therefore, its successful status cannot establish the requested current-head coverage/docstring evidence. The PR also remains in I cannot approve until the central workflow runs the required checks against You are interacting with an AI system. |
|
@coderabbitai review @opencode-agent @cwl-noema-review Re-run independent review on exact head |
|
Exact-current-head review requested for @opencode-agent |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='fe48aef717cae331ffb6c567931ce646f6de1774'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact head ---'
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' '--- complete PR diff ---'
git diff --no-ext-diff --find-renames=0 "$base" "$expected" --
printf '%s\n' '--- changed implementation, tests, and documentation ---'
ast-grep outline python/fast_mlsirm/estimators/mmle.py --items all --view expanded
ast-grep outline tests/test_mmle_fallback_eap_matmul.py --items all --view expanded
sed -n '1,300p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,380p' tests/test_mmle_fallback_eap_matmul.py | cat -n
for file in CHANGELOG.md docs/changelog.d/mmle-fallback-eap-matmul.md docs/doctoring/mmle-fallback-eap-matmul.md; do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '%s\n' '--- Rust-primary production dispatch ---'
fd -t f '^fit\.py$' python -x sed -n '180,300p' {} \; | cat -n
printf '%s\n' '--- current exact-head workflow inventory ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq \
'.workflow_runs[] | {id,name,display_title,event,status,conclusion,workflow_id,run_attempt,created_at,updated_at,html_url}'
printf '%s\n' '--- current PR checks and review decision ---'
gh pr view "$pr" --repo "$repo" --json headRefOid,reviewDecision,statusCheckRollup,reviews --jq \
'{headRefOid,reviewDecision,checks:[.statusCheckRollup[]|{name,status,conclusion,detailsUrl}],reviews:[.reviews[]|{author:.author.login,state,commit:.commit.oid,submittedAt}]}'
printf '%s\n' '--- jobs and relevant logs for exact-head central/review workflows ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq -r \
'.workflow_runs[] | select((.name+" "+.display_title|ascii_downcase|test("opencode|coverage|review|evidence|central"))) | .id' \
| while IFS= read -r run; do
printf '\n### run=%s metadata\n' "$run"
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,name,display_title,head_sha,status,conclusion,workflow_id,run_attempt,html_url}'
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,started_at,completed_at,html_url}'
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq -r \
'.jobs[] | select((.name|ascii_downcase|test("coverage|docstring|native|pyo3|peer|evidence"))) | .id' \
| while IFS= read -r job; do
printf '\n#### job=%s\n' "$job"
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,steps,html_url}'
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null \
| rg -n -i -C 4 'coverage|docstring|pyo3|native|peer|exact.head|head.sha|pytest|pass|fail|error|100%' \
|| true
done
done
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved isOutdated } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 203582 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
run='31077507156'
printf '%s\n' '--- focused implementation and test diff ---'
base="$(gh pr view 549 --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
git diff --no-ext-diff --find-renames=0 "$base" "$head" -- \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md
printf '%s\n' '--- focused source and test regions ---'
sed -n '150,215p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,220p' tests/test_mmle_fallback_eap_matmul.py | cat -n
printf '%s\n' '--- exact-head central workflow metadata and artifacts ---'
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,name,head_sha,status,conclusion,workflow_id,run_attempt,created_at,updated_at,html_url}'
gh api "repos/$repo/actions/runs/$run/artifacts?per_page=100" --jq \
'.artifacts[] | {id,name,size_in_bytes,expired,created_at}'
printf '%s\n' '--- exact job definitions and logs ---'
for job in 92538698234 92538724028 92538742016; do
printf '\n### job=%s metadata\n' "$job"
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,started_at,completed_at,steps,html_url}'
printf '### job=%s log excerpts\n' "$job"
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null \
| rg -n -i -C 5 \
'coverage|docstring|pyo3|native|peer|exact.head|head.sha|pytest|pass|fail|error|placeholder|preserves|without executing|summary|100%' \
|| true
done
printf '%s\n' '--- workflow definition at the reviewed SHA ---'
gh api "repos/$repo/actions/workflows/303795243?ref=$head" --jq \
'{id,name,path,state}' || true
workflow_path="$(gh api "repos/$repo/actions/workflows/303795243" --jq -r '.path')"
printf 'PATH=%s\n' "$workflow_path"
gh api "repos/$repo/contents/$workflow_path?ref=$head" --jq -r '.content' \
| base64 -d \
| rg -n -i -C 8 'coverage-source-tree|coverage-evidence|docstring|native|pyo3|peer|opencode-review'
printf '%s\n' '--- all runs later than the original central run on this immutable SHA ---'
gh api "repos/$repo/actions/runs?head_sha=$head&per_page=100" --jq \
'[.workflow_runs[] | {id,name,created_at,updated_at,status,conclusion}] | sort_by(.created_at)'
printf '%s\n' '--- unresolved thread count ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number=549 -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 18000
The implementation has no actionable defect. The fallback uses The Rust primary boundary remains intact. However, the required central evidence has not changed on this exact head:
These jobs do not execute or publish coverage, docstring, PyO3/native, or peer-evidence results for PR I cannot submit approval until a fresh exact-head central workflow runs the required checks and publishes verifiable successful evidence. You are interacting with an AI system. |
There was a problem hiding this comment.
Pull request overview
OpenCode cannot approve yet because required coverage evidence did not pass.
Review outcome
1. HIGH .github/workflows/opencode-review.yml:1 - Coverage evidence did not prove required test/docstring evidence
-
Problem: The required coverage-evidence job result was
failure, so OpenCode cannot establish approval sufficiency for this head. -
Root cause: Automated approval is only valid when the same-head coverage-evidence job proves supported repository test suites passed and configured docstring gates passed or were advisory, or reports not applicable because no supported source files or package manifests exist. Missing, failed, skipped, unavailable, or unsupported-tooling test evidence is a blocker.
-
Fix: Install or configure the repository test/docstring evidence tooling when source files or package manifests exist, rerun the current-head coverage-evidence job, and approve only after it reports
successwith required evidence or explicit no-source not-applicable evidence. -
Regression test: Keep the approval branch checking
needs.coverage-evidence.result == successbefore posting APPROVE, and publish REQUEST_CHANGES when coverage-evidence blocker states such as cancelled, skipped, failed, unsupported-tooling, or below-100 evidence are present. -
Result: REQUEST_CHANGES
-
Reason: coverage-evidence result was
failure, so required test/docstring evidence was not proven for current headfe48aef717cae331ffb6c567931ce646f6de1774. -
Head SHA:
fe48aef717cae331ffb6c567931ce646f6de1774 -
Workflow run: 31080795209
-
Workflow attempt: 2
Coverage evidence
Coverage evidence job did not run or did not publish coverage evidence.
Changed-File Evidence Map
flowchart LR
PR["PR changed files"] --> Evidence["OpenCode bounded evidence"]
Evidence --> S1["Changed file (2 files)"]
S1 --> I1["repository behavior"]
I1 --> R1["Review risk: Changed file (2 files)"]
R1 --> V1["required checks"]
Evidence --> S2["Docs (2 files)"]
S2 --> I2["operator or user guidance"]
I2 --> R2["Review risk: Docs (2 files)"]
R2 --> V2["docs review"]
Evidence --> S3["Test: test_mmle_fallback_eap_matmul.py"]
S3 --> I3["regression suite"]
I3 --> R3["Review risk: Test: test_mmle_fallback_eap_matmul.py"]
R3 --> V3["targeted test run"]
|
@opencode-agent @cwl-noema-review Re-run the independent exact-head review for |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='fe48aef717cae331ffb6c567931ce646f6de1774'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact head ---'
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' '--- complete changed-file list and diff ---'
gh pr view "$pr" --repo "$repo" --json files --jq '.files[] | {path,additions,deletions}'
git diff --no-ext-diff --find-renames=0 "$base" "$expected" --
printf '%s\n' '--- implementation and regression-test outlines ---'
ast-grep outline python/fast_mlsirm/estimators/mmle.py --items all --view expanded
ast-grep outline tests/test_mmle_fallback_eap_matmul.py --items all --view expanded
printf '%s\n' '--- focused source, test, dispatch, and documentation ---'
sed -n '140,225p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,260p' tests/test_mmle_fallback_eap_matmul.py | cat -n
sed -n '180,290p' python/fast_mlsirm/fit.py | cat -n
for file in CHANGELOG.md docs/changelog.d/mmle-fallback-eap-matmul.md docs/doctoring/mmle-fallback-eap-matmul.md; do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '%s\n' '--- current-head workflow runs and central evidence jobs ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq \
'.workflow_runs[] | {id,name,display_title,event,status,conclusion,workflow_id,run_attempt,created_at,updated_at,html_url}'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq -r \
'.workflow_runs[] | select((.name+" "+.display_title|ascii_downcase|test("opencode|coverage|review|evidence|central"))) | .id' \
| while IFS= read -r run; do
printf '\n### run=%s\n' "$run"
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,steps,html_url}'
done
printf '%s\n' '--- current PR state and unresolved threads ---'
gh pr view "$pr" --repo "$repo" --json headRefOid,reviewDecision,statusCheckRollup,reviews --jq \
'{headRefOid,reviewDecision,checks:[.statusCheckRollup[]|{name,status,conclusion}],reviews:[.reviews[]|{author:.author.login,state,commit:.commit.oid,submittedAt}]}'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved isOutdated } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 202831 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact head and focused diff ---'
git rev-parse HEAD
git diff --no-ext-diff --find-renames=0 "$base" "$head" -- \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md
printf '%s\n' '--- fallback implementation ---'
sed -n '150,215p' python/fast_mlsirm/estimators/mmle.py | cat -n
printf '%s\n' '--- parity and allocation-contract test ---'
sed -n '1,240p' tests/test_mmle_fallback_eap_matmul.py | cat -n
printf '%s\n' '--- Rust-primary dispatch ---'
sed -n '190,275p' python/fast_mlsirm/fit.py | cat -n
printf '%s\n' '--- targeted changelog and doctoring ---'
cat -n docs/changelog.d/mmle-fallback-eap-matmul.md
cat -n docs/doctoring/mmle-fallback-eap-matmul.md
printf '%s\n' '--- central workflow jobs ---'
for job in 92538698234 92538724028 92538742016; do
printf '\n### job=%s metadata\n' "$job"
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,steps,html_url}'
printf '### job=%s relevant log lines\n' "$job"
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null | \
rg -n -i -C 2 'coverage|docstring|pyo3|native|peer|pytest|placeholder|delegated|without executing|preserves|pass|fail|error' \
|| true
done
printf '%s\n' '--- PR review state and unresolved thread count ---'
gh pr view "$pr" --repo "$repo" --json headRefOid,reviewDecision --jq '{headRefOid,reviewDecision}'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 23535
The implementation has no actionable defect.
However, the exact-head central evidence remains non-substantive:
These jobs do not run or publish coverage, docstring, PyO3/native, or peer-evidence results for this head. The PR remains I cannot approve until a fresh central workflow executes and publishes verifiable exact-head evidence. You are interacting with an AI system. |
|
@coderabbitai review Please review exact current head |
|
Tip For best results, initiate chat on the files or code changes. 🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
expected='fe48aef717cae331ffb6c567931ce646f6de1774'
actual="$(git rev-parse HEAD)"
base="$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq '.baseRefOid')"
printf '%s\n' '--- exact revision ---'
printf 'HEAD=%s\nEXPECTED=%s\nBASE=%s\n' "$actual" "$expected" "$base"
test "$actual" = "$expected"
printf '%s\n' '--- PR files and complete diff ---'
gh pr view "$pr" --repo "$repo" --json files --jq '.files[] | {path, additions, deletions}'
git diff --no-ext-diff --find-renames=0 "$base" "$expected" --
printf '%s\n' '--- changed Python outlines ---'
ast-grep outline python/fast_mlsirm/estimators/mmle.py --items all --view expanded
ast-grep outline tests/test_mmle_fallback_eap_matmul.py --items all --view expanded
printf '%s\n' '--- implementation, regression test, dispatch, and documentation ---'
sed -n '130,235p' python/fast_mlsirm/estimators/mmle.py | cat -n
sed -n '1,280p' tests/test_mmle_fallback_eap_matmul.py | cat -n
sed -n '180,300p' python/fast_mlsirm/fit.py | cat -n
for file in CHANGELOG.md docs/changelog.d/mmle-fallback-eap-matmul.md docs/doctoring/mmle-fallback-eap-matmul.md; do
printf '\n### %s\n' "$file"
cat -n "$file"
done
printf '%s\n' '--- projection and dispatch references ---'
rg -n -C 4 --glob '*.py' \
'posterior\s*@\s*nodes|posterior\s*\*\s*nodes|fit_mmle_2pl|_fit_mmle_2pl|fast_mlsirm\._core' \
python tests
printf '%s\n' '--- exact-head workflow runs ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq \
'.workflow_runs[] | {id,name,display_title,event,status,conclusion,workflow_id,run_attempt,created_at,updated_at,html_url}'
printf '%s\n' '--- current PR state, checks, and reviews ---'
gh pr view "$pr" --repo "$repo" --json headRefOid,reviewDecision,statusCheckRollup,reviews --jq \
'{headRefOid, reviewDecision, checks:[.statusCheckRollup[]|{name,status,conclusion,detailsUrl}], reviews:[.reviews[]|{author:.author.login,state,commit:.commit.oid,submittedAt}]}'
printf '%s\n' '--- central/evidence job metadata and relevant log excerpts ---'
gh api "repos/$repo/actions/runs?head_sha=$expected&per_page=100" --jq -r \
'.workflow_runs[] | select((.name+" "+.display_title|ascii_downcase|test("opencode|coverage|review|evidence|central"))) | .id' \
| while IFS= read -r run; do
printf '\n### run=%s\n' "$run"
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,steps,html_url}'
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq -r \
'.jobs[] | select((.name|ascii_downcase|test("coverage|docstring|native|pyo3|peer|evidence"))) | .id' \
| while IFS= read -r job; do
printf '\n#### job=%s\n' "$job"
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null | \
rg -n -i -C 3 'coverage|docstring|pyo3|native|peer|exact.head|head.sha|pytest|pass|fail|error|delegated|without executing|preserves' \
|| true
done
done
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes { isResolved isOutdated }
}
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 203711 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='549'
head='fe48aef717cae331ffb6c567931ce646f6de1774'
printf '%s\n' '--- exact checked-out head ---'
git rev-parse HEAD
printf '%s\n' '--- focused changed source and test ---'
git diff --no-ext-diff --find-renames=0 "$(gh pr view "$pr" --repo "$repo" --json baseRefOid --jq .baseRefOid)" "$head" -- \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md
printf '%s\n' '--- exact central-job records ---'
for job in 92538698234 92538724028 92538742016; do
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,started_at,completed_at,steps,html_url}'
done
printf '%s\n' '--- exact central-job log evidence ---'
for job in 92538698234 92538724028 92538742016; do
printf '\n### job=%s\n' "$job"
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null | \
rg -n -i -C 4 \
'coverage|docstring|pyo3|native|peer|exact.head|head.sha|pytest|pass|fail|error|delegated|without executing|preserves|placeholder' \
|| true
done
printf '%s\n' '--- named run SHA bindings ---'
for run in 31077507993 31077507917 31077507913 31077507156; do
gh api "repos/$repo/actions/runs/$run" --jq \
'{id,name,head_sha,event,status,conclusion,run_attempt,html_url}'
done
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } path line originalLine body }
}
}
}
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false) | {isOutdated, comments:[.comments.nodes[]|{author:.author.login,commit:.commit.oid,path,line,originalLine,body}]}]'Length of output: 13094
The NumPy fallback uses The regression test independently reconstructs the partially observed posterior. It evaluates the former weighted-sum equation. It requires The Rust The changelog and doctoring accurately describe the allocation boundary. The performance wording does not claim a universal speedup. The doctoring includes the requested references. CI, SAST Semgrep, and Security Scan succeeded on this exact head. No unresolved review thread exists. One release-gate finding remains. It is not a product-code finding. The central jobs I performed review only. I did not mutate, merge, approve, or bypass protection. You are interacting with an AI system. |
|
@jules Refresh branch |
|
@opencode-agent address The product change is fully reviewed, but protected Update this same maintainer-owned branch onto current |
|
@opencode-agent address The product change is already bounded and repository CI/Security/SAST were green on predecessor head |
|
@jules Apply the non-destructive current-main update requested in comment 5210605867. Preserve the exact one-line |
|
Closing the stale/diverged predecessor. PR #568 recreates the same reviewed one-line MMLE EAP projection, parity/source regressions, APA 7 doctoring, and authoritative fragment directly from current protected |
|
@opencode-agent review Re-evaluate the live exact current head under the repaired central coverage contract. Verify Rust remains the production path, the NumPy fallback matrix-vector EAP projection preserves the former weighted-sum result, allocation regression tests are meaningful, and no public contract changed. Submit a formal current-head verdict only; do not mutate or merge. |
🧩 Analysis chain🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
printf '%s\n' '--- candidate PR state ---'
for pr in 549 568; do
printf '\n### PR #%s\n' "$pr"
gh pr view "$pr" --repo "$repo" \
--json number,state,isDraft,url,headRefName,headRefOid,baseRefName,baseRefOid,mergeStateStatus,reviewDecision \
--jq '{number,state,isDraft,url,headRefName,headRefOid,baseRefName,baseRefOid,mergeStateStatus,reviewDecision}' \
|| true
done
printf '%s\n' '--- checked out revision ---'
git rev-parse HEAD
git status --short
printf '%s\n' '--- open PRs with relevant branches ---'
gh pr list --repo "$repo" --state open --limit 100 \
--json number,title,url,headRefName,headRefOid,baseRefName \
--jq '.[] | select(.headRefName | test("mmle|eap"; "i")) | {number,title,url,headRefName,headRefOid,baseRefName}'Length of output: 2113 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='568'
head='3669b3d5d4fe8443ce14e0c30f1fdeb30e47b4d4'
printf '%s\n' '--- exact PR state and changed files ---'
gh pr view "$pr" --repo "$repo" \
--json headRefOid,baseRefOid,files,statusCheckRollup,reviews,reviewDecision \
--jq '{
headRefOid, baseRefOid, reviewDecision,
files: [.files[] | {path,additions,deletions}],
checks: [.statusCheckRollup[] | {name,status,conclusion,detailsUrl}],
reviews: [.reviews[] | {author:.author.login,state,commit:.commit.oid,submittedAt}]
}'
printf '%s\n' '--- complete pull request diff ---'
gh pr diff "$pr" --repo "$repo" --color=never
printf '%s\n' '--- exact-head changed source, test, dispatch, and documents ---'
for path in \
python/fast_mlsirm/estimators/mmle.py \
tests/test_mmle_fallback_eap_matmul.py \
python/fast_mlsirm/fit.py \
CHANGELOG.md \
docs/changelog.d/mmle-fallback-eap-matmul.md \
docs/doctoring/mmle-fallback-eap-matmul.md
do
printf '\n### %s\n' "$path"
gh api "repos/$repo/contents/$path?ref=$head" --jq -r '.content' 2>/dev/null \
| base64 -d \
| cat -n \
|| printf '%s\n' '[not present at exact head]'
done
printf '%s\n' '--- exact-head workflow runs ---'
gh api "repos/$repo/actions/runs?head_sha=$head&per_page=100" --jq \
'.workflow_runs[] | {id,name,display_title,event,status,conclusion,workflow_id,run_attempt,created_at,updated_at,html_url}'
printf '%s\n' '--- central coverage, docstring, and native-evidence jobs ---'
gh api "repos/$repo/actions/runs?head_sha=$head&per_page=100" --jq -r \
'.workflow_runs[] | select((.name+" "+.display_title|ascii_downcase|test("opencode|coverage|review|evidence|central"))) | .id' \
| while IFS= read -r run; do
printf '\n### run=%s\n' "$run"
gh api "repos/$repo/actions/runs/$run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,steps,html_url}'
done
printf '%s\n' '--- unresolved review threads ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) {
nodes {
isResolved
isOutdated
comments(first:20) {
nodes { author { login } commit { oid } path line originalLine body }
}
}
}
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false) | {isOutdated,comments:[.comments.nodes[]|{author:.author.login,commit:.commit.oid,path,line,originalLine,body}]}]'Length of output: 21599 🏁 Script executed: #!/bin/bash
set -euo pipefail
repo='ContextualWisdomLab/fast-mlsirm'
pr='568'
head='3669b3d5d4fe8443ce14e0c30f1fdeb30e47b4d4'
ci_run='31142733383'
python_job='92755810371'
central_run='31142731916'
printf '%s\n' '--- failed exact-head Python CI job ---'
gh api "repos/$repo/actions/jobs/$python_job" --jq \
'{id,name,run_id,status,conclusion,started_at,completed_at,steps,html_url}'
gh api "repos/$repo/actions/jobs/$python_job/logs" 2>/dev/null | tail -n 500 || true
printf '%s\n' '--- exact-head CI workflow jobs ---'
gh api "repos/$repo/actions/runs/$ci_run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,steps,html_url}'
printf '%s\n' '--- repaired central workflow jobs and evidence logs ---'
gh api "repos/$repo/actions/runs/$central_run/jobs?per_page=100" --jq \
'.jobs[] | {id,name,status,conclusion,steps,html_url}'
for job in 92755828389 92755845137 92755862644; do
printf '\n### central job=%s\n' "$job"
gh api "repos/$repo/actions/jobs/$job" --jq \
'{id,name,run_id,status,conclusion,steps,html_url}'
gh api "repos/$repo/actions/jobs/$job/logs" 2>/dev/null | tail -n 500 || true
done
printf '%s\n' '--- exact-head production dispatch and public function signatures ---'
for path in python/fast_mlsirm/fit.py python/fast_mlsirm/estimators/mmle.py; do
printf '\n### %s\n' "$path"
curl -fsSL "https://raw.githubusercontent.com/$repo/$head/$path" \
| rg -n -C 5 'def fit_mmle_2pl|_fit_mmle_2pl|fast_mlsirm\._core|fit_mmle_2pl\(' \
|| true
done
printf '%s\n' '--- unresolved review-thread count ---'
gh api graphql -f owner='ContextualWisdomLab' -f name='fast-mlsirm' -F number="$pr" -f query='
query($owner:String!, $name:String!, $number:Int!) {
repository(owner:$owner,name:$name) {
pullRequest(number:$number) {
reviewThreads(first:100) { nodes { isResolved } }
}
}
}' --jq '[.data.repository.pullRequest.reviewThreads.nodes[] | select(.isResolved == false)] | length'Length of output: 22936
I found no product-code defect in the EAP projection change.
Two exact-head release gates block approval:
I performed review only. I did not modify, merge, or approve the pull request.
|
Purpose
Replace the automation-owned PR #547 with a maintainer-owned exact branch so review and validation evidence cannot be invalidated by later branch rewrites.
Change
(posterior * nodes[None, :]).sum(axis=1)with the equivalent matrix-vector productposterior @ nodesin the NumPy reference/fallback MMLE path;Verification
Performance depends on dimensions, layout, linked BLAS implementation, hardware, and runtime conditions. No universal speedup claim is made.
Supersedes #547 after this PR is open. No release is included.