Skip to content

refactor(license): retire TierEnterprise + TierTestSuite alias (no grandfathering) - #448

Merged
krisarmstrong merged 4 commits into
mainfrom
refactor/retire-tier-enterprise
Jun 16, 2026
Merged

refactor(license): retire TierEnterprise + TierTestSuite alias (no grandfathering)#448
krisarmstrong merged 4 commits into
mainfrom
refactor/retire-tier-enterprise

Conversation

@krisarmstrong

@krisarmstrong krisarmstrong commented Jun 16, 2026

Copy link
Copy Markdown
Collaborator

Summary

Retire the Enterprise tier (tier 3 / product code 3001) and the deprecated TierTestSuite alias entirely. Tokens presenting tier 3 or code 3001 are now REJECTED (no grandfathering), not silently upgraded to Professional. Fleet licenses aligned to the locked matrix (niac/seed already have no Enterprise tier).

Linked Issue

Related to #450

Testing Evidence

$ go build ./...            # clean
$ golangci-lint run ./internal/license/... ./internal/help/...
0 issues.
$ go test ./internal/license/...   # ok

Security and Release Checklist

  • No grandfathering — deprecated Enterprise tokens now rejected
  • License validator change covered by tests (rejection asserted)
  • ADR-0007 amended; keygen 3001-retirement tracked as cross-repo follow-up

Pre-v1 no-grandfathering: Enterprise (tier 3 / product code 3001) is not
a SKU per LICENSE_STRATEGY (folded into Professional) and was still
grandfathering previously-issued tokens to Pro features. Remove it
entirely — a token presenting tier 3 or code 3001 is now REJECTED
(falls through to 'Invalid license tier' / product-code mismatch), not
silently upgraded. Also drop the deprecated TierTestSuite alias (0
internal callers; pre-v1 = no external-compat obligation).

- validator.go: remove TierEnterprise, codeEnterprise, TierTestSuite +
  the String/Validate/productCodeMatchesTier cases for tier 3.
- help: drop dead TestSuite/Enterprise tier copy (config.go, errors.go).
- ADR-0007: amendment documenting the retirement; valid codes now
  1001/2001 only. Keygen must stop minting 3001 (cross-repo follow-up).
- tests: Enterprise-validates assertions flipped to assert rejection;
  TierTestSuite->TierProfessional.

Fleet: niac (Free/Pro) + seed (Free/Starter/Pro) already have no
Enterprise tier — licenses now aligned to the locked matrix fleet-wide.
@github-actions

Copy link
Copy Markdown
Contributor

License Compliance Report

All dependencies pass license compliance checks

Go Dependencies

  • Unknown: 31 package(s)
  • MIT: 26 package(s)
  • BSD-3-Clause: 16 package(s)
  • Apache-2.0: 11 package(s)
  • BSD-2-Clause: 1 package(s)

npm Dependencies

See full report in workflow artifacts

Allowed Licenses: MIT, Apache-2.0, BSD-*, ISC, CC0-1.0, MPL-2.0
Forbidden: GPL, AGPL, SSPL (strong copyleft)

1 similar comment
@github-actions

Copy link
Copy Markdown
Contributor

License Compliance Report

All dependencies pass license compliance checks

Go Dependencies

  • Unknown: 31 package(s)
  • MIT: 26 package(s)
  • BSD-3-Clause: 16 package(s)
  • Apache-2.0: 11 package(s)
  • BSD-2-Clause: 1 package(s)

npm Dependencies

See full report in workflow artifacts

Allowed Licenses: MIT, Apache-2.0, BSD-*, ISC, CC0-1.0, MPL-2.0
Forbidden: GPL, AGPL, SSPL (strong copyleft)

@github-actions

Copy link
Copy Markdown
Contributor

License Compliance Report

All dependencies pass license compliance checks

Go Dependencies

  • Unknown: 31 package(s)
  • MIT: 26 package(s)
  • BSD-3-Clause: 16 package(s)
  • Apache-2.0: 11 package(s)
  • BSD-2-Clause: 1 package(s)

npm Dependencies

See full report in workflow artifacts

Allowed Licenses: MIT, Apache-2.0, BSD-*, ISC, CC0-1.0, MPL-2.0
Forbidden: GPL, AGPL, SSPL (strong copyleft)

@github-actions

Copy link
Copy Markdown
Contributor

License Compliance Report

All dependencies pass license compliance checks

Go Dependencies

  • Unknown: 31 package(s)
  • MIT: 26 package(s)
  • BSD-3-Clause: 16 package(s)
  • Apache-2.0: 11 package(s)
  • BSD-2-Clause: 1 package(s)

npm Dependencies

See full report in workflow artifacts

Allowed Licenses: MIT, Apache-2.0, BSD-*, ISC, CC0-1.0, MPL-2.0
Forbidden: GPL, AGPL, SSPL (strong copyleft)

@krisarmstrong
krisarmstrong merged commit dab673d into main Jun 16, 2026
39 of 41 checks passed
@krisarmstrong
krisarmstrong deleted the refactor/retire-tier-enterprise branch June 16, 2026 14:52
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant