setup: narrow legacy room registration surface
This commit is contained in:
@@ -2271,6 +2271,25 @@ describe('message query LIMIT', () => {
|
||||
// --- RegisteredGroup isMain round-trip ---
|
||||
|
||||
describe('registered group isMain', () => {
|
||||
it('projects trigger metadata from canonical room settings into registered groups', () => {
|
||||
_setRegisteredGroupForTests('dc:triggered', {
|
||||
name: 'Triggered Room',
|
||||
folder: 'triggered-room',
|
||||
trigger: '@Andy',
|
||||
added_at: '2024-01-01T00:00:00.000Z',
|
||||
requiresTrigger: true,
|
||||
});
|
||||
|
||||
expect(getRegisteredGroup('dc:triggered')).toMatchObject({
|
||||
trigger: '@Andy',
|
||||
requiresTrigger: true,
|
||||
});
|
||||
expect(getAllRoomBindings()['dc:triggered']).toMatchObject({
|
||||
trigger: '@Andy',
|
||||
requiresTrigger: true,
|
||||
});
|
||||
});
|
||||
|
||||
it('persists isMain=true through set/get round-trip', () => {
|
||||
_setRegisteredGroupForTests('dc:main', {
|
||||
name: 'Main Chat',
|
||||
|
||||
@@ -244,8 +244,10 @@ export function buildRegisteredGroupFromStoredSettings(
|
||||
jid: stored.chatJid,
|
||||
name: stored.name || stored.chatJid,
|
||||
folder: stored.folder,
|
||||
trigger: stored.trigger,
|
||||
added_at: capabilityMetadata?.createdAt || new Date(0).toISOString(),
|
||||
agentConfig: capabilityMetadata?.agentConfig,
|
||||
requiresTrigger: stored.requiresTrigger ?? false,
|
||||
isMain: stored.isMain ? true : undefined,
|
||||
agentType: resolvedAgentType,
|
||||
workDir: stored.workDir,
|
||||
|
||||
@@ -151,7 +151,7 @@ export interface RegisteredGroup {
|
||||
trigger?: string;
|
||||
added_at: string;
|
||||
agentConfig?: AgentConfig;
|
||||
requiresTrigger?: boolean; // Compatibility-only legacy field
|
||||
requiresTrigger?: boolean; // Whether non-paired messages must match the room trigger
|
||||
isMain?: boolean; // True for the main control group (no trigger, elevated privileges)
|
||||
agentType?: AgentType;
|
||||
workDir?: string; // Working directory for the agent (defaults to group folder)
|
||||
|
||||
Reference in New Issue
Block a user