Skip to content

chore(ca): remove the discontinued BuyPass Go CA provider (v2.16.1)#316

Merged
fabriziosalmi merged 2 commits into
mainfrom
chore/remove-buypass-dead-ca
Jun 15, 2026
Merged

chore(ca): remove the discontinued BuyPass Go CA provider (v2.16.1)#316
fabriziosalmi merged 2 commits into
mainfrom
chore/remove-buypass-dead-ca

Conversation

@fabriziosalmi

Copy link
Copy Markdown
Owner

BuyPass Go SSL has been discontinued. Per Buypass: no new ACME accounts since 2025-09-15, last issuance 2025-10-31, and the ACME service terminated with all certificates expired by 2026-04-15. It is now 2026-06, so selecting BuyPass can only fail — this removes it as a CA option (a subtractive cleanup).

Removed

BuyPass dropped from every surface, leaving the other CAs untouched (Let's Encrypt, ZeroSSL, Google, Actalis, DigiCert, SSL.com, Private CA):

  • modules/core/ca_manager.py — the CA registry entry
  • modules/api/models.py — the ca_provider enum
  • modules/api/resources.py — the test-ca-provider validation branch
  • templates/index.html, templates/partials/settings_ca.html — the dropdown option + config block
  • static/js/settings.js (9 sites), static/js/dashboard.js — UI wiring + label
  • README.md — the documented CA list
  • tests/test_ca_provider_test_endpoint.py — the BuyPass test

Graceful degradation (verified)

A certificate whose stored metadata still names buypass does not crash:

  • renew runs certbot renew against the on-disk config without re-resolving the CA;
  • reissue surfaces a clear ValueError that is caught and audited as a failure;
  • the dashboard CA-info panel gains a default branch showing "this certificate authority is no longer available; reissue with a supported CA" instead of a blank line.

Verification

  • The self-enforcing test_ca_provider_wiring_consistency.py derives the provider set from CAManager.ca_providers.keys() and checks every UI/API surface for missing and phantom providers — green. Full suite 1529 passed. py_compile + node --check clean. frontend-css and theme gates green. No buypass reference remains outside RELEASE_NOTES.md (release history, intentionally untouched).
  • An independent adversarial verifier traced every renewal/reissue/UI path and confirmed no crash and no provider-count assumptions.

Thanks to Joni for flagging the BuyPass discontinuation on LinkedIn.

🤖 Generated with Claude Code

fabriziosalmi and others added 2 commits June 15, 2026 14:37
BuyPass Go SSL has been discontinued: BuyPass stopped accepting new ACME
accounts on 2025-09-15, issued its last certificate on 2025-10-31, and
terminated the service entirely (all certificates expired) by 2026-04-15.
Selecting it can now only fail, so it is removed as a CA option.

Removed from the CA registry (ca_manager), the API ca_provider enum (models),
the test-ca-provider endpoint (resources), the dashboard and Settings UI
(index.html, settings_ca.html, settings.js, dashboard.js), the documented CA
list (README), and its unit test. The other CAs (Let's Encrypt, ZeroSSL,
Google, Actalis, DigiCert, SSL.com, Private CA) are unaffected.

A certificate whose stored metadata still names BuyPass degrades gracefully:
`certbot renew` runs against the on-disk config without re-resolving the CA;
a reissue surfaces a clear ValueError (caught and audited as a failure) rather
than crashing; and the dashboard's CA-info panel now has a default branch that
shows "this certificate authority is no longer available; reissue with a
supported CA" instead of a blank line.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Bump to 2.16.1 and add RELEASE_NOTES entries for v2.16.1 (BuyPass removal) and
v2.16.0 (the agentic audit trail, which shipped as a GitHub release only and
was missing from RELEASE_NOTES.md).

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
@fabriziosalmi fabriziosalmi merged commit 8480130 into main Jun 15, 2026
7 checks passed
@fabriziosalmi fabriziosalmi deleted the chore/remove-buypass-dead-ca branch June 15, 2026 12:51
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