“Naeel”
817f7377d5
docs(HISTORY): section 38 — DevOps Nubes diagnosis (flaky big-file bug, auth_test_mode on)
2026-08-17 13:51:31 +04:00
“Naeel”
57c0fcae3d
chore: убрать __pycache__ из трекинга, расширить .gitignore (pyc/бинарники/мусор)
2026-08-17 08:20:44 +04:00
“Naeel”
ed498a4f6e
docs(thinking): Nubes DevOps report — network issues + fixes
2026-08-16 20:43:03 +04:00
“Naeel”
c066a97e42
feat(landing): vertical large pipeline diagram; v0.1.13
2026-08-16 19:16:58 +04:00
“Naeel”
a0e73b0b7a
feat(landing): hand-drawn pipeline SVG diagram; v0.1.12
2026-08-16 19:11:17 +04:00
“Naeel”
6f609eca4b
docs(landing): rewrite as clear how-to (4 steps with copy-paste commands); v0.1.9
2026-08-16 18:51:59 +04:00
“Naeel”
bd6bc8777e
feat(api): landing page with Nubes design (logo+favicon), /static; v0.1.8
2026-08-16 18:46:17 +04:00
“Naeel”
3fedf9317c
fix: review findings (async SQS dispatcher, backoff, batch insert, shutdown order, pagination, HMAC) + loadtest fixes; v0.1.6
2026-08-16 18:24:09 +04:00
“Naeel”
090cedca67
test(loadtests): 10 load scenarios + verifier; docs: Sonnet review findings
2026-08-16 16:59:29 +04:00
“Naeel”
a4a11bae54
docs(HISTORY): section 30 — cluster resources + load-test directive
2026-08-16 16:46:40 +04:00
“Naeel”
4c8bb39354
docs: no-kubectl deployment procedure (tail 4) + HISTORY 28-29
2026-08-16 16:20:07 +04:00
“Naeel”
4ddd95a441
feat(emqx): PG-auth in EMQX v0.2.4 + EnsureBridgeDevice v0.1.2 (tail 3)
2026-08-16 16:18:49 +04:00
“Naeel”
d970958e5c
fix(bridge): resubscribe on every (re)connect; emqx v0.2.1 dashboard off; iot-service v0.1.1
2026-08-16 15:24:26 +04:00
“Naeel”
3ec8fe86c2
docs: HISTORY — подробная сводка развёрнутого стека, правила платформы, план хвостов
2026-08-16 15:11:13 +04:00
“Naeel”
31a7db18b2
docs: HISTORY — END-TO-END пройден: устройство→EMQX→bridge→SQS→consumer→PG→API; хвосты: AUTH_TEST_MODE, dashboard, процедура чужого кластера
2026-08-16 15:04:02 +04:00
“Naeel”
af0ebdfebc
docs: HISTORY — монолит поднят (sslmode=require), /health OK, EMQX переведён на адрес монолита; ошибки deck/pg_hba задокументированы
2026-08-16 14:52:20 +04:00
“Naeel”
f1199e4335
fix(emqx): v0.2.0 от официальной базы + резолвимые auth-заглушки — EMQX работает (502 устранён); HISTORY: развязка задокументирована
2026-08-16 14:22:35 +04:00
“Naeel”
0b9768e2f2
fix(emqx): mqtt_path→websocket.mqtt_path (v0.1.4, локально OK); HISTORY: на платформе boot висит — задокументировано
2026-08-16 13:48:26 +04:00
“Naeel”
2f127ee612
fix(emqx): v0.1.2 — procps для launcher (502 из-за ps: command not found); HISTORY: ошибки deck/502 задокументированы
2026-08-16 13:28:41 +04:00
“Naeel”
93af91f561
fix(emqx): v0.1.1 — сборка от debian, единственный EXPOSE 8083 (deck-UI берёт порт из образа, поле applicationUsePort в форме отсутствует)
2026-08-16 13:22:39 +04:00
“Naeel”
92c9a8a2f8
fix(emqx): EXPOSE только 8083 + комментарий про applicationUsePort в deck-UI
2026-08-16 13:17:43 +04:00
“Naeel”
06fb7ac231
docs: HISTORY — очередь iot-telemetry создана (тенант t-fec713a), готово к deck-UI
2026-08-16 10:23:51 +04:00
“Naeel”
dd80aa0bee
docs: HISTORY — PG готов: роль iot_service + БД iotdb на инстансе postgresqlk8s (проверено подключение), DSN формат
2026-08-16 10:22:14 +04:00
“Naeel”
a5bb95c9bd
docs: HISTORY — дисциплина: старое IoT не учитывать, только новые ресурсы
2026-08-16 10:18:00 +04:00
“Naeel”
88c33c4953
docs: HISTORY — проверка PG: старый инстанс dc5db45d удалён, живой 509145c3 (superuser OK, sqsdb отсутствует); нужен новый DSN + создать БД
2026-08-16 10:17:04 +04:00
“Naeel”
19a01128cd
docs: HISTORY — EMQX-образ, порядок деплоя контейнеров (EMQX → iot-service → kubectl-патч auth URL)
2026-08-16 10:13:34 +04:00
“Naeel”
b5333b13a0
feat: EMQX-образ для платформы (naeel/iot-emqx) — конфиг вшит, auth/ACL URL через env
2026-08-16 10:13:17 +04:00
“Naeel”
fd2e57b3dc
docs: HISTORY — Фаза 1 выполнена: монолит iot-service, структура пакетов, образ запушен (digest), инструкция deck-UI
2026-08-16 10:09:55 +04:00
“Naeel”
9d08473d5f
feat: монолит iot-service (Фаза 1) — config/store/api/bridge/consumer без k8s, устройства в PG, новые Dockerfile/Makefile
2026-08-16 10:07:51 +04:00
“Naeel”
f0c36a11ee
refactor: старые артефакты IoT перенесены в legacy/ (git mv, история сохранена); активное дерево очищено, go build OK
2026-08-16 09:48:34 +04:00
“Naeel”
bf32394def
docs: аудит вмешательства старого IoT — k8s-зависимости только в 3 хендлерах; Dockerfile помечен ЛЕГАСИ; правило монолита зафиксировано
2026-08-16 09:44:45 +04:00
“Naeel”
eb7d312d89
docs: пометка ЛЕГАСИ всего старого IoT (манифесты, CRD, оператор, документы, examples, Makefile) + корневой LEGACY.md; удалений нет
2026-08-16 09:37:29 +04:00
“Naeel”
f8537138dd
docs: HISTORY — старый IoT: зомби (поды Running, DNS снят, qu.kube5s.ru удалён — consumer в ошибке); wss-тест старого домена отменён
2026-08-16 09:31:33 +04:00
“Naeel”
b69f0b5276
docs: HISTORY — ответ Sonnet оценён: 7 поправок (PG не меняется, тот же кластер/шлюз, multi-port, EMQX env, /metrics, bcrypt, dedup); след.шаг: wss-тест старого прод-домена
2026-08-16 09:25:21 +04:00
“Naeel”
031e71b39d
docs: HISTORY — Vultr-тест: обрыв 163.3с идентичен станции — доказано, что ~150с рвёт краевой шлюз Nubes; данные для тикета
2026-08-16 09:13:06 +04:00
“Naeel”
f8c6b3e784
docs: HISTORY — итоги диагностики: платформа чиста (VM 300с/600с), обрыв только с пути станции (5/5), echo.org чист; план: тест с 3-й точки + тикет
2026-08-16 08:49:01 +04:00
“Naeel”
485f7c6fb1
docs: HISTORY — диагностика: под/nginx чисты, обрыв на краевом шлюзе (RUN1 ровно 173.1с), внутренний тест идёт
2026-08-16 08:38:32 +04:00
“Naeel”
11352a4fb3
docs: HISTORY — длительный wss-тест: обрыв на 173с (лимит соединений платформы ~150с?), план диагностики
2026-08-16 08:29:55 +04:00
“Naeel”
a857753cfd
docs: HISTORY — контейнер задеплоен, wss 101 + echo работают (ключевой вывод), длительный тест запущен
2026-08-16 08:26:38 +04:00
“Naeel”
de5be0c473
docs: HISTORY — правка инструкции deck-UI: образ latest (путь фиксирован, тег не сменяем)
2026-08-16 08:20:26 +04:00
“Naeel”
c912aafc30
docs: HISTORY — ws-probe создан, образ запушен (digest, инструкция deck-UI)
2026-08-16 08:18:37 +04:00
“Naeel”
27cb40e421
feat(ws-probe): тестовый WS echo-сервер для проверки wss на платформе Nubes (v0.1.0, образ naeel/iot-ws-probe)
2026-08-16 08:18:18 +04:00
“Naeel”
2a7ecd288e
docs: HISTORY 2026-08-16 — состояние IoT, выводы по миграции (контейнер vs Node.js), факты платформы из SQS-репо
2026-08-16 08:10:04 +04:00
Naeel
368ff060a2
fix(ingress): remove cert-manager + ssl-redirect, TLS is external
...
The platform (185.247.187.147) terminates TLS externally before nginx.
HTTP-01 ACME challenge was stuck for 8 days because the platform
globally redirects HTTP→HTTPS before reaching nginx ingress.
Changes:
- Remove cert-manager.io/cluster-issuer: letsencrypt-prod annotation
- Remove tls section (iot-kube5s-ru-tls secret was never created)
- Set ssl-redirect: false (TLS termination is at the edge, not nginx)
- Update comment to document the actual TLS architecture
2026-04-21 07:56:06 +03:00
Naeel
146aaef543
docs: add testing report v0.2.6 (33 tests, 3 bugs fixed)
...
- doc/testing-v0.2.6.md: full E2E testing report (8 groups, 33 tests)
- Group 1: E2E pipeline (MQTT→SQS→Postgres→API)
- Group 2: Device API error codes (7 tests)
- Group 3: MQTT Auth edge cases (11 tests)
- Group 4: Device lifecycle PATCH/DELETE
- Group 5: ACL topic isolation
- Group 6: Non-standard MQTT payloads
- Group 7: Telemetry API limits/filters
- Group 8: Load tests (900 msgs, race condition)
- deployments: bump mqtt-bridge + sqs-consumer to v0.2.6
2026-04-21 07:36:11 +03:00
Naeel
76c11d5476
fix: rename query param device->device_id in telemetry API (v0.2.6)
...
- GET /telemetry?device_id= now consistently uses device_id
- was: ?device= (inconsistent with response field name)
- found during extended test suite
2026-04-21 07:20:12 +03:00
Naeel
f0cc6df9a6
fix: MQTTAuth device lookup by Spec.DeviceID + PG15+ GRANT (v0.2.5)
...
- MQTTAuth: replaced Get(Name=deviceID) with List+filter by Spec.DeviceID
(K8s object name != deviceID — caused deny for all devices)
- EnsureTenantDB: added GRANT role TO CURRENT_USER before CREATE DATABASE OWNER
(PG15+ requires SET ROLE privileges for target owner)
- Image: naeel/iot-operator:v0.2.5
- E2E test passed: device create → MQTT publish → SQS → Postgres → REST API
2026-04-12 19:00:56 +03:00
Naeel
d5a177e23c
doc: обновлён progress — аудит sless документации, перечень созданных файлов v0.2.3
2026-04-12 18:43:48 +03:00
Naeel
907aaad100
docs: полная документация v0.2.3 — архитектура, API, деплой, тестирование
...
Новые файлы:
- doc/architecture/current-v0.2.3.md — актуальная архитектура
- doc/api/endpoints-v0.2.3.md — полная документация REST API
- doc/deployment-v0.2.3.md — инструкция деплоя v0.2.3
- doc/run-and-test.md — руководство по запуску и E2E тесту
Обновлено:
- doc/progress.md — секция документации
- doc/thinking/2026-04-12.md — лог мышления
2026-04-12 18:36:12 +03:00
Naeel
4cba163ace
doc: актуальная архитектура, thinking log, правила ФС и документации
2026-04-12 16:32:14 +03:00