ncantu cad73cb265 UTXO-list: dates/blockTime historiques, récupération frais depuis ancrages, diagnostic Bloc Rewards
**Motivations:**
- Ajouter dates manquantes dans hash_list.txt et compléter historique
- Compléter blockTime manquants dans utxo_list.txt et compléter historique
- Récupérer frais depuis transactions d'ancrage (OP_RETURN) et les stocker
- Bouton UI pour déclencher récupération frais
- Diagnostic Bloc Rewards (pourquoi ~4700 BTC au lieu de 50 BTC)

**Root causes:**
- hash_list.txt sans date (format ancien)
- utxo_list.txt blockTime souvent vide
- Frais absents du fichier (métadonnées OP_RETURN non stockées)
- Pas de moyen de récupérer/compléter frais depuis UI

**Correctifs:**
- hash_list.txt : format étendu avec date (rétrocompatible)
- utxo_list.txt : blockTime complété automatiquement lors écritures
- fees_list.txt : nouveau fichier pour stocker frais
- updateFeesFromAnchors() : récupère frais depuis OP_RETURN ancrages
- Endpoint /api/utxo/fees/update pour déclencher récupération
- Bouton "Récupérer les frais depuis les ancrages" dans section Frais (spinner)
- Scripts batch : complete-hash-list-dates.js, complete-utxo-list-blocktime.js
- Script diagnostic : diagnose-bloc-rewards.js (subsidy, coinbase, listunspent)

**Evolutions:**
- Frais chargés depuis fees_list.txt dans getUtxoList
- Complétion automatique dates/blockTime lors écritures futures

**Pages affectées:**
- signet-dashboard/src/bitcoin-rpc.js
- signet-dashboard/src/server.js
- signet-dashboard/public/utxo-list.html
- scripts/complete-hash-list-dates.js
- scripts/complete-utxo-list-blocktime.js
- scripts/diagnose-bloc-rewards.js
- features/utxo-list-fees-update-and-historical-completion.md
2026-01-26 01:59:46 +01:00
..

UserWallet Login

Site de login avec authentification secp256k1, conçu pour être utilisé en iframe par Channel Messages.

Fonctionnalités

  • Authentification basée sur des clés secp256k1
  • Communication avec le parent via postMessage
  • Gestion de l'activation/désactivation du login par service
  • Interface responsive et accessible

Installation

npm install

Développement

npm run dev

Le site sera accessible sur http://localhost:3018

Build

npm run build

Architecture

  • Authentification : Génération de paires de clés secp256k1, signature de challenges
  • Communication iframe : Messages postMessage pour l'intégration
  • Stockage : LocalStorage pour les clés et la configuration des services
  • Interface : React + TypeScript avec accessibilité (ARIA)

Types de messages iframe

  • auth-request : Demande d'authentification depuis le parent
  • auth-response : Réponse avec signature
  • service-toggle : Activation/désactivation d'un service
  • service-status : Envoi du statut des services