Skip to content

HYPERFLEET-1330 - chore: replace bingo with Go 1.24 tool directives#301

Open
kuudori wants to merge 3 commits into
openshift-hyperfleet:mainfrom
kuudori:chore/replace-bingo-with-go-tool-directives
Open

HYPERFLEET-1330 - chore: replace bingo with Go 1.24 tool directives#301
kuudori wants to merge 3 commits into
openshift-hyperfleet:mainfrom
kuudori:chore/replace-bingo-with-go-tool-directives

Conversation

@kuudori

@kuudori kuudori commented Jul 14, 2026

Copy link
Copy Markdown
Contributor

HYPERFLEET-1330

Replace Bingo / standalone go install with a single tools/go.mod using Go 1.24+ tool directives.
Tools are pinned in tools/go.mod and invoked via $(call gotool,<name>) in the Makefile.

Tools:

  • golangci-lint v2.7.0
  • gotestsum v1.13.0
  • helm-docs v1.14.2
  • kubeconform v0.7.0
  • mockgen v0.6.0
  • oapi-codegen v2.7.2
  • yq v4.53.3

Also adds tidy-tools and verify-tools Make targets.

Also bumps oapi-codegen v2.6.0 -> v2.7.2 (was pinned by bingo); regenerated code renames GetSwagger to GetSpec, single callsite updated.

Follow-up changes (review comment fixes)

  • Quote $(GO) and $(TOOL_MOD) in Makefile gotool and tool recipes to prevent shell injection (CWE-78)
  • verify-tools now compares against HEAD (git diff HEAD --) instead of the working tree
  • Upgraded vulnerable transitive tool deps: golang.org/x/crypto v0.54.0, helm.sh/helm/v3 v3.21.3

@openshift-ci
openshift-ci Bot requested review from jsell-rh and ma-hill July 14, 2026 02:10
@openshift-ci

openshift-ci Bot commented Jul 14, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign crizzo71 for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Note

Reviews paused

It looks like this branch is under active development. To avoid overwhelming you with review comments due to an influx of new commits, CodeRabbit has automatically paused this review. You can configure this behavior by changing the reviews.auto_review.auto_pause_after_reviewed_commits setting.

Use the following commands to manage reviews:

  • @coderabbitai resume to resume automatic reviews.
  • @coderabbitai review to trigger a single review.

Use the checkboxes below for quick actions:

  • ▶️ Resume reviews
  • 🔍 Trigger review
📝 Walkthrough

Walkthrough

The PR replaces Bingo-managed developer tools with a dedicated tools/go.mod module using Go 1.26 tool declarations and pinned dependencies. Make targets and code-generation directives now invoke tools through go tool. Tool tidying and verification targets are added, while legacy Bingo metadata and the previous Go version marker are removed. Helm validation command invocation, OpenAPI specification loading, and two indirect application dependencies are also updated.

Estimated code review effort: 3 (Moderate) | ~20 minutes

Suggested reviewers: jsell-rh, ma-hill

🚥 Pre-merge checks | ✅ 10 | ❌ 1

❌ Failed checks (1 warning)

Check name Status Explanation Resolution
Docstring Coverage ⚠️ Warning Docstring coverage is 0.00% which is insufficient. The required threshold is 80.00%. Write docstrings for the functions missing them to satisfy the coverage threshold.
✅ Passed checks (10 passed)
Check name Status Explanation
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
Sec-02: Secrets In Log Output ✅ Passed PASS: No non-test/example slog/log/zap/logr/fmt.Print* statements interpolate or field-bind token/password/credential/secret (CWE-532).
No Hardcoded Secrets ✅ Passed PASS: Diff only changes tool pins and Makefile wiring; no added API keys, passwords, tokens, private keys, or credential URLs (CWE-798/CWE-259).
No Weak Cryptography ✅ Passed PASS: No CWE-327/CWE-208 findings; changed code has no crypto/md5/des/rc4/sha1, ECB, custom crypto, or secret comparisons.
No Injection Vectors ✅ Passed Only Makefile/tools-go.mod changed; gotool now quotes GO/TOOL_MOD and no new CWE-78/CWE-89/CWE-79/CWE-502 sinks were introduced.
No Privileged Containers ✅ Passed No touched manifest/template/Dockerfile added privileged:true, hostNetwork/IPC/PID, SYS_ADMIN, allowPrivilegeEscalation:true, or unjustified root. Builder USER root was preexisting and justified.
No Pii Or Sensitive Data In Logs ✅ Passed No added log sinks expose PII, bodies, session IDs, or creds; modified logger calls are static or request-metadata only (CWE-532/200 not triggered).
Title check ✅ Passed The title matches the main change: replacing Bingo with Go tool directives and pinned tooling.
Description check ✅ Passed The description is on-topic and describes the Bingo-to-tools/go.mod migration plus target updates.
✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests
✨ Simplify code
  • Create PR with simplified code

