DEVEX-1653: declare on_rt input on slack-deploy-notification (unblock sweep)#148
Merged
Merged
Conversation
…ock sweep
The DEVEX-1653 on_rt sweep across 21 RT participant repos (webstore
#4670 + 20 subagent-opened sibling PRs + shipments-api #373's new
deploy-production.yaml) all pass `on_rt: ${{ inputs.on_rt }}` (or
`${{ github.event.inputs.on_rt == 'true' }}`) to this workflow. But
this workflow didn't yet declare the input — so any sweep PR merging
first would break Slack notifications with "invalid input: on_rt".
Declare the input now (default false, required false) so those PRs
are safe to merge in any order. The classifier step is UNCHANGED:
still uses tag-shape inference, still emits 🚂 RT for -rc.<date>.<iter>
tags and ⚡ Hotfix for everything else. Current behavior is preserved.
Follow-up PR (once sweep merges + rt-promote.sh updates to pass
-f on_rt=true) will:
- Flip classifier to bright-line: if on_rt=true → 🚂 RT, else → ⚡ Hotfix
- Drop tag-inference fallback (which currently mis-badges rc.N>1
hotfix backport promotes as RT — Sam's 2026-07-09 rc.8 case)
PR SummaryLow Risk Overview Slack RT vs Hotfix badges are unchanged — the classify step still infers from image tag shape ( Reviewed by Cursor Bugbot for commit 54b8894. Bugbot is set up for automated code reviews on this repo. Configure here. |
pdodgen-revparts
marked this pull request as ready for review
July 9, 2026 22:09
pdodgen-revparts
added a commit
that referenced
this pull request
Jul 9, 2026
…#149) feat(slack): flip classifier to bright-line on_rt rule (Phase 3 of DEVEX-1653 badge) The DEVEX-1653 sweep completed (21 participant PRs merged 2026-07-09, plus the accept-only on_rt input in #148). Every participant's deploy chain now propagates on_rt to this workflow. Flip the classifier from tag-shape inference to bright-line on the declared intent: on_rt=true → 🚂 RT (only rt-promote.sh sets this) on_rt=false → ⚡ Hotfix (default — every other dispatch path) This fixes Sam's 2026-07-09 rc.8 case where a hotfix backport promoted manually via mis-badged as 🚂 RT because the tag matched the -rc.<date>.<iter> pattern. The tag pattern can't distinguish rc.1 (initial train ship) from rc.N>1 (hotfix backport) — only the dispatcher's intent knows. Depends on: - Every participant declaring on_rt on deploy-production.yaml (done — 21 sweep PRs merged) - Shared slack-deploy-notification.yaml declaring on_rt input (done — #148 merged as ab8282c) Companion PR (must merge in the same window): - encodium/actions: rt-promote.sh update to pass -f on_rt=true on each deploy-production.yaml dispatch. Between this PR's merge and the rt-promote.sh update landing, every prod deploy shows as ⚡ Hotfix — including next Thursday's train ship if rt-promote.sh hasn't been updated yet. That's the safe default (better to under-classify than to falsely-badge as RT), but keep the two PRs tight.
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.
Context
The DEVEX-1653
on_rtsweep opened 21 draft PRs (webstore #4670 + 20 subagent-opened sibling PRs on the other RT participants + shipments-api #373 which contains a freshdeploy-production.yaml). Every one of them passeson_rtthrough to this workflow:deploy-production.yaml→deploy-eks.yaml→slack-deploy-notification.yamlwithon_rt: ${{ inputs.on_rt }}deploy-production.yaml→slack-deploy-notification.yamlwithon_rt: ${{ github.event.inputs.on_rt == 'true' }}Ordering gap I missed when opening the sweep: this workflow didn't declare
on_rtas a workflow_call input. If any sweep PR merged first, its prod deploys would fail with "invalid input: on_rt" on the slack-notification step.What this PR does
Declares
on_rtas an optional workflow_call input (default false). The classifier step is unchanged — still uses tag-shape inference (-rc.YYYY-MM-DD.N= 🚂 RT, else = ⚡ Hotfix). The input is accepted but not yet consumed by the badge logic.Current Slack badge behavior is preserved exactly.
Follow-up (once sweep merges + rt-promote.sh updates)
A separate coordinated pair of PRs will:
encodium/.github: flip classifier to bright-line rule —if on_rt=true → 🚂 RT, else → ⚡ Hotfix. Drops tag-inference fallback.encodium/actions: updatert-promote.shin captain handbook to dispatch each deploy with-f on_rt=true.That fixes Sam's 2026-07-09 rc.8 case where a hotfix backport mis-badged as 🚂 RT.
Merge safety
on_rt(default false).Small blast radius, easy to eyeball. Ready for review.