Harden workflow ID minting and surface real collisions
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Aptitud para principiantes
- 45/100
Línea de trabajo
Look at the mint_id() function and its use of random.getrandbits. Replace with secrets.randbits or random.SystemRandom(). Then examine graph replay logic for node and link ID collisions. Design a collision contract: redraw IDs during minting against the graph, and create a typed conflict error for replay. Write tests for global seeding independence and collision outcomes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Random ID collisions can fail silently. Global seeding makes draws repeatable.
Full context for agent readers
Follow-up from the ID contract correction. That review established two behavior gaps intentionally excluded from the documentation-only pull request:
mint_id()uses the process-globalrandom.getrandbits. A caller'srandom.seed(...)can make independently created ID streams repeatable. Use an OS-backed or module-private source such assecrets.randbitsorrandom.SystemRandom()and add a regression test proving global seeding does not control IDs.- A genuine same-actor node or link ID collision has no explicit outcome. Node replay is first-arrival-wins; link replay can retain a destination reference to an unrelated existing link. Design the smallest safe collision contract: redraw while minting against a known graph, and surface a typed conflict when replay receives two different entities with one ID.
Acceptance criteria:
- Global
random.seed(...)cannot forcemint_id()to repeat a known stream. - Local minting does not emit an ID already present in the target graph.
- Replay of two distinct entities with one ID produces an explicit, tested outcome rather than silent success.
- Node and link paths have asymmetric regression cases where the competing payloads differ.
Source findings: silent collision handling and seedable random source.
- Lenguaje dominante
- Python
- Estrellas
- 1k
- Forks
- 176
- Merge medio
- 1 d 11 h
- PR fusionados (30 d)
- 87
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Sin 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 Comfy-Org/comfy-cli
-
test_file_utils umask tests assert against a umask the code never reads (import-time _UMASK), so they only pass on a 0o022 hostPosiblemente ocupada @neverbiasu la tomó hace 10 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 88/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 86/100
Comfy-Org/comfy-cli#907 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 1/5 Menos de una hora Aptitud para principiantes 92/100
Comfy-Org/comfy-cli#781 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
`comfy launch --background` fails with FileNotFoundError when comfy-cli is invoked by pathPosiblemente ocupada @RaphaelFakhri la tomó hace 43 días. Abiertobug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Comfy-Org/comfy-cli#691 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Comfy-Org/comfy-cli#670 · 2 comentarios ·
Los mantenedores suelen responder en 1 día
Todos los issues de Comfy-Org/comfy-cli
Issues similares
-
README Quick Start query command fails, and doctor points to a missing Prerequisites sectionAbiertodocumentation type/bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
add entry to blockAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 65/100
StevenBlack/hosts#3299 ·
-
`garak --report` overwrites the input report when its name has no ".report"Posiblemente ocupada @0z5a la tomó hoy. Abiertoneeds-triage
Dificultad 2/5 Medio día Aptitud para principiantes 72/100
Los mantenedores suelen responder en 2 días
-
trace: Pi's 1-hour cache writes are priced at 1.25x, but billed at 2xPosiblemente ocupada @Shizoqua la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/TokenEconomizer#221 ·
Los mantenedores suelen responder en 1 día
-
plot_graph crashes when a mesh node has no m2m edgePosiblemente ocupada @tygvi la tomó hoy. Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
mllam/neural-lam#883 · 1 comentario ·
Los mantenedores suelen responder en 2 días