Skip to content

chore(harness): repin sandbox and code images to the 0.40.0 release digests - #1160

Merged
waynesun09 merged 1 commit into
mainfrom
repin-harness-images-0.40.0
Sep 3, 2026
Merged

chore(harness): repin sandbox and code images to the 0.40.0 release digests#1160
waynesun09 merged 1 commit into
mainfrom
repin-harness-images-0.40.0

Conversation

@waynesun09

Copy link
Copy Markdown
Member

Summary

Repin the seven harness/*.yaml image references from the 0.37.0 digests to the 0.40.0 release images:

Image Digest Files
ghcr.io/fullsend-ai/fullsend-code:0.40.0 sha256:ea2a31f38ee80e2a9a898a898a289fe432aa882fa5a4046c3236ab8e2627d7e7 code, fix, review
ghcr.io/fullsend-ai/fullsend-sandbox:0.40.0 sha256:f8255971fec8a72a60adb20f501e55098f237e699dc829f0894647c0de2a19c2 prioritize, retro, scribe, triage

Both digests were resolved from GHCR and their org.opencontainers.image.revision label is 2a103497560b9bcca901372c70a6e073b1a73cde, the fullsend v0.40.0 release commit (release run succeeded end to end, including tag-agents).

Why

Pins reference the release-tagged digests, never :latest, per the release runbook.

…igests

Move the seven harness image pins from the 0.37.0 digests to the 0.40.0
release images. Both images carry org.opencontainers.image.revision
2a103497560b9bcca901372c70a6e073b1a73cde, the fullsend v0.40.0 release
commit.

Why now: 0.40.0 is the first sandbox image built with CODEX_VERSION, so
the codex runtime is not usable by fleet agents until these pins move.
The 0.38.0 and 0.39.0 repins were never done (tracked in
fullsend-ai/fullsend#6607).

  fullsend-code:0.40.0     sha256:ea2a31f38ee80e2a9a898a898a289fe432aa882fa5a4046c3236ab8e2627d7e7
  fullsend-sandbox:0.40.0  sha256:f8255971fec8a72a60adb20f501e55098f237e699dc829f0894647c0de2a19c2

Assisted-by: Claude
Signed-off-by: Wayne Sun <gsun@redhat.com>
@waynesun09
waynesun09 requested a review from a team as a code owner September 3, 2026 03:37
@qodo-code-review

Copy link
Copy Markdown

PR Summary by Qodo

Repin harness images to verified 0.40.0 release digests

⚙️ Configuration changes 🕐 Less than 10 minutes

Grey Divider

AI Description

• Pins three code harnesses to the verified fullsend-code 0.40.0 digest.
• Pins four workflow harnesses to the verified fullsend-sandbox 0.40.0 digest.
• Enables fleet agents to use the 0.40.0 Codex runtime.
Diagram

graph TD
  FLEET["Fleet agents"] --> CODECFG["Code harnesses"] --> CODE["Code image 0.40.0"]
  FLEET --> SANDCFG["Workflow harnesses"] --> SANDBOX["Sandbox image 0.40.0"]
Loading
High-Level Assessment

The current approach is optimal: pinning verified release digests provides reproducible deployments while enabling the 0.40.0 runtime. Mutable release or latest tags were considered but would weaken provenance and repeatability.

Files changed (7) +7 / -7

Other (7) +7 / -7
code.yamlRepin code harness to fullsend-code 0.40.0 +1/-1

Repin code harness to fullsend-code 0.40.0

• Replaces the 0.37.0 fullsend-code digest with the verified 0.40.0 release digest for code tasks.

harness/code.yaml

fix.yamlRepin fix harness to fullsend-code 0.40.0 +1/-1

Repin fix harness to fullsend-code 0.40.0

• Replaces the 0.37.0 fullsend-code digest with the verified 0.40.0 release digest for fix tasks.

harness/fix.yaml

prioritize.yamlRepin prioritize harness to fullsend-sandbox 0.40.0 +1/-1

Repin prioritize harness to fullsend-sandbox 0.40.0

• Replaces the 0.37.0 sandbox digest with the verified 0.40.0 release digest for prioritization tasks.

harness/prioritize.yaml

retro.yamlRepin retro harness to fullsend-sandbox 0.40.0 +1/-1

Repin retro harness to fullsend-sandbox 0.40.0

• Replaces the 0.37.0 sandbox digest with the verified 0.40.0 release digest for retrospective tasks.

harness/retro.yaml

review.yamlRepin review harness to fullsend-code 0.40.0 +1/-1

Repin review harness to fullsend-code 0.40.0

• Replaces the 0.37.0 fullsend-code digest with the verified 0.40.0 release digest for review tasks.

harness/review.yaml

scribe.yamlRepin scribe harness to fullsend-sandbox 0.40.0 +1/-1

Repin scribe harness to fullsend-sandbox 0.40.0

• Replaces the 0.37.0 sandbox digest with the verified 0.40.0 release digest for scribe tasks.

harness/scribe.yaml

triage.yamlRepin triage harness to fullsend-sandbox 0.40.0 +1/-1

Repin triage harness to fullsend-sandbox 0.40.0

• Replaces the 0.37.0 sandbox digest with the verified 0.40.0 release digest for triage tasks.

harness/triage.yaml

@fullsend-ai-review

fullsend-ai-review Bot commented Sep 3, 2026

Copy link
Copy Markdown

🤖 Finished Review · ✅ Success · Started 3:38 AM UTC · Completed 3:51 AM UTC

Commit: 495e3cb · View workflow run →

Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $3.20

@qodo-code-review

Copy link
Copy Markdown

Code Review by Qodo

🐞 Bugs (0) 📘 Rule violations (0) 📜 Skill insights (1)

Grey Divider


Action required

1. Protected harness path modified 📜 Skill insight § Compliance
Description
This PR modifies files under the protected harness/ path, which requires mandatory human review
and must not be auto-approved. The digest-only nature of the change does not exempt protected-path
review.
Code

harness/code.yaml[23]

+image: ghcr.io/fullsend-ai/fullsend-code@sha256:ea2a31f38ee80e2a9a898a898a289fe432aa882fa5a4046c3236ab8e2627d7e7
Relevance

●●● Strong

Recent protected-path enforcement precedents support flagging harness changes; digest-only edits
remain governance-sensitive.

PR-#569
PR-#631

ⓘ Recommendations generated based on similar findings in past PRs

Evidence
The PR changes an image reference in harness/code.yaml; harness/ is explicitly listed as a
protected governance/infrastructure path requiring a finding.

harness/code.yaml[23-23]
Skill: pr-review


Grey Divider

Context sources
✅ Compliance rules (platform): 57 rules
✅ Skills: 4 invoked
  code-review
  code-implementation
  pr-review
  docs-review
Review mode: 🚀 Fast: This is a localized, mechanical update of seven pinned container digests with no source-logic changes, and the stated release-tagged digests make the intended behavior clear.

Grey Divider

Tip of the day
💡 Did you know, you can add REVIEW.md to your repo root and Qodo follows it on every PR

More tips ↗ | Customize Qodo ↗ | Qodo docs ↗

Grey Divider

Qodo Logo

Comment thread harness/code.yaml
@fullsend-ai-review fullsend-ai-review Bot added the risk/elevated PR risk: elevated label Sep 3, 2026
@fullsend-ai-review

Copy link
Copy Markdown

Risk Assessment: elevated (3/5)

Details

Elevated score driven by 7 protected harness paths touched and high git churn/contention history on these files, despite the change itself being a minimal 1-line-per-file image digest repin with no security, CI, or dependency impact.

@fullsend-ai-review

Copy link
Copy Markdown

Review

Findings

High

  • [protected-path] harness/code.yaml, harness/fix.yaml, harness/prioritize.yaml, harness/retro.yaml, harness/review.yaml, harness/scribe.yaml, harness/triage.yaml — All seven changed files are under harness/, a protected path requiring human approval. This PR does not link to an issue authorizing modifications to governance/infrastructure files. The description explains the rationale (repinning images to the v0.40.0 release digests), but protected-path changes require a linked issue for traceability.

Next steps:

  • /fs-fix — agent addresses review findings automatically
  • /fs-fix <your instruction> — agent fixes with your specific guidance
  • Push commits directly — review re-runs automatically on push
  • /fs-fix-stop — disable automatic fix runs for this PR

@fullsend-ai-review fullsend-ai-review 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.

See the review comment for full details.

@waynesun09
waynesun09 added this pull request to the merge queue Sep 3, 2026
@github-merge-queue
github-merge-queue Bot removed this pull request from the merge queue due to failed status checks Sep 3, 2026
@waynesun09
waynesun09 added this pull request to the merge queue Sep 3, 2026
Merged via the queue into main with commit 1056025 Sep 3, 2026
83 of 86 checks passed
@waynesun09
waynesun09 deleted the repin-harness-images-0.40.0 branch September 3, 2026 11:40
@fullsend-ai-retro

fullsend-ai-retro Bot commented Sep 3, 2026

Copy link
Copy Markdown

🤖 Finished Retro · ✅ Success · Started 11:42 AM UTC · Completed 11:53 AM UTC

Commit: 495e3cb · View workflow run →

Runtime: claude · Model: opus → claude-opus-4-6 · Effort: high · Cost: $4.56

@fullsend-ai-retro

Copy link
Copy Markdown

PR #1160 was a straightforward infrastructure change: repinning 7 harness YAML files from v0.37.0 to v0.40.0 container image digests (7 single-line swaps). The review agent ran on opus at high effort ($3.20), correctly identified the protected-path governance gate, and submitted CHANGES_REQUESTED. A human reviewer (rh-hemartin) approved, and the author merged ~8 hours later. All CI passed on the final run.

Novel finding

The review bot's risk/elevated label application at 03:51:36 UTC triggered a new Functional Tests workflow run via the pull_request_target labeled event. This new run joined concurrency group functional-1160 with cancel-in-progress: true, cancelling the still-running functional-tests (review) job from the original run (33712022619). The new run (33712899566) then immediately failed: its gate job skipped all tests because the label was not ok-to-test, and the rollup script failed closed because the prior result was already failure. This forced a full re-run of functional tests after human approval, adding unnecessary latency. One proposal filed below.

Corroborating evidence for existing open issues

  • #741 (assess semantic significance before assigning HIGH severity): this PR is another instance — 7 purely mechanical single-line digest swaps all received HIGH severity protected-path findings.
  • #735 (accept PR body rationale as authorization context): the PR body included detailed justification, a digest-to-commit mapping table, and a clear "Why" section, but the review agent still assigned HIGH because no Fixes #N link existed in the agents repo.
  • #718 (recognize external issue references): the PR body referenced release: automate the fullsend-ai/agents harness image digest repin after each release fullsend#6607 as the tracking issue for automating harness repins, but the review agent did not recognize cross-repo references as authorization context.
  • #1110 (use COMMENT verdict when all findings are human-only): the only finding was protected-path, which is inherently unresolvable by the fix agent — yet CHANGES_REQUESTED was submitted.
  • #497 (scope-based model downgrading for trivial PRs): $3.20 on opus/high for a 7-file, 7-line mechanical digest repin. The scope was classified as trivial but sub-agents still ran on opus.

Proposals filed

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants