يمكن أن يكون تدفق الغسق المُحكَم صحيحًا ومع ذلك يكون الشيء الخاطئ الذي لا أريد أن أنسبه كإيداع. وهذا هو فخ الماسح الضوئي الذي سأحمي نفسي منه أولًا. إن moonlightHistory(receiver) ليست موجّهًا لـ“إيداعات العملاء”. يمكن أن تُرجع تحويلات Moonlight مباشرة، أو مدفوعات العقود، أو عمليات الاسترداد، أو سحوبات التكديس (staking)، أو تحويلات Phoenix إلى Moonlight؛ لأن جميعها يمكنها زيادة نفس الحساب العام.

لذلك لا أستطيع اختزال الإدخال إلى “المستلم مطابق والقيمة > 0”.

بالنسبة لإيداع Moonlight مباشر، أحتاج إلى حدث عقد التحويل نفسه: موضوع moonlight، reverted false، المستقبل المتوقع، وقيمة موجبة. يحذّر Dusk أيضًا من التخمين لعائلة المعاملة عبر عدّ الأحداث؛ لأن معاملة واحدة قد تُصدر أحداث عقود إضافية دون أن يغيّر ذلك ما هي عليه بالفعل.

النتيجة تكون مزعجة في محاسبة الحيازة (custody). إذا كان ماسحي الضوئي ينسب كل تدفق داخِلٍ مُحكم، فقد يدخل استرداد داخلي أو سحب تكديس إلى نفس مسار دفتر الأستاذ مثل أموال العملاء الطازجة. يكون رصيد السلسلة صحيحًا بينما تصبح التزامات عميلي غير صحيحة.

أفضل أن أرفض تدفقًا غير مألوف بدلًا من أن أناديه إيداعًا بصمت.

في Dusk، يخبرني finalized أن المال تحرك. ونوع الحدث يخبرني لماذا.

#dusk $DUSK @Dusk