diff --git a/json/hermes_service_sessions.json b/json/hermes_service_sessions.json index c9c9277..eb6e8ee 100644 --- a/json/hermes_service_sessions.json +++ b/json/hermes_service_sessions.json @@ -3,18 +3,18 @@ "table": "hermes_service_sessions", "operations": { "create": { - "fields": ["user_id", "service_id", "local_session_id", "session_name", "status"], - "required": ["user_id", "service_id", "local_session_id"] + "fields": ["service_id", "user_id", "session_data", "status"], + "required": ["service_id", "user_id"] }, "read": { - "filters": ["user_id", "service_id", "status", "id"] + "filters": ["service_id", "user_id", "status", "id"] }, "update": { - "fields": ["session_name", "status"] + "fields": ["session_data", "status"] }, "delete": { "soft_delete": true, - "field": "status", + "field": "status", "deleted_value": "closed" } } diff --git a/json/hermes_services.json b/json/hermes_services.json index 31d9b7d..f76428b 100644 --- a/json/hermes_services.json +++ b/json/hermes_services.json @@ -3,14 +3,14 @@ "table": "hermes_services", "operations": { "create": { - "fields": ["user_id", "name", "service_url", "api_key", "description", "status"], - "required": ["user_id", "name", "service_url"] + "fields": ["name", "service_url", "description", "status"], + "required": ["name", "service_url"] }, "read": { - "filters": ["user_id", "status", "id"] + "filters": ["status", "id", "name"] }, "update": { - "fields": ["name", "service_url", "api_key", "description", "status"] + "fields": ["name", "service_url", "description", "status"] }, "delete": { "soft_delete": true, diff --git a/models/hermes_service_sessions.json b/models/hermes_service_sessions.json index dfc8703..ae0a0e2 100644 --- a/models/hermes_service_sessions.json +++ b/models/hermes_service_sessions.json @@ -1,12 +1,96 @@ { - "tablename": "hermes_service_sessions", - "fields": [ - { - "name": "id", - "type": "uuid", - "primary_key": true, - "nullable": false - }, - { - "name": "user_id", - "...[truncated] \ No newline at end of file + "summary": [ + { + "name": "hermes_service_sessions", + "title": "Hermes Service Sessions", + "primary": "id", + "catelog": "relation" + } + ], + "fields": [ + { + "name": "id", + "title": "Session ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Primary key - UUID format" + }, + { + "name": "service_id", + "title": "Service ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Foreign key to hermes_services.id" + }, + { + "name": "user_id", + "title": "User ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "User who created the session" + }, + { + "name": "session_data", + "title": "Session Data", + "type": "text", + "nullable": "yes", + "comments": "Serialized session state or metadata" + }, + { + "name": "status", + "title": "Status", + "type": "str", + "length": 32, + "nullable": "no", + "default": "active", + "comments": "Session status: active, closed, expired" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Session creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "yes", + "comments": "Session last activity timestamp" + }, + { + "name": "closed_at", + "title": "Closed At", + "type": "timestamp", + "nullable": "yes", + "comments": "Session closure timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_sessions_service_id", + "idxtype": "index", + "idxfields": ["service_id"] + }, + { + "name": "idx_hermes_sessions_user_id", + "idxtype": "index", + "idxfields": ["user_id"] + }, + { + "name": "idx_hermes_sessions_status", + "idxtype": "index", + "idxfields": ["status"] + }, + { + "name": "idx_hermes_sessions_created_at", + "idxtype": "index", + "idxfields": ["created_at"] + } + ], + "codes": [] +} \ No newline at end of file diff --git a/models/hermes_services.json b/models/hermes_services.json index 4a5516e..b0fe5d2 100644 --- a/models/hermes_services.json +++ b/models/hermes_services.json @@ -1,12 +1,79 @@ { - "tablename": "hermes_services", - "fields": [ - { - "name": "id", - "type": "uuid", - "primary_key": true, - "nullable": false - }, - { - "name": "user_id", - "type": "...[truncated] \ No newline at end of file + "summary": [ + { + "name": "hermes_services", + "title": "Hermes Services", + "primary": "id", + "catelog": "entity" + } + ], + "fields": [ + { + "name": "id", + "title": "Service ID", + "type": "str", + "length": 32, + "nullable": "no", + "comments": "Primary key - UUID format" + }, + { + "name": "name", + "title": "Service Name", + "type": "str", + "length": 255, + "nullable": "no", + "comments": "Hermes service display name" + }, + { + "name": "service_url", + "title": "Service URL", + "type": "str", + "length": 512, + "nullable": "no", + "comments": "Base URL of the Hermes service endpoint" + }, + { + "name": "description", + "title": "Description", + "type": "text", + "nullable": "yes", + "comments": "Service description" + }, + { + "name": "status", + "title": "Status", + "type": "str", + "length": 32, + "nullable": "no", + "default": "pending", + "comments": "Service status: pending, active, inactive, error" + }, + { + "name": "created_at", + "title": "Created At", + "type": "timestamp", + "nullable": "no", + "comments": "Record creation timestamp" + }, + { + "name": "updated_at", + "title": "Updated At", + "type": "timestamp", + "nullable": "yes", + "comments": "Record last update timestamp" + } + ], + "indexes": [ + { + "name": "idx_hermes_services_name", + "idxtype": "index", + "idxfields": ["name"] + }, + { + "name": "idx_hermes_services_status", + "idxtype": "index", + "idxfields": ["status"] + } + ], + "codes": [] +} \ No newline at end of file