docs: actualizar README con estado real de implementación
Elimina la sección "Pendiente" del scaffold inicial (ya todo implementado) y la sustituye por tabla de estado con referencia a cada archivo, más la lista real de próximos pasos (Maps key, test en dispositivo, background sync). También añade .idea/ al .gitignore. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -39,3 +39,6 @@ yarn-error.*
|
||||
# generated native folders
|
||||
/ios
|
||||
/android
|
||||
|
||||
# IDE
|
||||
.idea/
|
||||
|
||||
@@ -98,11 +98,27 @@ src/
|
||||
El servidor SIEMPRE fija `user_id`/`reported_by`/`project_id` y valida permisos: el cliente
|
||||
nunca los envía.
|
||||
|
||||
## Pendiente (siguientes tandas)
|
||||
## Estado de implementación
|
||||
|
||||
- Sincronización en segundo plano / al recuperar conexión (hoy es manual con el botón).
|
||||
- Reconciliación de **creaciones** offline (mapear filas locales temporales al `server_id`).
|
||||
- Captura de fotos (expo-image-picker) e integración con `enqueueMedia`.
|
||||
- Pantallas ricas: mapa/GeoJSON de features, formulario de inspección desde plantilla,
|
||||
detalle de incidencia con checklist + comentarios + fotos.
|
||||
- Resolución de conflictos en UI.
|
||||
Todas las funcionalidades están implementadas y el typecheck pasa limpio (`npm run typecheck`).
|
||||
|
||||
| Área | Estado |
|
||||
|------|--------|
|
||||
| Auto-sync (red/primer plano/intervalo 60s) | ✓ `src/sync/useAutoSync.ts` |
|
||||
| Reconciliación de creaciones offline (temp-id → server_id, remap FKs) | ✓ `src/sync/engine.ts` |
|
||||
| Captura de fotos (cámara/galería) + cola offline | ✓ `src/ui/MediaStrip.tsx` |
|
||||
| Mapa GeoJSON de features (react-native-maps) | ✓ `src/ui/FeatureMap.tsx` + `src/ui/geojson.ts` |
|
||||
| Formulario de inspección dinámico desde plantilla | ✓ `src/screens/InspectionFormScreen.tsx` |
|
||||
| Detalle de incidencia (checklist + comentarios + fotos) | ✓ `src/screens/detail/IssueDetailContent.tsx` |
|
||||
| Resolución de conflictos en UI (Outbox) | ✓ `src/screens/OutboxScreen.tsx` |
|
||||
| Maestro-detalle adaptativo (tablet 2 paneles / móvil navegación) | ✓ `src/ui/MasterDetail.tsx` |
|
||||
|
||||
## Pendiente (próximas tandas)
|
||||
|
||||
- **Google Maps API key**: el mapa dibuja la geometría offline, pero los tiles base requieren
|
||||
una key. Configurar con `GOOGLE_MAPS_API_KEY` (ver sección Mapa arriba).
|
||||
- **Test en dispositivo real**: ejecutar `npx expo run:android` o distribuir el APK
|
||||
con `eas build -p android --profile preview` (ver sección Arranque).
|
||||
- **Sincronización en segundo plano con app cerrada** (requiere `expo-task-manager` +
|
||||
`expo-background-fetch`): actualmente solo sincroniza con la app en primer plano.
|
||||
- **Push notifications** para alertas de nuevas incidencias o comentarios.
|
||||
|
||||
Reference in New Issue
Block a user