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

Problem: settlement can't tell a capture was taken too early

Cerrado
#1,435 0 comentarios 0 reacciones 1 asignado Ver en GitHub

Los mantenedores suelen responder en 1 día

@MicBun ya está trabajando en esto.

Desde el 19/9/2026.

Evaluación

Este issue todavía no se ha evaluado.

Descripción

A market resolves on a captured query result. request_attestation takes that
capture and stores it in attestations; settle_market reads it back and decodes
an outcome from it.

The two are only loosely connected. request_attestation is a general primitive —
it refers to neither markets nor settle_time — it is PUBLIC, and the
query_components of any live market are readable from ob_queries. So a capture
of a market's query can be taken at any height, including well before the market
falls due, over a window that has not finished.

Settlement has no way to tell such a capture apart from one the settlement path
took after settle_time. attestations records created_height and
signed_height and no wall-clock time at all, while ob_queries.settle_time is a
unix timestamp, so the two cannot be compared from inside settle_market.

Why it matters for whichever capture is chosen

The requirement in

is that a market resolves against the value that existed at settle_time. The
ordering settlement uses to approximate that is chosen in:

Every ordering that settlement can express today is a proxy for that:

Ordering What an early capture does What a late capture does
Earliest created_height wins ignored
Latest signed_height ignored wins

Neither can express "at or after settle_time", because the comparison is not
available. The choice between them changes which direction is exposed, not whether
one is.

What this looks like today

Nothing has been captured early: 0 of 1,319 captures on mainnet were taken at a
height below their market's creation height, and the smallest gap is +34 blocks.
This is about a window that is open rather than one that is being used.

What would close it

Settlement needs to be able to tell whether a capture was taken within the window
the market settles on. A block timestamp recorded alongside created_height at
capture time would make the comparison expressible; so would anything else that
lets settle_market place a capture relative to settle_time.

Existing rows would need whatever is added to be backfilled, since the value is
not recoverable from attestations alone.

Lenguaje dominante
Go
Estrellas
7
Forks
3
Merge medio
13 h 15 min
PR fusionados (30 d)
13

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 trufnetwork/node

Todos los issues de trufnetwork/node

Issues similares

Más issues de Go

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.