AENET.cloud PUBLIC GATEWAY
K.PUBLIC.GATEWAY
system-detail K.PUBLIC.SYSTEM

ui-contract

UI Contract

แหล่งความจริงเดียวสำหรับโครงสร้าง UI สาธารณะ — หน้า การนำทาง คอมโพเนนต์ พิกัด สถานะ มอชัน สี ตัวพิมพ์ และภาษา — ที่ทั้งเรนเดอร์เว็บและ Swift ใช้ร่วมกัน

สถานะ: active อัปเดตล่าสุด: 2026-08-16

รหัสระบบ

ui-contract

สถานะ

active

ชั้นสถาปัตยกรรม

  • L2 แอปพลิเคชันสาธารณะ (UI contract)

ข้อมูลนำเข้า

  • โทเคนการออกแบบ (design/), แถลงรีลีส (release/), ไฟล์ภาษา

ผลลัพธ์

  • JSON UI contract ที่เรนเดอร์เว็บและ Swift ใช้

อินเทอร์เฟซสาธารณะ

  • ui-contract/manifest.json + JSON สัญญา + schemas/

ระบบที่เชื่อมต่อ

ขอบเขตความปลอดภัย

โครงสร้าง UI สาธารณะเท่านั้น ไม่เคยเป็นแหล่งความจริงของ AENET Core และไม่มีข้อมูลส่วนตัว

ทิศทางข้อมูล

แหล่งออกแบบ/รีลีส → UI contract → เรนเดอร์ (เว็บ, Swift) ทางเดียว สาธารณะ

คืออะไร

ทำให้ทุกหน้าสาธารณะเป็นเรนเดอร์ของระบบเดียว เพื่อให้เว็บและ Swift สอดคล้องกันและการอัปเดตไม่ทำลายเซสชันผู้เยี่ยมชม

ทำไม

เรนเดอร์สองตัว (เว็บ + Swift) เคยเสี่ยงที่จะแยกออกจากกัน UI Contract แก้ด้วยแหล่ง JSON ความจริงเดียว บวกความเข้ากันได้ของรีลีสและการย้อนกลับ

อย่างไร

แหล่งออกแบบ/รีลีส → UI contract → เรนเดอร์ (เว็บ, Swift) ทางเดียว สาธารณะ

  • กำหนดสัญญาหน้า การนำทาง คอมโพเนนต์ พิกัด สถานะ มอชัน สี ตัวพิมพ์ และภาษา
  • ให้สคีมาสำหรับการตรวจสอบ
  • รองรับรีลีสแบบมีเวอร์ชันพร้อมการตรวจความเข้ากันได้
  • ขับเรนเดอร์เว็บและ Swift จาก JSON เดียวกัน

ตัวอย่าง

โมเดลหน้าเดียว (ui-contract/pages.json + blocks.json) ถูกเรนเดอร์โดยทั้งเว็บเชลล์และ Swift UI เพื่อให้สองพื้นผิวคงความเข้ากันได้

ข้อมูลนำเข้า

  • โทเคนการออกแบบ (design/), แถลงรีลีส (release/), ไฟล์ภาษา

ผลลัพธ์

  • JSON UI contract ที่เรนเดอร์เว็บและ Swift ใช้

สิ่งที่พึ่งพา

aenet-cloud-publicxgridrgbm

วงจรชีวิต

  • UI contract v1
  • UI contract แบบรวม (v0.5)
  • UI ยืดหยุ่น + รีลีสแบบมีเวอร์ชัน

กรณีใช้งาน

  • เว็บและ Swift เรนเดอร์โมเดลหน้าเดียวกัน
  • ความเข้ากันได้ของรีลีสคุมการอัปเดตโดยไม่ทำลายเซสชัน
  • สถานะข้อมูลกันส่วนที่ล้มเหลวไม่ให้ทำให้หน้าว่างทั้งหน้า

ข้อจำกัด

  • โครงสร้าง UI สาธารณะเท่านั้น — ไม่เคยเป็นความจริงของ core
  • เรนเดอร์ต้องเข้ากันได้กับ major ของสคีมาที่รองรับ

คำถามที่ผู้คนถาม

คำถามเหล่านี้ตอบโดยเนื้อหาบนหน้านี้

  • AENET UI Contract คืออะไร?
  • เว็บและ Swift สอดคล้องกันได้อย่างไร?
  • UI contract กำหนดอะไรบ้าง?
  • รีลีสแบบมีเวอร์ชันปกป้องเซสชันผู้เยี่ยมชมอย่างไร?

หลักฐาน

เฉพาะสถานะที่ตรวจสอบแล้ว — ไม่มีอะไรบนหน้านี้คือการคาดการณ์

  • ui-contract/manifest.json
  • ui-contract/*.json
  • docs/UI_CONTRACT.md
  • docs/RESILIENT_UI.md
  • docs/RELEASE_COMPATIBILITY.md

ขั้นตอนถัดไป