Skip to content

ci: add latest-image regression guard#11

Merged
robfrank merged 8 commits into
mainfrom
ci/latest-image-guard
Jun 17, 2026
Merged

ci: add latest-image regression guard#11
robfrank merged 8 commits into
mainfrom
ci/latest-image-guard

Conversation

@robfrank

Copy link
Copy Markdown
Contributor

Summary

  • Extract the kind-based HA integration job into a reusable workflow (integration-reusable.yml) parameterized by imageTag + pullPolicy, so the PR suite and the new guard run byte-identical steps differing only by image tag.
  • Rewire lint.yml's integration job to call the reusable workflow with defaults — behavior unchanged (still arcadedata/arcadedb:26.6.1, IfNotPresent).
  • Add latest-image.yml: a blocking weekly (Mon 06:00 UTC) + workflow_dispatch guard that runs the full integration suite against the rolling arcadedata/arcadedb:latest image (pullPolicy: Always). A red run signals the upcoming ArcadeDB release breaks the chart, before it ships.
  • Document the guard and a release-bump checklist in README.md.

Spec & plan: docs/superpowers/specs/2026-06-16-latest-image-ci-guard-design.md, docs/superpowers/plans/2026-06-16-latest-image-ci-guard.md.

Test Plan

  • helm lint clean; helm-unittest 134/134 pass
  • actionlint clean on all three workflows
  • helm template confirms default render = arcadedata/arcadedb:26.6.1/IfNotPresent (unchanged) and override = arcadedata/arcadedb:latest/Always
  • After merge: manually trigger the guard (gh workflow run "CI - Latest Image Guard") and confirm it runs the integration suite against latest
  • Confirm the standard PR CI integration job still passes via the reusable workflow

🤖 Generated with Claude Code

@gemini-code-assist gemini-code-assist 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.

Code Review

This pull request introduces documentation, design specifications, and implementation plans for a new weekly "Latest-Image CI Guard" workflow. However, the actual GitHub Actions workflow files described in the plans are missing from the changes. Additionally, several local, temporary, and IDE-specific files and directories (".claude/", ".debug/", and ".idea/") were accidentally committed and should be removed from the repository.

Important

The consumer version of Gemini Code Assist on GitHub is being sunset. Starting June 18, 2026, new organization installations will be blocked, and all code review activity will officially cease on July 17, 2026.
For more details on the timeline and next steps, please review the Help Documentation.

Comment thread .claude/settings.local.json Outdated
@@ -0,0 +1,48 @@
{

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

high

This file contains local tool permissions for Claude Code, including absolute paths specific to a local user's machine (/Users/frank/...). Committing this file is a repository hygiene issue and can leak local path structures. Please remove this file from the repository and add .claude/ to your .gitignore.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in a3acb30. .claude/, .debug/, and .idea/ were untracked local files accidentally staged by a git add -A; they are now removed from the index (kept on disk) and .claude/settings.local.json, .debug/, .idea/ are gitignored.

@@ -0,0 +1 @@
raw: Custom plugin 'myplugin' has no port specified.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The .debug/ directory contains generated Helm templates, including this statefulset.yaml which contains an error message (raw: Custom plugin 'myplugin' has no port specified.). This directory appears to be a temporary output directory from local testing/debugging and should not be committed to the repository. Please delete the .debug/ directory and add it to .gitignore.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in a3acb30.debug/ is now untracked and gitignored.

Comment thread .idea/.gitignore Outdated
@@ -0,0 +1,10 @@
# Default ignored files

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The .idea/ directory contains IntelliJ IDEA project configuration files. These are developer-specific IDE settings and should not be committed to the repository. Please remove the .idea/ directory and ensure it is ignored.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixed in a3acb30.idea/ is now untracked and gitignored.

Comment thread README.md
Comment on lines +35 to +40
`.github/workflows/latest-image.yml` runs the full kind HA integration suite
against the rolling `arcadedata/arcadedb:latest` image every Monday (and on
manual `workflow_dispatch`). It is a **blocking** pre-release guard: a red run
means the upcoming ArcadeDB release breaks the chart. It shares its steps with
the PR integration job via `.github/workflows/integration-reusable.yml`, so both
exercise an identical suite differing only by image tag.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

medium

The actual GitHub Actions workflow files described here (.github/workflows/latest-image.yml and .github/workflows/integration-reusable.yml), as well as the refactoring of .github/workflows/lint.yml, are missing from this pull request. It appears they were not added or committed to the branch. Please ensure these workflow files are committed and included in the PR.

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The workflow files are present in this PR, not missing:

  • .github/workflows/integration-reusable.yml (new, +74) — the reusable workflow_call job
  • .github/workflows/latest-image.yml (new, +18) — the scheduled guard
  • .github/workflows/lint.yml (modified, −47) — integration job refactored to uses: ./.github/workflows/integration-reusable.yml

git diff main...HEAD --stat lists all three. The earlier diff was likely cluttered by the accidentally-committed .claude//.debug//.idea/ files, which have since been removed in a3acb30; the diff is now clean.

Accidentally committed via 'git add -A'; restore them to untracked and
gitignore .claude/settings.local.json, .debug/, .idea/.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@robfrank robfrank merged commit 4e5e00b into main Jun 17, 2026
3 checks passed
@robfrank robfrank deleted the ci/latest-image-guard branch June 17, 2026 14:52
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