Comment @coderabbitai help to get the list of available commands.

@hyperfleet-ci-bot

hyperfleet-ci-bot Bot commented Jul 14, 2026

Copy link
Copy Markdown

Risk Score: 4 — risk/high

Signal Detail Points
PR size 3307 lines (>500) +2
Sensitive paths none +0
Test coverage No _test.go files in diff +2

Computed by hyperfleet-risk-scorer

@coderabbitai coderabbitai 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.

Actionable comments posted: 2

🧹 Nitpick comments (1)
scripts/test-helm.sh (1)

33-34: 🩺 Stability & Availability | 🔵 Trivial | 💤 Low value

Unquoted $KUBECONFORM/$YQ — fragile, SC2086.

Both variables now hold multi-word commands ("$(GO) tool kubeconform"), so quoting them as a single token would break word-splitting — the unquoted form is functionally required here, not accidental. But this makes correctness depend on the caller (Makefile) never injecting a path containing spaces or shell metacharacters. Since the value is fully Makefile-controlled (not external/user input), this isn't exploitable today (no CWE-78 vector), but it is brittle: switching either variable to an array (KUBECONFORM=("$(GO)" tool kubeconform)) would remove the reliance on word-splitting.

Also applies to: 40-41

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@scripts/test-helm.sh` around lines 33 - 34, Update the command variables used
by the test script, including KUBECONFORM and YQ, to arrays containing each
executable argument separately rather than multi-word command strings. Invoke
them with array expansion in the relevant command calls, preserving support for
the existing flags and "$@" arguments without relying on unquoted word
splitting.

Source: Path instructions

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@go.mod`:
- Around line 197-205: Remove the tool block from go.mod and relocate these
development tool pins to the repository’s established Makefile-based tool
management, following the existing golangci-lint pattern. Ensure all listed
generators, linters, and test tools remain invocable through the relevant Make
targets without expanding the shared module graph.

In `@Makefile`:
- Line 60: Update the GO_VERSION variable in the Makefile to remove the trailing
period, preserving the intended go1.26 version string for verify checks.

---

Nitpick comments:
In `@scripts/test-helm.sh`:
- Around line 33-34: Update the command variables used by the test script,
including KUBECONFORM and YQ, to arrays containing each executable argument
separately rather than multi-word command strings. Invoke them with array
expansion in the relevant command calls, preserving support for the existing
flags and "$@" arguments without relying on unquoted word splitting.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 1bb812ce-e1f0-45c2-abbc-ea1760664a65

📥 Commits

Reviewing files that changed from the base of the PR and between f3b462d and 21b7a02.

⛔ Files ignored due to path filters (8)
  • .bingo/golangci-lint.sum is excluded by !**/*.sum
  • .bingo/gotestsum.sum is excluded by !**/*.sum
  • .bingo/helm-docs.sum is excluded by !**/*.sum
  • .bingo/kubeconform.sum is excluded by !**/*.sum
  • .bingo/mockgen.sum is excluded by !**/*.sum
  • .bingo/oapi-codegen.sum is excluded by !**/*.sum
  • .bingo/yq.sum is excluded by !**/*.sum
  • go.sum is excluded by !**/*.sum, !**/go.sum
