refactor(supervisor): make managed child ownership structural
Mantenedores costumam responder em até 1 dia
Avaliação
- Dificuldade
- 5/5
- Tempo estimado
- Mais de uma semana
- Facilidade para iniciantes
- 30/100
- Tipo de issue
- Refatoração
- Clareza
- Precisa de esclarecimento
- Status de atividade
- Ativa
- Stack de tecnologia
- rust
- Domínio
- operating-systems
Direção de pesquisa
Comece lendo PR #3142 e, em seguida, rastreie os caminhos child canonical e SSH mencionados na issue para entender seu fluxo atual de registro e limpeza. O trabalho estará concluído quando ambos os caminhos usarem uma única abstração managed-child, a espera e o tratamento de ECHILD estiverem centralizados, existirem testes determinísticos de intercalação e o comportamento não-Linux permanecer inalterado.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
Description
Make Linux managed-child ownership structural so callers cannot accidentally separate spawning, PID registration, waiting, unregistering, and lost-child diagnostics.
Context
The child reaper race fixed by PR #3142 required every Linux child path to use the correct registration protocol. The current registry helper closes the immediate spawn-to-registration window, but ownership remains a convention across canonical and SSH process paths. The diagnostics and wait-handling follow-ups explored during that review belong with the ownership cleanup.
Definition of Done
- Introduce a managed-child abstraction that owns Linux child registration and cleanup.
- Route canonical and SSH child paths through the abstraction.
- Centralize explicit-wait handling, unregistering, and ECHILD diagnostics.
- Add deterministic tests for ownership and reaper interleavings.
- Preserve non-Linux behavior without introducing Linux-only reaper machinery there.
Related Work
- PR #3142
- Linguagem predominante
- Rust
- Estrelas
- 15.4k
- Forks
- 1.7k
- Merge médio
- 2d 3h
- PRs com merge (30d)
- 374
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de NVIDIA/OpenShell
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
Mantenedores costumam responder em até 1 dia
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 62/100
Mantenedores costumam responder em até 1 dia
-
bug(sdk/go): edge (Cloudflare Access) token is cached for the client lifetime and never reloadedAbertastate:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
Mantenedores costumam responder em até 1 dia
-
state:triage-needed
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 76/100
Mantenedores costumam responder em até 1 dia
Todas as issues de NVIDIA/OpenShell
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 68/100
bytecodealliance/rustix#1703 ·
Mantenedores costumam responder em até 3 dias
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 74/100
Mantenedores costumam responder em até 1 dia
-
linux build warningAberta
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
Pomax/vst-plugins#24 ·
Mantenedores costumam responder em até 1 dia
-
V1 manifest lists written by Java lose added/existing/deleted file countsTalvez já em andamento @kacper-li-airspace-intelligence assumiu hoje. Aberta
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
apache/iceberg-rust#3445 ·
Mantenedores costumam responder em até 4 dias
-
Slack integration: links on self-hosted domains never unfurl (parseCapShareUrl only accepts cap.so / cap.link)Talvez já em andamento @mangeshraut712 assumiu hoje. Abertabug
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 72/100
CapSoftware/Cap#2546 · 1 comentário ·
Mantenedores costumam responder em até 1 dia