Historial de versiones

Las versiones están clasificadas de la más reciente a la más antigua, una viñeta por cambio, y cada versión termina con las referencias a las páginas que describen en detalle lo que aportó. Una viñeta que una versión posterior ha reemplazado lleva la mención de la que la sustituyó: cuenta la historia del software, no describe la versión instalada.

Tras una actualización

La migración del esquema de la base es automática al abrir, y sin vuelta atrás: una base migrada ya no es legible por una versión anterior de blunderDB, de ahí la copia de seguridad previa (Anexo: Esquema de la base de datos). El resto no se hace solo, porque ninguno de estos datos es retroactivo:

  • Reimportar los archivos de origen para obtener la suerte (0.33.0). Las partidas importadas antes llevan un guion en la columna Suerte, y un guion no es un cero. Los formatos que no transportan la suerte (BGF, Jellyfish .mat) nunca la proporcionarán.

  • Reimportar los archivos XG para obtener las marcas (0.30.0). Las marcas puestas en eXtreme Gammon se incorporan a la base al reimportar, sin tocar los comentarios ni los análisis existentes.

  • Lanzar la puesta al día de análisis gammonNet (0.34.0), desde la interfaz, mediante blunderdb analyze o en modo servidor: completa las posiciones que no tienen ningún análisis, sin sobrescribir nunca un análisis importado.

0.36.0 (05/09/2026)

  • El binario es 7,3 MB más pequeño: las tablas de bearoff ya no están incrustadas ni se descargan, sino que se calculan en el primer arranque, en segundo plano y en silencio — idénticas byte a byte a las de gnubg, con la huella SHA-256 verificada. La tabla ampliada TS-06-11 se calcula en la pestaña Bearoff en lugar de descargarse (1,2 GB).

  • Los torneos se llenan solos al importar: una partida se clasifica en el torneo que nombra su archivo, creado si hace falta; una partida ya clasificada nunca se mueve.

  • Una sola gramática de búsqueda, ahora legible desde la línea de comandos (blunderdb search --query) tanto como desde la aplicación.

  • La línea de comandos gana --format json en nueve comandos, completado para bash, zsh y fish, el comando repair y los subcomandos anki card y anki log.

  • Las pestañas Atajos y Comandos de la ayuda integrada se generan a partir de las páginas del manual que las describen: ya no pueden quedarse atrás respecto a ellas, y se convierten en tablas, sin recuadros. La pestaña Manual de la ayuda sigue siendo un resumen, distinto del manual completo en línea. Tres visitas guiadas más (Eval, Anki, Stats).

  • Un binario Linux arm64, entregado como archivo comprimido, .deb, .rpm y paquete AUR.

  • El panel Eval recupera el tablero en el que se le dejó, distingue el equity money del equity match y se recorre con el teclado.

  • Del lado del servidor: contrato de API generado a partir del código (openapi.yaml y su anexo, 135 rutas), identificador de correlación por petición, indicadores del trabajo en curso, compresión de los flujos NDJSON (13,5 % del tamaño), y las dos llamadas que van más allá del tenant — vacuum y purge — pasan bajo /ops/.

  • Esquema 2.18.0: Jacoby y beaver salen de la identidad de la posición, de modo que la misma posición de dinero ya no entra dos veces por puertas distintas. La migración es automática al abrir y sin vuelta atrás posible (Anexo: Esquema de la base de datos).

  • Correcciones notables: el panel de detalle de Partidas ya no ocupa media pantalla cuando no hay nada seleccionado, la primera partida de una transcripción se pliega como las demás, MAYÚS-J y MAYÚS-K cambian de vista desde cualquier panel, y ocho atajos «mostrar/ocultar» por fin ocultan.

  • Véanse Interfaz de línea de comandos (CLI), Modo headless (servidor) y Manual.

0.35.0 (2026-09-02)

  • La línea de comandos gana dos familias: blunderdb collection (listar, mostrar, crear, renombrar, eliminar, exportar una colección) y blunderdb anki (mazos, estadísticas, previsión de repasos, resincronización de un mazo).

  • El modo servidor se publica como imagen Docker (ghcr.io/kevung/blunderdb-serve, amd64 y arm64), gana la ruta maintenance.vacuum y filigranea sus exportaciones con la identidad de emisor del servidor (--identity-dir).

  • El evaluador gammonNet valora sus hojas con el cubo: a un marcador de match, los veredictos de la búsqueda se acercan a los de eXtreme Gammon.

  • Cada versión distribuye ahora los manifiestos winget y Homebrew y un paquete Flatpak, además de los paquetes Debian, RPM y AUR.

  • En la interfaz, la biblioteca está ahora paginada (una base de 50 000 posiciones ya no carga todo en memoria en cada actualización), las ventanas modales comparten una misma base (foco, Escape, accesibilidad), el tablero solo redibuja lo que cambia, y la fuente japonesa embebida se reduce a su subconjunto útil (5,5 MB menos).

  • Correcciones notables: una base importada mediante «Importar una base» conservaba posiciones invisibles para los filtros y duplicadas en una segunda importación (reparado al abrir), el botón Fusionar de la ventana de fusión de jugadores seguía en gris, la exportación del servidor estaba vacía, y en Windows la eliminación de la base bearoff descargada y create --force fallaban.

  • Véanse Interfaz de línea de comandos (CLI), Modo headless (servidor) y Manual.

0.34.0 (2026-09-02)

  • Un evaluador integrado: gammonNet, portado a Go y compilado en blunderDB, evalúa cualquier posición sin conexión, sin XG ni gnuBG — red neuronal, búsqueda de 0 a 2-ply con poda, decisión de cubo según Janowski y la tabla de equidad de match de blunderDB, y una búsqueda que respeta el marcador del match.

  • El panel Bearoff se convierte en el panel Eval: presenta los hechos de la posición (probabilidades de victoria, gammon y backgammon de ambos lados, equidad) y luego la única decisión que pide el tablero, en una cuadrícula estable sin desplazamiento; las equidades de match están normalizadas y el veredicto «demasiado bueno para doblar» vuelve a ser visible.

  • La evaluación es progresiva: 0-ply inmediato al gesto, luego 2-ply en reposo, cancelable por cualquier gesto nuevo, con la etiqueta de profundidad indicando siempre la que produjo la cifra.

  • Todo el tablero, los dados y el marcador se editan ahí, con clic o con teclado, y una posición de la biblioteca entra y sale del panel.

  • En una carrera más allá de la base two-sided, un tercer régimen evaluado proporciona el veredicto de cubo al marcador que el panel no daba.

  • Una pestaña gammonNet de la configuración separa la profundidad de visualización de la profundidad de análisis.

  • Tras una importación, un lote de análisis acotado, visible, cancelable y reanudable rellena las posiciones sin ningún análisis, sin sobrescribir nunca un análisis importado; la puesta al día de una biblioteca existente se lanza desde la interfaz, el nuevo comando blunderdb analyze o el modo servidor.

  • Correcciones notables: una respuesta de cubo importada de eXtreme Gammon heredaba el análisis del doblador sin invertirse, la notación de las jugadas de las Blancas y de las entradas de bar sigue ahora a gnuBG y XG, la profundidad de un análisis de gnuBG se lee correctamente, y el tamaño del panel lateral se recuerda.

  • Véanse Panel Eval, Manual y Interfaz de línea de comandos (CLI).

