Skip to content

promote: board-automation hardening + advance caller to main#77

Merged
LukasWodka merged 1 commit into
mainfrom
develop
Jul 26, 2026
Merged

promote: board-automation hardening + advance caller to main#77
LukasWodka merged 1 commit into
mainfrom
develop

Conversation

@LukasWodka

@LukasWodka LukasWodka commented Jul 26, 2026

Copy link
Copy Markdown
Contributor

Promotes #76 to main — the board-automation changes only take effect once callers read them from @main.

Carries:

  • /fr-pass refuses the PR author + requires MEMBER/OWNER (#1271 / D30)
  • Release:-title auto-promote removed; prod-branch resolved by probing main/master not .kanban.yml (#1267 / D27-L4)
  • auto-classify.yml deleted (#1279 / D21)
  • advance-deploy-env-caller.yml added — so .github's own promotions advance kanban items (the "stuck at FR on dev" fix)

Merge with a merge commit. Gate override (skip-fr-gate) applies — .github has no staging branch (D28).


Note

Medium Risk
Changes who can advance kanban via /fr-pass and how items reach Prod; misconfiguration could leave boards stale (no auto-classify) or block legitimate FR sign-offs.

Overview
Removes the scheduled auto-classify workflow that every 10 minutes set Squad/Area from repo mappings and re-synced Deploy environment from Status.

Tightens /fr-pass: only MEMBER or OWNER can trigger it (no COLLABORATOR), and the commenter must not be the issue/PR author so authors cannot self-approve functional review.

Hardens nightly kanban-reconcile: prod branch for “SHA on prod → Prod” drift is resolved by probing main then master, not repo-controlled .kanban.yml (closes a path to self-grant prod via branch map). Release-vehicle title matching that auto-moved merged PRs to Prod is removed; merged PRs now only promote on merge SHA actually on the resolved prod branch.

Reviewed by Cursor Bugbot for commit 99d840d. Bugbot is set up for automated code reviews on this repo. Configure here.

…ssify cron (#76)

Four solo .github hardening items from RFC-BACKEND-0008, all board-automation:

- D30 (#1271): /fr-pass must be a real second pair of eyes. Refuse when the
  commenter is the PR author, and require MEMBER/OWNER (drop COLLABORATOR, which
  includes read-only outside collaborators). The Functional-reviewer field was
  set on 0 of 100 items; a self-pass was one comment away.

- D27-L4 (#1267a): remove the Release:-title auto-promote. A PR titled
  'Release: anything' merged to develop made kanban-reconcile set Status=Prod —
  rank 10, satisfying every future gate. Deleted; the drift-to-prod path (SHA
  actually on the prod branch) is the sound mechanism and stays.

- D27-L4 (#1267b): resolve the prod branch by probing main/master, not by
  reading a repo-controlled .kanban.yml from the default branch. A repo could
  commit 'branch_status_map: {develop: Prod}' and self-grant prod status to
  every develop merge. Ground truth now comes from the repo's branch list.

- D21 (#1279): delete auto-classify.yml. It ran every 10 min to populate Squad
  (deleted by D4) and rewrite Deploy environment with junk values; it is also
  what made updatedAt useless as a staleness signal. No callers.

actionlint + shellcheck clean; no dangling auto-classify references.

Refs tracebloc/backend#1271 #1267 #1279
@LukasWodka LukasWodka self-assigned this Jul 26, 2026
@LukasWodka LukasWodka added the skip-fr-gate Emergency override of the FR gate. Requires a written reason on the PR. label Jul 26, 2026
@LukasWodka

Copy link
Copy Markdown
Contributor Author

👋 Heads-up — Code review queue is at 39 / 30

Above the WIP limit. The team convention is to review existing PRs before opening new work.

Open PRs currently in Code review (oldest first):

Pull from review before opening new work. (This is a nudge from the kanban WIP check, not a block.)

@LukasWodka
LukasWodka merged commit 92dbb9a into main Jul 26, 2026
6 of 7 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

skip-fr-gate Emergency override of the FR gate. Requires a written reason on the PR.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant