You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 9807105
Browse filesBrowse the repository at this point in the historyBrowse files
fix: require script/Build.sol, no legacy name, no skip
Accepting the legacy name kept the hardcoded-name hazard alive and let repos
defer indefinitely. script/Build.sol is the name; a repo that commits
src/generated/ without it goes red. Repos that don't want to upgrade pin rainix.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
# A repo that commits generated sources but exposes no regen step passes
33
-
# every check below without anything being regenerated, which is
34
-
# indistinguishable from a real pass. Fail loudly instead.
35
-
- name: Assert committed generated sources have a regen step
32
+
# Committed generated sources must be regenerable here, or the currency
33
+
# check below passes without checking anything. The codegen script is
34
+
# `script/Build.sol`, matched exactly: a repo that renames or drops it
35
+
# goes red rather than skipping regeneration and reporting green.
36
+
- name: Regenerate generated sources
36
37
run: |
37
-
if [ -d src/generated ] \
38
-
&& [ ! -f script/Build.sol ] \
39
-
&& [ ! -f script/BuildPointers.sol ] \
40
-
&& [ ! -f script/build.sh ]; then
41
-
echo "::error::src/generated/ is committed but no regen step was found (script/Build.sol, script/BuildPointers.sol or script/build.sh), so the currency check below would pass without regenerating anything."
38
+
if [ -d src/generated ] && [ ! -f script/Build.sol ]; then
39
+
echo "::error::src/generated/ is committed but script/Build.sol was not found, so the committed sources cannot be currency checked here. The codegen script must be script/Build.sol."
42
40
exit 1
43
41
fi
44
-
# The codegen script is consumer named: `script/Build.sol` is the
45
-
# convention, `script/BuildPointers.sol` the legacy name. Both are matched
46
-
# because a repo that renames its script must not silently stop being
47
-
# regenerated, and so must not be forced to rename in lockstep with this
0 commit comments