0.33.0 (2026-08-26)

  • El panel Estadísticas gana una pestaña Jugadores: las tres pestañas anteriores describen a un jugador, esta los compara a todos, una fila por jugador de la base — partidas, victorias/derrotas, decisiones contadas, PR global / fichas / cubo, Snowie Error Rate, blunders y suerte. La tabla se ordena por cualquier columna, se restringe a las fechas de una competición con los filtros habituales, y un clic en una fila cambia al detalle del jugador. Un guion señala un valor nunca medido, jamás un cero. La tabla también está disponible en línea de comandos (blunderdb list --type players, en texto, JSON o CSV) y en modo servidor.

  • La suerte de cada tirada se guarda ahora en la base y se muestra: suerte media por tirada, en milésimas de punto, con signo. Se lee al importar tanto de los archivos de eXtreme Gammon como de gnuBG. No es retroactiva — las partidas importadas antes muestran un guion y hay que reimportar los archivos de origen para recuperarla; los formatos que no la transportan (BGF, Jellyfish .mat) nunca la aportarán.

  • La pestaña Errores indica ahora en qué sentido se equivocan las decisiones de cubo, y no solo cuánto cuestan: una fila Ofrecer (dobles perdidos, dobles prematuros) y una fila Responder (pases erróneos, tomas erróneas), separadas a propósito ya que un mismo jugador puede doblar tarde y tomar holgado. Cada casilla lleva su recuento, la información emergente la equidad perdida, y el clic carga las posiciones correspondientes.

  • Nuevo comando Compactar la base, que recupera el espacio dejado por las eliminaciones: botón en los ajustes y subcomando blunderdb vacuum. Nunca se ejecuta por su cuenta.

  • Ergonomía: las acciones destructivas piden confirmación, una búsqueda en curso se señala, un comando desconocido recibe un mensaje en lugar de silencio, y las pestañas, los paneles acoplados y los diálogos pequeños se manejan por completo con el teclado. La búsqueda es además notablemente más rápida.

  • Correcciones notables: los no-dobles etiquetados «Double No» por gnuBG se contaban como dobles, lo que falseaba el PR de cubo (una base ya constituida se repara sin reimportar, en modo servidor); el filtro de jugador reducía indebidamente el denominador del Snowie Error Rate; las exportaciones escribían un esquema obsoleto; y blunderdb vacuum abría la interfaz gráfica en lugar de compactar la base.

  • Véanse Panel Stats y Interfaz de línea de comandos (CLI).

0.32.0 (2026-08-09)

  • El panel EPC se convierte en el panel Bearoff y gana el análisis de carrera completo. (Renombrado a panel Eval en 0.34.0.)

  • En una posición de bearoff puro, muestra — además del EPC, el recuento de pips, el desperdicio y el número medio de tiradas de cada jugador, ahora presentados en una tabla con una fila Δ con signo — las probabilidades de victoria de ambos jugadores y las equidades money (cubeless, sin doblar, doblar/tomar, doblar/pasar, con la diferencia de cada decisión respecto a la mejor) así como la mejor decisión de cubo.

  • Dos regímenes claramente distinguidos: exacto (lectura de una base two-sided; base TS-06-06 de GNUbg integrada, que cubre hasta 6 fichas por jugador) y estimado (convolución calibrada, margen de error mostrado — el veredicto de cubo nunca se estima).

  • La base ampliada TS-06-11 (veredicto exacto hasta 11 fichas por jugador, 1,2 GB) se descarga desde la nueva pestaña Bearoff de la configuración, con verificación de integridad y descargas reanudables; también puede designarse cualquier archivo .bd two-sided de gnubg. (Sustituido en 0.36.0: la tabla se calcula en la máquina, ya no hay ninguna descarga.)

  • Modo desafío para el entrenamiento: los resultados se ocultan en cada modificación y se revelan zona por zona, con un clic.

  • Edición completamente en el tablero: fichas de ambos jugadores, jugador al tiro (clic en el rectángulo bearoff/marcador) y posición del cubo (clic en el cubo).

  • El clic en el tablero es ahora preciso a cualquier escala de interfaz (un clic en el punto 1 podía caer en el punto 2).

  • Nuevo comando blunderdb epc en la línea de comandos y opción --bearoff-ts del modo servidor.

  • Una nueva sección del manual, «Metodología e hipótesis del panel Bearoff», expone exhaustivamente los supuestos detrás de cada valor mostrado. (Sección renombrada con el panel en 0.34.0.)

  • Véanse Panel Eval y Metodología e hipótesis del panel Eval.

