- POST /satellites/accounts (ensureAccount): cria/reativa User por email, idempotente;
gate aceita chave MESTRA ou chave de satélite (nwk_) válida — o satélite espelha
suas próprias contas (scoreodonto)
- POST /sessions/:id/connect (reconectar/re-scan) e /sessions/:id/disconnect
(encerrar sem remover) — antes o satélite recebia 404 no botão Conectar
- inclui proxy/re-download de mídia (/media/:id/download) da integração satélite
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Torna o registry de satélites (PluginPair) o gatekeeper do ext-api, em vez de
uma única EXT_MASTER_KEY global:
- satellites.ts: serviço + router /api/ext/v1/satellites (listar/provisionar/
revogar/rotacionar), montado fora do authMiddleware com gate de chave mestra.
- apikey-auth: resolvePairKey aceita a chave do satélite (nwk_) no REST e no WS,
resolvendo o tenant do par; checa revoke no banco a cada request (revoke
instantâneo) + throttle de lastSeenAt.
- Chave mestra e ApiKey por-tenant seguem funcionando (não-quebra).
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>