CodeReviewModification never shows the programmer the six review regulations, so fixes are made blind to the checklist they are re-reviewed against
Đánh giá
- Độ khó
- 1/5
- Thời gian dự kiến
- 1-3 giờ
- Mức phù hợp với người mới
- 78/100
Hướng nghiên cứu
Bắt đầu trong CompanyConfig/Default/PhaseConfig.json với các prompt CodeReviewComment và CodeReviewModification, sau đó kiểm tra ChatChainConfig.json để hiểu giới hạn ba chu kỳ review. Cập nhật prompt sửa đổi để nó bao gồm sáu quy định và yêu cầu Programmer giữ nguyên chúng khi xử lý comment. Hoàn tất nghĩa là Programmer nhận được cùng checklist được dùng cho lần re-review; kiểm tra các cấu hình dẫn xuất để tìm cùng mẫu prompt.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Branch: chatdev1.0 (Default company config). Line numbers below refer to that branch; the same prompts exist on other configs derived from Default.
Summary
In CompanyConfig/Default/PhaseConfig.json, the CodeReviewComment phase prompt (lines 134–153) gives the Code Reviewer six regulations (lines 146–151: imports, implemented methods, comments, bugs, task conformance, interaction logic) and instructs them to "check the above regulations one by one" — but then to "propose one comment with the highest priority" (line 152).
The CodeReviewModification phase prompt (lines 155–178) passes the Programmer only:
"Comments on Codes:",
"\"{comments}\"",
(lines 166–167). The six-regulation checklist itself never reaches the modification prompt. So in each review cycle:
- the reviewer knows all six regulations but reports only one violation;
- the programmer fixes that one violation without knowing the other five criteria the next
CodeReviewCommentpass will judge the code against.
Triggering condition
ChatChainConfig.json caps the CodeReview ComposedPhase at cycleNum: 3 (lines 31–48), so at most three single comments are ever applied per run. Whenever the code has more than three regulation violations — or a fix regresses a different regulation (e.g. adding a method without importing what it needs) — known violations survive the entire review loop and ship in the final software. Unimplemented methods and missing imports, the exact things regulations 1) and 2) exist to catch, are the common survivors.
Suggested fix
Pure prompt change to CompanyConfig/Default/PhaseConfig.json: include the same six regulations in the CodeReviewModification phase prompt (before or after "Comments on Codes:"), and ask the Programmer to keep all regulations satisfied while addressing the comment. This lets each modification avoid regressing the criteria it will immediately be re-reviewed against, making the three cycles count. No code changes needed.
Found during an academic study that writes behavioral specifications of multi-agent systems and statically analyzes them; the reviewer-to-programmer information loss surfaced when specifying what each phase's prompt actually carries between roles.
- Ngôn ngữ chính
- Python
- Star
- 34.5k
- Fork
- 4.3k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của OpenBMB/ChatDev
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 76/100
-
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 85/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
-
FunctionManager silently drops tool modules containing dataclasses with postponed annotationsCó thể đã có người làm @inchang-ing đã nhận 11 ngày trước. Đang mở
Độ khó 3/5 1-2 ngày Mức phù hợp với người mới 72/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 35/100
Tất cả issue của OpenBMB/ChatDev
Issue tương tự
-
area:space-accuracy good first issue track:data
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
Sara-Managed-Projects/space-radar#904 ·
Maintainer thường phản hồi trong vòng 1 ngày