Skip to content

fix(ci): repair never-parsed workflow(s) — job-level hashFiles() if - #15

Merged
hyperpolymath merged 1 commit into
mainfrom
fix/never-parsed-workflows
Jul 28, 2026
Merged

fix(ci): repair never-parsed workflow(s) — job-level hashFiles() if#15
hyperpolymath merged 1 commit into
mainfrom
fix/never-parsed-workflows

Conversation

@hyperpolymath

Copy link
Copy Markdown
Owner

What was broken

.github/workflows/secret-scanner.yml has never been parsed by GitHub. Proof:

  • The Actions API reports the workflow's name equal to its file path — the fallback GitHub uses when workflow parsing fails.
  • All 68 runs of this workflow failed with run_started_at == updated_at (0-second runs, zero jobs, no logs).
  • gh pr checks cannot see it (a parse-rejected workflow produces no check run).

Net effect: secret scanning has silently never run in this repo.

Cause and fix

File Cause Fix
.github/workflows/secret-scanner.yml rust-secrets job carried a job-level if: hashFiles('**/Cargo.toml') != ''. hashFiles() is not available in job-level if: expressions (they are evaluated server-side before any checkout), so GitHub rejects the entire file at parse time. Deleted the job-level if: line. Nothing else changed. The job's own grep guard makes it a no-op pass when no Rust sources exist.

Validation

  • actionlint: exit 0, no findings
  • python3 yaml.safe_load: parses
  • duplicate-key-detecting YAML loader: no duplicate mapping keys

The workflow has a pull_request trigger, so this PR itself is the live test: a Secret Scanner check appearing on this PR is the first time GitHub has ever parsed this file.

🤖 Generated with Claude Code

.github/workflows/secret-scanner.yml: the rust-secrets job carried a
job-level `if: hashFiles('**/Cargo.toml') != ''`. hashFiles() is not
available in job-level if: expressions (job-level if is evaluated
server-side before any checkout), so GitHub refused to parse the whole
workflow file — secret scanning has silently never run in this repo.
Fix: delete the job-level if line; nothing else changed.

Never-parsed evidence: the Actions API reported the workflow's name
equal to its file path (the fallback used when parsing fails), and all
68 runs failed with run_started_at == updated_at (0-second runs, zero
jobs, no logs).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
@gitar-bot

gitar-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown
CI failed: CI failures caused by an unregistered 'SiliconCore' dependency during Julia package instantiation and a duplicated '--fail' flag in the TruffleHog secret scanner action configuration.

Overview

Two distinct failure patterns were found across 4 failed CI jobs: dependency resolution failures during Julia package instantiation due to an unregistered package (SiliconCore), and a CLI argument error in the TruffleHog secret scanning action where the --fail flag was repeated.

Failures

Unregistered Julia Dependency: SiliconCore (confidence: high)

  • Type: dependency
  • Affected jobs: 90190299135, 90190299070, 90190299103
  • Related to change: yes
  • Root cause: Pkg.instantiate() failed because package SiliconCore is expected to be registered (or available via a local/development path/registry), but cannot be found in the General registry.
  • Suggested fix: Ensure that the SiliconCore package dependency is properly registered in the Julia General registry, added as a local dependency/submodule, or that the appropriate custom registry is added in the CI workflow before running Pkg.instantiate().

TruffleHog Duplicate Flag Configuration (confidence: high)

  • Type: configuration
  • Affected jobs: 90190299051
  • Related to change: yes
  • Root cause: In the GitHub Actions workflow file, the TruffleHog action is configured with extra_args: --only-verified --fail. The action itself also supplies --fail, causing the flag to be passed redundantly (trufflehog: error: flag 'fail' cannot be repeated).
  • Suggested fix: Edit the workflow file to remove --fail from extra_args, leaving just --only-verified.

Summary

  • Change-related failures: 4 failures across dependency resolution and workflow configuration.
  • Infrastructure/flaky failures: 0 failures.
  • Recommended action: Fix the TruffleHog workflow configuration by removing the duplicate --fail flag, and ensure the SiliconCore dependency is correctly registered or available in the Julia environment.
Code Review ✅ Approved

Removes the unsupported job-level hashFiles() conditional from the secret scanner workflow, enabling GitHub to successfully parse and execute secret scanning. No issues found.

Auto-approved and auto-merge armed: No blocking issues found.
Please see Auto-approve Docs for details on setting custom approval criteria. — merges when pipeline and required approvals pass.

Tip

Comment Gitar fix CI or enable auto-apply: gitar auto-apply:on

Options

Auto-apply is off → Gitar will not commit updates to this branch.
Display: compact → Showing less information.

Comment with these commands to change the behavior for this request:

Auto-apply Compact
gitar auto-apply:on         
gitar display:verbose         

Was this helpful? React with 👍 / 👎 | Gitar

@gitar-bot

gitar-bot Bot commented Jul 28, 2026

Copy link
Copy Markdown

⚠️ Gitar auto-approved this PR but could not enable auto-merge: auto-merge is disabled for this repository — enable "Allow auto-merge" in the repository settings.

@gitar-bot gitar-bot 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.

Gitar has auto-approved this PR and enabled auto-merge (configure)

@gitar-bot gitar-bot Bot added the gitar-approved Added by Gitar label Jul 28, 2026
@hyperpolymath
hyperpolymath marked this pull request as ready for review July 28, 2026 05:45
@hyperpolymath
hyperpolymath merged commit 43115e3 into main Jul 28, 2026
14 of 18 checks passed
@hyperpolymath
hyperpolymath deleted the fix/never-parsed-workflows branch July 28, 2026 05:45
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

gitar-approved Added by Gitar

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant