Guida — Mint Index

Come leggere, filtrare e usare l’archivio operativo dei mint

Panoramica

Che cos’è e cosa non è

Mint Index è un archivio operativo lato server che raccoglie i metadati dei mint effettuati. La pagina legge il file: /develop/data/mint_index.json.

Non è un explorer on-chain. Non interroga la blockchain per ricostruire la storia: mostra solo ciò che è stato scritto nel JSON dal flusso di mint (es. dal tuo mint.js + endpoint di append/update).

È pensato per: audit rapido, ricerca di un certificato, copia di hash e tx, apertura PDF, accesso veloce alla pagina “Verifica”.

Indice rapido

Passaggi principali

1) Da dove arrivano i dati

File e responsabilità

La schermata carica il JSON con fetch("./data/mint_index.json") con cache-busting (parametro ?_=<timestamp>). Se il file non è leggibile o non esiste, la pagina non può mostrare risultati.

Campi tipici per voce

  • ts: timestamp di inserimento/operazione
  • status: 0 valid, 1 revoked, 2 superseded
  • certificateId: identificatore umano (se presente)
  • tokenId: id on-chain (bytes32)
  • documentURI: tipicamente ipfs://CID
  • documentHash: hash del PDF
  • mintTxHash / setTxHash: tx usate

Perché è utile

  • ti evita di “andare a memoria” quando devi ritrovare un mint;
  • ti permette di copiare velocemente hash/tx per post, audit o assistenza;
  • fa da ponte verso la pagina di verifica (prefill di cert o tokenId).

2) Filtri, ricerca e ordinamento

Uso operativo

Ricerca testuale “Cerca”

Filtra in tempo reale su più campi: certificateId, tokenId, txHash, documentHash, recipient, contract, ecc.

  • Usa prefissi parziali (es. prime 10 cifre di un hash).
  • Puoi incollare un tokenId o una txHash completa.

Ordinamento

  • Più recenti → più vecchi: vista standard (operativa).
  • Più vecchi → più recenti: utile per ricostruzioni storiche.
  • Status: raggruppa per stato (audit rapido).

Suggerimento: tieni “Più recenti → più vecchi” quando lavori su attività in corso.

Chips di filtro stato

  • Tutti: mostra tutte le voci (audit/ricerca).
  • Valid: la vista operativa principale.
  • Revoked: controllo revoche.
  • Superseded: controllo sostituzioni.

3) Status (0/1/2)

Significato e uso

VALID

Stato 0. Certificato considerato “attivo” nel tuo modello. È quello che normalmente vuoi vedere in una vista operativa.

REVOKED

Stato 1. Certificato revocato: non dovrebbe essere considerato valido. Tipicamente resta in elenco per audit e tracciabilità.

SUPERSEDED

Stato 2. Certificato sostituito da uno più recente. L’operatività “corrente” si sposta sul certificato sostitutivo (che trovi dalla pagina verifica).

N/A

Stato non riconosciuto o mancante. Di solito indica voci incomplete o formati non coerenti nel JSON.

Importante: qui lo status è quello registrato nel JSON. La fonte di verità “definitiva” resta la blockchain, che verifichi tramite la pagina “Verifica certificati”.

4) Tabella: lettura e azioni

Cosa puoi fare riga per riga

Colonne principali

  • Data (UTC): timestamp in formato ISO UTC (diagnosi eventi).
  • Status: badge colorato + chainId.
  • Certificate ID: l’id “umano” (se presente) + recipient abbreviato.
  • TokenId: id on-chain (abbreviato) con pulsante “Copia”.
  • Document: link “Apri PDF” (via gateway) + documentHash (abbreviato) con “Copia hash”.
  • Tx: mintTx e setTx (copia rapida).

Azioni disponibili

  • Apri PDF: apre il documento su gateway Pinata (se presente documentURI).
  • Copia: tokenId / hash / txHash per incollarli in altri strumenti.
  • Copia JSON: copia la riga completa (pretty JSON) per debug o supporto.
  • Apri Verifica: porta alla pagina di verifica con link precompilato.

Nota sul gateway: la pagina trasforma ipfs://CID in https://<gateway>/ipfs/<CID>. Se il PDF non si apre, spesso è un problema di gateway o URI.

5) “Apri Verifica” (link precompilato)

Come funziona il prefill

Il pulsante “Apri Verifica” costruisce un URL verso la pagina di verifica (variabile VERIFY_PAGE nel tuo JS). Se la riga ha certificateId viene usato quello: ?cert=.... Altrimenti usa il tokenId: ?tokenId=....

Quando usarlo: ogni volta che vuoi controllare stato e dati “veri” on-chain (incluso “sostituito da / sostituisce” e verifica hash PDF). Il Mint Index è la tua “rubrica”; la Verifica è la tua “fonte di verità”.

6) Problemi comuni

Diagnosi veloce

Errore: impossibile leggere mint_index.json

  • File non esistente (prima esecuzione) o path errato (INDEX_URL).
  • Permessi server: la cartella /develop/data non è leggibile (403) o non scrivibile (non si aggiorna).
  • .htaccess che blocca l’accesso a JSON nella cartella.

Test rapido: usa “Apri JSON” e verifica che il browser lo carichi senza 403/404.

La pagina mostra dati vecchi

  • Il file non viene aggiornato dal flusso di mint (endpoint non chiamato o fallisce).
  • Cache aggressiva (meno probabile perché usi cache-busting e meta no-cache).
  • Il server scrive su un file diverso da quello letto (path relativi non allineati).

Controlla updatedAt nel JSON e confronta con l’ora del tuo ultimo mint.

Apri PDF non appare

  • documentURI mancante o vuota.
  • documentURI non in formato ipfs://.
  • Gateway errato/non raggiungibile.

“Apri Verifica” non compare

  • VERIFY_PAGE vuoto o non corretto.
  • Mancano sia certificateId sia tokenId (riga incompleta).

In quel caso usa “Copia JSON” e guarda cosa manca nella voce.

Best practice operativa: usa chip “Valid” + ordinamento “Più recenti” durante lavoro quotidiano. Passa a “Tutti” o “Status” solo quando fai audit o debugging.

Home