📒 Files selected for processing (22)
  • .bingo/.gitignore
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/go.mod
  • .bingo/golangci-lint.mod
  • .bingo/gotestsum.mod
  • .bingo/helm-docs.mod
  • .bingo/kubeconform.mod
  • .bingo/mockgen.mod
  • .bingo/oapi-codegen.mod
  • .bingo/variables.env
  • .bingo/yq.mod
  • .golangciversion
  • Makefile
  • go.mod
  • pkg/handlers/openapi.go
  • pkg/services/adapter_status.go
  • pkg/services/cluster.go
  • pkg/services/generic.go
  • pkg/services/node_pool.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift-hyperfleet/architecture (manual)
  • openshift-hyperfleet/hyperfleet-api (manual)
  • openshift-hyperfleet/hyperfleet-sentinel (manual)
  • openshift-hyperfleet/hyperfleet-adapter (manual)
  • openshift-hyperfleet/hyperfleet-broker (manual) → reviewed against open PR #26 chore/replace-bingo-with-go-tool-directives instead of the default branch
💤 Files with no reviewable changes (13)
  • .bingo/gotestsum.mod
  • .bingo/go.mod
  • .golangciversion
  • .bingo/mockgen.mod
  • .bingo/yq.mod
  • .bingo/README.md
  • .bingo/kubeconform.mod
  • .bingo/variables.env
  • .bingo/golangci-lint.mod
  • .bingo/.gitignore
  • .bingo/helm-docs.mod
  • .bingo/Variables.mk
  • .bingo/oapi-codegen.mod

Comment thread go.mod Outdated
Comment thread Makefile Outdated
@kuudori kuudori changed the title chore: replace bingo with Go 1.24 tool directives HYPERFLEET-1330 - chore: replace bingo with Go 1.24 tool directives Jul 14, 2026
@kuudori

kuudori commented Jul 14, 2026

Copy link
Copy Markdown
Contributor Author

/test validate-commits

@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch from 21b7a02 to fca8497 Compare July 20, 2026 14:27

