Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
11 changes: 6 additions & 5 deletions AGENTS.md
Original file line number Diff line number Diff line change
Expand Up @@ -9,13 +9,14 @@ licensing decision.
Treat this repository like a repository of reusable license text. It does not
need a universal software owner. A maintainer or steward of the canonical text
controls text publication and versioning only; that role does not by itself
make the person a copyright owner, licensor, commercial licensor, beneficiary,
or enforcement claimant for software placed under the license.
make the person a copyright owner, licensor, separate-permission grantor,
beneficiary, or enforcement claimant for software placed under the license.

For every adoption or enforcement question, identify the applicable software
Contributor or rights holder separately. A commercial-license exception can
come only from the applicable Contributors or someone independently authorized
by them. Do not investigate the ownership, contribution history, or source-file
Contributor or rightsholder separately. Separate written permission can come
only from all rightsholders whose authorization is necessary or from someone
independently authorized by them; do not assume anyone must offer it. Do not
investigate the ownership, contribution history, or source-file
headers of the FastLED codebase merely because the license is named FastLED.
Those facts are relevant only when the question specifically concerns FastLED
adoption, FastLED rights, or enforcement involving FastLED software.
Expand Down
12 changes: 6 additions & 6 deletions ARTIFACTS.sha256
Original file line number Diff line number Diff line change
@@ -1,10 +1,10 @@
a42aa7bb2925ba62054e14d6f4b32b2d1358270f0ac61cd7ec753a1ac00db7eb LICENSE
c46471504fd976d1e3693506d13b1d8c3bc25dca94c333736cb431b647692d67 LICENSE
452bf527cba6c1635f7c8d4a756c06ae3d2cbb50e020e612ac40cdee0233781f MPL-2.0.txt
07b4400299f67dad4bf49de5f3e2ee5c19daf2d95fc0800e0e07987993c66a13 LICENSE-AI-AGENT-INSTRUCTIONS.md
51a0ef022d3ade2ff0b7412aff9db9d33adc954d9dbfb0402c11037ad6bf7603 LICENSE-AI-AGENT-INSTRUCTIONS.md
4358d4c37f1305b43a3117a6a12780f666bf285538de0b28991613c0ccacecd8 LICENSE-MIT-LEGACY
4cc93f53cd775a8ed98c46e7658ce8ebce1c7fc764ddfc56224d7c8c582ae4c4 NOTICE-TEMPLATE.txt
8975b7bc9e8a11b7d4769efcbafab0a239c03a29cec027bd8a1140fe8f43b12d NOTICE-TEMPLATE-MIT-LEGACY.txt
b86c86db6b0a405f5c3933c1ed7e2495e2b889c8b01550b9bf2a5830b82136ba ai-policy.toml
965ec1ba8ff569db31e5f366909ae387b152f174ab3404154919b989e95dea23 header-policy.toml
90540d0496d5dc41c748de8c1942d6f9a259a1131f8ff5b3751251b37bd304ed NOTICE-TEMPLATE.txt
1e26b89ad86ef267672a20638ee747f3563452cf97c3c3676d699dfae49fd2df NOTICE-TEMPLATE-MIT-LEGACY.txt
f8c037026a86a1d313950dc6ef9ba03fd5e48dd65dd35c161b7a78659e1dc852 ai-policy.toml
53c035e6ff53f5d1e516f5a375266b71eb7da4baf1035c1a2fac944da33d80ba header-policy.toml
46a58ea084f12a001709c9b59a05d24be7180f82da52a12f646b18bd22125826 header-policy.schema.json
b9ea8bd9ef4d6eff9729d914db7927216ba2b49f4b800a89ea55906f155b1963 tools/license_headers.py
72 changes: 46 additions & 26 deletions LEGAL-REVIEW.md
Original file line number Diff line number Diff line change
Expand Up @@ -17,19 +17,21 @@ approval.

An AI multi-agent first-pass review of rc1 was filed as GitHub issues #2-#8
on 2026-08-24. The license was restructured in response. Rc2 then separated
the reusable license text from the rights, repositories, and commercial
licensing decisions of any particular adopting project. That work is input
to, not a substitute for, attorney review.
the reusable license text from the rights, repositories, and licensing
decisions of any particular adopting project. Rc3 records the subsequent
policy interview concerning monetization-triggered public return, upstream-
first submission, immutable versions, and GPL-family compatibility. That work
is input to, not a substitute for, attorney review.

## Decisions applied pending attorney ratification

