Skip to content

chore(release): attribute auto-release commits and tags to dailybotops#4

Merged
xergioalex merged 4 commits intomainfrom
fix/psr-commit-author
May 2, 2026
Merged

chore(release): attribute auto-release commits and tags to dailybotops#4
xergioalex merged 4 commits intomainfrom
fix/psr-commit-author

Conversation

@xergioalex
Copy link
Copy Markdown
Member

Summary

The auto-release commits and tags for v1.0.0 and v1.0.1 currently show as authored by semantic-release <semantic-release> in git log and the GitHub UI. That is PSR's default when commit_author is unset — it ignores whatever git identity the workflow configures and uses its own placeholder.

This PR pins the author/committer (and the annotated tag's tagger) to dailybotops — the GitHub user that owns AUTOMATION_GITHUB_TOKEN and drives the automation. The user's noreply email pattern is used so the commit links to the GitHub profile in the web UI.

Change

pyproject.toml::[tool.semantic_release] gains:

commit_author = "dailybotops <107195154+dailybotops@users.noreply.github.com>"

The 107195154 prefix is dailybotops's GitHub user id (gh api users/dailybotops --jq .id).

After merge

The next time auto-release.yml runs, the chore(release) commit and matching tag will show as dailybotops in:

  • git log / git show <tag>
  • The GitHub commit/tag/release pages
  • The Activity feed

This also makes the upcoming branch protection setup ("nobody can push directly except dailybotops") match what people actually see in the commit history.

xergioalex and others added 4 commits May 2, 2026 16:03
## Summary
The first two automated releases (v1.0.0 and v1.0.1) showed up in
`git log` authored by "semantic-release <semantic-release>". That is
PSR's default when `commit_author` is unset — it ignores whatever git
identity the workflow configures and uses its own placeholder.

This commit pins the author/committer (and therefore the annotated
tag's tagger) to the GitHub user who actually drives the automation:
`dailybotops`. The user's noreply email pattern is used so the commit
links to the GitHub profile in the web UI.

## Change Log
- `pyproject.toml::[tool.semantic_release]`: new `commit_author` line
  set to `dailybotops <107195154+dailybotops@users.noreply.github.com>`.
  The `107195154` prefix is `dailybotops`'s GitHub user id, fetched
  from `gh api users/dailybotops`. Inline comment explains both the
  default-behavior trap and the noreply-email convention.

## Risks
- Verified locally: `semantic-release --noop version --print` parses
  the new config without error.
- After this PR is merged, the next release's `chore(release): X.Y.Z`
  commit and the matching `vX.Y.Z` tag will both show `dailybotops`
  as the author/tagger in git log and in the GitHub UI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
… as commit author

## Summary
Switches the auto-generated PSR commit/tag identity from the noreply
pattern to a branded corporate email. Cleaner in `git log` (`DailyBot
Automations` reads better than `dailybotops`), and aligns with the
existing `automations@` mailbox the org owns.

## Change Log
- `pyproject.toml::[tool.semantic_release]`:
  `commit_author = "DailyBot Automations <automations@dailybot.com>"`
  (was: noreply email pattern from PR#4 first iteration)
- Inline comment now warns that for the commit to show the `dailybotops`
  avatar + profile link in the GitHub UI, the email must be added and
  verified as a secondary email on the `dailybotops` GitHub account at
  https://github.com/settings/emails. Without verification the commit
  still works in git, just without avatar in the web UI.

## Action item for the maintainer
Verify `automations@dailybot.com` on the `dailybotops` GitHub account
once before the next release lands, so the chore(release) commit
shows up properly attributed in the GitHub UI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
Switching from `automations@dailybot.com` to `ops@dailybot.com` —
this matches the address already used by `release_and_publish.yml`
in DailybotHQ/universal-emoji-parser, and `ops@` is an active mailbox
that is reachable for the GitHub email-verification step.

The `automations@` mailbox could not be verified on the `dailybotops`
GitHub account (verification email never arrived). `ops@` should
work; once verified there, the chore(release) commits will display
the bot's avatar + profile link in the GitHub UI.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
@xergioalex xergioalex merged commit 481787d into main May 2, 2026
3 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant