1. Введение
Выгрузка для ИИ (JSON)EE DataCollector API сочетает асинхронный контур расчётов портрета/прогноза и новый синхронный hourly-endpoint для geocentric-прогноза Луны. Архитектура по-прежнему разделяет SubjectContext и TemporalContext, а hourly-метод работает поверх отдельного серверного кэша эфемерид.
# 1. Введение
2.3.0
2026-03-18
# Ключевые изменения
Сохранён асинхронный контур `create_task -> worker -> get_result` для тяжёлых составных расчётов.
Добавлен новый синхронный `GET /get_hourly_forecast` для почасового прогноза Луны и планет на локальные сутки.
Hourly-endpoint возвращает geocentric-позиции Луны/планет, текущие аспекты Луны, окно `void of course`, лунный день и флаг «сатанинского» дня.
Для hourly-endpoint добавлен двухуровневый кэш: batch-cache эфемерид NASA и result-cache по `date + lat + lng + timezone`.
Канонический слой Synthesis++ и export_result продолжают работать без изменения контракта.
# Сводная информация
https://digihash.ru/datacollector/api.php
2.3.0
HTTPS / JSON
# Возможности системы
- Асинхронная очередь задач для портрета, периодического прогноза и Synthesis++.
- Синхронный hourly-endpoint для UI и сервисов, которым нужен готовый почасовой результат сразу.
- Разделение SubjectContext/TemporalContext во всех вычислениях.
- Серверное кэширование портретов, дневных прогнозов и нового почасового geocentric-прогноза.
- Режим критического отказа для внешних источников: при проблемах NASA JPL Horizons API не отдаёт фальшивый частичный успех.
# Архитектура решения
Этапы жизненного цикла
Клиент → POST create_task
Запускает тяжёлую составную задачу для портрета/прогноза/Synthesis++.
Worker → Асинхронный расчёт
Собирает итоговый payload и сохраняет его для последующего `get_result`.
Клиент → GET get_result
Опрос статуса или получение итогового async-результата.
Клиент → GET get_hourly_forecast
Синхронный запрос почасового прогноза на local-день с отдельным result-cache.
Политика кеширования
# Модель хранения и кэширования
Кэш разделён по доменам данных. В публичных ответах файловые пути никогда не раскрываются.
Immutable SubjectContext и производные portrait-расчёты.
Классический дневной/недельный/месячный forecast.
Отдельный JSON-cache для нового почасового метода.
# Технические требования
List
- •Формат обмена: JSON
- •Кодировка: UTF-8
- •Дата: YYYY-MM-DD
- •Время: HH:MM или HH:MM:SS
- •Все запросы выполняются по HTTPS