aleksey
31c2a1b7d7
fix: subscribe stats_collector after Mnesia tables are ready
...
CI / test (push) Failing after 13m10s
CI / deploy-ift (push) Has been skipped
CI / e2e-ift (push) Has been skipped
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
Backfill ran during init_tables before wait_for_tables, so dirty reads hit {no_exists,user} and crash-looped eventhub on IFT.
2026-07-18 23:33:56 +03:00
aleksey
fa07d91f4b
fix(ci): preflight registry DNS before IFT/stage deploy
CI / deploy-ift (push) Has been cancelled
CI / test (push) Successful in 25m20s
CI / e2e-ift (push) Has been cancelled
CI / deploy-stage (push) Has been cancelled
CI / e2e-stage (push) Has been cancelled
2026-07-18 12:53:46 +03:00
aleksey
1cd7c2e402
fix(test): stub all migrations in migration_engine join-wait. Refs EventHub/EventHubBack#42
CI / test (push) Successful in 27m9s
CI / deploy-ift (push) Failing after 3m35s
CI / e2e-ift (push) Has been skipped
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
2026-07-18 10:40:12 +03:00
aleksey
dd754e28cc
feat: upsert stats counters, daily buckets and ETS tops for admin metrics. Refs EventHub/EventHubBack#42 #43 #44 #45 #46
CI / test (push) Failing after 25m40s
CI / deploy-ift (push) Has been skipped
CI / e2e-ift (push) Has been skipped
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
2026-07-17 23:10:00 +03:00
aleksey
f2445db66c
chore: skip ci for ApiTests reuse push. [skip ci]
2026-07-17 23:05:17 +03:00
aleksey
046e936eab
fix(ci): reuse ApiTests image in e2e instead of blind rebuild.
...
e2e pulled/reused eventhub-tests from test job or registry; plain buildkit logs if rebuild needed. Root cause of #342 e2e cancel: quiet rebuild + prune + timeout.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-17 22:57:50 +03:00
aleksey
5806bb0f95
feat(ci): push product version tag MAJOR.MINOR.BUILD alongside sha-*.
...
[skip ci]
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-17 22:29:08 +03:00
aleksey
ffe8d97cc5
chore: skip ci for versioning push. [skip ci]
2026-07-17 21:54:33 +03:00
aleksey
cd61aaff20
feat: bake product version from Spec and expose build in health.
...
Resolve MAJOR.MINOR via EventHubSpec/VERSION; CI run_number as EVENTHUB_BUILD; health returns version/build/git_sha/built_at.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-17 21:48:24 +03:00
aleksey
2b65a804d3
fix(ci): materialize rebar test src_dirs in shared test image. Refs EventHub/EventHubBack#36
CI / test (push) Successful in 28m14s
CI / deploy-ift (push) Successful in 7m42s
CI / e2e-ift (push) Failing after 21m40s
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
2026-07-17 19:35:12 +03:00
aleksey
e9d1a13900
Добавить автомодерацию: политики, порог жалоб, settings/hits API и тесты.
...
CI / test (push) Failing after 37m9s
CI / deploy-ift (push) Has been skipped
CI / e2e-ift (push) Has been skipped
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
Refs EventHub/EventHubBack#37
Refs EventHub/EventHubBack#38
Refs EventHub/EventHubBack#39
Refs EventHub/EventHubBack#40
2026-07-17 18:09:31 +03:00
aleksey
4fa802702f
Rewrite and expand EUnit suite; run unit tests in CI from shared test image. Refs EventHub/EventHubBack#36 [skip ci]
2026-07-17 15:16:46 +03:00
aleksey
9d2780fef4
fix(swarm): per-slot Mnesia volume via Swarm name template.
...
CI / test (push) Successful in 15m10s
CI / deploy-ift (push) Successful in 7m22s
CI / e2e-ift (push) Successful in 5m21s
CI / deploy-stage (push) Successful in 6m35s
CI / e2e-stage (push) Successful in 15m12s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-17 10:09:41 +03:00
aleksey
5e569da1d8
fix(mnesia): per-slot volumes hint and harden verification lookup.
...
CI / test (push) Failing after 5m10s
CI / deploy-ift (push) Has been skipped
CI / e2e-ift (push) Has been skipped
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
Avoid shared Mnesia dir across replicas; make get_or_create_token and CT verify_user resilient to brief cross-node lag.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-17 09:54:10 +03:00
aleksey
a696d25486
Добавить авто-регистрацию тикетов (hash/dedupe/500/WS). Refs EventHub/EventHubBack#35
CI / test (push) Successful in 21m45s
CI / deploy-ift (push) Successful in 6m8s
CI / e2e-ift (push) Failing after 6m13s
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
2026-07-17 00:44:09 +03:00
aleksey
0a52712258
docs(tsung): record IFT ceiling ladder and maxusers=150 soft OVER.
...
Refs EventHub/EventHubBack#30 [skip ci]
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 23:09:48 +03:00
aleksey
6d8f02d0d4
fix(mnesia): add local ram_copies on joining nodes for verification/session.
...
CI / test (push) Successful in 12m37s
CI / deploy-ift (push) Successful in 5m27s
CI / e2e-ift (push) Successful in 4m56s
CI / deploy-stage (push) Successful in 6m24s
CI / e2e-stage (push) Successful in 6m52s
Joining replicas hit already_exists without add_table_copy, so register/verify crashed with no_exists on node2. Refs EventHub/EventHubBack#30
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 20:52:31 +03:00
aleksey
4327de486f
fix(mnesia): apply dump_log_write_threshold before mnesia start.
...
CI / test (push) Successful in 16m25s
CI / deploy-ift (push) Successful in 5m49s
CI / e2e-ift (push) Failing after 4m38s
CI / deploy-stage (push) Has been skipped
CI / e2e-stage (push) Has been skipped
change_config rejected the key; set_env + verify enables the IFT ceiling ladder. Refs EventHub/EventHubBack#30 Refs EventHub/EventHubBack#34
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 19:22:32 +03:00
aleksey
6dc06ccdf4
refactor(ci): единый ci.yml; удалены legacy deploy/e2e/build-and-test workflows.
...
CI / test (push) Successful in 13m31s
CI / deploy-ift (push) Successful in 5m29s
CI / e2e-ift (push) Successful in 4m51s
CI / deploy-stage (push) Successful in 6m16s
CI / e2e-stage (push) Successful in 18m11s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 16:19:20 +03:00
aleksey
77a53c77cd
fix(audit): reason и entity_id в audit как строки, не map.
...
CI / test (push) Successful in 15m19s
Модерация писала #{reason => ...} — UI падал с React #31 .
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 14:08:25 +03:00
aleksey
6d91e9cf18
fix(test): пропускать посторонние WS-сообщения при ожидании node_metric.
...
CI / test (push) Successful in 22m0s
На shared IFT в /admin/ws/metrics приходил report_created от других тестов/активности.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 13:13:34 +03:00
aleksey
ee247bd7e7
fix(ci): всегда пересобирать API test image в E2E стенда.
...
CI / test (push) Successful in 14m16s
Кэш eventhub-api-tests:local оставлял старый audit-тест без remote-ветки.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 12:44:44 +03:00
aleksey
84a494e215
fix(ci): WS-хосты стенда и audit-тест в remote CT.
...
CI / test (push) Successful in 15m59s
ws.* / admin-ws.* в Traefik; audit IP на стенде — не unknown вместо XFF.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 12:15:42 +03:00
aleksey
50c6d671b8
feat(ci): последовательный deploy IFT -> E2E -> stage -> E2E (core).
...
CI / test (push) Successful in 14m42s
Stage после API CT remote на IFT; после stage — smoke-core + полный CT на stage.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-16 11:31:22 +03:00
aleksey
7fa24e831c
chore(ift): trigger CI rebuild after skip-ci fixes for loadtest verify
...
CI / test (push) Successful in 18m58s
Refs EventHubBack#32 #33 #34
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-15 17:49:16 +03:00
aleksey
94106cf964
fix(mnesia): поднять dump_log_write_threshold; Traefik base v3.3.6. Refs EventHub/EventHubBack#34 Refs EventHub/EventHubDevOps#3 [skip ci]
2026-07-15 17:28:39 +03:00
aleksey
f7f0038556
test(api): CT на портах 18080/18445 вне docker-dev [skip ci]
2026-07-15 17:10:19 +03:00
aleksey
6441be61b1
fix(archive): async peer start в archive_manager, без краша gen_server. Refs EventHub/EventHubBack#33 [skip ci]
2026-07-15 17:10:16 +03:00
aleksey
823274caab
docs(loadtest): hold/stress профили и правила безопасности IFT. Refs EventHub/EventHubBack#31 [skip ci]
2026-07-15 16:00:33 +03:00
aleksey
c1ba207374
chore: push without CI [skip ci]
2026-07-15 00:19:05 +03:00
aleksey
6bba96c36e
fix(loadtest): verify через admin verification-token, убрать token из register. Refs EventHub/EventHubBack#30
2026-07-15 00:12:32 +03:00
aleksey
e8b90606c3
feat(loadtest): IFT Tsung smoke/mix + verification_token на стендах. Refs EventHub/EventHubBack#30
2026-07-15 00:08:48 +03:00
aleksey
2eeda5c4c4
feat(backend): build identity в health, VERSION bake и auto stage по sha-*
CI / test (push) Successful in 28m3s
2026-07-14 21:25:40 +03:00
aleksey
ff4ab23264
fix(backend): IP в аудите, closed_at тикетов и admin_activity в статистике. Refs EventHub/EventHubBack#27 #28 #29
CI / test (push) Successful in 15m13s
Deploy stage (core) / deploy-stage-core (push) Successful in 4m57s
2026-07-13 14:53:51 +03:00
aleksey
4281342416
fix(makefile): восстановить UTF-8 комментарии и help-текст
...
CI / test (push) Failing after 9m3s
Кириллица была повреждена в 6890dff (замена на ?); восстановлено из 16203ba с сохранением stage URL и prune-скриптов.
2026-07-12 12:18:46 +03:00
aleksey
a2ccf167aa
chore(docker): prune образов после swarm-deploy, env стендов в gitignore
...
CI / test (push) Failing after 13m57s
docker/.env.ift и .env.stage локально, не в репозитории; image prune в make docker-swarm-deploy.
2026-07-12 11:58:21 +03:00
aleksey
a8e6dcb8f5
fix(docker): crash loop fallback и observer-web на IFT
...
CI / test (push) Failing after 11m40s
fallback: default_type вне if-блока nginx. observer-web: Hex/deps.compile в образе, без dev-watchers в контейнере.
2026-07-12 11:12:16 +03:00
aleksey
09ecfdff1e
fix(deploy-stage): deploy до prune, prune continue-on-error
...
CI / test (push) Has been cancelled
Deploy не должен блокироваться из-за очистки registry (run 118).
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-11 16:44:47 +03:00
aleksey
2abf3d0edb
fix(deploy-stage): workflow_dispatch и clone DevOps с master
...
CI / test (push) Failing after 7m51s
Повтор run 109 на теге v0.1.1 брал старый promote; promote/prune теперь
клонируют EventHubDevOps с master, dispatch позволяет указать sha и tag.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-11 16:03:31 +03:00
aleksey
3b6c20ac34
Co-authored-by:
CI / test (push) Failing after 9m31s
2026-07-11 15:41:35 +03:00
aleksey
3f5dde4986
Co-authored-by:
CI / test (push) Successful in 9m40s
Deploy stage (core) / deploy-stage-core (push) Failing after 33s
2026-07-11 15:14:06 +03:00
aleksey
936a99cc07
Co-authored-by:
CI / test (push) Has been cancelled
2026-07-11 15:10:06 +03:00
aleksey
899341d26d
Co-authored-by:
2026-07-11 15:00:03 +03:00
aleksey
21a2a39746
Co-authored-by:
CI / test (push) Successful in 8m23s
2026-07-11 14:56:18 +03:00
aleksey
f79264ece9
Co-authored-by:
CI / test (push) Successful in 10m55s
2026-07-11 14:33:53 +03:00
aleksey
214955399e
CI: wait for Docker daemon before buildx on WSL runner.
...
CI / test (push) Failing after 4m15s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-11 12:41:06 +03:00
aleksey
e8464b3a8b
Add shared Erlang builder/runtime base images from registry.
...
CI / test (push) Successful in 7m42s
Publish erlang-builder and erlang-runtime as :latest, use them in prod and API test builds, auto-collect NIF libs, and sync CI to pull/push bases before eventhub build.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-11 12:25:42 +03:00
aleksey
14c0ac9220
Fix Unicode env parsing in infra_secrets for stage startup.
...
CI / test (push) Successful in 18m50s
Use unicode:characters_to_binary for os:getenv values so Cyrillic placeholder passwords fail with weak_secret instead of badarg crash.
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-10 19:29:17 +03:00
aleksey
76f52030d1
observer-web: multi-stage Dockerfile to reduce registry push size.
...
CI / test (push) Successful in 15m23s
Deploy stage (core) / deploy-stage-core (push) Failing after 2m58s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-10 17:02:06 +03:00
aleksey
feac915454
Fix observer-web build: use npm tailwind/esbuild instead of GitHub download.
...
CI / test (push) Successful in 18m45s
Co-authored-by: Cursor <cursoragent@cursor.com >
2026-07-10 16:16:54 +03:00