@coderabbitai coderabbitai 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@go.mod`:
- Line 105: Update the indirect helm.sh/helm/v3 dependency in go.mod from 3.15.2
to at least 3.18.4; if no module imports Helm libraries, remove the dependency
instead.

In `@Makefile`:
- Around line 129-131: Harden the $(GOLANGCI_LINT) installer recipe by
validating GOLANGCI_LINT_VERSION against the accepted exact allowlist/semver
grammar before invoking go install, and pass the package/version argument safely
without unquoted expansion. Quote the mv destination as "$@", preserving the
existing installation behavior while preventing shell injection through
overrideable Make variables.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 6f754edf-8e41-4b95-bf9a-8bb478e79440

📥 Commits

Reviewing files that changed from the base of the PR and between 21b7a02 and fca8497.

⛔ Files ignored due to path filters (8)
  • .bingo/golangci-lint.sum is excluded by !**/*.sum
  • .bingo/gotestsum.sum is excluded by !**/*.sum
  • .bingo/helm-docs.sum is excluded by !**/*.sum
  • .bingo/kubeconform.sum is excluded by !**/*.sum
  • .bingo/mockgen.sum is excluded by !**/*.sum
  • .bingo/oapi-codegen.sum is excluded by !**/*.sum
  • .bingo/yq.sum is excluded by !**/*.sum
  • go.sum is excluded by !**/*.sum, !**/go.sum
📒 Files selected for processing (20)
  • .bingo/.gitignore
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/go.mod
  • .bingo/golangci-lint.mod
  • .bingo/gotestsum.mod
  • .bingo/helm-docs.mod
  • .bingo/kubeconform.mod
  • .bingo/mockgen.mod
  • .bingo/oapi-codegen.mod
  • .bingo/variables.env
  • .bingo/yq.mod
  • .golangciversion
  • Makefile
  • go.mod
  • pkg/handlers/openapi.go
  • pkg/services/adapter_status.go
  • pkg/services/generic.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift-hyperfleet/architecture (manual)
  • openshift-hyperfleet/hyperfleet-api (manual)
  • openshift-hyperfleet/hyperfleet-sentinel (manual)
  • openshift-hyperfleet/hyperfleet-adapter (manual)
  • openshift-hyperfleet/hyperfleet-broker (manual) → reviewed against open PR #26 chore/replace-bingo-with-go-tool-directives instead of the default branch
💤 Files with no reviewable changes (13)
  • .bingo/mockgen.mod
  • .bingo/go.mod
  • .golangciversion
  • .bingo/gotestsum.mod
  • .bingo/kubeconform.mod
  • .bingo/README.md
  • .bingo/yq.mod
  • .bingo/Variables.mk
  • .bingo/.gitignore
  • .bingo/helm-docs.mod
  • .bingo/golangci-lint.mod
  • .bingo/variables.env
  • .bingo/oapi-codegen.mod
🚧 Files skipped from review as they are similar to previous changes (5)
  • pkg/services/generic.go
  • pkg/services/adapter_status.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
  • pkg/handlers/openapi.go

Comment thread go.mod Outdated
Comment thread Makefile Outdated
@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch from fca8497 to 9c0035a Compare July 20, 2026 15:58

@coderabbitai coderabbitai 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.

Actionable comments posted: 4

♻️ Duplicate comments (1)
Makefile (1)

58-58: 🎯 Functional Correctness | 🔴 Critical

The trailing-period defect in GO_VERSION remains.

go1.26. will not match the intended go1.26 toolchain value and can break version verification.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@Makefile` at line 58, Update the GO_VERSION assignment to use the exact
toolchain value go1.26 without the trailing period, preserving the existing
version configuration.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@Makefile`:
- Line 129: Update the tidy-tools loop to stop immediately and return a nonzero
status when any go mod tidy invocation fails, rather than allowing a later
successful iteration to determine the loop result. Preserve processing of each
tools/* module until the first failure.
- Line 11: Update the overrideable GO command handling used by gotool and every
Makefile recipe site, including the referenced later site: validate GO against
an allowed executable-path format before use and quote the validated value
wherever it is expanded in shell recipes. Preserve normal Go executable path
overrides while rejecting values containing shell metacharacters.
- Around line 9-11: Align the repository’s documented tool-pinning contract with
the Makefile’s Go tool directive approach: update
hyperfleet/standards/dependency-pinning.md and the pre-commit documentation to
replace Bingo and .bingo/Variables.mk references with the pinned
tools/<name>/go.mod workflow, including any required usage or maintenance
guidance. Alternatively, retain the existing Bingo integration until those
documents are updated; do not leave the implementation and documented
supply-chain boundary inconsistent.

In `@tools/helm-docs/go.mod`:
- Line 39: Update the helm.sh/helm/v3 dependency in tools/helm-docs/go.mod from
v3.15.2 to patched release v3.20.2 or later, then regenerate the module graph so
related dependency metadata remains consistent.

---

Duplicate comments:
In `@Makefile`:
- Line 58: Update the GO_VERSION assignment to use the exact toolchain value
go1.26 without the trailing period, preserving the existing version
configuration.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: d9df8a9e-1225-422f-b44f-746e10e675fb

📥 Commits

Reviewing files that changed from the base of the PR and between fca8497 and 9c0035a.

⛔ Files ignored due to path filters (9)
  • .bingo/kubeconform.sum is excluded by !**/*.sum
  • go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/golangci-lint/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/gotestsum/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/helm-docs/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/kubeconform/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/mockgen/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/oapi-codegen/go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/yq/go.sum is excluded by !**/*.sum, !**/go.sum
📒 Files selected for processing (27)
  • .bingo/.gitignore
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/go.mod
  • .bingo/golangci-lint.mod
  • .bingo/gotestsum.mod
  • .bingo/helm-docs.mod
  • .bingo/kubeconform.mod
  • .bingo/mockgen.mod
  • .bingo/oapi-codegen.mod
  • .bingo/variables.env
  • .bingo/yq.mod
  • .golangciversion
  • Makefile
  • go.mod
  • pkg/handlers/openapi.go
  • pkg/services/adapter_status.go
  • pkg/services/generic.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
  • tools/golangci-lint/go.mod
  • tools/gotestsum/go.mod
  • tools/helm-docs/go.mod
  • tools/kubeconform/go.mod
  • tools/mockgen/go.mod
  • tools/oapi-codegen/go.mod
  • tools/yq/go.mod
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift-hyperfleet/architecture (manual)
  • openshift-hyperfleet/hyperfleet-api (manual)
  • openshift-hyperfleet/hyperfleet-sentinel (manual)
  • openshift-hyperfleet/hyperfleet-adapter (manual)
  • openshift-hyperfleet/hyperfleet-broker (manual) → reviewed against open PR #26 chore/replace-bingo-with-go-tool-directives instead of the default branch
💤 Files with no reviewable changes (13)
  • .bingo/gotestsum.mod
  • .bingo/README.md
  • .bingo/.gitignore
  • .golangciversion
  • .bingo/yq.mod
  • .bingo/go.mod
  • .bingo/mockgen.mod
  • .bingo/helm-docs.mod
  • .bingo/golangci-lint.mod
  • .bingo/kubeconform.mod
  • .bingo/oapi-codegen.mod
  • .bingo/Variables.mk
  • .bingo/variables.env
🚧 Files skipped from review as they are similar to previous changes (5)
  • pkg/services/generic.go
  • pkg/services/resource.go
  • pkg/services/adapter_status.go
  • pkg/handlers/openapi.go
  • scripts/test-helm.sh

Comment thread Makefile Outdated
Comment thread Makefile Outdated
Comment thread Makefile Outdated
Comment thread tools/helm-docs/go.mod Outdated
@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch 2 times, most recently from d319caf to f5f01af Compare July 20, 2026 16:25

@coderabbitai coderabbitai 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.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@tools/go.mod`:
- Line 257: Update the owning toolchain dependencies in tools/go.mod, upgrading
golang.org/x/crypto to at least v0.52.0 and helm.sh/helm/v3 to at least v3.18.4.
Refresh the related module checksums and dependency resolution so the vulnerable
pins are fully replaced.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 0965869d-35f3-435d-8b93-e5f280e0b3b8

