Skip to content

ci: add self-healing weekly autoupdate with Claude fallback (and bump autoupdater v3 → v6)#2

Merged
siarheidudko merged 4 commits into
mainfrom
claude/add-autoupdate-with-claude
May 6, 2026
Merged

ci: add self-healing weekly autoupdate with Claude fallback (and bump autoupdater v3 → v6)#2
siarheidudko merged 4 commits into
mainfrom
claude/add-autoupdate-with-claude

Conversation

@siarheidudko

Copy link
Copy Markdown
Owner

Summary

Adds the unified autoupdate-with-claude flow + bumps siarheidudko/autoupdater from @v3 to @v6. Replaces the existing daily push-to-main Autoupdate with a weekly PR-based flow.

Changes vs other repos in the rollout

  • No lint script in this repo (no ESLint config). builds-and-checks is build + test only; CLAUDE.md and the prep-prompt explicitly note this.
  • autoupdater was @v3 (every other repo had @v6). Bumped.
  • SERVICE_ACCOUNT secret is preserved: written to serviceAccount.json before autoupdater + test runs; GOOGLE_APPLICATION_CREDENTIALS points to it.
  • build-and-deploy.yml: deploy-only job (no test), but actions downgraded to @v4 line for runner externals consistency.

Files

  • .github/workflows/autoupdate.yml — replaces existing
  • .github/workflows/pr-checks.yml — new
  • .github/workflows/claude.yml — new
  • .github/workflows/release-on-version-bump.yml — new
  • .github/workflows/build-and-deploy.yml — updated (actions @v4, Node 24)
  • CLAUDE.md — new
  • .npmignoreCLAUDE.md added

Prereqs

  • Claude GitHub App installed
  • CLAUDE_CODE_OAUTH_TOKEN secret present
  • SERVICE_ACCOUNT already in repo secrets (carried over)

Test plan

  • PR-checks green on this PR.
  • After merge: Actions → Autoupdate → Run workflow → clean no-op run.

Generated by Claude Code

Replicates the unified template across the repo:
- autoupdate.yml: weekly cron, GITHUB_TOKEN, dispatches pr-checks/claude
- pr-checks.yml: build (Node 24) + test on Node 20/22/24
- claude.yml: workflow_dispatch + comment-mention paths
- release-on-version-bump.yml: tag chain to build-and-deploy
- build-and-deploy.yml: actions @v4, Node 24
- CLAUDE.md: definition-of-done; no lint script in this repo
- .npmignore: CLAUDE.md added

builds-and-checks: build, test (no lint script in this repo).
SERVICE_ACCOUNT secret carried into autoupdate + test jobs as before.
The build job failed on Node 24 (tsc-stage error, log not visible from
this session). The existing build-and-deploy.yml has always built on
Node 22, so revert to that for the build-artifact step. Test matrix
remains [20, 22, 24] to surface any runtime issues, but artifact
production stays on the proven version.
The build job fails with npm ci on main; suspect that the
package-lock.json captured a transitive resolution that no longer
hoists @google-cloud/storage to the top level (src/index.ts
imports a type from it). npm install regenerates the install
graph and may re-hoist correctly.

If this still fails, the underlying build break in main is
out-of-scope for this PR.
… directly

Inspection of test/shell.test.js shows it spawns bin/firebase-cli.js,
which does require('firebase-admin') and require('../utils/...'), but
does NOT require lib/. So the autoupdate-verification path doesn't
need a built artifact. The build job was failing due to an unrelated
tsc issue in src/index.ts (transitive @google-cloud/storage type
import); that's out-of-scope for this PR. Once main's build is fixed,
the build verification gets exercised via the autoupdate flow's own
builds-and-checks (npm run build + npm test).
@siarheidudko siarheidudko merged commit d9044b8 into main May 6, 2026
3 checks passed
@siarheidudko siarheidudko deleted the claude/add-autoupdate-with-claude branch May 6, 2026 18:33
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