Растём вместе

Примечания к выпуску

Всё новое в портале токенов CGW. Вы используете версию v0.27.0.

v0.27.0

Текущий

Места и благотворительные организации, доступ к CGW в режиме реального времени и улучшенное приложение GardenApp.

Теперь CoinGarden объединяет реальные экологические отчеты, поддержку сообщества и подтвержденные доказательства завершения проектов в разделе «Места и благотворительность». В этом релизе также реализована проверенная работа основной сети CGW в портале токенов, расширены инструменты для цветочного сообщества и ухода за цветами, а также повышена надежность кошелька, ИИ и административной панели.

Новый
  • Сервис Places & Charities позволяет людям сообщать о загрязненных или находящихся под угрозой исчезновения местах с фотографиями и координатами на карте, следить за ходом работ, поддерживать кампании CGW, предоставлять доказательства «до» и «после» и видеть подтвержденные результаты.
  • Каждое представленное место проходит повторную проверку с помощью ИИ. Четкие отчеты могут быть опубликованы напрямую, в то время как неясные, дублирующиеся, противоречивые или небезопасные отчеты остаются на усмотрение модераторов; ИИ никогда не открывает финансирование и не перемещает CGW.
  • Теперь достижения в области охраны окружающей среды отражаются в отчетности, поддержке сообщества, подтвержденных вкладах, проверенной уборке и экологических наградах в разделах «Профиль», «Достижения» и «Администрирование».
  • Теперь функция публичного обмена цветами включает в себя более подробные карточки цветов, описания владельцев, общедоступные профили садоводов, возможность подписки, значки избранных цветов, элементы управления копированием/распространением и непрерывную прокрутку для поиска.
  • Оформление заказа в Garden Plus, управление платежами, лимиты использования и напоминания о продлении доступны через существующие системы учета и оплаты.
  • Теперь портал токенов поддерживает вход через Google, связанные профили кошельков, возможность подписания документов о владении Ledger, совместное формирование вознаграждений администратора, а также прямой доступ к проверенным торговым площадкам и ликвидным ресурсам CGW.
Улучшено
  • Портал токенов и Центр администрирования считывают канонические данные о состоянии основной сети Solana (CGW), пуле, балансах, держателях, транзакциях, полномочиях и ссылках на рынки, а не устаревшие данные, существовавшие до запуска или являвшиеся временными заменителями.
  • Приложение GardenApp добавляет прямые действия по поливу, более понятную иерархию сада и цветов, преимущества подписки, зависящие от темы оформления, ярлыки на главной странице, компактные мобильные карточки и более полезные сводки активности в профиле.
  • Для идентификации и ухода за цветами используется расширенный, тщательно составленный каталог растений с проверенными названиями, описанием ухода, степенью достоверности и происхождением, при этом внесение исправлений остается под контролем садовника.
  • Административный центр добавляет более глубокие возможности для отслеживания активности пользователей и контента, модерацию мест и контроль финансирования, подтверждение наличия экологических значков, рабочие процессы распределения вознаграждений, аналитику и более надежные операции перевода.
  • Все три общедоступных сайта предоставляют согласованные документы обнаружения агентов только для чтения и данные измерений Google Analytics, не расширяя при этом доступ к личным данным учетных записей.
Зафиксированный
  • Восстановлена функция подписи транзакций Ledger для настольных компьютеров и исправлена проверка приоритетных настроек, добавленных в кошелек, при этом сохранены точные проверки запроса, подписи и воспроизведения. Адаптер мобильного кошелька для Android сохраняет встроенную функцию входа в систему, а обычные расширения кошельков сохраняют функцию подписи сообщений.
  • Запросы ИИ используют настроенный центральным поставщиком шлюз с исправленным таймаутом и резервным режимом; идентификация цветов никогда не подменяет результат сфабрикованным, если поставщики недоступны.
  • Фотографии общедоступных мест загружаются для анонимных посетителей, переходящих по прямым ссылкам, включая старые кэшированные URL-адреса медиафайлов; временные ошибки, связанные с частными фотографиями, не кэшируются после подтверждения, а предварительный просмотр мест в социальных сетях использует реальную обложку.
  • Теперь карточки с информацией о местах содержат большие фотографии, длинные заголовки, местоположения и элементы управления действиями в отдельных строках на узких экранах; карточки с информацией о профиле связаны с разделами «Места» и «Благотворительные организации».
  • В сентябрьских обновлениях были исправлены ошибки в CI, проверках манифеста основной сети, резервных вариантах данных токенов, мобильной навигации, постраничной навигации каталога, переводах и надежности общедоступных страниц.
Безопасность
  • Аутентификация кошелька криптографически проверяет отправленный сервером запрос и выбранный адрес, при этом каждый одноразовый код обрабатывается один раз; собственные поля SIWS остаются точными, а доказательства Ledger сохраняют строгую проверку только в формате Memo. Трансляция транзакций аутентификации не производится.
  • Взносы CGW остаются подписанными пользователем и учитываются только после проверки в блокчейне; выплаты по проектам и экологические вознаграждения остаются явными. Операции мультиподписи Squads не требуют наличия ключа подписи, хранящегося в приложении.
  • В режимах просмотра общественных мест и цветов отображаются только разрешенные общедоступные поля, конфиденциальные данные остаются в грубой форме там, где это необходимо, а сохраненные учетные данные ИИ/поставщика остаются нечитаемыми и хранятся на стороне сервера.
Документы
  • Документация по продукту, архитектуре, ИИ, базе данных, местам и благотворительным организациям, токенам и эксплуатации теперь отражает проверенное развертывание в основной сети Solana и текущее поведение поставляемого приложения.

v0.26.1

Восстановление мобильной навигации и подключения кошелька

Восстанавливает меню веб-сайта на телефонах, улучшает существующий коннектор мобильного кошелька и отображает кошельки, уже добавленные в учетную запись. Страницы каталога администратора корректно отображаются на узких экранах и обеспечивают постраничную навигацию. Текущая документация отражает двухэтапную церемонию запуска программ; основная сеть по-прежнему не развернута.

Улучшено
  • Приложения для токенов и цветов используют существующий мобильный коннектор. Уже связанные кошельки отображаются без запроса на их повторное добавление; лишние кнопки Phantom для передачи данных в браузер были удалены.
  • Закрытая панель навигации административной панели исключается из фокуса клавиатуры, а элемент управления меню идентифицирует свою выдвижную панель.
Зафиксированный
  • Общедоступное меню веб-сайта отображается и открывается на телефонах с увеличенными областями касания, а для закрытия используется клавиша Escape.
  • При входе в Android-кошельке ожидается подготовленный запрос подтверждения, прежде чем активировать действие подписи, а неудачные попытки подготавливают новый запрос подтверждения для повторной попытки.
  • На страницах каталога растений в административной панели используются адаптивные карточки, фильтры и таблицы консоли; теперь постраничная навигация каталога следует за требуемым смещением.
Документы
  • Текущие рекомендации отражают зафиксированное владельцем снятие временной блокировки обновления: две программы с Squads Vault 0 в качестве источника обновления. Более старые примечания к выпуску остаются историческими записями.
  • В плане выпуска различаются завершенные проверки приложений и нерешенные вопросы, касающиеся контроля и выполнения церемонии. Запуск основной сети CGW в рамках этого обновления не разрешен.

v0.26.0

Временная блокировка церемонии, трехстороннее воспроизведение сборок, вход в мобильный кошелек.

cgw-timelock получает реальную идентификацию в основной сети, набор тестов LiteSVM в формате 11 и место в генезисной последовательности; все три бинарных файла программы воспроизводятся побайтно двумя верификаторами и CI на этапе церемониального коммита 9c6e0f8; адаптер мобильного кошелька подключается к Android через нативный вход с помощью Solana; страница прав администратора отображает права доступа к программе и метаданным в режиме реального времени. Вердикт церемонии остается «НЕТ»: эмитент отказывается от юридической проверки, операционные шлюзы O1/O5/O6/O7 и C3 остаются открытыми, и запись в формате mainnet-beta не произошла.

Новый
  • cgw-timelock объявляет идентификатор церемонии EGu8yPEf…s48qi1M; tests-integration/tests/timelock.rs запускает 11 необходимых тестов на реальном исполняемом файле, включая реальное обновление загрузчика BPF, выполняемое через PDA timelock.
  • Инструментарий для проведения церемонии в основной сети развертывает три программы: @cgw/chain-config получает timelockProgram/timelockConfig, verify-mainnet-invariants.mjs подтверждает, что полномочия по обновлению системы вестинга/вознаграждений равны полномочиям TimelockConfig PDA (прямое несоответствие Vault 0) и полномочия по обновлению cgw-timelock равны полномочиям Vault 0, а консоль оператора, руководство по запуску, пакет для церемонии и церемония генезиса описывают ту же последовательность.
  • Файл build-attestation.mjs охватывает все три программы и отклоняет частичные аттестации; Павел А., Иван Г. и CI воспроизводят ошибки в файлах cgw_vesting.so 84c85be2…, cgw_rewards.so 10ec7188… и cgw_timelock.so 8de82668… в строке 9c6e0f8.
  • Сквозное командное тестирование Devnet: team-vesting-check.mjs (только для чтения; показало, что единственное расписание команды никогда не было востребовано, поскольку его бенефициаром является одноразовый ключ), team-claim-devnet.mjs (заявка только на devnet с тестовой парой ключей) и параметры URL на team-test-schedule-tool-gr2.html для бенефициара, контролируемого командой.
  • Мобильная версия: адаптер мобильного кошелька регистрируется на Android и подключается через нативную функцию solana:signIn — одну сессию кошелька, которая авторизует и подписывает данные. apps/api отправляет неограниченный запрос SIWS и проверяет подписанные байты, созданные кошельком (домен, адрес, утверждение, nonce, идентификатор запроса).
  • Полномочия администратора по использованию токенов: полномочия по обновлению программы и полномочия по обновлению метаданных теперь считываются в режиме реального времени (ProgramData PDA и учетная запись Metaplex) вместо сообщения «Неизвестно»; ожидаемые полномочия соответствуют манифесту (конфигурация временной блокировки PDA, если она записана, в противном случае — Vault 0).
