From e475acce66c7495c90e0ae4a3bc0e66a8f9a5dc2 Mon Sep 17 00:00:00 2001 From: Andrew Barbaccia Date: Mon, 18 May 2026 16:58:50 +0000 Subject: [PATCH] fix(db): ensure container_configs row when creating an agent group MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit createAgentGroup only inserted into agent_groups, leaving spawnContainer to throw "Container config not found" forever for any agent created via ncl groups create. ensureContainerConfig is idempotent and already used elsewhere — call it inline so a fresh group is immediately spawnable. Co-Authored-By: Claude Opus 4.7 (1M context) --- src/db/agent-groups.ts | 2 ++ src/db/db-v2.test.ts | 8 ++++++++ 2 files changed, 10 insertions(+) diff --git a/src/db/agent-groups.ts b/src/db/agent-groups.ts index db7e4029641..7957e55daf1 100644 --- a/src/db/agent-groups.ts +++ b/src/db/agent-groups.ts @@ -1,5 +1,6 @@ import type { AgentGroup } from '../types.js'; import { getDb } from './connection.js'; +import { ensureContainerConfig } from './container-configs.js'; export function createAgentGroup(group: AgentGroup): void { getDb() @@ -8,6 +9,7 @@ export function createAgentGroup(group: AgentGroup): void { VALUES (@id, @name, @folder, @agent_provider, @created_at)`, ) .run(group); + ensureContainerConfig(group.id); } export function getAgentGroup(id: string): AgentGroup | undefined { diff --git a/src/db/db-v2.test.ts b/src/db/db-v2.test.ts index e0cebdf9340..48691606cb6 100644 --- a/src/db/db-v2.test.ts +++ b/src/db/db-v2.test.ts @@ -6,6 +6,7 @@ import { runMigrations, createAgentGroup, getAgentGroup, + getContainerConfig, getAgentGroupByFolder, getAllAgentGroups, updateAgentGroup, @@ -105,6 +106,13 @@ describe('agent groups', () => { createAgentGroup(ag()); expect(() => createAgentGroup({ ...ag(), id: 'ag-dup' })).toThrow(); }); + + it('should create a default container_configs row', () => { + createAgentGroup(ag()); + const config = getContainerConfig('ag-1'); + expect(config).toBeDefined(); + expect(config!.agent_group_id).toBe('ag-1'); + }); }); // ── Messaging Groups ──