fix: DBPools(config.databases) instead of DBPools() for subprocess context
This commit is contained in:
parent
fe6666b665
commit
22820b85cd
@ -38,6 +38,11 @@ except ImportError:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def getConfig():
|
||||
class Config:
|
||||
databases = None
|
||||
return Config()
|
||||
|
||||
@dataclass
|
||||
class HermesConfig:
|
||||
"""Configuration for Hermes Agent module"""
|
||||
@ -356,7 +361,9 @@ class HermesAgent:
|
||||
selected_memories = []
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
# High priority memories
|
||||
ns = {'user_id': user_id, 'priority__gte': self.config.high_priority_threshold, 'sort': 'priority desc,last_accessed desc'}
|
||||
@ -409,7 +416,9 @@ class HermesAgent:
|
||||
async def _update_memory_access_stats(self, user_id: str, memory_id: str):
|
||||
"""Update memory access statistics"""
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
memories = await sor.R('hermes_memory', {'id': memory_id, 'user_id': user_id})
|
||||
if memories:
|
||||
@ -431,7 +440,9 @@ class HermesAgent:
|
||||
return
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
# Calculate cutoff date
|
||||
cutoff_date = datetime.now().replace(
|
||||
@ -536,7 +547,9 @@ class HermesAgent:
|
||||
user_id = self._get_current_user_id(context) if context else "anonymous"
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
if action == "add":
|
||||
memory_id = str(uuid.uuid4())
|
||||
@ -650,7 +663,9 @@ class HermesAgent:
|
||||
user_id = self._get_current_user_id(context) if context else "anonymous"
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
filters = {'user_id': user_id}
|
||||
if query:
|
||||
@ -693,7 +708,9 @@ class HermesAgent:
|
||||
return {"success": False, "error": "Invalid skill name", "user_id": user_id}
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
if action == "view":
|
||||
filters = {'user_id': user_id, 'name': name}
|
||||
@ -778,7 +795,9 @@ class HermesAgent:
|
||||
user_id = self._get_current_user_id(context) if context else "anonymous"
|
||||
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
if action == "create":
|
||||
# Create new remote skill configuration
|
||||
@ -1184,7 +1203,9 @@ class HermesAgent:
|
||||
"""List workflows for current user"""
|
||||
user_id = self._get_current_user_id(context) if context else "anonymous"
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
workflows = await sor.R('hermes_workflows', {'sort': 'created_at desc', 'user_id': user_id})
|
||||
return {"success": True, "workflows": workflows or [], "user_id": user_id}
|
||||
@ -1197,7 +1218,9 @@ class HermesAgent:
|
||||
"""List executions for current user (optionally filtered by workflow)"""
|
||||
user_id = self._get_current_user_id(context) if context else "anonymous"
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
filters = {'user_id': user_id}
|
||||
if workflow_id:
|
||||
|
||||
@ -30,6 +30,11 @@ except ImportError:
|
||||
def __init__(self):
|
||||
pass
|
||||
|
||||
def getConfig():
|
||||
class Config:
|
||||
databases = None
|
||||
return Config()
|
||||
|
||||
@dataclass
|
||||
class TaskDefinition:
|
||||
"""Task definition structure for workflow execution"""
|
||||
@ -81,7 +86,9 @@ class HermesOrchestrator:
|
||||
|
||||
try:
|
||||
workflow_id = str(uuid.uuid4())
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
data = {
|
||||
'id': workflow_id,
|
||||
@ -114,7 +121,9 @@ class HermesOrchestrator:
|
||||
|
||||
try:
|
||||
# Verify workflow exists and belongs to user
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
workflows = await sor.R('hermes_workflows', {
|
||||
'id': workflow_id,
|
||||
@ -178,7 +187,9 @@ class HermesOrchestrator:
|
||||
async def _load_workflow_definition(self, workflow_id: str, user_id: str) -> Dict[str, Any]:
|
||||
"""Load complete workflow definition with all tasks"""
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
# Load workflow
|
||||
workflows = await sor.R('hermes_workflows', {
|
||||
@ -473,7 +484,9 @@ class HermesOrchestrator:
|
||||
task: TaskDefinition, context: Dict[str, Any]):
|
||||
"""Record execution start in database"""
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
data = {
|
||||
'id': execution_id,
|
||||
@ -494,7 +507,9 @@ class HermesOrchestrator:
|
||||
result: Dict[str, Any], error: str, retry_count: int):
|
||||
"""Record execution end in database"""
|
||||
try:
|
||||
db = DBPools()
|
||||
config = getConfig()
|
||||
|
||||
db = DBPools(config.databases)
|
||||
async with db.sqlorContext('harnessed_agent') as sor:
|
||||
end_time = datetime.now()
|
||||
data = {
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user