Skip to content

fix(review): add linkedIssueLabelPropagation config to metagraphed and awesome-claude #4000

Description

@JSONbored

Context

Issue #3903 ("linked-issue label propagation is disabled everywhere + ownership check would block it anyway") was closed after the code fix shipped (ownership-check rework in src/review/linked-issue-label-propagation-fetch.ts, diagnostic logging, and enabling propagation in JSONbored/gittensory's own .gittensory.yml) — but the rollout was only completed for one of the two repos #3903 explicitly named.

Verified live today (2026-07-07):

  • gh api repos/JSONbored/metagraphed/contents/.gittensory.yml → only reviewEvasionProtection: close is set; no linkedIssueLabelPropagation block.
  • gh api repos/JSONbored/awesome-claude/contents/.gittensory.yml → same, no linkedIssueLabelPropagation block.
  • A read-only wrangler d1 execute gittensory --remote SELECT against production repository_settings confirms the DB-level fallback for both repos is still the disabled default ({}).
  • resolveEffectiveSettings (src/signals/focus-manifest.ts:484) only overlays linkedIssueLabelPropagation when the manifest sets it — an absent key falls straight through to the disabled DB default.

Net effect: PRs against metagraphed and awesome-claude still get their gittensor:bug/gittensor:feature/gittensor:priority label decided purely by commit-title regex, independent of the label already carried by the issue they close — the exact behavior contributors have reported as unfair, since rewards are tied to these labels.

Requirements

  1. Add the same settings.linkedIssueLabelPropagation block already live in gittensory's own .gittensory.yml to metagraphed's and awesome-claude's .gittensory.yml:
    settings:
      linkedIssueLabelPropagation:
        enabled: true
        mode: exclusive_type_label
        mappings:
          - issueLabel: "gittensor:bug"
            prLabel: "gittensor:bug"
            removeOtherTypeLabels: true
            trustMaintainerAuthoredIssue: true
          - issueLabel: "gittensor:feature"
            prLabel: "gittensor:feature"
            removeOtherTypeLabels: true
            trustMaintainerAuthoredIssue: true
          - issueLabel: "gittensor:priority"
            prLabel: "gittensor:priority"
            removeOtherTypeLabels: true
  2. Confirm awesome-claude actually uses the same gittensor:* label economy before copying verbatim — its .gittensory.yml is content-PR-first and may have a different label scheme; adjust mappings if so.
  3. No source code change required.

Deliverables

  • Two PRs, one per repo, each adding the linkedIssueLabelPropagation block.

Expected outcome

A PR closing an issue reliably inherits that issue's point-bearing label on metagraphed and awesome-claude, matching the behavior already working on gittensory itself. Verifiable by checking a handful of newly-merged PRs' labels against their linked issue's label post-rollout.

Metadata

Metadata

Assignees

Labels

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

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions