Revises V1C1 §7.4 per maintainer instruction: the License no longer sets a named-by-default disclosure rule for published breach/termination records. Instead, whether a Commercial Entitlement holder is named is governed exclusively by the applicable Commercial Use Agreement — a bilaterally negotiated contract where informed consent can actually be obtained. The License itself only guarantees an anonymized Phase-and-category fallback where no Commercial Use Agreement addresses it or none exists (e.g. a noncommercial Section 2(c) breach). This meaningfully reduces the License text's own legal exposure: the open item is no longer "should the License name parties by default" but "the not-yet-drafted Commercial Use Agreement template needs its own naming/consent/data-protection clause" — recommended as a future TRSL-CommercialUseAgreement-Draft.md deliverable, analogous to the CLA recommendation already on record. Updates Appendix A item 10, OpenQuestions-WorkingDefaults.md Q12 item 5, PRD FR-10, and TSD §4.1 to match. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
223 lines
10 KiB
Markdown
223 lines
10 KiB
Markdown
# Open Questions — Stage 0 Working Defaults
|
||
|
||
**Status:** Provisional (non-normative until promoted into core specs)
|
||
**Date:** 2026-07-28
|
||
**Authority:** Unblocks schema enums, golden fixtures, and draft legal skeleton. Does **not** finalize legal policy.
|
||
**Sources:** PRD §14, concept §24, SWOT I-09
|
||
**Promotion rule:** Moving a default into `TargetRevenueFrameworkCore.md` or TRSL draft requires human accept (SCOPE §4).
|
||
|
||
---
|
||
|
||
## How to read this document
|
||
|
||
| Label | Meaning |
|
||
| --- | --- |
|
||
| **Working default** | Use this in Stage 0 schemas, examples, and validators |
|
||
| **Blocked on research** | No default yet; do not invent in code as if normative |
|
||
| **Blocked on legal** | Needs specialist input; skeleton may mark `[LEGAL]` only |
|
||
|
||
Each item maps to PRD open question numbers in parentheses.
|
||
|
||
---
|
||
|
||
## Q1 — Noncommercial rights during protected Phase (1)
|
||
|
||
**Working default (documentation only):**
|
||
During a protected Phase, noncommercial users may view source, evaluate, test, and use for personal, research, and educational purposes consistent with a PolyForm-Noncommercial-style scope — exact clause text is **blocked on legal**.
|
||
|
||
**Schema impact:** No mandatory machine field beyond Future License and Phase status.
|
||
**Not decided:** Contractor-on-behalf-of-enterprise edge cases (see Q2).
|
||
|
||
---
|
||
|
||
## Q2 — Definition of commercial use (2)
|
||
|
||
**Working default:**
|
||
Treat as **commercial use** any use by or for an organization that is not purely personal, academic research, or recognized non-profit educational classroom use — **provisional**, for examples and risk callouts only.
|
||
|
||
**Blocked on legal:** Affiliates, contractors, mixed-purpose, public-sector, and internal-tools-only definitions must appear in TRSL draft with objective wording (AGB/clarity risk).
|
||
|
||
**Stage 0 practice:** Golden examples assume a paying “commercial entitlement” for any company production use; do not encode a full classifier in the fold library.
|
||
|
||
---
|
||
|
||
## Q3 — Future License options (3)
|
||
|
||
**Working default:**
|
||
Both **MIT** and **Apache-2.0** are allowed `phase.future_license` enum values. Phase authors choose one at publication; default in examples is **MIT**.
|
||
|
||
**Patent treatment of pre-conversion phase:** Express patent license for permitted uses is **blocked on legal** (WP-0001-T03). Schemas allow Future License enum only; no separate patent field required in Stage 0.
|
||
|
||
---
|
||
|
||
## Q4 — Target Multiple classes (4)
|
||
|
||
**Working default:**
|
||
`target_multiple` is an **open decimal** ≥ 0. The 0x / 1x / 10x / 100x / 1000x labels are **guidance classes** (concept §7.4), not a closed enum.
|
||
|
||
**Stage 0 practice:** Examples use 100. Validators accept any non-negative decimal; may **warn** (not fail) if value is not in `{0,1,10,100,1000}`.
|
||
|
||
---
|
||
|
||
## Q5 — Development-cost components in target basis (5)
|
||
|
||
**Working default:**
|
||
Target basis transparency fields: `estimated_effort_days`, `daily_rate` (or equivalent published rate), `approved_direct_costs`.
|
||
`Initial Target = (effort × rate + direct costs) × target_multiple` when basis is fully supplied.
|
||
|
||
**Excluded from Stage 0 basis by default:** Marketing, general overhead, unrelated R&D, opportunity cost, and speculative “market value” uplifts not expressed via Target Multiple.
|
||
|
||
**Blocked on research/legal:** Employee vs contractor rate disclosure norms; mandatory audit of direct costs.
|
||
|
||
---
|
||
|
||
## Q6 — Currency and FX (6)
|
||
|
||
**Working default:**
|
||
A Phase has **one native currency** (`phase.initial_target.currency`). All ledger entries for that Phase **must** use the same currency in Stage 0.
|
||
|
||
**Schema rule:** Reject entry currency mismatches. No FX conversion in the pure fold.
|
||
|
||
**Later:** Optional FX extension may be registered; until then multi-currency Phases are out of scope.
|
||
|
||
---
|
||
|
||
## Q7 — Progress-sensitive degeneration formula (7)
|
||
|
||
**Working default (pilot formula, not final norm):**
|
||
Publish a versioned policy id `trsl:policy:linear-longstop-v0` defined as:
|
||
|
||
- Remission accrues **only** by time toward a declared **Longstop Date** (see Q8).
|
||
- Between Phase activation `t0` and Longstop `tL`,
|
||
\( R(t) = T_0 \times \mathrm{clamp}((t - t_0)/(t_L - t_0), 0, 1) \)
|
||
with discrete ledger `remission-credit` entries computed on a published schedule (e.g. daily or monthly UTC), **or** a single full remission at longstop for minimal implementations.
|
||
- Development Credit does not change the remission schedule in v0 (no progress-sensitive boost/pause yet).
|
||
|
||
**Blocked on research:** Progress-sensitive pause when material Development Credit arrives; diversity-of-payers factors. Track in `TargetDegenerationPolicyResearch.md` (planned).
|
||
|
||
---
|
||
|
||
## Q8 — Fixed Longstop Date (8)
|
||
|
||
**Working default:**
|
||
**Every Phase MUST declare a Longstop Date** (or equivalent full-remission instant) in the Phase Manifest for Stage 0 conformance.
|
||
|
||
**Schema:** Treat `phase.longstop_at` (ISO 8601) as **Required** for Stage 0 validators (extension of TSD §3.1 recommended fields → required under working defaults).
|
||
|
||
**Rationale:** Prevents indefinite restriction if the product hypothesis fails (PRD risk table; concept §13.3).
|
||
|
||
---
|
||
|
||
## Q9 — Public metrics mandatory set (9)
|
||
|
||
**Working default — mandatory public facts:**
|
||
|
||
- Initial Target, currency
|
||
- Cumulative Development Credit
|
||
- Cumulative Remission Credit
|
||
- Outstanding Target
|
||
- Conversion status
|
||
- Last ledger entry id / checkpoint hash
|
||
- Longstop timestamp
|
||
|
||
**Recommended:** Development Credit velocity; time since last material Development Credit; forecast conversion date **labeled as forecast only**.
|
||
|
||
**Optional:** Contributor diversity counts; confidence ranges.
|
||
|
||
---
|
||
|
||
## Q10 — Minimum evidence for Development Credit (10)
|
||
|
||
**Working default — tiered evidence references:**
|
||
|
||
| Tier | `evidence_reference` | When |
|
||
| --- | --- | --- |
|
||
| E0 | Opaque internal id (`confidential:…`) | Allowed in Stage 0 fixtures; insufficient for external audit claims |
|
||
| E1 | Settled payment reference (processor/id) | Minimum for any public claim of Development Credit in a pilot |
|
||
| E2 | Contract + invoice + settlement set | Recommended for disputed or high-value credits |
|
||
|
||
**Recognition event (see extension contract):** Working default **`payment-settled`** only. Invoice/order without settlement do not create Development Credit in Stage 0 fold inputs.
|
||
|
||
**Blocked on legal:** Audit rights wording and confidential evidence disclosure process.
|
||
|
||
---
|
||
|
||
## Q11 — First canonical extensions (11)
|
||
|
||
**Working default — Stage 0 catalog targets:**
|
||
|
||
1. `development-license` — default development_allocation 100% of settled development fee (net of tax/refunds per extension)
|
||
2. `cost-plus-operations` — default development_allocation 0%
|
||
3. `phase-sponsorship` — development_allocation **explicitly declared** per transaction
|
||
4. `service-with-development-allocation` — default 0%; explicit split when reusable work enters Milestone
|
||
5. `product-ideation` — default 0% or declared
|
||
6. `general-consulting` — default 0%
|
||
|
||
Status `canonical` requires documented review; Stage 0 may ship them as `registered` examples first.
|
||
|
||
---
|
||
|
||
## Q12 — Disputes, audits, operator conflicts (12)
|
||
|
||
**Working default (process stub):**
|
||
|
||
1. Ledger is append-only; disputes create compensating entries, not silent edits.
|
||
2. Conversion already triggered remains irrevocable (Rule 9) even if a later dispute reduces Development Credit — shortfall is a commercial/audit matter, not re-restriction.
|
||
3. When the Trust Service operator is also a Phase licensor, attestations must be independently re-computable offline; public metrics must not depend on private operator judgment.
|
||
4. **(Added 2026-07-29, TRSL V1C1 §7.4)** Breach notices, cure status, and termination determinations for a Phase are published by the Trust Service as a public conformity signal, distinguishing `alleged` from `determined`. Publication is a ministerial record of the Licensor's (or a dispute process's) determination — the Trust Service does not itself decide whether a breach occurred.
|
||
5. **(Revised 2026-07-29, TRSL V1C1 §7.4 / Appendix A item 10 — blocked on legal)** Whether a published breach record names the affected Commercial Entitlement holder is governed by the applicable Commercial Use Agreement, not a License-wide default — the License itself only guarantees an anonymized Phase-and-category fallback where no Commercial Use Agreement addresses it or none exists. The open item is now drafting the Commercial Use Agreement template's own naming/consent/data-protection clause, not a License-text decision.
|
||
|
||
**Blocked on governance:** Full dispute SLA and third-party auditor program (PRD Phase 7).
|
||
|
||
---
|
||
|
||
## Q13 — Trust Service discontinuity (13)
|
||
|
||
**Working default:**
|
||
|
||
- Conversion is a pure function of Manifest + Ledger; offline recompute must remain possible.
|
||
- Every Phase SHOULD be exportable as a **phase evidence package** (manifest, ledger chain, extension snapshots, optional attestation).
|
||
- Operator failure must not be interpretable as “not converted” if Outstanding Target is already zero.
|
||
|
||
**Stage 0 delivery:** Specify package layout in WP-0002 golden example; full archival SLA later.
|
||
|
||
---
|
||
|
||
## Q14 — Cryptography / federation protocol (14)
|
||
|
||
**Working default for Stage 0 library:**
|
||
|
||
- Hash chain: SHA-256 over a canonical serialization of the previous entry (canonicalization algorithm fixed in schema ADR).
|
||
- Signatures: **Ed25519** over the same canonical bytes; public keys in a simple key registry file for examples.
|
||
- Key rotation: append-only key history document; not a multi-party federation protocol.
|
||
|
||
**Blocked on research:** Full federation discovery, threshold attestation, multi-operator conflict resolution.
|
||
|
||
---
|
||
|
||
## Q15 — Governance path (15)
|
||
|
||
**Working default:**
|
||
Founder/maintainer-controlled experimentation under this SCOPE until `TRSL-Governance.md` exists. Core term changes require human accept; extensions may be registered as conformant without being canonical.
|
||
|
||
---
|
||
|
||
## Schema checklist derived from defaults
|
||
|
||
Stage 0 validators SHOULD enforce:
|
||
|
||
1. Phase native currency consistency on all entries.
|
||
2. `longstop_at` present on every Phase Manifest.
|
||
3. Development Credit entries only with `recognition` consistent with payment-settled inputs (when extension data present).
|
||
4. `future_license` ∈ {`MIT`, `Apache-2.0`}.
|
||
5. Closed ledger entry type enum from TSD §3.2.
|
||
6. Outstanding Target = `max(0, T0 - C - R)` pure fold.
|
||
7. Conversion Attestation never required to compute conversion status.
|
||
|
||
---
|
||
|
||
## Revision history
|
||
|
||
| Date | Change |
|
||
| --- | --- |
|
||
| 2026-07-28 | Initial working defaults from SWOT I-09 / Stage 0 unblocking |
|