fix(docker): resolve container networking and DB compatibility issues (#560)
- Auto-detect Docker container environment and use service name 'hermes-agent' as default host instead of 127.0.0.1 - Replace hardcoded column names with SELECT * in session DB queries to compat with older Hermes agent state.db schemas - Remove unused UPSTREAM env var from docker-compose.yml - Include err.message in syncFromHermes failure logs - Add group chat rule to prevent self-mentioning Co-authored-by: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
@@ -598,11 +598,7 @@ export async function getSessionMessagesFromDb(sessionId: string): Promise<{
|
||||
`).get(sessionId) as Record<string, unknown> | undefined
|
||||
|
||||
const messageRows = db.prepare(`
|
||||
SELECT
|
||||
id, session_id, role, content, tool_call_id, tool_calls, tool_name,
|
||||
timestamp, token_count, finish_reason, reasoning, reasoning_details,
|
||||
codex_reasoning_items, reasoning_content
|
||||
FROM messages
|
||||
SELECT * FROM messages
|
||||
WHERE session_id = ?
|
||||
ORDER BY timestamp, id
|
||||
`).all(sessionId) as Record<string, unknown>[]
|
||||
@@ -629,22 +625,7 @@ export async function getSessionDetailFromDb(sessionId: string): Promise<HermesS
|
||||
const ids = chain.map(session => session.id)
|
||||
const placeholders = ids.map(() => '?').join(', ')
|
||||
const messageRows = db.prepare(`
|
||||
SELECT
|
||||
id,
|
||||
session_id,
|
||||
role,
|
||||
content,
|
||||
tool_call_id,
|
||||
tool_calls,
|
||||
tool_name,
|
||||
timestamp,
|
||||
token_count,
|
||||
finish_reason,
|
||||
reasoning,
|
||||
reasoning_details,
|
||||
codex_reasoning_items,
|
||||
reasoning_content
|
||||
FROM messages
|
||||
SELECT * FROM messages
|
||||
WHERE session_id IN (${placeholders})
|
||||
ORDER BY timestamp, id
|
||||
`).all(...ids) as Record<string, unknown>[]
|
||||
@@ -670,22 +651,7 @@ export async function getSessionDetailFromDbWithProfile(sessionId: string, profi
|
||||
const ids = chain.map(session => session.id)
|
||||
const placeholders = ids.map(() => '?').join(', ')
|
||||
const messageRows = db.prepare(`
|
||||
SELECT
|
||||
id,
|
||||
session_id,
|
||||
role,
|
||||
content,
|
||||
tool_call_id,
|
||||
tool_calls,
|
||||
tool_name,
|
||||
timestamp,
|
||||
token_count,
|
||||
finish_reason,
|
||||
reasoning,
|
||||
reasoning_details,
|
||||
codex_reasoning_items,
|
||||
reasoning_content
|
||||
FROM messages
|
||||
SELECT * FROM messages
|
||||
WHERE session_id IN (${placeholders})
|
||||
ORDER BY timestamp, id
|
||||
`).all(...ids) as Record<string, unknown>[]
|
||||
@@ -706,22 +672,7 @@ export async function getExactSessionDetailFromDbWithProfile(sessionId: string,
|
||||
if (!requested) return null
|
||||
|
||||
const messageRows = db.prepare(`
|
||||
SELECT
|
||||
id,
|
||||
session_id,
|
||||
role,
|
||||
content,
|
||||
tool_call_id,
|
||||
tool_calls,
|
||||
tool_name,
|
||||
timestamp,
|
||||
token_count,
|
||||
finish_reason,
|
||||
reasoning,
|
||||
reasoning_details,
|
||||
codex_reasoning_items,
|
||||
reasoning_content
|
||||
FROM messages
|
||||
SELECT * FROM messages
|
||||
WHERE session_id = ?
|
||||
ORDER BY timestamp, id
|
||||
`).all(sessionId) as Record<string, unknown>[]
|
||||
|
||||
Reference in New Issue
Block a user