Commit graph

12 commits

Author SHA1 Message Date
Valentin
b2233be562 Feat: score qualité, cache liens résolus, mode d'affichage simplifié
- Score qualité global (résolution/source/HDR/codec/langue/seeders) +
  critère de tri "quality" (), sélectionnable et par défaut en 2e position.
  Tri par défaut élargi à tous les critères (dont priorité tracker).
- Cache court des liens débrideur résolus (TTL 15 min, clé service+hash+SE+ip)
  -> seek instantané, ~5x moins d'appels débrideur/StremThru. Table dédiée,
  visible et purgeable dans l'admin.
- Mode d'affichage : "detailed" (actuel) ou "simple" (famille) = 1 lien par
  résolution, meilleur choix auto (cache puis score qualité).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-18 01:05:38 +02:00
Valentin
f873050b36 UX: retrait du réglage P2P + défauts de filtres plus sensés
- Suppression de la case "Afficher les liens P2P" (source de confusion,
  peu utile face au débrideur). Le champ backend show_p2p reste mais figé
  à false ; l'install requiert désormais au moins un débrideur.
- Défauts filtres : max/résolution = 10 (au lieu de 0), résultats = 30,
  taille min/max = 0 (illimité), résolutions/codecs/langues = toutes.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 20:25:58 +02:00
Valentin
7babe764bc UX: fusion des réglages de cache en un seul sélecteur
Les deux cases "Uniquement en cache" / "Afficher les non-cachés" étaient un
choix binaire confus. Remplacées par un sélecteur "Résultats débrideur" :
cache seul ou cache + non-cachés (ajout au débrideur au clic). Le backend
(cached_only / show_uncached) est inchangé.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 20:21:31 +02:00
Valentin
ce54b92bf9 Persistance config, labels trackers lisibles, format AIOStreams, logo R
- Persistance : /{config}/configure ré-injecte la config (PREFILL) et
  pré-remplit tout le formulaire (clés, débrideurs, trackers, filtres, tri).
- Priorité trackers : labels lisibles (ThePirateBay au lieu de "apibay", etc.)
  dans les listes de tri et de priorité des sources.
- Format stream compatible AIOStreams (comme Frenchio) : champs title +
  description + métadonnées top-level (size, seeders, quality, codec,
  release_type, language) en plus des tags [XX+].
- Logo : "R" violet sur fond sombre arrondi (SVG servi sur /logo.svg),
  référencé par le manifest (logo + icon), reflète la homepage web.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 20:13:11 +02:00
Valentin
ff379145cf Feat: panel admin (/admin) avec stats, explorateur de cache et force-refresh
- Protégé par RANGER_ADMIN_TOKEN (panel désactivé si non défini)
- Dashboard : uptime, taille DB, requêtes/streams servis, résolutions,
  hit-rate cache (recherche + dispo), répartition par débrideur/source
- Explorateur de cache : recherches + métadonnées, suppression unitaire
- Force-refresh par IMDB ID (purge recherches+méta -> re-fetch Stremio frais)
- Maintenance : cleanup expirés, flush sélectif ou total
- Métriques hit/miss instrumentées dans le cache

Fix: web.Response étant falsy, `if err:` ne bloquait pas l'auth admin
-> remplacé par `if err is not None:`.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 19:48:07 +02:00
Valentin
bce7037e90 Feat: choix de StremThru par débrideur (case à cocher)
Chaque débrideur peut router via StremThru ou utiliser son API native,
indépendamment. Utile pour ne proxifier que les débrideurs IP-bloqués
(ex: AllDebrid) tout en gardant TorBox en direct. Défaut : via StremThru
(rétro-compatible avec les configs existantes).

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:39:49 +02:00
Valentin
23f3620668 Fix: bug de closure dans l'orchestrateur de recherche
Les lambdas capturaient la variable svc par référence : toutes les
coroutines tapaient le dernier tracker construit (EZTV pour les séries,
Nyaa pour les animes) → résultats mono-source, erreur original_title
sur NyaaService, et rate-limit 429 massif sur Nyaa.
Chaque lambda binde désormais son service via argument par défaut.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:30:42 +02:00
Valentin
b711cc720f CI : build multi-arch (amd64 + arm64) pour VPS ARM
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:15:13 +02:00
Valentin
75f271ca0e Doc : image ghcr publique (plus de docker login requis)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:13:43 +02:00
Valentin
070e7d7d67 Déploiement VPS via image ghcr pré-buildée (docker-compose.ghcr.yml)
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:05:39 +02:00
Valentin
6bad2f3805 CI : build & push de l'image Docker vers ghcr.io
Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 15:03:09 +02:00
Valentin
709265ccb8 Ranger v1.0.0 — addon Stremio ultime multi-trackers/multi-débrideurs
Addon Stremio complet, films/séries/anime, contenu FR et international :
- Multi-débrideurs avec priorité (AllDebrid, Real-Debrid, TorBox, DebridLink)
- StremThru intégré (contournement blocage IP datacenter)
- Compat AIOStreams (tags [XX+], statut cache)
- TMDB + fallback Cinemeta, détection anime, numérotation absolue
- Trackers publics (YGG, TPB, EZTV, Nyaa) + privés (C411, Torr9, Tr4ker,
  NekoBT, ABN, UNIT3D) + Torznab générique (Jackett/Prowlarr)
- Filtres taille/résolution/codec/langue, tri multi-critères, déduplication
- Cache SQLite (dispo débrideur + recherches + métadonnées)
- Page /configure interactive, image Docker + docker-compose

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
2026-07-17 14:56:22 +02:00