Phase 003: remove the coding-agent and ekko-agent runtimes

Every chat session now runs through the Hermes bridge, so the three chat
chains become feature-equivalent instead of three partially-maintained
dispatch paths. Keeping the coding-agent and in-house agent runtimes alive
meant every bridge change had to be mirrored into two more runtimes that
had already drifted.

Historical rows are read, not migrated: sessions stored with the retired
source normalize to cli on load, workflow graphs naming the retired agents
keep loading and run on the bridge, and the visible-source check plus
SOURCE_LABELS still recognize the old value so those sessions stay listed.

The public surface follows the code: the OpenAPI generator and the MCP
chat-run tool schema drop the six retired entry fields so external callers
are not told about runtimes that no longer exist.

harness-check gains a RETIRED_RUNTIME scan so the residual check is a
mechanical gate instead of a manual grep, with the two surviving read-side
compat sites recorded with reasons.

Refs: docs/phases/phase_003.md
This commit is contained in:
2026-10-16 13:27:50 +08:00
parent c93e1fe1bd
commit 8c1ddf415f
123 changed files with 567 additions and 23599 deletions
+4 -4
View File
@@ -322,11 +322,11 @@ describe('hermes-ui MCP server', () => {
})
return
}
if (req.url === '/api/hermes/sessions?limit=2&source=coding_agent') {
if (req.url === '/api/hermes/sessions?limit=2&source=workflow') {
res.end(JSON.stringify({ sessions: [{ id: 'session-1' }] }))
return
}
if (req.url === '/api/hermes/sessions/count?source=coding_agent') {
if (req.url === '/api/hermes/sessions/count?source=workflow') {
res.end(JSON.stringify({ count: 7 }))
return
}
@@ -514,7 +514,7 @@ describe('hermes-ui MCP server', () => {
})
writeRpc(child, 4, 'tools/call', {
name: 'hermes_studio_use_sessions_list',
arguments: { limit: 2, source: 'coding_agent' },
arguments: { limit: 2, source: 'workflow' },
})
writeRpc(child, 5, 'tools/call', {
name: 'hermes_studio_use_session_get',
@@ -522,7 +522,7 @@ describe('hermes-ui MCP server', () => {
})
writeRpc(child, 10, 'tools/call', {
name: 'hermes_studio_use_sessions_count',
arguments: { source: 'coding_agent' },
arguments: { source: 'workflow' },
})
writeRpc(child, 6, 'tools/call', {
name: 'hermes_studio_use_session_messages',