P3: Acquire & automate
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 5/5
- Tiempo estimado
- Más de una semana
- Aptitud para principiantes
- 25/100
- Tipo de issue
- Nueva funcionalidad
- Claridad
- Bastante claro
- Estado de actividad
- Activo
- Stack tecnológico
- python
- Área
- backend, data-engineering, devops
Línea de trabajo
Start with the p3-log-acquisition OpenSpec change and its acquisition-service requirements, then read the linked roadmap and pitfalls document. The issue says the change is implemented, but lists live-roboRIO throughput and checksum verification, USB testing on Linux and Windows, and Windows service and CI work as pending; check the linked follow-up issues and human verification checklist to find the current entry point. Done means the remaining verification is complete and matches appear unattended within five minutes.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Size: S · Depends on: IgniteRobotics/flashpoint-private#68 · OpenSpec: p3-log-acquisition
Status
Update 2026-10-19: the Windows CI job (group 9) is done. What's left is [HUMAN] 11.1–11.4, tracked in IgniteRobotics/flashpoint#13. Windows test gaps: IgniteRobotics/flashpoint#3; owlet flake: IgniteRobotics/flashpoint#4.
Status: implemented; human verification pending (change p3-log-acquisition, on main). Open: the live-roboRIO task (throughput, sha256sum on the rio), a real USB stick on Linux and Windows (macOS passed 2026-10-05), the Windows service, and the Windows CI job (group 9, still pending). The container moved out of P3 (ADR-0009 amended).
- Follow-up, change
acquire-replay-build(2026-10-15): after a successful derive the acquire cycle (watch and one-shot, not a dry run) runs an incrementalflashpoint reportas its own process, between derive/detect and backup, so a new match reaches Replay without a restart; a runningservelists it after a page reload. A failed or locked build stays owed (persisted asreportin the watch status, shown bydoctor) and is retried each cycle.flashpoint reportnow holdsmeta/report.lockand exits 3 when another build has it. Spec placement: the requirements live inmatch-reports("Replay data kept current by the acquire watch", "One Replay build at a time") becauseacquisition-serviceexists only in the unarchivedp3-log-acquisitionchange. When P3 archives, add the Replay build step between derive and backup inacquisition-service's "One-shot and watch modes" list. Implemented as PR IgniteRobotics/flashpoint-private#59; archived 2026-10-15 (specs synced: match-reports). Pit check ([HUMAN] 4.3) is open.
Scope
- SFTP puller (paramiko or asyncssh, [Background]):
- copies to the inbox, verifies size and hash, and never deletes on the robot by default;
- is aware of rotation: warn when robot free space is under 100 MB, since WPILib and Phoenix prune at 50 MB (WPILib Developers, 2026b; CTR Electronics, n.d.-a).
- Removable media: USB sticks (macOS, Linux, Windows) are a pull source next to the robot, read-only and hash-verified. Manual inbox drops still work.
- Watcher:
flashpoint acquire --watchcycles robot, volumes, ingest, derive, the Replay build and backup. - Packaging: a systemd user unit with a correct
ExecStart(pitfall 7) and a Windows scheduled task. Windows is supported. The container is deferred out of P3. - Backup:
rclonecopy oflake/raw(immutable) and alake/metasnapshot [Background]. Replacesdrive-backup.py. - Exit: plug in the robot, and within 5 min its matches show up in the views, unattended.
Moved from the rewrite roadmap on 2026-10-19. That doc keeps the dependency graph, migration, quality gates and risks. Status lives here. Author-year citations are in references.md. pitfall N refers to 03-pitfalls-and-performance.md.
- Lenguaje dominante
- Python
- Estrellas
- 0
- Forks
- 1
- Merge medio
- 18 h 37 min
- PR fusionados (30 d)
- 15
Preparar el entorno
Este proyecto no incluye contenedor de desarrollo, Dockerfile ni guía de contribución, así que la configuración corre por tu cuenta: empieza por su README y consulta nuestra guía para la primera contribución para los pasos generales.
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 IgniteRobotics/flashpoint
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
IgniteRobotics/flashpoint#45 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 74/100
IgniteRobotics/flashpoint#44 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
IgniteRobotics/flashpoint#43 ·
Los mantenedores suelen responder en 1 día
-
bug good first issue
Dificultad 1/5 Menos de una hora Aptitud para principiantes 85/100
IgniteRobotics/flashpoint#12 ·
Los mantenedores suelen responder en 1 día
-
tools/update-owlet-manifest.py ignores --help and starts downloadingQuizá libre de nuevo @yoveneim la tomó hace 10 días y no hay ningún pull request abierto. Abiertobug good first issue
Dificultad 2/5 1-3 horas Aptitud para principiantes 83/100
IgniteRobotics/flashpoint#11 · 1 comentario ·
Los mantenedores suelen responder en 1 día
Todos los issues de IgniteRobotics/flashpoint
Issues similares
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
microsoft/markitdown#2820 ·
Los mantenedores suelen responder en 1 día
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 66/100
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
yt-project/yt#5624 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
-
bug
Dificultad 2/5 1-3 horas Aptitud para principiantes 82/100
NousResearch/hermes-agent#148376 ·
Los mantenedores suelen responder en 1 día