1. Введение
Выгрузка для ИИ (JSON)EE DataCollector API сочетает асинхронный контур расчётов портрета/прогноза/Synthesis++, opt-in portrait-only structural export и синхронный hourly-endpoint для geocentric-прогноза Луны. Архитектура разделяет SubjectContext и TemporalContext.
# 1. Введение
2.3.0
2026-08-24
# Ключевые изменения
Сохранён асинхронный контур `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 продолжают работать без изменения контракта.
Добавлен additive opt-in structural export: create_task с response.structural_export=portrait_structural_v3 и чтение через get_structural_result.
# Сводная информация
https://digihash.ru/datacollector/api.php
2.3.0
HTTPS / JSON
# Возможности системы
- Асинхронная очередь задач для портрета, периодического прогноза и Synthesis++.
- Отдельный portrait-only structural export с provenance расчётных фактов и производных аналитических признаков.
- Синхронный hourly-endpoint для UI и сервисов, которым нужен готовый почасовой результат сразу.
- Разделение SubjectContext/TemporalContext во всех вычислениях.
- Серверное кэширование портретов, дневных прогнозов и нового почасового geocentric-прогноза.
- Режим критического отказа для внешних источников: при проблемах NASA JPL Horizons API не отдаёт фальшивый частичный успех.
# Архитектура решения
Этапы жизненного цикла
Клиент → POST create_task
Запускает тяжёлую составную задачу для портрета/прогноза/Synthesis++.
Worker → Асинхронный расчёт
Собирает итоговый payload и сохраняет его для последующего `get_result`.
Клиент → GET get_result или get_structural_result
Опрос обычного/Synthesis++ результата либо отдельного structural_v3 для opt-in задачи.
Клиент → 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