39 Commits

Author SHA1 Message Date
Your Name e559a8b2c6 Highlight published MAX badges without URLs 2026-07-22 22:31:16 +05:00
Your Name ecc139dcce Continue MAX URL backfill on missing messages 2026-07-22 22:25:50 +05:00
Your Name 2cff3ac1ff Trust Russian CA for MAX API 2026-07-22 22:19:24 +05:00
Your Name d5d9194bef Store MAX publication URLs 2026-07-22 22:15:52 +05:00
Your Name 184ccb55fb Restrict editor role navigation 2026-07-22 22:07:58 +05:00
Your Name a251a343bd Add admin user delete route 2026-07-22 22:02:15 +05:00
Your Name 313d5e3cf4 Run local Telegram Bot API in app container 2026-07-22 20:33:35 +05:00
Your Name 247593ece2 Fallback when local Telegram Bot API is down 2026-07-22 20:27:51 +05:00
Your Name 9bd9faf11d Read Ghost key from environment 2026-07-22 17:38:33 +05:00
Your Name df2cc92aba Package site poster scripts in Docker image 2026-07-22 17:28:53 +05:00
Your Name a5f02ed269 Keep legacy TG posting for oversized media sets 2026-07-22 17:21:45 +05:00
Your Name ab07cf5e1a Use Telegram rich messages for media posts 2026-07-22 17:13:36 +05:00
Your Name 459f281a5d fix: implement true Telegram Rich Messages via LinkPreviewOptions 2026-07-22 16:53:33 +05:00
Your Name acc7e8657d fix: send posts as a single media message with text caption instead of splitting into two messages 2026-07-22 16:46:08 +05:00
Your Name 4c024c0c3b fix: ensure blank line break after bold title when stripping separator lines 2026-07-22 16:42:14 +05:00
Your Name 36f836f5b1 feat: enable HTML rich messages in Telegram poster
- Strip separator lines (━, —, -, =, etc.) automatically
- Format first line as bold HTML title (<b>Title</b>)
- Keep body text escaped and formatted
- Append hashtags at the end (#category #source)
- Pass parse_mode='HTML' in Telegram API requests
2026-07-22 16:32:02 +05:00
Your Name 254c506815 fix: auto-start all 10 worker loops on app startup 2026-07-22 16:12:00 +05:00
Your Name 80c8d04f5b security: protect bootstrap-admin, sleep on bad login, tighten brute-force limits
- bootstrap_admin() now syncs password/active status from env on every startup
  (rotating the env secret immediately takes effect without DB edit)
- user_toggle: block deactivation of the bootstrap admin account
- login_post: tighten rate limits (5 per IP / 3 per login instead of 10/5)
- login_post: add asyncio.sleep(1.0) delay on failed password attempt
2026-07-22 15:38:44 +05:00
Your Name f9076adf96 fix: pagination in editor 2026-07-19 01:00:04 +05:00
Your Name fbb42b1f0e fix: address user feedback (delete user, editor return, UI tweaks) 2026-07-19 00:47:49 +05:00
Your Name a2dcdf4aea fix: editor ui tweaks (resize textarea, gallery, filters) 2026-07-19 00:33:41 +05:00
Your Name 2d58dc9057 feat: inline editor, fix whitespace, fix filters UX 2026-07-19 00:14:32 +05:00
Your Name 89a7ff7723 fix: address user feedback on sources, raw_posts and workers UI/UX 2026-07-18 23:28:02 +05:00
Your Name 8bca008f74 feat: complete UI redesign of admin dashboard with custom Tailwind 2026-07-18 22:59:37 +05:00
Your Name 9e63ebadff fix: pagination prev_url and next_url error in raw_posts 2026-07-18 22:48:39 +05:00
Your Name b03528b54e fix: use correct pagination.pages attribute instead of total_pages to resolve 500 error 2026-07-18 22:34:38 +05:00
Your Name 5220c4051b feat: complete UI migration to Tailwind CSS + HTMX 2026-07-18 22:20:40 +05:00
Your Name baf0e858aa Fix cookie secure flag for HTTP deployments 2026-07-18 21:49:46 +05:00
Your Name 765df4828b Fix Dockerfile COPY 2026-07-18 21:29:21 +05:00
Your Name 26ef145ccf Update UI and migrations, fix dockerfile 2026-07-18 21:29:05 +05:00
Your Name 580c75cbf6 feat: dockerize admin app without workers 2026-07-18 20:49:14 +05:00
Your Name 86ff75adbd Harden AI writer response handling 2026-06-17 13:44:25 +05:00
Your Name 969ee11eed Use category ids for AI writer 2026-06-17 13:32:20 +05:00
Your Name f4562db474 Update AI writer prompt contract 2026-06-17 12:45:04 +05:00
Your Name 8250304d02 Improve writer prompt testing 2026-06-16 22:05:31 +05:00
Your Name 85a76652fe Switch prompt test to writer 2026-06-16 01:02:08 +05:00
Your Name d306ca42a1 Add qualifier prompt test page 2026-06-15 22:56:40 +05:00
Your Name 2e4cbee4a5 Track parser worker 2026-06-15 22:22:35 +05:00
Your Name 59c899dc9c Initial parser admin implementation 2026-06-15 21:14:07 +05:00