request-refactor-plan
skill นี้จะถูกเรียกเมื่อ user อยากสร้างคำขอ refactor ให้ทำตามขั้นตอนด้านล่าง จะข้ามขั้นตอนที่เห็นว่าไม่จำเป็นก็ได้
-
ขอให้ user อธิบายปัญหาที่อยากแก้แบบยาวและละเอียด รวมถึงไอเดียแนวทางแก้ที่อาจเป็นไปได้
-
สำรวจ repo เพื่อยืนยันสิ่งที่ user เล่ามา และทำความเข้าใจสถานะปัจจุบันของ codebase
-
ถามว่าเขาเคยพิจารณาทางเลือกอื่นหรือยัง และนำเสนอทางเลือกอื่น ๆ ให้เขาดู
-
สัมภาษณ์ user เรื่อง implementation ให้ละเอียดและถี่ถ้วนสุด ๆ
-
เคาะขอบเขตที่แน่นอนของ implementation ตกลงให้ชัดว่าตั้งใจจะเปลี่ยนอะไรและตั้งใจจะไม่เปลี่ยนอะไร
-
เข้าไปดูใน codebase ว่าบริเวณนี้มี test coverage แค่ไหน ถ้า coverage ไม่พอ ให้ถาม user ว่ามีแผนเรื่องการ test ยังไง
-
แตก implementation ออกเป็นแผนของ commit เล็กจิ๋ว ๆ จำคำแนะนำของ Martin Fowler ที่ว่า "ทำแต่ละขั้นของการ refactor ให้เล็กที่สุดเท่าที่จะเล็กได้ เพื่อให้เห็นโปรแกรมยังทำงานได้อยู่เสมอ"
-
สร้าง GitHub issue พร้อมแผน refactor ใช้ template ต่อไปนี้สำหรับ description ของ issue: