Skip to content

fix: fix broken test workflow (issue 77)#79

Open
laurigates wants to merge 2 commits intomasterfrom
claude/issue-77-20260320-2010
Open

fix: fix broken test workflow (issue 77)#79
laurigates wants to merge 2 commits intomasterfrom
claude/issue-77-20260320-2010

Conversation

@laurigates
Copy link
Copy Markdown
Member

Fix 100% failure rate in test workflow.

Changes

  • .pre-commit-config.yaml: Change biome-format hook from language: system + npx to language: node + additional_dependencies. Pre-commit now manages biome installation in its own node virtualenv, fixing the CI failure caused by npx not finding biome when node_modules is not installed.
  • Also excluded package-lock.json from biome formatting.

Note: test.yml line 116 also needs actions/setup-node@v6v4 (apply manually as workflow files require additional permissions).

Closes #77

Generated with Claude Code

Replace language: system (requires npx in CI) with language: node so
pre-commit manages biome installation via additional_dependencies.
This fixes the 100% failure rate caused by npx failing to find biome
when react_ui/node_modules is not installed in the pre-commit job.

Also exclude package-lock.json from biome formatting to prevent
machine-generated lock file from being altered by the formatter.

Co-authored-by: Lauri Gates <laurigates@users.noreply.github.com>
@gemini-code-assist
Copy link
Copy Markdown

Summary of Changes

Hello, I'm Gemini Code Assist1! I'm currently reviewing this pull request and will post my feedback shortly. In the meantime, here's a summary to help you and other reviewers quickly get up to speed!

This pull request addresses a critical failure in the test workflow by reconfiguring the biome-format pre-commit hook. The changes ensure that Biome is correctly installed and executed within the pre-commit environment, thereby stabilizing the CI process and preventing future build failures related to formatting.

Highlights

  • Pre-commit hook configuration: Updated the biome-format pre-commit hook in .pre-commit-config.yaml to use language: node with additional_dependencies instead of language: system and npx. This change ensures pre-commit manages Biome installation, resolving CI failures.
  • Biome exclusion: Added package-lock.json to the exclusion list for the biome-format hook to prevent unnecessary formatting.

🧠 New Feature in Public Preview: You can now enable Memory to help Gemini Code Assist learn from your team's feedback. This makes future code reviews more consistent and personalized to your project's style. Click here to enable Memory in your admin console.

Using Gemini Code Assist

The full guide for Gemini Code Assist can be found on our documentation page, here are some quick tips.

Invoking Gemini

You can request assistance from Gemini at any point by creating a comment using either /gemini <command> or @gemini-code-assist <command>. Below is a summary of the supported commands on the current page.

Feature Command Description
Code Review /gemini review Performs a code review for the current pull request in its current state.
Pull Request Summary /gemini summary Provides a summary of the current pull request in its current state.
Comment @gemini-code-assist Responds in comments when explicitly tagged, both in pull request comments and review comments.
Help /gemini help Displays a list of available commands.

Customization

To customize Gemini Code Assist for GitHub experience, repository maintainers can create a configuration file and/or provide a custom code review style guide (such as PEP-8 for Python) by creating and adding files to a .gemini/ folder in the base of the repository. Detailed instructions can be found here.

Limitations & Feedback

Gemini Code Assist may make mistakes. Please leave feedback on any instances where its feedback is incorrect or counter productive. You can react with 👍 and 👎 on @gemini-code-assist comments. If you're interested in giving your feedback about your experience with Gemini Code Assist for GitHub and other Google products, sign up here.

Footnotes

  1. Review the Privacy Notices, Generative AI Prohibited Use Policy, Terms of Service, and learn how to configure Gemini Code Assist in GitHub here. Gemini can make mistakes, so double check it and use code with caution.

@gemini-code-assist
Copy link
Copy Markdown

Warning

Gemini is experiencing higher than usual traffic and was unable to create the review. Please try again in a few hours by commenting /gemini review.

