I nodi cloud restano in provisioning finché :9997 risponde; retry su create_path e 503 retryable se l’ingest è ancora irraggiungibile.
Co-authored-by: Cursor <cursoragent@cursor.com>
Traccia i movimenti aggregati, overlay a gradienti sull’iframe della pagina e toggle click/move in admin.
Co-authored-by: Cursor <cursoragent@cursor.com>
Aggiunge filtri/colonne (società, orari) e dettaglio leggibile; evita 422 CSRF su logout e non cancella le cover slate custom in sync prod.
Co-authored-by: Cursor <cursoragent@cursor.com>
Un avviso ha un testo per lingua; per differenziare le piattaforme si creano due avvisi. L'app riceve già il copy risolto da Accept-Language.
Co-authored-by: Cursor <cursoragent@cursor.com>
Dopo la conferma admin la card restava su «Paga con bonifico»; la società parte da Free, l'owner è staff trasmissione e le mail non bloccano se manca SMTP.
Co-authored-by: Cursor <cursoragent@cursor.com>
Il piano si attiva solo dopo la conferma admin; Stripe resta a listino se non c'è un prezzo commerciale.
Co-authored-by: Cursor <cursoragent@cursor.com>
Il relay HLS→RTMPS resta sul worker/agent del nodo assegnato, così tre dirette contemporanee restano in onda sul sito e sul canale della società senza schermo nero.
Co-authored-by: Cursor <cursoragent@cursor.com>
Il form invito è sulla pagina squadra, genera il link e manda la mail; in caso di errore SMTP resta la copia manuale.
Co-authored-by: Cursor <cursoragent@cursor.com>
Allinea i piani Light/Full ai prezzi di lancio, ripensa /funzionalita per vendere il prodotto e aggiunge i badge App Store/Play nella home.
Co-authored-by: Cursor <cursoragent@cursor.com>
L'encoder scende in congestione e risale piano; la regia imposta il pavimento, mostra lo stato del telefono e apre il selettore dal bitrate colorato.
Co-authored-by: Cursor <cursoragent@cursor.com>
Gli header Accept-Language dalle app e i fix di padding/menu sul web chiudono il giro password-policy; il doc guida il lavoro su Mac.
Co-authored-by: Cursor <cursoragent@cursor.com>
Tutte le view marketing, legali, viewer, dashboard e admin usano t(); mailer utente-facing e flash localizzati; admin con LocaleResolver e selettore lingua.
Co-authored-by: Cursor <cursoragent@cursor.com>
Il selettore lingua funziona sul web e sulle app native; su Android la preferenza è persistita e applicata al riavvio. Incluse anche eliminazione replay a scope e campi pagina pubblica squadra.
Co-authored-by: Cursor <cursoragent@cursor.com>
Normalizza il periodo nel backend quando l'app invia "Q1" via cable, così advance_period aggiorna regia e overlay; rimuove i controlli cronometro dalla regia e rende più tollerante il decode iOS al resume sessione.
Co-authored-by: Cursor <cursoragent@cursor.com>
La regia remota non va più in 500 su basket/timed; iOS gestisce chiusura set, riconnessione RTMP e avanzamento quarti in modo affidabile.
Co-authored-by: Cursor <cursoragent@cursor.com>
Il proxy Rails gestisce il redirect MediaMTX su /live/match_* e riscrive le playlist; edge nginx reindirizza /live/ sotto /hls/. Su iOS, SessionBuilder HaishinKit, pipeline mixer corretta e refresh token.
Co-authored-by: Cursor <cursoragent@cursor.com>
Aggiunge data personalizzata e pulsanti rapidi nell'archivio admin così il job di purge non elimina i video fino alla nuova scadenza.
Co-authored-by: Cursor <cursoragent@cursor.com>
Gli admin possono vedere, modificare ed eliminare i replay di una società come la squadra proprietaria, riusando la stessa UI e logica dell'archivio pubblico.
Co-authored-by: Cursor <cursoragent@cursor.com>
Introduce incidenti con dedup, job Sidekiq ogni 3 min, scan log cron, /up/deep,
dashboard /admin/ops e push ntfy; include Sentry opzionale e fix test suite.
Co-authored-by: Cursor <cursoragent@cursor.com>
Fix crash e race su +3, layout tabellone con squadre ai lati, safe area in diretta e rimozione overlay cronometro; backend con sync punteggio periodo, link diretta in regia e init score_state basket.
Co-authored-by: Cursor <cursoragent@cursor.com>
Catalogo sport in YAML, board implicito, engine per volley/basket/timed/racket/timer/generic, regia e app Android allineate.
Co-authored-by: Cursor <cursoragent@cursor.com>
Corregge scadenza token regia oltre le 8h, tabellone HTML sulla pagina live,
pulsanti pausa/ripresa in regia, link admin e broadcast ActionCable diretto.
App Android: overlay branding, sync score da regia via WebSocket con reconnect e poll.
Co-authored-by: Cursor <cursoragent@cursor.com>
Upgrade Stripe con addebito immediato; downgrade programmato a fine periodo.
UX billing più sobria con box info; icone piani. API inviti e OAuth YouTube
per staff trasmissione; deep link join; scelta partita programmata o nuova.
Co-authored-by: Cursor <cursoragent@cursor.com>
Rimuove link al portale Stripe in area cliente, aggiunge flusso admin per PDF
fattura e email, blocca checkout senza dati di fatturazione, allinea prezzi
a €4,90/€39,90 e €9,90/€69,90, locale italiano e documentazione deploy.
Co-authored-by: Cursor <cursoragent@cursor.com>
Aggiunge fatturazione club, pagina regia condivisibile senza account, roster squadre e rimuove la modalità controller dall'app (v1.1.0).
Co-authored-by: Cursor <cursoragent@cursor.com>