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
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
3. [`spec/TargetRevenueLicenseConcept.md` ](spec/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).
2026-07-28 18:34:10 +02:00
## Repository layout
| Path | Role |
| --- | --- |
| `INTENT.md` | Stable purpose (change rarely) |
| `SCOPE.md` | Living Stage 0 scope |
| `spec/` | Normative **concept** source (`TargetRevenueLicenseConcept.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
| `specs/` | Product/tech specs, working defaults, and normative extracts (WP-0003) |
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 |
| `specs/research/` | TRSL prior-art and legal-adjacent research (WP-0001) briefing `specs/TargetRevenueSourceLicense-Draft.md` |
2026-07-28 18:34:10 +02:00
**`spec/` vs `specs/` :** The concept document predates the plural `specs/` directory and remains under `spec/` so history and cross-references stay stable. New product/tech artifacts go under `specs/` . Do not move the concept file without a deliberate migration note.
## Active work
| Workplan | Focus |
| --- | --- |
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
| [TREV-WP-0001 ](workplans/TREV-WP-0001-license-prior-art-research.md ) | Prior-art research (T01– T05 done) → non-binding TRSL draft skeleton (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 |
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.