From 765949fdfde44d11c860a3d4398906c655cded7b Mon Sep 17 00:00:00 2001 From: Scott Idem Date: Thu, 8 Jan 2026 12:56:34 -0500 Subject: [PATCH] Cleanup: Remove temporary scripts from local root. --- export_all_interfaces.py | 55 ------------------------------- verify_searchable_fields.py | 60 ---------------------------------- verify_searchable_fields_db.py | 40 ----------------------- 3 files changed, 155 deletions(-) delete mode 100755 export_all_interfaces.py delete mode 100644 verify_searchable_fields.py delete mode 100644 verify_searchable_fields_db.py diff --git a/export_all_interfaces.py b/export_all_interfaces.py deleted file mode 100755 index ca63117..0000000 --- a/export_all_interfaces.py +++ /dev/null @@ -1,55 +0,0 @@ -#!/usr/bin/env python3 -import json -import os -import subprocess - -# Paths -API_VENV = "/home/scott/OSIT_dev/aether_api_fastapi/environment/bin/python3" -SCHEMA_SCRIPT = "/home/scott/agents_sync/scripts/schema_sync.py" -OUTPUT_FILE = "/home/scott/agents_sync/technical/aether_interfaces.ts" - -def main(): - print(f"Starting E2E Schema Sync...") - - # Run schema_sync.py without arguments to get JSON - try: - result = subprocess.run( - [API_VENV, SCHEMA_SCRIPT], - capture_output=True, - text=True, - check=True - ) - full_schema = json.loads(result.stdout) - except Exception as e: - print(f"Error getting schema JSON: {e}") - print(f"Stdout: {result.stdout if 'result' in locals() else 'N/A'}") - print(f"Stderr: {result.stderr if 'result' in locals() else 'N/A'}") - return - - ts_content = [ - "/**", - " * Aether Unified Type Definitions", - " * Generated by backend_fastapi agent", - " */", - "" - ] - - for obj_type, data in full_schema.items(): - interface_name = data['interface_name'] - ts_content.append(f"export interface {interface_name} {{") - for f in data['fields']: - opt = "?" if f['optional'] else "" - ts_content.append(f" {f['name']}{opt}: {f['type']};") - ts_content.append("}") - ts_content.append("") - - # Ensure output dir exists - os.makedirs(os.path.dirname(OUTPUT_FILE), exist_ok=True) - - with open(OUTPUT_FILE, "w") as f: - f.write("\n".join(ts_content)) - - print(f"Successfully exported {len(full_schema)} interfaces to {OUTPUT_FILE}") - -if __name__ == "__main__": - main() diff --git a/verify_searchable_fields.py b/verify_searchable_fields.py deleted file mode 100644 index 7f7dce0..0000000 --- a/verify_searchable_fields.py +++ /dev/null @@ -1,60 +0,0 @@ -#!/usr/bin/env python3 -import sys -import os - -# Setup path to include the app directory -sys.path.append(os.getcwd()) - -def verify_searchable_fields(): - try: - from app.ae_obj_types_def import obj_type_kv_li - except ImportError as e: - print(f"Error importing object definitions: {e}") - return - - print(f"{'Object Type':<30} | {'Status':<10} | {'Issues'}") - print("-" * 120) - - total_objects = 0 - mismatched_fields = 0 - missing_searchable_attr = 0 - - for obj_type, def_kv in obj_type_kv_li.items(): - total_objects += 1 - searchable_fields = def_kv.get('searchable_fields', []) - model = def_kv.get('mdl') - - if not searchable_fields: - missing_searchable_attr += 1 - print(f"{obj_type:<30} | WARNING | No searchable_fields defined") - continue - - if not model: - print(f"{obj_type:<30} | ERROR | No model (mdl) defined") - continue - - if not hasattr(model, '__fields__'): - print(f"{obj_type:<30} | SKIP | Model {model.__name__} has no __fields__") - continue - - # Collect all valid field names: variable names AND aliases - valid_fields = set() - for field_name, field_obj in model.__fields__.items(): - valid_fields.add(field_name) - if field_obj.alias: - valid_fields.add(field_obj.alias) - - mismatches = [f for f in searchable_fields if f not in valid_fields] - - if mismatches: - mismatched_fields += len(mismatches) - print(f"{obj_type:<30} | MISMATCH | {', '.join(mismatches)}") - - print("-" * 120) - print(f"Summary:") - print(f"Total Objects Checked: {total_objects}") - print(f"Objects missing searchable_fields: {missing_searchable_attr}") - print(f"Total Field Mismatches found: {mismatched_fields}") - -if __name__ == "__main__": - verify_searchable_fields() \ No newline at end of file diff --git a/verify_searchable_fields_db.py b/verify_searchable_fields_db.py deleted file mode 100644 index 3775be9..0000000 --- a/verify_searchable_fields_db.py +++ /dev/null @@ -1,40 +0,0 @@ -#!/usr/bin/env python3 -import sys -import os -import json -from sqlalchemy import text - -# Setup path to include the app directory -sys.path.append(os.getcwd()) - -def verify_all(): - try: - from app.ae_obj_types_def import obj_type_kv_li - from app.db_connection import engine - except ImportError as e: - print(f"Error importing dependencies: {e}") - return - - for obj_type, def_kv in obj_type_kv_li.items(): - if obj_type != 'activity_log': continue - - searchable_fields = def_kv.get('searchable_fields', []) - table_name = def_kv.get('tbl_default') or def_kv.get('tbl') - - db_valid_fields = set() - if table_name: - try: - with engine.connect() as conn: - # Use a standard SQL query to get column names - result = conn.execute(text(f"SHOW COLUMNS FROM `{table_name}`")) - for row in result: - db_valid_fields.add(row[0]) - except Exception as e: - print(f"DB Error for {table_name}: {e}") - - print(f"Object: {obj_type}") - print(f"Table: {table_name}") - print(f"Fields: {db_valid_fields}") - -if __name__ == "__main__": - verify_all()