Зафиксированный
  • ceremony.mjs repository.anchor утверждал отсутствие сопоставления программы основной сети, что являлось инвариантом до T8; теперь же он утверждает, что сопоставление существует, соответствует каждому скомпилированному declare_id! и не использует повторно идентификатор devnet.
  • Функция verify-fresh-program-identity.mjs отклоняет адреса кошельков (кандидаты на подписание, развертыватель, плательщик комиссии), предложенные в качестве идентификаторов программы.
  • Константы, сгенерированные cgw-rewards, используются с помощью утверждений const, что исправляет ошибку dead_code в rustc 1.98; константы кодов ошибок LiteSVM исправлены в обоих наборах тестов; CI кэширует цепочку инструментов Solana/Anchor.
Безопасность
  • В соответствии с разделом 2 T8, все три пары ключей программы хранятся на внешнем диске, зашифрованном с помощью BitLocker, с дополнительной зашифрованной копией; ключевой материал так и не был передан.
  • Юридические барьеры G2/G3 и барьер независимости подписавшего O3 остаются в состоянии WAIVED_BY_OWNER (2026-08-25) и по-прежнему блокируют вынесение вердикта; на странице публичных документов указано, что независимость подписавшего в настоящее время отсутствует.
Разработчик
  • Проверка аттестации, инвариантов, согласованности манифеста, контроллера и HTML-инструмента проходит по трем новым путям выполнения программ и выдает сообщение NOT_DEPLOYED; консоль оператора была проверена в режиме реального времени в Chrome из папки C:\projects по адресу c8af8ca.
  • В тестовой среде разработки не проверено: проверка типов pnpm/тесты для @cgw/api, @cgw/mobile и @cgw/chain-config, а также проверка на устройстве процесса входа в систему Android — в качестве контролирующих устройств выступают CI и телефон.

v0.25.8

Завершение процесса автодополнения кода в основной сети (T7-T9, инвариантный механизм, инструментарий PREPARE для проведения церемоний)

Закрывает все пункты проверки готовности основной сети, требующие завершения кода, и заменяет устаревший контроль за отчетами третьих сторон обязательным внутренним анализом выявленных недостатков, состязательным тестированием, двумя независимыми воспроизведениями сборки, моделированием и окончательными инвариантами. Вердикт церемонии остается прежним: НЕТ.

Новый
  • scripts/mainnet/verify-program-authorities.mjs (T7): независимо вычисляет ProgramData PDA для каждой производственной программы и сравнивает ее полномочия на обновление в реальном времени с ожидаемым значением, предоставленным оператором.
  • scripts/mainnet/verify-fresh-program-identity.mjs + docs/token/CGW_MAINNET_PROGRAM_ID_CEREMONY.md (T8): предотвращает повторное использование пары ключей программы devnet/localnet в качестве идентификатора основной сети; проверено самостоятельно.
  • scripts/mainnet/manifest-transition.mjs + verify-manifest-consistency.mjs (T9): CANDIDATE -> DEPLOYED -> INDEPENDENTLY_VERIFIED -> CANONICAL конечный автомат; канонический файл manifest.ts никогда не редактируется автоматически ни на одном этапе.
  • scripts/mainnet/verify-mainnet-invariants.mjs: механизм проверки инвариантов с помощью одной команды, охватывающий хеш генезиса, обе программы, отряды, майнинг, метаданные, все шесть хранилищ, КПК RewardsConfig/VestingConfig и перекрестную проверку готовности; вывод в формате JSON, завершение работы 0/1, без предупреждений о прохождении.
  • scripts/mainnet/evidence-record.mjs: стандартная схема записи доказательств и запись только для добавления данных на каждом необратимом этапе церемонии, с защитой имени поля секретного материала.
  • scripts/mainnet/prepare-mint-metadata-mainnet.mjs, prepare-vaults-mainnet.mjs, prepare-squads-mainnet.mjs, prepare-rewards-vesting-mainnet.mjs: ТОЛЬКО ПОДГОТОВКА + СИМУЛЯЦИЯ + ПРОВЕРКА, только открытые ключи (закрытый ключ никогда не загружается), смоделировано непосредственно на основе проверенных скриптов создания отрядов devnet Genesis Rehearsal #2 / канонических скриптов. Преднамеренно отсутствует путь отправки, в соответствии с существующей в этом репозитории архитектурой без развертывания в один клик.
  • scripts/mainnet/signer-ceremony-state.mjs: IDENTIFIED -> OWNERSHIP_PROVEN -> APPOINTED -> INDEPENDENCE_VERIFIED -> RECOVERY_VERIFIED -> CEREMONY_READY — конечный автомат для каждого подписанта, порядок операций контролируется и проверяется самостоятельно.
  • scripts/mainnet/authority-transition-matrix.mjs: OBJECT/CURRENT/EXPECTED/STATUS для каждого управляемого органа в основной сети, CURRENT всегда читается в реальном времени.
  • scripts/mainnet/verify-transaction-safety.mjs: статическая проверка безопасности каждого скрипта prepare-*-mainnet.mjs (свежий хеш блока, отсутствие постоянного одноразового числа, отсутствие широковещательной рассылки, отсутствие загрузки закрытого ключа, контроль симуляции, подтверждение вне репозитория).
  • scripts/mainnet/mainnet-readiness-score.mjs: сводка готовности по направлениям ИНЖЕНЕРИЯ/ХРАНЕНИЕ ДЕЯТЕЛЬНОСТИ/ЮРИДИЧЕСКИЕ ВОПРОСЫ/ЭКСПЛУАТАЦИЯ, не имеющая ограничивающего доступа, и явно никогда не отменяющая вердикт ceremony.mjs.
  • scripts/mainnet/mainnet-rpc-lib.mjs: общие, не зависящие от зависимостей примитивы RPC/manifest/base58, повторно используемые каждым новым скриптом выше.
  • scripts/mainnet/package.json: изолирует новые зависимости скриптов PREPARE/VERIFY: @solana/web3.js, @solana/spl-token, @metaplex-foundation/mpl-token-metadata и @sqds/multisig, повторяя собственную логику изоляции, используемую в scripts/devnet.
  • docs/token/CGW_DEVNET_MAINNET_GAP_MATRIX.md: полный контрольный список операций по переходу от devnet к mainnet для всех 30 возможностей церемонии.
Безопасность
  • Удален устаревший контрольный пункт G5 и соответствующее поле подтверждения частного контроля. В настоящее время обязательными доказательствами являются результаты внутренних проверок, состязательные тесты, воспроизводимые хеши SBF/IDL от двух независимых верификаторов, моделирование транзакций и окончательные инварианты в блокчейне.
  • Пять подтверждений права собственности Solflare + Ledger Nano S Plus, полученных в присутствии пяти свидетелей, позволяют O4 пройти проверку PASS; назначение подписанта, независимость и восстановление остаются отдельными этапами проверки.
Разработчик
  • Страница подтверждения права собственности Ledger теперь дублирует инструменты devnet с одним действием подключения и одним действием подписи. Solflare + Ledger Nano S Plus сгенерировал все пять точных подписей v0; последующий засвидетельствованный проход предоставил отдельные записи подтверждения на экране и подтверждения по второму каналу, а автономная проверка закрыла подтверждения управления ключом 5/5 с аппаратной подписью в режиме реального времени. Phantom отклонил ту же полезную нагрузку, что и транзакция, поэтому страница рекомендует проверенный путь Solflare. Назначение, независимость, восстановление и окончательное утверждение владения остаются отдельными этапами.
  • Каждый новый скрипт проходит проверку node --check; файлы verify-fresh-program-identity.mjs, signer-ceremony-state.mjs и verify-transaction-safety.mjs проходят реальное самотестирование/регрессионную проверку (а не просто проверку синтаксиса).
  • Программа verify-manifest-consistency.mjs была фактически запущена в рабочем репозитории и корректно сообщает о прохождении 11/11 структурных проверок, в то время как mainnet-beta остается NOT_DEPLOYED.
  • Программа mainnet-readiness-score.mjs была запущена и корректно показала результат 13/26, не изменяя окончательного вердикта.
  • Полный набор проверок pnpm lint, typecheck, build и package-test пройден успешно. Cargo и Anchor остаются недоступными на этом хосте. Изолированные зависимости Solana устанавливаются из файла блокировки, но их унаследованные рекомендации по-прежнему требуют удаления, а сборщикам требуется одноразовый devnet пробный запуск.
Документы
  • Блок mainnet-beta в файле packages/chain-config/src/manifest.ts остается полностью пустым/NOT_DEPLOYED.
  • Устаревший пакет взаимодействия с третьими сторонами и контрольный пункт были удалены. Вопросы, касающиеся правовых аспектов, токеномики, назначения/восстановления подписантов, разработки, сети, мониторинга и авторизации исполнения, остаются открытыми — 13 из 26 контрольных пунктов готовности остаются незавершенными.
  • Вердикт ceremony.mjs остается неизменным: НЕЛЬЗЯ; ничто в этом релизе не может подписать или передать транзакцию mainnet-beta.

