
REODE
Code migration
Πριν από τη διόρθωση, βρες την κοινή αιτία.
Πράκτορας μετάβασης κώδικα Java/Spring.
Ο πράκτορας επιδιόρθωσης διαβάζει πρώτα τη ρύθμιση
Ο πράκτορας που δοκίμαζε διορθώσεις setter προς setter είναι ο πράκτορας επιδιόρθωσης μέσα στο προϊόν REODE, και αυτό που άλλαξε η ανάπτυξη είναι η είσοδός του. Ο κώδικας και τα στοιχεία των πελατών είναι ιδιωτικά.
March 21, 2026
Οι ομάδες σφαλμάτων, το αρχικό build και η ρύθμιση Lombok έγιναν είσοδος της επιδιόρθωσης
Υπό ανάπτυξηΠράκτορας επιδιόρθωσης του REODE
Παρατήρηση · εύρημαΔοκιμάστηκαν μεμονωμένες διορθώσεις για περίπου 40 σφάλματα setter · @Data / POM δεν ελέγχθηκαν
- επιστράφηκεΞέφυγε η κοινή αιτία→ Ανάγνωση πηγαίου κώδικα και ρύθμισης build πριν από τη διόρθωση (Προγραμματιστής)
ΆνθρωποςΠρογραμματιστής
ΕνέργειαΑνάγνωση πηγαίου κώδικα και ρύθμισης build πριν από τη διόρθωση
- παράδοσηΑλλαγή εισόδου επιδιόρθωσης→ Build της αρχικής γραμμής βάσης · ομαδοποίηση σφαλμάτων ίδιου μοτίβου (Αλλαγές ανάπτυξης)
Συνεδρία εργασίαςΑλλαγές ανάπτυξης
ΕνέργειαBuild της αρχικής γραμμής βάσης · ομαδοποίηση σφαλμάτων ίδιου μοτίβου
- παράδοση→ Συλλογή τεκμηρίων: διαδρομές · 3 δείγματα πηγαίου κώδικα · annotations · POM (Αλλαγές ανάπτυξης)
Γραπτός κανόναςΠολιτική συνεισφορών
Κανόνας · ανεπαλήθευτοΣχέδιο εργασίας · δικό της worktree
- όχι καταγεγραμμένη εκτέλεσηΑπαιτείται από την πολιτική→ Build της αρχικής γραμμής βάσης · ομαδοποίηση σφαλμάτων ίδιου μοτίβου (Αλλαγές ανάπτυξης)
Συνεδρία εργασίαςΑλλαγές ανάπτυξης
ΕνέργειαΣυλλογή τεκμηρίων: διαδρομές · 3 δείγματα πηγαίου κώδικα · annotations · POM
- παράδοση→ Πρώτα ντετερμινιστική διόρθωση Lombok · παράλειψη LLM αν περάσει το νέο build (Αλλαγές ανάπτυξης)
Γραπτός κανόναςΠολιτική συνεισφορών
Κανόνας · ανεπαλήθευτοΑναθεώρηση zero-context: σχέδιο ↔ diff
- όχι καταγεγραμμένη εκτέλεσηΑπαιτείται από την πολιτική→ Συλλογή τεκμηρίων: διαδρομές · 3 δείγματα πηγαίου κώδικα · annotations · POM (Αλλαγές ανάπτυξης)
Συνεδρία εργασίαςΑλλαγές ανάπτυξης
ΕνέργειαΠρώτα ντετερμινιστική διόρθωση Lombok · παράλειψη LLM αν περάσει το νέο build
- παράδοσηΤο νέο build απέτυχε→ Αν αποτύχει το νέο build, επιδιόρθωση από μοντέλο με τεκμήρια και οδηγίες διόρθωσης (Πράκτορας επιδιόρθωσης του REODE)
Υπό ανάπτυξηΠράκτορας επιδιόρθωσης του REODE
Παρατήρηση · εύρημαΑν αποτύχει το νέο build, επιδιόρθωση από μοντέλο με τεκμήρια και οδηγίες διόρθωσης
- παράδοσηΣήματα επαλήθευσης→ Κάρτα βαθμολογίας: build · test · διαγραμμένα tests · εξαιρέσεις surefire (Τεχνουργήματα)
ΤεχνουργήματαΤεχνουργήματα
ΤεχνούργημαΚάρτα βαθμολογίας: build · test · διαγραμμένα tests · εξαιρέσεις surefire
- επιστράφηκεΑποτυχίες που απομένουν→ Οι αποτυχίες που απομένουν επιστρέφουν στη συλλογή τεκμηρίων (Αλλαγές ανάπτυξης)
Συνεδρία εργασίαςΑλλαγές ανάπτυξης
ΕνέργειαΟι αποτυχίες που απομένουν επιστρέφουν στη συλλογή τεκμηρίων
- Πλαίσιο
- Ο πράκτορας επιδιόρθωσης προσπάθησε να διορθώσει περίπου 40 σφάλματα setMsg() not found ένα ένα, χωρίς να κοιτάξει το @Data ή την έκδοση Lombok στο pom.xml. Η είσοδος που ήταν ήδη χαλασμένη δεν διακρίθηκε από τα σφάλματα που εισήγαγε η μετάβαση.
- Αποτέλεσμα
- Η κάρτα βαθμολογίας διαβάζει τα αποτελέσματα build και test μαζί με το πλήθος διαγραμμένων tests και εξαιρέσεων surefire, και παραλείπει το στοιχείο κάλυψης όταν η γραμμή βάσης είναι άγνωστη. Η επιτυχία με διαγραφή tests παραμένει αποτυχία.
- Όριο
- Η συλλογή τεκμηρίων παίρνει δείγμα έως τριών αρχείων πηγαίου κώδικα, άρα δεν είναι κατανόηση ολόκληρης της βάσης κώδικα. Δεν υπάρχει καταγραφή ότι το worktree της πολιτικής, η ανεξάρτητη αναθεώρηση ή η ουρά συγχώνευσης του develop εφαρμόστηκαν πράγματι σε αυτή την περίπτωση, και ο πράκτορας κώδικα και το μοντέλο της δεν είναι επιβεβαιωμένα. Δεν υπάρχουν τελικά αποτελέσματα tests ή κάλυψης του πελάτη.
Πηγές και όρια που απομένουν
- Η εργασία γραμμής βάσης και η εργασία διερεύνησης πριν από τη διόρθωση πέρασαν από «σε εξέλιξη» σε «ολοκληρώθηκε», και υπάρχουν commits υλοποίησης. Δεν ανακτήθηκαν νέα αποτελέσματα ελέγχων του GitHub.
- Η πολιτική αυτού του αποθετηρίου ορίζει ουρά συγχώνευσης feature → develop → main, αλλά η ίδια διαδικασία δεν εφαρμόζεται σε άλλα έργα.
- Οι προαιρετικοί πράκτορες επικύρωσης είναι μηχανισμός της υλοποίησης, όχι τεκμήριο ότι χρησιμοποιήθηκαν σε κάθε παράδοση. Αριθμοί όπως το μέγεθος παράδοσης ή αναλογίες δεν περιλαμβάνονται, επειδή τα αρχικά τεκμήριά τους δεν μπόρεσαν να επιβεβαιωθούν.
- Όταν το νέο build αποτυγχάνει, η επιδιόρθωση από μοντέλο εξακολουθεί να λαμβάνει το αρχικό σφάλμα build, όχι το νέο σφάλμα του επανα-build.