target-revenue/specs
tegwick 885da0a1cb Implement Control Plane backend: rights enforcement + audit log (WP-0009-T03)
migrations/0006_control_plane.sql: control_plane_audit_log (append-only,
no UPDATE/DELETE for trf_app) and control_plane_proposed_entries (the
Contributor tier's "propose, don't append" workflow from concept §2) -
review decisions go through a review_proposed_entry() SECURITY DEFINER
function, same governance-action pattern as
set_extension_status/revoke_credential, not a direct UPDATE.

src/target_revenue/control_plane.py is the enforcement layer concept
§2 called for: register_phase/append_development_credit require
Operator+; propose_ledger_entry requires Contributor+ and stores a
pending proposal without touching the real Ledger; approve_proposed_entry
(Operator+) appends it under the *reviewer's own* credential/attribution
(not the original proposer's - the reviewer is who's authorizing it into
the real Ledger, while the proposer stays on record in the proposal row
and audit log); reject_proposed_entry (Operator+) discards it. issue_/
revoke_user_credential (Admin+) wrap registry.py's T02 functions with
the same rights check and audit logging. Every action funnels through
record_audit_event, independent of the Trust Service's own signed
records.

tests/test_control_plane.py (12 tests): rights enforcement at each
tier boundary, the full propose -> approve -> appended-under-reviewer
flow, propose -> reject -> nothing appended, double-review rejection,
audit log content/attribution, DB-level UPDATE rejection on both new
tables. Full suite: 84 offline (unchanged), 53 with Docker (up from
41); no stray containers left running.
2026-07-30 15:08:59 +02:00
..
CanonicalizationReviewChecklist.md Advance WP-0007: degeneration research, profile catalog, canonicalization checklist 2026-07-29 22:31:19 +02:00
CanonicalMonetizationProfiles.md Advance WP-0007: degeneration research, profile catalog, canonicalization checklist 2026-07-29 22:31:19 +02:00
DevelopmentEffortCalculatorConcept.md Implement Development Effort Calculator (WP-0010-T02) 2026-07-30 13:16:44 +02:00
EnforcementNetworkConcept.md Close WP-0004/WP-0005 with alpha/beta legal-review deferral 2026-07-29 20:46:49 +02:00
MonetizationExtensionSpecification.md Merge spec/ into specs/: one specs directory for the whole repo 2026-07-29 10:22:14 +02:00
OpenQuestions-WorkingDefaults.md Close WP-0007: confirm linear-longstop-v0 as adopted v1 norm (T02) 2026-07-29 22:37:08 +02:00
PhaseManifestSpecification.md Merge spec/ into specs/: one specs directory for the whole repo 2026-07-29 10:22:14 +02:00
PilotPhaseCandidateSurvey.md Add info-tech-canon as first dry-run pilot candidate, exercise onboarding routine 2026-07-29 23:15:42 +02:00
ProductRequirementsDocument.md Set up practical implementation workplans (WP-0006/0007/0008) 2026-07-29 20:27:29 +02:00
TargetDegenerationPolicyResearch.md Advance WP-0007: degeneration research, profile catalog, canonicalization checklist 2026-07-29 22:31:19 +02:00
TargetLedgerSpecification.md Fix stale administrative-correction reference in TargetLedgerSpecification §5 2026-07-29 19:49:51 +02:00
TargetRevenueCommercialUseAgreement-V1C1.md Close WP-0004/WP-0005 with alpha/beta legal-review deferral 2026-07-29 20:46:49 +02:00
TargetRevenueControlPlaneConcept.md Implement Control Plane backend: rights enforcement + audit log (WP-0009-T03) 2026-07-30 15:08:59 +02:00
TargetRevenueFrameworkCore.md Fix TargetRevenueFrameworkCore §1.11 extension-redefinition scope drift 2026-07-29 20:02:48 +02:00
TargetRevenueLicenseConcept.md Merge spec/ into specs/: one specs directory for the whole repo 2026-07-29 10:22:14 +02:00
TargetRevenueSourceLicense-V1C1.md Close WP-0004/WP-0005 with alpha/beta legal-review deferral 2026-07-29 20:46:49 +02:00
TechnicalSpecificationDocument.md Draft Commercial Use Agreement V1C1 template 2026-07-29 12:48:23 +02:00
TRSL-ContributorLicenseAgreement-Draft.md Advance WP-0008: governance, candidate survey, pilot manifests, CLA draft 2026-07-29 22:52:52 +02:00
TRSL-Governance.md Advance WP-0008: governance, candidate survey, pilot manifests, CLA draft 2026-07-29 22:52:52 +02:00
TrustServiceOnboarding.md Define and implement multi-repo onboarding mechanism (WP-0006-T07) 2026-07-29 22:00:34 +02:00
TrustServiceProductRequirementsDocument.md Add Trust Service PRD (WP-0006-T01) 2026-07-29 20:50:06 +02:00