1f32e5436e6b40f6b30f95ffbdbe04c6e4732d24
1. Visibility requirement (new condition 5): - Tracks max visible ratio per entry via GeometryReader - Entry must have been >=50% visible at some point to qualify - Prevents marking entries that were never genuinely seen - Uses wasVisible set, populated by onChange(of: minY) 2. Dynamic activation threshold: - max(100pt, 20% of viewport height) - Taller screens (iPad) require proportionally more scroll - Measured via background GeometryReader on ScrollView 3. Stabilized scroll direction: - Ignores micro deltas <2pt (was 1pt) - Filters layout noise, rubber-banding, and momentum artifacts Existing protections preserved: - trackingActive reset on onAppear (navigation protection) - downward-only marking - crossing detection (oldMaxY >= 0, newMaxY < 0) - markedByScroll dedup set 6 conditions must ALL be true to mark an entry: 1. trackingActive (scrolled past threshold) 2. isScrollingDown 3. !entry.isRead 4. !markedByScroll.contains(id) 5. wasVisible.contains(id) — was >=50% visible 6. bottom edge crossed above viewport 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%