v0.25.7

Встроенное устройство управления частной церемонией

Позволяет консоли localhost, доступной только для чтения, отслеживать частную запись контроллера по абсолютному пути на стороне сервера, не раскрывая её коду браузера и не разрешая транзакции.

Улучшено
  • Сервис обратной связи принимает параметр --control с существующим абсолютным путем к приватному файлу control.json и отображает проверки доказательств контроллера в рабочей области церемонии.
  • В разделе «Обзор» отображается статус подключения, и подготовка считается незавершенной до тех пор, пока не пройдут проверку схемы управления и привязки к репозиторию.
Безопасность
  • Приватный путь и содержимое записей остаются на стороне сервера; браузер по-прежнему не имеет возможностей загрузки, подписи, построения транзакций, записи RPC или широковещательной рассылки.

v0.25.6

Рабочее пространство для церемонии в основной сети

Добавляет последовательный список идентификации пяти кошельков и полную карту церемоний, создаваемую контроллером, при этом каждое действие транзакции в основной сети остается заблокированным.

Улучшено
  • Теперь локальная консоль основной сети сохраняет распознанные адреса-кандидаты Ledger при переключении учетных записей и навигации по страницам церемонии в рамках браузерной сессии.
  • В разделе «Обзор» теперь представлена двенадцатиэтапная карта подготовки, связывающая каждый этап запуска со страницей подтверждающих документов и достоверным статусом, полученным от ответственного диспетчера.
Безопасность
  • Идентификация сессии остается отдельной от хранения и авторизации, и пока основная сеть не запущена, не добавлены возможности подписания сообщений, построения транзакций, записи RPC или широковещательной рассылки.

v0.25.5

Финансирование плательщиков церемонии в основной сети

Регистрирует и проверяет каждого отдельного кандидата на оплату взносов в рамках программы Squads, доводя текущее финансирование церемонии до 7 SOL, в то время как запуск основной сети остается заблокированным за пределами других этапов запуска.

Улучшено
  • Теперь локальная консоль основной сети вычисляет и окончательно считывает обоих кандидатов на оплату церемонии, а также пять кандидатов на подписание Ledger.
  • В отчете о готовности к финансированию теперь отдельно указываются данные о 5 плательщиках сборов за развертывание SOL и 2 плательщиках сборов SOL, а общий баланс подготовки составляет 7 SOL.
Безопасность
  • Сгенерированные пакеты документов для церемонии обязательны для обоих рассмотренных кандидатов на роль плательщика и отклоняют замену плательщика, дублирование документов друг с другом или с любым подписантом, а также остатки средств ниже текущего минимального уровня финансирования.

v0.25.4

элементы управления для развертывания в основной сети

Регистрирует кандидата на развертывание в основной сети, назначенного оператором, проверяет наличие средств только для чтения в локальной консоли и усиливает проверки церемонии, не разрешая запись в основную сеть.

Улучшено
  • Пакеты документов для частных церемоний теперь привязаны к рассмотренному кандидату на развертывание и отклоняют случаи замены плательщика, дублирования ролей плательщика или комбинированного финансирования ниже текущего бюджета подготовки.
  • Теперь локальная консоль оператора основной сети считывает учетную запись и баланс потенциального развертывателя вместе с пятью Ledger кандидатами, при этом все транзакционные действия остаются отключенными.
Безопасность
  • Плательщик-кандидат остается отдельным от канонических адресов развертывания, хранения подписантов, будущего плательщика комиссий Squads и всех претензий на полномочия в блокчейне; основная сеть остается NOT_DEPLOYED.

v0.25.3

Автоматическая консоль оператора основной сети

Заменяет загрузку доказательств через браузер на самозагружающуюся консоль оператора основной сети в стиле devnet, которая автоматически проверяет состояние репозитория, манифеста, сети и подписывающего устройства, при этом все операции записи остаются заблокированными.

Новый
  • Сервис чтения, работающий только через локальную сеть, проверяет подлинность основной сети и все пять потенциальных учетных записей, при этом любые утвержденные учетные данные RPC хранятся вне кода браузера.
  • Phantom и Solflare могут идентифицировать подключенный публичный адрес по списку кандидатов, не раскрывая при этом никаких методов подписания или транзакций.
Улучшено
  • Теперь все 13 страниц основной сети открываются напрямую в автоматическом режиме просмотра сети, манифеста, подписанта, предварительных условий, блокировщиков и журналов без загрузки файлов в браузер или формы настройки RPC.
  • Теперь структура страницы соответствует успешным инструментам devnet: уведомление о жесткой блокировке, панель подписанта, пронумерованный шаг действия, статус предложения и обновление одним щелчком мыши.

v0.25.2

страницы с доказательствами оператора основной сети

Добавляет безопасный для производственной среды HTML-аналог для каждого имени файла оператора devnet, а также страницы подтверждения программ, хранилищ/резервирования и распределения ресурсов, специфичные для основной сети, которые остаются закрытыми до тех пор, пока не будут получены подтверждающие документы о церемонии.

Новый
  • В папке основной сети Solana теперь содержится 13 локально обслуживаемых страниц операторов, охватывающих программы, отряды, создание/метаданные/генезис хранилища, инициализацию протокола, распределение прав доступа, блокировки и операции с контролируемыми вознаграждениями.
  • На каждой странице можно просмотреть локально в браузере очищенные файлы управления церемонией, файлы предварительной проверки и файлы манифеста кандидатов, а также выполнить дополнительную проверку подлинности RPC, доступную только в рамках сессии.
Улучшено
  • Каждое имя HTML-файла devnet имеет явный аналог в основной сети; на страницах GR2 и disposable-test написано «НЕ ПРИМЕНИМО», вместо того чтобы предлагать скопировать код devnet или адреса.
  • Проверка на регрессию подтверждает отсутствие на страницах адресов devnet, интеграции с кошельком, библиотеки подписи, возможностей построения транзакций или широковещательной рассылки, а проверка браузером охватывает ширину экрана настольных компьютеров и мобильных телефонов.

v0.25.1

Управление церемонией закрытия основной сети в случае сбоя

Добавляет готовый к использованию оператором пакет документов для частной церемонии и автоматизированный контрольный пункт, запрещающий подписание документов или трансляцию, чтобы подготовку к запуску в основную сеть нельзя было принять за разрешение на запуск.

Новый
  • В рабочей области Solana теперь есть единое упорядоченное руководство по проведению церемонии запуска основной сети, генератор частных пакетов доказательств и контроллер, который проверяет все 27 этапов готовности, а также роли свидетелей, подтверждения, доказательства подписантов, проверенные хеши сборки, независимые представления RPC, финансирование и явную авторизацию.
Улучшено
  • Теперь запросы на определение владельца Ledger должны записываться в абсолютный частный каталог вне Git, исключая записи о подписантах и хранителе из исходного кода.
  • Контроллер церемонии по своей структуре доступен только для чтения: он сообщает о завершении операции, пока ворота открыты, и не содержит кода для работы с кошельком, подписи, развертывания или широковещательной рассылки.

v0.25.0

Проверка готовности подписантов к работе в производственной сети и обеспечение безопасности при запуске основной сети.

Включает в себя регистрацию пяти кандидатов на финансирование производства Ledger без преувеличения объема хранения, добавление отсутствующего шлюза подписанта в публичный отчет MiCA и усиление доказательств, необходимых перед любым запуском основной сети.

Улучшено
  • Министерство финансов, Министерство безопасности, дорожная карта и готовность к реализации MiCA пришли к согласию: пять финансируемых адресов Ledger назначены операторами в качестве кандидатов на производство, в то время как вопросы собственности, независимости, восстановления и официального назначения остаются открытыми.
  • Теперь данные о переходе на основную сеть и результатах церемонии позволяют отличить кошельки подписантов от будущих кошельков с мультиподписью Squads и Vault 0, а также требуют подтверждения хешей, проверок независимости, репетиции восстановления и отдельных доказательств финансирования со стороны развертывающей стороны.
  • Теперь каждый общедоступный маршрут Token тестируется в браузере в системе непрерывной интеграции (CI) во время сборки в продакшене, включая полное сканирование внутренних ссылок, проверку адаптивности, проверку ориентиров и сбоев в консоли/сети во время выполнения.
Зафиксированный
  • В общедоступную таблицу готовности MiCA теперь включен рабочий процесс по передаче прав на производство, на который ссылается отдельная строка завершения запуска, а устаревшие утверждения о том, что ключ к производству не был выбран, были удалены.
  • Защита от утечки канонического адреса теперь распространяется не только на саму систему создания ключей, программы и хранилища, но и на будущие хранилища Squads Vault 0, ключи участников и метаданные КПК.
  • Теперь ссылки на технические документы ведут к реальным маршрутам Token Portal, структурированные данные, специфичные для маршрута, больше не наследуют идентификатор главной страницы, а необязательная ссылка на Google корректно завершается с ошибкой при отсутствии учетных данных для работы в производственной среде.
  • Теперь для ограничения количества RPC-запросов в кошельках одного источника применяется почасовой лимит на каждого посетителя, обеспечивающий конфиденциальность, прежде чем будет исчерпана выделенная мощность провайдера Solana.

v0.24.0

Исправлены метаданные CGW Explorer, добавлен канонический модуль идентификации и привязаны адреса всех токенов администратора.

