🔧 ผลิตภัณฑ์และเทคโนโลยี
สิ่งที่กำลังรันอยู่คือหลักฐานของทุกอย่าง
ไวต์เปเปอร์โทเคนส่วนใหญ่บรรยายซอฟต์แวร์ที่ยังไม่มีอยู่จริง บทนี้บรรยายซอฟต์แวร์ที่คุณดาวน์โหลดได้วันนี้ แอป iOS เนทีฟสามตัวเปิดตัวและใช้งานได้บน App Store เว็บแพลตฟอร์มอยู่ในโปรดักชัน และบริการโทเคน Solana กำลัง mint NFT จริงและยืนยันการชำระเงินจริงบน mainnet อยู่แล้ว สมาร์ตคอนแทรกต์สองตัวที่จะกำกับเศรษฐศาสตร์ระยะยาวของโทเคนเขียนโค้ดเสร็จสมบูรณ์และกำลังเดินผ่านการตรวจสอบแบบเป็นขั้น — และเราพูดแค่นั้นเป๊ะ ไม่เกินจริง
ภาพรวมของชุดผลิตภัณฑ์
ทุกไคลเอนต์ — iOS หรือเว็บ — คุยกับแบ็กเอนด์ Django เดียว และมีเพียงแบ็กเอนด์ที่คุยกับ Solana แอปไม่แตะเชนโดยตรง: กฎคือ แอป → Django → Solana เสมอ
⛩️ Matsuri — แอปคอนซูเมอร์
แอปหลักสำหรับแขกและผู้พำนัก: การจอง การชำระเงิน ช้อปปิง คราวด์ฟันดิง ไลฟ์สตรีม การขุด และเส้นชีวิตยามภัยพิบัติแบบออฟไลน์เต็มรูปแบบ — ในที่เดียว เป็นมิตรกับโหมดเกสต์
แอปจัดระเบียบรอบห้าแท็บ — อีเวนต์ ร้านค้า ร้านอาหาร คราวด์ฟันดิง MyPage — โดยไลฟ์สตรีม การค้นหา กระเป๋าเงิน NFT และฮับภัยพิบัติเข้าถึงได้จากทุกที่ แต่ละพื้นผิวมีบทของตัวเอง; ตารางนี้เป็นเพียงแผนที่
| พื้นผิว | สรุปในหนึ่งบรรทัด |
|---|---|
| อีเวนต์และประสบการณ์ | จองทัวร์ อีเวนต์ มีตอัพ และคลาสเรียน; ตั๋ว QR และการเช็คอินโดยเจ้าหน้าที่ — ประสบการณ์ |
| ร้านอาหาร | การค้นพบพร้อมฟิลเตอร์ข้อจำกัดด้านอาหาร บวกเอนจินจองโต๊ะจริง — ร้านอาหาร |
| ร้านค้า | มาร์เก็ตเพลสผู้ขายที่ผ่านการยืนยัน KYC พร้อมคำสั่งซื้อเอสโครว์และสินค้า NFT — ร้านค้า |
| คราวด์ฟันดิง | แคมเปญ All-or-Nothing พร้อมแคชแบ็ก MTC ตามระดับชั้น — คราวด์ฟันดิง |
| ไลฟ์ | สตรีมพร้อมแชต ดรอป และทิปห้าช่องทาง — ไลฟ์ |
| การขุด กระเป๋าเงิน และ NFT | 参拝マイニング (sanpai mining — การขุดด้วยการไหว้สักการะ), AR omikuji, กระเป๋าเงิน MTC, แกลเลอรี NFT — การขุด |
| เส้นชีวิตยามภัยพิบัติ | แผนที่ศูนย์อพยพออฟไลน์ ข้อความ mesh สัญญาณ SOS — เส้นชีวิตยามภัยพิบัติ |
| การชำระเงิน | Stripe (บัตร, Apple Pay), Solana Pay / Phantom, ยอด MTC — ราคาถูกคำนวณซ้ำฝั่งเซิร์ฟเวอร์เสมอ |
นอกเหนือจากฟีเจอร์ แอปพิงแพลตฟอร์ม iOS อย่างเต็มที่: วิดเจ็ตหน้าจอโฮม, Siri App Intents, การทำดัชนี Spotlight, Live Activities สำหรับคำสั่งซื้อ คำมั่น และไลฟ์สตรีม และพุชโนติฟิเคชันที่โลคัลไลซ์ฝั่งเซิร์ฟเวอร์รายผู้ใช้
เส้นชีวิตยามภัยพิบัติใต้ฝากระโปรง
บท เส้นชีวิตยามภัยพิบัติ ครอบคลุมว่ามันทำอะไร; ตรงนี้คือทำไมมันทำงานได้เมื่อทุกอย่างอื่นล้มเหลว ข้อจำกัดการออกแบบโหดและเรียบง่าย: เครื่องมือเส้นชีวิตทุกตัวต้องทำงานออฟไลน์เต็มรูปแบบและไม่ต้องล็อกอิน
ชุดข้อมูลศูนย์อพยพทั่วประเทศบรรจุในไบนารีของแอป — แผนที่ศูนย์อพยพ รายการระยะทาง และเข็มทิศ Shelter Compass แบบ great-circle ไม่ต้องใช้เครือข่ายเลย คู่มือความปลอดภัย 5 ภาษาถูกบันเดิลแบบเดียวกัน
เมื่อเครือข่ายมือถือตาย โทรศัพท์กลายเป็นเครือข่าย: บอร์ดข่าวสาร peer-to-peer mesh ออฟไลน์ รีเลย์โพสต์จากอุปกรณ์สู่อุปกรณ์ด้วย การรีเลย์หลายฮ็อป และทุกข้อความถูก ลงนามเชิงวิทยาการเข้ารหัส โดยอุปกรณ์ต้นทาง — โพสต์ที่เดินทางห้าฮ็อปจึงถูกปลอมระหว่างทางไม่ได้
เซอร์วิส DisasterWatchdog เช็คฟีดสาธารณะของ JMA (กรมอุตุนิยมวิทยาญี่ปุ่น) เมื่อเปิดแอปและกลับมาหน้าจอ; เหตุการณ์ใหญ่เปิด Disaster Hub เต็มจออัตโนมัติ — สำหรับเกสต์และผู้ล็อกอินเหมือนกัน
"ฉันปลอดภัย" ออกไปผ่านช่องทางใดก็ตามที่รอด: mesh, SMS, share sheet ของระบบ หรือ web171 — กระดานข้อความภัยพิบัติทางการของญี่ปุ่น
🛡️ GCF Admin — แอปผู้ดำเนินการ
แอปปฏิบัติการสำหรับสมาชิกและสตาฟของ GCF (Global Community Friends): ทุกอย่างที่เว็บพอร์ทัลแอดมิน (gcf.works) ทำได้ บนโทรศัพท์
| พื้นผิว | สรุปในหนึ่งบรรทัด |
|---|---|
| แดชบอร์ด | การ์ด KPI แผนภูมิรายได้ ควิกแอกชัน |
| สมาชิก | รายชื่อสมาชิก รายละเอียด และการจัดการระดับชั้น — GCF |
| รายได้ | การติดตามคอมมิชชันและการจัดการการจ่ายเงิน |
| คอนเทนต์ | สร้างและเผยแพร่อีเวนต์ บทความ พอดแคสต์ และวิดีโอ |
| ช่องไกด์ | เผยแพร่และติดตามมาร์เก็ตเพลสไกด์ — ประสบการณ์ |
| สถานที่ศักดิ์สิทธิ์และบีคอน | การจัดการสถานที่และการตั้งค่า Sponsored Beacon — การขุด |
| การตั้งค่าการขุด | อัตรา omikuji เป็น basis points ตัวคูณไดนามิกปรับเรียลไทม์ — การขุด |
| การแนะนำเพื่อน | การสร้าง QR โค้ดแบรนด์และการติดตามการแนะนำ |
แอปนี้คือที่ที่เศรษฐกิจการขุดถูกบังคับทิศทาง: ตัวคูณไดนามิก (0.01×–50×) ที่ผลักผู้มาเยือนสู่ภูมิภาคประชากรลดลง ตารางความน่าจะเป็น omikuji และ Sponsored Beacons ที่เทศบาลและร้านค้าให้ทุน — ทั้งหมดถูกดำเนินการจากที่นี่ ไม่ใช่ hardcode
📰 J-Times — แอปสื่อ
"日本を、世界へ / Japan, to the World" แอปสื่อวัฒนธรรม: บทความ พอดแคสต์ และวิดีโอ — ที่ที่การอ่านเองก็สร้าง MTC
| พื้นผิว | สรุปในหนึ่งบรรทัด |
|---|---|
| บทความ | รีดเดอร์เต็มรูปแบบพร้อมความคืบหน้าการอ่าน; สแตกห้องข่าวรวม AI สร้างบทความและ TTS — สื่อ |
| พอดแคสต์ | 6 ซีรีส์ รวม Japan Decoded และ Tech Japan Forward |
| วิดีโอ | ซีรีส์บวกวิดีโอสั้น |
| Media mining | การอ่าน การฟัง การชม และควิซจ่าย MTC — เพดานรายวัน 50 MTC — สื่อ |
| แพลน | ระดับผู้อ่าน Free / Premium / Pro; ไอเทมพรีเมียมขายครั้งเดียวผ่าน Stripe |
การมีส่วนร่วมถูกติดตามความคืบหน้ารายผู้ใช้รายคอนเทนต์ พร้อมอัตรารางวัลที่แอดมินปรับได้ คูลดาวน์ 5 นาทีระหว่างรางวัล และเพดานรายวัน 50 MTC — การขุดที่ให้รางวัลความสนใจโดยไม่กลายเป็นก๊อกน้ำ
📦 หนึ่งแกนกลางร่วม: JCCore
ทั้งสามแอปสร้างบน JCCore — Swift package ที่แชร์ร่วมกัน — หนึ่งอิมพลีเมนเทชันของงานประปาเสี่ยงสูง แทนสามสำเนาที่ค่อย ๆ ลอยห่างจากกัน
| โมดูล | บทบาท |
|---|---|
| JCAuth | การเก็บโทเคนบน Keychain การจัดการเซสชัน การยืนยันตัวตนไบโอเมตริก (Face ID / Touch ID) |
| JCNetworking | ไคลเอนต์ API แบบ type-safe รองรับ WebSocket การแปลง wire เป็น snake_case อัตโนมัติ |
| JCModels | โมเดลข้อมูลร่วม — ผู้ใช้ โทเคน pagination แพลนสมาชิกภาพ |
| JCDesign | โปรโตคอลธีมและดีไซน์โทเคน (ระยะห่าง รัศมี) |
| JCUtilities | ยูทิลิตีวันที่และสตริง |
ผลลัพธ์หนึ่งที่ผู้ใช้รู้สึกได้: บันไดสมาชิกภาพ 4 ระดับชั้นฉบับทางการ (เลเวลและระดับชั้น) หมายถึงสิ่งเดียวกันในทุกแอป เพราะมันถูกถอดรหัสด้วยโค้ดเดียวกัน
🖥️ แพลตฟอร์มแบ็กเอนด์
แบ็กเอนด์คือ Django monolith เดียวที่รันเศรษฐกิจทั้งหมด — การจอง เอสโครว์ บัญชีคราวด์ฟันดิง ไลฟ์สตรีม การขุด และทุกเยนทุก MTC ที่เคลื่อนไหว
- เฟรมเวิร์ก
- Django 4.2 + Django REST Framework
- งานอะซิงก์
- คิวงาน Celery สำหรับงานเบื้องหลัง
- เรียลไทม์
- WebSocket ของ Django Channels — แชต ปฏิสัมพันธ์สด presence
- ฐานข้อมูล
- PostgreSQL
- ไลฟ์วิดีโอ
- LiveKit โฮสต์เองบน Hetzner — ไม่พึ่งสตรีมมิงบุคคลที่สาม
- ช่องทางเฟียต
- Stripe สำหรับบัตรและ Apple Pay; Stripe Connect สำหรับ onboarding และการจ่ายเงินผู้ขาย
- ความปลอดภัยการชำระเงิน
- Idempotency key บังคับในทุกการเรียกชำระเงินที่เปลี่ยนสถานะ
- การกำหนดราคา
- ราคาถูกคำนวณซ้ำฝั่งเซิร์ฟเวอร์เสมอ — ไคลเอนต์ตั้งราคาเองไม่ได้
- การเข้าถึงเชน
- แอป → Django → Solana ไม่มีข้อยกเว้น
โฟลว์ชำระเงินคริปโตแสดงกฎสถาปัตยกรรมในทางปฏิบัติ แอปไม่เคยสร้างหรือยืนยันธุรกรรม Solana เอง — มันส่งผู้ใช้ให้ Phantom และส่งหลักฐานให้ Django
หากผู้ใช้ถูกขัดจังหวะกลางการชำระเงิน — สายเข้า แบตหมด เน็ตหลุด — แอปจะรีซูมการชำระเงิน Phantom ที่ค้างอยู่เมื่อเปิดครั้งถัดไป และ idempotency key การันตีว่าการจองถูกชำระบัญชีครั้งเดียวพอดี
🔏 บริการโทเคน — mint ตามอุปสงค์
สแตกสามชั้นโดยเฉพาะ (ใช้งานจริงบน mainnet) จัดการทุกอย่างที่แตะ Solana จริง:
- Minting API (Django + DRF + Celery) — เอนด์พอยต์ยืนยันด้วย API key ที่แพลตฟอร์ม Matsuri, GCF และ J-Times เรียกเพื่อออก NFT/SBT อัตโนมัติ ปฏิบัติการโทเคน และการจัดการเมตาดาตาออนเชน
- Solana signer (Node.js + Fastify) — บริการเดียวที่ถือความสามารถลงนาม: การสร้างและโอนโทเคน SPL การเพิกถอนสิทธิ์ การอัปเดตเมตาดาตา การ mint SBT และการจัดการ Metaplex Core Collection พร้อม retry/backoff รองรับความหน่วงของ indexer
- แดชบอร์ดแอดมิน (Next.js) — การจัดการเหรียญและเมตาดาตา: การอัปโหลด Arweave สำหรับโฮสต์เมตาดาตาถาวร ข้อมูลครีเอเตอร์ และแฟล็กการยืนยัน
นี่คือสแตกที่ mint แอสเซตจริงของแพลตฟอร์ม: NFT ดรอปจากการเข้าร่วมอีเวนต์, NFT omikuji 御朱印 (goshuin — ตราประทับวัด) และใบรับรอง SBT ของ GCF Platinum — ทั้งหมดคือแอสเซต Metaplex Core จัดกลุ่มเป็นคอลเลกชันเพื่อให้กระเป๋าอย่าง Phantom แสดงผลถูกต้อง และตรวจสอบได้บน Solscan ทั้งหมด
🔐 ความปลอดภัยและความเป็นส่วนตัว
โทเคนยืนยันตัวตนอยู่แบบเข้ารหัสใน iOS Keychain; Face ID / Touch ID เกตการกระทำที่ละเอียดอ่อน
HTTPS ทุกที่พร้อม certificate pinning ระหว่างแอปกับแบ็กเอนด์
แพลตฟอร์มไม่เคยถือ private key ของผู้ใช้ การลงนามถูกมอบหมายให้ Phantom — แอปส่งคำขอ กระเป๋าลงนาม แบ็กเอนด์ยืนยันออนเชน
การเชื่อมกระเป๋ากับบัญชีต้องลงนาม challenge ใหม่ที่เซิร์ฟเวอร์ออก ลายเซ็นที่ถูกดักจึงถูกนำมา replay เพื่อเคลมกระเป๋าของคนอื่นไม่ได้
การเช็คอิน worship mining บังคับ geofence 200 m การตรวจความแม่นยำ GPS และความใกล้เคียง และหนึ่งเช็คอินต่อผู้ใช้ต่อสถานที่ต่อวัน — บอตวาร์ปไม่ได้อะไรเลย
ยอด MTC อยู่ในบัญชีแยกประเภทแบบ append-only ที่ผ่านการตรวจสอบ; การถอนสู่ self-custody ผ่านลิมิต คูลดาวน์ และการคัดกรองการฉ้อโกง
✅ คุณภาพวิศวกรรม
คอนแทรกต์ Rust ตั้งมาตรฐานตัวเองเข้มกว่าแอป: ศูนย์คำเตือน clippy ศูนย์ unwrap หรือ panic ในโค้ดโปรดักชัน และ property-based tests เคียงข้าง unit tests — เพราะโค้ดคอนแทรกต์ เมื่อ deploy แล้ว ส่งแพตช์วันอังคารไม่ได้
⚖️ สมาร์ตคอนแทรกต์ — การออกแบบโอเพนซอร์ส
ออนเชนวันนี้: โทเคน MTC SPL (900M คงที่ สิทธิ์ mint และ freeze ถูกเพิกถอน), การล็อก 550M MTC ใน Streamflow (cliff 2027-06-01), LP Raydium MTC/SOL เริ่มต้น และการยืนยันชำระเงิน Solana Pay / Phantom ในแอปโปรดักชัน ไม่มีอะไรอื่น
โปรแกรมด้านล่าง เขียนโค้ดเสร็จสมบูรณ์และยังไม่ deploy ไปยังคลัสเตอร์ใด ความปลอดภัยดำเนินเป็น การตรวจสอบแบบเป็นขั้นกับ Hashlock (เริ่มเมษายน 2026, TEAMZ Summit Tokyo): Phase 1 ครอบคลุม matsuri-buyback — แพ็กเกจส่งมอบสมบูรณ์ ตั้งเป้าเริ่ม สิงหาคม 2026 ผลการตรวจกันยายน รายงานสุดท้ายตุลาคม deploy บน mainnet ตั้งเป้า ต.ค.–ธ.ค. 2026 หลังการลิสต์บน DEX Phase 1.5 ครอบคลุม matsuri-vesting บวก matsuri-distribution ใน Q1 2027 เริ่มใช้งานที่ Grand Unlock วันที่ 2027-06-01 เราไม่บรรยายสิ่งใดในนี้ว่า "ผ่านการตรวจสอบแล้ว" — การเตรียมการตรวจสอบเสร็จสมบูรณ์และการตรวจสอบแบบเป็นขั้นกำลังดำเนินอยู่
โค้ดคอนแทรกต์ทั้งหมดเป็นโอเพนซอร์ส: github.com/Cootakahashi/matsuri-contracts ความปลอดภัยตั้งอยู่บนการออกแบบที่มองเห็นได้ ไม่ใช่ความคลุมเครือ สถาปัตยกรรมเป้าหมาย:
matsuri-buyback — ปากทางรับรายได้
โปรแกรมที่เปลี่ยน พันธะการซื้อคืน — 20% ของยอดขาย Matsuri HQ และ 25% ของค่าสมาชิก GCF — ให้เป็นอุปสงค์ MTC ออนเชน คุณสมบัตินิยามตัวมัน: มันคือ สายพานลำเลียง ไม่ใช่คลัง
- บทบาท
- สวอปแล้วส่งต่อรายได้เป็น MTC แบบอะตอมิก — รับโทเคนใน whitelist สวอป ส่งต่อ
- เส้นทางสวอป
- Jupiter v6 ผ่าน CPI พร้อม program id ของ Jupiter ที่ pin ตายตัว
- โทเคนที่รับ
- MTC, USDC, SOL ตอนเปิดตัว — whitelist จัดการโดย authority
- การป้องกัน slippage
- สามชั้น: bps ขณะรัน ภายใน cap ตอน init ที่แก้ไม่ได้ ภายในเพดานแข็งคอมไพล์ไทม์ 10%
- Timelock
- การเปลี่ยนผู้รับและ authority เป็นโฟลว์ propose/execute/cancel จำกัดช่วง 24 ชั่วโมง – 30 วัน
- ไม่เคยถือยอดคงเหลือ
- บังคับ post-condition ยอดศูนย์หลังทุกสวอป — ไม่มีอะไรให้ขโมยระหว่างธุรกรรม
- ขนาดและเทสต์
- 1,797 LOC, 17 เทสต์ (13 unit + 4 property)
- สถานะ
- เขียนโค้ดเสร็จสมบูรณ์ เป้าหมายการตรวจสอบ Hashlock Phase 1 — ยังไม่ deploy
ใน Phase 1 ผู้รับการส่งต่อคือ Squads multisig; ใน Phase 2 มันกลายเป็น Buyback Splitter ที่กระจายรายได้สู่การอัดฉีด LP และพูลระบบนิเวศ
matsuri-vesting — หนึ่งวอลต์ หนึ่งผู้รับ หนึ่งนาฬิกา
โปรแกรมที่ดำเนินกำหนดการ Grand Unlock มันน่าเบื่อโดยเจตนา: ไม่มีไมเนอร์ ไม่มีการให้คะแนน ไม่มีการเคลม — แค่เลขคณิตบนนาฬิกา
- การออกแบบ
- หนึ่งวอลต์ หนึ่งผู้รับคุ้มครองด้วย timelock หนึ่งนาฬิกา
- พูล
- 550M MTC มาถึงจาก cliff ของ Streamflow วันที่ 2027-06-01
- อีพอค
- อีพอค 730 วัน (2 ปี); แต่ละอีพอคปล่อย 50% ของพูลที่เหลือ
- เส้นทางปล่อย
- advance_epoch_and_release เป็น crank แบบ permissionless — ใครก็ทริกเกอร์การปล่อยที่ถึงกำหนดได้
- ความไม่เปลี่ยนแปลง
- แฟกเตอร์ลดครึ่ง ความยาวอีพอค และพูลรวม ล็อกตอน initialize และเปลี่ยนไม่ได้ตลอดกาล
- ขนาดและเทสต์
- 1,629 LOC, 26 เทสต์ (22 unit + 4 property)
- สถานะ
- เขียนโค้ดเสร็จสมบูรณ์ เป้าหมายการตรวจสอบ Phase 1.5 (Q1 2027) — ยังไม่ deploy
เอกสารอ้างอิงการออกแบบ Phase 2
อีกสามโปรแกรมมีอยู่เป็น เอกสารอ้างอิงการออกแบบแบบเปิด — เผยแพร่เพื่อความโปร่งใส ทำเครื่องหมายชัดเจนว่าไม่ใช่สำหรับ deploy และมีกำหนดเสริมความแข็งแกร่งในเฟสการตรวจสอบถัดไป:
| โปรแกรม | เจตนาการออกแบบ |
|---|---|
| matsuri-worship | เอนจินเส้นทางการไหว้สักการะ — คู่ออนเชนของตัวคูณต้านโอเวอร์ทัวริซึมใน การขุด |
| matsuri-referral | ต้นไม้แนะนำเพื่อน 縁 (en — สายสัมพันธ์) สำหรับ En-Mining — การขุด |
| matsuri-distribution | การกระจายแบบลดครึ่งพร้อมการให้คะแนนรายไมเนอร์ — กำลังถูกขัดเกลาเข้าสู่ขอบเขตการตรวจสอบ Phase 1.5 |
Distribution Router ของ Phase 2 (การกระจาย vesting สู่พูลไหว้สักการะ แนะนำเพื่อน และทั่วไป) และ Buyback Splitter ยังอยู่ขั้นการออกแบบเท่านั้น จนกว่าแต่ละโปรแกรมจะผ่านเฟสการตรวจสอบของมัน ตรรกะที่เกี่ยวข้องรันออฟเชนใน Django ในฐานะออราเคิล — กฎเดียวกัน อัปเกรดสู่การดำเนินการแบบ trustless เป็นขั้น ๆ
หลักการออกแบบร่วม
- เลขคณิตแบบ checked ทุกที่ — ไม่มีคณิตศาสตร์ unchecked และศูนย์ unwrap หรือ panic ในเส้นทางโค้ดโปรดักชัน
- โมดูลคณิตศาสตร์บริสุทธิ์ — การคำนวณรางวัลและการปล่อยแยกอยู่ในโมดูล
mathที่ไร้ side-effect และถูกเทสต์อย่างถ้วนทั่ว - การแยกอำนาจ — authority เสนอการเปลี่ยนแปลงได้ผ่าน timelock ที่จำกัดช่วงเท่านั้น; pause หยุดโปรแกรมได้แต่ไม่มีวันเคลื่อนย้ายหรือยึดเงินได้
- เศรษฐศาสตร์ที่ไม่เปลี่ยนแปลง — พารามิเตอร์ที่นิยามความหายากของโทเคนถูกล็อกตอน initialize โดยเจตนา
แอปถูกส่งมอบแล้ว แบ็กเอนด์ใช้งานได้จริง คอนแทรกต์ถูกเขียน เทสต์ และเข้าคิวรอการตรวจสอบ สิ่งที่เหลือคือการเรียงลำดับ — และ โรดแมป วางมันไว้วันต่อวัน