Repository navigation
fix(shell): use [[ ]] conditionals in check-lock-sync.sh (SonarCloud bracket rule) - #133
Conversation
Converted 3 single-bracket conditional tests in scripts/check-lock-sync.sh to [[ ]]. Verified: bash -n clean; shellcheck -S warning delta zero new findings; standalone run result unchanged vs HEAD. Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info
📝 Summary
Merge Risk: ⚪ Minimal · up to
|
|
|
✅ Coding Agent task started: View task and status The task will inspect the CI failures, validate its fix, and commit the fix to this branch automatically.
|
|
Autofix could not be updated. Open Coding to check access and billing. |
…sure (#135) ## What was failing Rust CI has been red on every run since 2026-10-16 ([run 38846539059](https://github.com/hyperpolymath/cicd-squabbler/actions/runs/38846539059) and each one after it), dying in `rust-ci / Detect Cargo.toml` at **Set up job**: ``` Unable to resolve action `actions/checkout@3d3c42e5aac5ba805825da76410c181273ba90b1`: invalid lockfile pin. Run `gh actions-lock` to update the lockfile ``` Nothing in this repository changed between the last green run (`60e8f7a`, 2026-10-15) and the first red one: the lock and the workflows are byte-identical across the flip. GitHub began validating a called reusable workflow against the **callee** repository's `actions.lock` at the called SHA, and rejects a dependency record whose `ref:` is the bare commit SHA instead of the tag it was resolved from. standards' lock at `8f2ee50` and `da2c748` records `actions/checkout@3d3c42e5…` with `ref: '3d3c42e5…'`; at `75bd599` (standards main, 2026-10-19) the same record reads `ref: 'v7.0.1'`, and callers pinned there create jobs again (hyperpolymath/hypatia#929 witnessed it first). A walk of standards' first-parent history shows 454 main commits from 2026-08-19 to 2026-10-19 carry such a record; `75bd599` is the first that does not. Governance, Mirror, Secret Scanner, Hypatia Scan, Scorecard and the standards pipeline were dying the same way, so all seven callers move together. ## What this PR does * Re-pins the seven standards callers to `75bd5994470661a099df562d6d5ad2fe744dbd66`. The pipeline caller passes no inputs, so the inputs `ci-pipeline.yml` dropped since `ed5e3f6` do not affect it. * Rebuilds `actions.lock` instead of patching it: one `hyperpolymath/standards@75bd599` record whose `uses:` is the union of what the seven called reusables use at that commit, and every third-party record copied verbatim from standards' own lock at `75bd599`, which GitHub accepts. The two actions this repository pins directly by SHA (`actions/attest-build-provenance`, `softprops/action-gh-release`) now carry the tag that resolves to their commit (`v4.2.2`, `v3.0.3`). Records nothing references are pruned. `scripts/check-lock-sync.sh`: in sync and transitively closed. * Resyncs two Dependabot bumps the lock had been missing since #133 (`smtp-notify-action` v0.5.0; `upload-artifact` v7.0.2 / `download-artifact` v8.0.2), which were startup-failing `push-email-notify.yml` and `static-analysis-gate.yml`. * Two rustdoc fixes in `squabble-core` for the strict warnings-denied doc build of cicd-suite's Rust gate (hyperpolymath/cicd-suite#54): public docs linked the private items `step_concluded` and `propose_for`. ## Verified locally `cargo fmt --check`, `cargo clippy --all-targets --locked -D warnings`, doctests, `cargo +1.85 check --workspace --locked` (the declared MSRV) and `cargo doc --document-private-items` with `RUSTDOCFLAGS=-D warnings` all pass. `scripts/check-lock-sync.sh` exits 0. ## Not in this PR Calling cicd-suite's strict Rust gate and the SPARK gate (for `spark/squabble_gate.gpr`) from here. This repository's lock-sync gate requires every called reusable's transitive closure in `actions.lock`, and that closure needs records for `EmbarkStudios/cargo-deny-action` and `alire-project/setup-alire` whose numeric repository ids this session cannot obtain (the GitHub API is scoped to the estate's own repositories). hyperpolymath/plasma-parser-writer#108 is the first live caller of the cicd-suite gate under the new callee-lock validation; what it shows decides whether cicd-suite must key its gate workflows in its own lock first. Either way the adoption here is a follow-up, with those two ids or with `gh actions-lock` run by someone who can. Commits on this branch are unsigned: no signing key is available in this session (the configured key file is empty). GitHub signs the squash merge. --- _Generated by [Claude Code](https://claude.ai/code/session_01Xn9nqHVbUTRLgBdedoXAc8)_ --------- Co-authored-by: Claude <noreply@anthropic.com> Co-authored-by: coderabbitai[bot] <136622811+coderabbitai[bot]@users.noreply.github.com>



Converts 3 single-bracket conditional tests in
scripts/check-lock-sync.shto[[ ]]per the SonarCloud bulk-sort of assigned findings.Verification:
bash -nclean;shellcheck -S warningbefore/after delta is zero new findings; standalone run result identical to HEAD (exit status unchanged).Pre-existing, not from this PR: this repo's
check-lock-sync.shalready failed on main before this change (actions.lock drift vs workflow refs) — verified by running the HEAD version from git. That needs its own fix.Generated by Mistral Vibe.
Co-Authored-By: Mistral Vibe vibe@mistral.ai