Automattic / Automattic/wp-codebox
Fail visual comparison when a captured document is an application error
Personne n'a encore pris cette issue.
- Langage dominant
- TypeScript
- Étoiles
- 17
- Forks
- 4
- Merge moyen
- 59 min
- PR mergées (30 j)
- 131
Description
wordpress.visual-compare accepts a navigation as successful when the server responds with HTTP 200 but renders an application/runtime fatal page. The command then screenshots the error document and emits pixel-comparison evidence as though it represented the requested site.
Reproduction
- Serve an HTML response with status 200 whose body is a PHP fatal/error document.
- Run
wordpress.visual-compareagainst that URL. - Observe that navigation and screenshot capture complete without a page error.
Expected
Before DOM snapshot or screenshot creation, visual capture should fail closed when the main-document response is unsuccessful or the rendered document is a bounded, recognized runtime-error page. Failure evidence should include the role/URL, HTTP status, and bounded reason without persisting a screenshot as valid comparison evidence. Normal page copy containing words such as “error” must remain valid.
AI assistance
GPT-5.6 Sol via OpenCode reproduced the blind spot, traced it to the visual-compare capture boundary, and drafted this issue. Chris Huber remains responsible for the report and resulting changes.
Guide de contribution
Aucun guide de contribution indexé pour ce dépôt
Par où commencer
- Lisez l'issue en entier, puis le guide de contribution du projet.
- Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
- Forkez le dépôt et travaillez sur une branche.
- Ouvrez une pull request qui référence le numéro de l'issue.
Piste de recherche
Commencez à la frontière de capture de wordpress.visual-compare et reproduisez la réponse HTTP 200 PHP fatal/error documentée. Suivez la navigation à travers la création du DOM snapshot et de la capture d’écran ; le travail est terminé lorsque les documents runtime-error reconnus échouent en mode fail closed avec role, URL, status et une raison bornée, tandis que le texte normal de la page contenant « error » reste valide et qu’aucune capture d’écran invalide n’est persistée.
Rédigé par le modèle d'indexation à partir du texte de l'issue.
Évaluation
- Stack technique
- typescript
- Domaine
- testing
- Type d'issue
- Bug
- Difficulté
- 4/5
- Temps estimé
- 3-5 jours
- Activité
- Calme
- Clarté
- Plutôt claire
- Accessibilité débutants
- 48/100