Still fixing uuid issues

This commit is contained in:
Dita Aji Pratama 2026-07-07 16:59:16 +07:00
parent 5779c9bcdf
commit a77c1cfbba

View File

@ -1,6 +1,12 @@
import gc, sys, lancedb
import gc, sys, uuid, lancedb
import config, lib.ragroleplay as ragroleplay_lib
def _uuid(val):
if isinstance(val, str):
return uuid.UUID(val)
return val
# --- USER TOOLS ---
schema_users_store = {
"type": "function",
@ -558,7 +564,7 @@ def memories_update(memory_id, **updates):
config.ragroleplay_db_path,
config.ragroleplay_model_url,
config.ragroleplay_model_name,
memory_id,
_uuid(memory_id),
**updates
)
if success:
@ -570,7 +576,7 @@ def memories_update(memory_id, **updates):
def memories_delete(memory_id):
try:
success = ragroleplay_lib.memories_delete(config.ragroleplay_db_path, memory_id)
success = ragroleplay_lib.memories_delete(config.ragroleplay_db_path, _uuid(memory_id))
if success:
return "Berhasil menghapus memori dari database."
else:
@ -601,7 +607,7 @@ def users_store(fullname, nickname, alias=None, persona=None, telegram_id=None,
def users_filter(query_name=None, unique_id=None, persona_keyword=None, user_id=None):
try:
results = ragroleplay_lib.users_filter(config.ragroleplay_db_path, query_name, unique_id, persona_keyword, user_id)
results = ragroleplay_lib.users_filter(config.ragroleplay_db_path, query_name, unique_id, persona_keyword, _uuid(user_id) if user_id else None)
if not results:
return "Tidak ada user yang sesuai dengan filter tersebut."
@ -626,7 +632,7 @@ def users_update(user_id, **updates):
config.ragroleplay_db_path,
config.ragroleplay_model_url,
config.ragroleplay_model_name,
user_id,
_uuid(user_id),
**updates
)
if success:
@ -638,7 +644,7 @@ def users_update(user_id, **updates):
def users_delete(user_id):
try:
success = ragroleplay_lib.users_delete(config.ragroleplay_db_path, user_id)
success = ragroleplay_lib.users_delete(config.ragroleplay_db_path, _uuid(user_id))
if success:
return "Berhasil menghapus profil user."
else:
@ -655,7 +661,7 @@ def objects_store(keyword, when, where, name, description, shape, usage):
def objects_filter(keyword=None, object_id=None):
try:
results = ragroleplay_lib.objects_filter(config.ragroleplay_db_path, keyword, object_id)
results = ragroleplay_lib.objects_filter(config.ragroleplay_db_path, keyword, _uuid(object_id) if object_id else None)
if not results: return "Tidak ada objek yang ditemukan."
output = [f"Ditemukan {len(results)} objek:"]
for i, row in enumerate(results, 1):
@ -665,13 +671,13 @@ def objects_filter(keyword=None, object_id=None):
def objects_update(object_id, **updates):
try:
success = ragroleplay_lib.objects_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, object_id, **updates)
success = ragroleplay_lib.objects_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, _uuid(object_id), **updates)
return "Berhasil memperbarui objek." if success else "Gagal memperbarui objek."
except Exception as e: return f"Error: {str(e)}"
def objects_delete(object_id):
try:
success = ragroleplay_lib.objects_delete(config.ragroleplay_db_path, object_id)
success = ragroleplay_lib.objects_delete(config.ragroleplay_db_path, _uuid(object_id))
return "Berhasil menghapus objek." if success else "Gagal menghapus objek."
except Exception as e: return f"Error: {str(e)}"
@ -684,7 +690,7 @@ def outfits_store(keyword, when, outfit):
def outfits_filter(keyword=None, outfit_id=None):
try:
results = ragroleplay_lib.outfits_filter(config.ragroleplay_db_path, keyword, outfit_id)
results = ragroleplay_lib.outfits_filter(config.ragroleplay_db_path, keyword, _uuid(outfit_id) if outfit_id else None)
if not results: return "Tidak ada outfit yang ditemukan."
output = [f"Ditemukan {len(results)} outfit:"]
for i, row in enumerate(results, 1):
@ -694,13 +700,13 @@ def outfits_filter(keyword=None, outfit_id=None):
def outfits_update(outfit_id, **updates):
try:
success = ragroleplay_lib.outfits_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, outfit_id, **updates)
success = ragroleplay_lib.outfits_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, _uuid(outfit_id), **updates)
return "Berhasil memperbarui outfit." if success else "Gagal memperbarui outfit."
except Exception as e: return f"Error: {str(e)}"
def outfits_delete(outfit_id):
try:
success = ragroleplay_lib.outfits_delete(config.ragroleplay_db_path, outfit_id)
success = ragroleplay_lib.outfits_delete(config.ragroleplay_db_path, _uuid(outfit_id))
return "Berhasil menghapus outfit." if success else "Gagal menghapus outfit."
except Exception as e: return f"Error: {str(e)}"
@ -713,7 +719,7 @@ def todos_store(keyword, when, do):
def todos_filter(keyword=None, todo_id=None):
try:
results = ragroleplay_lib.todos_filter(config.ragroleplay_db_path, keyword, todo_id)
results = ragroleplay_lib.todos_filter(config.ragroleplay_db_path, keyword, _uuid(todo_id) if todo_id else None)
if not results: return "Tidak ada to-do yang ditemukan."
output = [f"Ditemukan {len(results)} to-do:"]
for i, row in enumerate(results, 1):
@ -723,13 +729,13 @@ def todos_filter(keyword=None, todo_id=None):
def todos_update(todo_id, **updates):
try:
success = ragroleplay_lib.todos_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, todo_id, **updates)
success = ragroleplay_lib.todos_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, _uuid(todo_id), **updates)
return "Berhasil memperbarui to-do." if success else "Gagal memperbarui to-do."
except Exception as e: return f"Error: {str(e)}"
def todos_delete(todo_id):
try:
success = ragroleplay_lib.todos_delete(config.ragroleplay_db_path, todo_id)
success = ragroleplay_lib.todos_delete(config.ragroleplay_db_path, _uuid(todo_id))
return "Berhasil menghapus to-do." if success else "Gagal menghapus to-do."
except Exception as e: return f"Error: {str(e)}"
@ -742,7 +748,7 @@ def worlds_store(category, location, description):
def worlds_filter(category=None, location=None, world_id=None):
try:
results = ragroleplay_lib.worlds_filter(config.ragroleplay_db_path, category, location, world_id)
results = ragroleplay_lib.worlds_filter(config.ragroleplay_db_path, category, location, _uuid(world_id) if world_id else None)
if not results: return "Tidak ada lokasi dunia yang ditemukan."
output = [f"Ditemukan {len(results)} lokasi:"]
for i, row in enumerate(results, 1):
@ -752,12 +758,12 @@ def worlds_filter(category=None, location=None, world_id=None):
def worlds_update(world_id, **updates):
try:
success = ragroleplay_lib.worlds_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, world_id, **updates)
success = ragroleplay_lib.worlds_update(config.ragroleplay_db_path, config.ragroleplay_model_url, config.ragroleplay_model_name, _uuid(world_id), **updates)
return "Berhasil memperbarui lokasi dunia." if success else "Gagal memperbarui lokasi dunia."
except Exception as e: return f"Error: {str(e)}"
def worlds_delete(world_id):
try:
success = ragroleplay_lib.worlds_delete(config.ragroleplay_db_path, world_id)
success = ragroleplay_lib.worlds_delete(config.ragroleplay_db_path, _uuid(world_id))
return "Berhasil menghapus lokasi dunia." if success else "Gagal menghapus lokasi dunia."
except Exception as e: return f"Error: {str(e)}"