docs(licensing): clarify runtime gate vs license tier (#12)

Mirror of upstream luxfi/.github profile changes. Some prior phrasing
conflated "no runtime token check" with "no license", which is wrong:
every Lux artifact is licensed — tiers 1+2 just don't carry a runtime
token gate, while tier 3 does. Adds the canonical 3-row table to
/licensing and cross-references it from /open-core.

No license tier classifications change. No LICENSE files change. No
runtime-check behavior changes. Documentation correction only.
This commit is contained in:
2026-05-16 13:34:17 -07:00
committed by GitHub
parent af74f88e05
commit 01631c4e04
2 changed files with 40 additions and 2 deletions
+25
View File
@@ -29,6 +29,31 @@ and "Commercial Use" are the ones in the **Lux Ecosystem License v1.2**
text — see any Eco-tier repo's `LICENSE` for the binding language. Where
this page and the `LICENSE` disagree, the `LICENSE` wins.
## Runtime gate vs license tier
A common point of confusion: **every Lux artifact is licensed**. The
question is not "is there a license" — it is "which license, and is
there a runtime token check on top of it". The table below separates
those two concerns.
| Layer | Code license | Runtime token? | Enforcement model |
|-------|--------------|----------------|-------------------|
| BSD-3-Clause commodity | BSD 3-Clause (or inherited Apache-2.0 / MIT / GPL / LGPL / MPL / BSL where vendored) | None | Permissive open source; commercial use and forks unrestricted under the named license. |
| Patent-protected source-visible (Eco) | Lux Ecosystem License v1.2, Lux Research with Patent Reservation, or Lux Genesis License | None | Contract-only — source is visible so prior art is fixed and Authorized Networks can fork; commercial use outside Authorized Networks legally requires a signed paid license (Confluent Server / MongoDB SSPL pattern). |
| Closed performance moat | Commercial License Only (`lux-private/*`, not on public GitHub) | **`luxfi/license` token verified at startup** | Fail-closed runtime check (HashiCorp Vault EE / NVIDIA cuDNN pattern) — token signed by Lux Industries Inc., verified offline against an embedded public key. No phone-home. |
Two things this table makes explicit:
1. **The public CPU binary is not "unlicensed"**. It ships under
BSD-3-Clause (or, for vendored upstreams, the inherited Apache /
MIT / GPL / LGPL / MPL / BSL). What it lacks is a runtime token
check, because there is nothing in that binary to gate.
2. **The runtime token gate at `cevm v0.50.0` and later only fires on
tier-3 GPU/FPGA backends**. CPU paths run unmodified under their
actual public licenses. Removing or bypassing the token does not
make the closed code free — the closed code never shipped in the
public binary in the first place (two-binary distribution).
## What this strategy is and is not
| | |
+15 -2
View File
@@ -47,10 +47,23 @@ the highest-performance moat, **license key file** for runtime feature
gating of that moat, and **contract-only** for the patent-protected
source-visible Eco tier.
> **Runtime gate vs license tier** — every Lux artifact is licensed.
> The question is which license, and whether a runtime token check is
> layered on top. Tiers 1 and 2 have no runtime token check; tier 3
> does. Removing the token does not make the closed code free — the
> closed code never shipped in the public binary in the first place.
> The detailed table lives in
> [IP and Licensing Strategy → Runtime gate vs license tier](/licensing#runtime-gate-vs-license-tier).
### Tier 1 — BSD-3 commodity code
Pattern: none required. Pure BSD-3-Clause. Free for any purpose including
commercial. No license key, no entitlement check, no contract.
Pattern: none required at runtime. The code itself ships under the
BSD-3-Clause license (or, for vendored upstreams, the inherited
Apache-2.0 / MIT / GPL / LGPL / MPL / BSL license that already governs
that codebase). Use is governed by that license. No additional
commercial-license token at runtime; no entitlement check; no separate
contract with Lux Industries Inc. needed for commercial use beyond
honoring the named open-source license.
These are the building blocks: codecs, container types, networking glue,
keychain abstractions, SDK stubs, CLI plumbing. See the