ما تعيده قراءة عامة
getSettlement وgetSettlements وgetReservation وgetReservations
وgetDispute وgetDisputes قراءات مفتوحة غير مصادَق عليها ولم تعد تعيد
هوية الأطراف. يقرأ طرفٌ سجلاته كاملةً عبر
طرق إثبات المحفظة.
لماذا التنقيح لا المصادقة
مستكشِف يعرض حجم التسويات وحالاتها وتوقيتها هو عرض عام مشروع لشبكة عامة. وضع توقيع أمامه سيكسر ذلك بينما يدفع كل مصمِّم عائدًا إلى gossip الخام، وهو ما لا يحقق شيئًا. ما لم يحتجه المستكشِف قط هو مَن — لذا تُبقي القراءة العامة كل شيء عدا الهوية.
ما تجمّعه الهوية هو مخطط التداول، والحجة ضد تسليمه معروضة كاملةً في صفحة قراءات إثبات المحفظة: في سوق فيات ندّ لندّ، معرفة أي تاجر تعود إليه محفظة دائمًا ومن هم زبائن تاجر مشغول المنتظمون مسألة سلامة جسدية لا تفضيل. كان استدعاء واحد غير مصادَق عليه يُستخدم لإعادة بنائه.
كم يساوي هذا بصدق
تُنشر هذه السجلات عبر gossip إلى كل عقدة. أي أحد يشغّل واحدةً يقرؤها كلها،
والتنقيح لا يغيّر ذلك. ما يُحمى هو سهولة الاستعلام — الفرق بين تنفيذ
curl لعقدة وصول عامة لشخص آخر وإقامة عقدة لفهرسة الشبكة. ذلك الفرق هو
معظم ما يتكوّن منه الحصاد العَرَضي.
قول ذلك بوضوح يهم أكثر مما قد يبدو: مُكامِل يعتقد أن هذه السجلات سرّية سيبني شيئًا يتّكئ على ضمان لا يقدّمه البروتوكول.
الأشكال
Settlement
| مُحتفَظ به | مُزال |
|---|---|
id, reservation_id, amount, state | buyer, buyer_public_key |
escrow_release_signature | seller, seller_public_key |
payment_submitted_at, merchant_responded_at | payment_reference |
payment_discrepancy, created_at, updated_at |
يبقى escrow_release_signature لأنه يسمّي معاملة على السلسلة يمكن لأي
أحد قراءتها بالفعل على Solana، وهو ما يجعل التسوية قابلةً للفحص بشكل
مستقل.
payment_reference أسوأ الإزالتين على الأرجح: فهو نص حر يضع فيه مشترٍ
مرجعه المصرفي الخاص، لذا يحمل روتينيًا اسمًا حقيقيًا أو رقم حساب.
Reservation
| مُحتفَظ به | مُزال |
|---|---|
id, advertisement_id, amount, state | requester |
requested_at, updated_at, expires_at | requester_public_key |
يُبقى advertisement_id عمدًا. فالإعلان عرض عام ويحمل بالفعل معرّف قرين
تاجره على كل صف من دفتر الطلبات، فيكشف طرفًا واحدًا من حافة لم تكن خاصة
قط. ما لا يكشفه هو الطرف الآخر — وهو ما يجعلها حافة.
Dispute
| مُحتفَظ به | مُزال |
|---|---|
id, settlement_id, status, resolution | buyer، seller، opener ومفاتيحهم |
required_arbitrators, arbitrators_seated | reason |
commitments، reveals (أعداد) | arbitrators, arbitrator_keys |
onchain_execution_signature | الالتزامات والكشوف الفردية |
opened_at, updated_at | أعلام اتفاق التسوية المتبادلة |
لاحظ أن commitments وreveals هنا أعداد، لا قوائم — بما يكفي كي
يُظهر مستكشِف قضيةً تتقدم، دون ربط صوت أحدٍ باسمه.
ثلاثة أسباب منفصلة لما يُسقَط. الأطراف، لأن النزاع هو الحالة التي تكون
فيها معرفة من تخاصم مع من أوضح ما يستحق إساءة الاستخدام. reason، لأنه
نص حر عن خلاف حقيقي على مال حقيقي ويسمّي أشخاصًا وبنوكًا ومراجع كأمر
معتاد. قوائم المحكّمين، لأن المحكّم مزوّد مسجَّل هويته ليست سرًّا بذاتها
— لكن أي محكّم سحب أي قضية، وكيف صوّت هو تحديدًا الاقتران الذي يجعل
الضغط على أحدهم مجديًا. أعلام التسوية المتبادلة تذهب معهم: «البائع وافق
والمشتري لم يوافق» موقف تفاوضي، ونشره للمراقبين يغيّر تفاوضًا بين شخصين.
إن كنت تضيف حقلًا
ينتمي حقل إلى عرض عام فقط إن قال شيئًا عن الصفقة لا عن الأشخاص. عند الشك يبقى خارجًا: إضافة واحد لاحقًا ملاحظة إصدار، وإزالة واحد إفصاح حدث بالفعل.