1.9 KiB
1.9 KiB
Launcher Integration Contract
Launcher integrates with EDUT web/backend contracts as follows:
Required APIs
POST /secret/wallet/intentPOST /secret/wallet/verifyPOST /secret/id/quote(alias of/secret/membership/quote)POST /secret/id/confirm(alias of/secret/membership/confirm)GET /secret/id/status(alias of/secret/membership/status)GET /marketplace/offersPOST /marketplace/checkout/quotePOST /marketplace/checkout/confirmGET /marketplace/entitlementsPOST /governance/install/tokenPOST /governance/install/confirmGET /governance/install/statusGET /member/channel/events
Wallet Session Contract
POST /secret/wallet/verifyreturnssession_tokenandsession_expires_at.- Launcher must attach session token on wallet-scoped calls using:
Authorization: Bearer <session_token>(preferred)X-Edut-Session: <session_token>(compatibility)
- Wallet change must clear cached session token before further calls.
- Endpoints that require EDUT ID/admin authority can fail with:
wallet_session_requiredwallet_session_invalidwallet_session_expiredwallet_session_mismatch
Runtime Mode Signal
- Launcher install-confirm payload carries
operation_mode(human_manualorworker_auto). - Mode signal is deterministic evidence input for governance activation policy and receipt hashing.
Deterministic Requirements
- No runtime activation without entitlement proof.
- All install packages verified by hash and signature.
- EDUT ID and entitlement unknown state fails closed.
- Event inbox polling remains canonical even if push unavailable.
- Identity assurance is evaluated independently from EDUT ID state.
- Owner/admin launcher actions must require
identity_assurance_level=onramp_attested. - Governance activation evidence must include signing authority class (
identity_humanvs delegated).