target-revenue/examples/phase-001/extensions/service-with-development-allocation.json
tegwick 57c7111cbc 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

24 lines
1 KiB
JSON

{
"id": "trsl:extension:service-with-development-allocation",
"version": "1.0",
"value": {
"description": "Installation, migration, configuration, integration, customization, support, or training service engagement."
},
"pricing": {
"method": "time-and-materials or fixed-fee, per service agreement"
},
"allocation": {
"rule": "Development allocation defaults to 0%. When a reusable deliverable from the engagement is incorporated into the governed Milestone Release, the reusable portion is explicitly split out and declared as development_allocation; customer-specific configuration is never allocated.",
"default_rate": 0.0
},
"recognition": {
"event": "payment-settled"
},
"reversal": {
"rule": "Refunds and chargebacks generate a compensating credit-reversal entry for the reversed amount."
},
"evidence": {
"requirement": "Settled payment reference; a statement identifying the reusable deliverable is required whenever a nonzero allocation is claimed."
},
"status": "registered"
}