1. **Reusable-text architecture.** The FastLED Reciprocal License may be
applied to software from any project. The canonical repository and its
maintainers publish and version the text only. They do not become the
owner, commercial licensor, beneficiary, or enforcement claimant for an
owner, separate-permission grantor, beneficiary, or enforcement claimant for an
adopter's software. Each Contributor grants rights only in its
Contributions. Any separate commercial license must come from the
applicable Contributors or someone independently authorized by them.
Contributions. Any separate written permission must come from all necessary
rightsholders or someone independently authorized by them.
Confirm Sections 10.1 and 11.3(g).
2. **Single-instrument construction.** The license is one self-contained
document: a modified MPL 2.0 renamed under its Section 10.3, with Mozilla
Expand All @@ -40,40 +42,58 @@ to, not a substitute for, attorney review.
2.7 does not condition the Contributor patent grant in Section 2.1(b) on
the public-availability rule or required AI-notice inclusion. Confirm this
allocation.
4. **Exhibit B closes Secondary-License distribution.** Sections 1.5, 3.3,
and 11.6 make the license deliberately GPL-incompatible in exchange for
making Section 11.3 non-bypassable. Confirm this trade-off before
recommending adoption.
5. **Zero-day timing is intentional and per version.** The development period
before a commercial Triggering Transfer is the compliance window.
Publication after the transfer restores rights only prospectively under
Sections 5.1 and 11.3(f). Confirm the condition-versus-covenant framing and
remedy consequences.
6. **The Triggering Transfer is recurring and modifier-bound.** It includes
the free-software-with-paid-product scenario and excludes specified
intra-group, manufacturing, lease, reseller, and network-only conduct.
Confirm each boundary and the interaction with applicable exhaustion law.
4. **GPL-family compatibility is the default.** Sections 3.3 and 11.6 use an
MPL-style Secondary License election for GPL 2.0 or later, LGPL 2.1 or
later, and AGPL 3.0 or later. The elected license controls conflicts and
incompatible reciprocal restrictions do not survive the election. Exhibit
B lets an adopter opt out. Confirm version-specific compatibility,
preservation of reasonable notices, and the deliberate GPL path around the
monetization trigger.
5. **Zero-day timing is intentional and per version.** Private non-monetized
development is allowed, but the period before the first Monetization Event
is the compliance window. Later publication restores rights only
prospectively under Sections 5.1 and 11.3(f). Confirm the condition-versus-
covenant framing and remedy consequences.
6. **The Monetization Event is broad and modifier-controlled.** It covers
transfers, hosted/network services, internal production, and later products
materially enabled by a modified tool. It has no revenue threshold and
exempts the activity categories stated in Section 11.1. Confirm the
copyright nexus, contract formation, preemption, causation, exhaustion,
education/media boundaries, and downstream-reseller treatment.
7. **The AI Coding Agent Notice is generic and mandatory.** Exhibit C and
`LICENSE-AI-AGENT-INSTRUCTIONS.md` contain the same project-agnostic notice.
Section 11.7(a) requires every adopter and source distributor to include a
complete copy as a copyright-license condition. Section 11.7(b) separately
states that an automated agent is not made a contracting party or
enforcement target and that its operating guidance adds no further
condition. Confirm that distinction and every distribution path.
8. **Release-candidate status is explicit.** The current identifier is
`LicenseRef-FastLED-Reciprocal-1.0-rc2`; the final identifier remains gated.
8. **Release-candidate status and immutable versions are explicit.** The
current identifier is `LicenseRef-FastLED-Reciprocal-1.0-rc3`; the final
identifier remains gated. Section 10 permits verbatim copies only, defaults
adoption to the pinned version, and allows an adopter to opt into later
canonical versions.
9. **Upstream return is the operational objective.** Section 11.3 requires a
public pull request, public fork, or complete patch in the official project
mechanism when one is available. Complete Compliance Source covers only
the covered portion and its reconstruction/build material. Confirm the
continuing-availability rule, third-party-interference window, and
treatment of confidential or unlicensable material.

## Attorney checklist

- the Section 10 distinction between canonical text publication and each
adopter's software ownership, licensing authority, and standing;
adopter's software ownership, licensing authority, standing, immutable
version selection, and verbatim-copy rule;
- the Section 11.1 definitions of optional Upstream Repository, Modified
Covered Software, Triggering Transfer, and Publicly Available;
Covered Software, Compliance Source, Materially Enables, Monetization Event,
Official Reporting Location, and Publicly Available;
- the Section 11.3 condition, duration, third-party-interference safe harbor,
prospective-only model, and project-specific separate-license valve;
upstream-first mechanisms, prospective-only model, and project-specific
separate-permission valve;
- Section 2.7 condition scope and the *Jacobsen*/*MDY* condition-versus-covenant
framing;
- the Exhibit B and GPL-incompatibility decision;
- the default Secondary-License compatibility rule, Exhibit B opt-out, and
GPL-conflict priority;
- the modified Sections 1.4, 1.5, 1.8, 3.1, 3.3, 3.4, 4, 9, and 10 against MPL
2.0, including compliance with MPL Section 10.3;
- Contributor copyright and patent grants and the requirement that each
Expand All @@ -87,5 +107,5 @@ to, not a substitute for, attorney review.
- Whether to modify Section 8's defendant-principal-place litigation rule.
- Whether to add a BUSL/FSL-style sunset or reversion clause.
- Whether unmodified MPL 2.0 plus a nonbinding upstreaming norm and
project-specific commercial licensing would better meet adopter goals than
project-specific separate permissions would better meet adopter goals than
this bespoke instrument.
Loading
Loading