refactor: telegram modules and tighten linting (#111)

This commit is contained in:
banteg
2026-01-13 05:14:26 +04:00
committed by GitHub
parent f060d3b59c
commit c1205cd5a8
63 changed files with 3257 additions and 3073 deletions
+7 -8
View File
@@ -8,7 +8,6 @@ import takopi.runner as runner_module
from takopi.model import (
ActionEvent,
CompletedEvent,
EngineId,
ResumeToken,
StartedEvent,
TakopiEvent,
@@ -22,7 +21,7 @@ from takopi.runner import (
class _DummyRunner(ResumeTokenMixin, BaseRunner):
engine = EngineId("dummy")
engine = "dummy"
resume_re = re.compile(r"(?im)^`?dummy resume (?P<token>[^`\s]+)`?$")
async def run_impl(
@@ -39,7 +38,7 @@ class _DummyRunner(ResumeTokenMixin, BaseRunner):
class _DummyJsonlRunner(JsonlSubprocessRunner):
engine = EngineId("dummy-jsonl")
engine = "dummy-jsonl"
def command(self) -> str:
return "dummy"
@@ -67,7 +66,7 @@ class _DummyJsonlRunner(JsonlSubprocessRunner):
class _BareJsonlRunner(JsonlSubprocessRunner):
engine = EngineId("bare-jsonl")
engine = "bare-jsonl"
class _RunJsonlRunner(_DummyJsonlRunner):
@@ -177,7 +176,7 @@ async def test_base_runner_run_locked_handles_resume() -> None:
@pytest.mark.anyio
async def test_base_runner_rejects_wrong_resume_engine() -> None:
runner = _DummyRunner()
bad_resume = ResumeToken(engine=EngineId("other"), value="oops")
bad_resume = ResumeToken(engine="other", value="oops")
with pytest.raises(RuntimeError):
_ = [evt async for evt in runner.run("hello", bad_resume)]
@@ -185,7 +184,7 @@ async def test_base_runner_rejects_wrong_resume_engine() -> None:
@pytest.mark.anyio
async def test_base_runner_run_impl_not_implemented() -> None:
class _BareRunner(BaseRunner):
engine = EngineId("bare")
engine = "bare"
runner = _BareRunner()
with pytest.raises(NotImplementedError):
@@ -204,7 +203,7 @@ def test_resume_token_format_and_extract() -> None:
assert runner.extract_resume(None) is None
with pytest.raises(RuntimeError):
runner.format_resume(ResumeToken(engine=EngineId("other"), value="bad"))
runner.format_resume(ResumeToken(engine="other", value="bad"))
def test_session_lock_reuse() -> None:
@@ -294,7 +293,7 @@ def test_jsonl_helpers() -> None:
assert found == resume
assert emit is False
mismatch = StartedEvent(engine=EngineId("other"), resume=resume, title="t")
mismatch = StartedEvent(engine="other", resume=resume, title="t")
with pytest.raises(RuntimeError):
runner.handle_started_event(mismatch, expected_session=None, found_session=None)