La modalità di errore di Midnight che continuo a immaginare è una transazione che sembra completata un passaggio prima di essere effettivamente inviata.

Il passaggio di prova si completa. L'interfaccia utente avanza. L'utente atterra su quello che sembra l'ultimo passaggio e presume che la parte difficile sia finita. Poi il flusso si ferma perché il portafoglio aveva ancora bisogno di un altro passaggio per scegliere gli input, aggiungere le commissioni e riequilibrare la transazione prima della sottomissione. Questo è il tipo di bug di prodotto più brutto per me. Non una transazione che fallisce immediatamente, ma una che visivamente dice "fatto" e poi rivela che non era mai pronta per essere inviata.

Ciò che ha reso questo chiaro per me è quanto sia rigido Midnight riguardo a quel confine. In un flusso di chiamata di contratto, balanceUnsealedTransaction è di solito il percorso onesto perché il portafoglio ha ancora del lavoro reale da fare alla fine. balanceSealedTransaction si adatta a casi molto più ristretti, come un invio creato dal portafoglio o un'altra intenzione separata in cui sigillare per primo era effettivamente deliberato. Queste non sono scelte intercambiabili. Un percorso lascia spazio al portafoglio per completare il lavoro. L'altro può bloccare il flusso troppo presto.

Il dettaglio delle sezioni fallibili rende tutto questo ancora più netto. Se il percorso del contratto può ancora fallire all'interno di quella sezione, il bilanciamento sigillato potrebbe non funzionare affatto. Quindi, non si tratta solo di una preferenza tecnica. È un rischio di flusso di lavoro. L'app può fornire all'utente una transazione che sembra completa mentre il portafoglio non ha più la libertà di renderla pronta per la sottomissione.

Questo è anche dove il $NIGHT diventa reale per me. L'esecuzione del token nativo avviene in modo pulito solo se il portafoglio riceve ancora quella finestra finale di bilanciamento prima della sottomissione. Nessuno spazio per completare il bilanciamento, nessun ultimo miglio pulito.

Quindi il vero test di prodotto per le app Midnight è semplice: possono far sentire "non ancora finito" intenzionale, o gli utenti continueranno a imbattersi in flussi che sembravano completati proprio prima che il portafoglio avesse ancora bisogno di un'ultima possibilità per renderli reali?

Un'app privata sembra comunque rotta quando sigilla l'errore prima che il portafoglio possa correggerlo.

#night $NIGHT @MidnightNetwork