Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

tollgate-clientd: burned tokens on rejected payments (no reclaim path)

Abierto
#423 1 comentario 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
48/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Activo
Stack tecnológico
go
Área
payments

Línea de trabajo

Start with the clientd scenario battery cases S5b and S5c, then trace the cdk-cli send / cashu send and cdk-cli receive / cashu receive entry points named in the issue. Check how daemon state and the router's reseller-mode recovery work before deciding where rejected tokens and notices belong. Done means a rejected token can be reclaimed after its cause is fixed, with coverage for the expired-keyset and fee/min-steps cases.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

Found by the clientd scenario battery (S5b keyset rotation, S5c fee edge); relates to #403 (router-side no-refund path) and #417 (keyset expiry kills balances).

What happened: clientd creates the wallet token (cdk-cli send / cashu send) and only then POSTs it. If the router rejects the payment — expired keyset after rotation, token fully consumed by a mint input fee, below min-steps — the wallet has already deducted the proofs and the rejected token is dropped. Scenario evidence: S5b renewal against an expired keyset and S5c's 1-sat token on a 100ppk mint both burned the token with no session granted.

Proposal: keep the last rejected token (and the router's notice message) in the daemon state dir + a tollgate-clientd reclaim subcommand that feeds it back into the wallet (cdk-cli receive / cashu receive) once the underlying cause is fixed — mirroring what the router's reseller mode does with tokens-to-recover.

Lenguaje dominante
Go
Estrellas
12
Forks
14
Merge medio
1 d 5 h
PR fusionados (30 d)
246

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de OpenTollGate/tollgate-module-basic-go

Todos los issues de OpenTollGate/tollgate-module-basic-go

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.