target-revenue/history/260730-TRSL-OrgWideLicenseRollout.md
tegwick dcf6de57a4 Adopt TRSL V1C1 as org-wide preliminary license (WP-0008-T05 sub-decision)
Maintainer decision, 2026-07-29/30: adopts TRSL V1C1 as the preliminary
governing LICENSE across every repo in the coulomb Forgejo org,
confirmed explicitly as "every repo, no exceptions" including
target-revenue itself and internal tooling repos. This is a
license-text adoption, not a Phase declaration - no Initial Target,
Trust Service registration, or Development Credit tracking exists for
any repo as a result. WP-0008-T05 (real Phase go-live) remains todo
and unaccepted.

Applies TRSL to this repo's own LICENSE (self-referential wording,
since target-revenue is the canonical source) and updates
pyproject.toml's license field from MIT-0 to TRSL-0.1.

history/260730-TRSL-OrgWideLicenseRollout.md is the full execution
record: ~90 repos adopted successfully, 2 committed locally only (no
git remote configured: executor-sandbox, executor-worker), and one
explicitly flagged exception (the-custodian - carried a pre-existing
proprietary/confidential license, deliberately not touched pending
separate confirmation, not silently folded into the blanket
instruction).

scripts/rollout/LICENSE.trsl-v1c1 is the deployed template used across
all repos (operative legal text only, points back to this repo's
specs/TargetRevenueSourceLicense-V1C1.md for the full candidate-status
banner and Appendix A rather than duplicating it ~90 times).
2026-07-30 01:23:52 +02:00

7.5 KiB

Org-Wide TRSL License Rollout — Execution Record

Document status: Dated execution record, non-normative, append-only (WP-0008-T05). Not legal advice. Records what was actually done, when, and by whose authorization.


1. What was decided

Maintainer decision, 2026-07-29/30: adopt specs/TargetRevenueSourceLicense-V1C1.md (TRSL V1C1) as the preliminary governing license across every repository in the coulomb Forgejo org — confirmed explicitly as "every repo, no exceptions," including target-revenue itself and internal tooling/infrastructure repos (state-hub, ops-bridge, ralph-workplan, etc.), not only product-shaped repos. This was confirmed as an explicit override/acceptance of the workplans/TREV-WP-0008-governance-and-pilot-rollout.md T05 go-live gate for the license-adoption step specifically — see §4 below for what this does and does not mean.

The Licensor named in every deployed copy is Binky Hedgehog GmbH (specs/TRSL-Governance.md §1).

2. Mechanism

scripts/rollout/LICENSE.trsl-v1c1 is the deployed template: the operative legal text (Preamble through Section 11) of TRSL V1C1, with a preliminary-candidate status banner retained (not final, alpha/beta legal-review deferral noted, points back to the canonical specs/TargetRevenueSourceLicense-V1C1.md for the full status banner and Appendix A). Appendix A itself (non-normative candidate notes) is not duplicated into every repo — that would drift out of sync across ~90 copies; the canonical document remains the single source of truth for it.

