Skip to content

fix: publish an org-default security policy - #17

Merged
toastygm merged 2 commits into
mainfrom
bug/14_default-security-policy
Sep 1, 2026
Merged

fix: publish an org-default security policy#17
toastygm merged 2 commits into
mainfrom
bug/14_default-security-policy

Conversation

@toastygm

@toastygm toastygm commented Sep 1, 2026

Copy link
Copy Markdown
Contributor

fix: publish an org-default security policy

Four repositories had no security policy at all — harn-adventures,
heroiclands-site, package-build and this one. Not because anyone decided they
needed none, but because a per-repository file is one more thing to remember
when a repository is created, and a default is remembered by construction.

package-build is the one that mattered. It executes during every consuming
package's build and is published to npm, which makes it the organisation's
highest-value supply-chain target, and it had no policy, no chooser entry and no
private reporting.

The file carries no repository-specific URL and no relative link, because a
default is rendered for many repositories and can name none of them: a relative
link resolves against this repository, not the one displaying it, so
.github/ISSUE_REPORTING.md#7 would 404 for every inheritor. A repository
publishing its own keeps it whole — GitHub does not merge the two.

The issue-chooser config.yml is deliberately NOT defaulted, though GitHub
supports it as one. Its private-reporting entry is a contact_link holding a
literal URL with no templating, so a single default would send every
repository's reporter to whichever repository was hardcoded — which is the exact
bug that opened #14, where harn-ensemble's chooser pointed at
sohl-kethira-basic. Defaulting the chooser would institutionalise that rather
than fix it.

This closes the file half only. Private vulnerability reporting is a repository
setting that no pull request can change, and it is still off in nine of the ten
eligible repositories while six advertise it. The README records the API call
that enables it and the check that confirms it.

Refs #14

Four repositories had no security policy at all — harn-adventures,
heroiclands-site, package-build and this one. Not because anyone decided they
needed none, but because a per-repository file is one more thing to remember
when a repository is created, and a default is remembered by construction.

package-build is the one that mattered. It executes during every consuming
package's build and is published to npm, which makes it the organisation's
highest-value supply-chain target, and it had no policy, no chooser entry and no
private reporting.

The file carries no repository-specific URL and no relative link, because a
default is rendered for many repositories and can name none of them: a relative
link resolves against this repository, not the one displaying it, so
`.github/ISSUE_REPORTING.md#7` would 404 for every inheritor. A repository
publishing its own keeps it whole — GitHub does not merge the two.

The issue-chooser config.yml is deliberately NOT defaulted, though GitHub
supports it as one. Its private-reporting entry is a contact_link holding a
literal URL with no templating, so a single default would send every
repository's reporter to whichever repository was hardcoded — which is the exact
bug that opened #14, where harn-ensemble's chooser pointed at
sohl-kethira-basic. Defaulting the chooser would institutionalise that rather
than fix it.

This closes the file half only. Private vulnerability reporting is a repository
setting that no pull request can change, and it is still off in nine of the ten
eligible repositories while six advertise it. The README records the API call
that enables it and the check that confirms it.

Refs #14
Both branches appended a README section immediately before `actions/labels`,
so git could not tell which order was intended. Keeping both: the two reusable
workflows stay adjacent and `SECURITY.md` follows them, ahead of the composite
actions.

No content from either side is dropped, and the net change against main is the
two files this branch adds.
@toastygm
toastygm merged commit 482a5d5 into main Sep 1, 2026
1 check passed
@toastygm
toastygm deleted the bug/14_default-security-policy branch September 1, 2026 23:38
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