@laurigates
Copy link
Copy Markdown
Member Author

  • Read the output of the failed workflows
  • Think about the root cause of the errors and warnings
  • For changes related to this PR, fix them directly
  • For pre-existing errors, create GitHub issues
    @claude

@claude
Copy link
Copy Markdown

claude bot commented Apr 9, 2026

Claude finished @laurigates's task in 8m 43s —— View job


Workflow Analysis & Fixes

Todo List:

  • Read CI status and failed workflow outputs
  • Analyze root causes of errors/warnings
  • Fix biome format nested config issue (PR-related)
  • Fix detect-secrets false positives (PR-related)
  • Update .secrets.baseline line numbers
  • Create GitHub issues for pre-existing errors — ⚠️ gh CLI blocked in this environment, commands provided below
  • Update comment with final summary

What Was Fixed (committed to this PR branch)

Commit 05e90bd: Two pre-commit hook failures fixed:

1. biome format--config-path react_ui added

Root cause: Biome 2.x running from the project root found react_ui/biome.json as a "nested root configuration", causing a conflict (biome 2.x requires either a root-level biome.json or an explicit --config-path).

Fix in .pre-commit-config.yaml:

-       entry: biome format --write
+       entry: biome format --write --config-path react_ui

2. detect-secrets — baseline updated with false positives & corrected line numbers

Root cause: Three false positives not in .secrets.baseline:

  • SECURITY_ANALYSIS.md:31 — example API key hex string in docs (not a real secret)
  • SECURITY_ANALYSIS.md:224SECRET_KEY = "dev-only-..." example in docs
  • .github/workflows/renovate.yml:33secrets: inherit YAML keyword falsely flagged
  • django_server/olmap_config/settings.py line_number was stale (180 → 189)

All added/fixed in .secrets.baseline as "is_secret": false.


Pre-existing Issues (manual action required)

The gh CLI is not available in this environment. Please create these two issues manually:

Issue 1: YAML linting errors in deploy/ files

gh issue create --repo ForumViriumHelsinki/OLMap \
  --title "fix: YAML linting errors in deploy/ values files" \
  --body "Pre-existing CI failures found in pre-commit hooks:

**check-yaml**: \`deploy/backend-values.yaml\` has duplicate key \`migrations\` (lines 4 and 219).

**yamllint** indentation errors:
- \`deploy/frontend-values.yaml\`: lines 10, 32, 52, 54, 57, 58, 91, 101, 121
- \`deploy/backend-values.yaml\`: lines 15, 28, 32, 43, 67, 135, 137, 148, 149, 182, 188, 205, 219, 225, 229, 240, 249, 286

**yamllint** line-length warnings (>120 chars): \`skaffold.yaml:22\`, \`k8s/local/config.yaml:9\`

These are blocking pre-commit CI from passing."

Issue 2: GitHub Actions Node.js 20 deprecation

gh issue create --repo ForumViriumHelsinki/OLMap \
  --title "chore: update GitHub Actions for Node.js 24 (deadline June 2, 2026)" \
  --body "The following workflow actions run on deprecated Node.js 20 and will be forced to Node.js 24 on June 2, 2026:
- actions/cache@v4
- actions/checkout@v4  
- actions/setup-python@v5
- actions/setup-node@v6 (referenced in test.yml line 116 — should also be downgraded to v4 per PR #79)

Update to newer action versions that support Node.js 24.
Ref: https://github.blog/changelog/2025-09-19-deprecation-of-node-20-on-github-actions-runners/"

| Branch: claude/issue-77-20260320-2010

- Add --config-path react_ui to biome format hook so biome 2.x finds
  the correct configuration without conflicting nested root config error
- Add SECURITY_ANALYSIS.md false positives to .secrets.baseline
  (example API keys in docs are not real secrets)
- Add renovate.yml 'secrets: inherit' false positive to .secrets.baseline
- Fix settings.py line_number in .secrets.baseline (180→189)

Co-authored-by: Lauri Gates <laurigates@users.noreply.github.com>
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.

finops: fix broken test workflow (100% failure rate)

1 participant