Uh oh!
There was an error while loading. Please reload this page.
sec(2157): scope the add-to-kanban App token to least privilege (the source of truth) - #286
Merged
Merged
Conversation
…source of truth) Byte-identical to the 16 copies already merged, which is the point: this file is what caller-drift measures every other repo against. ORDERING INVERTED ON PURPOSE, and the reason is worth stating because it contradicts the heuristic this sweep started with. "Source of truth last" minimises the PEAK number of drift findings while most repos are unswept. Once the majority has flipped it does the opposite -- holding this file back is now the only thing keeping the audit red: .github unscoped (today) 16 findings the 16 merged copies all differ .github scoped (this PR) 1 finding only cli remains, its PR still open So this lands BEFORE the last straggler rather than after it. The heuristic was right for the first sixteen PRs and wrong for the seventeenth. WHAT IS NOT IN THIS COMMIT. repo-inventory.yml's `divergent` reason for release-train says its header "is now the ONLY difference". That is still false -- release-train's copy also lacks the scoping until release-train#93 merges, and it carries a second comment difference (the Dependabot note) the reason does not mention. Editing it here would make the inventory claim something untrue about a file that has not changed yet. It follows #93. Refs backend#2157.
saadqbal
commented
Aug 20, 2026
Collaborator
/fr-pass CI-only: scopes the add-to-kanban App token to least privilege. No product surface, so the staging journey neither covers it nor needs to — the repo's own CI is the verification. Advancing as part of the fleet-wide 2157/2166 sweep. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for freeto join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Refs backend#2157. The source of truth — byte-identical to the 16 copies already merged, which is the whole point: this file is what
caller-driftmeasures every other repo against.The ordering is inverted from where this sweep started, deliberately
"Source of truth last" minimises the peak number of drift findings while most repos are unswept. Once the majority has flipped it does the opposite — holding this file back is now the only thing keeping the audit red:
.github's copycliremains, its PR still openSo this lands before the last straggler rather than after it. The heuristic was right for the first sixteen PRs and wrong for the seventeenth, and I'd rather say that than quietly follow it off a cliff.
What it changes
Verified live before the sweep started: run 32255581084 exercised these exact scopes and landed the card (
Status=Code review), which settles whetherrepositories:scoping clipsorganization_projects. It does not.What is deliberately NOT in this PR
repo-inventory.yml'sdivergentreason forrelease-trainclaims its header "is now the ONLY difference". That is still false in two ways — release-train's copy also lacks the scoping until release-train#93 merges, and it carries a second comment difference (the Dependabot note) the reason never mentions.Editing it here would make the inventory assert something untrue about a file that hasn't changed yet. It follows #93.
After this merges
Dispatch
caller-driftread-only and expect 1 finding (cli), not 0 — and that is the correct answer, not a regression. It reaches 0 when cli#533 lands.Note
Cursor Bugbot is generating a summary for commit cbb65fa. Configure here.