0.31.0 (2026-08-04)

  • Difusión de una base a terceros: dos mecanismos independientes, ambos opcionales y elegidos en el momento de la exportación.

  • La filigrana de origen inscribe en el archivo qué es y de dónde viene, firmada por una identidad de emisor creada por sí sola en el primer uso; la marca es infalsificable, se lee en la parte superior del panel Metadatos (o mediante blunderdb info, sin escribir nunca en el archivo) y no registra nada del lado del destinatario — ningún registro, ningún seguimiento.

  • La protección por contraseña produce un archivo .dbx cifrado (AES-256-GCM, clave derivada con Argon2id), verificado en cada apertura, cuya cabecera permanece legible en claro; la identidad se exporta e importa como un único archivo desde las preferencias.

  • Ventana de exportación rediseñada: una sola pantalla en lugar de cuatro, un recordatorio de lo que realmente sale (las posiciones mostradas), la parte cubierta de cada colección señalada en rojo cuando es parcial, torneos exportables solo con sus matches — y una exportación tres veces más rápida.

  • Ventana de configuración reorganizada en tres pestañas (Interfaz, Colores del tablero, Identidad de emisor), con tamaño y posición estables.

  • El panel Metadatos se ha rediseñado en una sola cuadrícula.

  • El panel Registro, que solo recibía el eco de los comandos, se elimina.

  • Correcciones notables: una contraseña incorrecta ya no abre una base protegida, los campos de las ventanas modales ya no pierden el foco al hacer clic, el cálculo de los indicadores PR/MWC ya no falla en una partida money, y los archivos temporales (-wal, -shm, bloqueo) se limpian al cerrar.

  • Véanse Distribuir una base de datos: origen y contraseña y Manual.

0.30.0 (2026-07-26)

  • Búsqueda por comentario: el filtro «Texto de búsqueda» se convierte en el filtro «Comentario» y ofrece tres modos exclusivos — contiene el texto (comportamiento anterior, token t""palabra1;palabra2""), tiene un comentario (token co) y sin comentario (token xco) — para encontrar de un gesto las posiciones anotadas, o al contrario las que quedan por comentar.

  • Posiciones marcadas en eXtreme Gammon: las marcas (flags) colocadas al analizar un match XG se leen ahora en la importación y se pueden recuperar mediante el filtro «Marcada» (token fl), combinable con cualquier otro criterio; una decisión de cubo marcada da dos posiciones marcadas, el doblaje y el toma/pasa.

  • Como el marcado no es retroactivo, basta con reimportar el archivo .xg correspondiente para que sus marcas se incorporen a la base, sin tocar los comentarios ni los análisis existentes.

  • Correcciones notables: el PR mostrado en la insignia de un torneo se refiere ahora al jugador de referencia y no a la suma de ambos jugadores, los mazos Anki basados en una búsqueda vuelven a respetar los filtros de esa búsqueda en lugar de tomar toda la base, y se corrige un bloqueo de la búsqueda al combinar ciertos filtros (texto, fecha, error de la jugada realizada).

  • Véanse Lista de comandos y Manual.

0.29.0 (2026-07-18)

  • Exportación de un match en formato Jellyfish/gnubg (.mat) desde la interfaz (panel Matches) así como desde la línea de comandos, con la ruta de servidor correspondiente — útil para volver a jugar un match en otro software de backgammon.

  • Búsqueda: un nuevo discriminador «dados excluidos» (token xD65, se permiten varios) que descarta posiciones cuya tirada coincide con una dada.

  • Apertura concurrente segura: una base ya abierta para escritura en otra ventana de blunderDB se abre ahora en modo solo lectura (navegación, búsqueda y análisis posibles, modificaciones desactivadas, mención «[solo lectura]» en la barra de título) en lugar de arriesgar una corrupción.

  • Procedencia de las posiciones: fuera del modo match, la barra de información sobre el tablero indica el match — y su torneo — del que proviene la posición estudiada, con una insignia «+N» cuando aparece en varios matches.

  • Mayor robustez frente al entorno: repliegue automático cuando una fuente, el portapapeles o la última base abierta no están disponibles.

  • Una recarga explícita de la biblioteca (CTRL-R, botón de la barra de herramientas o comando e) reabre el panel de análisis en la posición mostrada.

  • Correcciones notables: eliminación de un bloqueo en la exportación de bases grandes, el botón «Ninguno» de la exportación que en realidad no exportaba nada, filtro de comentario multipalabra, desduplicación del evento y del torneo en la barra de información, y varios ajustes de visualización.

  • Véanse Lista de comandos, Panel de Partidas y Manual.

0.28.0 (2026-07-15)

  • Panel de búsqueda: un filtro unificado «Matches y Torneos» que reemplaza los campos de texto de identificadores por una ventana de selección (listas de verificación filtrables por texto, botones Todos/Ninguno, marcar un torneo marca sus matches miembros) — más rápido en bases grandes, la pestaña Matches y la vista Torneos ahora solo recalculan los indicadores PR/MWC para los matches mostrados; cli list --type tournaments cierra la brecha de paridad correspondiente.

  • Nuevo filtro «Importada individualmente» (casilla del grupo Otro, o token i en la línea de comandos, s i; también disponible en la CLI mediante --individual) para encontrar una posición guardada o importada por sí sola en lugar de perdida dentro de una importación de match.

  • Corrección de una pérdida de datos: la eliminación de un match ya no borra las posiciones importadas individualmente, colocadas en una colección o incluidas en un mazo Anki que ese match también contenía.

  • Modo servidor (headless): seis nuevos métodos para el planificador Anki de repetición espaciada — registro de repasos (anki.reviewLog), previsión de tarjetas próximas a vencer (anki.forecast), suspender/aparcar/eliminar una tarjeta (anki.suspendCard, anki.buryCard, anki.removeCard) y ajuste automático de la retención objetivo de un mazo hacia su tasa de éxito observada (anki.optimizeParams, sustituido en 0.36.0 por anki.retention, que mide la tasa observada sin escribir nunca el objetivo); un nuevo método tenant.purge para eliminar definitivamente los datos de un tenant en un despliegue PostgreSQL multiusuario; nuevos métodos matches.list (filtrado/orden/paginación) y stats.matchBadges (indicadores PR/MWC acotados a una lista de matches).

  • Distribución nativa para Linux: paquetes .deb/.rpm, que conservan el bit de ejecución perdido al descargar el binario en bruto.

  • Importación: tras importar un match, la pestaña Matches se muestra ahora y las posiciones importadas son inmediatamente visibles; tras importar una posición aislada (archivo XGP, posición BGBlitz, archivo de posición de texto, posición pegada o un lote de posiciones), la pestaña Análisis se abre ahora directamente en la posición importada, en lugar de la pestaña Matches; corregido el pegado de un análisis de eXtreme Gammon en francés o alemán desde macOS, que quedaba vacío (acentos descompuestos por el portapapeles del sistema).

  • Véanse Modo headless (servidor), Lista de comandos y Descarga e instalación.

0.27.0 (2026-06-13)

  • Panel Anki: un nuevo modo de práctica libre (cram), accesible desde el botón Cram junto a Study, que muestra posiciones aleatorias del mazo sin modificar el calendario de repetición espaciada — ideal para calentar antes de un torneo o repasar intensamente un mazo sin alterar su orden.

  • Búsqueda: un nuevo comando blunders (alias bl) que carga directamente los peores errores (equity/MWC) en la vista de análisis, con un número opcional para elegir cuántos (bl 50); un nuevo filtro por jugador pl'nombre' que encuentra todas las posiciones de una partida en la que participó un jugador dado, en cualquier lado; e información sobre herramientas que, al pasar el ratón por cada filtro del panel de búsqueda, muestra el token de comando correspondiente.

  • Modo servidor (headless): nuevos métodos matches.movesByMatch (todas las jugadas de un match en una sola llamada) y positions.epc (Effective Pip Count de ambos jugadores).

  • Véanse Panel Anki y Lista de comandos.

0.26.0 (2026-06-09)

  • Ajustes de visualización de la interfaz en la ventana de configuración: un deslizador de escala para agrandar o reducir toda la interfaz, y una elección de posición de los paneles (abajo, al lado o automática) para aprovechar mejor las pantallas anchas.

  • Añadida una barra de información sobre el tablero que recuerda a los jugadores y el contexto del match (evento, lugar, ronda, fecha, longitud).

  • Al abrir una base, el panel de matches se muestra ahora de inmediato y la revisión comienza en la primera posición.

  • Los atajos de teclado son ahora independientes de la distribución del teclado (AZERTY, QWERTY, QWERTZ…).

  • Corrección de la decodificación de XGID (indicadores Jacoby/Beaver y valor del cubo).

  • Añadidas pestañas de vistas múltiples: varios espacios de trabajo independientes (lista de posiciones, posición actual, búsqueda) con los atajos CTRL-T (nueva vista), CTRL-W (cerrar), CTRL-PageUp/CTRL-PageDown (cambiar de vista) y cambio de nombre con doble clic en la pestaña.

  • Véanse Configuración y Pestañas de vistas.

0.25.0 (2026-06-07)

  • Modo servidor (headless): dos nuevos métodos para reconstruir una posición sin guardarla — positions.fromXGID decodifica una cadena XGID en una posición, y positions.fromXGP lee un archivo de posición única .xgp.

  • Véase Modo headless (servidor).

0.24.0 (2026-06-06)

  • Añadida una imagen de contenedor (Docker) para el modo headless: un punto de entrada dedicado serve y un Dockerfile.serve que produce un binario estático sin interfaz gráfica, para desplegar el motor de blunderDB como servicio detrás de un proxy inverso.

  • Véase Modo headless (servidor).

0.23.0 (2026-06-05)

  • Añadidas visitas guiadas de la interfaz (recorrido general, búsqueda, matches, torneos), reproducibles de nuevo desde la barra de herramientas o el comando tour, y una base de ejemplo cargable con el comando demo para descubrir la herramienta sin importar las propias partidas.

  • Personalización de los colores del tablero (fondo, borde, flechas, fichas, dados, cubo) desde la ventana de configuración.

  • Autocompletado de la línea de comandos (tecla TAB).

  • Panel de búsqueda: control explícito del tipo de decisión (Fichas / Cubo), con un subtipo Doblar / No doblar o Toma / Pasa para las decisiones de cubo, sincronizado con el tablero; el cubo ofrecido se muestra en el centro del tablero para las decisiones de toma/pasa.

  • Búsqueda de una posición por su identificador (filtro id).

  • Corrección de la atribución del error de cubo al jugador 1.

  • Véase Visitas guiadas y base de ejemplo.

0.22.0 (2026-06-02)

  • Añadido un modo headless (servidor), avanzado y opcional, que complementa la aplicación de escritorio: un demonio serve que expone el motor mediante HTTP + JSON, un backend PostgreSQL multiusuario con compartimentación por tenant (y Row-Level Security opcional), un comando migrate para transferir una base SQLite a PostgreSQL, y un despachador genérico call que da acceso desde la línea de comandos a todas las operaciones de almacenamiento.

  • Importación de posiciones individuales desde nuevos formatos (eXtreme Gammon .xgp, texto BGBlitz, biblioteca nativa .db) con enriquecimiento de duplicados entre formatos.

  • Correcciones: los paneles ya no provocan un error cuando no hay ninguna base abierta, y el panel Comentarios ya no entra en bucle al abrirlo.

  • Véase Modo headless (servidor).

0.21.0 (2026-06-01)

  • Internacionalización de la interfaz: la totalidad de blunderDB (barra de herramientas, paneles, mensajes, ayuda) puede mostrarse ahora, a elección, en inglés, francés, alemán, italiano, español, finés, japonés, griego o ruso.

  • Añadida una ventana de configuración, accesible mediante un botón en forma de rueda dentada en la barra de herramientas, que permite seleccionar el idioma.

  • La elección del idioma se conserva de una sesión a otra.

  • Véase Configuración.

