Nightly: deterministic plugin loading and docs refresh

This commit is contained in:
2026-02-07 17:23:29 +01:00
parent 6ce1bf71c1
commit 09d2fc850d
5 changed files with 61 additions and 15 deletions

View File

@@ -4,7 +4,7 @@
from __future__ import annotations
from abc import ABC, abstractmethod
from typing import List, Optional, Set
from typing import Any, Dict, List, Optional, Set, Tuple
class BasisPlugin(ABC):
@@ -12,6 +12,7 @@ class BasisPlugin(ABC):
name: str
version: str = "0.0.0"
prefer_source_metadata: bool = False
@abstractmethod
async def search_titles(self, query: str) -> List[str]:
@@ -29,6 +30,10 @@ class BasisPlugin(ABC):
"""Optional: Liefert den Stream-Link fuer eine konkrete Folge."""
return None
def metadata_for(self, title: str) -> Tuple[Dict[str, str], Dict[str, str], Optional[List[Any]]]:
"""Optional: Liefert Info-Labels, Art und Cast fuer einen Titel."""
return {}, {}, None
def resolve_stream_link(self, link: str) -> Optional[str]:
"""Optional: Folgt einem Stream-Link und liefert die finale URL."""
return None