Skip to content

Reconsider REVIEW_FINDING_SEVERITY_THRESHOLD="high" override in .fullsend/customized/harness/review.yaml #583

Open

Description

@fullsend-ai-retro

What happened

On PR #582, a change to .github/workflows/preview.yaml introduced a fork-origin guard on the deploy job but not on prepare, so fork-originated workflow runs would still download and unzip untrusted artifacts before the guard applied. CodeRabbit caught this on the first commit d94dbad (review comment, 2026-10-07T16:41:39Z). The fix landed in commit f4a98b3 ("Apply the repository-origin check before downloading and unpacking preview artifacts").

The fullsend review agent ran on all three commits (runs 37653239666, 37656093643, 37658698303) using fullsend-ai/agents@ce2eedd and the repo-local harness override at .fullsend/customized/harness/review.yaml, which sets REVIEW_FINDING_SEVERITY_THRESHOLD: "high" for both the runner and the sandbox. The only finding posted across all three runs was a [protected-path] medium — the fork-guard bug was not reported.

What could go better

The upstream review agent's sub-agent pipeline (correctness, security, intent-coherence, style-conventions) is explicitly designed to inspect GitHub Actions workflows for exactly this kind of permission/guard regression. The most parsimonious explanation for the miss is that any sub-agent output below high is dropped by the post-review severity filter before it reaches the comment. CodeRabbit itself scored the fork-guard finding as "Trivial / Low value"; a natural fullsend grading for the same issue would plausibly land at medium and be filtered out.

Uncertainty. The protected-path finding posted on PR #582 was itself a medium and did reach the comment, which suggests the filter may have a category exemption — so the hypothesis above is not watertight. It is also possible the correctness sub-agent did not produce the finding at all, or produced it at low. Either way, the net effect for this repo is the same: on a security-sensitive diff to .github/, the review surfaced zero actionable correctness or security findings while a competing bot surfaced one that the human acted on. A high-only threshold on governance paths is almost certainly tighter than this repo intends.

Proposed change

In .fullsend/customized/harness/review.yaml, lower REVIEW_FINDING_SEVERITY_THRESHOLD to medium — at least for diffs that touch .github/, CODEOWNERS, or scripts/. Options to evaluate, in order of preference:

  1. Drop the override entirely and inherit the upstream default (low) to see which findings surface. Downgrade to medium after one week if comment noise is too high.
  2. If keeping the override, change both the runner and sandbox values to medium so the correctness and security sub-agents' typical outputs survive the filter.
  3. If the filter does support per-category exemption, add an exemption for correctness and security findings regardless of severity.

Before merging the change, verify the actual behavior of scripts/post-review.sh severity filter in fullsend-ai/agents@ce2eedd to confirm whether the protected-path medium made it through because of a category exemption or because the filter is not applied the way the upstream script implies.

Validation criteria

After the change, over the next 10 PRs that touch .github/, scripts/, or CODEOWNERS:

  • The fullsend review posts at least one non-protected-path finding on PRs where competing tooling (CodeRabbit, Qodo) finds one — OR the review comment states explicitly that correctness/security sub-agents ran and found nothing additional.
  • No increase in false-positive volume above 1 finding per PR on average (judged by maintainer response: ignored vs. acted-on).
  • If the lower threshold produces comment-noise regressions, revert and document the specific noise category in a follow-up issue so an upstream fix can target it.

Generated by retro agent from #582

Activity

  1. fullsend-ai-triage commented on Oct 11, 2026

    @fullsend-ai-triage

    Triage summary

    This is a configuration bug in the fullsend review harness override, not a workflow-file change — the target lives at .fullsend/customized/harness/review.yaml and the code agent can modify it under current permissions.

    Severity: medium

    Security-sensitive review findings on governance paths are being silently filtered out. Alternative tooling (CodeRabbit) is catching some of them, but relying on that is not the intended posture.

    Implementation guidance

    The issue body already enumerates three remediation options in order of preference. Before picking one, the implementer must verify how REVIEW_FINDING_SEVERITY_THRESHOLD is actually enforced in fullsend-ai/agents@ce2eedd — specifically whether the [protected-path] medium that posted on PR #582 bypassed the filter because of a category exemption or for some other reason. That determination governs whether option (3) is even available, and whether options (1) or (2) are sufficient on their own.

    Keep readonly_repo: true and the Apache 2.0 header. The PR description should document what was found in scripts/post-review.sh so the choice is auditable.

    Proposed verification

    Acceptance:
    - Next 10 PRs touching .github/, scripts/, or CODEOWNERS: fullsend posts at least one
      non-[protected-path] finding when competing tooling finds a correctness/security issue,
      OR explicitly reports that correctness/security sub-agents ran and found nothing additional.
    - Average noise stays <= 1 ignored finding per PR.
    - A sandbox PR that re-creates the PR #582 fork-origin guard regression surfaces a correctness
      or security finding from fullsend.
    

    Open points for the implementer (not reporter-answerable)

    • Confirm the actual filter behavior in scripts/post-review.sh at the pinned harness commit before choosing option (1), (2), or (3).
    • If option (1) is chosen, keep an eye on noise for one week and be prepared to step up to option (2).

    Related work

    No open or merged PR currently addresses this issue, and no duplicate issue was found.


    Next steps:

    • /fs-code — agent creates a PR to implement this issue
    • /fs-code <your instruction> — agent implements with your specific guidance
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't workingready-for-triageTriggers triage agent dispatchready-to-codeTriggers code agent dispatch

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions