ข้ามไปที่เนื้อหาหลัก

ความประหลาดใจที่รู้จักกัน

ไฟล์นี้ติดตามจุดความสับสนเฉพาะพื้นที่เก็บข้อมูลที่ทำให้เกิดข้อผิดพลาดของเอเจนต์

เกณฑ์การเข้า

เพิ่มรายการเฉพาะเมื่อทั้งหมดเป็นจริง:

  • เป็นข้อมูลเฉพาะสำหรับพื้นที่เก็บข้อมูลนี้ (ไม่ใช่คำแนะนำทั่วไป)
  • มีแนวโน้มที่จะเกิดขึ้นอีกสำหรับตัวแทนในอนาคต
  • มีการบรรเทาผลกระทบอย่างเป็นรูปธรรมที่สามารถปฏิบัติตามได้

หากไม่แน่ใจ ให้สอบถามผู้พัฒนาก่อนที่จะเพิ่มรายการ

เทมเพลตรายการ

### [Short title]

- **Date:** YYYY-MM-DD
- **Observed by:** agent name or contributor
- **Context:** where/when it happened
- **What was surprising:** concrete unexpected behavior
- **Impact:** what went wrong or could go wrong
- **Mitigation:** exact step future agents should take
- **Status:** confirmed | superseded

รายการ

Portless เปลี่ยน URL ของแอปในเครื่องตามรูปแบบบัญญัติ

  • วันที่: 18-03-2026
  • สังเกตโดย: Codex
  • บริบท: การตรวจสอบเบราว์เซอร์และการไหลของควัน
  • สิ่งที่น่าประหลาดใจ: URL ในเครื่องเริ่มต้นไม่ใช่พอร์ต Vite ปกติ repo คาดว่า https://bitsocial.localhost จะผ่าน Portless ดังนั้นการตรวจสอบ localhost:3000 หรือ localhost:5173 อาจเข้าแอปผิดหรือไม่ได้อะไรเลย
  • ผลกระทบ: การตรวจสอบเบราว์เซอร์อาจล้มเหลวหรือตรวจสอบเป้าหมายที่ไม่ถูกต้อง แม้ว่าเซิร์ฟเวอร์ dev จะทำงานได้ดีก็ตาม
  • การบรรเทาผลกระทบ: ใช้ https://bitsocial.localhost ก่อน หลีกเลี่ยงด้วย PORTLESS=0 corepack yarn start เมื่อคุณต้องการพอร์ต Vite โดยตรงเท่านั้น
  • สถานะ: ยืนยันแล้ว

Commitizen hooks บล็อกการคอมมิตแบบไม่โต้ตอบ

  • วันที่: 18-03-2026
  • สังเกตโดย: Codex
  • บริบท: เวิร์กโฟลว์คอมมิตที่ขับเคลื่อนโดยตัวแทน
  • สิ่งที่น่าประหลาดใจ: git commit ทริกเกอร์ Commitizen ผ่าน Husky และรออินพุต TTY แบบโต้ตอบ ซึ่งจะแฮงค์เชลล์เอเจนต์ที่ไม่โต้ตอบ
  • ผลกระทบ: ตัวแทนสามารถหยุดการทำงานได้อย่างไม่มีกำหนดในระหว่างการดำเนินการปกติ
  • การบรรเทาผลกระทบ: ใช้ git commit --no-verify -m "message" สำหรับคอมมิตที่ตัวแทนสร้างขึ้น มนุษย์ยังคงสามารถใช้ corepack yarn commit หรือ corepack yarn exec cz ได้
  • สถานะ: ยืนยันแล้ว

