Aller au contenu

PD-106 - Specification Review (v3)

Constatations

Point 01

Type : Ambiguite Reference : PD-106-specification.md, section 3 (definition "Re-authentification"), section 4 (INV-106-05) Description : La notion de "meme flux de navigation, sans sortie vers un autre parcours" n'est pas definie par des etats de navigation contractuels stricts. Impact : Deux implementations peuvent appliquer des interpretations differentes du perimetre de flux tout en se declarant conformes. Gravite : Majeur

Point 02

Type : Contradiction Reference : PD-106-specification.md, section 4 (INV-106-13), section 6 (ERR-106-LOGOUT-FAILED), section 7 (CA-106-13) Description : INV-106-13 et CA-106-13 imposent l'invalidation serveur, alors que ERR-106-LOGOUT-FAILED contractualise un etat final non authentifie cote client meme si l'invalidation serveur echoue. Impact : Tension contractuelle entre exigence absolue d'invalidation serveur et fallback accepte en erreur. Gravite : Majeur

Point 03

Type : Non testable Reference : PD-106-specification.md, section 6 (ERR-106-MFA-STATE-UNAVAILABLE), PD-106-tests.md, section 9 Description : Les "actions necessitant un etat fiable" ne sont pas enumerees exhaustivement. Impact : L'oracle de test reste partiel sur ce cas d'erreur, avec couverture non exhaustive. Gravite : Mineur

Point 04

Type : Non testable Reference : PD-106-specification.md, section 3 (definition "Logs applicatifs"), section 4 (INV-106-08), section 7 (CA-106-17), PD-106-tests.md, section 8 Description : Les services tiers de crash reporting/telemetrie sont explicitement hors surface d'audit quand l'acces n'est pas garanti, alors que CA-106-17 porte une exigence globale sur les logs applicatifs. Impact : La preuve exhaustive de non-presence de secrets dans tous les logs applicatifs n'est pas toujours etablissable en environnement de test. Gravite : Majeur

Point 05

Type : Incoherence Spec<->Tests Reference : PD-106-specification.md, section 4 (INV-106-13), section 6 (ERR-106-LOGOUT-FAILED), PD-106-tests.md, section 2 (matrice) Description : INV-106-13 inclut explicitement le fallback ERR-106-LOGOUT-FAILED, mais la matrice ne rattache INV-106-13 qu'a TC-NOM-07 et pas a TC-ERR-11. Impact : Tracabilite partielle entre l'invariant et sa preuve en mode degrade. Gravite : Mineur

Point 06

Type : Hypothese dangereuse Reference : PD-106-specification.md, section 6 (ERR-106-RATE-LIMIT), section 9 (H-106-01/H-106-03), PD-106-tests.md, TC-ERR-15 Description : Le seuil et la fenetre de rate-limit sont delegues a la politique serveur et non contractualises cote mobile. Impact : Reproductibilite du test TC-ERR-15 dependante de configurations externes susceptibles de varier. Gravite : Mineur

Point 07

Type : Hypothese dangereuse Reference : PD-106-specification.md, section 4 (INV-106-10), section 9 (H-106-04), PD-106-tests.md, TC-NOM-04 Description : L'invalidation des anciens codes de recuperation repose sur une hypothese backend (invalidation atomique) et non sur un contrat detaille dans le dossier mobile. Impact : Risque de fenetre de coexistence des anciens/nouveaux codes si la garantie backend est insuffisante. Gravite : Majeur

Point 08

Type : Risque secu/conformite Reference : PD-106-specification.md, section 6 (ERR-106-LOGOUT-FAILED), section 4 (INV-106-13) Description : En cas d'echec d'invalidation serveur au logout, la session serveur peut rester active tandis que l'application force uniquement la deconnexion locale. Impact : Risque residuel de session serveur persistante et surface d'abus associee. Gravite : Majeur

Point 09

Type : Non testable Reference : PD-106-specification.md, section 4 (INV-106-18), section 7 (CA-106-19), PD-106-tests.md, section 9 Description : La preuve RGPD article 17 complete est explicitement hors perimetre mobile et depend d'artefacts externes. Impact : Le dossier PD-106 seul ne permet pas une acceptation formelle complete sur l'axe RGPD. Gravite : Bloquant