Initial travel knowledge graph release

This commit is contained in:
2026-06-09 09:56:26 +08:00
commit 5f061295d8
402 changed files with 103877 additions and 0 deletions

28
app/project_context.py Normal file
View File

@@ -0,0 +1,28 @@
from __future__ import annotations
from dataclasses import dataclass
from fastapi import Header
from app.config import settings
@dataclass(frozen=True)
class ProjectContext:
tenant_id: str
project_id: str
graph_name: str
def get_project_context(
x_kg_tenant_id: str | None = Header(default=None, alias="X-KG-Tenant-Id"),
x_kg_project_id: str | None = Header(default=None, alias="X-KG-Project-Id"),
x_kg_graph_name: str | None = Header(default=None, alias="X-KG-Graph-Name"),
) -> ProjectContext:
project_id = (x_kg_project_id or settings.default_project).strip()
return ProjectContext(
tenant_id=(x_kg_tenant_id or settings.default_tenant).strip(),
project_id=project_id,
graph_name=(x_kg_graph_name or project_id or settings.falkordb_graph).strip(),
)