fix: wire dogfood issue reconciliation
This commit is contained in:
parent
d0f1a43064
commit
70db91fa1a
3 changed files with 18 additions and 0 deletions
3
.github/workflows/labels.yml
vendored
3
.github/workflows/labels.yml
vendored
|
|
@ -92,6 +92,9 @@ jobs:
|
||||||
uses: ./actions/labels-reconcile
|
uses: ./actions/labels-reconcile
|
||||||
with:
|
with:
|
||||||
bootstrap: ${{ github.event_name == 'workflow_dispatch' && 'yes' || 'no' }}
|
bootstrap: ${{ github.event_name == 'workflow_dispatch' && 'yes' || 'no' }}
|
||||||
|
env:
|
||||||
|
GH_TOKEN: ${{ github.token }}
|
||||||
|
REPO: ${{ github.repository }}
|
||||||
- name: reconcile issue flow
|
- name: reconcile issue flow
|
||||||
if: github.repository != 'heavy-duty/ceremony'
|
if: github.repository != 'heavy-duty/ceremony'
|
||||||
uses: ./.ceremony-src/actions/issueflow-reconcile
|
uses: ./.ceremony-src/actions/issueflow-reconcile
|
||||||
|
|
|
||||||
2
.github/workflows/self-labels.yml
vendored
2
.github/workflows/self-labels.yml
vendored
|
|
@ -7,6 +7,8 @@ name: labels
|
||||||
on:
|
on:
|
||||||
schedule: [{cron: "*/15 * * * *"}] # advisory; the handoff label is the real wake
|
schedule: [{cron: "*/15 * * * *"}] # advisory; the handoff label is the real wake
|
||||||
workflow_dispatch: # bootstraps missing labels on a fresh repo
|
workflow_dispatch: # bootstraps missing labels on a fresh repo
|
||||||
|
issues:
|
||||||
|
types: [opened, edited, assigned, unassigned, labeled, unlabeled, closed, reopened]
|
||||||
pull_request_target:
|
pull_request_target:
|
||||||
types: [opened, reopened, ready_for_review, converted_to_draft, synchronize, labeled, unlabeled]
|
types: [opened, reopened, ready_for_review, converted_to_draft, synchronize, labeled, unlabeled]
|
||||||
permissions:
|
permissions:
|
||||||
|
|
|
||||||
|
|
@ -23,6 +23,19 @@ check "missing triage actors fails loudly" 1 "missing triage-actors=" load_issue
|
||||||
printf '%s\n' 'triage-actors=one' 'triage-actors=two' >"$TMP/duplicate.conf"
|
printf '%s\n' 'triage-actors=one' 'triage-actors=two' >"$TMP/duplicate.conf"
|
||||||
check "duplicate triage actors fails loudly" 1 "duplicate triage-actors" load_issueflow_config "$TMP/duplicate.conf"
|
check "duplicate triage actors fails loudly" 1 "duplicate triage-actors" load_issueflow_config "$TMP/duplicate.conf"
|
||||||
|
|
||||||
|
# The dogfood caller and reusable workflow must expose the same runtime facts
|
||||||
|
# as the documented consumer stub. Static pins catch YAML blocks drifting to
|
||||||
|
# the adjacent composite step, which otherwise fails only after merge.
|
||||||
|
check "dogfood caller wakes on issue events" 0 " issues:" \
|
||||||
|
grep -F " issues:" "$ROOT/.github/workflows/self-labels.yml"
|
||||||
|
dogfood_pr_step="$(sed -n \
|
||||||
|
'/name: reconcile state + stale (dogfood/,/name: reconcile issue flow/p' \
|
||||||
|
"$ROOT/.github/workflows/labels.yml")"
|
||||||
|
check "dogfood PR reconcile receives repository" 0 ' REPO: ${{ github.repository }}' \
|
||||||
|
grep -F ' REPO: ${{ github.repository }}' <<<"$dogfood_pr_step"
|
||||||
|
check "dogfood PR reconcile receives token" 0 ' GH_TOKEN: ${{ github.token }}' \
|
||||||
|
grep -F ' GH_TOKEN: ${{ github.token }}' <<<"$dogfood_pr_step"
|
||||||
|
|
||||||
# Invariant 1: exactly one queue category.
|
# Invariant 1: exactly one queue category.
|
||||||
check "one ready queue label is valid" 0 "KEEP" queue_decision <<<"ready"
|
check "one ready queue label is valid" 0 "KEEP" queue_decision <<<"ready"
|
||||||
check "zero queue labels is derivably needs-triage" 0 "ADD_NEEDS_TRIAGE" queue_decision <<<"enhancement"
|
check "zero queue labels is derivably needs-triage" 0 "ADD_NEEDS_TRIAGE" queue_decision <<<"enhancement"
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue