SIGUE BLOQUEADO Las billeteras siguen reteniendo las monedas recién minadas ver detalle

Madurez de la coinbase · toda la cadena

La regla de la cadena ya expiró, pero las billeteras siguen reteniendo 6,480 bloques las monedas recién minadas.

El bloque 979,920 ya pasó, así que la regla temporal de la cadena terminó. Pero la política de propagación que vino con ella no depende de esa ventana y sigue exigiendo 6,480 confirmaciones antes de poder gastar una recompensa. Eso es comportamiento del cliente, no una regla de este pool, y es un tema abierto río arriba.

Lo que hizo PyBLØCK. Nuestro nodo ya corre v29.4.3.knots20260508, desde el 2026-10-27. Dijimos que actualizaríamos en RC2 y lo hicimos.

Qué te cambia, en claro. Ya aplica, y no esperó al bloque 973,440: nuestro nodo dejó de propagar el gasto de cualquier recompensa con menos de 6,480 confirmaciones. Eso es sobre lo que nuestro nodo transmite, no sobre si la moneda es tuya: una recompensa minada antes del bloque 973,440 madura a las 100 confirmaciones de siempre y tu saldo la muestra como gastable, porque lo es. Tus monedas no están congeladas y no las tenemos nosotros. Son válidas, ya son tuyas en la cadena, y cualquier otra billetera o nodo las sigue transmitiendo: la mayor parte de la red no actualizó. Lo que cambia es nuestro nodo, no tu propiedad.

Por qué aquí esto es más llevadero que en otros lados. Tu recompensa se escribe directo en la coinbase del bloque, a tu dirección: ya es tuya en la cadena, y aquí no retenemos nada: no la podemos gastar y no cobramos primero. Un pool custodial, en cambio, se queda con toda la coinbase y te paga después desde su propio saldo; mientras esa coinbase está bloqueada, tiene que financiar cada pago con reservas. Nosotros no adelantamos nada, así que aquí no hay nada que se pueda acabar.

Por qué la fecha llega antes que los 45 días: la regla cuenta bloques, no tiempo. 6,480 bloques son unos 45 días al ritmo habitual de 10 minutos, pero esta cadena está yendo más rápido (~45 días al ritmo reciente), así que el desbloqueo cae antes. La altura del bloque es lo fijo; toda fecha de aquí es una estimación que se mueve con la cadena.

Hasta ahora una recompensa de bloque se podía mover después de 100 bloques, unas 16 horas. Esto es una regla del cliente Bitcoin BLAKE2b, no de este pool: aplica a toda coinbase de la cadena, la haya minado quien la haya minado, y no hay nada que podamos cambiar de nuestro lado. Lo que se te debe no cambia; solo cuánto tiempo queda quieto antes de moverse. Los pagos se siguen escribiendo directo en la coinbase del propio bloque, a tu dirección, sin que nosotros retengamos nada. Eso también significa que tu parte queda bloqueada igual que la nuestra: no cobramos primero.

Por qué esto empieza antes del bloque 973,440. La parte de billetera y de propagación de esta versión aplica la espera larga a toda recompensa, a propósito e independientemente de la regla de la cadena: la propuesta lo dice con todas las letras. Corrimos la versión en un nodo aislado nuestro para estar seguros: el corte queda exactamente en 6,480 confirmaciones sin importar cuándo se minó la recompensa, y ya aplica con la activación todavía en el futuro. O sea que no es algo que se arregle antes del día de la bandera: es lo que hace el cliente, y es comportamiento del cliente antes que una regla de este pool.

El mismo anuncio dice que quien mina sin correr su propio nodo y gateway no está minando de verdad y podría no cobrar nada en el futuro. Eso es una intención declarada en el cambio mismo: no es código, y hoy no existe ningún mecanismo para eso. No vamos a fingir que sabemos cómo se administraría. Te lo contamos porque mereces el cuadro completo. Si alguna vez se vuelve una regla real, lo vas a leer aquí primero.

