# module-04. Проектная спецификация Redis > Статус: указатель. Канонический контракт и профильные спецификации VM разнесены. > Этот файл сохраняет стабильный путь `module-04-redis.md` для существующих ссылок. Redis разрезан так, чтобы репозитории ВМ1 и ВМ2 не тащили чужие ключи и URL, а инварианты (не source of truth, TTL, ACL prefix, AOF) не разъезжались. | Документ | Роль | |---|---| | [`../architectory/arch-09-redis.md`](../architectory/arch-09-redis.md) | Архитектурный контракт: Redis не очередь и не OTP store, формат ключей, Lua governance, AOF/RDB, ACL/network, eviction, restore. Не кастомизировать в репозитории VM так, чтобы сломать контракт. | | [`module-04-redis-vm1.md`](module-04-redis-vm1.md) | Реализация на ВМ1: DB0 rate/idempotency, DB1 realtime/coordination, legacy DB2 stub до cutover. | | [`module-04-redis-vm2.md`](module-04-redis-vm2.md) | Реализация на ВМ2: Redis Safety hot cache/rate/wakeup; task/lease остаются в PostgreSQL. | Агент ВМ1 читает arch-09 + спецификацию ВМ1. Агент ВМ2 читает arch-09 + спецификацию ВМ2. Экземпляры не шарят hostname, volume и credentials.