github_apps bindings: key by full org/repo slug (short-name keys collide across orgs) #6
Labels
No labels
blocked
blocker:ci-red
blocker:conflict
blocker:drill-pending
blocker:unrequested
bug
claimed
documentation
enhancement
epic
merge-next
needs-triage
ready
release
scope:apply
scope:capture
scope:coolify-api
scope:fleet
scope:manifest
scope:secrets
stale
state:addressing
state:bots-reviewing
state:building
state:needs-human
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: heavy-duty/cast#6
Loading…
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Problem
bindings.github_appsis keyed by repo short name (cli.ts:bindings.github_apps[repoShort]whererepoShort = orgRepo.split('/')[1]).In the incubator deployment (D-219, 2026-07-12) two different repos share the short name
incubator:heavy-duty/incubator(canonical; operator-gated promotion PRs) via a GitHub App on theheavy-dutyorgclaude-hdb/incubator(the fork; agent integration) via a GitHub App onclaude-hdbOne
github_apps.incubatorentry can only name one of them. Workaround until fixed: the state file carries whichever App the nextcast applyneeds — fine while only prod is cast-managed, breaks the day the staging environment joins the control plane.Proposal
Resolve
github_apps[orgRepo](full slug) first, fall back togithub_apps[repoShort]for backward compatibility:One-line resolution change + schema stays
z.record(z.string()); existing short-name state files keep working.🤖 Generated with Claude Code