0.20.0 (2026-05-31)

  • Añadida la estructura de exclusión Except al panel de búsqueda: excluye posiciones que contienen una de las fichas dibujadas, con un marcador «debe estar vacío» (doble clic) y un número ilimitado de fichas por punto (comando x).

  • Añadida la opción «solo el primer dado» al filtro de tirada (variante D1, opción CLI --dice).

  • Panel Comentarios: enfoque automático del campo de entrada al abrir, y botones de editar/eliminar siempre visibles.

  • Corrección del filtro «Search Text», que no encontraba todas las etiquetas de comentarios.

0.19.0 (2026-05-07)

  • Añadido el panel Stats: indicadores PR (Performance Rating), Snowie Error Rate y MWC cost (Match Winning Chance cost), barra de filtro (jugador, torneo, fechas, tipo de decisión, longitud del match), pestaña Dashboard con tarjetas de nivel / PR móvil / top blunders, pestaña Progresión con curva por torneo y diagrama de dispersión por match, pestaña Errores con desglose por acción de cubo e histograma de magnitudes.

  • Drill-down interactivo hacia las posiciones / matches / torneos desde todos los indicadores.

  • Alternancia PR / MWC instantánea.

  • Comando CLI list –type stats.

  • Alineación de los indicadores PR / Snowie ER / MWC con eXtremeGammon y gnuBG (umbral de equidad de 0.16 para cubos ajustados).

  • Corrección del cálculo de cube_error para las decisiones Double/Pass.

  • Documentación del modelo de estadísticas (Anexo: Modelo de estadísticas — alineación XG / gnuBG / blunderDB).

  • Véase Panel Stats.

0.18.0 (2026-04-20)

  • Refactorización mayor del código: división de db.go (10 mil líneas) en 19 archivos especializados, extracción de 7 módulos de servicio de App.svelte (4888→469 líneas), consolidación de los stores modales/de panel.

  • Migración completa a las runes de Svelte 5.

  • Sustitución de 9 modales de tabla por un componente genérico DataTableModal.

  • Añadidos ESLint + Prettier + vitest (125 pruebas de frontend) con CI.

  • Conformidad WCAG 2.1 AA (foco visible, roles ARIA, navegación por teclado).

  • Cambio del mutex de Database a un RWMutex para un mejor paralelismo en lectura.

  • Documentación CLI completa (CLI_USAGE.md + Sphinx FR/EN).

  • Reescritura del README.

  • Corrección de todas las advertencias de ESLint (46→0) y Vite (6→0).

0.17.0 (2026-04-20)

  • Optimización del almacenamiento: compresión zlib de los datos de análisis (~80% de reducción), codificación compacta de las posiciones (~90% de reducción de tamaño).

  • Añadidos 5 índices faltantes para mejorar el rendimiento de búsqueda.

  • Corrección de la búsqueda por error de cubo.

  • Corrección del modo EDIT tras una búsqueda sin resultados.

  • Restauración del estado del panel de búsqueda al cambiar de pestaña.

  • Eliminación de 62 instrucciones de depuración de rutas críticas.

0.16.0 (2026-04-18)

  • Esquema de base de datos v2.0.0: deduplicación de posiciones mediante hash Zobrist, columnas de filtrado desnormalizadas, prefiltro de patrones bitboard, registro WAL (Anexo: Esquema de la base de datos).

  • Importación por lotes >=3x más rápida, búsqueda filtrada <=100 ms en más de 10k posiciones.

  • NOTA: los archivos DB creados con la v0.16.0 no pueden abrirse con versiones anteriores; las DB antiguas se migran automáticamente in situ (haga primero una copia de seguridad).

0.15.0 (2026-03-31)

  • Exportación de la posición como imagen PNG al portapapeles (solo el tablero con Ctrl+X, o el tablero con análisis con Ctrl+X Ctrl+X).

0.14.0 (2026-03-30)

  • Panel Anki dedicado para el estudio por repetición espaciada (algoritmo FSRS).

  • Importación de comentarios desde los archivos XG.

