auto-sync: 2026-04-24 14:00:01

This commit is contained in:
Stream
2026-04-24 14:00:01 +03:00
parent 78f434c677
commit c06b3fa9cc
2 changed files with 58 additions and 0 deletions

57
memory/2026-04-24.md Normal file
View File

@@ -0,0 +1,57 @@
# 2026-04-24 — Memory Flush (pre-compaction)
## FR24 Noisemap Project — состояние на 2026-04-21
### Что сделано
- DDL: `origin_icao`/`destination_icao` VARCHAR(5)→VARCHAR(20) в `flight_tracks_fa`
- `fa_worker.py`: `_icao_or_none()` фильтрует координаты
- `build_mart.py`: словарь `AIRLINE_IATA_TO_ICAO`, конвертация callsign, числовой матч по `ident_iata`
- Фикс `decimal.Decimal / float``float(alt_m)` в шумовой модели
- Витрина 19.04: 99 рейсов с треком (rtlsdr=92, fa=3, fr24=2)
- Создана таблица `fr24_ext.flight_actual` (DDL-миграция на VM)
- `FR24_API_KEY=MVM0hi4S7RRh7Dm4EOl1ShpDPc8CrmITXT2LY5y4dd84a62a` добавлен в `.env` на VM
- Пагинация flight-summary/full: цикл offset += 20
- UI enrichment: `schedule.html` (13 колонок), `schedule.js`, `main.py` (LEFT JOIN на flight_actual)
- DDL-миграция schedule: `fr24_id`, `actual_takeoff`, `actual_landed`, `delay_*`, `flight_category`, `registration`
- Задеплоено через `docker cp` → fr24-api, fr24-tracks-fr24, fr24-mart
### In Progress / Pending
- Загрузка FR24 flight-summary/full за 2026-04-20 (pid=1222822) — статус не подтверждён
- Яндекс backfill 06-19.04 — rate limit 429, статус сброса неизвестен
### Open TODOs (на момент compaction)
1. DDL: добавить `orig_iata VARCHAR(5)` и `dest_iata VARCHAR(5)` в `fr24_ext.flight_actual` — ждёт окончания fr24_run3
2. Задеплоить обновлённый `fr24_worker.py` в fr24-tracks-fr24 (с сохранением orig_iata/dest_iata)
3. Задеплоить обновлённый `main.py` в fr24-api (с fallback маршрута из FA IATA-кодов)
4. Обновить `routeStr()` в `schedule.js`: fallback на `fa_orig_iata`/`fa_dest_iata` (IATA → city lookup)
5. Добавить `conn.rollback()` в error handler `main.py` fr24-api (aborted transaction bug)
6. Проверить маппинг полей: FR24 API → `orig_icao` (не `origin_icao`), `reg` (не `registration`)
7. Яндекс backfill 06-19.04 (429 rate limit, ждёт сброса ~01:00 UTC)
8. Пересборка Docker образов (docker compose build) для устойчивого деплоя
### Key Decisions
- **Приоритет маршрута в UI**: 1й — `thread_title` Яндекса, 2й — IATA-коды FR24 (`orig_iata`/`dest_iata`) через IATA_CITY
- **FR24 API поля**: `operating_as` (не `operated_as`), `orig_icao`, `orig_iata`, `dest_icao`, `dest_iata`, `reg` (не `registration`)
- **supplement_schedule()**: INSERT рейсов из flight_actual которых нет в Яндекс-расписании, source='fr24'
- **Деплой**: docker cp → docker restart (или compose up -d для пересборки из файлов на хосте)
- **Explorer лимит**: 20 записей/запрос, offset-пагинация работает; ~4500 кредитов/день за все рейсы
### Инфраструктура
- VM: `fr24@192.168.2.67:22` via ProxyCommand `vpn-srv``185.130.212.192:3322`
- SSH key: `/home/node/.openclaw/ha_ssh_key`
- Postgres: host=`postgres`(172.18.0.2), dbname=`fr24`, user=`fr24`, password=`change-me`
- Compose: `/home/fr24/projects/fr24/compose/docker-compose.yml`
- Исходники на VM: `/home/fr24/projects/fr24/`
- Workspace: `/home/node/.openclaw/workspace/tasks/flightradar24/`
- Reports: `/home/node/.openclaw/workspace/tasks/flightradar24/reports/`
- FR24 credits: ~44 811 (промо до 31.05.2026)
- **FR24 API key (новый, 24.04.2026):** `019dbf18-3575-71d0-84eb-eb44606fbb63|QU3h8jqLPFyuo9qbQbPu9uoXVK42bTeclMuyRJ5Qb86ba0ea`
- Старый ключ: `MVM0hi4S7RRh7Dm4EOl1ShpDPc8CrmITXT2LY5y4dd84a62a` (деактивирован)
- Контейнеры: fr24-postgres, fr24-api(:8080), fr24-mart, fr24-tracks-fr24(:8001), fr24-tracks-fa, fr24-schedule, fr24-preprocess, fr24-capture, fr24-monitoring, fr24-backup
### Файлы
- `fr24_worker.py`: `/home/node/.openclaw/workspace/tasks/flightradar24/ingest/tracks_fr24/fr24_worker.py`
- `main.py` (API): `/home/node/.openclaw/workspace/tasks/flightradar24/frontend/main.py`
- `schedule.js`: `/home/node/.openclaw/workspace/tasks/flightradar24/frontend/static/schedule.js`
- `schedule.html`: `/home/node/.openclaw/workspace/tasks/flightradar24/frontend/static/schedule.html`
- `build_mart.py`: `/home/node/.openclaw/workspace/tasks/flightradar24/ingest/mart/build_mart.py`