Custom API methods should support optional version + uid preconditions
I maintainer di solito rispondono entro 1 giorno
@abhisheksharma2411 ci sta già lavorando.
Dal 14/10/2026.
Valutazione
- Difficoltà
- 4/5
- Tempo stimato
- 3-5 giorni
- Idoneità per principianti
- 48/100
- Tipo di issue
- Funzionalità
- Chiarezza
- Abbastanza chiara
- Stato di attività
- Attiva
- Stack tecnologico
- go
- Ambito
- api, distributed-systems
Direzione di ricerca
Start by tracing the SuspendActor custom API and compare it with the existing Update API handling for optional version and UID preconditions. Define how stale calls should produce VersionConflict or NotFound, then verify that the recreated-actor scenario fails instead of mutating the replacement actor.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Descrizione
Update APIs support optional version + uid preconditions to avoid mutating stale objects.
Custom API methods don't have the same protections.
One concrete example is SuspendActor.
Imagine you have 2 independent operators (controllers, reconciliation loops, manually calling kubectl, etc...) called O1 and O2.
t1 - O1 reads the state of ate-demo-counter/counter1
t2 - O2 deletes ate-demo-counter/counter and recreates another actor with the same name
t3 - O1 suspends ate-demo-counter/counter1
O1 has now suspended a completely different actor, potentially running on a different worker / node. This is unlikely the desired outcome. Instead the SuspendActor call from O1 should fail with VersionConflict or NotFound.
We should allow clients to provide optional version + uid preconditions for custom APIs to avoid mutating stale objects.
- Lingua principale
- Go
- Stelle
- 5.7k
- Fork
- 612
- Merge medio
- 2g 13h
- PR unite (30g)
- 555
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 agent-substrate/substrate
-
[Low] CSI plugin builds staging directories from storage_volume_id without a containment checkForse già presa @ericcurtin l’ha presa 2 giorni fa. Apertaarea/security kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
agent-substrate/substrate#2935 ·
I maintainer di solito rispondono entro 1 giorno
-
[Low] CleanupSandboxState joins an unchecked id into paths it RemoveAll()sForse già presa @ericcurtin l’ha presa 3 giorni fa. Apertaarea/security kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 78/100
agent-substrate/substrate#2932 ·
I maintainer di solito rispondono entro 1 giorno
-
[Low] guestVolumeSource can map host paths containing ".." outside the microVM guest shareForse già presa @jiayimeow l’ha presa 6 giorni fa. Apertaarea/security kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 76/100
agent-substrate/substrate#2920 · 1 assegnatario ·
I maintainer di solito rispondono entro 1 giorno
-
[Low] setupImageVolumes builds host mount paths from vol.Name without a containment checkForse già presa @abhisheksharma2411 l’ha presa 5 giorni fa. Apertaarea/security kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 73/100
agent-substrate/substrate#2919 ·
I maintainer di solito rispondono entro 1 giorno
-
[Low] ate-api-server accepts client certificates chained to system roots when --pod-identity-ca-certs is unsetForse già presa @abhisheksharma2411 l’ha presa 5 giorni fa. Apertaarea/security kind/bug
Difficoltà 2/5 1-3 ore Idoneità per principianti 75/100
agent-substrate/substrate#2918 ·
I maintainer di solito rispondono entro 1 giorno
Tutte le issue di agent-substrate/substrate
Issue simili
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 72/100
I maintainer di solito rispondono entro 1 giorno
-
bug good first issue help wanted
Difficoltà 2/5 1-3 ore Idoneità per principianti 88/100
I maintainer di solito rispondono entro 1 giorno
-
Difficoltà 2/5 1-3 ore Idoneità per principianti 65/100
SimonWaldherr/golang-examples#109 ·
-
Missing strings in en.tsApertaarea: localization needs-triage
Difficoltà 1/5 Meno di un'ora Idoneità per principianti 75/100
I maintainer di solito rispondono entro 1 giorno
-
bug ready-for-pr
Difficoltà 2/5 1-3 ore Idoneità per principianti 71/100
kunchenguid/no-mistakes#1615 · 1 commento ·
I maintainer di solito rispondono entro 1 giorno