pyronear / pyronear/pyro-annotator
chore: remove orphaned data-transfer scripts left behind by retired Make targets
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 0
- Forks
- 1
- Avg merge
- 1d 2h
- Merged PRs (30d)
- 2
Description
Context
#190 (PR #202) slimmed annotation_api/Makefile down to essential commands but deliberately kept the underlying scripts runnable via uv run python -m scripts.data_transfer.... A dependency audit of scripts/data_transfer/ingestion/alert_api/ shows several of those scripts now have no remaining callers — no Makefile target, no imports from other code, no doc references. Git history preserves everything, so deletion is cheap to undo.
Audit (as of PR #202)
| Script | Lines | What it is | Recommendation |
|---|---|---|---|
import_yolo_sequence.py |
614 | One-off importer from the sdis-77 migration; only caller is batch_import_local_yolo.py |
Delete |
batch_import_local_yolo.py |
305 | Batch wrapper around the above (sdis-77 defaults baked in) | Delete |
export_annotations.py |
194 | Export sequences+annotations to a JSON backup — half of the retired file-based push-annotations sync |
Delete |
import_annotations.py |
471 | Restore annotations from that JSON backup — other half of the retired sync | Delete |
update_annotation_stage.py |
151 | Admin escape hatch for moving annotation stages (update-stage-* targets removed in #190) |
Delete once in-app detection review covers stage transitions — or keep deliberately as an admin tool |
cleanup_sequences.py |
129 | Ad-hoc admin utility: delete partial/duplicate sequences before re-imports | Decide: still used ad-hoc? |
cleanup_duplicate_images.py |
256 | Ad-hoc admin utility: delete READY_TO_ANNOTATE sequences with frozen/duplicate frames | Decide: still used ad-hoc? |
~2,100 lines total if all seven go.
Out of scope
Library modules in the same package (client.py, shared.py, object_split.py, object_clustering.py, annotation_management.py, sequence_fetching.py, progress_management.py, worker_config.py, utils.py) are all still imported by import.py, export_dataset.py, or the test suite — they stay.
Notes
- Do this after #202 merges so the Makefile and scripts don't churn in the same diff.
- When deleting, sweep docs for stale mentions (currently none outside historical
docs/specs/records). - Follows the repo's retirement pattern: FiftyOne pipelines (#179) removed targets first, code second.
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start after PR #202 merges by reviewing the seven scripts under scripts/data_transfer/ingestion/alert_api/ and searching the repository for callers, imports, Make targets, and documentation references. Delete only the confirmed orphaned scripts, decide whether the three admin utilities remain needed, and verify that retained modules and historical docs are unaffected.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- tooling
- Issue type
- Refactor
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 45/100