Repository navigation
feat(startup): derive git committer.name/email from stand-identity.json - #780
Merged
Merged
Conversation
Author stays the GitHub-noreply email (CLA-Assistant gate). Committer becomes per-host so `git log --format='%h %an / %cn %s'` distinguishes which Sutando fleet host crafted each commit (Mini, MacBook, …). Opt-in by virtue of having stand-identity.json: • Mini → committer = "Echo Act IV (Mini) <mac-mini@noreply.sutando.local>" • MacBook → committer = "<MacBook stand> <macbook@noreply.sutando.local>" • OSS user (no stand-identity.json) → no change Silent fall-through on every "no identity" path: missing file, missing jq, empty/malformed name or machine. No new env var, no new file, no hard dep on jq. Smoke-tested all four paths. Follow-up to today's CLA-Assistant diagnosis (#779, #777): root cause of the silent CLA-pending was Mini's commit author being `Chi <wangchi@Chis-Mac-mini.local>` (OS-default hostname email) while MacBook's was `Chi Wang <4250911+sonichi@users.noreply.github.com>` (GitHub privacy noreply, resolvable). Author is now uniform via repo-local config; committer carries the per-host signal that author used to (badly) carry. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
liususan091219
pushed a commit
to liususan091219/sutando-fork
that referenced
this pull request
May 28, 2026
…on (sonichi#780) Author stays the GitHub-noreply email (CLA-Assistant gate). Committer becomes per-host so `git log --format='%h %an / %cn %s'` distinguishes which Sutando fleet host crafted each commit (Mini, MacBook, …). Opt-in by virtue of having stand-identity.json: • Mini → committer = "Echo Act IV (Mini) <mac-mini@noreply.sutando.local>" • MacBook → committer = "<MacBook stand> <macbook@noreply.sutando.local>" • OSS user (no stand-identity.json) → no change Silent fall-through on every "no identity" path: missing file, missing jq, empty/malformed name or machine. No new env var, no new file, no hard dep on jq. Smoke-tested all four paths. Follow-up to today's CLA-Assistant diagnosis (sonichi#779, sonichi#777): root cause of the silent CLA-pending was Mini's commit author being `Chi <wangchi@Chis-Mac-mini.local>` (OS-default hostname email) while MacBook's was `Chi Wang <4250911+sonichi@users.noreply.github.com>` (GitHub privacy noreply, resolvable). Author is now uniform via repo-local config; committer carries the per-host signal that author used to (badly) carry. Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
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
Author stays the GitHub-noreply email (CLA-Assistant gate). Committer becomes per-host so
git log --format='%h %an / %cn %s'distinguishes which Sutando fleet host crafted each commit.After this lands:
Echo Act IV (Mini) <mac-mini@noreply.sutando.local><MacBook stand> <macbook@noreply.sutando.local>stand-identity.json→ silent skip)Why
Today's CLA-Assistant incident (#779, #777) root-caused: Mini's commits were authored as
Chi <wangchi@Chis-Mac-mini.local>(OS-default hostname email), which CLA can't resolve to any GitHub user → silent PENDING forever. MacBook's commits were authored as4250911+sonichi@users.noreply.github.com(GitHub privacy noreply) → resolved cleanly → ✅.Fix in two parts:
user.emailset to the noreply on every host → unified author → CLA gate consistent. (Done manually on Mini today; this PR doesn't add it because per-hostgit config --localisn't bash-portable.)Test plan
bash -n src/startup.sh— syntax OKstand-identity.jsonpresent → committer fields set correctlyname/machine→ silent skipbash src/startup.shon Mini (here) and verifygit config committer.emailresolves tomac-mini@noreply.sutando.localstand-identity.jsonpopulates the right machine slug🤖 Generated with Claude Code