(self, name: str, description: str|None = None, metadata: dict | None = None)
| 326 | # -------- Index helpers --------- |
| 327 | |
| 328 | def create_index(self, name: str, description: str|None = None, metadata: dict | None = None) -> str: |
| 329 | idx_id = str(uuid.uuid4()) |
| 330 | created = datetime.now().isoformat() |
| 331 | vector_table = f"text_pages_{idx_id}" |
| 332 | conn = sqlite3.connect(self.db_path) |
| 333 | conn.execute(''' |
| 334 | INSERT INTO indexes (id, name, description, created_at, updated_at, vector_table_name, metadata) |
| 335 | VALUES (?,?,?,?,?,?,?) |
| 336 | ''', (idx_id, name, description, created, created, vector_table, json.dumps(metadata or {}))) |
| 337 | conn.commit() |
| 338 | conn.close() |
| 339 | print(f"📂 Created new index '{name}' ({idx_id[:8]})") |
| 340 | return idx_id |
| 341 | |
| 342 | def get_index(self, index_id: str) -> dict | None: |
| 343 | conn = sqlite3.connect(self.db_path) |
no outgoing calls
no test coverage detected