SPB Git forge

spb/ka-ios

Public
20commits 1branches 0releases
17.2 MBsize
maindefault branch
29 days agolast push
Swift 100%
5.0 KB · 70 lines markdown
Rendered Raw Blame History
1# Audit — refonte majeure de KA iOS (2026-08-18)23## 1. État actuel du dépôt (v1.0.0 build 5)45Architecture saine et déjà modulaire : `Core/` (Ecosystem config-driven 126univers + mappings JSON→KAItem, APIClient cache disque, UniverseService,7AgentService SSE, FavoritesStore, KAID natif, FilterCatalog), `Design/`8(éditorial sharp, clair par défaut), `Features/` (Accueil vivant, Recherche9universelle fan-out, grille Univers + explorateur générique + fiche, Carte10v1, Favoris/collections, Profil, KA Agent, Vrai-Prix natif, menus resto),11Widget « Le pouls », 8 tests d'adaptateurs. **À conserver tel quel** : le12principe config-driven, le thème, KA Agent, KA ID, Vrai-Prix natif, favoris.1314## 2. Écosystème (13 sites, harmonisés ka-ui le 2026-08-17)1516Identités et API connues et vérifiées (accents officiels d'ecosystem.json ;17chaque site : /api/<liste> + /api/stats + fiches). Découvertes clés pour la18refonte : **bbox géographique réel** sur lou-ka/immo-ka/job-ka19(`/api/*.geojson?bbox=w,s,e,n` — testé, filtre effectif, propriétés riches20avec price_label/image) ; `images[]` multiples (Auto·Ka 5/fiche) ; menus21resto (/api/restaurants/{uid}) ; estimation Vrai-Prix (/api/search +22/api/estimate?id=).2324## 3. Écarts sites ↔ app / faiblesses actuelles2526| Domaine | Constat |27|---|---|28| Carte | v1 rudimentaire : marqueurs standards, pas de clustering, pas de recherche par zone, pas de fiche compacte, pas de synchro liste↔carte, données limit=80 sans bbox |29| Fiches | 1 seule image (les sites en ont jusqu'à 5+), pas de galerie plein écran/zoom, pas d'itinéraire, pas de similaires |30| Recherche | pas d'autocomplétion/suggestions live, pas de tri, pas de recherches sauvegardées ni d'alertes, filtres actifs peu visibles, pas de partage |31| Accueil | pas de nouveautés/populaires, pas de collections éditoriales, pas d'« à proximité », pas de reprise d'historique |32| Historique | inexistant (ni éléments consultés, ni centre d'alertes) |33| Navigation | Carte cachée derrière Univers ; Favoris ok mais pas d'accès Historique/Alertes |34| Design | bon socle ; manquent tokens d'espacement formalisés, PriceBadge/SourceTag unifiés, iPad hors périmètre (choix : iPhone prioritaire) |3536## 4. Nouvelle architecture / plan3738- **Navigation** : 5 onglets — Accueil · Recherche · Explorer (univers) ·39  **Carte** (promue, priorité majeure) · Profil. Favoris/Historique/Recherches40  sauvegardées & alertes : sections de l'Accueil + hub dans Profil.41- **Core+** : `KAItem.imageURLs[]` (galeries) ; `UniverseService.mapItems`42  (bbox geojson pour lou/immo/job, repli liste+filtre client pour resto/43  sorti) ; `RecentsStore` (historique consulté, recherches sauvegardées avec44  compteur d'alertes = delta honnête du total API à l'ouverture — pas de45  fausses notifications) ; collections éditoriales = requêtes réelles.46- **Carte majeure** : marqueurs-pilules avec prix, **clustering grille**47  maison (SwiftUI Map n'en a pas), dégroupage au zoom, chips par univers,48  « Rechercher dans cette zone », fiche compacte → fiche complète en sheet49  (état de carte conservé), mode liste/carte synchronisé, plafonds de50  performance (rendu ≤ ~150 marqueurs après clustering).51- **Fiches** : galerie paginée + plein écran zoomable, itinéraire (Plans),52  similaires (même univers/ville), provenance datée.53- **Recherche** : suggestions débouncées (locales + trouve-ka), tri54  (pertinence/prix), chips de filtres actifs, sauvegarde+alerte+partage.55- **QA** : tests clustering/stores en plus des adaptateurs, previews,56  validation simulateur clair/sombre + petit/grand iPhone.5758Ordre d'exécution : Core+ → Carte → Recherche → Fiches → Accueil/Explorer/59Profil → tests/validation/TestFlight. Aucune WebView, aucune donnée fictive ;60tout ce qui n'a pas d'API (avis, horaires) est simplement absent.6162---6364## 5. Livraison de la refonte (build 6, 2026-08-18)6566**Écrans reconstruits** : Carte (marqueurs-pilules prix, clustering grille + dégroupage au zoom, « Rechercher dans cette zone » bbox réel, fiche compacte → feuille avec carte intacte, bascule liste/carte, plafond 150 rendus) ; Fiches (galerie paginée multi-photos + plein écran zoomable, itinéraire Plans, semblables même ville, provenance) ; Recherche (tri pertinence/prix, sauvegarde + alerte, partage, filtres univers) ; Accueil (Reprendre : consultés + recherches sauvegardées avec +N, collections éditoriales réelles ×4, cartes photos) ; Profil (hub Favoris / Historique / Recherches & alertes avec deltas honnêtes et badge d'onglet).67**Ajouts d'architecture** : KAItem.imageURLs, UniverseService.mapItems (geojson bbox) + total(), RecentsStore, ClusterEngine pur testé, Editorial. **Navigation** : Accueil · Recherche · Explorer · Carte · Profil.68**Tests** : 12 (8 adaptateurs + clustering ×2, historique, alertes) — tous verts. **Validation visuelle** : iPhone 17e + 17 Pro Max, clair + sombre (docs/screenshots/refonte-*).69**Hors périmètre assumé** : iPad (choix iPhone prioritaire), avis/horaires (aucune API — rien de simulé).70