7 Commits

Author SHA1 Message Date
kpa39l c8fe5f7c85 fix(web): keep bulk checkbox selection across post navigation (openspec change keep-bulk-checkboxes)
- Save/restore checked candidate ids in sessionStorage (vesti_bulk_candidates / vesti_bulk_selected)
- Restore checks after page reload when opening a post via ?selected=N
- Fix selector: checkboxes live outside <form> (form=bulk-form attribute), query input[name=ids] globally
- Openspec: new capability candidates-bulk-selection, change archived
2026-09-17 00:52:51 +00:00
kpa39l 8777a0c4a4 openspec: архив address-field-enhancement (одно поле Address, авто-название из TG/RSS) 2026-09-16 23:37:03 +00:00
kpa39l 771f6a8276 openspec: архив 14 завершённых change-ов (веб-фиксы, crawler-queue, own-content-hub, publisher-service); спеки влиты в openspec/specs 2026-09-16 17:01:00 +00:00
kpa39l fc6d725bd1 candidates-mail-ui: двухпанельный интерфейс кандидатов (почтовый клиент)
- БД: posts.comment TEXT, posts.rewritten_text TEXT (ALTER TABLE, миграция применена)
- GET /candidates: двухпанельный рендер — слева список с группировкой
  (source/date/status, свертываемые <details>) + чекбоксы bulk,
  справа детали поста (действия, комментарий, пересказ, оригинал с медиа)
- Роуты: POST /candidates/select, /candidates/bulk (approve/reject/reject-old),
  /posts/{id}/comment, /posts/{id}/reclassify (qwen), /posts/{id}/rewrite (qwen)
- approve вынесен в impl_approve (переиспользуется bulk-approve: publisher + бандл)
- без JS (только формы); HTML: Jinja2 + Bootstrap 5.3
- Протестировано TestClient: группировка, bulk-reject, comment, reclassify
  (реальный qwen), rewrite (реальный qwen), поиск, media, published — зелёные
- openspec: change candidates-mail-ui архивирован (2026-09-13-candidates-mail-ui),
  spec влита в openspec/specs/candidates-mail-ui; validate — чисто
- docs: STATUS.md, WALKTHROUGH.md обновлены
2026-09-13 20:53:53 +00:00
kpa39l 6b955aa143 openspec: архивирован change gotosocial-publisher (2026-09-13), delta влита в specs/gotosocial-publisher 2026-09-13 20:27:41 +00:00
kpa39l 71fd48aa06 Session 2026-09-13: unify directions (canon+LLM-fallback, 966/1019), publisher dry_run fix, git repo, archive 8 changes, candidates-mail-ui WIP, docs 2026-09-13 17:48:06 +00:00
kpa39l c3f59f7b7a Initial import: vesti.nixg.ru — новостной апрув-проект (web, crawler, classifier, publisher, openspec) 2026-09-13 15:58:32 +00:00