Volg het Twitter-voorbeeld
Deze handleiding volgt de bug na verwijdering in het Twitter-voorbeeld van Panolayer. Je leest de melding, volgt de uitleg terug naar de code en begrijpt de verificatiesamenvatting voordat je besluit of je samenvoegt.
Om mee te volgen, open je Twitter Clone onder Probeer een voorbeeldapp. Deze opent als twitter-starter. Zie Los je eerste bug op met Panolayer voor de volledige installatie- en oplosstappen. Screenshots tonen één opgenomen run; de volgorde en aantallen van je meldingen kunnen afwijken.
Begin bij Problemen
Wanneer je een codebase opent, begint de Panolayer verification engine met draaien. Hij parseert de codebase tot op functies, symbolen en afhankelijkheden, bouwt de visuele architectuur op en controleert de code om bugs te vinden.
Open Problemen. In dit voorbeeld is de run voltooid en luidt de status Verificatie voltooid. Problemen die onderzoek nodig hebben, verschijnen onder Vereist aandacht.
Verificatie voltooid beschrijft de run. Het betekent dat de run is afgerond; lees de resultaten om te zien of er fouten zijn gevonden.
Lees het verwijderingsprobleem
Het eerste probleem in het voorbeeld meldt dat een voorwaarde een bevestigde verwijdering kan tegenhouden:
De extra
canDelete-guard kan verwijdering voorkomen ondanks bevestiging door de gebruiker, in strijd met het beschreven gedrag voor het verwijderen van de huidige post.
Een regel is een verwachting over het gedrag van een functie: wat deze moet retourneren, welke actie deze moet uitvoeren, of wat andere code ervan verwacht. Hier gaat de verwachting over het verwijderen van de huidige post nadat de gebruiker bevestigt.
Lees het bestand, de functie, de status en de uitleg van het probleem samen:
| Wat je ziet | Wat het je vertelt |
|---|---|
components/Post.tsx | Het bestand met de functie die je moet onderzoeken. |
handleDelete() | De functie waarvan het gedrag is gecontroleerd. |
| Mislukt | Het gecontroleerde gedrag voldeed niet aan de regel. |
| Ernst 3 · Functionaliteit | De ernst en categorie van het probleem helpen je bij het prioriteren van het onderzoek. |
| Details | De uitleg en de bronlocatie helpen je begrijpen waarom het probleem is gemeld. |
Klik op Details. De uitleg zegt dat de functie vroegtijdig kan terugkeren wanneer canDelete onwaar is, voordat de verwijdering zoals beschreven door de regel is voltooid. De bronverwijzing wijst naar de relevante code.
Controleer of de regel overeenkomt met het beoogde gedrag voordat je bepaalt wat je wijzigt. Als de verwachting onjuist is, corrigeer de regel. Als de code onjuist is, herstel de code. Een wijziging kan ook aanroepers in andere bestanden beïnvloeden, dus volg eventuele getroffen aanroepers die in het resultaat worden getoond.
Wat betekenen de statussen?
Lees de status samen met de uitleg en de code waarop deze van toepassing is.
| Resultaat | Hoe je het leest |
|---|---|
| Geslaagd | De geëvalueerde regel is geslaagd voor de gecontroleerde code. Dit beschrijft die regel, niet elk mogelijk gedrag van de applicatie. |
| Mislukt | De geëvalueerde regel is niet vervuld. Lees de uitleg en inspecteer de bron om te bepalen wat er moet worden opgelost. |
| In afwachting of wordt uitgevoerd | Het resultaat is nog niet gereed. Wacht tot de controle is voltooid voordat je een conclusie trekt. |
| Niet beschikbaar | De controle kon niet worden voltooid. Lees het bijbehorende bericht en los het gemelde probleem op voordat je opnieuw controleert. |
| Niet gecontroleerd | De verwachting is niet geëvalueerd. Dit is geen geslaagd resultaat. |
Als verificatie niet kan worden voltooid, volg de gerapporteerde fout en zie Problemen met installatie en agents oplossen.
Los de bug op en laat verificatie opnieuw uitvoeren
Bij het probleem met verwijderen klik je op Oplossen en selecteer je Panolayer Agent. Panolayer geeft de context van het probleem door aan de agent, dus je hoeft geen prompt te schrijven om de bug uit te leggen.
Panolayer Agent is ingebouwd. Je kunt na installatie ook een andere ondersteunde agent gebruiken; zie Ondersteunde agents.
De agent werkt in een eigen Git-worktree, zodat de bewerkingen gescheiden blijven van je branch. Volg de taak in Mijn agents, of klik op Openen op de runkaart om de activiteit en wijzigingen te inspecteren.
Terwijl de code verandert, controleert Panolayer de betrokken functies en gekoppelde code opnieuw, inclusief aanroepers in andere bestanden. Dit helpt regressies op te sporen buiten de regels die de agent heeft bewerkt.
Een regressie is een nieuw probleem dat door de wijziging is geïntroduceerd. Als verificatie er tijdens het oplossen een detecteert, kan de agent het herstellen en verificatie opnieuw uitvoeren voordat er een merge wordt aangevraagd. Een taak kan daarom meerdere verificatieruns hebben voordat deze klaar is voor je beoordeling.
Lees de verificatiesamenvatting voordat je merget
Wanneer deze run is voltooid, toont Panolayer Panolayer Agent is klaar om te mergen. Het dialoogvenster vat samen wat verificatie tijdens de taak heeft gecontroleerd en gerepareerd.
| Samenvattingsveld | Deze run | Wat het betekent |
|---|---|---|
| Gerepareerde fouten | 1 | Het werk heeft een fout gerepareerd die al aanwezig was voordat de taak begon. |
| Regels geslaagd | 14 van 21 | Veertien regels van de 21 zijn geslaagd op de gewijzigde code. Lees dit samen met het gezondheidsbericht en de afzonderlijke regel over reeds bestaande fouten. |
| Verificatieruns | 1 | Eén verificatierun heeft tijdens dit werk een resultaat bereikt. Dit telt verificatieruns, niet afzonderlijke tests of regels. |
| Gewijzigde bestanden | 4 | De taak heeft vier bestanden gewijzigd. Controleer de volledige set wijzigingen, inclusief eventuele tests en afhankelijkheidsbestanden. |
Het gezondheidsbericht zegt Geen nieuwe fouten, waarschuwingen of ongecontroleerde regels. Lees dat bericht samen met de aantallen: het beschrijft het resultaat van dit werk, terwijl de volgende regel de fouten uitlegt die nog overblijven van vóór de start.
Wat als “Regressies gedetecteerd” verschijnt?
Sommige runs tonen ook Regressies gedetecteerd. Dit rapporteert nieuwe problemen die verificatie tijdens het werk heeft gedetecteerd, zodat ze buiten de doelbranch blijven. Lees het nieuwste resultaat om te zien wat nog aandacht nodig heeft; het aantal beschrijft detecties tijdens het werk, niet het aantal fouten dat nu nog niet is opgelost.
Dit veld is niet te zien in deze schermafbeelding. Het verwijderingsvoorbeeld toont één gerepareerde reeds bestaande fout; het demonstreert geen regressie die tijdens de fix is gedetecteerd.
Why can it be ready to merge when failures remain?
Panolayer compares the result with the baseline: the state of the codebase before the change. This separates problems introduced by the task from problems that were already there.
- A new failure was introduced by the change and needs investigation before you accept the work.
- A pre-existing failure was present before the task started. It can still matter, but this task did not introduce it.
- A repaired failure was present before the task and was fixed during the work.
In the screenshot, the dialog reports 7 pre-existing failures that do not block this merge. The selected deletion issue was repaired, and those other issues remain separate work.
The repository’s issue list and an agent’s verification summary can cover different scopes. The issue list shows what needs attention in the codebase; the merge summary describes the agent’s work against its baseline. An agent’s result can report no new failures while the repository still has pre-existing issues.
You can assign a pre-existing issue as another task using Fix. That gives the agent a specific issue to work on next.
Ready to merge does not mean every issue in the repository is resolved. Read what this task repaired, what it introduced, and what was already there.
Decide what reaches your branch
You control the merge. Before accepting the result:
- Check that the repaired issue matches the bug you asked the agent to fix.
- Read the verification summary, including any new failures, warnings, or checks that could not finish.
- Open Details for more context and inspect the agent’s changed files. Review the relevant tests and run the application when the behavior needs a runtime check.
- Confirm the target branch. Choose Merge into main when you’re satisfied, or Not now to keep reviewing.
Verification gives you evidence for the decision. Read it alongside the code and relevant tests; it does not cover every possible bug.