Skip to content

docs(adr): verify ADR-0010's administrative-settings rollout gap - #480

Merged
ss-o merged 4 commits into
mainfrom
docs/adr-0010-admin-verification
Jul 25, 2026
Merged

docs(adr): verify ADR-0010's administrative-settings rollout gap#480
ss-o merged 4 commits into
mainfrom
docs/adr-0010-admin-verification

Conversation

@ss-o

@ss-o ss-o commented Jul 25, 2026

Copy link
Copy Markdown
Member

Summary

Resolves checklist item 3 of ADR-0010's "Decision review required" section with actual verification instead of leaving it as an open question.

What was checked (2026-07-25, via gh api)

  • GET /repos/{owner}/{repo}/private-vulnerability-reporting across all 88 non-fork repos in the org: 86 return enabled: true; the remaining 2 (.github-private, .trunk) 404 because they are private repositories and GitHub only exposes this feature on public ones.
  • GET /repos/{owner}/{repo}/releases on the two repositories that have actually cut a release (zsh-lint, packaged zsh): both show immutable: false on their only release. No repo or org-level default toggle for this was found either.
  • Looked for an API-visible signal for "advisory notifications" and concluded there isn't one: this is the incident owner's personal GitHub notification configuration, not a repository or organization setting.

What this does not resolve

Checklist item 2 (naming a backup incident contact and verifying that person's repository/advisory permissions) is unchanged and still blocks acceptance. That is a decision for a maintainer to make, not something derivable from repository state.

References

  • decisions/0010-security-incident-response.md
  • Issue #454

Directly checked, via the GitHub API, what the 2026-07-18 audit left
unverified: private vulnerability reporting is enabled on all 86
applicable repos, release immutability is off everywhere sampled (a
real gap, not just an unknown), and advisory notifications turn out to
be a personal setting outside what this ADR can audit at all.

Checks off item 3 of the decision-review checklist. Item 2 (naming a
backup incident contact) is a maintainer decision this cannot resolve
and stays open; the ADR stays PROPOSED.
@ss-o
ss-o requested a review from a team as a code owner July 25, 2026 06:19
Copilot AI review requested due to automatic review settings July 25, 2026 06:19

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Updates ADR-0010’s “Administrative verification” section to replace an open audit note with concrete verification results (recorded 2026-07-25), and reflects that verification in the “Decision review required” checklist.

Changes:

  • Replace the prior “not administratively verified” note with API-based verification details for private vulnerability reporting, release immutability, and notification scope.
  • Mark checklist item 3 as completed and update the rationale for keeping the ADR in PROPOSED state to focus on the remaining escalation-route gap.

Comment thread decisions/0010-security-incident-response.md
Checklist item 2 needed a maintainer decision this couldn't make on
its own. Names wicoop (an active org member) as backup, with access
granted per incident rather than held standing: added as a draft
security-advisory collaborator only when an incident is actually
escalated, since wicoop's current repo access is inconsistent
(read-only on most repos, admin on wiki, no TSC-team membership) and
there's no live incident to grant broader access for yet.

All three resolvable checklist items are now closed. Item 4, the
accept/reject decision itself, is left open for a maintainer.
Copilot AI review requested due to automatic review settings July 25, 2026 06:35
@ss-o

ss-o commented Jul 25, 2026

Copy link
Copy Markdown
Member Author

Pushed a second commit naming wicoop as the backup incident contact (checklist item 2), per maintainer decision. All three resolvable checklist items are now closed; item 4 (accept/reject) is intentionally left for a maintainer.

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 2 comments.

Comments suppressed due to low confidence (2)

decisions/0010-security-incident-response.md:78

  • Escalation currently assumes the incident owner can add the backup as a draft-advisory collaborator, but the escalation condition is explicitly that the owner cannot act within the acknowledgement SLA. Reword this so the access-grant action is performed by whoever is available and authorized (e.g., any org maintainer with admin access to the affected repo).
If the owner cannot act within the acknowledgement SLA, escalate to wicoop and
add them as a collaborator on the affected repository's draft security
advisory, per the Ownership section above.

decisions/0010-security-incident-response.md:151

  • This paragraph says “Items 1 through 3 are resolved”, but item 2 is not actually resolved if verification of backup permissions is still pending. Update this paragraph to avoid overstating acceptance readiness.
Items 1 through 3 are resolved; the remaining gaps (release immutability,
personal notification settings) are disclosed rather than hidden, not left
unaddressed. Item 4, the actual accept, amend, or reject decision, is a
maintainer call this ADR cannot make for itself.

Comment thread decisions/0010-security-incident-response.md Outdated
Comment thread decisions/0010-security-incident-response.md Outdated
Three fixes from review:

- The checklist summary claimed release immutability was "verified
  off everywhere", overstating the Administrative verification
  section's actual scope (two sampled repositories). Reworded to
  match the evidence.
- Escalation and Ownership described "the owner adds wicoop" as the
  access-grant mechanism, but escalation exists specifically for when
  the owner cannot act -- a real logic gap, not just wording. Since
  ss-o is currently the org's only admin, there genuinely is no one
  else who can perform that grant if ss-o is unreachable. Disclosed
  this plainly in both sections instead of implying an operational
  route that doesn't fully exist. Also dropped the undefined
  "TSC-team" acronym and time-relative "today" wording.
- Checklist item 2 was checked as "verified" permissions, but the
  chosen access model deliberately never pre-verifies standing
  permissions. Reopened the item rather than leave a checked box that
  overstates what was actually confirmed.
Copilot AI review requested due to automatic review settings July 25, 2026 07:45

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated 1 comment.

Comments suppressed due to low confidence (1)

decisions/0010-security-incident-response.md:89

  • The escalation section says the owner cannot act, but then requires the owner to grant advisory collaborator access. That’s internally inconsistent and makes the escalation path unclear when the incident owner is unavailable.
If the owner cannot act within the acknowledgement SLA, escalate to wicoop.
The owner grants wicoop collaborator access on the affected repository's
draft security advisory at that time (see Ownership above). If the owner
cannot act specifically because ss-o, the only org admin, is unreachable, no
one else in the org can currently perform that grant, and wicoop responds
using whatever access they already hold until the org has a second admin.

Comment thread decisions/0010-security-incident-response.md Outdated
Matches the dating convention used for every other verified/confirmed
statement in this ADR, since org-role facts drift.
Copilot AI review requested due to automatic review settings July 25, 2026 08:06

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 1 out of 1 changed files in this pull request and generated no new comments.

Comments suppressed due to low confidence (1)

decisions/0010-security-incident-response.md:88

  • In the Escalation section, the first sentence says the owner cannot act, but the next sentence says “The owner grants wicoop collaborator access…”. Even with the later “if ss-o is unreachable” caveat, this is still internally confusing about who performs the grant in the handoff scenario. Rewording to explicitly name ss-o as the actor when reachable makes the escalation flow consistent and easier to follow.
If the owner cannot act within the acknowledgement SLA, escalate to wicoop.
The owner grants wicoop collaborator access on the affected repository's
draft security advisory at that time (see Ownership above). If the owner
cannot act specifically because ss-o (the org's only admin as of 2026-07-25)
is unreachable, no one else in the org can perform that grant, and wicoop

@ss-o
ss-o merged commit 58b6ff6 into main Jul 25, 2026
7 checks passed
@ss-o
ss-o deleted the docs/adr-0010-admin-verification branch July 25, 2026 09:10
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.

2 participants