Add hub-core package, docs, and State Hub integration scaffold

Extract the first reusable slice (models, schemas, routers, MCP, migrations)
from state-hub with INTENT/SCOPE, agent instructions, workplan, and aligned
inter_hub capability registry index.
This commit is contained in:
2026-06-16 02:39:36 +02:00
parent d3ee203a3a
commit 986ac4d40b
52 changed files with 4085 additions and 3 deletions

View File

@@ -0,0 +1,22 @@
from dataclasses import dataclass
from typing import TypeVar
from sqlalchemy.sql import Select
SelectT = TypeVar("SelectT", bound=Select)
@dataclass(frozen=True)
class PageParams:
limit: int = 100
offset: int = 0
def __post_init__(self) -> None:
if self.limit < 1 or self.limit > 1000:
raise ValueError("limit must be between 1 and 1000")
if self.offset < 0:
raise ValueError("offset must be >= 0")
def apply_pagination(query: SelectT, page: PageParams) -> SelectT:
return query.offset(page.offset).limit(page.limit)