Skip to content

refactor(validate-go-project): drop the dead reusable-workflows self-exclusion #787

Description

@devantler

🤖 Generated by the Agentic Engineer

Evidence: eight job gates in .github/workflows/validate-go-project.yaml carry github.repository != 'devantler-tech/reusable-workflows' (tidy, golangci-lint, deadcode, govulncheck, lint, build, test, coverage). reusable-workflows was archived 2026-07-10 and merged into this repository, so that condition is now always true — dead weight that reads like an active self-exclusion. Surfaced by a CodeRabbit review on #779.

Audience/problem: anyone reading or changing these gates. The stale slug invites exactly the wrong fix: swapping it for devantler-tech/actions looks like a tidy-up but would make those jobs never run in this repository, permanently skipping the [Test] Validate Go Project / * self-test jobs that are the only exercise of this reusable workflow's own paths. That was proposed on #779 and declined for this reason.

Why it is not a one-line delete. The changes job deliberately uses the actions slug with an escape hatch — inputs.working-directory != '' || github.repository != 'devantler-tech/actions' — which is how the self-test invokes this workflow against a fixture module. The downstream jobs have no such escape hatch, so removing the dead condition and adding a correct self-exclusion are two different edits with different blast radii.

Proposed: delete the dead != 'devantler-tech/reusable-workflows' conjunct from all eight gates, changing nothing else. If a genuine self-exclusion is wanted, it belongs on a separate issue with the fixture escape hatch designed in.

Acceptance criteria:

  • No occurrence of devantler-tech/reusable-workflows remains in .github/workflows/validate-go-project.yaml.
  • Before/after evidence that every [Test] Validate Go Project / * job has the same conclusion (success/skipped) as it does today — the point is that this is behaviour-preserving, so a job that flips from success to skipped is a regression, not a cleanup.
  • lint-ci-coverage-parity stays green.

Size: small — but it is eight gates and the check is per-job, so it is not a blind find-and-replace.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    Status
    📥 Backlog

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions