# สิ่งที่ได้รับการทดสอบแล้ว

Canonical page: https://phishdestroy.github.io/TgWitness/th/docs/reference/verification/

การทดสอบ Telegram แบบเรียลไทม์ การตรวจสอบอัตโนมัติ การตรวจสอบผ่านเบราว์เซอร์ และสิ่งที่ยังไม่ได้รับการยืนยัน

## การทดสอบ Telegram แบบสด, บัญชีทั้งหมด · 29 ตุลาคม 2026

บัญชีเดียวกันนี้ยังคงทำงานต่อไปหลังการทดสอบด้านล่างนี้ เมื่อวันที่ 29 ตุลาคม เวลา 12:10 UTC ขอบเขต ของบัญชีได้ถูกเปลี่ยนเป็นทั้งบัญชี (ช่อง, กลุ่ม, การสนทนาส่วนตัว และบอท); แผงควบคุมได้ ขอการยืนยัน และบันทึกที่มีลายเซ็นได้บันทึกการดำเนินการนี้ไว้ จนถึงเวลา 17:59 UTC บันทึกดังกล่าวมีข้อมูลดังต่อไปนี้:

| บันทึกไว้ระหว่างวันที่ 27 ตุลาคม เวลา 21:36 ถึงวันที่ 29 ตุลาคม เวลา 17:59 UTC | นับ |
| --- | --- |
| บันทึกในสมุดบันทึก | 9,968 |
| ข้อความใหม่ | 5,308 |
| ของบัญชีเหล่านั้นหลังจากเปลี่ยนไปใช้บัญชีทั้งหมด | 3,878 |
| การลบ | 784 |
| ในจำนวนนั้นถูกลบไปหลังจากที่ TgWitness ได้บันทึกข้อความไว้แล้ว | 596 |
| การแก้ไข | 41 |
| ข้อความที่เพิ่มจากการตรวจสอบซ้ำ | 2,273 |
| ข้อความที่การตรวจสอบซ้ำไม่สามารถค้นพบได้อีก | 18 |
| ข้อความที่บันทึกไว้ผ่านภาพถ่ายประวัติ | 242 |
| ไฟล์แนบที่เก็บไว้ | 247 |
| Collector เริ่มทำงาน | 19 |
| Telegram FloodWait หยุดชั่วคราว | 26 |

- เครื่องมือ **Verify** ของคณะกรรมการได้ยืนยันลายเซ็นและโซ่แฮชของบันทึกทั้ง 9,968 รายการ
- ข้อความมาจาก 2 กลุ่มหรือช่อง และ 3 การสนทนาส่วนตัวและบอต ปุ่มส่งข้อความหนึ่งถูก กดจาก**ส่วนสนทนา**; คำขอและคำตอบของ Telegram อยู่ในบันทึกหลักฐาน
- การสนทนาใหม่จะถูกเพิ่มเข้ามาเมื่อเครื่องมือเก็บข้อมูลสแกนบัญชีใหม่หลังจากรีสตาร์ท การบันทึก ข้อความเก่าของการสนทนาใหม่ถูกปิด (`history = 0`) ดังนั้นจึงไม่ถูกกล่าวถึงในส่วนนี้

ไม่รวม: ปฏิกิริยา, การเปลี่ยนแปลงสมาชิก, โปรไฟล์บุคคล, การส่งข้อความ, การเข้าร่วมผ่าน คำเชิญ, ตัวแทน (proxy), การแจ้งเตือน, บอท Witness และการจัดการหลายบัญชีพร้อมกัน ไฟล์สาธารณะ มีเพียงข้อมูลจำนวนเท่านั้น

## ไฟล์ส่งออกที่ได้รับการป้องกันด้วยรหัสผ่าน เปิดด้วย libarchive · 29 ตุลาคม 2026

ไฟล์เก็บถาวรที่สร้างขึ้นโดยรหัสการเข้ารหัสการส่งออก (WinZip AES-256, รูปแบบที่ 7-Zip และ WinRAR สามารถอ่านได้) ได้ถูกเปิดด้วย Windows `tar` (bsdtar 3.6.2, libarchive). เมื่อใช้รหัสผ่านที่ถูกต้อง ไฟล์ที่สกัดออกมาตรงกับ SHA-256 ของต้นฉบับ; หากใช้รหัสผ่านผิด ระบบจะปฏิเสธด้วยข้อความ "Incorrect passphrase". 7-Zip และ WinRAR เองไม่ได้ถูกเรียกใช้

## การทดสอบ Telegram แบบสด · 27 ถึง 29 ตุลาคม 2026

บัญชี Telegram จริงหนึ่งบัญชี ซึ่งลงชื่อเข้าใช้ผ่านกลุ่มคู่ API ที่มาพร้อมระบบ ได้บันทึก กลุ่มใหญ่หนึ่งกลุ่ม ตั้งแต่วันที่ **27 ตุลาคม เวลา 21:36 UTC จนถึงวันที่ 29 ตุลาคม เวลา 05:15 UTC** เครื่องมือเก็บข้อมูลนี้ ถูกเปิดใช้งาน 12 ครั้งในช่วงเวลาดังกล่าว

| บันทึก | นับ |
| --- | --- |
| บันทึกในสมุดบันทึก รวมถึงข้อมูลการตรวจสอบสถานะการทำงาน (heartbeats) และบันทึกการให้บริการ | 2,385 |
| ข้อความใหม่ | 1,291 |
| การลบ | 472 |
| ในจำนวนนั้นถูกลบไปหลังจากที่ TgWitness ได้บันทึกข้อความไว้แล้ว | 347 |
| การแก้ไข | 12 |
| ข้อความที่พลาดไปขณะหยุดทำงาน ถูกเพิ่มเข้ามาจากการตรวจสอบซ้ำ | 12 |
| ไฟล์แนบที่เก็บไว้ | 17 |
| ไฟล์แนบไม่ถูกดาวน์โหลด (การดาวน์โหลดถูกปิด หรือไม่มีไฟล์ที่จะดาวน์โหลด) | 14 |
| Telegram FloodWait จะหยุดชั่วคราว 3 วินาทีต่อครั้ง ระหว่างการตรวจสอบซ้ำ | 8 |

- ลายเซ็นและโซ่แฮชของบันทึกทั้งหมด 2,385 รายการสามารถตรวจสอบความถูกต้องได้กับ กุญแจสาธารณะของสมุดบันทึก
- หลังจากรีสตาร์ท ตัวเก็บข้อมูลจะดำเนินการต่อจากสถานะการอัปเดตที่บันทึกไว้ (`pts`) และ Telethon จะทำการอัปเดตให้ทัน; การตรวจสอบซ้ำจะเพิ่มข้อความที่ยังขาดอยู่
- ในทุกครั้งของ FloodWait ตัวเก็บข้อมูลจะรอตามเวลาที่ร้องขอแล้วจึงดำเนินการต่อ
- บัญชีดังกล่าวยังคงเข้าสู่ระบบอยู่ และเซสชันเดียวกันได้เชื่อมต่อใหม่เมื่อวันที่ 29 ตุลาคม

สิ่งที่ไม่รวมอยู่ในทดสอบนี้: การจัดการหลายบัญชีพร้อมกัน, บทบาทผู้ดูแลระบบ, การใช้พร็อกซี, การหยุดให้บริการ ที่นานกว่าไม่กี่ชั่วโมง และ[ขั้นตอนการรับข้อมูลแบบเรียลไทม์](https://github.com/phishdestroy/TgWitness/blob/main/docs/internal/LIVE_ACCEPTANCE.md)อย่างครบถ้วน ไฟล์สาธารณะมีเพียงข้อมูลจำนวนเท่านั้น: ไม่มีตัวระบุบัญชีหรือการสนทนา, ข้อความ หรือ ข้อมูลรับรอง

รายการเก่าด้านล่างนี้อธิบายการรันระบบของตนเอง; ส่วนใหญ่ใช้ไคลเอนต์ทดสอบสังเคราะห์ ผลลัพธ์อัตโนมัติล่าสุดอยู่ด้านล่างนี้

## รายชื่อ MTProxy สาธารณะที่ติดตั้งมาพร้อม · 29 ตุลาคม 2026

นี่คือบันทึกการทดสอบในอดีตของเวอร์ชันต้นฉบับที่เลือกด้วยมือ สำหรับโหมดพูลอัตโนมัติและโหมด IP ในปัจจุบัน [โปรดดูการตั้งค่าการเชื่อมต่อ](https://phishdestroy.github.io/TgWitness/th/docs/reference/connection/#ip-modes) จำนวนและคุณสมบัติที่ไม่ได้รับการสนับสนุนด้านล่างนี้เป็นของเวอร์ชันที่ได้รับการทดสอบนั้น

ได้เพิ่ม snapshot สาธารณะแบบรวมแพ็กเกจ และการรีเฟรช HTTPS แบบชัดเจนจาก SoliSpirit/mtproto และ zakky8/mtproto-proxy-pro. บนโฮสต์นี้ โปรแกรมดาวน์โหลดแอปพลิเคชันได้ดึงข้อมูลจากทั้งสองฟีด สำเร็จเมื่อวันที่ 29 ตุลาคม 2026 เวลา 12:58 UTC: **118 จุดปลายทางที่ไม่ซ้ำกันและเข้ากันได้** หลังจาก การกรอง การกำจัดข้อมูลซ้ำ และจำกัดจำนวน 64 รายการต่อแหล่งข้อมูล สิ่งนี้ยืนยันการดึงรายชื่อ ไม่ใช่การเชื่อมต่อหรือการส่งข้อความผ่านจุดปลายทางเหล่านั้น ไม่มีบัญชีจริงใด ที่เชื่อมต่อกับพร็อกซีที่อยู่ในรายชื่อระหว่างการทำงานนี้ [คู่มือสำหรับผู้ดำเนินการและผู้ใช้](https://github.com/phishdestroy/TgWitness/blob/main/docs/ru/PROXIES.md)

การตอบสนองจากแหล่งข้อมูลที่ล้มเหลว/ว่าง/ไม่เข้ากันจะเก็บรักษาข้อมูลและวันที่เดิมไว้ การอัปเดต ไม่เปลี่ยนแปลงเส้นทางที่เลือกไว้ ที่อยู่สาธารณะได้รับการตรวจสอบและ IP ที่ถูกแปลงแล้วจะถูกตรึง เมื่อเลือก; เส้นทางของผู้ดำเนินการ/แบบมือยังคงแยกกันอยู่ การตรวจสอบการเชื่อมต่อตอนนี้ มีให้ใช้ในแผงควบคุมก่อนการเข้าสู่ระบบบัญชี TLS ee ปลอมและการเลือกพร็อกซีอัตโนมัติ ยังคงไม่ได้รับการสนับสนุน แคตตาล็อกของผู้ดำเนินการจะแทนที่การสมัครสมาชิกทั้งหมด

- ชุดทดสอบเต็ม: **ผ่าน 366 รายการ, ข้าม 3 รายการ**, ใช้เวลา 287.94 วินาที. คำเตือนเกี่ยวกับความพึ่งพาที่มีอยู่ และการข้ามแพลตฟอร์มยังคงอยู่. การทดสอบการถดถอยของรายการสาธารณะ/การปรับให้เข้ากับท้องถิ่นขั้นสุดท้าย: **ผ่าน 36 รายการ**, รวมถึงการปฏิเสธพอร์ตพร็อกซีดาวน์โหลดที่ไม่ถูกต้อง; ส่วนนี้ทับซ้อนกับชุดทดสอบเต็ม
- ผ่านการทดสอบความเข้ากันได้ของเบราว์เซอร์ในภาษาอังกฤษ/รัสเซีย, โหมดสว่าง/มืด ที่ความละเอียด 390/1440 พิกเซล: ตัวเลือกที่รวมไว้ ในตัว, ไม่มีการดึงข้อมูลจากภายนอกเมื่อเปิดการตั้งค่า, การรีเฟรชที่ชัดเจน, การเก็บรักษาเส้นทางและ แคชระหว่างการเกิดข้อผิดพลาด, การตรวจสอบก่อนเข้าสู่ระบบ, การแยกพื้นที่ทำงานเมื่อมีการตอบสนองล่าช้า, รายละเอียด แหล่งที่มา และรูปแบบ/ความคมชัด ไม่มีข้อผิดพลาด JavaScript หรือคำขอจากเบราว์เซอร์ภายนอก
- การแปลแบบคงที่ขั้นสุดท้ายผ่านการตรวจสอบสำหรับทุก 13 ภาษาท้องถิ่น; เนื้อหาใหม่ได้รับการแปล เป็นภาษารัสเซีย พร้อมตัวเลือกภาษาอังกฤษที่ชัดเจนในส่วนอื่น ๆ คู่มือในตัวที่อัปเดตแล้ว ผ่านการตรวจสอบการจัดวางและความคมชัดในทั้งสองธีม
- ผ่านการตรวจสอบเบื้องต้นและการเผยแพร่ (259 ไฟล์สาธารณะ, 1,354 ลิงก์ท้องถิ่น); อัปเดต ไฟล์ Compose และ CI YAML ได้รับการวิเคราะห์แล้ว Docker และ CI ระยะไกลยังไม่ถูกดำเนินการในขั้นตอนนี้
- ล้อที่สร้างใหม่ผ่านการติดตั้งแบบแยกเดี่ยว การโหลดรายการที่รวมเป็นชุด และการตรวจสอบการส่งออกที่มีลายเซ็น ทรัพยากรแพ็กเกจทั้ง 69 รายการตรงกับพื้นที่ทำงาน; ได้ตรวจสอบค่าแฮชของซอร์สโค้ดแล้ว

ใบเสร็จ: `test-results/public-proxy-research/download-receipt.json`, `test-results/public-proxy-research/copy-receipt.json`, `test-results/public-proxies-full-suite.log`, `test-results/public-proxies-final-focused.log`, `test-results/public-proxies-browser/receipt.json` และ `test-results/public-proxies-package.log` อุปกรณ์จำลองสำหรับเบราว์เซอร์/บัญชี/การส่งข้อมูลเป็นข้อมูลสังเคราะห์; การดาวน์โหลดฟีดสองรายการข้างต้นเป็นคำขอ HTTPS ที่จริง

## การนำเสนอคุณสมบัติเพิ่มเติม (ตามความต้องการ) · 29 ตุลาคม 2026

หน้าเดิมของ Proof bot ปัจจุบันได้เปลี่ยนเป็น **Extras**: มีบทสรุปสั้นๆ ตามด้วย หน้าตั้งค่าแยกต่างหากสำหรับตัวเลือกที่เลือกไว้ แบบฟอร์ม Witness มีสามขั้นตอน โดย ส่วนการจัดการการเชื่อมต่อ ตัวเลือกเครือข่าย และรายละเอียดการติดตั้ง ถูกซ่อนไว้ GitHub ได้รับการ วางแผนไว้อย่างชัดเจน และไม่มีแบบฟอร์มข้อมูลรับรอง [มีบทสรุปเป็นภาษารัสเซีย](https://github.com/phishdestroy/TgWitness/blob/main/docs/ru/EXTRAS.md)

- ผ่านการทดสอบ 30 รายการที่เน้นเฉพาะด้านสำหรับการปรับให้เหมาะกับภาษาท้องถิ่น การตั้งค่า Witness และการตรวจสอบก่อนเผยแพร่
- การทดสอบการตั้งค่า Chromium ผ่านแล้วในภาษาอังกฤษ/รัสเซีย, โหมดสว่าง/มืด, ที่ความละเอียด 390/1440 พิกเซล: การโฟกัสคีย์บอร์ดและปุ่ม Return, ไม่มีการเชื่อมต่อโดยอัตโนมัติเมื่อเลือกตัวเลือกเพิ่มเติม, การเก็บรักษา ร่างข้อความ, การดาวน์โหลดการตั้งค่า/โทเค็นที่ถูกตรึง, การล้างโทเค็นเมื่อล็อกหน้าจอ, และ จุดยึดคู่มือท้องถิ่นที่ทำงานได้ การตรวจสอบความคมชัดของข้อความบนพื้นหลังสีทึบและการจัดวางผ่านแล้ว
- การตรวจสอบการเปลี่ยนพื้นที่ทำงาน (Workspace-switch) ผ่านแล้ว รวมถึงการตอบสนองของโทเค็นที่ล่าช้า หลังการเปลี่ยนพื้นที่ทำงาน การนำทางที่รวดเร็วช่วยให้ค้นหาข้อมูลเพิ่มเติมผ่านคำค้นหา bot, proof และ GitHub; การตรวจสอบความเข้ากันได้กับขนาด 320/390/1440 พิกเซล และการรองรับภาษารัสเซีย/RTL ที่มีอยู่ก็ผ่านแล้วเช่นกัน
- ไม่พบข้อผิดพลาดของ JavaScript หรือคำขอจากเบราว์เซอร์ภายนอกในการทดสอบการตั้งค่า นี่เป็นการตรวจสอบ UI แบบจำลอง ไม่ใช่หลักฐานการเผยแพร่ใหม่จาก Telegram หรือบอทในสภาพแวดล้อมจริง
- การโหลดภาษาขั้นสุดท้ายและการครอบคลุมของพจนานุกรมผ่านเกณฑ์สำหรับทุก 13 ภาษาท้องถิ่น โดยยังคงรักษา ตัวเลือกภาษาอังกฤษที่ชัดเจนไว้สำหรับภาษาอื่นนอกเหนือจากภาษารัสเซีย คู่มือ Proof ที่ขยายออกยังผ่านการตรวจสอบ การจัดวางและความคมชัดที่ความละเอียด 320/768/1440 พิกเซล ในทั้งสองธีม
- Wheel ที่สร้างใหม่ผ่านการตรวจสอบการติดตั้งแบบแยกส่วนและการส่งออกที่มีลายเซ็นแล้ว ทรัพยากรที่บรรจุไว้ทั้งหมด 67 รายการตรงกับพื้นที่ทำงาน; ไฟล์อาร์ไคฟ์ต้นทางมีไฟล์สาธารณะ 253 ไฟล์ การตรวจสอบแหล่งที่มา/ลิงก์ผ่านแล้วสำหรับลิงก์เอกสารท้องถิ่น 1,346 ลิงก์

ใบเสร็จ: `test-results/setup-browser/receipt.json`, `test-results/quick-navigation/receipt.json`, `test-results/extras-final.json`, `test-results/extras-package.log` และ `test-results/extras-artifacts.json` ภาพหน้าจอใช้พื้นที่ทำงานที่สร้างขึ้น

## การตรวจสอบการตั้งค่าบอท Witness และพร็อกซี · 29 ตุลาคม 2026

การตั้งค่า witness (ปัจจุบันอยู่ที่ **Extras → A bot in your channel**) จะเตรียม witness ที่ถูกติดตั้งอย่างอิสระ: กุญแจผู้เก็บข้อมูลที่ตรึงไว้ การดาวน์โหลดโทเค็นที่มีขอบเขตจำกัด ช่องทางของตัวเอง นโยบายการเผยแพร่ เส้นทาง HTTP/SOCKS5 และ Bot API ที่กำหนดเอง โทเค็นของบอทจะยังคงอยู่บนโฮสต์ของ witness โทเค็นใหม่`--check-config` จะตรวจสอบ ความถูกต้องของการตั้งค่าและไฟล์โดยไม่ต้องเปิดการเชื่อมต่อเครือข่ายหรือสร้างกุญแจ เส้นทางไฟล์ JSON จะถูกกำหนดข้างๆ การตั้งค่า ทุกเวอร์ชันของ witness แบบ Compose ตอนนี้จะส่งต่อ การตั้งค่าพร็อกซี HTTP และ Bot API

การตั้งค่าบัญชีสนับสนุนแคตตาล็อก MTProxy สาธารณะที่ผู้ดำเนินการจัดการ, การแสดงตัวอย่างลิงก์พร็อกซี Telegram แบบกำหนดเอง และสนามข้อมูลแบบกำหนดเองที่มีอยู่ คำตอบจากแคตตาล็อกจะไม่แสดงข้อมูลลับ; การเลือกจะเก็บเส้นทางไว้ใน vault ของพื้นที่ทำงาน หากแคตตาล็อกขาดหายไปหรือมีรูปแบบผิด เส้นทางแบบกำหนดเองจะยังคงใช้งานได้ ไม่มีการสร้างหรือเปิดใช้งานที่อยู่พร็อกซีของโครงการหรือบริการพยานที่โฮสต์ โดยค่าเริ่มต้น ตัวอย่าง Caddy จะเปิดเผยเฉพาะจุดสิ้นสุด head ที่มีขอบเขต เมื่อพยานภายนอกจำเป็นต้องเข้าถึงผู้รวบรวมข้อมูลที่แผงควบคุมยังคงเป็นส่วนตัว

การตรวจสอบความถูกต้อง:

- ชุดทดสอบเต็ม: **ผ่าน 348 ข้อ, ข้าม 3 ข้อ**, ใช้เวลา 195.81 วินาที ข้อจำกัดของ Windows เป็นสาเหตุ ที่ทำให้ต้องข้ามบางข้อ; คำเตือนเกี่ยวกับการเลิกใช้ไลบรารีที่พึ่งพาอยู่ 2 รายการยังคงมีอยู่
- การทดสอบ regression ครั้งสุดท้ายสำหรับ witness/configuration/release: **11 ผ่าน, 1 ข้าม** การทดสอบนี้ทับซ้อนกับชุดการทดสอบทั้งหมด การทดสอบรวมถึงการแก้ไขเส้นทาง, การตรวจสอบเบื้องต้นแบบออฟไลน์, การลงนาม/เผยแพร่ผ่านอุปกรณ์ทดสอบ HTTP Bot API loopback ที่ใช้งานจริง, การบันทึกความล้มเหลวในการส่ง การตรวจสอบ token ช่องทาง และการยกเว้น proxy-secret.
- การตั้งค่า Chromium ผ่านการทดสอบในภาษาอังกฤษ/รัสเซียที่ความละเอียด 390/1440 พิกเซล: การดาวน์โหลดการตั้งค่าที่ตรึงไว้ และโทเค็น, การล้างโทเค็นเมื่อล็อกหน้าจอ, การเลือกแคตตาล็อก, การดูตัวอย่างลิงก์ที่กำหนดเอง ตามด้วยการบันทึกอย่างชัดเจน, การจัดวาง/ความคมชัด และไม่มีข้อผิดพลาด JavaScript หรือคำขอจาก เบราว์เซอร์ภายนอก. แก้ไขปัญหาส่วนหัวบัญชีภาษารัสเซียที่แคบเกินไปและปัญหาการล้นของแท็บเข้าสู่ระบบ
- Ruff, การตรวจสอบแหล่งที่มา/ลิงก์ และการวิเคราะห์ YAML ของ Compose/workflow ได้ผ่านแล้ว
- ระบบที่ได้รับการพัฒนาใหม่ได้ผ่านการตรวจสอบการติดตั้งแบบแยกส่วน, ทรัพยากรแบบแผง/แบบคงที่ และการตรวจสอบสิทธิ์ API รวมถึงการตรวจสอบอิสระต่อการส่งออกข้อมูลสังเคราะห์ 32 เหตุการณ์ ทั้งแบบโดยตรงและแบบสตรีม

ใบเสร็จ: `test-results/setup-full-suite.log`, `setup-final-focused.log`, `setup-browser/receipt.json`, `setup-browser-final.log` และ `setup-package.log`. การตรวจสอบเหล่านี้ใช้บัญชี/พร็อกซีสังเคราะห์และ Bot API fixture ท้องถิ่น โดยไม่ อ้างถึงการเผยแพร่บอทจริง เซิร์ฟเวอร์ MTProxy สาธารณะที่ทำงานได้ การรัน CI จากระยะไกล หรือการ ปรับใช้ Docker ประวัติการสังเกต Telegram จริงที่เก็บไว้ข้างต้นยังคงเป็น หลักฐานแยกต่างหาก [คำแนะนำการตั้งค่า](https://github.com/phishdestroy/TgWitness/blob/main/docs/ru/WITNESS.md)

## การนำเสนอและตรวจสอบเอกสาร · 29 ตุลาคม 2026

หน้าผลิตภัณฑ์ หน้าเข้าสู่ระบบ ไฟล์ README ภาษาอังกฤษ/รัสเซีย และภาพนำเสนอ ขณะนี้ใช้ สไตล์การออกแบบที่สอดคล้องกัน ภาพหน้าจอที่เผยแพร่ต่อสาธารณะใช้ข้อมูลตัวอย่างสมมติ การปรับปรุงครั้งนี้ยังได้แก้ไข คำอธิบายเกี่ยวกับการตรวจสอบแบบเรียลไทม์และการกู้คืนข้อมูลที่ล้าสมัยข้างต้นด้วย

- การทดสอบการปรับให้เหมาะกับภาษาท้องถิ่น การทดสอบเว็บไซต์ และการทดสอบการเผยแพร่: **ผ่าน 33 ครั้ง, ข้าม 1 ครั้ง** การทดสอบที่ข้ามไป ต้องการการสร้าง symlink ซึ่งไม่สามารถทำได้บนโฮสต์นี้
- การตรวจสอบทั่วไปของ Chromium Panel ได้ผ่านแล้ว รวมถึงแคตตาล็อกภาษาทั้งหมด การจัดวาง RTL, ธีมสว่าง/มืด ความคมชัดของข้อความที่ชัดเจน และการสลับพื้นที่ทำงาน การตรวจสอบการสร้างโปรไฟล์ ตอนนี้จะรอการตอบกลับ HTTP ที่จริงก่อนที่จะตรวจสอบพื้นที่ทำงานที่เลือก
- หน้าจอเข้าถึงภาษาอังกฤษ/รัสเซียผ่านการตรวจสอบการจัดวางและความคมชัดในทั้งสองธีมที่ 320, 390, 768, 850 และ 1440 พิกเซล; ปุ่มส่งข้อมูลยังคงอยู่ในพื้นที่แสดงผลเริ่มต้น
- การตรวจสอบความเข้ากันได้กับเว็บไซต์สาธารณะผ่านที่ความละเอียด 320, 390, 768, 1024 และ 1440 พิกเซล รวมถึงการควบคุมข้อความ การควบคุมประวัติข้อความ การขยายภาพหน้าจอ/ปุ่ม Esc/การคืนโฟกัส แท็บคีย์บอร์ด การปฏิเสธคลิปบอร์ด เส้นทางย่อยของโครงการ การลดการเคลื่อนไหว และระบบสำรองเมื่อไม่มี JavaScript ไม่พบ การร้องขอทรัพยากรที่ล้มเหลว การร้องขอจากภายนอก หรือข้อผิดพลาดของ JavaScript
- ระบบที่สร้างใหม่ผ่านการตรวจสอบการติดตั้งแบบแยกส่วน: ทรัพยากรของแผงควบคุมและภาษาท้องถิ่น ถูกโหลดเรียบร้อยแล้ว การเข้าถึง API ต้องการการยืนยันตัวตน และการส่งออกแบบตรง/แบบสตรีมสามารถ ตรวจสอบเหตุการณ์สังเคราะห์ทั้ง 32 เหตุการณ์ได้อย่างอิสระ การตรวจสอบ Ruff และแหล่งข้อมูลสาธารณะ/ลิงก์ผ่านเรียบร้อยแล้ว

ใบเสร็จรับเงินท้องถิ่น: `test-results/design-tests.log`, `design-panel-final.log`, `design-review-final.log`, `design-site.log`, และ `design-package/install-receipt.json`. ชุดระบบหลังบ้านทั้งหมดไม่ได้ถูกเรียกใช้งานใหม่สำหรับการเปลี่ยนแปลงการนำเสนอ/เอกสารนี้; ผลลัพธ์ก่อนหน้านี้ยังคงอยู่ในกระบวนการตรวจสอบก่อนการเผยแพร่

## เวอร์ชัน 0.6.1

เวอร์ชัน 0.6.1 ปรับเปลี่ยนรูปแบบการแสดงผลของแผงควบคุม, โปรแกรมเปิด, การแพ็กเกจ และเอกสาร; โค้ดสำหรับการเก็บรวบรวม, การจัดเก็บ, การลงนาม และการส่งออกยังคงไม่เปลี่ยนแปลง บน Windows 11 / Python 3.12.10 พร้อม runtime ที่ถูกตรึงไว้:

- ชุดเครื่องมือทั้งหมดผ่านการทดสอบ **137 รายการ** โดยมี 2**รายการที่ข้ามไป** และคำเตือน Starlette ที่มีอยู่ การทดสอบใหม่ครอบคลุมการจัดการ Ctrl+C ของตัวเปิดใช้งาน (เซิร์ฟเวอร์มีเวลา 30 วินาทีเพื่อ หยุดทำงานอย่างเป็นระเบียบ) และข้อผิดพลาดในขั้นตอนการตั้งค่าที่สามารถดำเนินการแก้ไขได้
- Chromium (headless shell 156) ผ่านทุก **45 สถานการณ์ทั่วไป**และ **35 สถานการณ์การนำเข้าบัญชี/QR/Auth Key**ทั้งหมด 35 สถานการณ์ รวมถึงการตรวจสอบความคมชัดของข้อความแบบทึบ ไม่มี การล้นออกตามแนวนอนที่ความกว้าง 320–1440 พิกเซล และช่องกรอกข้อมูลการเข้าสู่ระบบครั้งแรกที่มองเห็นได้ชัดเจนที่ความกว้าง 320/390 พิกเซล ไม่พบข้อผิดพลาด JavaScript บนหน้าเว็บหรือคำขอจากภายนอก
- `python start.py --setup-only` ได้ติดตั้งแพ็กเกจใหม่เป็นเวอร์ชัน 0.6.1 และ `python start.py --check` รายงานว่าพร้อมใช้งานแล้ว เซิร์ฟเวอร์ `python -m tgwitness --demo` ที่จริง ส่งคืนแผงควบคุม, แผ่นสไตล์, สคริปต์, โลโก้, คู่มือ และเวอร์ชัน `/api/status` 0.6.1; ส่วน `workspace.css` ที่ถูกลบไป ส่งคืนรหัสข้อผิดพลาด 404.
- `Start.cmd` พบการติดตั้ง Python นอก PATH เนื่องจากไม่มี Python ให้ใช้ จึงแสดงข้อเสนอการติดตั้ง; ปฏิเสธคำแนะนำในคู่มือที่พิมพ์ออกมา และออกจากระบบ 1. ขั้นตอนการดาวน์โหลดจาก python.org ได้ดาวน์โหลดตัวติดตั้งเวอร์ชัน 3.12.10 และผ่านการตรวจสอบ Authenticode ของ Python Software Foundation; ตัวติดตั้งเองไม่ได้ถูกเรียกใช้บนโฮสต์นี้
- `start.sh` โดยไม่ใช้คำสั่ง Python ใด ๆ ได้พิมพ์คำแนะนำการติดตั้งและปิดตัวลง 1. `scripts\Docker.cmd` และ `scripts/docker-start.sh` ได้ถูกทดสอบกับไฟล์ปฏิบัติการปลอม `docker`: ลำดับการเรียก ที่ถูกต้อง, ที่อยู่ของ panel และผลออกของ token, และไม่มีข้อความแจ้งความสำเร็จหลังจากเกิดข้อผิดพลาด
- `python tools/build_portable.py` ได้สร้างแพ็กเกจ Windows ขนาด 18.8 MiB หลังจากตรวจสอบ ค่า checksum ของ embeddable-runtime ที่ถูกตรึงไว้ เมื่อแตกไฟล์ไปยังเส้นทางที่มีช่องว่าง และเริ่มต้นด้วยเพียง `C:\Windows` ใน PATH Python ที่ฝังอยู่ได้ผ่าน `TgWitness-Check.cmd`, ให้บริการ เดโม (32 เหตุการณ์) และพื้นที่ทำงานแบบสด และ Chromium แสดงบันทึกและส่วนแสดงรายละเอียด โดยไม่เกิดข้อผิดพลาด JavaScript ข้อมูลถูกเขียนลงในโฟลเดอร์ `data` ของแพ็กเกจ
- `python tools/build_preview.py` ได้สร้างไฟล์อาร์คิฟต้นฉบับจำนวน 110 ไฟล์ การทดสอบแบบ dry-run ของ `git add` แสดงรายชื่อไฟล์ 110 ไฟล์เดียวกัน โดยไม่มีไฟล์เซสชัน กุญแจ ฐานข้อมูล โทเคน ไฟล์บันทึก หรือไฟล์ส่งออก ไม่มีเส้นทางแบบสัมบูรณ์ในเครื่อง และไม่มีสตริงที่มีรูปแบบคล้ายข้อมูลลับ

ยังไม่ดำเนินการในรอบการแพ็กเกจวันที่ 27 ตุลาคมนี้: การติดตั้ง Python อัตโนมัติเอง, การตรวจสอบ Docker build/Compose, การรันบน Linux/macOS หรือการทดสอบบัญชีจริง ใหม่. หลักฐาน Telegram ที่แท้จริงถูกบันทึกไว้ด้านบนและในการตรวจสอบบัญชีก่อนหน้านี้ ด้านล่าง. การกำหนด CI เพียงอย่างเดียวไม่เพียงพอที่จะยืนยันการดำเนินการบนแพลตฟอร์ม

## เวอร์ชัน 0.6.0

ชุดทดสอบ runtime ที่ถูกตรึงไว้ล่าสุดบน Windows 11 / Python 3.12.10 ผ่านการทดสอบ **135 รายการ**, โดย**ข้าม** 1**รายการ**, ในเวลา 26.53 วินาที พร้อมคำเตือน Starlette ที่มีอยู่เดิม การข้าม นี้ต้องการสิทธิ์ POSIX หลังจากเพิ่มตัวสร้าง QR เข้าไปในขั้นตอนการตรวจสอบความพร้อมและวัดผลกระบวนการ 8 ขั้นตอนการตรวจสอบความพร้อม/พื้นที่ทำงาน ที่ได้รับผลกระทบก็ผ่านการทดสอบเช่นกัน

เนื้อหาใหม่ที่เพิ่มเข้ามา ได้แก่ สคีมา Telethon 7/8, สคีมา Pyrogram 2/3, JSON และ JSON ที่มีเพียงข้อมูลเมตาดาต้า, ไฟล์บัญชีที่ตรงกัน/ขัดแย้ง, รหัสผ่าน TData, การแก้ไขค่า checksum และเส้นทางที่ไม่ปลอดภัย, การแปลงข้อมูลในหน่วยความจำแบบออฟไลน์/ผ่านการยืนยันตัวตน, การตรวจสอบ ID บัญชีออนไลน์, ความสำเร็จของ QR/2FA/วันหมดอายุ, การยกเลิกบัญชีที่หมดอายุ, และการ แยกบัญชี. อุปกรณ์ทดสอบ TData ใช้การนำ AES-IGE ที่แยกต่างหากมาใช้สำหรับการเข้ารหัส

Chromium ผ่านการทดสอบ **45 สถานการณ์ทั่วไป** และ **35 สถานการณ์ที่เกี่ยวข้องกับการนำเข้าบัญชี/QR/Auth Key**, โดยไม่พบข้อผิดพลาด JavaScript บนหน้าเว็บหรือคำขอจากภายนอก การตรวจสอบเบราว์เซอร์ใหม่ ครอบคลุมทั้งสี่รูปแบบการป้อนข้อมูลพร้อมกัน รวมถึง TData ที่ได้รับการปกป้อง, เมตาดาต้า API, การแสดงผล QR, การหมดอายุ/การลองใหม่, 2FA, การปฏิเสธบัญชีผิด, การยกเลิกการล็อก/พื้นที่ทำงาน, การจัดวางที่ตอบสนอง ต่อการเปลี่ยนแปลง, และการตอบสนองการแปลงข้อมูลที่ล่าช้าหลังการเลือกไฟล์ใหม่

ทั้งสองชุดเบราว์เซอร์ผ่านการทดสอบอีกครั้งหลังจากการเปลี่ยนแปลงการเข้าสู่ระบบบัญชี การตั้งค่าแบบสดจะเปิด แบบฟอร์มบัญชี ส่วนโหมดเดโมจะเปิดสมุดบันทึกตัวอย่าง หน้าบัญชีในโหมดเดโมแสดง คำแนะนำการเริ่มต้นใช้งานแบบสด และซ่อนช่องกรอกข้อมูลรับรอง การตรวจสอบอย่างละเอียดที่ความละเอียด 320, 390 และ 1440 พิกเซล ยืนยันว่าช่องตัวเลขและปุ่มหลัก พอดีโดยไม่จำเป็นต้องเลื่อนหน้า และช่อง API ถูกพับไว้ตั้งแต่แรก ความคมชัดของข้อความยังคงอ่านได้ชัดเจน ส่วนควบคุมการจับภาพและการตรวจสอบยังคง ถูกปกปิดไว้หลังจากเปิดส่วนใหม่ที่สามารถขยายได้

กระบวนการ Auth Key แบบตรงได้ถูกทดสอบด้วยข้อมูลประจำตัวสังเคราะห์ผ่าน จุดปลายทางนำเข้าและอนุญาตจริง การตรวจสอบครอบคลุมกุญแจที่ไม่สมบูรณ์, DC ที่ขาด, ID ผู้ใช้ที่ไม่แม่นยำ, ความไม่ตรงกันของตัวตนบัญชี, ข้อมูลประจำตัว API ที่บันทึกไว้, ความคืบหน้าของคำขอที่มองเห็นได้, การล้างข้อมูลลับ และการตอบสนองล่าช้าหลังการแก้ไขหรือการเปลี่ยนแปลงวิธีการ ทั้งสี่วิธีลงชื่อเข้าใช้ได้รับการตรวจสอบที่ความละเอียด 320, 390 และ 1440 พิกเซล ตัวเลือกไฟล์ ปรากฏก่อนคำแนะนำเกี่ยวกับรูปแบบ และปุ่ม Connect ตรงกับวิวพอร์ตเริ่มต้น 844 พิกเซล เมื่อการตั้งค่า API ถูกพับเก็บไว้ ไม่มีการพยายามอนุญาตด้วย Auth Key ที่จริงใน การทดสอบความเข้ากันได้ของ UI ครั้งนี้

การรีเฟรชแผงควบคุมได้รับการตรวจสอบอีกครั้งด้วยชุดเบราว์เซอร์ทั้งสอง: ไม่พบข้อผิดพลาด JavaScript ของหน้าเว็บหรือคำขอจากภายนอก ชุดบัญชีปัจจุบันรองรับการวาง คู่ API ID/hash หนึ่งคู่ โดยปฏิเสธคู่ที่มีรูปแบบผิดหรือหลายคู่โดยไม่แทนที่ ฟิลด์ คำแนะนำเฉพาะเมตาดาต้า และเพิกเฉยต่อการตอบสนองการนำเข้าที่ล้าสมัยหลังจากการ เปลี่ยนวิธีการลงชื่อเข้าใช้หรือการแก้ไขข้อมูลรับรองด้วยตนเอง การตรวจสอบเพิ่มเติมอีกหกจุด ผ่านการตรวจสอบสำหรับคู่มือการตั้งค่า, การเริ่ม/หยุดชั่วคราวอย่างชัดเจน, การกู้คืนจากการค้นหาว่าง, และ การจัดวางการเชื่อมต่อ/คู่มือท้องถิ่นขั้นสุดท้าย รวมถึงความคมชัดของข้อความที่มั่นคงที่ความละเอียด 320, 390 และ 1440 พิกเซล การอัปเดตการเข้าสู่ระบบโดยตรงเพิ่มการดำเนินการขอรหัสผ่านทางโทรศัพท์เพียงครั้งเดียว และนำ คู่ API ที่บันทึกไว้ในพื้นที่ทำงานปัจจุบันมาใช้ใหม่สำหรับการเข้าสู่ระบบผ่านโทรศัพท์, QR และเซสชัน ชุดทดสอบ Python แบบเต็มรูปแบบข้างต้นรวมถึงการทดสอบความคงทนใหม่, การปฏิเสธข้อมูลรับรองบางส่วน และการทดสอบ การแยกพื้นที่ทำงาน การตรวจสอบเบราว์เซอร์ครอบคลุมการป้อนหมายเลขโทรศัพท์โดยตรง การใช้ข้อมูลรับรองที่บันทึกไว้ซ้ำ การกำหนดเส้นทางด้วยเมตาดาต้าเท่านั้น การอนุญาตไฟล์ด้วยปุ่มเดียว และการปฏิเสธบัญชีซ้ำ แบบฟอร์มโทเค็นแผงควบคุมและแบบฟอร์มโทรศัพท์ที่ได้รับการปรับให้เรียบง่ายขึ้นก็ได้รับการตรวจสอบโดยไม่มีการเลื่อนหน้าเริ่มต้น ที่ความละเอียด 320, 390 และ 1440 พิกเซล การตรวจสอบความเข้ากันได้ยืนยันว่าแบบฟอร์มโทรศัพท์แบบตรง สามารถใช้จุดสิ้นสุดการกำหนดค่า/รหัส (configure/code) เวอร์ชันเก่าได้ ในขณะที่กระบวนการเวอร์ชันเก่ายังคงทำงานอยู่

บัญชีหนึ่งที่ได้รับจากผู้ใช้ได้รับการตรวจสอบแยกต่างหาก นอกเหนือจากชุดทดสอบสาธารณะ ข้อมูลนำเข้าจาก Telethon, Pyrogram และ TData ทั้งหมดชี้ไปยังการอนุญาตเดียวกัน; ไฟล์ JSON ที่มาพร้อมกันให้ข้อมูลรับรอง API ทั้งสี่ไฟล์ถูกโหลดผ่าน แผงควบคุมเวอร์ชัน 0.6.0 และ Telegram ยืนยัน ID บัญชีแบบตัวเลขตามที่คาดไว้ ไฟล์ต้นฉบับ ยังคงไม่มีการเปลี่ยนแปลง ไม่มีการเลือกแหล่งข้อมูลใด และการสังเกตการณ์ยังคงปิดอยู่ สิ่งนี้ ถือเป็นตัวอย่างการนำเข้า/เข้าสู่ระบบเพียงหนึ่งกรณีเท่านั้น ไม่ใช่การเก็บรวบรวมข้อมูลแบบเรียลไทม์ การกู้คืนข้อมูล หรือความสามารถในการประมวลผล

Telegram ยังได้ออกโทเคน QR ที่แท้จริง ซึ่งถูกยกเลิกก่อนที่จะถูกสแกน กระบวนการยืนยัน QR แบบเต็มและขั้นตอนการยืนยันสองขั้นตอน (2FA) ได้ถูกทดสอบด้วยไคลเอนต์สังเคราะห์; การ ยืนยันผ่านมือถือกับแอป Telegram ที่แท้จริงยังคงเป็นขั้นตอนการยอมรับที่แยกต่างหาก ไม่มีการรวมตัวระบุบัญชีจริง ข้อมูลลับ หรือภาพหน้าจอไว้ในไฟล์สาธารณะ

การอัปเกรดตัวเปิดใช้งานเสร็จสิ้นแล้ว; รายงานเวอร์ชัน 0.6.0 สำหรับซอร์สโค้ด, เมตาดาต้าที่ติดตั้ง และตัวบ่งชี้ความพร้อม พร้อมด้วย qrcode 8.2 และ `pip check` ที่ผ่านการตรวจสอบแล้ว วีลที่ติดตั้งไว้ ให้บริการแผงควบคุมและคู่มือ, ปฏิเสธคำขอ API ที่ไม่ได้รับการยืนยันตัวตน และตรวจสอบอย่างอิสระ การส่งออกข้อมูลสังเคราะห์ 32 เหตุการณ์ ทั้งแบบตรงและแบบสตรีม คู่มือออฟไลน์ที่อัปเดต ได้รับการตรวจสอบที่ความละเอียด 320, 390 และ 1440 พิกเซล ภาพหน้าจอสาธารณะยังคงเป็นภาพสังเคราะห์

การปล่อยเวอร์ชันต้นฉบับมีไฟล์ 107 ไฟล์ที่อยู่ในรายชื่ออนุญาต ลิงก์เอกสารท้องถิ่นทำงานได้ การรันด้วย Docker/Caddy, การเผยแพร่ CI/แพ็กเกจจากระยะไกล, สภาพแวดล้อมการทำงาน ARM64, การเก็บข้อมูลอย่างต่อเนื่อง และเมทริกซ์การรับส่ง Telegram แบบเรียลไทม์แบบเต็มรูปแบบ ยังไม่ได้รับการรับรองที่นี่

## เวอร์ชัน 0.5.1

บน Windows 11 / Python 3.12.10 ชุดทดสอบสภาพแวดล้อมโครงการทั้งหมดผ่าน: **94 ผ่าน, 2 ข้าม**, ในเวลา 31.21 วินาที พร้อมคำเตือน Starlette ที่มีอยู่ การข้ามการทดสอบดังกล่าวต้องการสิทธิ์ POSIX และการสร้าง symlink ซึ่งไม่มีอยู่บนโฮสต์นี้ อุปกรณ์ทดสอบ HTTP สำหรับการดาวน์โหลดได้พิมพ์ผลการวินิจฉัยของ thread คำขอ; การตรวจสอบทั้งหมด ผ่านแล้ว การรันครั้งนี้ไม่สามารถยืนยันได้ว่าไม่มีปัญหาด้านการขนส่งของโฮสต์

การทดสอบความครอบคลุมของการถดถอยใหม่ได้ปฏิเสธ StringSession, การเปลี่ยนแปลงรหัสและบัญชี 2FA การยกเลิกการค้นหาตัวตน, การยกเลิกการเข้าสู่ระบบที่รอการดำเนินการ, และการอัปเดตผ่าน ตัวจัดการที่ลงทะเบียนไว้บนไคลเอนต์ที่ใช้งานอยู่, ถูกปฏิเสธ, ถูกแทนที่ และไคลเอนต์แบบสำรวจ มีเพียง ตัวเก็บข้อมูลที่ใช้งานอยู่เท่านั้นที่ส่งเหตุการณ์; ข้อมูลรับรองที่บันทึกไว้และประวัติที่ลงนามยังคง อยู่ครบถ้วน การตรวจสอบใหม่ lainnya ครอบคลุมการค้นหา Unicode หลังจากเปิดฐานข้อมูลใหม่, การรวม ขอบเขตนโยบายการเฝ้าติดตามใน Coverage, และการยกเว้นแพ็กเกจจากแหล่งข้อมูลสาธารณะ

โครงการจริง `pythonw.exe` ได้เปิดตัวแผงสังเคราะห์ที่แยกตัวออกมา ส่งคืน HTTP 200 และเก็บรักษาข้อมูลวินิจฉัยการเริ่มต้นระบบไว้ใน `logs/server.log` บันทึกดังกล่าวไม่ มีโทเค็นของแผงที่สร้างขึ้นหรือบันทึกการเข้าถึง HTTP การทดสอบได้ยุติเพียง กระบวนการสังเคราะห์ของตัวเองเท่านั้น ไม่มีงานใน Task Scheduler ที่ถูกลงทะเบียน; การลงชื่อเข้า/ออก, โหมดพัก และกระบวนการกู้คืนบริการ ยังคงเป็นเงื่อนไขที่แยกต่างหาก

การตรวจสอบความเข้ากันได้กับ Chromium ได้ผ่าน **45 สถานการณ์** โดยไม่พบข้อผิดพลาด JavaScript บนหน้าเว็บ และไม่มีการร้องขอจากภายนอก การตรวจสอบใหม่ครอบคลุมวันที่และเวลาบนไทม์ไลน์ที่ความละเอียด 601/768/850 พิกเซล ร่างไฟล์แนบระหว่างการอัปเดตสถานะ การแก้ไขล่าสุดที่เกิดขึ้นขณะบันทึก ผลการตรวจสอบที่ถูกล้างเมื่อเปลี่ยนบัญชี การตอบสนองการตรวจสอบที่ล่าช้าหลัง การเปลี่ยนไปและกลับ และขอบเขตการตรวจสอบที่ชัดเจนเมื่อมีเหตุการณ์ใหม่เกิดขึ้น ระยะห่างระหว่างไอคอนค้นหาและข้อความได้รับการแก้ไขแล้ว และชุดเบราว์เซอร์ได้ถูกเรียกใช้งานใหม่

การรันเบราว์เซอร์ใช้ runtime ที่ถูกตรึงไว้ใน `.venv` และ Playwright 1.62.0/Chromium ที่มีอยู่ซึ่งระบบจัดเตรียมไว้ โดยถูกเพิ่มเข้าไปหลังสภาพแวดล้อมโครงการในเส้นทางนำเข้า การติดตั้ง dependency สำหรับการพัฒนา (optional) ถูกหยุดลงระหว่างการดาวน์โหลด Playwright ที่ช้า; ไม่มีเวอร์ชันใหม่ของเครื่องมือเบราว์เซอร์ที่ผ่านการตรวจสอบ `python start.py --setup-only` ปกติ ได้เสร็จสิ้นการอัปเกรดแอปพลิเคชันแล้ว แหล่งที่มา, เมตาดาต้าที่ติดตั้ง และมาร์กเกอร์ของตัวเปิดใช้งานรายงานเวอร์ชัน 0.5.1; `pip check` ผ่านการตรวจสอบ ความพร้อม ผ่านบนเส้นทางใหม่ที่ยังไม่ได้ใช้ โดยยังคงมีคำเตือนเกี่ยวกับ local-vault-key ตามที่คาดไว้

Wheel เวอร์ชัน 0.5.1 ได้ถูกติดตั้งแยกต่างหากและผ่านการทดสอบเบื้องต้น: ทรัพยากรทั้งหมดของ panel/guide ได้รับการให้บริการ, การเข้าถึง API ที่ไม่ผ่านการยืนยันตัวตนถูกปฏิเสธ, และไฟล์ ZIP หลักฐานทั้งแบบ direct และ streamed ที่มี 32 เหตุการณ์ ผ่านการตรวจสอบอิสระ ไฟล์แอปพลิเคชันใน แพ็กเกจที่ติดตั้งแล้วได้ถูกเปรียบเทียบกับโค้ดต้นแบบ อาร์ไคฟ์โค้ดต้นแบบสาธารณะใช้ รายชื่ออนุญาตประเภทไฟล์ที่ระบุชัดเจน และปฏิเสธไฟล์ต้นแบบที่เชื่อมโยง; วัสดุรันไทม์ ที่วางไว้ในไดเรกทอรีต้นแบบจะถูกยกเว้นโดยการทดสอบการถดถอย

ระหว่างการรันการแก้ไขโค้ด ชุดข้อมูลที่เลือกจากแหล่งสาธารณะและชุดผู้สมัคร Git ประกอบด้วย 86 ไฟล์ โดยไม่รวมไดเรกทอรีข้อมูลขณะทำงาน การสแกนเพื่อค้นหาแบบแผนที่รู้จักได้ของกุญแจส่วนตัว โทเค็น GitHub, โทเค็นบอท Telegram และ StringSession ไม่พบผลลัพธ์ที่ตรงกัน นี่เป็นการตรวจสอบแบบแผน ที่มีขอบเขตจำกัด ไม่ใช่การตรวจสอบความลับอย่างครอบคลุม การตรวจสอบตามกฎการละเว้นครอบคลุมสิบสอง องค์ประกอบบัญชี/ข้อมูล/การส่งออกที่พบบ่อย ไฟล์ YAML ของ Workflow/issue/Compose และสคริปต์งานของ Windows ถูกวิเคราะห์สำเร็จ ลิงก์เอกสารท้องถิ่นสามารถเข้าถึงได้

ได้แก้ไขข้อค้นพบทั้งเจ็ดข้อจากการตรวจสอบเมื่อวันที่ 27 ตุลาคมแล้ว GitHub การดำเนินการ workflow, สภาพแวดล้อมการทำงานบน Linux/macOS/Docker, Telegram จริง, ความสามารถในการทำงานร่วมกันกับ proxy/TSA ภายนอก และการทดสอบความทนทานต่อโหลดต่อเนื่อง ยังคงอยู่นอกขอบเขตการรันในเครื่องนี้ ไม่มีการเผยแพร่ repository, การลงทะเบียนบริการ หรือการเก็บรวบรวมบัญชีจริง เกิดขึ้น

### อัปเดตเอกสารภาษาอังกฤษ

ไฟล์ README, ข้อมูลอ้างอิงบัญชี/เซสชัน, กระบวนการเก็บรวบรวมข้อมูล และคู่มือที่มาพร้อมในแพ็กเกจ ได้อธิบายข้อมูลอินพุตที่รองรับ, พฤติกรรมของพื้นที่ทำงาน, นโยบายเหตุการณ์ และรูปแบบการส่งออก เป็นภาษาอังกฤษแล้ว ภาพหน้าจอสาธารณะทั้งสามภาพได้รับการอัปเดตโดยใช้ข้อมูลสังเคราะห์ ณ จุดนั้น ชุดข้อมูลสาธารณะประกอบด้วย 88 ไฟล์ รวมถึงคู่มือใหม่สองฉบับ ลิงก์ท้องถิ่นทั้งหมด 131 ลิงก์ ในเอกสาร Markdown 23 ฉบับ สามารถเข้าถึงได้ทั้งหมด

หลังจากการแก้ไขส่วนหน้าผู้ใช้และคู่มือ การทดสอบ Chromium ได้ผ่านทุก 45 กรณีอีกครั้ง โดยไม่พบข้อผิดพลาด JavaScript บนหน้าเว็บหรือคำขอจากภายนอก ชุดทดสอบ Python ทั้งหมดไม่ได้ถูกเรียกใช้ใหม่สำหรับการอัปเดตเอกสารและนำเสนอครั้งนี้; ผลการผ่าน 94 กรณีข้างต้นเป็นผลจากการทดสอบแก้ไขโค้ดครั้งก่อน

ล้อที่สร้างใหม่ได้ติดตั้งลงในเป้าหมายใหม่ที่แยกเป็นอิสระ แผงควบคุมและระบบนำทาง ทำงานได้สำเร็จ การเข้าถึง API ที่ไม่ผ่านการยืนยันตัวตนถูกปฏิเสธ และการส่งออกข้อมูลทั้งแบบ โดยตรงและแบบสตรีมผ่านกระบวนการตรวจสอบอิสระสำหรับเหตุการณ์สังเคราะห์ 32 เหตุการณ์

### อัปเดตการติดตั้งและการปรับใช้

การตรวจสอบการติดตั้ง การแพ็กเกจ และการเตรียมความพร้อมที่เน้นเฉพาะจุดได้ผ่านการทดสอบ 14 รายการ โดย มีการข้ามการทดสอบหนึ่งครั้งเนื่องจากไม่สามารถสร้าง symlink ได้ การตรวจสอบ wrapper แบบเนทีฟครอบคลุมเส้นทางที่มี ช่องว่าง การส่งต่ออาร์กิวเมนต์ โหมดการตั้งค่า/โหมดสาธิต และการแพร่กระจายค่า exit ที่ไม่เท่ากับศูนย์ การตรวจสอบ Git Bash ทดสอบตัวช่วย shell ของ Docker ด้วย daemon ที่จำลองขึ้น รวมถึง กรณีที่ Docker หรือ Compose ไม่พบ, การรอสถานะสุขภาพล้มเหลว, และการเริ่มต้นด้วยพอร์ตทางเลือก ที่สำเร็จ การตรวจสอบที่จำลองขึ้นเหล่านี้ไม่ยืนยันความเข้ากันได้ของ runtime Docker

สำเนาจากแหล่งสาธารณะที่สมบูรณ์ได้ถูกติดตั้งลงในไดเรกทอรี Windows ใหม่ ซึ่ง เส้นทางของไดเรกทอรีนั้นมีช่องว่างอยู่ `scripts\Setup.cmd` ได้สร้างสภาพแวดล้อมใหม่และติดตั้ง รันไทม์ที่ถูกตรึงไว้; `Start.cmd --check --json` รายงานว่าพร้อมใช้งานโดยไม่สร้าง ไดเรกทอรีข้อมูลเป้าหมายของตัวเอง `pip check` ผ่านการทดสอบ ส่วน wheel ที่สร้างใหม่ก็ผ่านการ ตรวจสอบแพ็กเกจที่ติดตั้งแล้ว รวมถึงการส่งออกเหตุการณ์ 32 รายการแบบตรงและแบบสตรีม

ได้วิเคราะห์ไวยากรณ์ Shell และไฟล์ YAML ของ workflow/Compose จำนวน 5 ไฟล์แล้ว การตั้งค่า Compose สำหรับแหล่งข้อมูลและรูปภาพสอดคล้องกันในส่วนการตั้งค่าการเก็บข้อมูลและเวลาทำงาน ในขั้นนี้ ลิงก์ท้องถิ่นทั้งหมด 139 ลิงก์ในเอกสาร Markdown 23 ฉบับได้รับการแก้ไขแล้ว การเลือกแหล่งข้อมูลสาธารณะประกอบด้วยไฟล์ 99 ไฟล์

การกำหนดค่า CI ขณะนี้ใช้การตั้งค่าแบบเนทีฟใหม่บน Windows/Linux/macOS, Compose การตรวจสอบสุขภาพ/การควบคุมการเข้าถึง/ความคงอยู่ระหว่างการสร้างคอนเทนเนอร์ใหม่ และการกำหนดค่า Caddy กระบวนการปล่อยเวอร์ชันจะจำกัดการเผยแพร่ตามการตรวจสอบเหล่านี้ และเพิ่มการตรวจสอบเบื้องต้นแบบจำลอง ARM64 Docker ไม่สามารถใช้งานได้บนโฮสต์นี้: การทำงานจริงของ Compose/Caddy, การออกใบรับรอง, การทำงานบน ARM64, และการเผยแพร่เวิร์กโฟลว์/แพ็กเกจจากระยะไกล ยังคงไม่ผ่านการตรวจสอบในเครื่องท้องถิ่น รหัสแอปพลิเคชัน/UI ไม่มีการเปลี่ยนแปลงจากการอัปเดตนี้; ผลลัพธ์ Python และเบราว์เซอร์แบบเต็มรูปแบบก่อนหน้านี้ไม่ได้ถูกเรียกใช้งานใหม่

## เวอร์ชัน 0.5.0

ชุดทดสอบ runtime ที่ถูกตรึงไว้ทั้งหมดผ่านแล้ว: **81 ผ่าน, 1 ข้าม**, ใน 22.00 วินาที, พร้อมคำเตือน Starlette ที่มีอยู่เดิม การตรวจสอบสิทธิ์ POSIX ถูกข้ามไปบน Windows การทดสอบตัวจัดการใหม่ส่งข้อความ การแก้ไข การลบที่มีขอบเขต/ไม่มีขอบเขต ปฏิกิริยา การอัปเดตผู้เข้าร่วม และข้อความบริการสมาชิกผ่านนโยบาย ต่าง ๆ หมวดหมู่ที่ถูกปิดใช้งานจะไม่สร้างการสังเกตการณ์แบบเรียลไทม์ที่สอดคล้องกัน; การวินิจฉัย ความครอบคลุมและภาพถ่ายแบบชัดเจนยังคงใช้งานได้ การทดสอบตรวจสอบนโยบายที่คงอยู่, การแยกพื้นที่ทำงาน, บันทึกการตรวจสอบก่อน/หลังที่มีการลงนาม, พฤติกรรมนโยบายที่ไม่เปลี่ยนแปลง, การตรวจสอบความถูกต้องอย่างเคร่งครัด และการรวมเข้าในใบรับของกระบวนการถัดไป

การทดสอบการเข้าสู่ระบบในโหมดเดโมจะยืนยันว่าความสามารถของมันแตกต่างจากโทเค็นแผงควบคุมที่ตั้งค่าไว้ ไม่สามารถอนุญาตพื้นที่ทำงานแบบสด (live workspace) ได้ ไม่สามารถเปลี่ยนแปลงการตั้งค่าการเก็บข้อมูลได้ และไม่ ถูกออกหรือยอมรับสำหรับคำขอแบบระยะไกล (remote), คำขอที่ถูกส่งต่อ (forwarded), คำขอข้ามต้นทาง (cross-origin) หรือคำขอที่มี Host ไม่ถูกต้อง การเปิดเดโมที่เก็บไว้โดยไม่ใช้ธงเดโม (demo flag) อย่างชัดเจน จะไม่เปิดใช้งานการเข้าสู่ระบบอัตโนมัติ

การทดสอบความเข้ากันได้ของ Chromium ผ่าน **39 สถานการณ์** รวมถึงการเข้าสู่ระบบเดโมท้องถิ่นโดยไม่ ต้องป้อนโทเค็น การตั้งค่าการเฝ้าติดตามล่วงหน้า การเปลี่ยนผ่านจากการเลือกแหล่งข้อมูลไปยังนโยบาย ความเป็นอิสระต่อบัญชีแต่ละบัญชี และการตรวจสอบการจัดวางบนเดสก์ท็อป/320/390 พิกเซล รวมถึงความคมชัดของข้อความ ไม่มีข้อผิดพลาด JavaScript บนหน้าเว็บ คำขอที่ AdGuard ของโฮสต์แทรกยังคง ปรากฏในบันทึกการรับส่งข้อมูล ฟิกเจอร์ HTTP สำหรับการดาวน์โหลดบันทึกการรีเซ็ตการเชื่อมต่อหลังจากที่ไคลเอนต์ ปิดการเชื่อมต่อ; การตรวจสอบยังคงผ่าน นี่ไม่ใช่ผลลัพธ์จากบริการจริง

ตัวเปิดใช้งานปกติได้อัปเกรดสภาพแวดล้อมที่แยกเป็นอิสระเป็นเวอร์ชัน 0.5.0; เวอร์ชันต้นฉบับและเวอร์ชันที่ติดตั้ง ตรงกัน และการตรวจสอบด้วย pip ผ่านเรียบร้อยแล้ว การตรวจสอบการเข้ารหัส secret-vault ที่มีอยู่ การปฏิเสธ กุญแจที่ผิดหรือขาดหาย และการตรวจสอบการปลอมแปลงลายเซ็น/สื่อ ผ่านการตรวจสอบในชุดทดสอบทั้งหมด ไม่มี การเข้ารหัสเนื้อหาข้อความหรือไฟล์แนบใหม่ในแอปพลิเคชัน

การสาธิตในเครื่องได้เริ่มต้นใหม่เพื่อให้ส่วนติดต่อผู้ใช้ (UI) ที่อัปเดตแล้วใช้งานได้ บันทึกสังเคราะห์ ที่มีอยู่ยังคงถูกเก็บรักษาไว้; การหยุดกระบวนการสาธิตพื้นหลังเดิมจะสร้าง ขอบเขตออฟไลน์เมื่อเริ่มต้นครั้งต่อไป ไม่มีการใช้เซสชัน Telegram จริงสำหรับการตรวจสอบเหล่านี้

แผงควบคุมที่ทำงานบน localhost:8787 แสดงเวอร์ชัน 0.5.0, การเข้าถึงเดโมอัตโนมัติ, ปุ่มควบคุมการเฝ้าติดตาม 5 ปุ่ม และเหตุการณ์ในบันทึกสังเคราะห์ที่เก็บไว้ 33 รายการ Wheel เวอร์ชัน 0.5.0 ที่ติดตั้งแยกต่างหาก ให้บริการทรัพยากรทั้งหมดของแผงควบคุม/คู่มือ ปฏิเสธการเข้าถึง API ที่ไม่ได้รับการยืนยัน และสร้างไฟล์ ZIP ที่ผ่านการตรวจสอบแล้วซึ่งประกอบด้วย 32 เหตุการณ์ ทั้งโดยตรงและผ่านตัวช่วยดาวน์โหลดแบบสตรีมมิ่ง เวอร์ชันแพ็กเกจขณะรันไทม์ยังคงถูกตรึงไว้ตามที่บันทึกไว้สำหรับเวอร์ชัน 0.4.

## เวอร์ชัน 0.4.0

ชุดการทดสอบ runtime ที่ถูกตรึงไว้ทั้งหมดผ่านแล้ว: **78 ผ่าน, 1 ข้าม**, ในเวลา 19.77 วินาที การตรวจสอบที่ถูกข้ามไปต้องการสิทธิ์ POSIX; คำเตือนเกี่ยวกับการเลิกใช้ Starlette TestClient จากต้นทางยังคงอยู่ การทดสอบใหม่ครอบคลุมการดาวน์โหลดแบบสตรีม/การกำหนดเส้นทางในพื้นที่ทำงาน, ส่วนหัวการอนุญาต, การปฏิเสธการเขียนทับ, การเปลี่ยนเส้นทาง, คำตอบที่ถูกตัดทอน, ขีดจำกัดขนาดที่ประกาศ/จริง, การอ่านแบบจำกัดขอบเขต, การทำความสะอาด, ระบบไฟล์ที่ไม่มี ลิงก์แบบฮาร์ด, ความล้มเหลวในการเตรียมความพร้อม และโหมดตัวเปิดใช้งานที่ไม่ต้องติดตั้งแพ็กเกจ การทดสอบการส่งออกยืนยันไฟล์ชั่วคราวในเวิร์กสเปซท้องถิ่นและการทำความสะอาดไฟล์กำพร้าแบบเลือกสรร

การทดสอบความเข้ากันได้กับ Chromium ได้ผ่านทุก 36 สถานการณ์ที่ระบุไว้ โดยไม่มีข้อผิดพลาด JavaScript บนหน้าเว็บ การทดสอบนี้รวมถึงการจำลองการเข้าสู่ระบบด้วยโทรศัพท์/รหัส/2FA, เซสชันที่แปลงแล้ว, สองพื้นที่ทำงาน และ เส้นทาง/สถานะที่แยกกัน, การสังเกต, ลายเซ็น, จุดตรวจสอบ และคำขอประทับเวลา รวมถึง:

- จัดวางสำหรับเดสก์ท็อปและขนาด 320/390 พิกเซล ไม่มีการล้นออกด้านแนวนอน มีเมนูนำทางที่มองเห็นได้ชัดเจน และช่องกรอกข้อมูลสำหรับการเข้าสู่ระบบครั้งแรกต้องปรากฏภายในพื้นที่แสดงผล 844 พิกเซลแรก
- ความตัดกันของข้อความกับพื้นหลังที่มั่นคงตามเกณฑ์ WCAG AA สำหรับข้อความ โดยไม่รวมการควบคุมสำหรับผู้พิการ, ความทึบแสง และพื้นหลังภาพ/ไล่ระดับสี; นี่ไม่ใช่การตรวจสอบ WCAG แบบครบถ้วน
- การตอบสนองการส่งออกข้อมูลจริงในระบบท้องถิ่นที่เขียนขึ้นผ่านตัวเลือกรายการไฟล์ OS ที่จำลองขึ้น/สามารถเขียนได้, ตามด้วยการตรวจสอบ ZIP แบบอิสระ; การยกเลิกจะไม่ส่งคำขอส่งออก
- ความผิดพลาดในการเขียนข้อมูลจะยกเลิกการส่งข้อมูลไปยังปลายทาง; ระบบสำรองขนาด 128 MiB จะปฏิเสธ การตอบกลับที่ประกาศไว้มีขนาดใหญ่เกินไป โดยไม่จัดสรรข้อมูลที่สอดคล้องกัน
- คู่มือท้องถิ่นภาษาอังกฤษสำหรับเวอร์ชันเดสก์ท็อปและทั้งสองความกว้างหน้าจอแคบ

หน้าต่างบันทึกการบันทึก OS และกระบวนการเขียนข้อมูลจริงในเบราว์เซอร์ที่มีขนาดหลายกิกะไบต์ ยังไม่ได้รับการอัตโนมัติหรือ ตรวจสอบความถูกต้อง การทดสอบการดาวน์โหลดด้วย Python ใช้ข้อมูลส่วนย่อยที่มีขนาดจำกัดและอุปกรณ์ loopback การ รับมอบระบบอย่างเต็มรูปแบบกับ Telegram จริงยังคงเป็นกระบวนการที่แยกต่างหาก

โปรแกรมติดตั้งปกติได้อัปเกรด `.venv` เป็นเวอร์ชัน 0.4.0 ข้อมูลต้นฉบับและเมตาดาต้าที่ติดตั้งตรงกัน; `pip check` ผ่านการตรวจสอบ `python start.py --check --json` รายงานว่าพร้อมใช้งานบน เส้นทางสังเคราะห์ใหม่โดยไม่สร้างไดเรกทอรีข้อมูล คำเตือนเกี่ยวกับการจัดเก็บกุญแจท้องถิ่น ยังคงปรากฏอย่างถูกต้อง: บันทึกและสื่อไม่ได้รับการเข้ารหัสโดยแอปพลิเคชัน

Wheel เวอร์ชัน 0.4.0 ได้ถูกสร้างและติดตั้งลงในไดเรกทอรีแยกต่างหาก ไฟล์แอปพลิเคชันทั้ง 23 ไฟล์ ตรงกับไฟล์ต้นฉบับทุกไบต์ แพ็กเกจที่ติดตั้งได้ให้บริการแผงควบคุมและ คู่มือ/ทรัพยากรภาษาอังกฤษ ปฏิเสธการเข้าถึง API ที่ไม่ได้รับการยืนยัน และส่งออกไฟล์ ZIP สังเคราะห์ ที่มี 32 เหตุการณ์ ซึ่งผ่านการตรวจสอบแล้ว คำสั่งดาวน์โหลดแบบสตรีมมิ่งยังดึง ไฟล์ ZIP ที่ได้รับการตรวจสอบอย่างอิสระจากแอปพลิเคชันที่ติดตั้งและกำลังทำงานอยู่

เอกสารสาธารณะและคู่มือท้องถิ่นเป็นภาษาอังกฤษ; ลิงก์เอกสารท้องถิ่น ทำงานได้ PowerShell ได้วิเคราะห์แม่แบบงานของ Windows และ Python ได้วิเคราะห์ไฟล์ plist ของ macOS นี่เป็นการตรวจสอบไวยากรณ์ ไม่ใช่การดำเนินการบริการ ไม่มีการลงทะเบียนงาน/บริการใดๆ การตั้งค่า CI ขณะนี้รวมถึงการตรวจสอบความพร้อม แต่ CI จากระยะไกลยังไม่ได้ทำงานที่นี่

การรันบนเบราว์เซอร์เวอร์ชัน 0.4 อีกครั้งได้สังเกตเห็นการแทรกแซงของ AdGuard บนโฮสต์ และ OSError 10022 จาก Windows asyncio socket-cleanup การตรวจสอบความถูกต้องของเบราว์เซอร์ผ่านแล้ว; การสังเกตสภาพแวดล้อม เหล่านี้ถูกเก็บไว้แทนที่จะถูกพิจารณาว่าเป็นพฤติกรรมที่แก้ไขแล้วของแอปพลิเคชัน การทดลองใช้ sandbox ของ OpenSSL/เบราว์เซอร์/pip ในขั้นต้นล้มเหลว; การทดลองที่ผ่านเกณฑ์ และประสบความสำเร็จใช้การดำเนินการที่ได้รับการอนุมัตินอก sandbox

## เวอร์ชัน 0.3.1 เน้นการแก้ไขข้อบกพร่องเพื่อเพิ่มความพร้อมใช้งาน

การตรวจสอบตัวเปิด (launcher), หลักฐาน/พื้นที่จัดเก็บ และ API ที่ได้รับผลกระทบผ่าน: **31 ผ่าน, 1 ข้าม**, 1 คำเตือนจาก Starlette ต้นทาง การตรวจสอบที่ข้ามไปนี้ยืนยันสิทธิ์การเข้าถึงไดเรกทอรีตาม POSIX และไม่สามารถกำหนดสิทธิ์ดังกล่าวบนโฮสต์ Windows นี้ได้ การทดสอบ Python เวอร์ชันเก่าจำลองขอบเขตของเวอร์ชัน/การนำเข้า; ไม่มีตัวแปล Python 3.10 ที่ติดตั้งหรือผ่านการรับรอง ชุดการทดสอบ 0.3 ที่ผ่านการทดสอบก่อนหน้านี้ถูกบันทึกไว้ด้านล่าง; ชุดการทดสอบทั้งหมดและสถานการณ์ในเบราว์เซอร์ไม่ได้ถูกเรียกใช้ใหม่สำหรับการเปลี่ยนแปลงที่เน้นเฉพาะนี้

ตัวเปิดใช้งานปกติได้อัปเกรดสภาพแวดล้อมท้องถิ่นเป็นเวอร์ชัน 0.3.1; ข้อมูลเมตาดาต้าของซอร์สโค้ดและที่ติดตั้ง ตรงกัน และผ่านการตรวจสอบ pip แล้ว Wheel เวอร์ชัน 0.3.1 ที่ติดตั้งแยกต่างหากได้ให้บริการ panel/assets, ปฏิเสธการเข้าถึง API ที่ไม่ได้รับการยืนยัน และสร้าง ไฟล์ส่งออกสังเคราะห์ 32 เหตุการณ์ที่ผ่านการตรวจสอบแล้ว YAML ของ workflow ได้รับการวิเคราะห์แล้ว แต่การตรวจสอบ runtime ของ container ใหม่ ยังไม่ถูกดำเนินการ: ไม่มี runtime Docker/Podman/Linux ท้องถิ่นที่ใช้งานได้

ดู[ผลการประเมินความพร้อมเพื่อทราบ](https://github.com/phishdestroy/TgWitness/blob/main/docs/internal/READINESS.md)ข้อบกพร่องที่เหลือด้านความสะดวกในการใช้งาน บริการแบบเรียลไทม์ และ แพลตฟอร์ม แพตช์นี้ไม่รองรับระบบปฏิบัติการเพิ่มเติม

## เวอร์ชัน 0.3.0

ชุดทดสอบ runtime ที่ถูกตรึงไว้ทั้งหมดผ่าน: **61 การทดสอบ** พร้อมด้วยคำเตือนการเลิกใช้ Starlette TestClient จากต้นทางหนึ่ง รายงานเมตาดาต้าของ runtime ระบุว่า TgWitness 0.3.0 และ python-socks 2.8.2; การตรวจสอบ pip ผ่านแล้ว การทดสอบความเข้ากันได้ของเบราว์เซอร์ผ่านโดยไม่มี ข้อผิดพลาด JavaScript บนหน้าเว็บ

Wheel เวอร์ชัน 0.3.0 ได้ถูกสร้างและติดตั้งลงในไดเรกทอรีแพ็กเกจแยกต่างหาก มัน ให้บริการแผงควบคุมและทรัพยากร ปฏิเสธคำขอ API ที่ไม่ผ่านการยืนยันตัวตน และส่งออก บันทึกเหตุการณ์สังเคราะห์ 32 เหตุการณ์ ซึ่งผ่านการตรวจสอบอิสระ ลิงก์เอกสารท้องถิ่น ทำงานได้ปกติแล้ว หลังจากปรับแก้การปรับมาตรฐานกุญแจเปล่าของ MTProxy แล้ว การทดสอบทั้งเก้า การเชื่อมต่อ/ความปลอดภัยได้ถูกดำเนินการใหม่สำเร็จ

เนื้อหาใหม่ที่เพิ่มเข้ามา ได้แก่:

- ชื่อผู้ใช้/รหัสผ่าน SOCKS5 และ HTTP CONNECT ผ่านเซิร์ฟเวอร์ทดสอบ loopback ที่จริง; พร็อกซีที่ตั้งค่าไม่ถูกต้องจะล้มเหลวแทนที่จะเปลี่ยนไปใช้ปลายทาง
- การตรวจสอบความถูกต้องของพร็อกซี, การเลือกวิธีการส่งข้อมูล MTProxy, การปฏิเสธข้อมูลลับ TLS ee ปลอม, การรักษาข้อมูลต่อเนื่อง, การแยกพื้นที่ทำงาน, การปฏิเสธการเปลี่ยนแปลงระหว่างการสังเกตการณ์, และการยกเว้น ข้อมูลลับจากสถานะ API และเหตุการณ์ที่ลงนามแล้ว
- การแปลงแบบอ่านอย่างเดียวของสคีมา Telethon SQLite สังเคราะห์ 7 และ 8; ค่าแฮชของแหล่งต้นฉบับไม่เปลี่ยนแปลง การปฏิเสธรูปแบบอื่น ๆ, มุมมอง SQL และไฟล์ WAL ที่ยังค้างอยู่
- กุญแจหลักของ vault ภายนอก: กุญแจพื้นที่ทำงานที่สร้างขึ้นจากกุญแจหลักที่แตกต่างกัน, การเปิดใหม่ที่สำเร็จ, การปฏิเสธเมื่อกุญแจผิดหรือขาด, และไม่มีการย้ายข้อมูลแบบอัตโนมัติของ vault ท้องถิ่นที่มีอยู่
- การตั้งค่าพร็อกซีของเบราว์เซอร์ การล้างข้อมูลรับรอง การเปิดเผยข้อมูลเกี่ยวกับการป้องกันพื้นที่จัดเก็บ หน้าการเชื่อมต่อบนมือถือ การอนุญาตไฟล์เซสชันที่แปลงแล้ว เส้นทางที่แยกกัน และทุกสถานการณ์การเก็บรวบรวม/ส่งออกที่เคยกล่าวถึงมาก่อนหน้านี้ โดยใช้ไคลเอนต์ Telegram ปลอม

ระหว่างการพัฒนา การทดสอบ loopback ได้รอการปิดระบบของคู่สนทนาอย่างไม่มีกำหนด; การ ทดสอบอีกครั้งสังเกตเห็นการรีเซ็ตการเชื่อมต่อของ Windows หลังจากขั้นตอน handshake เสร็จสิ้น ชุดทดสอบนี้ปัจจุบันกำหนดขอบเขต การแลกเปลี่ยนข้อมูลทั้งหมด และถือว่าการสิ้นสุดไฟล์ (EOF) หรือการรีเซ็ตหลังขั้นตอน handshake เสร็จสิ้นเป็นการปิด การเชื่อมต่อ การยืนยันการจับมือ/การยืนยันตัวตนยังคงเป็นสิ่งจำเป็น สิ่งนี้ไม่ได้หมายความว่า ผู้ให้บริการพร็อกซีจริงมีปัญหา หรือบ่งชี้ถึงข้อบกพร่องคงที่ในระบบการส่งข้อมูลของ Telegram

การสังเกตคำขอของ AdGuard ที่อธิบายไว้ด้านล่างยังคงมีผลอยู่ ไม่มีการใช้บัญชี Telegram จริง นอกพร็อกซี SOCKS/HTTP หรือเซิร์ฟเวอร์ MTProxy ที่ทำงานจริง MTProxy เป็น เวอร์ชันทดลอง และตัวเลือกที่เลือกไว้/การตรวจสอบความถูกต้องของรหัสลับได้ผ่านการตรวจสอบแล้ว แต่ ยังไม่มีการตรวจสอบความสามารถในการทำงานร่วมกันในสภาพแวดล้อมจริง คำสั่งใหม่สำหรับการแปลงกุญแจภายนอกและเซสชันได้ ถูกทดสอบด้วยข้อมูลลับที่สร้างขึ้นเท่านั้น ระบบ Linux/macOS/Docker ยังไม่ได้รับการรับรองในส่วนนี้

การวัดประสิทธิภาพเวอร์ชัน 0.2 ที่แสดงด้านล่างนี้ไม่ได้ถูกทำซ้ำ และไม่ควรนำเสนอ ในฐานะมาตรฐานการวัดประสิทธิภาพใหม่สำหรับหลายบัญชี/พร็อกซีของเวอร์ชัน 0.3

## เวอร์ชัน 0.2.0 (เวอร์ชันพื้นฐาน)

ได้ตรวจสอบบน Windows ด้วย Python 3.12.10 โดยไม่มีการเชื่อมต่อบัญชี Telegram ที่จริง

| ตรวจสอบ | ผลลัพธ์ |
| --- | --- |
| ชุดเครื่องมือ Python | 52 ผ่านในสภาพแวดล้อมการพัฒนา และ 52 ผ่านกับ runtime ที่ถูกตรึง; มีคำเตือนการเลิกใช้ Starlette TestClient จากต้นทางหนึ่งครั้งในแต่ละรอบการทดสอบ |
| ไวยากรณ์ JavaScript | พัฒนาด้วย Node.js |
| การรองรับ Chromium | ผ่านแล้ว; ไม่มีข้อผิดพลาด JavaScript บนหน้าเว็บ |
| การจัดวางหน้าสำหรับคอมพิวเตอร์และมือถือ | ตรวจสอบที่ความละเอียด 1440 × 1060 และ 390 × 844; ไม่มีส่วนเอกสารที่ล้นออกทางด้านแนวนอน |
| เนื้อหาข้อความในรูปแบบ HTML | แสดงผลเป็นข้อความ; สคริปต์ที่แทรกเข้าไปไม่ถูกดำเนินการ |
| ตัวอย่างกระบวนการทำงานของบัญชี | ข้อมูลรับรอง API → หมายเลขโทรศัพท์ → รหัส → 2FA → เลือกกลุ่ม → เริ่ม → ถ่ายภาพหน้าจอ → หยุดชั่วคราว → โหลดใหม่ |
| หลักฐานในเบราว์เซอร์ | การเปรียบเทียบการแก้ไข, เนื้อหาก่อนการลบ, ตัวกรอง, การดาวน์โหลด ZIP, จุดตรวจสอบ, ใบรับกระบวนการที่มีลายเซ็น, การดาวน์โหลดคำขอตาม RFC 3161 และการผูกจุดตรวจสอบ |
| หลายบัญชี | แยกบันทึก, กุญแจ, แหล่งข้อมูล และสถานะแบบเรียลไทม์; การเปลี่ยนเบราว์เซอร์จะไม่ทำให้ตัวเก็บข้อมูลอื่นหยุดทำงาน; พื้นที่ทำงานจะเปิดใหม่หลังจากรีสตาร์ท; การสร้างบัญชีซ้ำและการโอนสิทธิ์บัญชีจะถูกปฏิเสธ |
| ข้อผิดพลาดด้านการเข้ารหัส | เปลี่ยนฟิลด์ที่ลงนามแล้ว, เพิ่มฟิลด์ที่ยังไม่ลงนาม, กุญแจผิด, ไฟล์ในอาร์ไคฟ์เสียหาย, สื่อที่เปลี่ยนหรือขาดหายไป, การตัดทอนที่ตรวจพบจากจุดตรวจสอบถูกปฏิเสธ |
| พื้นที่จัดเก็บ | การเพิ่มข้อมูลพร้อมกันจะได้รับการตรวจสอบ; การอัปเดตหรือการลบจะก่อให้เกิดการปฏิเสธ; เมื่อเริ่มต้นระบบจะปฏิเสธบันทึกที่เปลี่ยนแปลงโดยไม่เพิ่มข้อมูลใหม่ และปลดล็อก |
| ความคงทนของข้อมูล | การเขียนข้อความ/งานแบบอะตอมิก; การกู้คืนหลังการรีสตาร์ท; การเก็บรักษาตัวระบุเวอร์ชันต้นฉบับ; การปฏิเสธการแทนที่คิวและการเสียหายของไฟล์ที่มีอยู่; FloodWait ยังคงทำงาน; การแยกความผิดพลาดของแหล่งข้อมูล |
| สตรีมมิ่ง | นำส่วนนำหน้า (prefix) ที่เสถียรออกไปในขณะที่บันทึกใหม่ถูกเพิ่มเข้ามา; จุดตรวจสอบ (checkpoint) ที่เก็บไว้จะตรวจจับเมื่อบันทึกถูกตัดสั้น; การส่งออกไม่สร้างสตรีมเหตุการณ์ทั้งหมด |
| RFC 3161 | OpenSSL 3.5.9 อ่านคำขอที่สร้างขึ้น; รับคำตอบ CA/TSA สังเคราะห์ที่สร้างขึ้นในเครื่อง; ปฏิเสธข้อมูลที่ถูกแก้ไข nonce และ CA ที่ผิด; สภาพแวดล้อม CA รอบข้างไม่แทนที่ความเชื่อถือที่ระบุไว้อย่างชัดเจน |
| การตั้งค่าในเครื่อง | start.py --setup-only ได้อัปเกรด .venv ที่แยกไว้เป็นเวอร์ชัน 0.2.0; ข้อมูลเมตาดาต้าจากแหล่งที่มาและที่ติดตั้งตรงกัน; การตรวจสอบ pip ผ่านแล้ว |
| Wheel | เวอร์ชัน 0.2.0 ได้ถูกสร้างและติดตั้งแยกในโฟลเดอร์ test-results; ให้บริการ panel/assets, ปฏิเสธ API ที่ไม่ได้รับการยืนยันตัวตน, ส่งออกและตรวจสอบไฟล์เก็บถาวรสังเคราะห์ที่มี 32 เหตุการณ์ |

การทดสอบโค้ดต้นใช้ FastAPI 0.159.1, Uvicorn 0.54.0, Telethon 1.45.0, cryptography 50.0.2, pytest 9.1.1 และ Playwright 1.62.0. รันไทม์ที่ถูกตรึงใช้ FastAPI 0.162.0, Starlette 1.10.0, Uvicorn 0.54.0, Telethon 1.45.0 และ cryptography 50.0.2. ไฟล์ deploy/constraints.txt บันทึกเวอร์ชัน runtime ที่ถูกตรึงไว้; ไฟล์ deploy/requirements.lock และ deploy/build.lock เพิ่ม SHA-256 ของไฟล์แพ็กเกจทุกไฟล์, และ Docker รวมถึงเซิร์ฟเวอร์ที่มีความปลอดภัยสูง จะติดตั้งเฉพาะจากไฟล์เหล่านั้นเท่านั้น (pip --require-hashes). ทั้งสองไฟล์นี้ไม่ใช่หลักฐานของความเข้ากันได้ บนทุกแพลตฟอร์ม CI ที่กำหนดค่าไว้ ระบบ CI ระยะไกลยังไม่ได้ทำงาน

## การวัดศักยภาพท้องถิ่นแบบสังเคราะห์

คำสั่ง: `python tools/check_capacity.py --events 10000 --chats 100`

| เมตริก | สังเกต |
| --- | --- |
| ข้อมูลที่ป้อน | 10,000 เหตุการณ์ข้อความสังเคราะห์จาก 100 แหล่งข้อมูลสังเคราะห์ที่เลือกมา |
| ข้อความ | 400 ตัวอักษร; ไม่รวมสื่อหรือเครือข่าย |
| การนำเข้าข้อมูล | 53.273 วินาที; 187.7 เหตุการณ์/วินาที |
| ความล่าช้าของตัวจัดการ | p50 4.162 ms; p95 7.784 ms; สูงสุด 129.118 ms |
| ส่งออกเป็น ZIP | 19.868 วินาที เมื่อเปิดใช้งาน tracemalloc |
| Peak: การติดตามการจัดสรรทรัพยากรการส่งออกของ Python | 0.51 MiB; ไม่รองรับ RSS |
| ขนาด ZIP | 4,610,962 ไบต์ |
| การตรวจสอบอย่างอิสระ | เหตุการณ์ทั้งหมด 10,000 รายการได้รับการตรวจสอบแล้ว |

การวัดนี้วัดเส้นทางบันทึก/ส่งออกแบบซีเรียลในเครื่องโฮสต์ Windows นี้เท่านั้น ไม่ วัดการส่ง MTProto บัญชีที่ใช้งานพร้อมกัน การจำกัดความเร็วของ Telegram สื่อ งานที่ทำงานต่อเนื่องเป็นเวลานาน หรือจำนวนการสนทนาจริงที่รับประกัน การวัดนี้ทำขึ้นก่อน เครื่องมือประทับเวลาออฟไลน์เวอร์ชันสุดท้าย ซึ่งไม่ส่งผลต่อเส้นทางข้อความที่วัดได้

## การสังเกตสภาพแวดล้อม

ข้อจำกัดของแซนด์บ็อกซ์ Windows ได้บล็อกไดเรกทอรีชั่วคราวเริ่มต้นของ pytest/pip และกระบวนการย่อยของ Playwright Pytest ได้ใช้ไดเรกทอรีชั่วคราวใหม่ภายใน โครงการ; กระบวนการติดตั้งและกระบวนการเบราว์เซอร์จำเป็นต้องได้รับการอนุมัติให้ทำงานนอก แซนด์บ็อกซ์

AdGuard ของเครื่องได้ส่งคำขอไปยัง local.adguard.org เข้าสู่เบราว์เซอร์ บันทึกของเบราว์เซอร์เก็บรักษาคำขอเหล่านั้นไว้ การทดสอบครั้งนี้ไม่ใช่หลักฐานที่แสดงว่าไม่มี คำขอขาออกเลยในสภาพแวดล้อมเบราว์เซอร์ที่ยังไม่ถูกปรับเปลี่ยน; แหล่งที่มาของแอปเอง ไม่มีการส่งคำขอไปยังทรัพยากรภายนอก/CDN/ระบบวิเคราะห์ข้อมูล การตั้งค่า AdGuard ไม่ถูกเปลี่ยนแปลง

การรันเบราว์เซอร์ครั้งสุดท้ายยังบันทึก OSError 10022 ที่เกิดจากการทำความสะอาดซ็อกเก็ต asyncio ของ Windows การตรวจสอบทั้งหมดของเบราว์เซอร์ผ่าน และไม่เกิดข้อผิดพลาด JavaScript บนหน้าเว็บ สาเหตุ ยังไม่ได้รับการยืนยัน และการรันครั้งนี้ไม่ได้แสดงให้เห็นว่าไม่มีปัญหาด้านการขนส่งของโฮสต์

การทดสอบ HTTP ด้วยแพ็กเกจที่ติดตั้งไว้ครั้งแรก ซึ่งใช้คำขอปิดการเชื่อมต่อ (connection-close) ของ urllib พบปัญหาการรีเซ็ตการเชื่อมต่อ ทั้งภายในและภายนอกแซนด์บ็อกซ์ และกับทั้งสอง ชุดการพึ่งพา การทดสอบครั้งสุดท้ายใช้การเชื่อมต่อแบบคงที่ HTTP/1.1 มาตรฐาน ผ่าน http.client และผ่านการทดสอบ คำขอจากเบราว์เซอร์ก็ผ่านการทดสอบเช่นกัน ที่มาที่แน่ชัดของ การรีเซ็ตการเชื่อมต่อยังไม่ได้รับการยืนยัน; และไม่ได้ถูกระบุว่าเป็นข้อบกพร่องที่แก้ไขแล้วของแอปพลิเคชัน

## คุณสมบัติเพิ่มเติม

บันทึกแบบเรียลไทม์ที่เก็บรักษาไว้จะบันทึกการเก็บรวบรวมจริง การแก้ไข การแจ้งเตือนการลบ ไฟล์แนบ การตรวจสอบซ้ำ และการจัดการข้อจำกัดอัตรา มันไม่บันทึกการส่งข้อความอย่างครบถ้วน หรือ แมทริกซ์ที่ควบคุมได้เกี่ยวกับความมองเห็นตามบทบาท ผู้ดำเนินการตอบสนอง การรอ FloodWait ที่ยืดเยื้อ การห้ามบัญชี และ การกู้คืนหลังการขัดจังหวะเครือข่าย/กระบวนการ การออกโทเคน QR ยังคงแยกต่างหากจาก การยืนยัน QR บนมือถือที่เสร็จสิ้นแล้ว

การสร้าง/การรัน Docker, การติดตั้งบน Linux/macOS, การรองรับโหลดสูงอย่างต่อเนื่อง, การตรวจสอบความปลอดภัยอย่างอิสระ การตอบสนอง TSA ที่อิสระจริง, การตรวจสอบการเพิกถอน/การเก็บรักษาใบรับรอง และการ รับรองทางนิติวิทยาศาสตร์ ยังคงอยู่นอกขอบเขตการรับรองที่บันทึกไว้ การบันทึกสถานะ MTProto และการติดตามสถานะได้ถูกนำไปใช้แล้ว; แต่การเล่นซ้ำแบบอะตอมิกและทนทานยังไม่ได้รับการยืนยัน การเก็บรวบรวม บันทึกผู้ดูแลระบบ, รายชื่อรีแอคเตอร์เพิ่มเติม และการสำรวจแบบสั้นตามลำดับความสำคัญ ยังคงเป็นคุณสมบัติที่แยกต่างหาก ดู[การยอมรับแบบสด](https://github.com/phishdestroy/TgWitness/blob/main/docs/internal/LIVE_ACCEPTANCE.md)สำหรับเมทริกซ์การรับรองที่ควบคุม

ใบเสร็จรับเงินและภาพหน้าจอรายละเอียดท้องถิ่นอยู่ในโฟลเดอร์ test-results/ (ถูก Git ละเว้น) ภาพหน้าจอสาธารณะในโฟลเดอร์ docs/assets/ มีเพียงข้อมูลสาธิตที่สมมติขึ้นเท่านั้น

## การเตรียมเว็บไซต์สาธารณะและเอกสารเผยแพร่ · 27 ตุลาคม 2026

การนำเสนอ`website/` และเวอร์ชัน Pages ที่แยกต่างหากได้ถูกเพิ่มเข้ามาหลังจาก การตรวจสอบของคณะกรรมการข้างต้นแล้ว ไม่มีการเปลี่ยนแปลงการตั้งค่าบัญชีจริงหรือตรรกะการเก็บข้อมูลใดๆ

- ชุดแอปพลิเคชันที่มีอยู่ผ่านการทดสอบ: 138 ผ่าน, 1 ข้ามเฉพาะ POSIX, และหนึ่ง คำเตือนการเลิกใช้ Starlette/httpx จากต้นทาง การทดสอบการสร้างเว็บไซต์ 11 รายการที่เพิ่มเข้ามา ผ่านการทดสอบอย่างอิสระ รวมถึงการปฏิเสธผลลัพธ์ที่ไม่คาดคิดและการปฏิเสธข้อมูลนำเข้าที่เชื่อมโยง
- สคริปต์เบราว์เซอร์ของทั้งสองแอปพลิเคชันผ่านการทดสอบโดยใช้ project-venv Playwright และ Chromium headless shell 156 ไม่มีการบันทึกข้อผิดพลาด JavaScript ของหน้าเว็บหรือคำขอจากภายนอก ทุกสถานการณ์บัญชีใช้การส่งข้อมูลปลอมและข้อมูลสมมติ
- `tools/check_site.py` ผ่านการทดสอบที่ความกว้าง 320, 390, 768, 1024 และ 1440 พร้อมด้วย เส้นทางย่อยของ URL โครงการ, การใช้ปุ่ม Tab บนคีย์บอร์ด, การเข้าถึงคลิปบอร์ดที่สำเร็จ/ถูกปฏิเสธ, การลดการเคลื่อนไหว, และ JavaScript ที่ถูกปิดใช้งาน ไม่มีการร้องขอทรัพยากรหรือการร้องขอจากภายนอกที่ล้มเหลวเกิดขึ้น
- `tools/build_site.py` ได้สร้างไฟล์สาธารณะ 10 ไฟล์ที่อยู่ในรายชื่ออนุญาต (allowlisted) ด้วยขนาดรวมประมาณ 460 KB ภาพหน้าจอเบราว์เซอร์และใบเสร็จอยู่ในไฟล์ `test-results/site/` ที่ถูกเพิกเฉย
- wheel ได้สร้างขึ้นอย่างสำเร็จหลังจากติดตั้ง tools setuptools/wheel ที่ออกแบบมาเพื่อสร้างเท่านั้นในสภาพแวดล้อมโครงการ การติดตั้งมันลงในเป้าหมายที่แยกตัวและ การรัน `tools/check_install.py` ได้ผ่าน: ทรัพย์สินแบบคงที่, การควบคุมการเข้าถึง, การส่งออก ข้อมูลสังเคราะห์ 32 เหตุการณ์ที่มีลายเซ็น และการดาวน์โหลดแบบสตรีมมิ่งที่ได้รับการตรวจสอบอย่างอิสระ
- `pip check` ผ่านการตรวจสอบแล้ว การสแกนรูปแบบของตัวเลือกสาธารณะที่ Git เลือกไว้ ไม่พบ บล็อกกุญแจส่วนตัวที่สามารถระบุได้ โทเค็น GitHub/bot/AWS การกำหนดค่าลับแบบตัวอักษรยาว หรือเครื่องหมายความขัดแย้งในการรวมโค้ด นี่ไม่ใช่หลักฐานว่าทุกรูปแบบลับ ที่เป็นไปได้จะไม่มีอยู่ การตรวจสอบข้อมูลรันไทม์/เซสชัน/กุญแจถูก Git ละเว้น
- การยืนยันตัวตนผ่าน GitHub CLI ไม่ถูกต้อง; ไม่มีการกำหนดค่า remote และไม่มี commit ครั้งแรกอยู่เลย ไม่มีการ push, workflow ที่โฮสต์, การปรับใช้ Pages หรือการปล่อยเวอร์ชัน Docker และการตรวจสอบความเหมาะสมของ Telegram/แพลตฟอร์มแบบสด ยังคงอยู่นอกขอบเขตการตรวจสอบนี้

บนเซิร์ฟเวอร์นี้ ระบบล็อกการดาวน์โหลด Playwright ได้ล้มเหลวบนระบบไฟล์พื้นที่ทำงาน E: การติดตั้ง Chromium ใน`%LOCALAPPDATA%/tgwitness-playwright` และใช้ `PLAYWRIGHT_BROWSERS_PATH` เดียวกันสำหรับการตรวจสอบได้สำเร็จ นี่เป็นวิธีแก้ไขชั่วคราวในสภาพแวดล้อม ไม่ใช่การเปลี่ยนแปลงในความพึ่งพาของ runtime ของแอปพลิเคชัน

## เอกสารคู่มือแบบโต้ตอบและข้อมูลเมตาของเว็บไซต์ · 29 ตุลาคม 2026

เว็บไซต์สาธารณะนี้ประกอบด้วย 12 หน้า HTML ภาษาอังกฤษ: หน้าหลัก, ดัชนีคู่มือ และคู่มือ 10 ฉบับ ชุดข้อมูลนี้ประกอบด้วยไฟล์นำเสนอ 28 ไฟล์ที่ระบุไว้อย่างชัดเจน, ขนาดประมาณ 1.85 MB และไม่มีข้อมูลจากตัวเก็บรวบรวม เว็บไซต์สาธารณะเป็นภาษาอังกฤษ; การแปลแอปพลิเคชันและคู่มือใน repositori ที่แปลแล้วเป็นสิ่งที่แยกต่างหาก

- การทดสอบเว็บไซต์ แหล่งที่มา และการเผยแพร่: **ผ่าน 18 รายการ, ข้าม 2 รายการ** การข้ามการทดสอบเกี่ยวข้องกับการสร้าง symlink ในระบบไฟล์ Windows นี้ การทดสอบตรวจสอบ ข้อมูลเมตาดาต้าของหน้าที่ไม่ซ้ำกัน, หน้าสาธารณะที่ใช้ภาษาอังกฤษเท่านั้น, URL แบบมาตรฐาน, รายการ sitemap ทั้งหมด, ทรัพย์สิน/จุดยึดท้องถิ่น, การนำทางที่มีโครงสร้าง และการยกเว้นไฟล์ส่วนตัว
- ทั้ง `tools/check_site.py` และ `tools/check_docs_site.py` ผ่านการทดสอบใน Chromium ที่ ความละเอียด 320, 390, 768, 1024 และ 1440 พิกเซล ภายใต้เส้นทางย่อยของ URL โครงการ คู่มือนี้ตรวจสอบ ให้ครอบคลุมทั้ง 11 หน้าเอกสาร, การค้นหาและการนำทางด้วยคีย์บอร์ด, การทำงานของคลิปบอร์ด ทั้งกรณีที่สำเร็จและล้มเหลว รวมถึงเนื้อหาที่อ่านได้โดยไม่ต้องใช้ JavaScript
- ผ่านตัวอย่างเชิงโต้ตอบ 5 ตัวอย่าง: การเล่นซ้ำ/ก้าว/หยุดชั่วคราว/รีเซ็ตข้อความด้วย การเคลื่อนไหวที่ลดลงและการหยุดชั่วคราวเมื่ออยู่นอกหน้าจอ; ห่วงโซ่แฮชแบบต้นฉบับ/แก้ไข/สร้างใหม่/ตัดทอน; การตัดสินใจของผู้เป็นพยานในการยอมรับ/ย้อนกลับ/แยกสาขา/ไม่ตอบสนอง; และ สถานการณ์การส่งข้อความที่เสร็จสมบูรณ์/ล่าช้า/ขาดหายไป; รวมถึงแผนที่การสืบสวนที่เชื่อมโยง การสังเกตการสนทนาข้ามแชทสมมติตาม ID ผู้ส่ง จุดหมาย และแฮชของไฟล์แนบ ระบบควบคุมการสืบสวนผ่านการตรวจสอบการนำทางด้วยคีย์บอร์ดและการตรวจสอบระบบสำรองเมื่อไม่มี JavaScript แล้ว ผลลัพธ์ SHA-256 ของเบราว์เซอร์ถูก เปรียบเทียบอย่างอิสระกับ`hashlib` ของ Python และ JSON แบบมาตรฐาน ตัวอย่างแฮช นี้ยังรักษาการสำรองที่อ่านได้เมื่อ Web Crypto ไม่สามารถใช้งานได้
- อัตราส่วนการแสดงผลและเครื่องหมายบนกราฟสอดคล้องกับตารางที่เข้าถึงได้ แกนบนอุปกรณ์มือถือ ได้รับการขยายขนาดหลังจากตรวจสอบทางสายตา ตัวอย่างทุกตัวอย่างถูกระบุว่าเป็น ตัวอย่างเพื่ออธิบายหรือตัวอย่างสังเคราะห์ และตัวอย่างบนเบราว์เซอร์ไม่มีการติดต่อกับ Telegram
- ไม่มีการบันทึกคำขอจากภายนอก คำขอ HTTP ที่ล้มเหลว หรือข้อผิดพลาดของ JavaScript ภาพหน้าจอและใบยืนยันการส่งข้อความจากเดสก์ท็อป/มือถือถูกจัดอยู่ในหมวดหมู่ที่ถูกละเว้น `test-results/site/` และ `test-results/docs-site/` ดัชนีเอกสาร ตัวอย่างข้อความ/แฮช รูปแบบหน้า witness แผนภูมิการส่งข้อความ และแผนที่การสืบสวน ได้ถูกตรวจสอบใน ขนาดเดสก์ท็อป/มือถือ
- การสแกนการเผยแพร่ผ่านได้สำหรับไฟล์แหล่งข้อมูลสาธารณะ 282 ไฟล์ และลิงก์เอกสารท้องถิ่น 1,426 ลิงก์ Ruff ผ่านการตรวจสอบสำหรับเครื่องมือและทดสอบ Python ที่ได้รับการปรับเปลี่ยน
- `docs/HOW-IT-WORKS.md` ให้บริการคู่มือ GitHub Markdown พร้อมด้วย แผนภาพ Mermaid และสูตรทางคณิตศาสตร์ `docs/INVESTIGATION.md` ครอบคลุมขอบเขตบัญชีทั้งหมด, การเก็บรวบรวมประวัติการสนทนาตามแต่ละแชท, โปรไฟล์ผู้ใช้, การอ้างอิงระหว่างแชท, ไทม์ไลน์ และการส่งต่อคดีที่ได้รับการตรวจสอบแล้ว ขั้นตอนและข้อจำกัดของมันได้รับการตรวจสอบเทียบกับ ขอบเขตปัจจุบัน, การเก็บรวบรวม, ไฟล์เอกสาร, การส่งออก, ผู้ตรวจสอบ และรหัสของแผงควบคุม การแสดงผล บน GitHub ที่โฮสต์ไว้ยังไม่ได้รับการตรวจสอบ

นี่เป็นการตรวจสอบเว็บไซต์/เอกสารท้องถิ่นเท่านั้น ไม่รวมถึงการตรวจสอบ Telegram แบบเรียลไทม์ การยืนยันการปรับใช้ Pages ที่โฮสต์ การประสบความสำเร็จของ CI จากระยะไกล หรือ การดัชนีของเครื่องมือค้นหา ดู[ขั้นตอนการเผยแพร่และ](https://github.com/phishdestroy/TgWitness/blob/main/docs/internal/PUBLISHING.md) [หมายเหตุเกี่ยวกับเมตาดาต้าของเว็บไซต์](https://github.com/phishdestroy/TgWitness/blob/main/docs/internal/SEO.md)