จำเป็นต้องใช้ Corepack เพื่อหลีกเลี่ยง Yarn classic

  • วันที่: 19-03-2026
  • สังเกตโดย: Codex
  • บริบท: การย้ายตัวจัดการแพ็คเกจไปยัง Yarn 4
  • สิ่งที่น่าประหลาดใจ: เครื่องจักรยังคงมีการติดตั้ง Yarn classic ทั่วโลกบน PATH ดังนั้นการรัน yarn แบบธรรมดาจึงสามารถแปลงเป็น v1 แทนที่จะเป็นเวอร์ชัน Yarn 4 ที่ปักหมุดไว้
  • ผลกระทบ: นักพัฒนาสามารถเลี่ยงการปักหมุดตัวจัดการแพ็คเกจของ repo โดยไม่ตั้งใจ และเกิดพฤติกรรมการติดตั้งหรือเอาต์พุตไฟล์ล็อคที่แตกต่างกัน
  • การบรรเทาผลกระทบ: ใช้ corepack yarn ... สำหรับคำสั่งเชลล์ หรือเรียกใช้ corepack enable ก่อน ดังนั้น yarn ธรรมดาจะแก้ไขเป็นเวอร์ชัน Yarn 4 ที่ปักหมุดไว้
  • สถานะ: ยืนยันแล้ว

แก้ไขชื่อแอป Portless ที่ขัดแย้งกันทั่วทั้งเวิร์กทรีของ Bitsocial Web

  • วันที่: 30-03-2026
  • สังเกตโดย: Codex
  • บริบท: การเริ่มต้น yarn start ในเวิร์กทรี Bitsocial Web หนึ่งรายการ ในขณะที่เวิร์กทรีอื่นให้บริการผ่าน Portless แล้ว
  • สิ่งที่น่าประหลาดใจ: การใช้ชื่อแอป Portless ตามตัวอักษร bitsocial ในทุกแผนผังงานทำให้เส้นทางเกิดการชนกัน แม้ว่าพอร์ตสำรองจะแตกต่างกัน ดังนั้นกระบวนการที่สองจึงล้มเหลวเนื่องจาก bitsocial.localhost ได้รับการลงทะเบียนแล้ว
  • ผลกระทบ: สาขา Parallel Bitsocial Web สามารถบล็อกซึ่งกันและกันได้ แม้ว่า Portless จะมีไว้เพื่อให้อยู่ร่วมกันอย่างปลอดภัยก็ตาม
  • การบรรเทาผลกระทบ: เก็บการเริ่มต้นระบบแบบไร้พอร์ตไว้ด้านหลัง scripts/start-dev.mjs ซึ่งขณะนี้ใช้เส้นทาง *.bitsocial.localhost ที่มีขอบเขตสาขาอยู่นอกกรณีมาตรฐาน และถอยกลับไปยังเส้นทางที่มีขอบเขตสาขาเมื่อชื่อ bitsocial.localhost เปล่าถูกครอบครองแล้ว
  • สถานะ: ยืนยันแล้ว

การแสดงตัวอย่างเอกสารที่ใช้ในการฮาร์ดโค้ดพอร์ต 3001

  • วันที่: 30-03-2026
  • สังเกตโดย: Codex
  • บริบท: การเรียกใช้ yarn start ควบคู่ไปกับการซื้อคืนและตัวแทนในพื้นที่อื่นๆ
  • สิ่งที่น่าประหลาดใจ: คำสั่ง root dev รันพื้นที่ทำงานของเอกสารด้วย docusaurus start --port 3001 ดังนั้นเซสชัน dev ทั้งหมดจึงล้มเหลวเมื่อใดก็ตามที่กระบวนการอื่นเป็นเจ้าของ 3001 อยู่แล้ว แม้ว่าแอปหลักจะใช้ Portless อยู่แล้วก็ตาม
  • ผลกระทบ: yarn start สามารถหยุดกระบวนการของเว็บได้ทันทีหลังจากที่บูตเครื่อง ซึ่งขัดจังหวะงานในพื้นที่ที่ไม่เกี่ยวข้องเนื่องจากการชนกันของพอร์ตเอกสารและพอร์ต
  • การบรรเทาผลกระทบ: คงการเริ่มต้นเอกสารไว้ด้านหลัง yarn start:docs ซึ่งขณะนี้ใช้ Portless บวกกับ scripts/start-docs.mjs เพื่อเป็นเกียรติแก่พอร์ตที่ว่างที่แทรกไว้ หรือถอยกลับไปยังพอร์ตถัดไปที่พร้อมใช้งานเมื่อเรียกใช้โดยตรง
  • สถานะ: ยืนยันแล้ว