
Un rapport porte un statut depuis le jour où les rapports existent, et jusqu’à hier rien dans l’interface ne pouvait en changer un. On pouvait filtrer dessus depuis trois écrans et le définir uniquement par l’API, ce qui voulait dire que chaque rapport restait en attente pour toujours et que le badge sur la carte était de la décoration.
Le contrôle du statut se trouve maintenant dans la liste des rapports reçus, dans la ligne d’actions de chaque carte, à côté du contrôle de visibilité. Le tri est quelque chose que l’on fait à une file plutôt qu’à un rapport à la fois, alors il a sa place là où est la file : lire la carte, définir le statut, passer à la suivante, n’ouvrir jamais rien.
Qui peut s’en servir découle du périmètre que l’écran avait déjà. Un rapport arrive dans votre boîte parce que vous êtes dans l’équipe qui possède le domaine pour lequel il a été déposé, si bien qu’un rapport rattaché à aucun site n’affiche pas de contrôle plutôt qu’un contrôle qui refuse.
Envoyer un rapport à la personne qui doit le corriger
Un rapport privé s’ouvre pour l’équipe qui possède le domaine et pour la personne qui l’a déposé. Celle qu’il doit atteindre le plus souvent n’est ni l’une ni l’autre : la personne qui développe et à qui l’on confie le bogue, qui suit le lien et s’entend dire que le rapport n’existe pas.
- Le contournement consistait jusqu’ici à laisser les paramètres de l’équipe ouverts dans un autre
- onglet et à se souvenir de l’adresse. Il y a désormais une invitation sur le rapport lui-même.
- Elle fait entrer la personne dans l’équipe, car c’est ce que veut dire ici lire un rapport privé
- il n’y a pas de deuxième voie d’accès ni de lien qui donne accès à qui le détient.
L’enregistreur utilise tout le forfait
La note de la semaine dernière se terminait sur un aveu : chaque forfait vendait une durée d’enregistrement que sa propre limite d’envoi refusait, nous avions relevé les plafonds du serveur pour qu’ils correspondent, et l’enregistreur lui-même s’arrêtait toujours à dix minutes tout rond pour tout le monde.
L’extension 1.5.0 est arrivée hier sur le Chrome Web Store et referme cela. Le panneau enregistre pendant la durée que le forfait vend - cinq minutes sur Free, dix sur Starter, trente sur Professional - et les deux bouts du tuyau s’accordent enfin sur le même nombre.
La même version corrige quelque chose de pire que ce dont cela avait l’air. Aucun bouton du panneau ne faisait rien dès lors que le panneau tournait dans sa propre fenêtre plutôt qu’ancré : My Replays, le lien vers le store, la page de bienvenue. La connexion était le pire des cas, parce qu’elle attendait un onglet qui n’allait jamais s’ouvrir et laissait le panneau indéfiniment sur « Waiting for sign-in… ». Une application web installée est l’endroit où l’on rencontre cela en premier. Les onglets s’ouvrent maintenant dans une vraie fenêtre de navigateur, d’où que le panneau se trouve.
Session Replay
Extension Chrome gratuite. Un clic sur la page qui se comporte mal capture la capture d'écran, la console et le journal réseau, et vous donne un lien à coller dans le ticket.
La page MCP vous dit maintenant quoi taper
La page livrée la semaine dernière donnait l’adresse et disait que l’autorisation passait par OAuth 2.1 avec PKCE. Les deux sont vraies, et aucune n’est une consigne : l’adresse va à un endroit différent dans chaque client, chacun s’authentifie à sa façon, et qui avait l’URL en était exactement au point de départ.
L’étape de connexion porte maintenant un onglet par client, chacun avec l’adresse à l’endroit où ce client la prend et la commande qui l’autorise.
La dernière étape a changé pour une raison voisine. Elle montrait auparavant trois enveloppes JSON-RPC brutes et les appelait votre premier appel, ce qui enseignait la seule chose dont un lecteur n’a jamais besoin - écrire des enveloppes est tout le métier de l’agent que vous venez de connecter - et demandait un travail que personne n’allait faire. Elle montre désormais cinq phrases à dire à voix haute à l’agent, construites à partir de votre propre rapport le plus récent et de votre propre domaine vérifié. Une équipe qui n’a pas encore de rapport obtient une première phrase plus simple qui nomme le domaine.
Il y a aussi désormais un fichier public à /agents/install.md : le domaine, la balise de
vérification, les deux voies de chargement, le balisage du bouton, identify() et ce qui dépend
du forfait, servi en texte brut et sans connexion. Si le chemin le plus rapide vers un bouton sur
votre site est de confier la tâche à l’agent de code que vous avez déjà ouvert, c’est l’URL à lui
donner. Étant publique, elle ne contient rien qui appartienne à un site en particulier : le jeton
est un espace réservé entre crochets et le fichier dit de vous demander le vrai.
Trois outils MCP qui tiennent maintenant dans une réponse
Cela vaut d’être écrit noir sur blanc, parce que la première version de chacun était fausse d’une manière qui n’apparaissait que sur un rapport réel.
get_report renvoyait le document entier. Un enregistrement de trente-deux secondes faisait
114 442 caractères, dont 42 302 pour le journal réseau et 22 947 pour ses en-têtes, ce qui
dépasse ce qu’un client accepte dans un seul résultat d’outil : le principal outil de lecture de
la surface ne pouvait pas lire un rapport du tout. Il prend maintenant un argument facultatif
sections nommant n’importe lequel de network, console et interactions. Ce que vous
demandez revient entier, moins les en-têtes, les cookies et les chaînes de requête qui ne portent
aucun signal que l’URL de la requête ne porte pas déjà. Ce que vous n’avez pas demandé est
résumé.
set_status resérialisait le rapport entier après avoir changé une colonne, si bien qu’une
écriture déjà arrivée était signalée à l’appelant comme un échec. Il répond désormais par un
reçu : le jeton de partage, où en est le rapport, et quand il a été résolu.
get_frame prend une position dans l’enregistrement, et rien dans le document du rapport ne
pouvait en nommer une. Chaque entrée portait une heure absolue et aucun décalage, et une personne
lisant le rapport depuis l’extérieur de l’application ne pouvait pas en déduire le début de
l’enregistrement, si bien qu’en pratique le décalage était deviné à partir de la durée - ce qui
survit à une capture courte et à rien de plus long. Le rapport porte maintenant les décalages que
l’outil demande.
Les cinq outils annoncent aussi leurs action hints sans détour : les quatre lectures sont en
lecture seule, set_status ne l’est pas, et aucun d’eux n’est destructeur. Un hint omis n’est
pas lu comme faux par un client : il se rabat sur la réponse prudente et demande à un humain
avant chaque lecture.
Le panneau de la console se répète moins
Les lignes de console répétées n’étaient regroupées que lorsqu’il s’agissait d’erreurs. Tout le reste avait une ligne par occurrence, ce qui laissait les niveaux qui se répètent le plus comme les seuls déployés en entier.
Un rapport est arrivé avec vingt-six lignes de console, dont vingt-deux étaient le même avertissement d’un tiers au niveau debug à l’intérieur d’une seule milliseconde. Sur un autre, la seule ligne qui nommait le bogue était la vingt-sixième. Les lignes sont maintenant regroupées sur le niveau, le message et l’URL à la fois, à tous les niveaux. Deux frames qui échouent de la même façon restent deux entrées, et les mêmes mots journalisés à deux niveaux restent deux entrées.
Plus petit
- Une personne qui administre une équipe peut la renommer. Le nom était écrit une fois à l’inscription et jamais plus, si bien que qui s’était inscrit avant de remplir son nom avait définitivement une équipe appelée « someone@example.com’s team », et c’est ce nom que ses collègues lisent dans le sélecteur.
- Le tableau de bord est dans le menu utilisateur de la session ouverte, là où les gens le cherchaient.
- Les informations du forfait sur la page de l’équipe tiennent en une carte au lieu de quatre.
- Les pages d’erreur plates atteignent le contraste AA, et le bouton à contour sombre est lisible en mode sombre.
- La connexion web est limitée en débit. Elle était protégée sur l’API et pas sur le formulaire de connexion, contre les mêmes comptes.