8ae1d48d68c0688fe99658dc4e2b63bcaa675346
Changes: 1. Article opens INSTANTLY — articleContent initialized from entry's existing content in init(), not after API fetch. WebView renders immediately with whatever we have. Full content swaps in silently when getEntry returns (only if longer than current). 2. markAsRead is fire-and-forget — wrapped in detached Task inside .task, does not block the content display chain. Toolbar syncs from vm.entries immediately after. 3. CSS template pre-built as static string in ArticleHTMLBuilder. Avoids rebuilding ~2KB of CSS on every article open. HTML builder is a stateless enum with a single static method. 4. Removed isContentReady flag — no longer needed since content is available from init. Spinner only shows if entry truly has no content at all (rare edge case). Flow is now: tap → ArticleView created with entry.articleHTML → WebView loads immediately → user can scroll → background: markAsRead fires, getEntry fetches full content → if full content is better, WebView updates silently Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
Gitea CI Workflows
security.yml
Runs on push/PR to master. Three jobs:
- dependency-audit —
npm audit --audit-level=highfor budget and frontend - secret-scanning — checks for tracked .env/.db files and hardcoded secret patterns
- dockerfile-lint — verifies all Dockerfiles have
USER(non-root) andHEALTHCHECK
Runner Setup
The runner is configured in the Gitea docker-compose at /media/yusiboyz/Media/Scripts/gitea/docker-compose.yml.
What was done:
- Added
[actions] ENABLED = trueto Gitea'sapp.ini - Added
runnerservice (gitea/act_runner) to Gitea's docker-compose - Generated runner token via
docker exec -u git gitea gitea actions generate-runner-token - Token stored in
/media/yusiboyz/Media/Scripts/gitea/.envasRUNNER_TOKEN - Runner registered as
platform-runnerwith labels: ubuntu-latest, ubuntu-24.04, ubuntu-22.04
To regenerate token (if needed):
cd /media/yusiboyz/Media/Scripts/gitea
docker exec -u git gitea gitea actions generate-runner-token
# Update .env with new RUNNER_TOKEN value
docker compose up -d runner
To check runner status:
docker logs gitea-runner
Description
Languages
Svelte
51.2%
Python
24.2%
Swift
13.5%
JavaScript
5.4%
TypeScript
3.3%
Other
2.4%