issue-link.sh silently downgrades unsupported relations (blocks -> relates_to) #18
Labels
No labels
component:adapters
component:lifecycle
component:qa
component:setup
component:shared
component:worktrees
phase/accepted
phase/backlog
phase/deployed
phase/developing
phase/integrating
phase/planning
phase/qa
phase/requirements
phase/uat
priority:critical
priority:critical
priority:high
priority:high
priority:low
priority:low
priority:medium
priority:medium
type:bug
type:chore
type:docs
type:feature
type:infra
type:tech-debt
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
jbr870/devwork-skills#18
Loading…
Add table
Add a link
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?
Observed failure
issue-link.shsilently downgrades relations the forge does not natively support:blocksbecamerelates_toon GitLab CE — 4 times in one run (verity #113), with nothing on therecord saying the relation shipped weaker than requested.
siblingrelation was pre-swallowed (verity #164).The link exists, so the caller believes it got what it asked for. The record says something weaker than
the caller intended, and nobody can tell the difference later.
The decision to make
Two coherent options, and the point is to pick one deliberately:
the link, or a warning the caller must surface). Keeps the call working everywhere.
natively, and an unsupported relation is a refusal rather than a quiet substitution. Consistent with
how the contract handles other capability gaps (
polyfill/native/ unsupported).Option 2 matches the contract's existing shape; option 1 is cheaper and never blocks a run. Either is
defensible — silent downgrade is not, because it makes the record assert a relation nobody chose.
Source: dogfood retrospective 2026-08-07 (F2/F5), deferred backlog.