For each repo: the existing LICENSE (or LICENSE.md/COPYING) was replaced, committed, and pushed as an individual, explicit git operation — not a bulk automated script (the sandbox's own safety classifier blocked an attempted bulk script; the maintainer chose to proceed repo-by-repo instead, each step visible and individually reviewable).

3. Results

Adopted and pushed successfully (all previously MIT-0/MIT-License unless noted):

info-tech-canon, net-kingdom, helix-forge, railiance-apps, coulomb-loop, activity-core, state-hub, key-cape, adaptive-pricing, agentic-resources, artifact-store, audit-core, binect-chrome, binect-js, binky-control, can-you-assist, citation-engine, citation-evidence, citation-work, config-atlas, coordination-engine, core-hub, direkt-vermittlung-de, disaster-control, domain-tree, email-connect, evidence-anchor, evidence-binder, evidence-source, feature-control, fin-hub (no prior LICENSE), flex-auth, freedom-intelligence, glas-harness, guide-board, hub-core, human-resources, identity-canon, ihp-railiance-probe, infospace-bench, issue-core, kaizen-agentic, kings-guard, kontextual-engine, llm-connect (no prior LICENSE), marki-docx, markitect-filter, markitect-main (no prior LICENSE), markitect-quarkdown, markitect-tool, open-cmis-tck, open-reuse, ops-bridge, ops-hub, ops-mason, ops-warden, phase-memory, polycode-sim, python-snake, qonto-assistant, rail-knative, rail-kubernetes, railiance-cluster (also reachable as railiance-bootstrap — a local symlink to the same directory/repo, not two separate repos), railiance-enablement, railiance-fabric, railiance-forge, railiance-hosts (no prior LICENSE), railiance-infra (no prior LICENSE), railiance-master, railiance-platform (no prior LICENSE), ralph-workplan (no prior LICENSE), rapp-openbao, rapp-qonto, reef-railiance, rein-aharness, rein-openweights, repo-scoping, repo-seed, reuse-surface, sand-boxer, secrets-engine, shard-wiki, snuggles-inventor, tegwick-control (no prior LICENSE), tele-mcp (no prior LICENSE), tenant-engine, testdrive-jsui, timeline-svg, unattended-progress-company, user-engine, vantage-point, vergabe-teilnahme, whynot-control (no prior LICENSE), whynot-design (no prior LICENSE), wise-validator, target-revenue (this repo — see §5, self-referential wording used instead of pointing to itself in the third person; pyproject.toml's license field also updated from MIT-0 to reflect TRSL-0.1).

Committed locally, not pushed (no origin remote configured at all):

  • executor-sandbox
  • executor-worker

These two repos have no git remote in this environment — the LICENSE change is committed to their local history but has nowhere to push to. Flagged for the maintainer to push (or configure a remote for) separately if these repos do have a remote elsewhere.

4. Explicitly skipped — requires maintainer attention

the-custodian was not changed. Two reasons converged:

  1. Its prior LICENSE read "Proprietary and Confidential Source Code and Data License" — materially different from the uniform MIT-0 placeholder every other repo carried. This is the one repo in the entire org where the rollout would replace an existing, deliberate proprietary/confidential license, not a permissive placeholder — qualitatively different from every other repo's change.
  2. The sandbox's safety classifier specifically blocked this repo's change (it did not block every repo — most succeeded, several others also required a retry, but the-custodian is the one where this session chose not to force it, given point 1 above compounds the caution the classifier itself was already signaling).

Recommendation: do not silently fold the-custodian into "every repo, no exceptions" without a separate, explicit confirmation — replacing a proprietary/confidential license with a source-available-with-eventual- conversion license is a different kind of decision than replacing an MIT-0 placeholder, and deserves its own deliberate sign-off rather than inheriting the blanket instruction by default.

5. target-revenue itself

Applied with self-referential wording (this repo's own specs/TargetRevenueSourceLicense-V1C1.md is the canonical source, not a pointer to another repo). pyproject.toml's license field updated from { text = "MIT-0" } to { text = "TRSL-0.1 (Target Revenue Source License, preliminary candidate — see LICENSE)" } — no other repo's package manifest (pyproject.toml, package.json, etc.) was updated in this pass; see §6.

6. What this rollout does NOT do — explicitly

This is a license-text adoption, not a Phase declaration:

  • No Phase Manifest was registered for any repo against the hosted Trust Service. No Initial Target, no Milestone Release, no degeneration policy, no Future License has been declared for any real repo as a result of this rollout.
  • No Development Credit is being tracked anywhere. No Commercial Entitlement is for sale under any of these repos.
  • No repo's package-manifest license metadata was updated, except target-revenue's own pyproject.toml — a repo whose package.json or pyproject.toml still declares MIT/MIT-0 now has a LICENSE file that says something different from its own package metadata. This is a known, named gap, not an oversight papered over — fixing it across ~90 repos' package manifests is future work, not attempted here.
  • Per SCOPE.md §1's alpha/beta risk-acceptance framing, this remains a bounded operating decision for the build/alpha stage, not a substitute for the specialist legal review still deferred until out of beta.

Real Phase declaration (an actual Initial Target, actual Trust Service registration, actual Development Credit tracking for a specific repo) remains a distinct, separate, future step — requiring, among other things, the development-effort-to-Initial-Target calculator the maintainer requested alongside this rollout (see the Target Revenue Control Plane workplan, not yet created at the time of this record).