Устранена первопричина и исправлена ошибка, из-за которой Solana Explorer отображал токен CGW devnet как «Неизвестный», путем замены даты создания на дату, содержащую реальные метаданные блокчейна с момента создания; добавлена одна каноническая функция, которую теперь использует каждое приложение для идентификации токена; и все адреса кошельков/программ на страницах токенов администратора стали рабочими ссылками на Explorer.

Новый
  • @cgw/chain-config now exports getTokenIdentity(cluster) — one function that composes token name/symbol/network/decimals with each cluster's mint/program/metadata deployment state, so no app has to import both the token specification and the deployment manifest and combine their fields by hand.
Зафиксированный
  • В обозревателе токенов Solana токен CGW devnet больше не отображается как «Неизвестный токен» / «Нет символа» / «Не проверен». Основная причина: у исходного токена devnet был отозван право на создание токенов до того, как для него появилась учетная запись метаданных Metaplex в блокчейне, что делает прикрепление метаданных навсегда невозможным — это не задержка индексации или отсутствие записи в реестре.
  • Заменили канонический выпуск devnet токенов (Genesis Rehearsal #2) метаданными, прикрепленными в той же транзакции, что и создание выпуска, до того, как были затронуты полномочия на выпуск токенов. Новый выпуск, шесть хранилищ, профинансированных в точном соответствии со спецификацией токенов, суммарно составляющими полный объем предложения 1B, полномочия на выпуск токенов отозваны, а полномочия на обновление метаданных переданы в хранилище Squads Vault0 с мультиподписью — все это было независимо перепроверено с помощью чтения RPC в реальном времени, никогда не используя данные из собственного журнала скрипта.
  • Теперь каждый адрес на каждой странице административных токенов (банк, хранилища, полномочия, мультиподпись отрядов/хранилище0/участники, идентификаторы программ/полномочия на обновление, конфигурация вестинга/наград/адреса хранилищ/бенефициаров/заявителей, адреса учетных записей токенов/владельцев держателей — около 20 адресов на 7 страницах) представляет собой реальную ссылку на Explorer, а не просто сокращенный текст.
Разработчик
  • Новый файл identity.test.ts обеспечивает постоянную синхронизацию URL-адреса значка токена с реальным JSON-файлом метаданных портала токенов, поэтому эти два параметра никогда больше не смогут незаметно расходиться.

v0.23.0

Более безопасные подписки и честные лимиты тарифных планов.

Обеспечивает идемпотентность процесса оформления заказа и восстановления веб-хуков Stripe, устанавливает ограничения на количество фотографий, сохраняет результаты работы в пределах лимитов тарифного плана и отображает только фактически доступные платные функции.

Улучшено
  • Подсказки по ограничению плана сохраняют выбранное фото или форму цветка в неизменном виде и ссылаются на подписку, не заменяя черновик страницы.
  • Ограничения на количество фотографий для каждого цветка применяются автоматически, и Garden Plus отображает только те функции, которые работают корректно.
  • Теперь панель «Цвета» ожидает полного закрытия меню и поддерживает клавишу Escape, выделение фокуса на клавиатуре и восстановление фокуса.
Зафиксированный
  • Теперь при оформлении заказа в Stripe используется одно устойчивое намерение совершить покупку и один существующий клиент Stripe, что предотвращает одновременные дублирующиеся сеансы подписки.
  • Прерванные и не порядковые веб-хуки Stripe могут безопасно восстанавливаться без преждевременной пометки предоставленных прав.
  • Ссылки для возврата товара при оформлении заказа перестают подтверждать успешную оплату до тех пор, пока сервер не подтвердит активный доступ к Garden Plus, использующему Stripe.
  • Теперь в настройках ежемесячной и годовой подписки отображается четкое состояние выбора, а персонализированные кэши Discover удаляются при выходе из системы.

v0.22.0

История платежей администратора, исправление проблемы с подписными картами и усиление защиты веб-перехватчика Stripe.

В карточке «Подписка администратора» теперь отображается полная история платежей пользователя, исправлена ошибка, из-за которой она всегда отображала «Недоступно» независимо от реального состояния подписки, а веб-перехватчик платежей Stripe теперь имеет ограничение по количеству запросов для предотвращения злоупотреблений.

Новый
  • Центр администрирования: в карточке подписки пользователя теперь отображается полная история платежей — каждый заказ (статус, способ оплаты, сумма, даты) с соответствующими событиями, а также события на уровне подписки, такие как продление, не привязанные к конкретному заказу.
Улучшено
  • Теперь для конечной точки веб-перехватчика платежей Stripe установлено ограничение скорости запросов на каждый подключающийся адрес, что завершает запланированное усиление безопасности системы подписок/выставления счетов.
Зафиксированный
  • Центр администрирования: ранее в карточке подписки пользователя всегда отображалось «Недоступно», независимо от реального тарифного плана, статуса или использования — даже несмотря на то, что предоставление и отзыв бесплатного доступа всегда работали корректно. Теперь отображаются точные данные в режиме реального времени.

v0.21.0

Доступ для гостей, уход за садом, хронология фотосъемки цветов и надежность перевода.

Теперь неактивные посетители могут видеть каталог значков и местную погоду, ваш профиль напрямую связан с вашими садами/цветами/значками, сады можно безопасно удалять как с цветами, так и без них, цветы теперь поддерживают полную фотохронологию с подписями, а также исправлена ошибка, из-за которой страница «Переводы администратора» зависала на 0%.

Новый
  • Посетители, не завершившие регистрацию, могут просмотреть полный каталог значков за участие и приблизительную погоду в своем регионе, используя тематическое приглашение для регистрации вместо жесткой стены.
  • Постоянно отображаемая запись «Установить приложение» в боковой панели мобильного приложения с тематическими инструкциями для iOS, в то время как на платформе отсутствует встроенное окно запроса на установку.
  • Теперь при удалении сада предлагаются два четких и понятных варианта: удалить только сад (цветы остаются, но переназначаются в категорию «без сада») или удалить сад и все цветы в нем, при этом для варианта с удалением сада предусмотрено дополнительное подтверждение.
  • Новый раздел «Цветы без сада» с настоящей постраничной навигацией, а также функцией перемещения в сад.
  • Теперь для цветов поддерживается полная фотохронология: несколько фотографий каждого цветка, упорядоченных в хронологическом порядке, каждая с необязательной подписью и настраиваемым изображением обложки, а также безопасное удаление каждого изображения.
Улучшено
  • Страница профиля переупорядочена таким образом, что первыми вы увидите разделы «Достижения», «Сады», «Цветы» и «Значки», каждый из которых представляет собой отдельную ссылку на свою страницу.
  • Была проверена и устранена ошибка, из-за которой в очереди проверки администратором ИИ возникало ложное срабатывание флага «на странице может быть указана цена или информация о распродаже».
  • На страницах «Обзор администратора», «Транзакции с токенами» и «Владельцы токенов» больше не отображается сообщение «токенов CGW не существует», если реальной причиной является временный сбой RPC.
Зафиксированный
  • На странице «Администрирование переводов» больше не происходит зависания языков на 0%. Перевод, находившийся в процессе выполнения, когда его экземпляр Worker перезапустился, теперь автоматически повторяется, а не зависает навсегда, и кнопка «Повторить неудачные попытки» больше не ухудшает ситуацию с зависшим переводом.
  • Отсутствие ключа API для перевода теперь отображается в виде четкого, требующего принятия мер статуса, а не как неявный, необъяснимый пробел в охвате.

v0.20.0

Уход за растениями с учетом погодных условий, надежность администрирования и укрепление Solana RPC.

Теперь GardenApp предупреждает, когда реальный прогноз погоды указывает на риск заморозков или жары для ваших цветов, погода обновляется ежечасно через общий кэш вместо каждых шести часов, а также исправлен ряд проблем с администрированием и надежностью платформы.

Новый
  • В настоящее время рекомендации по уходу за цветами включают в себя оповещения о погодных условиях (риск заморозков, тепловой стресс или рекомендации по поливу при сильных дождях), основанные на вашем текущем прогнозе погоды и особенностях данного вида цветка — это лишь рекомендации, никогда не являющиеся заявлениями о токсичности или медицинских показаниях.
Улучшено
  • Теперь информация о погоде обновляется каждый час вместо каждых шести, при этом один звонок от провайдера используется всеми пользователями в одном районе, а не один звонок на пользователя.
  • В названии местоположения на карточке погоды город больше не отображается как отдельный регион («Пловдив, Пловдив»), а всегда указывается страна.
  • На странице «Запуски ИИ в администрировании» четко обозначен запуск, в котором не был выполнен вызов модели, и его можно отфильтровать по триггеру.
  • На странице "Состояние административной панели" отображается сообщение о снижении уровня доступности из-за недоступности Solana RPC, вместо пяти зеленых галочек без объяснения причин.
Зафиксированный
  • Страница «Значки администратора» больше не 404s.
  • На страницах вознаграждений и распределения токенов общедоступного портала теперь используется та же выделенная конфигурация Solana RPC, что и остальная часть платформы, вместо того, чтобы незаметно переключаться на другую конечную точку.
  • Теперь сбой в работе функции автозаполнения Places отображается как ошибка, а не как «результаты не найдены».
  • Теперь две внутренние ошибки конфигурации (отсутствие внутреннего токена API, отсутствие конфигурации для входа в систему нативного типа) регистрируются как исключения, а не отображаются без уведомления.
  • Теперь в портале токенов есть граница ошибок, поэтому сбой страницы отображается операторам, а не просто стандартный экран с ошибкой.

v0.19.0

Многоязычная поддержка, Места и Пыльца

Теперь приложение GardenApp по запросу переводит тексты на болгарский, испанский, немецкий и французский языки, позволяет владельцу сада искать его реальное местоположение с помощью Google Places и показывает уровень пыльцы в этом месте.

Новый
  • Интерфейс GardenApp может отображаться на болгарском, испанском, немецком или французском языках, переводиться по запросу и кэшироваться, с мгновенным переключением на английский язык, пока выполняется перевод.
  • Теперь местоположение сада можно найти и выбрать с помощью функции автозаполнения Google Places, а не только путем ввода текста от руки.
  • На странице с подробной информацией о саде, в котором выбрано определенное место, отображается уровень пыльцы в близлежащих местах (трава/дерево/сорняки).
  • Центр администрирования: на новой странице «Переводы» отображается информация о покрытии кэша для каждого языка, а также возможность для оператора очистить кэш языка или повторить неудачные переводы.
Улучшено
  • В административном центре отображается информация о том, настроена ли каждая из трех дополнительных интеграций с Google (Перевод, Места, Pollen), при этом ключ настройки никогда не раскрывается.

v0.18.2

восстановление поставщика метеорологических услуг

Местные погодные условия сохраняют зону покрытия пользователя во время прогнозируемого отключения электроэнергии и могут восстановиться с помощью независимого резервного поставщика услуг.

Улучшено
  • Теперь при плановых сбоях, вызванных погодными условиями, сообщается о категориях, обеспечивающих конфиденциальность, что позволяет операторам различать сбои, связанные с таймаутом, сетью, реакцией провайдера и сохранением работоспособности, без регистрации данных о пользователе или местоположении.
  • Теперь администратор разделяет время обновления местоположения и время последнего успешного обновления прогноза.
Зафиксированный
  • В GardenApp больше не скрывается уже сохраненное местоположение для прогноза погоды, если первое обновление прогноза не удается.
  • При недоступности Open-Meteo обновление погоды переключается на данные MET Norway, что дает мобильному прокси достаточно времени для выполнения обеих попыток.

v0.18.1

Обновление информации о надежности погоды

Теперь местный прогноз погоды сохраняет работоспособность даже при отсутствии необязательного параметра, а приложение получает контекст местоположения Cloudflare, обеспечивающий конфиденциальность, раньше при каждом обновлении.

Улучшено
  • Теперь при сбоях, вызванных погодными условиями, сервер оставляет ограниченный, защищенный от посторонних глаз диагностический отчет и сигнал ответа об обнаружении/недоступности, не раскрывая при этом IP-адрес, координаты или конфиденциальные данные о местоположении.
Зафиксированный
  • В GardenApp больше не отбрасывается весь местный прогноз погоды из-за того, что один из дополнительных параметров погоды равен нулю или отсутствует.
  • Функция обновления погоды получает приблизительный контекст местоположения запроса Cloudflare перед выполнением аутентификации, что снижает вероятность потери контекста на границе асинхронных операций.

v0.18.0

Публичное обмен цветами и общение в сообществе продолжаются.

Теперь ссылки на цветы доступны всем, с возможностью обмена, управления копированием ссылок, профилями авторов, значками избранного и подпиской на сообщество. Погода также корректно обновляется после перезагрузки страницы.

Новый
  • Скопируйте или поделитесь общедоступной ссылкой на цветок, указав его название, из профилей цветов и раздела «Открыть для себя».
  • Подписывайтесь на участников сообщества и смотрите количество их подписчиков, а также значки, которые они заработали.
Зафиксированный
  • Теперь QR-коды открывают общедоступный сайт сообщества, а не страницу, предназначенную только для владельца.
  • Недоступная информация о погоде больше не кэшируется при перезагрузке, и каждая перезагрузка повторно проверяет текущее приблизительное местоположение по IP-адресу.
  • Теперь для ярлыка напоминаний используется узнаваемый значок колокольчика.
Безопасность
  • Для публичного доступа и подписки используются общедоступные идентификаторы публикаций; частные идентификаторы цветов, сада, ухода, напоминаний и учетных записей остаются вне общедоступных ссылок.

v0.17.0

Автоматические обновления развертывания

Теперь браузерные приложения Open CoinGarden автоматически обнаруживают каждую новую развернутую сборку и безопасно переходят к ней, ожидая завершения активных сохранений и подтверждений кошельков.

Улучшено
  • Открытые вкладки браузера автоматически обновляются, отображая стабильную, недавно развернутую сборку.
  • Обновления ожидают подтверждения активных форм, сохранений, подписей кошельков и заявок, при этом существующий механизм ручного обновления сохраняется в качестве резервного варианта.
Зафиксированный
  • Развертывание кода отслеживается по неизменяемому идентификатору коммита, даже если отображаемый человеком номер версии не меняется.
  • Однократная защита для каждой сборки и активация сервисного работника предотвращают повторные перезагрузки или устаревшие оболочки PWA.

v0.15.0

Идентификация цветов больше никогда не показывает результат-заглушку.

Идентификация цветов больше не будет возвращаться к результату-заглушке, если ИИ временно недоступен. Если точная идентификация невозможна прямо сейчас, вы увидите четкое сообщение «Не удалось идентифицировать это растение» с кнопкой «Попробовать снова» — никогда не будет использоваться предположительный ответ вместо реального. Это относится к веб-приложению, мобильному приложению и нативному приложению для iOS/Android, как для авторизованных пользователей, так и для гостей.

Улучшено
  • В нативном приложении: на экране идентификации теперь отображается название растения, научное название, степень достоверности и альтернативные совпадения в удобочитаемом формате, а не в виде необработанного технического результата.
Зафиксированный
  • Идентификация цветов (в авторизованном режиме, в режиме гостя и в нативном приложении) больше не возвращает результат-заглушку, когда служба ИИ недоступна. Теперь вместо этого отображается понятное и понятное сообщение, а также работающая кнопка «Попробовать снова».
  • Ежедневное бесплатное удостоверение личности гостя больше не расходуется, если удостоверение личности недоступно — попытка подтверждения личности автоматически возвращается.
Разработчик
  • Удалён последний фрагмент кода, который мог использоваться для получения сфабрикованного результата идентификации; фиктивный поставщик, использовавшийся во время разработки, теперь существует только в наборе тестов.
  • Добавлены автоматизированные тесты, которые сканируют исходный код мобильного и нативного приложений на наличие старой копии placeholder-result, чтобы она не могла незаметно вернуться.
  • Документацию по ИИ/идентификации переписали в соответствии с этим поведением.

v0.14.0

Исправлено: страница с официальным документом не загружалась.

Исправлена ошибка, из-за которой страница «Технический документ» портала токенов могла не загружаться с ошибкой сервера. Теперь содержимое страницы встраивается непосредственно в приложение, а не загружается с диска при посещении страницы, что обеспечивает более надежную и быструю загрузку.

Зафиксированный
  • Портал токенов: страница Whitepaper (/whitepaper) больше не загружается периодически с ошибкой сервера. Теперь ее содержимое компилируется в приложение во время сборки, а не считывается из файла во время запроса, что также немного ускоряет загрузку страницы.

v0.13.0

Исправлено: ошибка идентификации цветка, приводящая к ошибке подключения.

Исправлена ошибка, из-за которой идентификация цветка могла завершиться неудачей с сообщением «Нам не удалось подключиться к CoinGarden прямо сейчас», даже если сама идентификация на самом деле проходила успешно — приложение сдавалось и показывало ошибку до того, как успевал получить обычный, немного более медленный ответ от ИИ.

Зафиксированный
  • Идентификация цветка (как зарегистрированным пользователем, так и гостем) больше не завершается ошибкой подключения при нормальной скорости ответа ИИ. Внутреннее время ожидания запроса в приложении было короче, чем время, которое может потребоваться для реальной идентификации, поэтому действительно успешный результат иногда отбрасывался и отображался пользователю как неудача.

v0.12.0

Исправлены ошибки компиляции программы Solana и ошибка отслеживания хранилища.

Исправлены три реальные ошибки компиляции в программах распределения долей и вознаграждений в блокчейне, вызванные неотслеживаемой версией зависимостей, а также исправлена ошибка, которая позволяла двум из шести хранилищ CGW незаметно использовать один отслеживаемый адрес.

Зафиксированный
  • Программы cgw-vesting и cgw-rewards в блокчейне не компилировались с версией библиотеки anchor-lang, которая фактически использовалась (1.1.2, а не предполагаемая 1.0.2 — для этого рабочего пространства никогда не был добавлен файл блокировки). Исправлены три возникших нарушения API и добавлен файл блокировки, чтобы это не могло повториться незаметно.
  • Ранее в системе отслеживания развертывания CGW был только один адресный слот для двух различных хранилищ (хранилище ликвидности и хранилище сообщества, каждое из которых выделяло 5% в соответствии со спецификацией токена). Теперь для каждого хранилища есть свой собственный отслеживаемый слот, поэтому при реальном развертывании баланс одного хранилища никогда не будет отображаться так, как если бы он принадлежал другому.
Разработчик
  • Проверено, что программы в блокчейне компилируются и проходят проверку синтаксиса (cargo check, cargo clippy с предупреждениями в виде ошибок) в этой среде; полная сборка/развертывание в блокчейне по-прежнему блокируется из-за ограниченного дискового пространства в этой песочнице, что отслеживается отдельно.

v0.11.0

Привязка учетной записи Google на портале токенов и исправление проблемы с подключением кошелька.

Теперь на странице профиля Token Portal можно привязать учетную запись Google к кошельку в качестве дополнительной резервной учетной записи, а также исправлена ошибка, из-за которой процесс подключения кошелька завершался с ошибкой «Кошелек не подключен» сразу после подключения реального кошелька.

Новый
  • Портал токенов: раздел Google на странице профиля теперь работает — войдите через Google, а затем свяжите его со своим профилем кошелька в качестве дополнительной резервной учетной записи или отмените привязку позже. Вход в кошелек остается полностью независимым и никогда не требует Google.
Зафиксированный
  • Портал токенов: при подключении кошелька в модальном окне «Подключить кошелек» больше не отображается некорректное сообщение «Кошелек не подключен», сразу после того, как расширение кошелька действительно подключилось.

v0.10.0

Более чистый пользовательский интерфейс, более интеллектуальный инструмент выбора модели ИИ и основа для нативных приложений.

Внесены исправления в пользовательский интерфейс и текст в Центре администрирования и Портале токенов, переработана мобильная страница «О программе», которая действительно описывает текущее приложение, добавлен поисковый инструмент для выбора модели ИИ, которая используется каждым помощником, а также создана первая рабочая версия нативных приложений для iOS/Android — пока недоступная для установки, но экраны входа в систему и основные экраны теперь работают от реальных серверов CoinGarden.

Новый
  • Центр администрирования: теперь выбор модели ИИ для голосового помощника осуществляется в виде списка с возможностью поиска, сгруппированного по признаку совместимости и проверки модели, необходимости проверки или несовместимости — вместо одного длинного выпадающего списка без пояснений.
  • Мобильное приложение: страница «О приложении» была переписана, чтобы описать, что приложение делает на самом деле сегодня (уход за растениями, идентификация, значки, портал токенов), вместо устаревших описаний функций.
  • Первая рабочая версия нативных iOS/Android-приложений CoinGarden существует в виде внутренней инженерной сборки: вход через Google, просмотр садов и цветов, определение растения с помощью камеры. Она еще не опубликована в App Store или Play Store.
Улучшено
  • Мобильное приложение: на странице вашего профиля теперь отображается реальное количество растений в вашем саду, цветов и значков, а не оставшаяся заглушка.
  • Центр администрирования и портал токенов: внесены некоторые исправления в макет и текст, в том числе исправлена ошибка в диаграмме портала токенов, которая могла перекрываться на узких экранах.
Безопасность
  • Устранена ошибка, из-за которой при привязке модели ИИ к помощнику не проверялось, действительно ли модель поддерживает необходимые этому помощнику функции (например, распознавание изображений для идентификации растений), как это уже делалось на главном экране конфигурации.
Разработчик
  • Теперь серверы CoinGarden поддерживают реальную, отзываемую сессию входа для нативных приложений, отдельную от системы входа на веб-сайте, поскольку у мобильного приложения нет собственного сервера для хранения общего секрета, как это есть на веб-сайте.

v0.9.0

Работа с Solana в режиме реального времени в административном центре.

Теперь страницы токенов в Центре администрирования считывают реальный статус CGW непосредственно из Solana, а не из статического заполнителя, и автоматически обновляются, пока страницы открыты, отображая истинное положение дел на сегодняшний день: CGW одобрен для внедрения, но еще не развернут ни на одном кластере.

Новый
  • Теперь страницы Центра администрирования, посвященные токенам (Обзор, Держатели, Казначейство, Безопасность, Транзакции), считывают текущее состояние развертывания CGW, сведения о выпуске токенов, объем предложения, баланс хранилища и полномочия на выпуск/заморозку токенов непосредственно из Solana через RPC-соединение только для чтения на стороне сервера — никогда не из браузера.
  • Теперь каждая открытая страница токена автоматически обновляется (5 секунд на страницах токена, 10-15 секунд в общей оболочке). Обновления приостанавливаются, когда вкладка скрыта, немедленно возобновляются при возврате фокуса, а после повторных ошибок чтения интервалы автоматически увеличиваются. Это честно обозначено как периодический опрос, а не как постоянное соединение через сокет, которым оно не является.
  • Четкое пятисостоятельное отображение развертывания (не развернуто, настроено, но недоступно, настроено, но учетная запись отсутствует, развернуто и работоспособно, или развернуто с несоответствием утвержденной спецификации) заменяет старый всегда ложный заполнитель.
Улучшено
  • Данные о держателях и транзакциях теперь всегда указываются в соответствии с фактически прочитанными данными — «Список крупнейших держателей токенов», а не подразумеваемый полный список, и честное «недоступно из настроенного RPC», а не вымышленный ноль — и никогда не угадывается значение, которое соединение RPC только для чтения фактически не может подтвердить.
  • Теперь ссылка на портал токенов формируется на основе конфигурации, а не жестко заданного локального адреса.
  • В описании токена теперь последовательно различаются решения, одобренные, но еще не реализованные, и решения, фактически внедренные, что заменяет несколько мест, которые по-прежнему выглядят как открытые проектные предложения.
Безопасность
  • Автоматизированная проверка подтвердила, что данные для подключения Solana RPC и учетные данные поставщика никогда не отображаются в пакете браузера Центра администрирования, в ответах API или в журналах.

v0.8.2

Более удобная ошибка подключения в Identify

Если идентификация растений не удается выполнить на серверах CoinGarden, теперь вы увидите сообщение на простом языке с кнопкой «Попробовать снова» — никогда не будет отображаться прямой код ошибки — и приложение никогда не блокирует форму с фотографией, незаметно проверяя количество бесплатных посещений в день в фоновом режиме.

Улучшено
  • Теперь сбой подключения к серверам CoinGarden регистрируется с помощью короткого кода, который можно сообщить в службу поддержки, и отображается в системе мониторинга ошибок оперативного отдела — ранее он был невидим вне контекста этого сбоя.
Зафиксированный
  • На странице идентификации могло бы отображаться необработанное внутреннее сообщение об ошибке ("upstream_unavailable"), если бы идентификация фотографии на короткое время не смогла связаться с серверами CoinGarden — вместо этого отображался бы текст на простом языке и кнопка «Повторить попытку», которая повторно отправляет ту же фотографию.
  • Теперь фоновое соединение автоматически повторяется один раз перед тем, как прерваться, для проверок только для чтения (например, для подсчета вашего бесплатного ежедневного количества подключений), где повторная попытка не может привести к повторным действиям.

v0.8.1

Панель навигации, реагирующая на прокрутку.

Теперь верхняя и нижняя панели навигации мобильного приложения трансформируются при прокрутке — компактная плавающая панель вверху страницы плавно расширяется в полноценную фиксированную панель по мере чтения и снова сужается, как только вы возвращаетесь к началу страницы.

Улучшено
  • Мобильное приложение: верхний заголовок и нижняя навигация теперь анимируются, переключаясь между компактной плавающей карточкой (вверху страницы) и широкой панелью, прикрепленной к краю (после прокрутки), вместо того, чтобы оставаться плавающими повсюду — это соответствует оригинальному интерфейсу навигации приложения.
  • Переход срабатывает только при реальной, преднамеренной прокрутке — небольшая буферная зона вокруг точки переключения предотвращает мерцание между двумя состояниями.
  • Каждый анимированный элемент по-прежнему учитывает системный запрос на уменьшение амплитуды движения, мгновенно переключая состояния вместо анимации.

v0.8.0

Значки за вклад

На новой странице «Достижения» отображается реальная активность — этапы членства, вклад в растения, серии ухода, идентификации и участие в сообществе — с четким указанием прогресса в достижении следующих целей. Разместите несколько значков в своем профиле и увидите один рядом с именем автора на странице с цветами, которыми он поделился.

Новый
  • Страница достижений (/badges): все полученные вами значки и все еще доступные значки, сгруппированные по категориям: Членство, Вклад в растения, Уход за растениями, Идентификация, Сообщество и Специальные достижения. Каждый значок показывает реальный прогресс в достижении следующего этапа — никогда не используется вымышленный процент.
  • Значки участника начисляются автоматически в зависимости от возраста учетной записи, начиная с момента регистрации и до шести лет и более.
  • Значки «Вклад растений» присуждаются за реальные этапы сохранения (от 1 до 2,000 спасенных цветов), а не за попытки идентификации растений с помощью искусственного интеллекта.
  • Значки «Уход за растениями» присуждаются за зарегистрированные случаи ухода и за реальные серии ухода, длящиеся 30 и 100 дней.
  • Идентификационные значки выдаются за подтвержденные личности, а не за каждый звонок ИИ.
  • Значки сообщества присуждаются за первый подаренный цветок и за настоящую благодарность, полученную от других.
  • Специальные значки (System Guardian, Harmony Keeper, Community Beacon, Blossom Benefactor, Rare Plant Curator) выдаются CoinGarden вручную и не могут быть получены автоматически.
  • На странице с подробной информацией о бейдже точно указано, что требуется и насколько близко вы находитесь.
  • Добавьте в свой профиль до пяти полученных значков — вы сами выбираете, какие из них будут видны, а неотображаемые значки останутся приватными.
  • Теперь рядом с именем автора в его публичных публикациях о цветах появляется значок «Рекомендовано».
  • Для каждого значка, независимо от того, получили ли вы его сами или кто-то другой, появляется отполированное, оптимизированное для отображения в режиме реального времени уведомление «Достижение разблокировано», независимо от того, получили ли вы его сами или кто-то другой за вас.
  • В Центре администрирования появилась функция «Экосистема → Значки»: можно просмотреть все значки и количество пользователей, которые их имеют, включить или отключить значок, назначить или отозвать специальный значок с указанием обязательной причины, а также выполнить разовую сверку, которая присваивает каждой существующей учетной записи все значки, на которые она уже имеет право, — а не только самой новой.
Безопасность
  • Назначать или отзывать специальный значок может только администратор, и каждое назначение, отзыв, включение/отключение и запуск сверки записываются в журнал аудита с указанием причины.
  • Автоматически создаваемые значки не имеют возможности административного управления, позволяющей обойти фактическую оценку — администратор может только включить/отключить сам значок, но никогда не сможет вручную выдать или отозвать автоматически полученный значок.
Разработчик
  • Каталог значков полностью основан на данных (метрика + пороговое значение считываются из базы данных), поэтому для создания нового значка никогда не требуется изменение кода.
  • Прогресс получения значков всегда рассчитывается в режиме реального времени на основе тех же исходных таблиц, которым доверяет остальная часть продукта (flowers, care_events, identifications, flower_posts, flower_post_likes) — нет отдельной таблицы прогресса, которая могла бы рассинхронизироваться.
  • Уведомления о разблокировке доставляются путем опроса невидимого/подтвержденного флага, а не через канал push-уведомлений, поэтому значок, полученный за ваши собственные действия, действия другого пользователя (лайк) или за выполнение административной проверки, отображается одинаково.

v0.7.6

Исправлена ошибка, из-за которой изображение предварительного просмотра приложения для публикации блокировалось поисковыми роботами.

Новое изображение предварительного просмотра для обмена в мобильном приложении (версия 0.7.5) было недоступно для поисковых роботов Facebook, X и других, расшифровывающих ссылки — вместо просмотра изображения они перенаправлялись на страницу входа, поскольку эти роботы никогда не входят в систему. Исправлено.

Зафиксированный
  • Мобильное приложение: маршруты opengraph-image и twitter-image отсутствовали в списке разрешенных маршрутов для публичных ресурсов, поэтому параметр sign-in-required по умолчанию для личных страниц перенаправлял каждый запрос поискового робота на страницу входа вместо отображения изображения — подтверждено в рабочем режиме (HTTP 307) и исправлено добавлением обоих маршрутов в тот же список разрешенных маршрутов, который уже охватывает robots.txt и sitemap.xml.

v0.7.5

Исправлена ошибка развертывания в версии 0.7.4 share-image.

В предыдущей версии образы для предварительного просмотра собирались и работали локально, но не могли быть развернуты на веб-сайте, в мобильном приложении и на портале токенов из-за несовместимости, специфичной для Cloudflare. Исправлено, и теперь образы доступны для использования.

Зафиксированный
  • После выхода версии 0.7.4 развертывание веб-сайта, мобильного приложения и портала токенов не удалось — на страницах предварительного просмотра была указана настройка среды выполнения, которую этап сборки Cloudflare сразу же отклонил. Настройка была удалена (каждое приложение уже работает в этой среде выполнения независимо от её указания), и на этот раз проверка производилась на реальной сборке развертывания, а не только на локальной.

v0.7.4

Реальный предварительный просмотр акций на веб-сайте, в мобильном приложении и на портале токенов.

Ранее при публикации ссылки на CoinGarden в Facebook, X или где-либо еще изображение отсутствовало, а Facebook выдавал предупреждение об отсутствии og:image. Теперь каждое общедоступное приложение генерирует фирменное изображение предварительного просмотра, а мобильное приложение получило заголовок/описание для социальных сетей, которого у него раньше не было.

Новый
  • Фирменные изображения предварительного просмотра Open Graph и Twitter/X для маркетингового сайта, мобильного приложения и портала токенов — каждое в собственных цветах приложения, генерируемые на лету, а не в виде статического файла для синхронизации.
Зафиксированный
  • В мобильном приложении полностью отсутствовали метаданные для предварительного просмотра в социальных сетях (нет og:title, og:description или og:image) — при публикации ссылки на раздел «Discover» или «flower-post» отображался простой, общий предварительный просмотр. Теперь же отображаются название приложения, описание и новое изображение для предварительного просмотра.
  • На маркетинговом сайте для типа Twitter Card был установлен небольшой макет «summary», который не отображает большое изображение, даже если оно предоставлено — теперь, когда есть настоящее изображение, исправлено на «summary_large_image».

v0.7.3

Исправлена лента Discover для авторизованных пользователей.

Пользователи, вошедшие в систему, при каждом посещении Discover видели сообщение «Не удалось загрузить цветы из сообщества» — это была неработающая ссылка между приложением и функцией персонализированного выбора, а не реальный сбой. Исправлено, поэтому теперь пользователи, вошедшие в систему, видят свой выбор или популярные цветы из сообщества, если таковых еще нет.

Зафиксированный
  • Лента «Открытия»: авторизованные пользователи больше не видят постоянную ошибку «не удалось загрузить» — персонализированная лента теперь загружается корректно, возвращаясь к популярным цветам сообщества, если персонализированного выбора еще нет.

v0.7.2

На этот раз действительно исправлена ошибка, приводившая к сбою при редактировании пользователем.

Предыдущее решение проблемы сбоя страницы редактирования пользователем не сработало — сохранение по-прежнему приводило к сбою страницы. Это же решение работает: перенаправление после сохранения теперь точно соответствует шаблону, который уже доказал свою эффективность во всех остальных разделах Центра администрирования.

Зафиксированный
  • Центр администрирования: изменение роли, статуса или отображаемого имени пользователя больше не приводит к сбою страницы после сохранения — на этот раз подтверждено повторным тестированием именно того действия, которое вызывало ошибку, в реальных условиях, а не только в чистой сборке.

v0.7.1

Исправлена ошибка, приводившая к сбою при сохранении изменений пользователя в Центре администрирования.

Сохранение изменений роли, статуса или отображаемого имени на странице учетной записи пользователя могло привести к сбою страницы вместо отображения результата. Само сохранение никогда не было проблемой — страница просто не перезагружалась корректно после этого. Исправлено.

Зафиксированный
  • Центр администрирования: изменение роли, статуса или отображаемого имени пользователя больше не приводит к сбою страницы после сохранения — подтверждение теперь отображается корректно.

v0.7.0

Улучшено администрирование пользователей, а также исправлены две реальные ошибки.

Теперь администраторы могут редактировать отображаемое имя, изменять роль, а также включать или отключать учетную запись непосредственно из Центра администрирования, при этом каждое изменение записывается в журнал аудита. Сам журнал аудита исправлен — он фактически никогда не загружался — а предупреждение о несоответствии версий на странице «Состояние» исправлено, чтобы предотвратить ложные срабатывания во время развертывания.

Новый
  • Центр администрирования: на странице учетной записи пользователя теперь можно редактировать его отображаемое имя, изменять роль (Пользователь / Модератор / Администратор) и включать или отключать учетную запись — это обеспечивается на стороне сервера, с той же защитой последнего администратора и подтверждением самоотключения, которые всегда были в этом продукте.
  • На странице «Состояние» теперь отображается таблица «Сервис / Ожидаемая версия / Развернутая версия / Коммит / Статус», поэтому реальный пробел в развертывании виден с первого взгляда, а не скрыт в списке версий.
Зафиксированный
  • Страница журнала аудита в Центре администрирования всегда выдавала ошибку «ответ, который не распознан консолью» — маршрут API фактически никогда не возвращал необходимую для страницы постраничную структуру. Теперь же он возвращает её, и страница загружает реальные записи.
  • Предупреждение «несоответствие версий» на странице «Состояние системы» постоянно и некорректно срабатывало, поскольку собственная самопроверка API сообщала о версии, которая никогда не обновлялась по мере выпуска релизов. Теперь она считывает ту же общую версию, что и при каждой второй проверке, и предупреждение срабатывает только тогда, когда несоответствие действительно сохраняется после завершения обычного развертывания, а не во время его еще в процессе развертывания.
  • В API по-прежнему отображалась недоступная конечная точка состояния, соответствующая состоянию блокчейна до миграции; эта ошибка исправлена в том же файле при обновлении версии.
Безопасность
  • Каждое изменение настроек пользователя (отображаемое имя, роль, статус) записывается в журнал аудита с указанием результата и идентификатора корреляции, что позволяет отследить точный запрос, который его вызвал.
Разработчик
  • В журнале аудита появилась реальная постраничная навигация на стороне сервера и отслеживание результатов (`result`, `correlation_id`) вместо неограниченного списка без постраничной навигации.
  • Теперь проверки работоспособности регистрируют подтверждение сборки, когда данные о состоянии сервиса об этом сообщают, что закладывает основу для новой таблицы версий.

v0.6.0

Более интеллектуальная лента Discover и меньше тупиков

В ленте Discover теперь ежедневно появляется подборка популярных цветов, составленная искусственным интеллектом, с кратким описанием на каждой карточке. Идентификация растения стала более понятной, а также исправлено несколько мелких, но существенных ошибок — обрезанная кнопка «Напомнить», непонятная ошибка в ленте.

Новый
  • На главной странице ленты Discover ежедневно появляется «Выбор сада дня», который составляется один раз в день искусственным интеллектом CoinGarden на основе популярных цветов сообщества. В случае недоступности подборки ИИ, порядковый номер цветов автоматически возвращается к этому же порядку.
  • Теперь на каждой карточке с описанием цветка указано краткое описание, взятое из каталога растений.
  • Теперь для идентификации растения предлагаются отдельные действия «Сделать фото» и «Выбрать из галереи» вместо одной неоднозначной кнопки.
  • Растение, которое CoinGarden еще не распознал, больше не приводит к тупику — теперь при нажатии на него выполняется поиск в каталоге или открывается ручной поиск с предварительно заполненными предложенными вариантами.
Улучшено
  • Результаты идентификации показывают более четкое выбранное состояние — вся карта доступна для нажатия, отмечена галочкой.
  • Теперь загруженные фотографии проверяются как настоящие изображения, а не по расширению файла; неподдерживаемый формат, такой как HEIC, теперь явно указывает на это, вместо того чтобы молча давать сбой.
Зафиксированный
  • Кнопка «Напомнить мне» в рекомендациях по уходу за цветами больше не сжимается в нечитаемый сегмент на узких экранах телефонов.
  • В ленте Discover больше не отображается одновременно «не удалось загрузить» и «еще никто не опубликовал» — неудачное подключение и пустое сообщество — это разные ситуации, и теперь в ленте указывается, какая именно ситуация происходит, с работающей кнопкой «Попробуйте еще раз».
Разработчик
  • Метаданные поисковых систем исправлены во всех приложениях CoinGarden — канонические ссылки, карты сайта и robots.txt теперь указывают на реальные развернутые адреса CoinGarden, а не на несвязанные домены, которые уже были запущены.
  • Подтверждено, что закрытые страницы административного центра полностью исключены из индексации поисковых систем в рабочей среде.

v0.5.0

Настоящий каталог растений

Поиск растения по общепринятому названию теперь работает как положено — включая поиск по слову «роза». Каталог разросся с примерно двадцати комнатных растений до сотен реальных видов, родов и семейств, и старые научные названия, а также варианты общепринятых названий, позволяют получить правильный результат.

Новый
  • Каталог растений вырос из примерно 20 тщательно отобранных комнатных растений в настоящую таксономию, насчитывающую около 440 видов, родов и семейств, охватывающую комнатные растения, садовые цветы, розы, орхидеи, суккуленты и кактусы, распространенные деревья и кустарники, травы, овощи и фрукты.
  • Поиск по старому или альтернативному научному названию теперь позволяет найти правильный, в настоящее время признанный вид.
  • Поиск по названию рода (например, «Rosa», «Hibiscus», «Monstera») выдает список всех видов, известных CoinGarden в этом роде.
  • Поиск распространенных названий растений с учетом опечаток
  • В административном центре появилась страница «Каталог растений»: статистика покрытия, источник данных для каждой записи и информация о поисковых запросах, которые не дают результатов — таким образом, пробелы в каталоге становятся видимыми, а не скрытыми.
Улучшено
  • Идентификация растений с помощью ИИ становится более честной, когда он уверен только в роде, а не в точном виде — теперь он сообщает об этом, вместо того чтобы угадывать конкретный вид.
  • На экране «Поиск в каталоге растений» объясняется, что нужно ввести перед началом поиска, и предлагается попробовать более общий термин вместо того, чтобы просто сказать, что ничего не подошло.
Зафиксированный
  • Поиск по слову «Роза» (и многим другим распространенным названиям) в каталоге растений больше не выдает сообщение «Соответствующий вид не найден» — проблема заключалась не в отсутствии логики поиска, а в отсутствии необходимых данных в самом каталоге.

v0.4.0

Откройте для себя цветы вместе

CoinGarden открывает следующие возможности: просматривайте цветы сообщества и определяйте до пяти растений в день без учетной записи, делитесь своими цветами по своему желанию и получайте персонализированную ленту результатов поиска, созданную искусственным интеллектом, после авторизации.

Новый
  • На панели управления отображается общедоступная лента «Поиск цветов» — самые популярные среди сообщества цветы, для просмотра которых не требуется регистрация.
  • Ежедневно можно указать до пяти растений в качестве гостевых; ваш бесплатный лимит автоматически сбрасывается каждый день.
  • Поделитесь ссылкой на цветок с сообществом, когда захотите — четкое подтверждение покажет, что именно станет общедоступным, и вы можете удалить публикацию в любой момент.
  • Поставьте лайк любимым цветам (требуется регистрация) и посмотрите, что нравится сообществу.
  • Зарегистрированные пользователи получают персонализированную ленту с короткими заметками об использовании искусственного интеллекта в саду, основанными на каталоге растений.
  • Публичное отображаемое имя для обмена информацией — пока вы его не выберете, вы будете отображаться как «CoinGardener», а не как ваше имя пользователя Google или адрес электронной почты.
  • Мои сады: ваш личный кабинет по уходу за растениями — цветы, сады, план ухода и напоминания — перенесены с панели управления в новое краткое описание.
Улучшено
  • Нижняя панель навигации теперь адаптируется к вам: «Открыть для себя», «Идентифицировать», «Мои сады» и «Профиль» при авторизации; «Открыть для себя», «Идентифицировать», «Главная» и «Войти как гость».
  • На странице входа объясняется, что именно добавляет учетная запись — просмотр веб-страниц и ежедневные идентификационные данные остаются бесплатными и без нее.
Безопасность
  • Ваши личные данные о цветах, садах, заметках, истории ухода и напоминаниях никогда не отображаются публично — вы делитесь копиями только тех полей, которые одобряете, в виде моментального снимка.
  • Ограничение на идентификацию гостей на сервере применяется к анонимному, хешированному идентификатору посетителя — никогда не к IP-адресу или адресу электронной почты.
  • Количество лайков вычисляется на сервере с гарантией одного лайка на человека, заложенной в самой базе данных.

v0.3.0

Каждый агент ИИ, работающий

Теперь все двенадцать агентов CoinGarden AI имеют реальные реализации, выбирают собственную модель, исходя из стоимости и возможностей, и работают по расписанию.

Новый
  • Все двенадцать агентов ИИ внедрены и работают: чат, мониторинг CGW, ежедневный обзор системы, анализ мобильных приложений, сортировка запросов по безопасности, качество данных предприятия, анализ продукции, оптимизация затрат, качество релизов и проверка документации CGW.
  • Агенты автоматически выбирают свою модель — самую дешевую, возможности которой проверены и которая прошла приемочный тест данного агента.
  • Теперь работа агентов по расписанию осуществляется с интервалом в пятнадцать минут, доставка занимает не более одного раза.
  • Очередь для проверки результатов, заслуживающих внимания пользователя.
  • Ежедневный обзор результатов работы ИИ на главной странице Административного центра, составленный на основе реальных запусков.
  • Запускайте любой аналитический агент по запросу, при этом его ориентировочная стоимость будет отображена до нажатия кнопки.
Улучшено
  • Каждый агент вычисляет свои показатели на языке SQL и просит модель только интерпретировать их, что одновременно дешевле и сложнее допустить ошибку.
  • Отчеты оцениваются на основе предоставленных в них доказательств, поэтому данные, созданные моделью, помечаются как ошибочные, а не публикуются.
  • В проверках возможностей модели больше не сообщается, что текстовая модель не способна выдавать структурированные результаты.
  • Теперь известна стоимость моделей OpenAI, поэтому сравнение затрат является реальным, а не случайным.
Безопасность
  • Чат-помощник может считывать данные только того человека, с которым общается, это обеспечивается программным кодом, а не инструкциями.
  • Система мониторинга CGW по своей сути предназначена только для чтения: ключ подписи отсутствует, и путь для записи не предусмотрен.

v0.2.0

Выпуски Центра управления ИИ и платформы

Добавлена централизованная система управления поставщиками ИИ, улучшено распознавание цветов и добавлены примечания к выпуску в приложении с уведомлениями об обновлениях.

Новый
  • Центр управления ИИ для организации взаимодействия с OpenAI и Anthropic в одном месте.
  • Теперь распознавание цветов осуществляется с помощью настраиваемого агента искусственного интеллекта, а информация о происхождении показывает, какая модель сгенерировала каждое предложение.
  • Примечания к выпуску доступны по адресу /changelog во всех приложениях CoinGarden.
  • Встроенное уведомление о выпуске новой версии.
  • Установите CoinGarden на главный экран вашего мобильного приложения.
Улучшено
  • Результаты распознавания теперь содержат проверочный балл, который вы можете исправить в любое время.
  • Администраторы могут сравнивать модели по точности, задержке и стоимости, прежде чем переключаться между ними.
  • Теперь в нижнем колонтитуле каждого приложения отображается версия, которую вы используете.
Зафиксированный
  • Обзор административного центра больше не загружается с ошибкой при появлении последних сообщений об ошибках.
  • Страницы административного интерфейса теперь корректно отображаются на узких экранах.
Безопасность
  • Ключи поставщика ИИ хранятся в зашифрованном виде и никогда не могут быть считаны из системы.
Разработчик
  • Теперь миграция базы данных применяется автоматически при развертывании.
  • Непрерывная интеграция запускает полный набор тестов.

v0.1.1

Административно-операционный центр

Представляет собой частную операционную консоль с функциями мониторинга состояния сервисов, инцидентов, ошибок и аналитики продукта.

Новый
  • Центр администрирования и эксплуатации с отображением состояния сервисов в режиме реального времени и истории инцидентов.
  • Централизованный мониторинг ошибок с группировкой исключений.
  • Аналитика пользователей и продуктов
Улучшено
  • Уход за растениями, информация о саде и напоминания теперь сохраняются в API CoinGarden, а не в вашем браузере.

v0.1.0

Фундамент

Первый релиз CoinGarden.World: сады, цветы, уход за растениями и портал токенов CGW.

Новый
  • Создавайте сады и высаживайте цветы с фотоидентификацией.
  • Напоминания по уходу за растениями и история ухода
  • Портал токенов CGW с опубликованной токеномикой проекта.
  • Войдите через Google во всех приложениях CoinGarden.
RU