Files
jarvis/scripts/create-issues.sh
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

47 lines
2.7 KiB
Bash
Executable File

#!/usr/bin/env bash
# Populate the GitHub issue tracker from docs/BACKLOG.md.
# Run AFTER the repo exists and `gh` is authenticated: bash scripts/create-issues.sh
set -euo pipefail
gh label create client --color 1D76DB --description "iOS app" 2>/dev/null || true
gh label create backend --color 0E8A16 --description "Backend coordination" 2>/dev/null || true
gh label create ci --color 5319E7 --description "CI / build" 2>/dev/null || true
gh label create connectivity --color FBCA04 --description "Networking / VPN" 2>/dev/null || true
issue() { gh issue create --title "$1" --label "$2" --body "$3"; }
issue "Add Sport (F1) and World topic pills" "enhancement,client,backend" \
"The 47 feeds include heavy F1 + global-news coverage squeezed into finance/tech/politics/africa. Add pills in \`Topic.filters\`; backend classifier must emit \`sport\` / \`world\` slugs to match."
issue "Wire the Tailscale remote host in Connectivity" "enhancement,client,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."
issue "SSID-based trusted networks" "enhancement,client,connectivity" \
"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."
issue "Optional in-app WireGuard tunnel" "enhancement,client,connectivity" \
"NetworkExtension packet-tunnel so Jarvis can bring up a WireGuard tunnel itself (WireGuard/Netmaker configs only). Needs entitlement + real device. Deferred."
issue "App icon + launch assets" "enhancement,client" \
"AppIcon is an empty placeholder."
issue "Flesh out Latest / Saved / Search tabs" "enhancement,client" \
"Currently minimal reuse of the feed components; add proper empty/loading states and dedicated behavior."
issue "Verify hero image loading in the reader" "client" \
"AsyncImage against real feed imageUrls (ATS, redirects, grey fallback) in the article reader."
issue "Validate infinite scroll / pagination at scale" "client" \
"Validate loadMore/cursor round-trips against the live ~850-story dataset; guard against dupes."
issue "Topic-classifier coverage for the 47 feeds" "backend" \
"Ensure science/tech/world/sport map sensibly into the supported topic slugs."
issue "Add unit/UI tests + test matrix leg" "ci" \
"The build matrix compiles but runs no tests yet; add a test target and a test matrix leg."
issue "Offline-first polish" "enhancement,client" \
"Green cached dot + Saved tab depend on opening an article; consider pre-caching top stories for true offline-first."
echo "Done. Created issues from docs/BACKLOG.md."