Commit Graph

7 Commits

Author SHA1 Message Date
vvzvlad 0eb616e322 docs: update render pipeline refactor spec base branch
Docker Image CI / build (push) Has been cancelled
The spec now reflects that the `refactor/render-pipeline` branch is cut from the current `main` (merge commit 88ac436) instead of the old `f9550d8` commit. Updated notes on cache behavior and clarified that no code changes are required at this stage. References updated for epic #34.

Refs #34
2026-07-05 22:01:50 +03:00
vvzvlad 9a0df8d8c9 docs(plans): add recorded cache fixtures for render pipeline
Docker Image CI / build (push) Has been cancelled
Add binary `.cache` and `.chatinfo` files for four public channels to
`tests/test_data/recorded/` to serve as a frozen test corpus. Update the
render pipeline refactor plan to reflect the completed snapshot,
selection, and inventory steps.
2026-07-05 21:10:52 +03:00
vvzvlad 1ceef16af4 docs(plans): update render pipeline refactor spec to v6
Bump the specification version from v5 to v6 and replace the synthetic
golden‑corpus with a recorded real‑message corpus from production cache.
Add detailed inventory statistics, clarify handling of None‑date fixtures,
and update test‑data handling notes. Adjust related documentation sections
to reflect the new corpus and its impact on golden tests.
2026-07-05 21:04:45 +03:00
vvzvlad 1942c43270 docs(plans): add render pipeline refactor specification (v5)
Add a comprehensive specification document for the render‑pipeline refactor, detailing the problem statement, target architecture, intentional behavior changes, stage‑by‑stage plan, and review notes. This serves as the guiding blueprint for the upcoming refactor work.

Closes #34
2026-07-05 20:30:10 +03:00
vvzvlad b42e892c3f docs(plans): add accepted cache optimization spec
Implementation-ready specification for the cache overhaul, accepted after
4 rounds of adversarial review (1 blocker and 3 majors found and fixed).
Work is tracked in gitea issues #23 (packages A+B+F), #24 (C, depends
on #23), #25 (D), #26 (E).
2026-07-05 19:25:48 +03:00
vvzvlad e3b458d774 docs: add staged stability fix plan (static serving + hangs)
Detailed 7-stage plan covering: RPC timeouts under the global throttle gate,
background worker task_done/queue fixes, atomic large-video downloads,
FloodWait-to-429 mapping, FileResponse migration, event-loop hygiene for feed
rendering, SQLite write batching, and a lightweight /ping healthcheck.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-05 04:00:20 +03:00
vvzvlad 3c2b4ce544 perf(downloads): implement concurrent download queue with semaphore limiting and retry logic
Add queue-based background download system to improve performance and reliability:
- Introduce DOWNLOAD_SEMAPHORE to limit concurrent downloads to 3
- Add asyncio.Queue (maxsize 100) with dedicated worker for background processing
- Implement safe_get_messages and safe_download_media wrappers with timeout protection (30s and 120s)
- Add retry logic for KeyError auth failures with 5s backoff
- Replace synchronous sequential downloads with asynchronous queued processing
- Prevent event loop blocking by queuing files instead of immediate download
2026-01-01 14:14:26 +03:00