[FR] - Generalize Plutus guard witnesses over supported script versions
I maintainer di solito rispondono entro 1 giorno
Nessuno ha ancora preso questa issue.
Valutazione
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Idoneità per principianti
- 35/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- haskell
- Ambito
- api, backend-api-design
Direzione di ricerca
Start by reading the Plutus guard witness constructor introduced in PR #1381 and the ledger language and era support machinery it relies on. Assess whether that machinery provides a reusable constraint for supported guarding languages, then generalize the constructor while preserving V4 behavior. Add tests for supported and rejected language/era combinations, and document downstream API migration; done means the constraint, behavior, tests, and migration are covered.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
The Plutus guard witness constructor in #1381 fixes the script language to PlutusV4. We agree with carbolymer's review comment that the API should ideally express which script versions support the guarding purpose through a constraint, rather than hardcoding one version.
Track that generalization as a separate follow-up. This issue should not block merging #1381 and exposing native and Plutus V4 guard witnesses in the experimental transaction API. Keep the current V4 restriction for that PR.
The follow-up should:
- Investigate a reusable constraint or type-level representation for Plutus languages that support the guarding purpose, consistent with ledger language and era support.
- Generalize the Plutus guard witness constructor to use that evidence while continuing to reject unsupported language/era combinations.
- Preserve existing Plutus V4 behavior and add tests for the supported combinations and rejection of unsupported ones.
- Document any downstream API migration required by the change.
Keeping the V4 restriction is the interim alternative. The review notes that there is no known existing constraint for this purpose and that introducing a class solely for this PR would not be worthwhile; the follow-up should assess whether an abstraction can be shared with the existing language/era machinery.
- Lingua principale
- Haskell
- Stelle
- 41
- Fork
- 32
- Merge medio
- 1g 9h
- PR unite (30g)
- 22
Preparare l'ambiente
- Nessun Dockerfile né file Docker Compose
- Ha un modello di pull request
- Leggi la guida per i contributori
Come iniziare
- Leggi tutta la issue e poi la guida ai contributi del progetto.
- Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
- Fai un fork del repository e lavora su un branch.
- Apri una pull request che faccia riferimento al numero della issue.
Altre issue di IntersectMBO/cardano-api
-
Dijkstra era type: enhancement
Difficoltà 5/5 Più di una settimana Idoneità per principianti 25/100
IntersectMBO/cardano-api#1382 ·
I maintainer di solito rispondono entro 1 giorno
-
cardano-rpc: split a lightweight client package out of the serverForse di nuovo libera @carbolymer l’ha presa 60 giorni fa e non c’è nessuna pull request aperta. Apertarefactor
IntersectMBO/cardano-api#1339 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
Transaction builders accept duplicate TxIns with differing witnesses, producing transactions rejected with ExtraRedeemersForse di nuovo libera @carbolymer l’ha presa 70 giorni fa e non c’è nessuna pull request aperta. Apertabug
IntersectMBO/cardano-api#1324 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
bug WASM
Difficoltà 4/5 3-5 giorni Idoneità per principianti 48/100
IntersectMBO/cardano-api#1323 ·
I maintainer di solito rispondono entro 1 giorno
-
gRPC: [Meta] cardano-rpc: Ogmios feature parityForse di nuovo libera @carbolymer l’ha presa 83 giorni fa e non c’è nessuna pull request aperta. Apertatype: enhancement
IntersectMBO/cardano-api#1302 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di IntersectMBO/cardano-api
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
I maintainer di solito rispondono entro 1 giorno
-
30-minutes algorithm any-language codewars dart easy elixir hackerrank hacktoberfest haskell help wanted interview-prep julia leetcode lua open-source r scala students zig
Difficoltà 2/5 1-3 ore Idoneità per principianti 77/100
Huerte/algo-solutions-python#226 ·
I maintainer di solito rispondono entro 1 giorno
-
[BUG]: Cloning a compiler from a tree results in a single-file compilerForse già presa Una pull request collegata a questa issue è aperta o già unita. Apertabug
Difficoltà 2/5 1-3 ore Idoneità per principianti 68/100
compiler-explorer/compiler-explorer#9561 ·
I maintainer di solito rispondono entro 1 giorno
-
documentation
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
bittide/bittide-hardware#1357 ·
-
tricorder
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
I maintainer di solito rispondono entro 1 giorno