567e797fae
feat(tradein): cian city-sweep — один прогон SERP+detail(+price-history)+houses
...
run_cian_city_sweep итерирует EKB_ANCHORS, per anchor:
SERP (fetch_around_multi_room) → save_listings → detail top-N (incl. price-history)
→ newbuilding/houses (if enrich_houses=True).
Admin endpoints: POST /scrape/cian-city-sweep, GET /runs, POST /{id}/cancel.
Без scrape_schedules seed (ручной запуск, cron-bulk = 429-бан на Cian).
2026-05-31 10:19:55 +03:00
d78ae9f649
feat(tradein): avito city-sweep — IMV-фаза (один прогон = SERP+detail+houses+IMV) ( #861 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 29s
Deploy Trade-In / build-backend (push) Successful in 40s
Deploy Trade-In / deploy (push) Successful in 34s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 07:09:42 +00:00
4494866574
fix(tradein): route yandex/valuation/imv/newbuilding scrapers через scraper_proxy_url ( #860 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 28s
Deploy Trade-In / deploy (push) Successful in 35s
Deploy Trade-In / build-backend (push) Successful in 40s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 07:04:31 +00:00
b16a45ef87
feat(tradein): per-cadastral-quarter price index in estimator ( #764 ) ( #858 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 28s
Deploy Trade-In / build-backend (push) Successful in 40s
Deploy Trade-In / deploy (push) Successful in 34s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:53:21 +00:00
5cfab0b23e
fix(bots): подключить postgres-tradein MCP в analyst/backend bot-окна ( #857 )
2026-05-31 06:44:46 +00:00
5373f5db63
feat(tradein): admin backfill endpoints — cian price-history (T8a) + yandex address (T10) + house IMV (T7) ( #856 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 28s
Deploy Trade-In / build-backend (push) Successful in 39s
Deploy Trade-In / deploy (push) Successful in 34s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:37:10 +00:00
a920d057da
Merge pull request 'chore(agents): analyst inbound queue (status/needs-analysis) + tradein DB access' ( #852 ) from chore/analyst-inbound-queue-tradein-db into main
...
Reviewed-on: #852
2026-05-31 06:36:37 +00:00
4795bcd3a3
chore(agents): analyst — разбирает всю inbound-очередь за тик + параллельные саб-агенты, без throttle
...
- INBOUND PICKUP: забирает ВСЕ status/needs-analysis тикеты в одном тике
(не один-за-тик), затем продолжает на proactive в том же тике.
- Убран THROTTLE по размеру ready-очереди (gate ready≥10 + hard-rule) —
декомпозирует всё найденное, дубли отсекает по pipeline-карте, не по счётчику.
- Новая секция «Параллельный анализ через саб-агенты»: ≥2 непересекающихся
work-item → параллельные read-only Explore/general-purpose на archeology,
synthesize+CREATE делает analyst (single writer); hot-file overlap → sequential.
- +Task в whitelist. Перенумерованы шаги (1-9) + cross-refs.
2026-05-31 09:34:04 +03:00
26ea2f72d8
chore(agents): analyst inbound queue (status/needs-analysis) + tradein DB access
...
- auto-analyst: новый INBOUND PICKUP режим — забирает issues с label
status/needs-analysis (человек→бот канал), refine in-place в status/ready
или split на под-issues. + PIPELINE STATE READ для осведомлённости об
очередях backend/frontend/db/qa (дедуп + throttle gate). Перенумерованы
шаги per-tick (1-10) + cross-refs.
- _autonomous_pickup: label status/needs-analysis (id 64) в таблицу +
4 state-transitions + семантика входящей очереди.
- backend-engineer + tech-analyst + auto-analyst: доступ к отдельной
postgres-tradein БД (scraped listings/estimator/coverage) — tradein
issues метрик-heavy, без live-чтения работа вслепую.
2026-05-31 09:25:54 +03:00
99c751f834
test(tradein): align yandex history tests с batch-executemany (unblock deploy) ( #851 )
...
Deploy Trade-In / deploy (push) Successful in 37s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 24s
Deploy Trade-In / build-backend (push) Successful in 40s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:16:45 +00:00
da28a52067
feat(tradein): avito citywide + byrooms sweep mode (T6) ( #848 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Failing after 24s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:13:19 +00:00
571be4233b
feat(tradein): yandex SERP curl_cffi+cookies transport + rooms×price combos (T4+T5) ( #847 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Failing after 26s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:11:30 +00:00
5d2af47b87
fix(tradein): cian SERP warm-up GET для seed cookies (_CIAN_GK/_yasc) (T2) ( #846 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Failing after 25s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-31 06:01:30 +00:00
de6afc99fa
fix(tradein): a11y follow-up — sr-only th-текст + heading-order ( #835 ) ( #845 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 1m35s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 37s
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 21:13:19 +00:00
19c69be493
fix(tradein): recharts a11y — aria-hidden чарты, h1, aria-label th ( #835 ) ( #844 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 36s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 2m16s
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 20:49:19 +00:00
3885b9f62d
fix(tradein): контраст AA follow-up — muted-on-tint, rating, sold-delta ( #834 ) ( #842 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 1m33s
Deploy Trade-In / deploy (push) Successful in 35s
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 20:43:10 +00:00
cd406225fc
fix(tradein): aria-label на input[type=file] в PhotoUpload — a11y critical ( #839 ) ( #841 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 1m35s
Deploy Trade-In / deploy (push) Successful in 36s
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 20:30:49 +00:00
08509b1b78
fix(scrapers): normalize cian descriptionMinhash list[int]→str + silent-0 guard (Refs #836 ) ( #840 )
...
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Failing after 25s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:28:56 +00:00
86307f5eba
fix(tradein): контраст muted/teal токенов до WCAG AA ( #834 ) ( #838 )
...
Deploy Trade-In / build-frontend (push) Successful in 1m34s
Deploy Trade-In / deploy (push) Successful in 36s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 20:23:00 +00:00
068bd8b5f8
fix(tradein): gas leaflet map в ui-preview для CI-аудита ( #801 ) ( #837 )
...
Deploy Trade-In / build-frontend (push) Successful in 1m53s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 36s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:15:58 +00:00
80a063b482
feat(observability): sentry alert on N consecutive scraper failures (Refs #827 ) ( #833 )
...
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Failing after 24s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:10:29 +00:00
fd75f4d47a
perf(estimator): executemany batch insert in _save_yandex_history_items (Refs #826 ) ( #832 )
...
Deploy Trade-In / changes (push) Successful in 26s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Failing after 27s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:07:06 +00:00
f22ca1f17e
fix(tradein): seed sales-vs-listings → StreetDeals в preview (1:1) ( #801 ) ( #831 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-frontend (push) Failing after 1s
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / deploy (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:04:17 +00:00
f7deed096b
fix(scrapers): avito per-card parse_failures counter + logging (Refs #823 ) ( #830 )
...
Deploy Trade-In / changes (push) Successful in 4s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 25s
Deploy Trade-In / build-backend (push) Successful in 1m11s
Deploy Trade-In / deploy (push) Has been cancelled
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 20:01:50 +00:00
2739973285
fix(scrapers): COALESCE-backfill listing_date/area_m2 in save_listings ON CONFLICT (Refs #821 ) ( #829 )
...
Deploy Trade-In / changes (push) Successful in 6s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 25s
Deploy Trade-In / build-backend (push) Successful in 40s
Deploy Trade-In / deploy (push) Successful in 36s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 19:58:06 +00:00
20ec4647d3
feat(tradein): ui-preview/estimate — все 17 секций на оффлайн-фикстуре ( #801 ) ( #828 )
...
Deploy Trade-In / deploy (push) Blocked by required conditions
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Has been cancelled
Co-authored-by: lekss361 <lekss361@gendsgn.local>
Co-committed-by: lekss361 <lekss361@gendsgn.local>
2026-05-30 19:57:04 +00:00
31d24ffbdb
fix(tradein): error/not-found/loading UI при restore по ?id= ( #822 ) ( #825 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 1m33s
Deploy Trade-In / deploy (push) Successful in 36s
Co-authored-by: bot-frontend <bot-frontend@gendsgn.local>
Co-committed-by: bot-frontend <bot-frontend@gendsgn.local>
2026-05-30 19:49:47 +00:00
1a733302c2
Merge pull request 'fix(tradein): import trade-in.css в ui-preview ( #801 )' ( #820 ) from fix/801-preview-css into main
...
Deploy Trade-In / build-backend (push) Has been skipped
Deploy Trade-In / build-frontend (push) Successful in 1m35s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 36s
Reviewed-on: #820
2026-05-30 19:34:05 +00:00
lekss361
a357aedb45
fix(tradein): preview обёрнут в .page/.result-col (desktop-раскладка, не «мобильная») ( #801 )
...
Голый <main maxWidth:920> без layout-классов реальной страницы → карточки
рендерились узко/одной колонкой («мобильный» вид). Обёрнуто в .page > .result-col
(как page.tsx) — flex-column gap, --container ширина.
Refs #801 .
2026-05-30 22:30:59 +03:00
lekss361
553fb6b9c2
fix(tradein): import trade-in.css в ui-preview (страница была без стилей) ( #801 )
...
Preview-маршрут /ui-preview/estimate рендерил голый текст: все остальные
страницы (page.tsx, history, scrapers/*) импортят
@/components/trade-in/trade-in.css, а preview — нет → классы .card/.hero-/
.price-figure/.card-meta без стилей (в бандл роута CSS не попадал). Добавлен
import. globals.css (Tailwind) уже подключён в layout.
Refs #801 .
2026-05-30 22:25:20 +03:00
01593be438
feat(scrapers): route cian sessions through mobile proxy (Refs #806 ) ( #818 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 25s
Deploy Trade-In / build-backend (push) Successful in 39s
Deploy Trade-In / deploy (push) Successful in 35s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 19:10:36 +00:00
7bd5a834dc
fix(tradein): cian _cianConfig concat-формат + auth из header-frontend ( #639 ) ( #819 )
...
Deploy Trade-In / test (push) Successful in 25s
Deploy Trade-In / build-backend (push) Successful in 41s
Deploy Trade-In / deploy (push) Successful in 35s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 19:08:01 +00:00
a48205391c
Merge pull request 'hotfix(caddy): @uipreview named matcher (fix prod-down crash-loop)' ( #817 ) from hotfix/caddy-uipreview-named-matcher into main
Deploy / changes (push) Successful in 5s
Deploy / build-backend (push) Successful in 26s
Deploy / build-frontend (push) Successful in 24s
Deploy / build-worker (push) Successful in 27s
Deploy / deploy (push) Successful in 56s
2026-05-30 18:52:11 +00:00
547ab37597
hotfix(caddy): named matcher @uipreview — handle не принимает несколько inline-путей → caddy crash-loop, прод down ( #801 )
2026-05-30 18:52:09 +00:00
2ebfe2352d
Merge pull request 'fix(caddy): exempt /trade-in/_next/static/* (ui-preview CSS) ( #801 )' ( #816 ) from chore/caddy-ui-preview-next-static into main
Deploy / deploy (push) Blocked by required conditions
Deploy / changes (push) Successful in 5s
Deploy / build-backend (push) Successful in 27s
Deploy / build-worker (push) Successful in 26s
Deploy / build-frontend (push) Successful in 26s
2026-05-30 18:47:03 +00:00
b779376f9d
fix(caddy): exempt /trade-in/_next/static/* too — CSS/JS на ui-preview грузились под auth → 401 ( #801 )
2026-05-30 18:47:01 +00:00
7330d10dcc
Merge pull request 'chore(tradein): enable /ui-preview on prod (NEXT_PUBLIC_ENABLE_PREVIEW) ( #801 )' ( #813 ) from chore/enable-ui-preview-prod into main
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Successful in 28s
Deploy Trade-In / build-backend (push) Successful in 28s
Deploy Trade-In / build-frontend (push) Successful in 1m55s
Deploy Trade-In / deploy (push) Failing after 8s
2026-05-30 18:40:41 +00:00
ae1a35140c
ci(tradein): pass NEXT_PUBLIC_ENABLE_PREVIEW=1 to frontend build ( #801 )
2026-05-30 18:40:22 +00:00
f72edb828a
chore(tradein-fe): bake NEXT_PUBLIC_ENABLE_PREVIEW build-arg ( #801 )
2026-05-30 18:40:21 +00:00
40a78c3670
Merge pull request 'chore(caddy): exempt /trade-in/ui-preview/* from basic_auth ( #801 )' ( #810 ) from chore/caddy-ui-preview-exempt into main
Deploy / changes (push) Successful in 5s
Deploy / build-backend (push) Successful in 26s
Deploy / build-worker (push) Successful in 26s
Deploy / build-frontend (push) Successful in 25s
Deploy / deploy (push) Successful in 57s
2026-05-30 18:30:16 +00:00
c73a79ee6f
Merge pull request 'feat(estimator): exclude city-centroid listings from radius analogs (Refs #769 Part E)' ( #811 ) from fix/769-e-geo-centroid into main
...
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / build-backend (push) Successful in 40s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / test (push) Successful in 26s
Deploy Trade-In / deploy (push) Successful in 36s
Reviewed-on: #811
2026-05-30 18:26:39 +00:00
86d98aac30
Merge pull request 'fix(frontend): pilot-only юзер → auto-redirect на /trade-in/ вместо «Доступа нет» ( #799 )' ( #809 ) from feat/799-pilot-redirect-tradein into main
...
Deploy / build-backend (push) Has been skipped
Deploy / build-worker (push) Has been skipped
Deploy / changes (push) Successful in 5s
Deploy / build-frontend (push) Successful in 2m48s
Deploy / deploy (push) Successful in 1m0s
Reviewed-on: #809
2026-05-30 18:23:06 +00:00
b736d7b7e0
feat(estimator): exclude city-centroid listings from radius analogs (Refs #769 Part E)
...
Закрывает последнюю часть #769 (A1/A2/B/C/D в #798/#804). Finding #17 :
bare-city адреса геокодились в city-центроид и сохранялись как точные lat/lon →
mislocated листинги участвовали в radius ST_DWithin-аналогах.
- 089: ALTER TABLE listings ADD COLUMN IF NOT EXISTS geo_precision text (idempot).
- ScrapedLot.geo_precision + проброс в save_listings.
- geocode_missing.py: geo_precision='city' через существующий _geocode_is_coarse.
- estimator _fetch_analogs Tier H+W: + AND (geo_precision IS DISTINCT FROM 'city').
NULL проходит (консервативно, сдвига до backfill нет). Pricing не тронут.
7 тестов; 270 passed, ruff clean.
2026-05-30 21:22:21 +03:00
84f6d57d9d
chore(caddy): exempt /trade-in/ui-preview/* from basic_auth ( #801 )
...
Public CI surface для a11y/lighthouse аудита. /ui-preview/estimate (#803 ) рендерит mock-фикстуру без бэкенда, но Caddy basic_auth отдавал 401. handle-блок ДО auth-import → публично.
2026-05-30 18:21:34 +00:00
654ce7b6c8
fix(frontend): pilot-only юзер → auto-redirect на /trade-in/ вместо «Доступа нет»
...
RouteGuard: при denied path главного фронта (корень / и пр.) если у роли
единственная рабочая зона — trade-in (isPathAllowed(/trade-in/)=true) →
window.location.replace('/trade-in/') вместо дед-энда NoAccessScreen.
Guard от петли: не редиректить если путь уже под /trade-in. admin/multi-scope
с разрешённым / не затронуты. Вариант 2 из issue (без Caddy/backend).
Refs #799
2026-05-30 21:18:19 +03:00
ae820d3bd9
docs(agents): auto-analyst verify-before-ready + dedup/loop guardrails
...
Из инцидентов live-сессии 2026-05-30:
- шаг 4: file:line из vault-заметки НЕВЕРИФИЦИРОВАН — Read+confirm своими глазами
до вписывания в issue (incident: спека «перевести на JSON», код уже на JSON)
- шаг 7: status/ready только на финальном verified-теле, не «ready→переписываю»
(incident #697/#699 — воркер смержил по тонкому телу за ~30s)
- «поменяй лейблы» ⇒ также аудит+переписывание тонкого тела до ready
- _autonomous_pickup: dedup-before-create обязателен при параллельных окнах
(incident #724/#728 vs #726/#727), list_repo_issues всегда с фильтром (token-limit)
- work-as-analyst: один loop-механизм, CronDelete перед CronCreate
- fix stale cross-ref шаг 6 → шаг 8
2026-05-30 21:15:48 +03:00
a7a839b512
Merge pull request 'chore(auth): regenerate praktika pilot password' ( #807 ) from chore/praktika-password into main
...
Deploy / changes (push) Successful in 5s
Deploy / build-backend (push) Successful in 28s
Deploy / build-worker (push) Successful in 27s
Deploy / build-frontend (push) Successful in 26s
Deploy / deploy (push) Successful in 57s
Reviewed-on: #807
2026-05-30 18:15:28 +00:00
lekss361
a42ca6a014
chore(auth): regenerate praktika pilot password (#635/#659)
...
Сброшен пароль praktika (Практика, pilot) — plaintext не был зафиксирован в
vault, не верифицируем как «выдан клиенту». Новый base64(bcrypt) hash; plaintext
записан в vault meta/00_credentials.md (Caddy basic_auth таблица). Применится
deploy git-reset /opt/gendesign + restart gendesign-caddy-1.
Refs #659 .
2026-05-30 21:10:09 +03:00
950d0f60de
fix(tradein): sweep shared-session (SERP+detail) через mobile proxy ( #623 ) ( #805 )
...
Deploy Trade-In / test (push) Successful in 26s
Deploy Trade-In / build-backend (push) Successful in 42s
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / deploy (push) Successful in 34s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 18:07:37 +00:00
a9e4aecb54
fix(tradein): data-layer tail A2+B+C — trgm index, FDW options, matview refresh (Refs #769 ) ( #804 )
...
Deploy Trade-In / changes (push) Successful in 5s
Deploy Trade-In / build-frontend (push) Has been skipped
Deploy Trade-In / test (push) Successful in 26s
Deploy Trade-In / build-backend (push) Successful in 40s
Deploy Trade-In / deploy (push) Successful in 36s
Co-authored-by: bot-backend <bot-backend@gendsgn.local>
Co-committed-by: bot-backend <bot-backend@gendsgn.local>
2026-05-30 17:40:54 +00:00