SDK ARC-89 برای ترایعنت آماده است، اما رجیستری میننت هنوز مشخص نیست
SDK تایپاسکریپتی بنیاد Algorand برای ARC-89، توصیف داراییها را بهجای یک فایل خارج از زنجیره، در فضای ذخیرهسازی باکس یک اپلیکیشن رجیستری نگه میدارد. این SDK روی ترایعنت کار میکند؛ رجیستری آن در ۲۷ اکتبر ۲۰ رکورد داشت، اما ورودی استقرار میننت در مشخصات این استاندارد هنوز «TBD» است.

توسعهدهندهای که میخواهد توصیف دارایی Algorand روی زنجیره باشد، نه روی یک میزبان فایل، حالا یک بسته تایپاسکریپت برای این کار در اختیار دارد. SDK asa-metadata-registry-ts1 کلاینتی برای ARC-892 یعنی رجیستری فراداده ASA است؛ یک اپلیکیشن واحد که فضای ذخیرهسازی باکس آن برای هر دارایی یک رکورد نگه میدارد و کلید هر رکورد شناسه هشتبایتی دارایی است. بنیاد Algorand3 از این استاندارد حمایت میکند و SDK را منتشر کرده است.
بر اساس مستندات این بسته، خواندن یک رکورد با یک فراخوانی به نود یا از طریق یک شبیهسازی انجام میشود که همان چیزی را برمیگرداند که یک قرارداد هوشمند میبیند. این بسته رکوردها را ایجاد، جایگزین و حذف میکند، فرادادههای بزرگ را به تکهها تقسیم میکند و داراییهایی را که با قراردادهای قدیمیتر ARC-3، ARC-19 و ARC-69 توصیف شدهاند، منتقل میکند. انتشار اخیر فقط یک تغییر کوچک داشت: v1.0.0-beta.104 که در ۲۱ اکتبر منتشر شد، تنها یک رفع باگ و بهروزرسانی ابزار ساخت برای رفع یک هشدار امنیتی با شدت بالا داشت. تغییر مهمتر یک روز قبل آمد: نسخه ناسازگار v1.0.0-beta.95 که طبق یادداشتهای انتشار، قراردادهای نسخه ۱.۰.۰ رجیستری را روی AVM نسخه ۱۳ هدف میگیرد.
چگونه یک رکورد روی زنجیره قرار میگیرد
فیلدهای توصیفی یک Algorand Standard Asset هنگام ساخت ثابت میشوند: نام، نام واحد، عرضه کل، اعشار و URL. آنچه خریدار میخواند، یعنی تصویر، توضیحات و ویژگیها، باید جای دیگری میماند: در یک فایل IPFS پشت همان URL، یا در یک یادداشت JSON روی تراکنش پیکربندی. رجیستری بخش کوچکتر و ساختاریافته را داخل وضعیت زنجیره میگذارد. هر رکورد یک هدر ثابت ۵۱6 بایتی دارد که شامل پرچمهای برگشتپذیر و برگشتناپذیر و یک هش است که محتوای آن را به رکورد پیوند میدهد. خواندن از طریق algod، یعنی API نود، یا مستقیماً از یک قرارداد هوشمند دیگر روی AVM انجام میشود.
این مسیر آخر ارزش توقف دارد. قراردادی که بتواند رکورد یک دارایی را در همان گروهی بخواند که دارایی را جابهجا میکند، میتواند هنگام تسویه بر اساس ویژگیهای آن عمل کند، بهجای اینکه به یک منبع خارج از زنجیره اعتماد کند. AVM نسخه ۱۳7 که همراه Go-Algorand نسخه ۵.۰.۰8 در ماه اوت عرضه شد، opcodeهای باکس «خارجی» را برای خواندن باکسهای اپلیکیشن دیگر اضافه کرد.
هزینه آن چقدر است
پولی که اینجا درگیر است یک سپرده است، نه کارمزد. در کوکبوک SDK، ساخت یک رکورد ۱۱۷ بایتی حداقل موجودیای برابر با ۷۲٬۹۰۰9 میکرو ALGO یا ۰.۰۷۲۹ ALGO را نشان میدهد. مثال حذف آن برای یک رکورد کوچکتر ۳۷٬۷۰۰10 میکرو ALGO برمیگرداند. مشخصات این مبلغ را از یک هزینه ثابت بهعلاوه یک نرخ هر بایت ضربدر اندازه تغییر محاسبه میکند؛ این اندازه شامل کلید باکس، هدر و فراداده است. هر دو پارامتر را برای خواندن کلاینتها در دسترس قرار میدهد. سپرده هنگام حذف رکورد بازپس گرفته میشود.
جای خالی میننت
سه جا میتواند نام یک رجیستری میننت را ببرد و هر سه خالی هستند. جدول استقرار مشخصات برای میننت «TBD» دارد. فایل استقرار SDK شناسه اپلیکیشن میننت را null گذاشته و با این توضیح که «mainnet app id is TBD» است. یک ایشوی باز11 که مراحل بعد از استقرار را فهرست میکند، با این خط تمام میشود: «منتظر استقرار رجیستری روی میننت.12»
نویسنده این را نزدیک میداند. کوزیمو باسی که با نام کاربری @cusma_b مینویسد، در ۲۰ اکتبر نوشت که ARC-89 به «میننت نزدیک میشود» و SDKهای پایتون و تایپاسکریپت «به v1.0.013 بهروز شدهاند و به انتشار نزدیک میشوند». یک پولریکوئستی که او در مشخصات ادغام کرد میگوید این تغییر «آخرین شکافهای ARC-89 را پیش از استقرار روی میننت میبندد14».
دو رجیستری ترایعنت، و یکی از آنها بهروز است
SDK به اپلیکیشن ترایعنت با شناسه 77296835415 اشاره میکند. این اپلیکیشن روی ترایعنت وجود دارد، حذف نشده و فضای باکس آن در ۲۷ اکتبر ۲۰ رکورد فراداده داشت. صفحه ARC-89 در پورتال توسعهدهندگان Algorand هنوز اپلیکیشن 7533240841617 را معرفی میکند و فیلد نسخه رکورد را «Last Modified Round» مینامد. مشخصات و SDK از ۷۷۲۹۶۸۳۵۴ و نام «Revision» استفاده میکنند. هر دو اپلیکیشن روی ترایعنت وجود دارند و هیچکدام حذف نشدهاند. توسعهدهندهای که از پورتال پیروی کند، روی اپلیکیشن قدیمیتر مینویسد.
Lora18، اکسپلورری که همراه AlgoKit عرضه میشود، در اوت توسط PXke گزارش شد که میتواند یک رکورد رجیستری را در نسخه 2.4.019-beta بخواند.
نصب پیشفرض یک جانگهدار است
پیش از نصب، یک نکته بستهبندی ارزش دانستن دارد. در npm، صفحه بسته20 نشان میدهد که هر دو برچسب «latest» و «beta» به نسخه ۰.۰.۱-beta.0 اشاره میکنند؛ یک انتشار ۲۷ مارس که خودش را «placeholder برای asa-metadata-registry-sdk در Algorand» توصیف میکند. کد کاری روی برچسب «main» و در نسخه ۱.۰.۰-beta.10 قرار دارد. طبق زمانهای انتشار npm، بین ۲۷ آوریل و ۲۰ اکتبر هیچ نسخهای منتشر نشد. با این حال مخزن در حال حرکت بود: صفحه انتشار beta.5 نشان میدهد که از آن زمان 11521 کامیت به main اضافه شده است.
رکورد چه چیزی را تضمین میکند و چه چیزی را نه
رجیستری تعیین میکند چه کسی میتواند بنویسد، یک رکورد حداکثر چقدر بزرگ باشد و آیا قابل تغییر است. مجوز به آدرس مدیر دارایی داده میشود، نه سازنده آن. مدیر میتواند یک رکورد را تغییرناپذیر اعلام کند و مشخصات میگوید خود رجیستری پس از استقرار هرگز نباید بهروز شود. رجیستری بدنه فراداده را بهصورت بایتهای مبهم در نظر میگیرد، بنابراین مصرفکنندگان باید رکورد و ادعاهای پرچمهای آن را پیش از اعتماد اعتبارسنجی کنند. نه مشخصات، نه مخزن مرجع و نه مخزن تایپاسکریپت به هیچ ممیزی امنیتی اشاره نمیکنند.
استفاده چقدر است
استفاده کم است، اما قابل اندازهگیری. بسته npm تا ۲۷ اکتبر در هفته گذشته ۳۶ دانلود و در ماه گذشته ۹۶ دانلود ثبت کرده است.
- رکوردهای فراداده در TestNet: 20 رکورد.
- حداقل موجودی برای یک رکورد کوچک: 72,900 microALGO.
- دانلودهای SDK در ماه گذشته: 96 دانلود.
فایل پذیرش22 خود استاندارد هنوز هیچ کیف پول، ابزار، زیرساخت یا dapp ای را فهرست نکرده و تنها یک کاوشگر در حال ساخت دارد. سرتیتر مشخصات هنوز «Last Call» را با مهلت ۱ فوریه ۲۰۲۶ نشان میدهد.23
توسعهدهندهای که امروز SDK را امتحان میکند، برچسب main را پین میکند، به اپلیکیشن ۷۷۲۹۶۸۳۵۴ اشاره میکند و روی ترایعنت کار میکند.
منابع
- انتشار v1.0.0-beta.10 · algorandfoundation/asa-metadata-registry-ts · GitHub4
- github.com1
- ARCs/ARCs/arc-0089.md در main · algorandfoundation/ARCs · GitHub2
- انتشار v1.0.0-beta.9 · algorandfoundation/asa-metadata-registry-ts · GitHub5
- registry.npmjs.org20
- feat(deployments): add the MainNet registry deployment · Issue #133 · algorandfoundation/asa-metadata-registry-ts1124
- raw.githubusercontent.com: /algorandfoundation/ARCs/main/adoption/arc-0089.yaml22
- ARC-89: AVM 13, global revision tracker, content-only metadata hash, canonical discovery by cusma · Pull Request #481 ·25
- raw.githubusercontent.com: /algorandfoundation/asa-metadata-registry-ts/main/docs/cookbook.md26
- انتشار v1.0.0 · algorandfoundation/arc89 · GitHub27
- MainNet and TestNet Update: Go-Algorand 5.0.0 - Announcements - Algorand28
- x.com29
- انتشار v1.0.0-beta.5 · algorandfoundation/asa-metadata-registry-ts · GitHub30
- Issues · algorandfoundation/asa-metadata-registry-ts · GitHub31
۱۸ رقم این گزارش بررسی شده است. ۲ مورد مستقیماً از زنجیره خوانده شد.دیدن همهٔ بررسیها
منابع
- 1asa-metadata-registry-ts github.com↩
- 2ARC-89 github.com↩
- 3بنیاد Algorand github.com↩
- 4v1.0.0-beta.10 github.com↩
- 5v1.0.0-beta.9 github.com↩
- 11یک ایشوی باز github.com↩
- 15772968354 lora.algokit.io↩
- 16753324084 lora.algokit.io↩
- 18Lora lora.algokit.io↩
- 20صفحه بسته registry.npmjs.org↩
- 22پذیرش raw.githubusercontent.com↩
- 25ARC-89: AVM 13, global revision tracker, content-only metadata hash, canonical discovery by cusma · Pull Request #481 · github.com↩
- 26raw.githubusercontent.com/algorandfoundation/asa-metadata-registry-ts/main/docs/cookbook.md raw.githubusercontent.com↩
- 27انتشار v1.0.0 · algorandfoundation/arc89 · GitHub github.com↩
- 28MainNet and TestNet Update: Go-Algorand 5.0.0 - Announcements - Algorand forum.algorand.co↩
- 29x.com/cusma_b/status/2112579605584355771 x.com↩
- 30انتشار v1.0.0-beta.5 · algorandfoundation/asa-metadata-registry-ts · GitHub github.com↩
- 31Issues · algorandfoundation/asa-metadata-registry-ts · GitHub github.com↩