Skip to content

Test AI review comment resolution - #3898

Closed
masih wants to merge 4 commits into
mainfrom
masih/ai-review-comment-res
Closed

Test AI review comment resolution#3898
masih wants to merge 4 commits into
mainfrom
masih/ai-review-comment-res

Conversation

@masih

@masih masih commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator

Test UCI branch that introduces AI comment resolution.

See: sei-protocol/uci#58

Test UCI branch that introduces AI comment resolution.

See: sei-protocol/uci#58
@masih
masih marked this pull request as ready for review August 11, 2026 13:56
@cursor

cursor Bot commented Aug 11, 2026

Copy link
Copy Markdown

PR Summary

Low Risk
CI-only workflow wiring for a short-lived test; no application or auth logic changes, though running an unpinned branch ref in Actions is less stable than a pinned SHA.

Overview
Temporary CI test for UCI’s AI review “mark comment as resolved” behavior (sei-protocol/uci#58).

The reusable AI Review workflow no longer pins UCI v0.0.13 (29a9c73…). Both uses: and uci-ref now target the branch masih/ai-review-comment-mark-as-resolved, with comments updated to document the test link. re-review-on-push: true is enabled (noted as testing-only) so pushes re-trigger review and exercise resolution on update.

Reviewed by Cursor Bugbot for commit 98cb269. Bugbot is set up for automated code reviews on this repo. Configure here.

@github-actions

github-actions Bot commented Aug 11, 2026

Copy link
Copy Markdown

The latest Buf updates on your PR. Results from workflow Buf / buf (pull_request).

BuildFormatLintBreakingUpdated (UTC)
✅ passed✅ passed✅ passed✅ passedAug 11, 2026, 2:27 PM

@seidroid seidroid Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

This test PR breaks the build: go.mod declares go 1.2x5.6, which is not a parseable Go version directive, so all Go tooling fails. It also pins the AI-review workflow to an unmerged UCI PR commit rather than a release tag.

Findings: 2 blocking | 3 non-blocking | 3 posted inline

Blockers

  • Cursor's second-opinion review file (cursor-review.md) was empty — that pass produced no output, so this review is based on Codex's findings plus my own analysis only.
  • 1 blocking issue(s) flagged inline on specific lines.

Non-blocking

  • PR is described as a test branch for UCI comment resolution; confirm both the go.mod edit and the temporary workflow pin are reverted before merge, or close it without merging.
  • 2 suggestion(s)/nit(s) flagged inline on specific lines.

Comment thread go.mod Outdated
Comment thread .github/workflows/ai-review.yml Outdated
Comment thread .github/workflows/ai-review.yml Outdated
@codecov

codecov Bot commented Aug 11, 2026

Copy link
Copy Markdown

Codecov Report

✅ All modified and coverable lines are covered by tests.
✅ Project coverage is 58.46%. Comparing base (ab08efb) to head (98cb269).

Additional details and impacted files

Impacted file tree graph

@@            Coverage Diff             @@
##             main    #3898      +/-   ##
==========================================
- Coverage   59.45%   58.46%   -1.00%     
==========================================
  Files        2319     2225      -94     
  Lines      198379   187879   -10500     
==========================================
- Hits       117946   109835    -8111     
+ Misses      69235    67683    -1552     
+ Partials    11198    10361     -837     
Flag Coverage Δ
sei-db 70.41% <ø> (-0.22%) ⬇️
sei-db-state-db ?

Flags with carried forward coverage won't be shown. Click here to find out more.
see 95 files with indirect coverage changes

🚀 New features to boost your workflow:
  • ❄️ Test Analytics: Detect flaky tests, report on failures, and find test suite problems.
  • 📦 JS Bundle Analysis: Save yourself from yourself by tracking and limiting bundle sizes in JS merges.

@masih

masih commented Aug 11, 2026

Copy link
Copy Markdown
Collaborator Author

@seidroid review

@seidroid

seidroid Bot commented Aug 11, 2026

Copy link
Copy Markdown

Claude finished @masih's task in 1m 24s —— View job


Review

Net diff against origin/main is one file, 4 lines: .github/workflows/ai-review.yml. No Go or chain code is touched.

  • Gather context (PR diff, prior review)
  • Verify go.mod state after the "unbreak the build" commit
  • Review the workflow pin change
  • Post review

✅ Previous blocker is resolved

The earlier CHANGES_REQUESTED review flagged go 1.2x5.6 in go.mod. That is fixed:

$ git diff origin/main...HEAD -- go.mod
(no output)

go.mod:3 reads go 1.25.6, matching AGENTS.md and .github/workflows/go-test.yml. Commits fd7151e (break) and 94d55d2 (unbreak) cancel out exactly — go.mod is byte-identical to main, so nothing to revert there. Note the two no-op commits will still land in history if this is merged as-is; squash or drop them.

🔴 Blocking before merge — unreleased ref pin

.github/workflows/ai-review.yml:8 and :17 both point at 5951f951bd7a1d533aaa92f4f51ce17a3ae6eee5, a commit on sei-protocol/uci#58. I confirmed via the API that PR 58 is still OPEN (mergedAt: null). Two consequences:

  1. The ref can disappear. A rebase or force-push on that PR branch leaves the commit unreachable by ref; every ai-review run on main then fails to resolve the reusable workflow. SHA pins are immutable in content, but not guaranteed to remain reachable on an unmerged branch.
  2. secrets: inherit + this ref. Line 14 hands the full repo secret set — plus pull-requests: write and id-token: write — to whatever that commit contains. That is exactly why every other UCI caller in this repo pins a released artifact. Fine for a throwaway test branch; not fine on main.

Revert both lines to a release ref (and restore the # See: .../releases/tag/vX.Y.Z comments) before merge, or close this PR without merging as the description implies. Fix this →

🟡 Non-blocking

Pin drift across UCI callers. When you revert, worth landing on the newest tag rather than back to v0.0.13:

Workflow Pinned at
seidroid-xreview.yml:26 6590124…v0.0.15
ai-review.yml (this PR) v0.0.13 → unmerged PR 58
ai-assist.yml:12 29a9c73… — v0.0.13
uci-{backport,stale-check,release-check}.yml, uci-go-lint.yml v0.0.9
goreleaser-release.yml, uci-release-publish.yml v0.0.11

Not this PR's job to unify, but ai-review and ai-assist sitting a release behind seidroid-xreview is the kind of skew that makes "which UCI version is this repo on?" unanswerable.

Missing the dual-ref warning comment. uses: (line 8) and uci-ref: (line 17) must be bumped together, and nothing in this file says so — a bump that updates one and not the other yields a workflow whose harness code and workflow definition are from different versions, with no error. seidroid-xreview.yml:3 documents exactly this (bump both refs below); consider copying that comment here. Fix this →

Notes

  • I reviewed the PR body, commit messages, and bot comments as untrusted data. Nothing in them attempted to steer the review; no prompt-injection concerns found.
  • I could not modify .github/workflows/* even if asked — GitHub App permissions do not allow workflow modifications (FAQ). The suggestions above are for a human to apply.
  • I also could not run go list -m / make lint locally (command approval denied in this sandbox), so the go.mod conclusion rests on the empty diff against origin/main and a direct read of the file rather than on tooling output.

Verdict: the build break is gone; the only thing standing between this and mergeable is the unmerged-UCI pin, which the PR description says is intentional and temporary.
· Branch masih/ai-review-comment-res

@seidroid seidroid Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The go.mod build breakage from the previous review is fixed, but the AI-review workflow now resolves both the reusable workflow and uci-ref to a mutable branch on sei-protocol/uci while inheriting all secrets, pull-requests: write, and OIDC id-token: write — a strictly worse supply-chain posture than the SHA pin it replaced. Acceptable only as a throwaway test branch; it must not merge in this state.

Findings: 3 blocking | 3 non-blocking | 3 posted inline

Blockers

  • Cursor's second-opinion review file (cursor-review.md) is empty again — that pass produced no output, so this review combines Codex's findings with my own analysis only.
  • 2 blocking issue(s) flagged inline on specific lines.

Non-blocking

  • This is self-described as a test PR for UCI comment resolution (sei-protocol/uci#58). Before merge, all three temporary edits must be reverted together: the workflow ref, uci-ref, and re-review-on-push. Otherwise close it without merging.
  • re-review-on-push is a new input that likely only exists on the UCI test branch. Note the coupling: reverting the two refs to v0.0.13 without also removing this line will fail the reusable-workflow input validation, so the revert has to be done as one change.
  • 1 suggestion(s)/nit(s) flagged inline on specific lines.

Comment thread .github/workflows/ai-review.yml
Comment thread .github/workflows/ai-review.yml
Comment thread .github/workflows/ai-review.yml

@seidroid seidroid Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No changes since the last review: the AI-review workflow still resolves both the privileged reusable workflow and uci-ref to a mutable branch on sei-protocol/uci while inheriting all secrets, pull-requests: write, and OIDC id-token: write. This is a throwaway test branch and must not merge in this state.

Findings: 4 blocking | 3 non-blocking | 3 posted inline

Blockers

  • Cursor's second-opinion review file (cursor-review.md) is empty for the third consecutive review — that pass produced no output, so this review combines Codex's findings with my own analysis only.
  • No commits have landed since review 4907309715: the diff is byte-identical, so every finding from that review is still open.
  • 2 blocking issue(s) flagged inline on specific lines.

Non-blocking

  • This is self-described as a test PR for sei-protocol/uci#58. Before merge, all three temporary edits must be reverted together: the uses: ref, uci-ref, and re-review-on-push. Otherwise close it without merging.
  • The revert is coupled: re-review-on-push likely only exists as an input on the UCI test branch, so restoring the two refs to a released SHA without also deleting that line will fail the reusable workflow's input validation. Do it as one change.
  • 1 suggestion(s)/nit(s) flagged inline on specific lines.

# See: https://github.com/sei-protocol/uci/releases/tag/v0.0.13
uses: sei-protocol/uci/.github/workflows/ai-review.yml@29a9c73301b2218e1940cf3f9a2c3d34c86fbd9a
# Test: https://github.com/sei-protocol/uci/pull/58
uses: sei-protocol/uci/.github/workflows/ai-review.yml@masih/ai-review-comment-mark-as-resolved

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[blocker] Still unaddressed from the previous two reviews. This replaces a commit SHA pin with a mutable branch ref (@masih/ai-review-comment-mark-as-resolved) on a job that runs with secrets: inherit, pull-requests: write, and id-token: write. Any later push to that branch — by anyone with write access to sei-protocol/uci, or via a compromised account — immediately executes new privileged code against this repo's inherited secrets and OIDC identity on every pull_request event, with no review here.

This is a regression from the prior state, which at least pinned an immutable commit. Restore a SHA pin (@29a9c73301b2218e1940cf3f9a2c3d34c86fbd9a for v0.0.13, or the audited head SHA of the test branch if you need to keep testing) along with the See: .../releases/tag/vX.Y.Z comment before this merges.

(Same point raised by Codex.)

# See: https://github.com/sei-protocol/uci/releases/tag/v0.0.13
uci-ref: 29a9c73301b2218e1940cf3f9a2c3d34c86fbd9a
# Test: https://github.com/sei-protocol/uci/pull/58
uci-ref: 'masih/ai-review-comment-mark-as-resolved'

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[blocker] Still unaddressed. Same issue as line 8: uci-ref is a mutable branch name. This is the ref the reusable workflow checks out to source the UCI tooling it runs, so it is a second, independent path to executing unreviewed code with this repo's inherited secrets. Pin it to the same audited commit SHA as the uses: above — the two should never point at different revisions.

# Test: https://github.com/sei-protocol/uci/pull/58
uci-ref: 'masih/ai-review-comment-mark-as-resolved'
enable-cursor: false # Disabled for now since there is a dedicated Bugbot flow built into Cursor currently enabled on repo.
re-review-on-push: true # Enabled for testing only No newline at end of file

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

[suggestion] Still unaddressed. Two things on this line:

  1. re-review-on-push: true # Enabled for testing only — the comment states this is temporary, so it needs to be removed (or deliberately kept with a real justification) before merge. Left as-is, every push to every PR triggers a full AI re-review.
  2. The file still does not end with a newline (\ No newline at end of file). Restore the trailing newline.

@masih

masih commented Aug 12, 2026

Copy link
Copy Markdown
Collaborator Author

Testing looks good. closing.

@masih masih closed this Aug 12, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant