feat(builder): lazy UTxO resolvers for retry-safe buildEffect
Maintainer antworten meist innerhalb von 1 Tag
Dieses Issue hat noch niemand übernommen.
Bewertung
- Schwierigkeit
- 3/5
- Geschätzter Aufwand
- 1-2 Tage
- Anfängerfreundlichkeit
- 55/100
- Issue-Typ
- Feature
- Klarheit
- Klar beschrieben
- Aktivitätsstatus
- Veraltet
- Tech-Stack
- typescript
- Bereich
- backend-api-design
Rechercherichtung
Beginne mit BuildOptions und resolveAvailableUtxos in TransactionBuilder.ts und untersuche anschließend CollectFromParams.inputs und createCollectFromProgram in Collect.ts. Bestätige, wie statische Arrays verarbeitet werden, bevor du beide inputs erweiterst, um lazy Effects zu unterstützen. Als erledigt gilt die Aufgabe, wenn das statische Verhalten kompatibel bleibt und lazy Resolver zum Build- oder Programmausführungszeitpunkt ausgewertet werden, sodass Retries frische UTxOs erhalten.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Beschreibung
Problem
BuildOptions.availableUtxos and collectFrom inputs are static arrays resolved before buildEffect() runs. When an action is retried via Effect.retry, the same stale UTxO arrays are reused — the provider is never queried again.
Proposed Solution
Allow availableUtxos and collectFrom.inputs to also accept a lazy resolver () => Effect<ReadonlyArray<UTxO>> evaluated at build time:
client.newTx()
.collectFrom({ inputs: () => client.Effect.getUtxos(scriptAddress), redeemer })
.buildEffect({ availableUtxos: () => client.Effect.getWalletUtxos() })
.pipe(Effect.flatMap(s => s.Effect.signAndSubmit()))
.pipe(Effect.retry(Schedule.recurs(3)))
Each retry calls the resolver fresh, so UTxOs are always up to date with no extra boilerplate required from the user.
Affected Areas
BuildOptions.availableUtxos— extend type to accept() => Effect<ReadonlyArray<UTxO>>resolveAvailableUtxosinTransactionBuilder.ts— yield the Effect at build time when lazyCollectFromParams.inputs— same lazy extensioncreateCollectFromPrograminCollect.ts— evaluate resolver at program execution time
Non-breaking — static arrays continue to work as-is.
- Vorherrschende Sprache
- TypeScript
- Sterne
- 22
- Forks
- 34
- Ø Merge
- 21 Std. 10 Min.
- Gemergte PRs (30 T.)
- 67
Entwicklungsumgebung
- Kein Dockerfile und keine Docker-Compose-Datei
- Keine Pull-Request-Vorlage
- Beitragsleitfaden lesen
Erste Schritte
- Lesen Sie das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreiben Sie ins Issue, dass Sie es übernehmen — das erspart doppelte Arbeit.
- Forken Sie das Repository und arbeiten Sie in einem Branch.
- Öffnen Sie einen Pull Request, der die Issue-Nummer nennt.
Mehr aus IntersectMBO/evolution-sdk
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
IntersectMBO/evolution-sdk#696 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 79/100
IntersectMBO/evolution-sdk#694 ·
Maintainer antworten meist innerhalb von 1 Tag
-
bug
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
IntersectMBO/evolution-sdk#559 ·
Maintainer antworten meist innerhalb von 1 Tag
-
enhancement
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
IntersectMBO/evolution-sdk#557 ·
Maintainer antworten meist innerhalb von 1 Tag
-
txBuilder: committee cert redeemers are never resolved to a certificate indexEvtl. vergeben @emmanuel-musau hat das vor 3 Tagen übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 80/100
IntersectMBO/evolution-sdk#518 ·
Maintainer antworten meist innerhalb von 1 Tag
Alle Issues in IntersectMBO/evolution-sdk
Ähnliche Issues
-
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 65/100
lichess-org/lila#22324 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
[Feature Request] [Web] Expose kvCacheQuantizationBits in the onnxruntime-web WebGPU EP optionsOffenep:WebGPU platform:web quantization
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 66/100
microsoft/onnxruntime#33752 ·
Maintainer antworten meist innerhalb von 2 Tagen
-
[Skill Bug]: entra-agent-id: inaccurate blueprint permission inheritance and parent token sub claimOffenbug entra-agent-id
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 78/100
microsoft/GitHub-Copilot-for-Azure#3467 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag
-
fix(worker): keep normal prepare waiting states failure-freeEvtl. vergeben @LichKing-2234 hat das heute übernommen. Offenagent:codex priority:P1
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 72/100
AgoraIO-Extensions/agent-infra#3745 ·
Maintainer antworten meist innerhalb von 1 Tag
-
The five-line work window can drop its oldest line: the per-line byte share ignores the JSON framingEvtl. vergeben @Eapp1e hat das heute übernommen. Offen
Schwierigkeit 2/5 1-3 Stunden Anfängerfreundlichkeit 84/100
makecindy/cindy#7973 · 1 Kommentar ·
Maintainer antworten meist innerhalb von 1 Tag