Skip to content

chore(security): extend license allowlist with BSL-1.0, CC0-1.0, 0BSD#22

Merged
DTTerastar merged 1 commit into
mainfrom
chore/security-license-allowlist-extend
May 19, 2026
Merged

chore(security): extend license allowlist with BSL-1.0, CC0-1.0, 0BSD#22
DTTerastar merged 1 commit into
mainfrom
chore/security-license-allowlist-extend

Conversation

@Terastar-Paperclip
Copy link
Copy Markdown
Contributor

Summary

Resolves QUA-46 (follow-up from Lead Go review on PR #5).

Adds three permissive SPDX identifiers to the license allowlist in both the enforced gate (.github/workflows/security.ymlALLOWED_LICENSES) and the documented policy (SECURITY.mdLicense allowlist):

  • 0BSD — Zero-Clause BSD. Rare but real.
  • BSL-1.0 — Boost Software License (permissive, OSI-approved). Not the source-available Business Source License (BUSL-*, sometimes informally written "BSL"); this PR also spells the distinction out inline in SECURITY.md so a future contributor does not mistake one for the other and the denylist no longer ambiguously lists BSL-*.
  • CC0-1.0 — public-domain dedication, common in small Go utilities (yaml helpers, hash libs).

Why land them now: each saves an exception request the next time a transitive dep brings one of these in. They are all clearly permissive and consistent with the existing policy intent.

Ordering

Switched the allowlist to ASCII-sorted by SPDX id as the single source-of-truth ordering, pinned with a Keep this list sorted by SPDX id; SECURITY.md "License allowlist" must match exactly comment in the workflow. Both copies match exactly after the change.

Out of scope

  • Weak-copyleft additions (EPL-2.0, CDDL-1.0, LGPL-*, etc.) — Lead Go suggests skipping until a concrete dep needs them.
  • crono-export-cli / liftoff-export-cli — those repos have not onboarded the security workflow yet. When they do, they should pick up the same allowlist.
  • withings-export-cli carries a copy of the same workflow; a parallel PR there mirrors this change.

Test plan

  • CI green on this PR (govulncheck, osv-scanner, license-policy on current go.sum continue to pass — the allowlist is a strict superset of the previous list, so no existing deps regress).
  • SECURITY.md and .github/workflows/security.yml allowlists match exactly after the change.
  • Companion PR opened on quantcli/withings-export-cli with the identical ALLOWED_LICENSES line.

🤖 Generated with Claude Code

Adds three permissive SPDX identifiers to the allowlist in both
`.github/workflows/security.yml` (the enforced gate) and `SECURITY.md`
(the documented policy):

- `0BSD` — Zero-Clause BSD. Rare but real.
- `BSL-1.0` — Boost Software License (permissive, OSI-approved). Not
  the source-available Business Source License (BUSL/BSL on the
  denylist); SECURITY.md now spells the distinction out so future
  exception requests do not get triggered by the name collision.
- `CC0-1.0` — public-domain dedication, common in small Go utilities.

Switches the allowlist ordering to ASCII-sorted by SPDX id and pins
that ordering with a comment in security.yml, so the workflow env and
SECURITY.md stay in sync on future edits.

Withings-export-cli carries the same workflow copy; a parallel PR
mirrors the change there. crono- and liftoff-export-cli have not
onboarded the workflow yet and are out of scope for this PR.

Refs QUA-46.

Co-Authored-By: Paperclip <noreply@paperclip.ing>
@DTTerastar DTTerastar merged commit 10f39f9 into main May 19, 2026
7 checks passed
@DTTerastar DTTerastar deleted the chore/security-license-allowlist-extend branch May 19, 2026 11:49
DTTerastar pushed a commit to quantcli/withings-export-cli that referenced this pull request May 19, 2026
…#38)

Mirrors quantcli/common#22 (QUA-46) — keep the per-repo workflow copy
in lockstep with the source of truth in `quantcli/common`. No
functional change to this repo's existing deps; the allowlist is a
strict superset of the previous list.

The three new SPDX ids are all permissive (Boost, public-domain
dedication, Zero-Clause BSD). See `quantcli/common`'s SECURITY.md for
the documented policy, including the explicit `BSL-1.0` (Boost) vs
`BUSL-*` (Business Source) distinction added in the same PR.

Co-authored-by: LeadGoEngineer <leadgoengineer@quantcli.local>
Co-authored-by: Paperclip <noreply@paperclip.ing>
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