Axioms nectarserve Continuum
Continuum
The foundation nectarserve is built on. Derives from the studio Systems axioms (AX1–AX5) into the theorems and corollaries of a system that reads messages and acts on the world — the Parcel primitive, the 10-gate pipeline, and three levels of memory.
Overview
Continuum คือ foundation ของ nectarserve — ระบบที่อ่านข้อความจากลูกค้าแล้วลงมือทำแทนเจ้าของร้าน · ทุกอย่างในหน้านี้ derive ลงมาจาก axiom กลาง AX1–AX5
Axioms · Theorems · Corollaries สอดคล้องกัน — ตามมาจาก axiom ไม่ใช่ formal proof
Design เลือกไว้
รอยต่อ จุดที่ต่อกับของจริง
ส่วนประกอบหลัก
หกคำนี้ใช้ตลอดทั้งหน้า — รู้จักไว้ก่อน ที่เหลือจะอ่านง่ายขึ้น:
- Parcel — งานหนึ่งชิ้นที่เดินทางผ่านระบบ · พกสิ่งที่ทำไปแล้ว สิ่งที่รออยู่ และประวัติ
- Resolver — กลไกที่ลงมือทำงานจริง · เป็น LLM, code หรือคนก็ได้
- Mandate — ขอบเขตที่ระบบได้รับอนุญาตให้ทำ
- Channel — ทางที่ข้อความวิ่งเข้ามา (เช่น LINE)
- Thread — กลุ่มข้อความที่เป็นบทสนทนาเดียวกัน · หน่วยที่ระบบเข้าใจความหมายได้
- Gate — ด่านตรวจที่ทุกข้อความต้องผ่านก่อนระบบจะลงมือ
Theorems
ทฤษฎีบทของ nectarserve เอง · พื้นฐาน T1–T9 เป็น theorem สากล อยู่ที่ Systems · เลขคือรหัสประจำตัว ไม่ใช่ลำดับอ่าน — มีช่องว่างได้ และไม่ไล่เลขใหม่เพราะรหัสถูกอ้างฝังในโค้ดแล้ว
| รหัส | ใจความ | จาก |
|---|---|---|
| T6 | เปลี่ยน resolver ไม่ลบงานที่ทำไปแล้ว | T1 · provenance |
| T10 | เวลาที่นิ่งอยู่ก็มีต้นทุน | AX2 · AX3 |
| T11 | บทสนทนามีความชัดและความเก่าของตัวเอง | AX4 · AX1 |
| T12 | ยิ่งมั่นใจว่าเป็นใคร ยิ่งทำได้กว้าง | AX1 · AX5 |
| T13 | ประวัติที่เก็บมีต้นทุน ต้องตัดแต่ง | T1 · AX2 |
| T14 | ไม่รู้บทสนทนา เดาเจตนาไม่ได้ | AX4 |
| T15 | สั่งให้ชัด = ให้ context ครบ | AX5 · T9 |
| T16 | ทุกข้อความผ่าน 10 ด่านก่อนลงมือ | AX1–AX5 · T9 · T14 |
| T17 | ความจำเลือนตามเวลา จับได้แค่ความแน่ใจ | AX1 · AX3 |
แกนที่คนสับสนบ่อย: T1 = ต้นทุนการทำงาน (compute) · T13 = ต้นทุนการถือครอง (storage) — คนละเรื่อง ไม่ขัดกัน
Pipeline — 10 ด่าน (T16)
ทุกข้อความผ่านด่านที่กำหนดไว้แน่นอนก่อน LLM ถูกเรียก · แต่ละด่าน derive จาก axiom:
| # | ด่าน | ทำอะไร | จาก |
|---|---|---|---|
| 1 | noise filter | drop ถ้าไม่มีภาษาที่รู้จัก | AX5 |
| 2 | thread resolve | รู้ context ก่อน | AX4 |
| 3 | identity | confidence → ขอบเขต mandate | T12 |
| 4 | clarity check | block ถ้า < threshold | AX5 · T9 |
| 5 | idle detect | escalate ถ้านิ่งเกิน | T10 |
| 6 | select mandate | block ถ้าไม่มี mandate ตรง | T15 |
| 7 | constraint | ทำได้ในทรัพยากรที่มีไหม | AX2 |
| 8 | blast radius | external + irreversible → human | T8 |
| 9 | ack decide | รอผลจริง ไม่ใช่แค่ส่ง | AX3 · T7 |
| 10 | dispatch | ส่งให้ resolver ลงมือ | AX2 |
ด่าน clarity (4) มาก่อนด่าน constraint (7) เสมอ — ไม่มีประโยชน์ที่จะเช็คว่า “ทำได้ไหม” ถ้ายังไม่รู้ว่า “จะทำอะไร” (T9)
Corollaries
| รหัส | ใจความ | จาก |
|---|---|---|
| C1 | ออกแบบจากสิ่งที่เกิดจริง ไม่ใช่สิ่งที่คาดว่าจะมี | AX1 · T4 |
| C2 | ผูกกับ Unix เพราะเป็น interaction surface ที่มีอยู่แล้ว | C1 · T4 |
| C3 | รู้ขอบเขตงานก่อน แล้วค่อยเลือกจุด optimize | T3 · T5 |
| C4 | Local ก่อน Cloud เสมอ | AX2 · T1 |
| C5 | งานเดินทางข้ามเครื่องได้ สภาพแวดล้อมไม่เดินทาง | AX1 · T6 |
| C8 | หน่วยของความหมายคือบทสนทนา ไม่ใช่ข้อความเดี่ยว | AX4 · T14 |
| C9 | ประวัติไม่ใช่ที่เก็บฟรี | T13 · AX2 |
| C12 | loop เริ่มได้เมื่อมีครบสาม: channel + mandate + resolver | AX2 · AX5 · C11 |
| C13 | ความซับซ้อนอยู่ข้างใน ไม่ใช่ข้างหน้า | C10 · T4 |
| C14 | channel คือหูของ resolver | C12 · AX4 |
C6 · C7 · C10 · C11 เป็น corollary สากล อยู่ที่ Systems
Design
ไม่ใช่สิ่งที่ axiom บังคับ แต่คือ choice ที่ axioms ทำให้สมเหตุสมผลที่สุด
Parcel — primitive เดียวของระบบ (AX1 · T6)
Parcel = {
form: bytes ← สิ่งที่ทำไปแล้ว
manifest: Context ← สิ่งที่รออยู่
provenance: CommitRecord[] ← ประวัติ immutable
}
Parcel = data เดินทางผ่านระบบได้เสมอ · ResolverContext = runtime ไม่เดินทาง · CommitOperation = boundary ที่นิ่งคั่นสองอย่าง
Memory — สามระดับ (AX1 · AX2 · AX4)
L1 — Raw observation ลบได้ (log ชั่วคราว · TTL + evict)
L2 — Distilled ลืมยากแต่ decay ได้ (weight = e^(−λ·days))
L3 — Core pattern update ได้ถ้าผิด
L2 คือการอนุมาน ไม่ใช่ข้อเท็จจริง — “ชอบกาแฟร้อน” = น่าจะจริง (confidence=0.78) ไม่ใช่ จริงแน่นอน · และการอนุมานที่พูดออกไปเปลี่ยน state ของลูกค้า → ใช้เงียบๆ เพื่อตัดสินใจเท่านั้น (Observer Effect · AX3)
รอยต่อ
รอยต่อคือจุดที่ระบบไปต่อกับของจริง · ส่วนใหญ่เป็นรอยต่อตื้น — ของจริงเติมค่าครั้งเดียวก็กลายเป็น setting แล้วปิด
แต่มีรอยต่อหนึ่งที่ปิดไม่ได้เลย — ความจำของระบบกับของจริงที่มันอ้างถึง · ของจริงขยับเองได้ (AX3) และการกลับไปเช็กก็เปลี่ยนสิ่งที่วัด (Observer Effect) ช่องว่างนี้จึงไม่มีวันปิดสนิท (T17) · รอยต่อที่เหลืออยู่จริงจึงเป็นเรื่องเดียว — ความแน่ใจของความจำ
ที่ยังเปิดอยู่คือ จะทำให้ความแน่ใจนั้นโผล่ให้เห็นและจัดการยังไง · เพราะความแน่ใจของแต่ละความจำไม่เท่ากัน ระบบจึงแสดงมันไม่เท่ากัน — เงียบกับของที่ยังสด ยกขึ้นเฉพาะของที่ความแน่ใจตก ให้เจ้าของยืนยันเมื่อว่าง · ไม่มีอะไรน่าสงสัยก็ไม่ต้องถาม
ผลคือระบบที่บอกได้ว่าจำอะไรไว้ และไม่แน่ใจกับอันไหน
สองเหตุการณ์ที่ยังเปิดอยู่ — ทั้งคู่คือเหตุการณ์ที่ขยับความแน่ใจ ไม่ใช่ชนิดของความจำ:
- เรียนจากคำติ — เหตุการณ์ที่ แก้ ความแน่ใจ · ลูกค้าบ่น → รู้ว่าความจำหรือการตัดสินใจไหนผิด → ปรับ · แก่นคือ credit assignment: โทษให้ถูกตัวจากสัญญาณที่กำกวม เบาบาง และมาช้า
- เครื่องมือเปลี่ยน — เหตุการณ์ที่ ลด ความแน่ใจ · ความจำที่เรียนจากพฤติกรรมเก่าของเครื่องมืออาจผิดเมื่อเครื่องมือเปลี่ยน → ต้องรู้ว่าความจำชิ้นไหนผูกกับเครื่องมือไหน แล้วดึงความแน่ใจลงให้ทบทวน
หลักของชั้นนี้: เริ่มจากสิ่งที่วัดได้ → ปล่อยให้ structure emerge → ค่อย tune · กฎที่เขียนก่อนมี data มักผิด จึงให้ของจริงเป็นคนตั้งค่าตรงรอยต่อ (สอดคล้อง C13)