Lo que te recomendamos, por lo que valga. Si igual vas a estar esperando una madurez más larga, es buen momento para correr tu propio nodo y gateway DATUM. No porque te libre de la espera: no lo hace, y quien te diga lo contrario se equivoca — la regla aplica a toda coinbase de la cadena, la haya armado quien la haya armado. Házlo porque simplemente te conviene. Tu nodo elige las transacciones, así que nunca vemos tu selección y no podríamos censurar ninguna aunque quisiéramos. Y te quedas con más, porque no hay corte de node-runner cuando el node-runner eres tú: 99% en CAROUSEL, contra 22% por nuestro stratum (CHIRP ya paga 100% por cualquier camino: corre 100% sobre DATUM). La espera es la misma de cualquier forma; lo que cambia es cuánto del bloque es tuyo cuando se libera, y quién decidió qué entró en él. Cómo montarlo →

Correr tu propio nodo y gateway es lo que WAVICLES ya hace, y ahora también está disponible para CAROUSEL y CHIRP: mira PATUM, el instalador de un clic.

WAVICLES

trae tu propio nodo · DATUM · BLAKE2b
EN VIVO

Tu nodo arma el bloque. El pool sólo fija el reparto: todos los que tienen trabajo en la ventana, según su trabajo · comisión 0% con tu propio nodo, 0% a través del stratum de PyBLØCK · pagado en la coinbase. El pool no retiene ni un sat.

Conecta tu nodo →
—
Hashrate del pool
—
Node runners
—
Mineros en la ventana
—
Bloques encontrados
—
Mineros por el nodo de PyBLØCK
—
Mineros con nodo propio
Hashrate · 24h   bloque minado—
Próximo bloque · quién cobra
—
para los mineros · valor del bloque − comisión (0% nodo · 0% casa)
— de la ventana acreditado—
MineroHashrate · 10 minParte de la ventanaRecibiríaÚltima share
Todavía no hay trabajo en la ventana — conecta un nodo y el reparto aparece acá.
Recibiría = el reparto que el pool dicta ahora mismo: todos los que tienen trabajo en la ventana, según su trabajo, mínimo 1.000 sats. Si el bloque lo encuentra un minero cuyo firmware sólo admite una coinbase chica, el reparto se prorratea entre los que entran — el pool nunca se lo queda.
¿Menos de ~100 MH/s? Tu parte de un bloque puede quedar por debajo del mínimo de 1.000 sats (el umbral crece con el pool). CHIRP te conviene más: pondera la antigüedad y no tiene mínimo por bloque → CHIRP.
Bloques encontrados
BloqueCuándoConstruido porPagado a minerosSalida del poolMineros pagados
Todavía no hay bloques de WAVICLES — el primero aparece acá y en BLOQUES.
Salida del pool = exactamente la comisión: 0% desde el 2 de octubre de 2026 (antes: 0,4% sobre el trabajo de tu propio nodo, 2,9% a través del stratum de PyBLØCK), así que desde entonces los bloques no llevan salida del pool. Todo lo demás se paga a la ventana en esa misma coinbase, según la parte de trabajo (mínimo 1.000 sats por identidad; por debajo, tu parte va a los otros mineros, nunca al pool). Los bloques #970075 y #970309 se pagaron con la regla anterior de arrastre; ese arrastre se está pagando a mano.
Penalidad SV1 · quién la paga

Desde el bloque 977,350, el trabajo que entra por los puertos SV1 públicos de PyBLØCK cede el 77 % de su parte a la pool. Minando por tu propio gateway DATUM (PATUM) no se paga.

Si el próximo bloque sale ahora
…
Bloques penalizados
…
Node runners conectados
GatewaySoftwareSharesTrabajoConectadoÚltima share
No hay gateways conectados ahora mismo.
—
Gráficos
Hashrate del pool
Ventana acreditada · % y mineros
Bloques por día · encontrados vs. esperados
Más gráficos · node runners, shares
Node runners conectados
Shares por hora · aceptadas / rechazadas
recogiendo datos en vivo…
Conectar · tu gateway DATUM
¿Recién llegas? Empieza en cuatro pasos →
"mining": { "pool_address": "YOUR_BLAKE2B_ADDRESS", "coinbase_tag_secondary": "your-name" }, "datum": { "pool_host": "b.pyblock.xyz", "pool_port": 28915, "pool_pubkey": "b5e0b0326b964a92f3046c73a76b9e98173e0c3ea0e0ca771f4e6a3dd92e2935b2caad2a088fdd7bf0a48fc0c41776a9abb13c7d4c6964b53a9ceee4c775e036", "pool_pass_workers": true, "pool_pass_full_users": true, "pooled_mining_only": true }, "stratum": { "vardiff_min": 1, "vardiff_target_shares_min": 8 }
  1. mining.pool_address = tu dirección. Tu parte de cada bloque se paga ahí, en la coinbase.
  2. mining.coinbase_tag_secondary = tu nombre. Queda on-chain en el scriptsig: PyBLOCK-WAVICLES-BLAKE2b/tu nombre.
  3. Apunta tus mineros a tu propio gateway, nunca al pool. Sirve cualquier minero BLAKE2b (GPU, CPU, ASICs de Sia).
Necesita un nodo Bitcoin Knots BLAKE2b y un gateway DATUM: CONVOY (master ≥ 2026-09-02), forks de la línea OCEAN, paquetes de StartOS.
Diagnóstico y ajustes del nodo
Usuarios de CONVOY: compilen desde el master de CONVOYMining/datum_gateway del 2026-09-02 en adelante (commit b9ea7dc+). Las versiones anteriores fallan después del handshake con "Invalid data structure in configuration" — pull, rebuild, reconectar; la configuración no cambia.
Síntoma en el log del gatewayCausaSolución
Invalid data structure in configuration → Waiting on DATUM server… 0versión de CONVOY anterior al 2026-09-02actualizar a master (≥ b9ea7dc), recompilar, reconectar
decryption failedpool_pubkey incorrecta o truncadacopia la clave completa de 128 hex (haz clic en el bloque de configuración), reinicia el gateway
Handshake OK pero 0 shares en el poollos mineros apuntan al pool en vez de a tu gatewaylos mineros van a IP-del-gateway:puerto-stratum, nunca a :28915
los mineros trabajan contra tu gateway y siguen en 0 shares después de 30+ minel piso de shares por defecto de DATUM, vardiff_min = 16384, es escala de ASIC SHA-256; una GPU o CPU en BLAKE2b no lo alcanza nunca"stratum": {"vardiff_min": 1} (una potencia de dos; 1 es lo que corre el propio gateway GPU de PyBLØCK), reinicia el gateway
coinbase "sólo pool" en un bloquela plantilla no dejó espacio para las salidas de pagoblockreservedweight=100000 en el bitcoin.conf de tu nodo
se conecta y se cae cada pocos minutos, con una clave de gateway nueva cada vezel gateway se reinicia justo después del handshake: su nodo no devuelve trabajo BLAKE2b (RPC mal configurado, sin sincronizar, o le falta la regla blake2b)lee el log del gateway después de "DATUM Pool MOTD"; en tu nodo ejecuta bitcoin-cli getblocktemplate '{"rules":["segwit","blake2b"]}'
tu identidad muestra trabajo pero el pago es 0 / "not payable"el usuario del minero en tu gateway es un nombre de worker, no una direcciónlos mineros entran con una dirección Bitcoin-BLAKE2b (bc1q… / 1…); un worker después de un punto está bien: bc1q….rig1
pocas identidades pagadas en un bloqueun presupuesto de coinbase demasiado chico para la lista de pagoscorregido del lado del pool el 2026-09-14: ahora todos los gateways reciben la clase de 16 KB (~400 pagos), CONVOY de fábrica incluido. Nada que cambiar de tu lado.
Consejo para el nodo: blockreservedweight=100000 en bitcoin.conf. El valor por defecto de Knots deja lugar para ~55 salidas de coinbase. El firmware de tus mineros decide cuántos pagos puede llevar una coinbase: el firmware moderno (Whatsminer, S21, ePIC) acepta coinbases grandes y paga toda la ventana; una coinbase de fábrica de ~730 bytes admite ~15, y entonces el reparto se prorratea entre los que entran — el pool nunca se lo queda. Con una ventana grande tu coinbase puede llevar cientos de salidas (cada pago bech32 = 124 WU); reserva peso para que nunca desplace transacciones. Las plantillas Bitcoin-BLAKE2b pesan hoy ~110 kWU, así que sobra lugar.
Endpoint DATUM b.pyblock.xyz:28915 · pubkey del pool b5e0b0326b964a92f3046c73a76b9e98173e0c3ea0e0ca771f4e6a3dd92e2935b2caad2a088fdd7bf0a48fc0c41776a9abb13c7d4c6964b53a9ceee4c775e036
Correr tu propio nodo · preguntas frecuentes
Lo único que la gente se equivoca: tu dirección va en dos lugares, y hacen cosas distintas. En mining.pool_address decide a quién se le paga si alguna vez minas sin el pool, y el gateway ni siquiera arranca sin una válida. En cada minero, como usuario de Stratum, decide a quién se le acredita en la ventana. Pon las dos. Después mira la tabla de Node runners de arriba: si las shares suben, funcionó.
¿Qué necesito, y en qué orden?
Tres piezas, en este orden. 1. Un nodo Bitcoin Knots con BLAKE2b, completamente sincronizado. 2. Un gateway DATUM en la misma máquina o en tu red local, apuntado a tu nodo por RPC y a WAVICLES por internet. 3. Tus mineros, apuntados a tu gateway. Sirve cualquier minero BLAKE2b: GPU, CPU o un ASIC tipo Sia. No te saltes pasos. Un gateway cuyo nodo no está listo se conecta igual, se queda en cero y desde afuera parece sano.
¿Dónde va exactamente mi dirección de pago?
1. En la configuración del gateway, como mining.pool_address. Es obligatoria. Con una inválida el gateway imprime Could not generate output script for pool addr y se cierra en menos de un segundo, así que si tu gateway está corriendo, este campo ya está bien. También es la dirección que cobra el 100% de cualquier bloque que encuentres mientras el pool esté inalcanzable, que es el caso de más abajo.

2. En cada minero, como usuario de Stratum. La contraseña se ignora, usa x. Un nombre de worker después de un punto está bien: bc1q….rig1. Con la configuración que publicamos arriba (pool_pass_full_users: true) ese usuario es lo que acreditamos, así que cada minero de tu gateway cobra en la dirección con la que entra.

Cuidado con ese flag. Pon pool_pass_full_users en false y todos los mineros de tu gateway se acreditan a mining.pool_address, escriban lo que escriban. Es lo correcto si los equipos son todos tuyos, y lo incorrecto si estás alojando a otro.
¿El gateway comprueba que el usuario de mi minero sea una dirección real?
No. Reenvía el usuario tal como se escribió. La comprobación ocurre acá: un usuario que no sea una dirección BLAKE2b pagable se rechaza como bad-username, y esas shares no ganan nada. O sea que un error de tipeo te cuesta trabajo real, en silencio, hasta que mires. Vuelve a comprobar siempre después de cambiar un usuario: tu fila en la tabla de Node runners tiene que mostrar las shares subiendo y los rechazos planos.
Mi gateway aparece conectado, pero con 0 shares. ¿Y ahora?
Conectado con cero shares significa que estamos hablando con tu gateway y nada está trabajando contra él. En orden de frecuencia: todavía no hay ningún minero apuntado al gateway; los mineros apuntan a :28915, que es por donde tu gateway habla con nosotros y nunca a donde van los mineros; o son GPU o CPU y no alcanzan nunca el piso de shares por defecto, que está pensado para ASICs SHA-256. Para este último caso pon "stratum": {"vardiff_min": 1} y reinicia. La pestaña Clients de tu propio gateway es la forma más rápida de distinguir el primer caso de los demás: si está vacía, el problema está de tu lado del gateway, no entre nosotros.
¿Qué pasa si WAVICLES se cae?
Eso lo decide pooled_mining_only. Dejado en true, como lo publicamos, tu gateway desconecta a tus mineros antes que minar sin pool. En false, tu nodo sigue armando bloques por su cuenta y cualquier bloque que encuentre paga el 100% a mining.pool_address. Ninguna de las dos está mal. La primera evita que tu hashrate vaya a un lugar que no elegiste; la segunda lo mantiene ganando. Es también la segunda razón por la que ese campo tiene que ser una dirección que de verdad controles.
¿Cobro sólo cuando el bloque lo encuentra mi propio nodo?
No, y ese es todo el sentido del pool. Cada bloque que encuentre cualquiera en WAVICLES paga a todos los que tengan trabajo en la ventana, según su parte, en la coinbase de ese mismo bloque. Te paga directamente on-chain quien encontró el bloque. El pool no retiene ni un sat y no hay nada que retirar.
¿Hay un mínimo, y cuánto me cuesta la comisión?
Mínimo: 1.000 sats acumulados en la ventana. Por debajo, tu parte se reparte entre los mineros que sí lo superan. El pool nunca se la queda. Comisión: 0%, ya sea que el bloque lo construya tu propio nodo o que mines a través del Stratum de PyBLØCK.
¿Qué versión del gateway tengo que correr?
CONVOY en el commit 7491a509 o posterior. Las anteriores cuentan mal los bytes de la coinbase BLAKE2b y truncan la lista de pagos, así que un bloque encontrado con una de ellas dejaría sin cobrar a casi toda la ventana. Las rechazamos en el handshake con un mensaje que lo dice, en vez de dejar que te enteres con un bloque. Ojo: un simple git pull de master no alcanza si master todavía arrastra el bug. Los forks de la línea OCEAN y los paquetes de StartOS también sirven.
¿Sigues trabado? La tabla de diagnóstico de arriba asocia cada línea del log de tu gateway con su causa.
Cómo funciona
  1. DATUM, no un stratum. Tu gateway construye el bloque entero desde tu propio nodo y lo envía. El pool sólo responde con el reparto de la coinbase.
  2. Ventana de trabajo. El trabajo aceptado se acredita a tu dirección en una ventana móvil de 8× la dificultad de la red. Cualquier bloque que encuentre cualquiera en la ventana paga a todos los que están en ella, según su parte.
  3. Pagado en la coinbase. Cada bloque paga a todos los que tienen trabajo en la ventana, en la coinbase, según su parte: el valor completo del bloque (0% de comisión), mínimo 1.000 sats por identidad — por debajo, tu parte va a los otros mineros de la ventana, nunca al pool. Nunca se debe nada y nunca se retiene nada.
Verifica un bloque tú mismo
  • La salida 0 de cada coinbase es OP_RETURN PYBLOCK-TON618 ‖ BLAKE2b-256(snapshot). El snapshot (ventana, parámetros, reparto) es público en wavicles_api.php?mode=snapshot&hash=… y no puede cambiar una vez que el bloque existe.
  • Recalcula el reparto con datos públicos: hash(snapshot) == el OP_RETURN, el reparto recalculado con ventana + parámetros (max_payees) == los pagados del snapshot, cada uno pagado on-chain.
  • El scriptsig lleva PyBLOCK-WAVICLES-BLAKE2b/<node-runner> — el nodo que construyó el bloque.
python3 tools/verify_wavicles_block.py --height H \
  --conf bitcoin.conf --url https://b.pyblock.xyz/wavicles_api.php
Verificador + código del pool: gitlab.com/astrolexis-group1/wavicles-prime (MIT).