feat(scripts): read-only clone mode — add --skip-source-stage-update to import.py (pull-sequences)
Nadie ha tomado este issue todavía.
- #154 de @Chouffe — cerrado sin fusionar
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 78/100
Línea de trabajo
Comienza en scripts/data_transfer/ingestion/platform/import.py alrededor de las líneas 803-809 y compara el precedente de --no-stage-update en pull_sequence_annotations.py. Ejecuta el comando clone proporcionado con --skip-source-stage-update y verifica que las secuencias se importen localmente sin llamar a update_source_annotations_stage() en el origen; considera las notas de pruebas locales de Makefile y README si están incluidas.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Finding
make pull-sequences (clone mode of scripts/data_transfer/ingestion/platform/import.py) is not read-only against the source API: after a successful clone it PATCHes every cloned sequence's annotation on the source to under_annotation (update_source_annotations_stage(), called at import.py:803-809) to "claim" the sequences for workflow A.
That behavior is correct for the production annotation workflow, but it makes it impossible to hydrate a local API from the remote for testing/debugging without mutating remote state:
- There is no flag to skip the source stage update.
--dry-runskips the source update but also skips the import itself, so it can't be used for hydration.- The equivalent flag exists in the pipeline-B pull script (
pull_sequence_annotations.py --no-stage-update, read-only export) — but not inimport.py.
Proposal
Add a --skip-source-stage-update flag to import.py (mirroring the --no-stage-update precedent) that guards the update_source_annotations_stage() call, so clone mode can run read-only against the source:
uv run python -m scripts.data_transfer.ingestion.platform.import \
--source-annotation-url https://annotationapi.pyronear.org \
--url-api-annotation http://localhost:5050 \
--max-sequences 10 \
--clone-processing-stage ready_to_annotate \
--skip-source-stage-update
Optionally expose it through the Makefile (e.g. make pull-sequences READ_ONLY_SOURCE=1) and mention it in the README's local-testing notes.
- Lenguaje dominante
- TypeScript
- Estrellas
- 0
- Forks
- 1
- Merge medio
- 2 d 6 h
- PR fusionados (30 d)
- 4
Preparar el entorno
- Incluye un Dockerfile o un archivo de Docker Compose
- Sin plantilla de pull request
- Sin 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 pyronear/pyro-annotator
-
hackathon-theodo P2-medium T4-26 topic: frontend type: enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 80/100
pyronear/pyro-annotator#409 ·
-
type: bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 62/100
pyronear/pyro-annotator#397 ·
-
type: enhancement
Dificultad 2/5 1-3 horas Aptitud para principiantes 84/100
pyronear/pyro-annotator#322 ·
-
Backend: fix make test warningsAbierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
pyronear/pyro-annotator#68 · 1 comentario ·
-
P1-high topic: frontend type: bug
Dificultad 3/5 1-2 días Aptitud para principiantes 48/100
pyronear/pyro-annotator#428 ·
Todos los issues de pyronear/pyro-annotator
Issues similares
-
documentation good first issue roadmap
Dificultad 1/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
resend/react-email#3876 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
siyuan-note/siyuan#21324 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
dmno-dev/varlock#1279 · 1 comentario ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
himynameisdave/bsky-profanity-counter#59 ·
Los mantenedores suelen responder en 1 día