Skip to content

release: v0.4.0 - #101

Merged
blanketops-environments[bot] merged 4 commits into
mainfrom
release/v0.4.0
Jul 19, 2026
Merged

release: v0.4.0#101
blanketops-environments[bot] merged 4 commits into
mainfrom
release/v0.4.0

Conversation

@blanketops-environments

Copy link
Copy Markdown

Release v0.4.0

Release branch cut from develop. Merge fix PRs into this branch before finalizing.

Next step: once all fixes are merged, run the Finalize Release workflow.

ntlaletsi70 and others added 4 commits July 19, 2026 16:51
…security scans

GH_PAT no longer exists (retired when this org migrated private-module auth
to a GitHub App) — every workflow still referencing it was failing private
module resolution with "could not read Password for 'https://github.com':
terminal prompts disabled", as seen on PR #98.

- ci.yaml, security.yml (new): private-module git config now uses a
  short-lived GitHub App installation token via
  actions/create-github-app-token, minted fresh per job instead of a PAT
  whose expiry can silently lapse. Also added a `go test` + coverage step to
  ci.yaml, which previously only built/vetted/linted — the new domain/
  mediator/cache test suite would otherwise never run in CI.
- ko.yml, release.yml, security.yml (trivy-image): GHCR login switched to
  the default GITHUB_TOKEN — the App token is denied package
  writes/pulls against this org-scoped package regardless of granted
  permission, but GITHUB_TOKEN's repo-scoped access is exactly what a
  same-repo push/pull needs.
- create-release.yml, finalize-release.yml: switched to the App token
  (not GITHUB_TOKEN) since these push branches/tags/merges that must
  trigger downstream workflow runs (CI on the new branch, Release on the
  new tag) — pushes authenticated with the default GITHUB_TOKEN don't
  trigger other workflows, but an App installation token does.

Also merges gosec.yml + vulnscan.yml into a single security.yml (three jobs:
gosec, govulncheck, trivy-image), each keeping its original trigger scope
via a job-level `if:` gate — mirroring the consolidation already done in
the `environments` library's own CI. Release-lifecycle workflows
(release.yml, create-release.yml, finalize-release.yml, ko.yml) stay
standalone, unchanged from before.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…orks

PR #100's CI run was the first time golangci-lint ever got past the
private-module auth step to completion — it found 31 real issues that had
been silently accumulating (some pre-existing, some from the new test
suite in #98), none caught before because the pipeline always failed
earlier at "Configure Git for private modules".

- goconst (21+2 more that surfaced after the first batch): repeated string
  literals in test fixtures (contract map keys/values, namespaces, label
  keys, sample names) extracted into local, file-scoped named constants —
  matching the existing per-file `testAppName`-style convention rather than
  introducing a shared testsupport helper.
- revive import-shadowing (8+4 more): production code across 9 domain/
  runtime files declared local variables or parameters named `cache`,
  `events`, `registry`, or `engine` that shadowed the same-named imported
  packages. Renamed to `domainCache`/`eventRecorder`/`objCache`/`reg`/`eng`
  (production code) and `githubEvents` (a local List result) — behavior
  unchanged, purely a naming fix.
- unparam (2): two test helper `newTestDomain` functions returned an
  unused `client.Client` second value that every call site discarded;
  dropped the return value instead of threading a `_` through 13 call
  sites.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
…coverage

ci: migrate workflows off retired GH_PAT secret, consolidate security scans
@blanketops-environments
blanketops-environments Bot merged commit 4a92fc7 into main Jul 19, 2026
4 checks passed
@blanketops-environments
blanketops-environments Bot deleted the release/v0.4.0 branch July 19, 2026 16:37
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant