Problem: settlement can't tell a capture was taken too early
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
- Incluye un Dockerfile o un archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de trufnetwork/node
-
type: goal
Dificultad 5/5 Más de una semana Aptitud para principiantes 35/100
trufnetwork/node#1436 ·
Los mantenedores suelen responder en 1 día
-
Goal: SDK call for market volume over a time periodPosiblemente ocupada @MicBun la tomó hace 7 días. Abierto
trufnetwork/node#1429 · 3 comentarios · 1 asignado ·
Los mantenedores suelen responder en 1 día
-
Dificultad 5/5 Más de una semana Aptitud para principiantes 25/100
trufnetwork/node#1313 · 2 comentarios · 1 reacción ·
Los mantenedores suelen responder en 1 día
-
Dificultad 4/5 3-5 días Aptitud para principiantes 35/100
trufnetwork/node#1200 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 35/100
trufnetwork/node#1190 ·
Los mantenedores suelen responder en 1 día
Todos los issues de trufnetwork/node
Issues similares
-
Action Required: Fix Renovate ConfigurationPosiblemente ocupada @thompson-tomo la tomó hoy. Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
open-telemetry/opentelemetry-collector#16170 ·
Los mantenedores suelen responder en 1 día
-
automation awf compiler specifications
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
state:triage-needed
Dificultad 2/5 1-3 horas Aptitud para principiantes 65/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
puppe1990/amarra-cais#342 ·
Los mantenedores suelen responder en 1 día
-
replay: a run cancelled during environment setup is logged as an ERROR (Instrument drops the cancellation)Posiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
Los mantenedores suelen responder en 1 día