0.13.0 (2026-03-28)

  • Simplificación de la interfaz: la navegación por los matches y las colecciones se realiza directamente a través de los paneles.

  • Línea de comandos integrada en la barra de estado.

  • Panel Consola renombrado a panel Log. (Panel eliminado en 0.31.0.)

  • Panel Bearoff dedicado en el panel inferior.

  • Copiar/pegar posición en el panel de búsqueda.

  • Arrastrar y soltar para reordenar las colecciones, las posiciones dentro de las colecciones y los matches dentro de los torneos.

  • Columna de torneo en el panel de matches con edición en línea.

  • Visualización automática del panel de análisis tras una búsqueda.

0.12.0 (2026-03-19)

  • Importación de archivos de posición de eXtreme Gammon (XGP) con análisis.

0.11.0 (2026-03-06)

  • Filtro de búsqueda dentro de las posiciones actuales.

  • Añadidos filtros por match y por torneo.

  • Borrado automático del tablero al abrir el panel de búsqueda.

0.10.0 (2026-02-25)

  • Importación de matches desde eXtreme Gammon (XG/XGP), GNUbg (SGF), Jellyfish (MAT/TXT) y BGBlitz (BGF/TXT).

  • Navegación por los matches: recorrido de las jugadas de un match importado, con resaltado de la jugada realizada.

  • Panel de matches: lista, ordenación, edición en línea, intercambio de jugadores, asignación de torneo.

  • Importación por carpeta recursiva e importación por arrastrar y soltar.

  • Calculadora EPC (Effective Pip Count) con base de datos de bearoff GNUbg integrada. (Sustituido en 0.36.0: la tabla se calcula en la máquina, ya no se incluye ninguna.)

  • Colecciones: agrupación personalizada de posiciones.

  • Torneos: agrupación de matches por evento.

  • Guardado y restauración del estado de la sesión (última búsqueda, posición actual).

  • Migración automática del esquema de la base de datos.

  • Visualización multimotor en el análisis.

  • Filtro de errores/blunders del jugador 1 en las búsquedas.

  • Exportación de la base de datos con selección granular (matches, colecciones, torneos, jugadas realizadas).

  • Botón de navegación por los matches.

  • Conteo de pips (pipcount) en la navegación por los matches.

  • Interfaz de línea de comandos (CLI) completa.

  • Reapertura automática de la última base de datos.

  • Mejora de la barra de herramientas y de los iconos.

0.9.0 (2025-11-02)

  • Corrección de un error en la biblioteca de filtros.

  • Importación/exportación de base de datos.

  • Muestra de flechas para las jugadas seleccionadas.

  • Atajos de teclado para la importación/exportación.

0.8.0 (2025-05-03)

  • Posibilidad de ocultar el conteo de pips.

  • Carga de una posición aleatoria.

0.7.0 (2025-02-16)

  • Compatibilidad con japonés y alemán en las exportaciones de XG.

0.6.0 (2025-02-13)

  • Añadida la biblioteca de filtros.

  • Muestra la versión de la base de datos en los metadatos.

0.5.0 (2025-02-04)

  • Añadidos nuevos filtros (espejo, sin contacto, jan blot, outfield blot).

0.4.0 (2025-02-03)

  • Correcciones de varios errores.

  • Añadido un icono para blunderDB.

  • Correcciones de filtros.

  • Añadido soporte para macOS.

0.3.0 (2025-01-27)

  • Correcciones de varios errores.

  • Guarda automáticamente el tamaño de la ventana.

  • Importa los posibles comentarios desde XG.

0.2.0 (2025-01-06)

  • Correcciones de varios errores.

  • Añadidas tablas de match/TP/GV.

  • Añadidos filtros de búsqueda (jugadas, decisiones de cubo, fecha).

  • Añadidos metadatos en las posiciones.

  • Función de importación/exportación entre instancias de blunderDB.

  • Añadida función de metadatos en las bases de datos.

  • Introducción de números de versión (base de datos y aplicación).

0.1.0 (2024-12-31)

  • Versión beta.