feat(ci): notify QQ of Release, Deployment, and Discussion changes - #2004
Merged
Merged
Conversation
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.
Related issue
Closes #2003
Summary
Extend the existing QQ group notification workflow to cover Release lifecycle,
Deployment creation and status updates, and Discussion lifecycle events. The
formatter sends only bounded event metadata and intentionally excludes Release
and Discussion bodies, Discussion comments, Deployment payloads, and URL query
strings that may contain credentials.
Affected surfaces
Verification
python3 script/github/test_notify_qq.py- 17 tests passed.python3 script/github/qq_relay/test_relay_server.py- 13 tests passed.actionlint .github/workflows/ci.yml .github/workflows/qq-group-notifications.yml- passed with no findings.python3 -m py_compile script/github/notify_qq.py script/github/test_notify_qq.py- passed.git diff --check- passed.must be triggered after the trusted notifier lands on the default branch.
Risk and compatibility
relay. New formatters allowlist metadata, omit bodies and Deployment payloads,
and strip query strings and fragments from Deployment links.
runtime behavior changes.
paths are unchanged and remain covered by regression tests.
Reviewer map
.github/workflows/qq-group-notifications.yml, thenscript/github/notify_qq.py::build_notification.disallowed payload field, or cannot be formatted and accepted by the relay.
or disable
QQ group notificationsto stop all sends immediately.Contributor declaration
AI assistance: Codex assisted with implementation, tests, documentation, and
verification; the resulting changes were reviewed against the Issue scope.