senti-beta / scratch /debug_recall.py
joseph njoroge kariuki
Deploy Senti AI to Hugging Face Spaces
021e065
import sys, json
sys.path.insert(0, 'senti')
from sqlalchemy import text
from backend.database.postgres.db import SessionLocal
from backend.database.postgres.models import DomainMemory
from core.brain.memory.manager import MemoryManager
from core.brain.memory.domains.registry import resolve_domains
db = SessionLocal()
user_hash = "test_multidomain_user"
try:
# Clean old records
db.execute(text("DELETE FROM domain_memory WHERE user_hash = :h"), {"h": user_hash})
db.commit()
tax_facts = {
"tax:known_income_kes": {"value": 95000.0, "updated_at": "2026-05-31T00:00:00", "confidence": 1.0, "conflict": False, "historical_values": []},
"tax:tax_regime": {"value": "PAYE", "updated_at": "2026-05-31T00:00:00", "confidence": 1.0, "conflict": False, "historical_values": []}
}
db.add(DomainMemory(user_hash=user_hash, domain="tax", facts_json=json.dumps(tax_facts)))
law_facts = {
"law:jurisdiction": {"value": "KE", "updated_at": "2026-05-31T00:00:00", "confidence": 1.0, "conflict": False, "historical_values": []},
"law:aml_required": {"value": True, "updated_at": "2026-05-31T00:00:00", "confidence": 1.0, "conflict": False, "historical_values": []}
}
db.add(DomainMemory(user_hash=user_hash, domain="law", facts_json=json.dumps(law_facts)))
db.commit()
query = "Explain my legal tax compliance and budget in Kenya"
intent = "PLANNING"
print("Resolved domains:")
active = resolve_domains(query, intent)
for p in active:
print(f" - {p.domain_id} (priority {p.priority})")
manager = MemoryManager(user_hash=user_hash, db=db)
ctx = manager.before_query(query, intent=intent)
print("\n--- Context output: ---")
print(ctx)
print("-----------------------")
finally:
db.execute(text("DELETE FROM domain_memory WHERE user_hash = :h"), {"h": user_hash})
db.commit()
db.close()