Skip to content

links.yml's decline drops a false uniqueness clause (issue #1180) - #1185

Merged
fametrano merged 1 commit into
mainfrom
iss-1180-links-write-uniqueness
Sep 17, 2026
Merged

fametrano merged 1 commit into
mainfrom
iss-1180-links-write-uniqueness

Conversation

@fametrano

@fametrano fametrano commented Sep 17, 2026 •

Copy link
Copy Markdown
Member

Part of ISS 1180 —
no closing keyword. Four of the issue's six sites are settled with this
one: portanode (PR 553),
bitcoin-core-rpc (PR 489),
btclib-org.github.io (PR 71)
and this tree. The two that remain are both in btclib-node, whose
links.yml and vendored-vectors.yml each carry the clause, and that
branch lands last with the closing citation.

What the comment claimed

links.yml's comment beside permissions: said that granting
issues: write would make it the only workflow here that can write
anything. Measured in this tree, six workflows already carry an
uncommented <scope>: write: claude-review.yml
(pull-requests: write, id-token: write), reusable-attest.yml,
reusable-claude-review.yml, reusable-codeql.yml,
reusable-github-release.yml and reusable-scorecard.yml.

The clause was born false at every one of the issue's six sites —
two of them in the very commit that wrote them — rather than true when
written and stale later. The issue body's own first reading was the
staleness story; the correction is a comment on it.

What the branch does

Deletes the false clause and keeps the sound reason beside it,
converging on the wording btclib-benchmarks already carries rather
than inventing a fourth: "an automatic 'link rot' issue is the usual
next step, to save a maintainer from reading a failure notification they
already get."

Gates

At b79aedd, in the worktree: uvx pre-commit run --all-files exit 0
(40 hooks, none failed), and
BTCLIB_INTEGRATION=1 uv run --no-default-groups --group test pytest
661 passed, 110 skipped, exit 0. The tree was clean after the fixers.

The rebase

The branch was rebased onto a99e31a after the sibling landed, and the
union merge driver swallowed the blank line above the new ###
heading, as it has on every changelog rebase of this campaign. It was
restored and the result proved from the object store rather than from
the repair's own account of itself: the added lines are byte-identical
to the pre-rebase hunk at 9c8f0f9, the seam alarm prints nothing over
the repaired file and printed line 8852 over the damaged one, the
blank-pair count is 0 in branch and base alike, and the entry is last in
the open section at exactly the hook's three body lines.

🤖 Generated with Claude Code

https://claude.ai/code/session_01Xjn8bQapGHmhvLKMSy8b7d

Summary by Sourcery

Remove the inaccurate uniqueness claim from the links.yml permissions guidance while preserving the valid link-rot rationale.

Bug Fixes:

  • Correct the links.yml permissions comment by removing its false claim that declining issues: write makes it the only workflow able to write.

Documentation:

  • Document the corrected rationale for declining issues: write in the changelog.

`links.yml`'s permissions comment declined `issues: write` for two
reasons in one sentence: the sound one, that a write would only save a
maintainer from reading a failure notification already received, and a
uniqueness claim that this would become the only workflow here that can
write anything. `claude-review.yml` already grants `pull-requests: write`
and `id-token: write` to the job that calls `reusable-claude-review.yml`
by path, so the claim is false. The false clause is deleted; the sound
reason stays, and the decline of `issues: write` itself is unchanged.

Other trees carry the same false clause and are not touched here.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Xjn8bQapGHmhvLKMSy8b7d
@fametrano
fametrano merged commit 6740def into main Sep 17, 2026
2 of 4 checks passed
@fametrano
fametrano deleted the iss-1180-links-write-uniqueness branch September 17, 2026 18:12

@sourcery-ai sourcery-ai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Sorry @fametrano, you've used your own review budget of 250,000 diff characters for the last 7 days.

You can request another review in 3 days and 7 hours by commenting @sourcery-ai review. Upgrade to get a review now.

@sourcery-ai

sourcery-ai Bot commented Sep 17, 2026

Copy link
Copy Markdown
Reviewer's guide (collapsed on small PRs)

Reviewer's Guide

The PR corrects the links.yml permission comment by removing a false claim that its permission policy is uniquely non-writing, retains the valid link-rot rationale, and records the clarification in the changelog. The reported pre-commit and integration test gates passed successfully.

File-Level Changes

Change Details Files
Remove the incorrect uniqueness rationale from the workflow permission comment while retaining the valid link-rot automation rationale.
  • Delete the claim that declining issues: write makes this the only workflow able to write.
  • Preserve the explanation that automatic link-rot issues avoid redundant maintainer notifications.
  • Align the wording with the established btclib-benchmarks phrasing.
.github/workflows/links.yml
Document the correction in the changelog. CHANGELOG.md

Tips and commands

Interacting with Sourcery

  • Trigger a new review: Comment @sourcery-ai review on the pull request.
  • Continue discussions: Reply directly to Sourcery's review comments.
  • Generate a GitHub issue from a review comment: Ask Sourcery to create an
    issue from a review comment by replying to it. You can also reply to a
    review comment with @sourcery-ai issue to create an issue from it.
  • Generate a pull request title: Write @sourcery-ai anywhere in the pull
    request title to generate a title at any time. You can also comment
    @sourcery-ai title on the pull request to (re-)generate the title at any time.
  • Generate a pull request summary: Write @sourcery-ai summary anywhere in
    the pull request body to generate a PR summary at any time exactly where you
    want it. You can also comment @sourcery-ai summary on the pull request to
    (re-)generate the summary at any time.
  • Generate reviewer's guide: Comment @sourcery-ai guide on the pull
    request to (re-)generate the reviewer's guide at any time.
  • Resolve all Sourcery comments: Comment @sourcery-ai resolve on the
    pull request to resolve all Sourcery comments. Useful if you've already
    addressed all the comments and don't want to see them anymore.
  • Dismiss all Sourcery reviews: Comment @sourcery-ai dismiss on the pull
    request to dismiss all existing Sourcery reviews. Especially useful if you
    want to start fresh with a new review - don't forget to comment
    @sourcery-ai review to trigger a new review!

Customizing Your Experience

Access your dashboard to:

  • Enable or disable review features such as the Sourcery-generated pull request
    summary, the reviewer's guide, and others.
  • Change the review language.
  • Add, remove or edit custom review instructions.
  • Adjust other review settings.

Getting Help

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant