S00 Trust Ownership Transition

Status: Frozen Date: 2026-02-18 Working directory: docs/modules/ui/v2-rewire Sprint: 20260218_005, task R0-04

Ownership decision

Administration is the sole owner domain for Trust and Signing. This is a final decision (Pack 21 overrides Packs 9, 11, and 20 on ownership).

No other domain may host trust management screens. Trust management includes:

Consumer model

Two domains consume trust state without owning it:

Evidence & Audit (consumer)

Security & Risk (consumer)

All trust management deep links from consumer domains must:

  1. Navigate to the Administration trust screen that is the canonical owner of the referenced entity.
  2. Preserve the entity identifier as a route parameter or query parameter.
  3. Return-navigation must allow the user to return to the originating domain context.
Consumer pageLink targetPreserved context
Evidence proof chain node (issuer)/administration/trust-signing/issuers/:issuerIdissuerId
Evidence attestation detail (signing key)/administration/trust-signing/keys/:keyIdkeyId
Security finding advisory (issuer trust)/administration/trust-signing/issuers/:issuerIdissuerId
Approval detail — trust confidence indicator/administration/trust-signing (overview)none required
Security advisory source — signature status/administration/trust-signing/issuers (filtered)sourceId as query param

Alias and deprecation behavior by route family

Legacy pathv2 canonical targetActionNotes
/admin/trust/administration/trust-signingredirectSprint 007
/admin/trust/keys/administration/trust-signing/keysredirectSprint 007
/admin/trust/issuers/administration/trust-signing/issuersredirectSprint 007
/admin/trust/certs/administration/trust-signing/certificatesredirectSprint 007
/admin/trust/:page/administration/trust-signing/:pageredirect (catch-all)Sprint 007
/admin/issuers/administration/trust-signing/issuersredirectSprint 007
/settings/trust/administration/trust-signingredirectSprint 007
/settings/trust/:page/administration/trust-signing/:pageredirect (catch-all)Sprint 007
/evidence/trust/administration/trust-signingredirectSprint 015 (if exists)

Alias window: trust route aliases are removed at sprint 016 cutover. Legacy /admin/trust/* and /settings/trust/* paths must not remain as primary navigation targets after sprint 007.

Auth scope implications

ActionRequired scopeNotes
View trust overview and key listtrust:readRead-only access; auditors and security reviewers
View issuer list and trust scoringtrust:readRead access
Create or update key, rotate keytrust:writeRestricted to trust admins
Revoke key or certificatetrust:adminHighest privilege; requires explicit MFA re-auth recommendation
Register issuertrust:write
Configure transparency logtrust:admin
View trust state in consumer domains (Evidence, Security)No additional scope; inherited from existing page accessConsumer pages do not require trust scope to display trust indicators

Trust scope constants are now implemented in Authority (StellaOpsScopes.TrustRead, StellaOpsScopes.TrustWrite, StellaOpsScopes.TrustAdmin) and mapped in Platform policy wiring. /api/v1/administration/trust-signing now enforces platform.trust.read (trust:read) and contract row S00-T05-ADM-01 remains EXISTS_COMPAT.

Trust-owner backend mutation routes are now implemented under Platform Administration A6:

Non-allowed regressions