Акты Становления

301: Создатель/Хранилище

1. Введение

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

Это основа для «памяти» всей системы. Благодаря Хранилищу, Идеи можно сохранять и отслеживать их версии, чтобы потом другие службы, например Система-Решатель, могли их использовать.

2. Основная концепция: Хранилище как преобразователь идей

Хранилище работает по принципу «преобразователя идей». Это значит, что оно принимает одну Идею на входе и возвращает другую на выходе.

  • Что на входе: Идея, состоящая из трёх частей (схема, решение, контекст).
  • Что происходит внутри: Служба получает Идею, даёт ей уникальный номер (как инвентарный номер у книги в библиотеке, который также учитывает версию), и надёжно сохраняет её, например, в специальной базе данных.
  • Что на выходе: В ответ служба возвращает ту же самую Идею. Это как получить квитанцию, подтверждающую, что твою Идею приняли и сохранили. Иногда на этой «квитанции» могут быть дополнительные пометки, например, тот самый уникальный номер и версия.

3. Хранилище как финишная черта этапа

Очень важная роль Хранилища — быть своего рода «финишной чертой» для одного этапа работы. Когда кто-то (пользователь или другая программа) отправляет Идею и получает в ответ подтверждение, что всё хорошо, этот первый шаг считается завершённым.

Представь себе эстафету. Хранилище — это первый бегун. Он получает Идею (эстафетную палочку), надёжно её сохраняет и передаёт дальше. Его работа на этом закончена. После этого другие службы могут увидеть, что появилась новая сохранённая Идея, и начать свой этап работы. Это делает всю систему очень надёжной и гибкой. Не нужно ждать, пока завершится одно огромное дело — всё разбито на маленькие, независимые шаги.

4. Ключевые особенности

4.1. Хранение по принципу «чёрного ящика»

Хранилище работает как «чёрный ящик». Ты просто отправляешь туда Идеи, не задумываясь о том, как именно они хранятся (в какой базе данных, на каких серверах). Это как сдать вещь в камеру хранения: ты не знаешь, как устроен замок, но уверен, что твоя вещь будет в безопасности. Служба гарантирует, что если Идея принята, она будет надёжно сохранена.

4.2. Версии и неизменность

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

4.3. Адресация по содержимому

Каждая сохранённая Идея получает свой уникальный адрес, состоящий из её номера и версии. Это похоже на то, как у каждой книги есть свой уникальный код (ISBN). Зная этот код, ты можешь безошибочно найти именно ту Идею, которая тебе нужна.

5. Как с ним работать

Взаимодействовать с Хранилищем очень просто, потому что оно создано в основном для записи.

  • Основное действие: Единственное, что можно сделать, — это отправить Идею на хранение.

  • Получение данных — задача другого: Чтобы не усложнять, Хранилище не отвечает за поиск и выдачу Идей. Это как почтовый ящик: ты можешь только опускать в него письма. А вот доставать их и доставлять адресату — это уже работа почтальона. В нашей системе роль такого «почтальона» выполняет служба Решатель.