On October 2 GitHub added confidential comments to repository security advisories. Security advisories let maintainers of public repositories privately discuss and fix a vulnerability before disclosing it.
Confidential comments are visible only to people with write access to the repository. Reporters and invited collaborators without write access cannot see them and are not notified.
Previously, every comment on an advisory was visible to all collaborators, including the reporter. Discussion of suspected abuse or investigation details had to move elsewhere, and it dropped out of the advisory’s history.
The feature applies to public repositories with private vulnerability reporting enabled, on GitHub Free, Pro, Team and Enterprise Cloud.
The GraphQL API provides confidential comments, but the REST API does not return them. Integrations that read only REST see part of the advisory conversation.
Caveats: fixed visibility and changing permissions
After posting, a comment cannot be switched between confidential and regular. Visibility is set at the moment of posting.
Read access follows current repository permissions. Someone who loses write access can no longer read confidential comments, and views of confidential comments are recorded in the audit log.
These visibility rules alone do not show whether a reporter actually read a given note. What is described here is the permission model, not the result of testing a private advisory.
Deciding the audience before posting
Confidential comments are useful at the point of deciding who reads before posting. A request for reproduction details from a reporter only arrives if it sits on a path that person can see, such as a regular comment.
Internal tools check both which API path they read comments through and current permissions.
Seeing no comments over REST is not evidence that maintainers had no discussion.
Confidential comments do not hide a conversation; they fix who can read it at the moment of posting.