📥 Commits

Reviewing files that changed from the base of the PR and between 9c0035a and f5f01af.

⛔ Files ignored due to path filters (9)
  • .bingo/golangci-lint.sum is excluded by !**/*.sum
  • .bingo/gotestsum.sum is excluded by !**/*.sum
  • .bingo/helm-docs.sum is excluded by !**/*.sum
  • .bingo/kubeconform.sum is excluded by !**/*.sum
  • .bingo/mockgen.sum is excluded by !**/*.sum
  • .bingo/oapi-codegen.sum is excluded by !**/*.sum
  • .bingo/yq.sum is excluded by !**/*.sum
  • go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/go.sum is excluded by !**/*.sum, !**/go.sum
📒 Files selected for processing (22)
  • .bingo/.gitignore
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/go.mod
  • .bingo/golangci-lint.mod
  • .bingo/gotestsum.mod
  • .bingo/helm-docs.mod
  • .bingo/kubeconform.mod
  • .bingo/mockgen.mod
  • .bingo/oapi-codegen.mod
  • .bingo/variables.env
  • .bingo/yq.mod
  • .dockerignore
  • .golangciversion
  • Makefile
  • go.mod
  • pkg/handlers/openapi.go
  • pkg/services/adapter_status.go
  • pkg/services/generic.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
  • tools/go.mod
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

  • openshift-hyperfleet/architecture (manual)
  • openshift-hyperfleet/hyperfleet-api (manual)
  • openshift-hyperfleet/hyperfleet-sentinel (manual)
  • openshift-hyperfleet/hyperfleet-adapter (manual)
  • openshift-hyperfleet/hyperfleet-broker (manual) → reviewed against open PR #26 chore/replace-bingo-with-go-tool-directives instead of the default branch
💤 Files with no reviewable changes (14)
  • .bingo/yq.mod
  • .dockerignore
  • .golangciversion
  • .bingo/mockgen.mod
  • .bingo/variables.env
  • .bingo/gotestsum.mod
  • .bingo/.gitignore
  • .bingo/go.mod
  • .bingo/kubeconform.mod
  • .bingo/oapi-codegen.mod
  • .bingo/golangci-lint.mod
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/helm-docs.mod
🚧 Files skipped from review as they are similar to previous changes (3)
  • pkg/services/resource.go
  • pkg/services/adapter_status.go
  • pkg/handlers/openapi.go

