feat(sofiia-console): add runbooks index status endpoint

GET /api/runbooks/status returns docs_root, indexed_files, indexed_chunks, last_indexed_at, fts_available; docs_index_meta table and set on rebuild

Made-with: Cursor
This commit is contained in:
Apple
2026-03-03 04:35:18 -08:00
parent ef3ff80645
commit 63fec4371a
5 changed files with 85 additions and 2 deletions

View File

@@ -9,11 +9,12 @@ import asyncio
import logging
import os
import sys
from datetime import datetime, timezone
from pathlib import Path
from typing import Optional
from . import db as _db
from .docs_store import clear_docs_index, insert_docs_file
from .docs_store import clear_docs_index, insert_docs_file, set_docs_index_meta
logger = logging.getLogger(__name__)
@@ -52,6 +53,8 @@ async def rebuild_index(docs_root: Optional[Path] = None) -> int:
mtime = path.stat().st_mtime
await insert_docs_file(path_key, mtime, content)
count += 1
last_indexed_at = datetime.now(timezone.utc).isoformat()
await set_docs_index_meta(str(root), last_indexed_at, sha="")
logger.info("Docs index rebuilt: %s files from %s", count, root)
return count