Files
jarvis/docs/BACKLOG.md
Robin Kutesa 27d0e22767 Initial commit: Jarvis iOS app
SwiftUI client for a self-hosted RSS news-correlation platform: signal feed,
story detail, article reader, feed manager, and LAN⇄Tailscale connectivity.
Project generated from project.yml via XcodeGen.

Includes CI build matrix (macOS 14/15 × Debug/Release), issue templates,
backlog, and API/backend handoff docs.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-18 18:04:59 +03:00

2.1 KiB

Backlog

Seed list for the issue tracker. Each becomes a GitHub issue (see scripts/create-issues.sh). [client] = iOS, [backend] = coordinate with the backend service.

  1. [client][backend] Add Sport (F1) and World topic pills. The 47 feeds now include heavy F1 + global-news coverage that gets squeezed into finance/tech/ politics/africa. Add pills in Topic.filters; backend classifier must emit sport / world slugs to match.
  2. [client] Wire the Tailscale remote host in Connectivity. Populate the Remote Access card's host so away-from-home auto-selects the Tailscale address. Verify the LAN⇄Tailscale switch via /health probing.
  3. [client] SSID-based trusted networks. Pin trusted Wi-Fi by name ("Add current network"). Needs the Access WiFi Information entitlement (real device + paid account); no-ops in the simulator. Currently approximated by LAN reachability.
  4. [client] Optional in-app WireGuard tunnel. NetworkExtension packet-tunnel so Jarvis can bring up a WireGuard tunnel itself (WireGuard/Netmaker configs only). Needs entitlement + real device. Deferred.
  5. [client] App icon + launch assets. AppIcon is an empty placeholder.
  6. [client] Flesh out Latest / Saved / Search tabs. Currently minimal reuse of the feed components; add proper empty/loading states and dedicated behavior.
  7. [client] Verify hero image loading. AsyncImage against real feed imageUrls (ATS, redirects, grey fallback) in the article reader.
  8. [client] Infinite scroll / pagination at scale. Validate loadMore/cursor round-trips against the live ~850-story dataset; guard against dupes.
  9. [backend] Topic-classifier coverage for the 47 feeds. Ensure science/tech/world/ sport map sensibly into the supported topic slugs.
  10. [ci] Add unit/UI tests. The build matrix compiles but runs no tests yet; add a test target and a test matrix leg.
  11. [client] Offline polish. Green "cached" dot + Saved tab depend on opening an article; consider pre-caching top stories for true offline-first.