Comment thread tools/go.mod Outdated
@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch 3 times, most recently from 9907617 to f97f4e2 Compare July 20, 2026 18:42
@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch from f97f4e2 to b6cf0ff Compare July 20, 2026 18:54
- Quote Make variables in gotool and tool recipes (CWE-78)
- Add GOWORK=off to gotool definition
- Compare tool files against HEAD in verify-tools
- Upgrade vulnerable tool deps (golang.org/x/crypto v0.54.0, helm.sh/helm/v3 v3.21.3)

@coderabbitai coderabbitai 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.

Actionable comments posted: 2

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@AGENTS.md`:
- Line 190: Synchronize the tool-version guidance in AGENTS.md with the linked
architecture standards and sibling repository instructions: update those
references to use tools/go.mod, or explicitly document the rollout boundary
where .bingo/Variables.mk remains required. Ensure contributors and CI resolve
tool versions consistently.

In `@Makefile`:
- Around line 133-134: Update the Makefile dependency graph so every
gotool-consuming target waits for one completed tools target before running,
preventing parallel mutation of tools/go.mod and tools/go.sum. Keep verify-tools
as the post-tools drift check, and ensure verify-all performs that check only
after its parallel lint/test consumers complete.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: Central YAML (base), Organization UI (inherited)

Review profile: CHILL

Plan: Enterprise

Run ID: 48b3f93b-ee71-4dc5-8e35-5e5d5517703d

📥 Commits

Reviewing files that changed from the base of the PR and between f5f01af and 12090bb.

⛔ Files ignored due to path filters (9)
  • .bingo/golangci-lint.sum is excluded by !**/*.sum
  • .bingo/gotestsum.sum is excluded by !**/*.sum
  • .bingo/helm-docs.sum is excluded by !**/*.sum
  • .bingo/kubeconform.sum is excluded by !**/*.sum
  • .bingo/mockgen.sum is excluded by !**/*.sum
  • .bingo/oapi-codegen.sum is excluded by !**/*.sum
  • .bingo/yq.sum is excluded by !**/*.sum
  • go.sum is excluded by !**/*.sum, !**/go.sum
  • tools/go.sum is excluded by !**/*.sum, !**/go.sum
📒 Files selected for processing (27)
  • .bingo/.gitignore
  • .bingo/README.md
  • .bingo/Variables.mk
  • .bingo/go.mod
  • .bingo/golangci-lint.mod
  • .bingo/gotestsum.mod
  • .bingo/helm-docs.mod
  • .bingo/kubeconform.mod
  • .bingo/mockgen.mod
  • .bingo/oapi-codegen.mod
  • .bingo/variables.env
  • .bingo/yq.mod
  • .dockerignore
  • .golangciversion
  • AGENTS.md
  • CLAUDE.md
  • CONTRIBUTING.md
  • Dockerfile
  • Makefile
  • docs/development.md
  • go.mod
  • pkg/handlers/openapi.go
  • pkg/services/adapter_status.go
  • pkg/services/generic.go
  • pkg/services/resource.go
  • scripts/test-helm.sh
  • tools/go.mod
🔗 Linked repositories identified

CodeRabbit considers these linked repositories for cross-repo context during reviews:

💤 Files with no reviewable changes (14)
  • .bingo/.gitignore
  • .bingo/helm-docs.mod
  • .bingo/yq.mod
  • .golangciversion
  • .bingo/go.mod
  • .bingo/mockgen.mod
  • .bingo/README.md
  • .bingo/kubeconform.mod
  • .bingo/oapi-codegen.mod
  • .bingo/gotestsum.mod
  • .bingo/variables.env
  • .bingo/golangci-lint.mod
  • .dockerignore
  • .bingo/Variables.mk
🚧 Files skipped from review as they are similar to previous changes (6)
  • pkg/services/adapter_status.go
  • go.mod
  • pkg/handlers/openapi.go
  • scripts/test-helm.sh
  • pkg/services/resource.go
  • tools/go.mod

Comment thread AGENTS.md
Comment thread Makefile
GOWORK=off breaks when gotool is expanded inside a string
variable (e.g. KUBECONFORM="$(call gotool,kubeconform)"),
because the shell treats GOWORK=off as a command name.
The -modfile flag already overrides the module context.
@kuudori
kuudori force-pushed the chore/replace-bingo-with-go-tool-directives branch from 734c5f9 to 6e23c21 Compare July 20, 2026 21:06
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