Перейти к содержанию

Остальные детерминированные расчёты

Для внутренней разработки приняты временные методики v0. Их цель — получить полный сквозной pipeline, а не объявить методологический вопрос закрытым. Перед внешним пилотом они проходят экспертную и правовую проверку по pre-pilot checklist.

Заменяемый контракт движка

Каждая система реализует общий port:

interface CalculationEngine<Input, Output> {
    readonly system: "numerology" | "human_design" | "destiny_matrix";
    readonly methodologyVersion: string;
    normalize(input: Input): NormalizedInput;
    calculate(input: NormalizedInput): Output;
    extractEvidence(output: Output): EvidenceFact[];
}

Движок не вызывает AI, БД, HTTP или другие доменные сервисы. Registry выбирает активную версию. В артефакте всегда хранятся system, methodologyVersion, schemaVersion, нормализованный input hash, result JSON и result hash.

Новая методика подключается как новый engine version. Старые артефакты не переписываются; при необходимости создаётся новый расчёт и новая интерпретация. Поэтому временная логика v0 не становится необратимой частью модели данных.

Нумерология numerology-pythagorean-v0

Вход

  • дата рождения YYYY-MM-DD;
  • birthName — имя или полное имя при рождении в том виде, который ввёл пользователь.

Нормализация имени: Unicode NFC, uppercase, удаление пробелов, дефисов и апострофов. Допустимы кириллица и латиница; другие символы дают validation error. Ё не заменяется на Е. Исходная строка сохраняется отдельно от нормализованной.

Таблица букв

Латиница использует стандартный цикл 1–9:

Число Буквы
1 A J S
2 B K T
3 C L U
4 D M V
5 E N W
6 F O X
7 G P Y
8 H Q Z
9 I R

Кириллица назначается последовательным циклом по русскому алфавиту из 33 букв:

Число Буквы
1 А И С Ъ
2 Б Й Т Ы
3 В К У Ь
4 Г Л Ф Э
5 Д М Х Ю
6 Е Н Ц Я
7 Ё О Ч
8 Ж П Ш
9 З Р Щ

Гласные: А Е Ё И О У Ы Э Ю Я и A E I O U Y. Остальные допустимые буквы считаются согласными.

Редукция

Для каждого итогового показателя применяется одна функция:

reduce9WithMasters(n):
  пока n > 9 и n не равно 11, 22 или 33:
    n = sum(digits(n))
  вернуть n

Отдельные части даты/имени заранее не редуцируются и не сохраняют master number: сначала считается единая raw sum показателя, затем ровно один раз вызывается эта функция. Например, 29 → 11, 38 → 11, 39 → 12 → 3.

Результаты

  1. lifePathNumber: сумма всех цифр даты рождения, затем финальная редукция с сохранением 11/22/33.
  2. destinyNumber: сумма значений всех букв нормализованного birthName, затем та же редукция.
  3. soulUrgeNumber: сумма значений гласных birthName, затем та же редукция.
  4. personalityNumber: сумма значений согласных birthName, затем та же редукция.

JSON хранит raw sum, reduced value, признак master number и использованную таблицу. Такое определение однозначно, но является продуктовой методикой v0: до пилота эксперт может утвердить её либо заменить другим engine version.

Дизайн Человека human-design-standard-v0

Вход и design date

Требуются точные дата, время и место. Используются те же UTC normalization, Swiss Ephemeris dataset и tropical geocentric settings, что в натальном расчёте.

  1. Рассчитать долготу Солнца рождения λbirth.
  2. Найти ближайший момент до рождения, в котором непрерывная солнечная долгота равна λbirth - 88°.
  3. Использовать bracket 80–100 суток и root finder; вычитание условных 88 суток запрещено.
  4. Рассчитать personality activations на момент рождения и design activations на найденный момент.

Заменяемые справочники

Gate wheel, линии, channel definitions, centers и приоритеты authority не вшиваются в service-код. Они загружаются из versioned resource package с собственным hash. human-design-standard-v0 рассчитывает стандартный набор Солнце, Земля, Луна, лунные узлы, Меркурий, Венера, Марс, Юпитер, Сатурн, Уран, Нептун и Плутон для personality/design.

Профиль образуется из линий personality Sun и design Sun. Канал активен, когда присутствуют оба его gate; определённый центр выводится из активных каналов. Type/strategy/authority выводятся только ruleset из resource package, а не AI.

Точные gate boundaries, authority priority и права на таблицы проверяются pre-pilot. До этого результат явно содержит methodologyStatus: "provisional" и не используется как основание необратимых действий.

При неизвестном времени движок не запускается.

Матрица судьбы destiny-matrix-22-v0

Эта версия — собственная минимальная детерминированная схема на 22 аркана. Мы не приписываем её конкретной школе.

Редукция

reduce22(n):
  если 1 <= n <= 22, вернуть n
  если n > 22, сложить десятичные цифры и повторить
  если n == 0, вернуть 22

Позиции

Для даты day.month.year:

dayArcana          = reduce22(day)
monthArcana        = reduce22(month)
yearArcana         = reduce22(sum(digits(year)))
coreArcana         = reduce22(dayArcana + monthArcana + yearArcana)
relationshipArcana = reduce22(dayArcana + monthArcana)
financeArcana      = reduce22(monthArcana + yearArcana)
talentArcana       = reduce22(yearArcana + coreArcana)
challengeArcana    = reduce22(coreArcana + dayArcana)
integrationArcana  = reduce22(relationshipArcana + financeArcana + talentArcana + challengeArcana)

Движок возвращает только номера и зависимости позиций. Названия/трактовки арканов находятся в отдельном versioned content resource, чтобы смена текстов не меняла математический hash.

Перед пилотом эксперт должен либо утвердить эту схему, либо предоставить новую. Замена создаёт, например, destiny-matrix-22-v1, не меняя старые данные.

Приёмка internal-версий

  • byte-stable результат при одинаковом input/methodology/resource hash;
  • unit tests для нормализации, редукции и всех позиций;
  • boundary tests для master numbers, Ё, gate/line и reduce22(22/23/99);
  • отсутствие AI/network/DB внутри движка;
  • один и тот же engine работает через registry в API и worker;
  • JSON Schema и минимум пять инженерных fixtures на v0.

Экспертные десять+ fixtures, коммерческие права и финальный evidence mapping являются pre-pilot gate, а не blocker внутреннего прототипа.