Навёл порядок в тестах. и доки дописал.
Всё красиво и работает!
This commit is contained in:
AidarKC 2026-01-08 14:25:37 +03:00
parent 4753b83831
commit a218f6586d
5 changed files with 76 additions and 2 deletions

View File

@ -1 +1,2 @@
Сделать возможность убрать свой лайк. (пока не надо а сложность что надо больше проверок) Сделать возможность убрать свой лайк. (пока не надо а сложность что надо больше проверок) - хотя можно и без проверки, просто за двойной лайк или за снятие двойное лайка. Будет двойное проникновение :)) тому кто изменил код клиента и убрал проверку на клиенте - и блокчейн заблокируется и всё.
поэтому просто на каждую реакцию добавиться убрать эту ракцию .

View File

@ -5,7 +5,6 @@ shine-server-log
shine-server-config shine-server-config
Минимальный конфиг-лоадер, который один раз читает application.properties и даёт доступ к параметрам. Минимальный конфиг-лоадер, который один раз читает application.properties и даёт доступ к параметрам.
Внешние настройки (2): server.1port=7070, db.path=data/shine.sqlite.
shine-server-geo shine-server-geo
Утилиты, которые вытаскивают IP/язык/UA из Jetty WebSocket и (опционально) резолвят гео по IP с кэшем в БД. Утилиты, которые вытаскивают IP/язык/UA из Jetty WebSocket и (опционально) резолвят гео по IP с кэшем в БД.

View File

@ -0,0 +1,19 @@
package utils.config;
/**
* CryptoSizes единые размеры крипто-полей и ключей.
* Никаких "32/64" по коду руками только отсюда.
*/
public final class CryptoSizes {
private CryptoSizes() {}
/** Длина SHA-256 хэша, который хранится в блоке. */
public static final int HASH32_LEN = 32;
/** Длина подписи Ed25519, которая хранится в блоке. */
public static final int SIGNATURE64_LEN = 64;
/** Длина публичного ключа Ed25519. */
public static final int ED25519_PUBLIC_KEY32_LEN = 32;
}

View File

@ -0,0 +1,55 @@
package utils.config;
/**
* MsgSubType единое место для ВСЕХ subType сообщений (msg_sub_type).
*
* Правило:
* - НИКАКИХ "магических чисел" subType по проекту.
* - В тестах, в body-классах и в SQL-триггерах используем только эти константы.
*
* Важно:
* - Значения менять после релиза нельзя (иначе сломается совместимость).
*/
public final class MsgSubType {
private MsgSubType() {}
/* ===================== TEXT (msg_type=1) ===================== */
/** Новое сообщение (начало ветки). */
public static final short TEXT_NEW = 1;
/** Ответ на сообщение (reply). */
public static final short TEXT_REPLY = 2;
/** Репост (repost). */
public static final short TEXT_REPOST = 3;
/** Редактирование (edit). ВАЖНО: серверное значение = 10. */
public static final short TEXT_EDIT = 10;
/* ===================== REACTION (msg_type=2) ===================== */
/** Лайк (LIKE). */
public static final short REACTION_LIKE = 1;
/* ===================== CONNECTION (msg_type=3) ===================== */
/** Добавить в друзья. */
public static final short CONNECTION_FRIEND = 10;
/** Удалить из друзей. */
public static final short CONNECTION_UNFRIEND = 11;
/** Подписаться (follow). */
public static final short CONNECTION_FOLLOW = 20;
/** Отписаться (unfollow). */
public static final short CONNECTION_UNFOLLOW = 21;
/** Заблокировать. */
public static final short CONNECTION_BLOCK = 30;
/** Разблокировать. */
public static final short CONNECTION_UNBLOCK = 31;
}