Skip to content

[agent:front] Compléter la navigation Accueil/Dashboard et ses tests - #38

Merged
Liel2201 merged 3 commits into
stagingfrom
codex/front-landing-navigation
Oct 26, 2026
Merged

Liel2201 merged 3 commits into
stagingfrom
codex/front-landing-navigation

Conversation

@Liel2201

@Liel2201 Liel2201 commented Oct 26, 2026 •

Copy link
Copy Markdown
Collaborator

[agent:front]

Ce qui change

F3 — compléter la navigation landing/dashboard de #36 et couvrir la conservation de session.

Chaque ouverture/reload arrive sur la landing, après la connexion existante si nécessaire. L’état de navigation est indépendant de la session reçue par GET/SSE. « Accueil » retourne à la landing ; « Dashboard » et « Reprendre la session » ouvrent le vault courant sans POST. Une création explicite réussie ouvre son nouveau dashboard ; un échec conserve la page et la session précédentes.

Les composants, animations, sections au scroll et tokens de Nathan sont conservés. Les boutons réutilisent Button. La même navigation s’applique au mode réel et à ?demo, avec leurs mentions visibles. Aucun changement au keeper, à session.json, aux contrats, calculs de marge, preuves Testnet, authentification ou Market Advisor. Aucune fusion ni commande de déploiement exécutée.

Revue

Standard — trois sessions Claude neuves, locales, sans conversation auteur ; seuls git diff origin/staging...HEAD, AGENTS.md §7–8 et les interfaces utiles ont été fournis. Aucun problème bloquant. La dernière passe relit le diff contre le staging actuel après intégration de #36. La première passe a signalé l’absence de couverture TypeScript des tests navigateur : corrigée, typecheck relancé avec succès.

Une passe a mentionné deux remarques mineures : une disparition hypothétique de session (non représentable par les événements state actuels : le hook n’efface pas une session reçue) et la bibliothèque DOM ajoutée au projet TypeScript node pour typer les expressions navigateur des tests. La dernière passe note aussi que le drapeau d’animation startedHere reste actif après un échec : comportement préexistant, sans écriture ni effet sur la session. Aucune interface partagée modifiée.

Tests

Exécutés sur macOS, worktree isolé initialement depuis origin/staging @ 89d0c4f, puis rebasé sur d0ff38c (#36). Après résolution, git diff f57430d HEAD -- app package-lock.json est vide : le code, les dépendances et les tests restent exactement ceux validés ci-dessous ; seule la documentation a été réconciliée.

  • npm ci : succès, y compris après mise à jour du lockfile.
  • npm run typecheck : succès sur tous les workspaces ; inclut maintenant Playwright et ses tests.
  • npm test : 174 tests verts (app 31, keeper 114, shared 16, scripts 13). Première exécution sandbox : deux tests SSE bloqués par EPERM ; relance avec écoute loopback autorisée : tous verts.
  • npm run build -w @keystone/app : succès. Avertissements existants : tailles de chunks et eval de PGlite.
  • PLAYWRIGHT_CHROMIUM_EXECUTABLE_PATH='/Applications/Google Chrome.app/Contents/MacOS/Google Chrome' npm run test:browser -w @keystone/app : 18 tests verts, Chrome, 1440×900 et 390×844.

Parcours navigateur : accueil sans session et avec les trois statuts, reprise du même vault, retour à l’accueil, reload, connexion, GET/SSE tardifs, session remplacée par SSE sans navigation, scroll jusqu’au choix du collatéral, retour en haut, création uniquement par Start, échec de création et mode ?demo. Captures landing/collatéral/dashboard inspectées ; aucun débordement horizontal sur les accueils contrôlés.

Le double HTTP/SSE ne tourne que sur 127.0.0.1. Les requêtes navigateur non locales sont bloquées. Les tests constatent zéro POST pour Accueil/Dashboard/Reprendre et une session inchangée ; les seuls POST de création vont au double local, sans SDK ni clés. Aucune transaction Stellar et aucune écriture au keeper public.

Limites : site hébergé, téléphones physiques et autres navigateurs non testés. Le mock ?demo garde son comportement existant : sa session est en mémoire et disparaît au reload. L’installation du Chromium fourni par Playwright n’a pas été exécutée ; le Chrome installé a été utilisé.

Interfaces

Aucun impact sur l’API ni les types partagés. GET/SSE restent des lectures. POST /session conserve sa sémantique de remplacement explicite. Aucun accord interface-change requis.

Documentation

README, sections Live demo et Front : navigation, conservation de session, limite du mock, procédure et résultats des tests navigateur. AGENTS.md et docs/interfaces.md v1.4 consultés ; inchangés car aucune règle ni interface ne change. package-lock.json ne change que pour la dépendance de test Playwright du front. Les modifications locales du checkout initial ont été conservées.

Checklist

  • Revue au niveau requis (Claude neuf, trois passes)
  • Tests lancés et résultats ci-dessus
  • README et documents liés vérifiés et mis à jour si nécessaire
  • Aucun impact non approuvé sur un autre pôle
  • Aucun secret dans le diff

@vercel

vercel Bot commented Oct 26, 2026 •

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated
keystone Ready Ready Preview Oct 26, 2026 11:06am UTC

@Lagouze
Lagouze force-pushed the codex/front-landing-navigation branch from f57430d to 018ea6a Compare October 26, 2026 11:05
@Liel2201 Liel2201 changed the title [agent:front] Retrouver la landing sans réinitialiser la session [agent:front] Compléter la navigation Accueil/Dashboard et ses tests Oct 26, 2026
@Liel2201
Liel2201 merged commit 4020895 into staging Oct 26, 2026
4 checks passed
@Lagouze
Lagouze deleted the codex/front-landing-navigation branch October 30, 2026 17:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants