2026-07-28 15:37:32 +00:00
# target-revenue
2026-07-28 18:34:10 +02:00
**Status:** Concept and specification only (Stage 0). Not production legal text. Do not attach TRSL to production software yet.
The **Target Revenue Framework (TRF)** is a phased software monetization system: a defined development **Phase** accumulates **Development Credit** and **Remission Credit** against an immutable **Initial Target** until the **Milestone Release** automatically converts to a permissive **Future License** (MIT or Apache-2.0). A **Trust Service** publishes manifests, ledgers, extensions, and attestations as factual evidence — it does not decide conversion.
> Commercial beneficiaries fund the creation and early availability of a software improvement; once the declared target is satisfied, the governed release becomes permissively open source.
## Terminology guardrail
Before conversion, software under TRSL is **source-available** with commercial-use restrictions. It is **not** Open Source under the [OSI Open Source Definition ](https://opensource.org/osd ) (field-of-endeavour non-discrimination). After the Conversion Event, the Milestone Release is available under the declared OSI-style Future License.
| State | Accurate label |
| --- | --- |
| Pre-conversion, noncommercial | Source-available (permitted uses) |
| Pre-conversion, commercial | Commercially licensed / entitlement required |
| Post-conversion | Open source under Future License |
## Reading order
1. [`INTENT.md` ](INTENT.md ) — durable purpose and design principles
2. [`SCOPE.md` ](SCOPE.md ) — what is in scope *now* vs later maturity
2026-07-29 10:22:14 +02:00
3. [`specs/TargetRevenueLicenseConcept.md` ](specs/TargetRevenueLicenseConcept.md ) — normative concept draft (ultimate source; governs if it and the extracts below ever diverge)
2026-07-28 18:34:10 +02:00
4. [`specs/ProductRequirementsDocument.md` ](specs/ProductRequirementsDocument.md ) — goals, FRs, roadmap
5. [`specs/TechnicalSpecificationDocument.md` ](specs/TechnicalSpecificationDocument.md ) — schema field tables and boundaries
6. [`specs/OpenQuestions-WorkingDefaults.md` ](specs/OpenQuestions-WorkingDefaults.md ) — provisional Stage 0 defaults
Exploration transcript (non-normative): [`history/260728-InitialExploration.md` ](history/260728-InitialExploration.md )
Program assessment: [`history/260728-SWOT-Assessment.md` ](history/260728-SWOT-Assessment.md )
Extract normative core docs (TREV-WP-0003 T01-T05)
Stabilizes day-to-day terminology out of the exploratory concept draft:
- specs/TargetRevenueFrameworkCore.md — core terms, target formula,
five-verb lifecycle, nine rules, invariants.
- specs/PhaseManifestSpecification.md — field tiers aligned with
schemas/phase_manifest.schema.json.
- specs/TargetLedgerSpecification.md — entry types, hash chain, pure
Outstanding Target fold, aligned with the WP-0002 library.
- specs/MonetizationExtensionSpecification.md — six-field contract,
registered/canonical distinction, Stage 0 Q11 catalog.
Cross-links PRD/TSD/README/CONTRIBUTING to the new extracts, confirms no
placeholder tails remain, and prepares a review checklist for T06 (human
promotion gate, left open pending maintainer review).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 02:13:55 +02:00
## Normative documents (day-to-day reference)
Extracted and stabilized from the concept draft under `workplans/TREV-WP-0003-normative-core-extraction.md` (T01– T05 done; T06 human review still open — see that workplan). Use these for terminology, not the concept draft's prose, in ordinary implementation work:
| Document | Covers |
| --- | --- |
| [`specs/TargetRevenueFrameworkCore.md` ](specs/TargetRevenueFrameworkCore.md ) | Seven core terms, target formula, five-verb lifecycle, nine core rules, foundational invariants |
| [`specs/PhaseManifestSpecification.md` ](specs/PhaseManifestSpecification.md ) | Phase Manifest field tiers and validation rules |
| [`specs/TargetLedgerSpecification.md` ](specs/TargetLedgerSpecification.md ) | Ledger entry types, hash chain, Outstanding Target fold |
| [`specs/MonetizationExtensionSpecification.md` ](specs/MonetizationExtensionSpecification.md ) | Six-field extension contract, registered vs. canonical |
**Forbidden synonyms:** do not treat undifferentiated "revenue captured" as equivalent to Development Credit (see `CONTRIBUTING.md` § Terminology); do not call pre-conversion software "Open Source" (see the guardrail table above).
Archive WP-0001 research to history/; add TRSL V1C1 license candidate
Persists the five prior-art/legal research artifacts and the original
draft skeleton as dated history/ records (260729- prefix, git mv to
preserve history), consistent with this repo's convention that history/
holds dated non-normative artifacts rather than living working documents:
- history/260729-TRSL-PriorArt-Survey.md
- history/260729-TRSL-Terminology-Guardrails.md
- history/260729-TRSL-FutureLicense-PatentPrecedent.md
- history/260729-TRSL-ContributorRights-Research.md
- history/260729-TRSL-Jurisdiction-StandardTerms.md
- history/260729-TargetRevenueSourceLicense-Draft.md (superseded)
Adds specs/TargetRevenueSourceLicense-V1C1.md: the first candidate written
as actual operative license text (11 sections: definitions, noncommercial
grant, commercial-use restriction, patent license, automatic conversion,
successive phases, termination/cure, warranty/liability, trademarks,
general provisions) rather than a bracket-annotated skeleton. Carries a
prominent preliminary-status notice near the top and a non-normative
Appendix A tracking the nine items still needing legal resolution before
any candidate can become official Version 1.0.
Updates all cross-references (README, PRD, TSD, SCOPE, workplan) to the
new paths; the workplan's T06 human-accept gate now points at V1C1.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 10:33:35 +02:00
## TRSL license candidate
[`specs/TargetRevenueSourceLicense-V1C1.md` ](specs/TargetRevenueSourceLicense-V1C1.md ) is the first candidate written as actual operative license text (Version 1, Candidate 1) rather than a bracket-annotated skeleton — **preliminary, not final, not for production use** (see the notice at the top of that file). It is grounded in the prior-art and jurisdiction research archived under `history/260729-TRSL-*.md` , and supersedes the earlier skeleton now archived at `history/260729-TargetRevenueSourceLicense-Draft.md` .
Draft Commercial Use Agreement V1C1 template
Adds specs/TargetRevenueCommercialUseAgreement-V1C1.md, the companion
agreement the License repeatedly refers to but never itself set terms
for: commercial entitlement grant, fees and explicit Development Credit
allocation, applicable monetization extensions, metering, audit rights,
term/termination (cross-referenced to License §7.2/§5.2 so a Commercial
Use Agreement termination can never revoke an already-converted Milestone
Release), and a real Section 9 implementing the informed-consent breach-
disclosure election that License §7.4 deferred here: opt-in named
disclosure vs. an anonymized default, a 10-business-day pre-publication
notice with a dispute window, and a data-protection carve-out.
Unlike the License, this Agreement had no dedicated prior-art research
pass (WP-0001 T01-T05 covered license models, terminology, patents,
contributor rights, and jurisdiction constraints, not commercial-agreement
drafting norms) — its preliminary notice says so explicitly, and Appendix A
leaves Section 13 (Indemnification) unwritten rather than guess at a
default carrying real financial exposure.
Corrects three prior references from the placeholder filename
"TRSL-CommercialUseAgreement-Draft.md" to the actual deliverable name, and
cross-references it from README, PRD, TSD, and SCOPE.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 12:48:23 +02:00
[`specs/TargetRevenueCommercialUseAgreement-V1C1.md` ](specs/TargetRevenueCommercialUseAgreement-V1C1.md ) is the companion Commercial Use Agreement template the License refers to but does not itself set terms for — same preliminary-candidate status, but **less** mature than the License: it had no dedicated prior-art research pass, and its Section 13 (Indemnification) is deliberately left unwritten rather than guessed.
2026-07-28 18:34:10 +02:00
## Repository layout
| Path | Role |
| --- | --- |
| `INTENT.md` | Stable purpose (change rarely) |
| `SCOPE.md` | Living Stage 0 scope |
2026-07-29 10:22:14 +02:00
| `specs/` | Concept source, product/tech specs, working defaults, and normative extracts |
2026-07-28 18:34:10 +02:00
| `workplans/` | Active delivery plans |
| `history/` | Dated non-normative exploration and assessments |
Implement TREV-WP-0002 Stage 0 foundation: schemas, pure fold, golden Phase
Delivers the offline runnable specification foundation for the Trust Layer
(TSD §3-§6), not a hosted Trust Service:
- JSON Schemas for Phase Manifest, Ledger Entry, Extension Contract, and
Conversion Attestation, encoding the Stage 0 working defaults (Q3 future
license enum, Q6 single-currency Phases, Q8 required longstop_at).
- src/target_revenue: pure Outstanding Target fold, SHA-256 hash-chain
verification, Ed25519 signing helpers, extension conformance checks
(including a core-term-redefinition heuristic), and conversion detection
that never requires an attestation document to determine conversion status.
- examples/phase-001: golden Phase package matching the concept doc's
worked example, generated via scripts/generate_golden_phase.py so the
hash chain is computed by the library itself, not hand-typed.
- 32 passing pytest tests covering manifest/ledger/extension conformance,
tamper/reorder detection, and the full lifecycle fold to conversion.
- docs/adr/ADR-0001: proposed (not accepted) Stage 0 stack choice, per the
WP-0002-T01 human-accept gate — implementation proceeded against the
proposal as the workplan note permits, but the task stays open.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-28 18:47:29 +02:00
| `examples/` | Golden Phase packages (`phase-001` , from WP-0002) |
| `schemas/` | Machine-readable JSON Schemas (WP-0002) |
| `src/target_revenue/` | Pure Python validators, hash chain, Outstanding Target fold, conversion detection (WP-0002) |
Complete TREV-WP-0001 research (T01-T05) and draft TRSL skeleton (T06)
Five research artifacts under specs/research/, grounded in primary-source
license text fetched live rather than relying on training-data recall:
- TRSL-PriorArt-Survey.md: BSL 1.1, FSL, PolyForm Noncommercial, Fair
Source, Elastic License 2.0. Confirms TRSL's closed {MIT, Apache-2.0}
Future License enum and no per-Phase custom license text follows FSL's
deliberate fix for BSL's "Additional Use Grant" variability problem.
- TRSL-Terminology-Guardrails.md: confirms via OSI OSD Clause 6 that
pre-conversion TRSL cannot be Open Source; confirms README's existing
guardrail table without change.
- TRSL-FutureLicense-PatentPrecedent.md: MIT has no patent language; Apache
2.0 has an explicit contribution-scoped grant + litigation termination.
Recommends TRSL's pre-conversion phase also carry an express patent grant.
- TRSL-ContributorRights-Research.md: confirms via DCO 1.1 text that a DCO
alone is insufficient for TRSL's dual-future-license promise; recommends
a narrowly-scoped CLA over copyright assignment.
- TRSL-Jurisdiction-StandardTerms.md: deepens German §31/§32 UrhG (primary-
confirmed) and §307 BGB Transparenzgebot (secondary-confirmed, flagged
for counsel verification); corrects scope re: EU UCTD 93/13/EEC being
consumer-only vs. German AGB law covering B2B too. Ranks five terms most
needing objective definitions.
specs/TargetRevenueSourceLicense-Draft.md (T06) synthesizes all five into a
non-binding skeleton with every clause tagged [CONFIRMED BY RESEARCH],
[LEGAL], [WORKING DEFAULT], or [OPEN]. Per the T06 human-accept gate, the
workplan task stays `todo` — ready for review, not accepted.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 09:25:05 +02:00
| `docs/adr/` | Architecture decisions; ADR-0001 (Stage 0 library stack) **accepted** 2026-07-29 |
2026-07-28 18:34:10 +02:00
2026-07-29 10:22:14 +02:00
**`spec/` vs `specs/` (resolved 2026-07-29):** the concept document originally lived under a separate singular `spec/` directory, which `history/260728-SWOT-Assessment.md` flagged as a "perpetual footgun." It has been merged into `specs/` alongside the product/tech specs and normative extracts — there is now one specs directory for the whole repository. The historical split, and the decision to merge it, remain visible in `history/260728-SWOT-Assessment.md` (unedited, as a dated record) rather than rewritten here.
2026-07-28 18:34:10 +02:00
## Active work
| Workplan | Focus |
| --- | --- |
Archive WP-0001 research to history/; add TRSL V1C1 license candidate
Persists the five prior-art/legal research artifacts and the original
draft skeleton as dated history/ records (260729- prefix, git mv to
preserve history), consistent with this repo's convention that history/
holds dated non-normative artifacts rather than living working documents:
- history/260729-TRSL-PriorArt-Survey.md
- history/260729-TRSL-Terminology-Guardrails.md
- history/260729-TRSL-FutureLicense-PatentPrecedent.md
- history/260729-TRSL-ContributorRights-Research.md
- history/260729-TRSL-Jurisdiction-StandardTerms.md
- history/260729-TargetRevenueSourceLicense-Draft.md (superseded)
Adds specs/TargetRevenueSourceLicense-V1C1.md: the first candidate written
as actual operative license text (11 sections: definitions, noncommercial
grant, commercial-use restriction, patent license, automatic conversion,
successive phases, termination/cure, warranty/liability, trademarks,
general provisions) rather than a bracket-annotated skeleton. Carries a
prominent preliminary-status notice near the top and a non-normative
Appendix A tracking the nine items still needing legal resolution before
any candidate can become official Version 1.0.
Updates all cross-references (README, PRD, TSD, SCOPE, workplan) to the
new paths; the workplan's T06 human-accept gate now points at V1C1.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 10:33:35 +02:00
| [TREV-WP-0001 ](workplans/TREV-WP-0001-license-prior-art-research.md ) | Prior-art research (T01– T05 done, archived to `history/` ) → TRSL V1C1 license candidate (T06 ready for human review) |
Extract normative core docs (TREV-WP-0003 T01-T05)
Stabilizes day-to-day terminology out of the exploratory concept draft:
- specs/TargetRevenueFrameworkCore.md — core terms, target formula,
five-verb lifecycle, nine rules, invariants.
- specs/PhaseManifestSpecification.md — field tiers aligned with
schemas/phase_manifest.schema.json.
- specs/TargetLedgerSpecification.md — entry types, hash chain, pure
Outstanding Target fold, aligned with the WP-0002 library.
- specs/MonetizationExtensionSpecification.md — six-field contract,
registered/canonical distinction, Stage 0 Q11 catalog.
Cross-links PRD/TSD/README/CONTRIBUTING to the new extracts, confirms no
placeholder tails remain, and prepares a review checklist for T06 (human
promotion gate, left open pending maintainer review).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 02:13:55 +02:00
| [TREV-WP-0002 ](workplans/TREV-WP-0002-trust-service-foundation.md ) | Schemas, pure Outstanding Target fold, golden fixture — **finished** |
| [TREV-WP-0003 ](workplans/TREV-WP-0003-normative-core-extraction.md ) | Extract stable normative core docs — T01– T05 done, T06 human review open |
Create TREV-WP-0004: global jurisdictional research plan
Backs the License/Commercial Use Agreement V1C1 candidates with a research
plan covering Germany, the rest of the EU, the US, the UK, Argentina (Latin
America anchor), India, China, representative African jurisdictions,
representative Asia-Pacific jurisdictions beyond India/China, and a
cross-cutting global choice-of-law/choice-of-forum strategy task.
Ten tasks: T01-T08 one per jurisdiction/family, T09 the cross-cutting
choice-of-law mechanism ("wherever"), T10 a synthesis that proposes (but
does not itself apply, per the human-accept gate) resolutions for the
governing-law, liability-cap, indemnification, and data-protection Appendix
A items in both V1C1 documents. Deliberately scoped as multiple targeted
tasks rather than one generic "international law" task, since prior
research already showed enforceability norms diverge in ways that don't
compress into a single finding (German AGB law covers B2B, EU consumer law
doesn't).
This workplan is planning only — no research has been executed yet.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 14:47:26 +02:00
| [TREV-WP-0004 ](workplans/TREV-WP-0004-global-jurisdiction-research.md ) | Global jurisdictional research backing the License/CUA candidates (Germany/EU, US, UK, Argentina, India, China, Africa, Asia-Pacific, choice-of-law) — planned, not started |
2026-07-28 18:34:10 +02:00
Hub index: [`WORK-RECORDS.md` ](WORK-RECORDS.md ) · brief: [`.custodian-brief.md` ](.custodian-brief.md )
Implement TREV-WP-0002 Stage 0 foundation: schemas, pure fold, golden Phase
Delivers the offline runnable specification foundation for the Trust Layer
(TSD §3-§6), not a hosted Trust Service:
- JSON Schemas for Phase Manifest, Ledger Entry, Extension Contract, and
Conversion Attestation, encoding the Stage 0 working defaults (Q3 future
license enum, Q6 single-currency Phases, Q8 required longstop_at).
- src/target_revenue: pure Outstanding Target fold, SHA-256 hash-chain
verification, Ed25519 signing helpers, extension conformance checks
(including a core-term-redefinition heuristic), and conversion detection
that never requires an attestation document to determine conversion status.
- examples/phase-001: golden Phase package matching the concept doc's
worked example, generated via scripts/generate_golden_phase.py so the
hash chain is computed by the library itself, not hand-typed.
- 32 passing pytest tests covering manifest/ledger/extension conformance,
tamper/reorder detection, and the full lifecycle fold to conversion.
- docs/adr/ADR-0001: proposed (not accepted) Stage 0 stack choice, per the
WP-0002-T01 human-accept gate — implementation proceeded against the
proposal as the workplan note permits, but the task stays open.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-28 18:47:29 +02:00
## Stage 0 library (schemas, pure fold, validators)
WP-0002 delivers an **offline, dependency-light library** — not a hosted
Trust Service (`SCOPE.md` §3). It validates the schemas in `schemas/` ,
computes the pure Outstanding Target fold, verifies the SHA-256 hash chain,
and checks Monetization Extension conformance.
```bash
pip install -e ".[dev]"
python3 -m pytest tests/ # 32 tests, no network required
python3 scripts/generate_golden_phase.py # regenerate examples/phase-001/ledger.json
```
The implementation stack (Python, `jsonschema` , `pytest` , `hatchling` ) is
Extract normative core docs (TREV-WP-0003 T01-T05)
Stabilizes day-to-day terminology out of the exploratory concept draft:
- specs/TargetRevenueFrameworkCore.md — core terms, target formula,
five-verb lifecycle, nine rules, invariants.
- specs/PhaseManifestSpecification.md — field tiers aligned with
schemas/phase_manifest.schema.json.
- specs/TargetLedgerSpecification.md — entry types, hash chain, pure
Outstanding Target fold, aligned with the WP-0002 library.
- specs/MonetizationExtensionSpecification.md — six-field contract,
registered/canonical distinction, Stage 0 Q11 catalog.
Cross-links PRD/TSD/README/CONTRIBUTING to the new extracts, confirms no
placeholder tails remain, and prepares a review checklist for T06 (human
promotion gate, left open pending maintainer review).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-29 02:13:55 +02:00
recorded in [`docs/adr/ADR-0001-stage0-library-stack.md` ](docs/adr/ADR-0001-stage0-library-stack.md ),
**accepted 2026-07-29**.
Implement TREV-WP-0002 Stage 0 foundation: schemas, pure fold, golden Phase
Delivers the offline runnable specification foundation for the Trust Layer
(TSD §3-§6), not a hosted Trust Service:
- JSON Schemas for Phase Manifest, Ledger Entry, Extension Contract, and
Conversion Attestation, encoding the Stage 0 working defaults (Q3 future
license enum, Q6 single-currency Phases, Q8 required longstop_at).
- src/target_revenue: pure Outstanding Target fold, SHA-256 hash-chain
verification, Ed25519 signing helpers, extension conformance checks
(including a core-term-redefinition heuristic), and conversion detection
that never requires an attestation document to determine conversion status.
- examples/phase-001: golden Phase package matching the concept doc's
worked example, generated via scripts/generate_golden_phase.py so the
hash chain is computed by the library itself, not hand-typed.
- 32 passing pytest tests covering manifest/ledger/extension conformance,
tamper/reorder detection, and the full lifecycle fold to conversion.
- docs/adr/ADR-0001: proposed (not accepted) Stage 0 stack choice, per the
WP-0002-T01 human-accept gate — implementation proceeded against the
proposal as the workplan note permits, but the task stays open.
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
2026-07-28 18:47:29 +02:00
2026-07-28 18:34:10 +02:00
## What this repo does not claim yet
- Final legal license text or enforceable TRSL
- A running production Trust Service
- A finalized degeneration formula (research + working defaults only)
- That any real product Phase is governed by TRF today
See [`SCOPE.md` ](SCOPE.md ) and [`CONTRIBUTING.md` ](CONTRIBUTING.md ).
## License
Repository contents are under [MIT No Attribution ](LICENSE ) unless a file states otherwise. That is the license of *this repository* , not the Target Revenue Source License for third-party software.