- harness/es.py: append-only event store + проекции (образец — кооп-портал) - harness/levels.py: уровни 1с/1м/1ч/1д, контекст ∝ масштабу - harness/scheduler.py: уровневые потоки, идемпотентные тики, absorbed-стабы - harness/isolated_runner.py + _llm_worker.py: LLM-тик в сабпроцессе (глобальный asyncio-рантайм Strands не переживает 2+ create_harness) - cli.py: init/task/tasks/status/events + requeue (написан самим минутным агентом) - 9router: отдельный ключ sk-simbiot, модель auto (glm-5.3 первым)
10 lines
377 B
Python
10 lines
377 B
Python
from typing import Any
|
|
|
|
from starlette.responses import JSONResponse
|
|
|
|
|
|
class PydanticJSONResponse(JSONResponse):
|
|
# use pydantic json serialization instead of the stock `json.dumps`,
|
|
# so that we can handle serializing pydantic models like AnyHttpUrl
|
|
def render(self, content: Any) -> bytes:
|
|
return content.model_dump_json(exclude_none=True).encode("utf-8")
|