Skip to content

orb(gate): a momentary linked-issue state permanently condemns a PR (linked_issue_hard_rule_violated_at never clears) #9029

Description

@JSONbored

linked_issue_hard_rule_violated_at is written when any single pass observes a violation (src/queue/processors.ts ~3046-3051) and is never cleared (src/db/repositories.ts ~4227-4243). It is then merged as violated-forever while any rule is enabled (linked-issue-hard-rules.ts ~154-186).

So an ephemeral, benign issue state condemns the PR for its entire lifetime. Concrete case: a maintainer momentarily self-assigns the linked issue to triage it; the next pass observes "issue assigned to someone else", stamps the violation, and the PR is permanently marked for a one-shot close. Removing the assignment does not exonerate it. The only escape is disabling all hard rules (anyRuleOn, ~173-183).

This punishes contributors for a maintainer's own triage action, with no recourse.

Fix

Require the violation to be observed on two temporally separated passes before persisting, or store the observed snapshot so a benign transition (assignee removed, issue reopened) clears the flag. Distinguish "the author dodged the rule" from "the state changed underneath them".

Metadata

Metadata

Assignees

Labels

maintainer-onlyOwner-only work — yields no Gittensor points.orbGittensory Orb related - maintainer self-hosting analytics.

Projects

No projects

Relationships

None yet

Development

No branches or pull requests

Issue actions