---
title: "หนังสือรับรองการลบ/ทำลายข้อมูล"
titleEn: "Data Destruction Certificate"
clauses: ["4.11.3"]
phase: 3
category: "รายงานอัตโนมัติ"
generated: true
generatedAt: "2026-10-02T14:15:02.989Z"
---

> สร้างอัตโนมัติเมื่อ 2026-10-02T14:15:02.989Z

# หนังสือรับรองการลบ/ทำลายข้อมูล

**อ้างอิง TOR:** ข้อ 4.11.3 (การลบ/ทำลายข้อมูลของมหาวิทยาลัยเมื่อสิ้นสุดสัญญา พร้อมหนังสือรับรอง)

> **สถานะ: ยังไม่ได้ดำเนินการลบข้อมูล** — เอกสารฉบับนี้เป็นรายการข้อมูล (inventory) ณ เวลาที่สร้าง ยังไม่ใช่หนังสือรับรอง เมื่อ SUPER_ADMIN สั่งลบที่หน้า `/admin/data-destruction` ระบบจะเขียนทับไฟล์นี้ด้วยหนังสือรับรองฉบับจริง (วันเวลา ผู้สั่งลบ จำนวนก่อนลบ ค่า SHA-256 และจำนวนคงเหลือหลังลบ)

## 1. ขั้นตอนการลบและออกหนังสือรับรอง

1. SUPER_ADMIN เปิดหน้า `/admin/data-destruction` เลือกขอบเขต แล้วพิมพ์ “ยืนยันการลบ” (ADMIN ไม่มีสิทธิ์ — API ตอบ 403)
2. ระบบบันทึก inventory ของแต่ละขอบเขตก่อนลบ: ตาราง/โฟลเดอร์ จำนวน และ SHA-256 ของรายการ id / รายการไฟล์ (เรียงลำดับแล้วคั่นด้วยขึ้นบรรทัดใหม่)
3. ระบบลบข้อมูลจริง แล้วนับจำนวนคงเหลือ
4. ระบบบันทึก Audit Log (`data_destruction`) และเขียนหนังสือรับรองลงไฟล์นี้ พร้อมให้ดาวน์โหลด

AuditLog ไม่ถูกลบในทุกกรณี (append-only ตาม TOR ก.6.5) กระบวนการนี้ทดสอบกับฐานข้อมูลทดสอบใน `tests/api/data-destruction.test.ts`

## 2. ขอบเขตและรายการข้อมูล ณ เวลาที่สร้างเอกสาร (ยังไม่ลบ)

### uploads

ไฟล์อัปโหลด (ไฟล์ทั้งหมดใต้โฟลเดอร์ STORAGE_DIR; ระเบียน KnowledgeDocument/Chunk ในฐานข้อมูลไม่ถูกลบ)

| ประเภท | ตาราง / โฟลเดอร์ | จำนวนปัจจุบัน | SHA-256 ของรายการ |
|---|---|---|---|
| ไฟล์ | storage/uploads | 0 | `e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855` |

### conversations

บทสนทนาทั้งหมด (Conversation พร้อม Message, Citation, Feedback แบบ cascade)

| ประเภท | ตาราง / โฟลเดอร์ | จำนวนปัจจุบัน | SHA-256 ของรายการ |
|---|---|---|---|
| ตาราง | Conversation | 159 | `49f04699830f508f11588acb4acb183a1bff6fb8b816f9ffaa2630a27e58ad19` |
| ตาราง | Message | 600 | `6e5f05aeb796c3ae7e6782b5ef62ebce6e444d0680d63f8378a12d3d55141387` |
| ตาราง | Citation | 30 | `61452dc36d2dcb86026d34e6dea3560642ca76838ab26a61263a9cc86c51b685` |
| ตาราง | Feedback | 127 | `2d68245cece9374179bf3b04371132a2e2ae4c21e5346e174bc7f66e5b9d751e` |

### tokenUsage

บันทึกการใช้โทเคน (TokenUsage ทั้งหมด)

| ประเภท | ตาราง / โฟลเดอร์ | จำนวนปัจจุบัน | SHA-256 ของรายการ |
|---|---|---|---|
| ตาราง | TokenUsage | 1,331 | `79f63f2f397803f0365e23b4aaeeffe6a52b73b93b6115ed01cb45982720f8bb` |

### evaluationResults

ผลการประเมิน (EvaluationResult และ EvaluationRun ทั้งหมด; ชุดทดสอบ EvaluationDataset/EvaluationItem ไม่ถูกลบ)

| ประเภท | ตาราง / โฟลเดอร์ | จำนวนปัจจุบัน | SHA-256 ของรายการ |
|---|---|---|---|
| ตาราง | EvaluationResult | 497 | `9fcc97ec9372e59c16d7deca805ad59692603c95fa679ee8150ff28446f16fe7` |
| ตาราง | EvaluationRun | 6 | `e4a8fd5f7e1bf7062c643f271e7975a4eb69ecb09af74947f8935df2ccf11556` |

### users

บัญชีผู้ใช้ทั่วไป (User ที่ role = GENERAL_USER พร้อมบทสนทนา, feedback, TokenUsage, PrivacyRequest, ไฟล์สำเนาข้อมูลใน privacy-exports และ LoginAttempt ของผู้ใช้นั้น; บัญชี ADMIN/SUPER_ADMIN ไม่ถูกลบ)

| ประเภท | ตาราง / โฟลเดอร์ | จำนวนปัจจุบัน | SHA-256 ของรายการ |
|---|---|---|---|
| ตาราง | User (GENERAL_USER) | 33 | `758a61858b0cc954c0fd62d4658c7bb4fa9ed2df12252af95001f90cd6d44d5b` |
| ตาราง | Conversation | 159 | `49f04699830f508f11588acb4acb183a1bff6fb8b816f9ffaa2630a27e58ad19` |
| ตาราง | Message | 600 | `6e5f05aeb796c3ae7e6782b5ef62ebce6e444d0680d63f8378a12d3d55141387` |
| ตาราง | Citation | 30 | `61452dc36d2dcb86026d34e6dea3560642ca76838ab26a61263a9cc86c51b685` |
| ตาราง | Feedback | 127 | `2d68245cece9374179bf3b04371132a2e2ae4c21e5346e174bc7f66e5b9d751e` |
| ตาราง | TokenUsage | 301 | `d2edfb66f3251a80416082d0bfbc896617544833e8c173c348a885de948533a8` |
| ตาราง | PrivacyRequest | 1 | `5d19022df3aaab81315ca18e2bad9f84e62b08529395264eafbf069503d8dc1d` |
| ตาราง | LoginAttempt | 7 | `e7bdc7b9b67da7fd41336cab986f1e0deec5bb2bd7f1da023a8cf4bbc3e465f1` |
| ไฟล์ | privacy-exports (ไฟล์สำเนาข้อมูลของผู้ใช้) | 1 | `c3762634e16663c5a7b88e610d178a488949f634e44f8cee62cd7fab3b48ee35` |
