target-revenue/specs/research/TRSL-FutureLicense-PatentPrecedent.md
tegwick 55a1756f7c Merge spec/ into specs/: one specs directory for the whole repo
Moves TargetRevenueLicenseConcept.md from the separate singular spec/
directory into specs/ (git mv, preserving history) and updates every live
cross-reference (README, CONTRIBUTING, all specs/*.md, workplans, schema
comments, source docstrings, test file) to the new path.

This resolves the spec/ vs specs/ split that history/260728-SWOT-Assessment.md
flagged as a "perpetual footgun" and recommended deciding on. The historical
record of that split and the recommendation itself are left unedited in
history/ (a dated assessment, not a living document) — only README and TSD
now document the merge as resolved, with a pointer back to that history file
for context.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 10:22:14 +02:00

5.4 KiB

TRSL Future License Precedent: MIT vs. Apache-2.0 Patent Treatment

Document status: Research artifact, Stage 0 (workplans/TREV-WP-0001-license-prior-art-research.md T03) Not legal advice.


1. What the license texts actually say

MIT License

Full text confirmed (opensource.org/license/mit, fetched 2026-07-29) contains no mention of patents whatsoever — no grant, no exclusion, no termination clause. The grant is scoped to "the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software." Whether this implies any patent license at all is a long-standing, unresolved legal debate (the license simply does not address the question either way), not a settled "yes, broad implied grant" or "no, none at all."

Apache License 2.0

Section 3 (confirmed via apache.org/licenses/LICENSE-2.0, fetched 2026-07-29) grants an explicit, affirmative patent license:

"a perpetual, worldwide, non-exclusive, no-charge, royalty-free, irrevocable (except as stated in this section) patent license to make, have made, use, offer to sell, sell, import, and otherwise transfer the Work"

limited to patent claims "necessarily infringed by their Contribution(s) alone or by combination of their Contribution(s) with the Work" — i.e., scoped to what each contributor actually contributed, not a blanket grant over unrelated patents they might hold.

The same section includes a patent litigation termination clause:

"If You institute patent litigation against any entity... alleging that the Work or a Contribution incorporated within the Work constitutes direct or contributory patent infringement, then any patent licenses granted to You under this License for that Work shall terminate as of the date such litigation is filed."

This is a real, meaningful difference: Apache-2.0 gives downstream users an explicit, litigation-conditioned patent peace; MIT gives none, explicit or otherwise.

2. Practical implications for TRSL's Future License choice

  1. MIT is legally simpler but leaves patent questions open for whatever the Milestone Release becomes after conversion. For a Phase where patentable technique is plausible (novel algorithms, hardware-adjacent work), Apache-2.0's explicit grant plus litigation-termination deterrent is the safer default.
  2. Apache-2.0's grant is contribution-scoped, not project-scoped — it does not retroactively patent-license anything beyond what each contributor added. This matters for TRSL because a converted Milestone Release could carry contributions from multiple parties (licensor + external contributors, if/when a contributor-rights instrument exists — see specs/research/TRSL-ContributorRights-Research.md); Apache-2.0's per-contributor scoping is actually a good fit for that multi-party structure.
  3. Neither license's patent posture depends on which is chosen as only the Future License — the pre-conversion Phase itself has no patent grant either way in the models surveyed (specs/research/TRSL-PriorArt-Survey.md §3.4: BSL, FSL, PolyForm all omit one pre-conversion).

3. Recommendation

Keep both MIT and Apache-2.0 as parallel canonical Future License options (confirms working default Q3 — no change recommended). Add explicit guidance, not a forced choice:

  • Default recommendation: Apache-2.0 for any Phase where the Milestone Release plausibly embodies novel technique (its own patent grant plus litigation-termination clause reduces future ambiguity for adopters).
  • MIT remains appropriate where maximum simplicity/compatibility is prioritized over patent posture (e.g., small utilities, glue code, documentation-adjacent tooling) and patent risk is judged negligible.
  • This is a project-level judgment call at Phase declaration time, not a framework-level default — the framework's job is to offer both options with this guidance, not to pick one for all Phases.

4. Does the pre-conversion TRSL Phase need its own express patent license?

Recommendation: yes, worth adding, blocked on legal for exact wording. Rationale:

  • None of the surveyed pre-conversion license precedents (BSL, FSL, PolyForm) include one — so omitting one would not be unusual.
  • But TRSL's commercial entitlement model (paying for commercial-use rights) creates a closer analogy to a commercial software license than a permissive OSS license, and commercial software licenses conventionally do address patent scope explicitly to avoid ambiguity about what a paying commercial licensee actually receives.
  • A minimal express patent license for the pre-conversion Phase — scoped like Apache-2.0's Section 3 (contribution-scoped, litigation-terminable) — would give commercial entitlement holders the same patent peace of mind Apache-2.0 gives Future License adopters, without over-promising.

This item should be marked [LEGAL] in the T06 draft skeleton: the recommendation to include something is a research conclusion; the exact clause text requires specialist review (specs/TargetRevenueLicenseConcept.md §21.5).

5. For working defaults

No change to specs/OpenQuestions-WorkingDefaults.md Q3's schema-level closed enum ({MIT, Apache-2.0}) — confirmed correct. Recommend a future addition (not a Stage 0 schema change) of a pre_conversion_patent_grant: boolean or similar Phase Manifest field once T06/legal review settles the exact clause — out of scope for this research task, noted here so it is not lost.