fix: pin cloc to v2.06 in fleet-reports workflow - #80
Merged
Conversation
ubuntu-latest's apt archive resolves to cloc 1.98, which doesn't recognise .astro or Jinja templates and silently drops both from the code census instead of miscategorizing them. Fetch the tagged cloc-2.06.pl release script and verify it against a recorded sha256 so CI and local regenerations stay reproducible against each other. Closes #78
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Summary
.github/workflows/fleet-reports.ymlinstalledclocunpinned viaapt-get, which resolves to cloc 1.98 onubuntu-latest(noble). That version doesn't recognise.astroor Jinja templates and silently drops both from the code census entirely, rather than miscategorizing them.cloc-2.06.plfrom the tagged GitHub release, verified against a recorded sha256, installed to/usr/local/bin/cloc.CLAUDE.md§ "Weekly fleet reports" to record the pin and explain why an unpinned/mismatchedclocbreaks local-vs-CI reproducibility.An earlier attempt (
claude/issue-78-20260730-0128) could only land theCLAUDE.mddoc update — that run's GitHub App token lackedworkflowswrite permission, so the actual workflow-file edit was left for a human. This PR carries the real fix.Heads up for review: the first scheduled run after this merges will show a one-time +2,172 line jump in the census total (the
.astro/Jinja files being counted for the first time) — that's the correction landing, not fleet growth. Worth noting when that week's refresh PR shows up so it isn't misread as activity.I verified the pinned script locally: fetched
cloc-2.06.plfrom the v2.06 release, confirmed the sha256 checksum used in the workflow matches, and ran it against a scratch.astrofile to confirm it's now recognized (previously absent from cloc's language list).Closes #78
Test plan
python3 ci/validate.pypasses locallyyaml.safe_load)cloc-2.06.plfrom the v2.06 release and confirmed sha256 matches the value embedded in the workflowcloclocally against a sample.astrofile — confirmed it's recognized as languageAstro(cloc 1.98 does not recognize it)ubuntu-latest(next scheduled Monday run, or trigger viaworkflow_dispatch)