Bump version to 0.2.4 to add regression fixes

This commit is contained in:
satoshi committed 2026-09-02 00:49:32 +03:00
1 parent 862ebc88f1
commit 42ae277163
6 files changed
+136 -2

No files matched your search

+22
View File
@@ -0,0 +1,22 @@
import { VersionInfo } from '@start9labs/start-sdk'
export const v0_2_4 = VersionInfo.of({
version: '0.2.4:0',
releaseNotes: {
en_US:
'Fixes a bug that could wipe the all-time share statistics — the difficulty distribution and rejection reasons on the Stats page. Those counters are restored from the database when the service starts, but the log reader that updates them was starting at the same moment, and the first share it saw could save a nearly empty set of counters over the accumulated history, which was then read back as the new total. The restore now finishes before the log reader starts, and the counters can no longer be written before they have been read. Found blocks, best-share records and the proof-of-work page were never affected. If your statistics were already lost, the new "Rebuild Share Statistics" action recounts them from CKPool’s log, which still holds every share; it only replaces the stored totals when the log accounts for more shares than they do, so it can restore history but never erase it.',
es_ES:
'Corrige un fallo que podía borrar las estadísticas históricas de participaciones: la distribución de dificultad y los motivos de rechazo de la página Estadísticas. Esos contadores se restauran desde la base de datos al iniciar el servicio, pero el lector del registro que los actualiza arrancaba en ese mismo momento, y la primera participación que veía podía guardar unos contadores casi vacíos encima del historial acumulado, que luego se releía como el nuevo total. Ahora la restauración termina antes de que arranque el lector del registro, y los contadores ya no pueden escribirse antes de haberse leído. Los bloques encontrados, los registros de mejores participaciones y la página de prueba de trabajo nunca se vieron afectados. Si sus estadísticas ya se perdieron, la nueva acción «Reconstruir estadísticas de participaciones» las vuelve a contar a partir del registro de CKPool, que conserva todas las participaciones; solo sustituye los totales almacenados cuando el registro contabiliza más participaciones que ellos, así que puede recuperar historial pero nunca borrarlo.',
de_DE:
'Behebt einen Fehler, der die Allzeit-Share-Statistiken löschen konnte — die Schwierigkeitsverteilung und die Ablehnungsgründe auf der Statistikseite. Diese Zähler werden beim Start des Dienstes aus der Datenbank wiederhergestellt, doch der Protokolleser, der sie aktualisiert, startete im selben Moment, und der erste Share, den er sah, konnte einen nahezu leeren Zählerstand über den angesammelten Verlauf speichern, der anschließend als neuer Gesamtstand zurückgelesen wurde. Die Wiederherstellung wird nun abgeschlossen, bevor der Protokolleser startet, und die Zähler können nicht mehr geschrieben werden, bevor sie gelesen wurden. Gefundene Blöcke, Bestwert-Aufzeichnungen und die Arbeitsnachweis-Seite waren nie betroffen. Falls Ihre Statistiken bereits verloren gegangen sind, zählt die neue Aktion „Share-Statistiken neu aufbauen“ sie aus dem CKPool-Protokoll neu, das weiterhin jeden Share enthält; sie ersetzt die gespeicherten Summen nur, wenn das Protokoll mehr Shares ausweist, kann also Verlauf zurückholen, aber niemals löschen.',
pl_PL:
'Naprawia błąd, który mógł skasować statystyki udziałów od początku istnienia puli — rozkład trudności i powody odrzuceń na stronie Statystyki. Te liczniki są odtwarzane z bazy danych przy starcie usługi, ale czytnik dziennika, który je aktualizuje, uruchamiał się w tej samej chwili, a pierwszy zobaczony udział mógł zapisać niemal puste liczniki na zgromadzonej historii, którą następnie odczytywano jako nową sumę. Odtwarzanie kończy się teraz przed uruchomieniem czytnika dziennika, a liczniki nie mogą już zostać zapisane, zanim nie zostaną wczytane. Znalezione bloki, rekordy najlepszych udziałów i strona dowodu pracy nigdy nie były tym dotknięte. Jeśli Twoje statystyki już przepadły, nowa akcja „Odbuduj statystyki udziałów” przelicza je na nowo z dziennika CKPool, który wciąż zawiera każdy udział; zastępuje zapisane sumy tylko wtedy, gdy dziennik obejmuje więcej udziałów, więc może przywrócić historię, ale nigdy jej nie usunie.',
fr_FR:
'Corrige un bogue qui pouvait effacer les statistiques de parts depuis toujours — la répartition des difficultés et les motifs de rejet de la page Statistiques. Ces compteurs sont restaurés depuis la base de données au démarrage du service, mais le lecteur de journal qui les met à jour démarrait au même instant, et la première part qu’il voyait pouvait enregistrer des compteurs presque vides par-dessus l’historique accumulé, ensuite relu comme le nouveau total. La restauration se termine désormais avant le démarrage du lecteur de journal, et les compteurs ne peuvent plus être écrits avant d’avoir été lus. Les blocs trouvés, les records de meilleures parts et la page de preuve de travail n’ont jamais été affectés. Si vos statistiques ont déjà été perdues, la nouvelle action « Reconstruire les statistiques de parts » les recompte à partir du journal de CKPool, qui contient encore chaque part ; elle ne remplace les totaux enregistrés que si le journal comptabilise davantage de parts, elle peut donc restaurer de l’historique, jamais l’effacer.',
},
// No data migration in either direction. The fix lives entirely in the
// service binary — the restore now completes before ingestion starts — and
// the recovery action only rewrites rows the service already owns. Nothing
// stored changes shape, so a downgrade has nothing to undo.
migrations: {},
})