FaziHamza commited on
Commit
828648a
·
1 Parent(s): abe174e
apps/agent-service/apps/agent-service/src/agent/agent.controller.d.ts CHANGED
@@ -31,6 +31,7 @@ export declare class AgentController {
31
  }>;
32
  corePrompt?: string;
33
  stylePrompt?: string;
 
34
  }): Promise<import("./agent.service").AgentChatResult>;
35
  handleSummarize(payload: {
36
  messages: Array<{
 
31
  }>;
32
  corePrompt?: string;
33
  stylePrompt?: string;
34
+ briefLedger?: Record<string, string> | null;
35
  }): Promise<import("./agent.service").AgentChatResult>;
36
  handleSummarize(payload: {
37
  messages: Array<{
apps/agent-service/apps/agent-service/src/agent/agent.controller.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.controller.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/agent.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAgE;AAChE,mDAA+C;AAC/C,+CAA2C;AAC3C,8DAAuC;AAGhC,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,YAA0B,EAC1B,UAAsB;QADtB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;IACtC,CAAC;IAGE,AAAN,KAAK,CAAC,UAAU,CAEd,OAkBC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAOK,AAAN,KAAK,CAAC,eAAe,CAEnB,OAKC;QAED,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAEpE,MAAM,UAAU,GAAG,QAAQ;aACxB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;aACnE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,MAAM,GACV,+DAA+D;YAC/D,mEAAmE;YACnE,wBAAwB;YACxB,CAAC,eAAe,CAAC,CAAC,CAAC,kDAAkD,eAAe,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,oBAAoB,UAAU,cAAc,CAAC;QAE/C,MAAM,cAAc,GAA2B;YAC7C,IAAI,EAAO,sBAAsB;YACjC,MAAM,EAAK,aAAa;YACxB,SAAS,EAAE,2BAA2B;YACtC,QAAQ,EAAG,eAAe;YAC1B,QAAQ,EAAG,yCAAyC;SACrD,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,IAAI,MAAM,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACxC,QAAQ;gBACR,MAAM,EAAE,QAAQ,IAAI,EAAE;gBACtB,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,sBAAsB;gBACzD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC7C,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,eAAe,IAAI,EAAE,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;CACF,CAAA;AAnFY,0CAAe;AAOpB;IADL,IAAA,8BAAc,EAAC,YAAG,CAAC,UAAU,CAAC;IAE5B,WAAA,IAAA,uBAAO,GAAE,CAAA;;;;iDAuBX;AAOK;IADL,IAAA,8BAAc,EAAC,YAAG,CAAC,eAAe,CAAC;IAEjC,WAAA,IAAA,uBAAO,GAAE,CAAA;;;;sDA2CX;0BAlFU,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAGsB,4BAAY;QACd,wBAAU;GAH9B,eAAe,CAmF3B"}
 
1
+ {"version":3,"file":"agent.controller.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/agent.controller.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,2CAA4C;AAC5C,yDAAgE;AAChE,mDAA+C;AAC/C,+CAA2C;AAC3C,8DAAuC;AAGhC,IAAM,eAAe,GAArB,MAAM,eAAe;IAC1B,YACmB,YAA0B,EAC1B,UAAsB;QADtB,iBAAY,GAAZ,YAAY,CAAc;QAC1B,eAAU,GAAV,UAAU,CAAY;IACtC,CAAC;IAGE,AAAN,KAAK,CAAC,UAAU,CAEd,OAmBC;QAED,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,OAAO,IAAI,CAAC,YAAY,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;IAChD,CAAC;IAOK,AAAN,KAAK,CAAC,eAAe,CAEnB,OAKC;QAED,MAAM,EAAE,QAAQ,EAAE,eAAe,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,OAAO,CAAC;QAEpE,MAAM,UAAU,GAAG,QAAQ;aACxB,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,WAAW,EAAE,KAAK,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC;aACnE,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,MAAM,GACV,+DAA+D;YAC/D,mEAAmE;YACnE,wBAAwB;YACxB,CAAC,eAAe,CAAC,CAAC,CAAC,kDAAkD,eAAe,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9F,oBAAoB,UAAU,cAAc,CAAC;QAE/C,MAAM,cAAc,GAA2B;YAC7C,IAAI,EAAO,sBAAsB;YACjC,MAAM,EAAK,aAAa;YACxB,SAAS,EAAE,2BAA2B;YACtC,QAAQ,EAAG,eAAe;YAC1B,QAAQ,EAAG,yCAAyC;SACrD,CAAC;QACF,MAAM,QAAQ,GAAG,UAAU,IAAI,MAAM,CAAC;QAEtC,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACxC,QAAQ;gBACR,MAAM,EAAE,QAAQ,IAAI,EAAE;gBACtB,KAAK,EAAE,cAAc,CAAC,QAAQ,CAAC,IAAI,sBAAsB;gBACzD,QAAQ,EAAE,CAAC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,CAAC;gBAC7C,WAAW,EAAE,GAAG;gBAChB,UAAU,EAAE,GAAG;aAChB,CAAC,CAAC;YACH,OAAO,EAAE,OAAO,EAAE,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAC1C,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,EAAE,OAAO,EAAE,eAAe,IAAI,EAAE,EAAE,CAAC;QAC5C,CAAC;IACH,CAAC;CACF,CAAA;AApFY,0CAAe;AAOpB;IADL,IAAA,8BAAc,EAAC,YAAG,CAAC,UAAU,CAAC;IAE5B,WAAA,IAAA,uBAAO,GAAE,CAAA;;;;iDAwBX;AAOK;IADL,IAAA,8BAAc,EAAC,YAAG,CAAC,eAAe,CAAC;IAEjC,WAAA,IAAA,uBAAO,GAAE,CAAA;;;;sDA2CX;0BAnFU,eAAe;IAD3B,IAAA,mBAAU,GAAE;qCAGsB,4BAAY;QACd,wBAAU;GAH9B,eAAe,CAoF3B"}
apps/agent-service/apps/agent-service/src/agent/agent.service.d.ts CHANGED
@@ -48,6 +48,7 @@ export declare class AgentService {
48
  }>;
49
  corePrompt?: string;
50
  stylePrompt?: string;
 
51
  }): Promise<AgentChatResult>;
52
  private resolveMessageReference;
53
  private friendlyReplyFromProviderError;
 
48
  }>;
49
  corePrompt?: string;
50
  stylePrompt?: string;
51
+ briefLedger?: Record<string, string> | null;
52
  }): Promise<AgentChatResult>;
53
  private resolveMessageReference;
54
  private friendlyReplyFromProviderError;
apps/agent-service/apps/agent-service/src/agent/agent.service.js CHANGED
@@ -28,7 +28,7 @@ let AgentService = AgentService_1 = class AgentService {
28
  this.USE_LANGGRAPH = process.env.USE_LANGGRAPH === 'true';
29
  }
30
  async processChat(payload) {
31
- const { agentId, model, aiProvider, aiApiKey, systemPrompt, multilingual, message, history, dbConnections, contextParams, filterConfig, allowSqlOutput, useLangGraph: agentUseLangGraph, useCategories: agentUseCategories, categories: agentCategories, corePrompt: agentCorePrompt, stylePrompt: agentStylePrompt, } = payload;
32
  const useLangGraph = typeof agentUseLangGraph === 'boolean' ? agentUseLangGraph : this.USE_LANGGRAPH;
33
  const useCategories = !!agentUseCategories && (agentCategories?.length ?? 0) > 0;
34
  if (process.env.DEBUG_MODE === 'true')
@@ -52,6 +52,7 @@ let AgentService = AgentService_1 = class AgentService {
52
  categories: agentCategories,
53
  corePrompt: agentCorePrompt,
54
  stylePrompt: agentStylePrompt,
 
55
  });
56
  return {
57
  reply: result.reply, tokens_used: result.tokens_used,
 
28
  this.USE_LANGGRAPH = process.env.USE_LANGGRAPH === 'true';
29
  }
30
  async processChat(payload) {
31
+ const { agentId, model, aiProvider, aiApiKey, systemPrompt, multilingual, message, history, dbConnections, contextParams, filterConfig, allowSqlOutput, briefLedger, useLangGraph: agentUseLangGraph, useCategories: agentUseCategories, categories: agentCategories, corePrompt: agentCorePrompt, stylePrompt: agentStylePrompt, } = payload;
32
  const useLangGraph = typeof agentUseLangGraph === 'boolean' ? agentUseLangGraph : this.USE_LANGGRAPH;
33
  const useCategories = !!agentUseCategories && (agentCategories?.length ?? 0) > 0;
34
  if (process.env.DEBUG_MODE === 'true')
 
52
  categories: agentCategories,
53
  corePrompt: agentCorePrompt,
54
  stylePrompt: agentStylePrompt,
55
+ briefLedger: briefLedger ?? null,
56
  });
57
  return {
58
  reply: result.reply, tokens_used: result.tokens_used,
apps/agent-service/apps/agent-service/src/agent/agent.service.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"agent.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/agent.service.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"agent.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/agent.service.ts"],"names":[],"mappings":"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"}
apps/agent-service/apps/agent-service/src/agent/category-router.service.js CHANGED
@@ -104,9 +104,25 @@ let CategoryRouterService = CategoryRouterService_1 = class CategoryRouterServic
104
  }
105
  looksLikeBuildIntent(text) {
106
  const m = (text || '').toLowerCase();
107
- return (/\b(create|make|build|design|launch|set\s?up|start|new)\b[\s\S]{0,40}\b(contest|campaign|engagement|competition|giveaway)\b/i.test(m) ||
108
- /\b(contest|campaign|competition|giveaway)\b[\s\S]{0,20}\b(create|build|design|launch|idea|ideas)\b/i.test(m) ||
109
- /(انشاء|إنشاء|اعمل|أنشئ|سو)\s*(مسابقة|حملة)/i.test(m));
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
110
  }
111
  looksLikeDataQuestion(text) {
112
  const m = (text || '').toLowerCase();
 
104
  }
105
  looksLikeBuildIntent(text) {
106
  const m = (text || '').toLowerCase();
107
+ if (/\b(create|make|build|design|launch|set\s?up|start|new|want|need|like|plan|run|hold|host|organi[sz]e|prepare|do)\b[\s\S]{0,40}\b(contest|campaign|engagement|competition|giveaway)\b/i.test(m)) {
108
+ return true;
109
+ }
110
+ if (/\b(contest|campaign|competition|giveaway)\b[\s\S]{0,20}\b(create|build|design|launch|idea|ideas)\b/i.test(m)) {
111
+ return true;
112
+ }
113
+ if (/(انشاء|إنشاء|اعمل|أنشئ|سو|أريد|اريد|ابني|ابدأ)[\s\S]{0,20}(مسابقة|حملة)/i.test(m) ||
114
+ /(مسابقة|حملة)[\s\S]{0,20}(جديدة|جديد)/i.test(m)) {
115
+ return true;
116
+ }
117
+ if (!m.includes('?') && /(contest|campaign|competition|giveaway|مسابقة|حملة)/i.test(m)) {
118
+ const briefElement = /\b\d+\s*(levels?|prizes?|winners?|days?|weeks?|months?)\b/i.test(m) ||
119
+ /\b(levels?|prize pool|prize budget|prizes?)\b[\s\S]{0,20}\d/i.test(m) ||
120
+ /\b\d[\d,]*\s*(sar|aed|usd|egp)\b/i.test(m) ||
121
+ /\b(qr scan|photo upload|quiz|survey|link task|geolocation)\b/i.test(m);
122
+ if (briefElement)
123
+ return true;
124
+ }
125
+ return false;
126
  }
127
  looksLikeDataQuestion(text) {
128
  const m = (text || '').toLowerCase();
apps/agent-service/apps/agent-service/src/agent/category-router.service.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"category-router.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/category-router.service.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"category-router.service.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/category-router.service.ts"],"names":[],"mappings":"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"}
apps/agent-service/apps/agent-service/src/agent/chat-graph.d.ts CHANGED
@@ -38,6 +38,7 @@ export declare class ChatGraphService {
38
  }>;
39
  corePrompt?: string;
40
  stylePrompt?: string;
 
41
  }): Promise<{
42
  reply: string;
43
  tokens_used: number;
@@ -55,6 +56,13 @@ export declare class ChatGraphService {
55
  private fixSql;
56
  private sqlFailed;
57
  private formatResponse;
 
 
 
 
 
 
 
58
  private directResponse;
59
  private stripEmojis;
60
  private decrypt;
 
38
  }>;
39
  corePrompt?: string;
40
  stylePrompt?: string;
41
+ briefLedger?: Record<string, string> | null;
42
  }): Promise<{
43
  reply: string;
44
  tokens_used: number;
 
56
  private fixSql;
57
  private sqlFailed;
58
  private formatResponse;
59
+ private static readonly BRIEF_SLOTS;
60
+ private renderBriefLedger;
61
+ private languageInstruction;
62
+ private staleAmount;
63
+ private foreignScript;
64
+ private prizeSumMismatch;
65
+ private uiBlockFault;
66
  private directResponse;
67
  private stripEmojis;
68
  private decrypt;
apps/agent-service/apps/agent-service/src/agent/chat-graph.js CHANGED
@@ -39,6 +39,7 @@ const AgentState = langgraph_1.Annotation.Root({
39
  agentCategories: (langgraph_1.Annotation),
40
  corePrompt: (langgraph_1.Annotation),
41
  stylePrompt: (langgraph_1.Annotation),
 
42
  questionType: (langgraph_1.Annotation),
43
  category: (langgraph_1.Annotation),
44
  conversational: (langgraph_1.Annotation),
@@ -76,6 +77,7 @@ let ChatGraphService = ChatGraphService_1 = class ChatGraphService {
76
  agentCategories: input.categories,
77
  corePrompt: input.corePrompt ?? '',
78
  stylePrompt: input.stylePrompt ?? '',
 
79
  questionType: 'data',
80
  category: '',
81
  resolvedPrompt: '',
@@ -447,6 +449,152 @@ SQL Rules:
447
  modelUsed: result.model_used,
448
  };
449
  }
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
450
  async directResponse(state) {
451
  if (process.env.DEBUG_MODE === 'true')
452
  debugger;
@@ -471,10 +619,12 @@ SQL Rules:
471
  '- Be helpful, friendly, human-like — not robotic.\n' +
472
  '- Add 2-3 follow-up suggestions (•).';
473
  }
 
474
  const systemContent = (state.chatPrompt || state.resolvedPrompt) +
475
  (state.knowledgeContext || '') +
 
476
  '\n\n### No SQL Needed\n' + instruction +
477
- '\n- ONLY respond in English or Arabic.' +
478
  '\n- NEVER mention SQL, database, queries, or internal tools.' +
479
  '\n- ABSOLUTELY NO EMOJIS. Do NOT use any emoji, pictograph, smiley, tick, warning sign, colored dot, heart, or decorative unicode symbol. Plain text only.';
480
  const messages = [
@@ -492,8 +642,17 @@ SQL Rules:
492
  this.logger.log(`[GRAPH:direct_response] ${result.tokens_used} tokens`);
493
  let reply = this.stripEmojis(result.reply);
494
  let tokens = result.tokens_used;
495
- if (state.conversational && !/```(?:chatbolt[-_]ui)/i.test(reply)) {
 
 
 
 
 
 
 
 
496
  try {
 
497
  const repair = await this.llmService.chat({
498
  provider: state.aiProvider || 'groq',
499
  apiKey: state.aiApiKey,
@@ -501,31 +660,121 @@ SQL Rules:
501
  messages: [
502
  {
503
  role: 'system',
504
- content: systemContent +
505
  '\n\n### Output the ui block only\n' +
506
- 'Your previous reply left out the required chatbolt-ui block. Send it now ' +
507
- 'and nothing else: no prose, no explanation, no apology.\n' +
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
508
  'Reply with exactly one fenced block, starting ```chatbolt-ui and ending ```.\n' +
509
- 'Base it on the conversation and on the reply you just gave.',
 
 
 
 
510
  },
511
- ...windowedHistory.map(m => ({ role: m.role, content: m.content })),
 
 
512
  { role: 'user', content: state.userMessage },
513
  { role: 'assistant', content: reply },
514
  ],
515
- max_tokens: 2000,
516
  });
517
  const block = (repair.reply || '').match(/```(?:chatbolt[-_]ui)[\s\S]*?```/i);
 
518
  if (block) {
519
- reply = `${reply}\n\n${block[0]}`;
520
- this.logger.log('[GRAPH:direct_response] ui block recovered on retry');
521
- }
522
- else {
523
- this.logger.warn('[GRAPH:direct_response] retry produced no ui block');
 
 
 
 
 
524
  }
 
525
  tokens += repair.tokens_used ?? 0;
526
  }
527
  catch (err) {
528
  this.logger.warn(`[GRAPH:direct_response] ui repair failed: ${err?.message ?? err}`);
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
529
  }
530
  }
531
  return {
@@ -559,6 +808,14 @@ SQL Rules:
559
  }
560
  };
561
  exports.ChatGraphService = ChatGraphService;
 
 
 
 
 
 
 
 
562
  exports.ChatGraphService = ChatGraphService = ChatGraphService_1 = __decorate([
563
  (0, common_1.Injectable)(),
564
  __param(0, (0, common_1.Inject)(shared_1.SERVICES.DB_CONNECTOR)),
 
39
  agentCategories: (langgraph_1.Annotation),
40
  corePrompt: (langgraph_1.Annotation),
41
  stylePrompt: (langgraph_1.Annotation),
42
+ briefLedger: (langgraph_1.Annotation),
43
  questionType: (langgraph_1.Annotation),
44
  category: (langgraph_1.Annotation),
45
  conversational: (langgraph_1.Annotation),
 
77
  agentCategories: input.categories,
78
  corePrompt: input.corePrompt ?? '',
79
  stylePrompt: input.stylePrompt ?? '',
80
+ briefLedger: input.briefLedger ?? null,
81
  questionType: 'data',
82
  category: '',
83
  resolvedPrompt: '',
 
449
  modelUsed: result.model_used,
450
  };
451
  }
452
+ renderBriefLedger(ledger) {
453
+ if (!ledger)
454
+ return '';
455
+ const settled = [];
456
+ const missing = [];
457
+ for (const slot of ChatGraphService_1.BRIEF_SLOTS) {
458
+ const value = typeof ledger[slot.key] === 'string' ? ledger[slot.key].trim() : '';
459
+ if (value)
460
+ settled.push(`- ${slot.label}: ${value.slice(0, 300)}`);
461
+ else if (!slot.optional)
462
+ missing.push(slot.label);
463
+ }
464
+ if (!settled.length)
465
+ return '';
466
+ const name = typeof ledger.name === 'string' ? ledger.name.trim() : '';
467
+ let block = '\n\n### The brief so far — settled, from this conversation\n' +
468
+ 'FOR YOUR EYES ONLY. This section is a working note to you. Never quote it,\n' +
469
+ 'never summarise it, never list it back, and never use its wording in a\n' +
470
+ 'reply. The client must not learn that a checklist exists.\n\n' +
471
+ 'It is assembled from what the client has actually told you, and it is\n' +
472
+ 'authoritative: treat every line as said out loud and agreed.\n\n' +
473
+ (name ? `- Name: ${name.slice(0, 120)}\n` : '') +
474
+ settled.join('\n') + '\n';
475
+ if (missing.length) {
476
+ block +=
477
+ `\nNot yet settled: ${missing.join(', ')}.\n\n` +
478
+ 'Ask about the first of those, and nothing else. Do NOT ask about anything\n' +
479
+ 'on the settled list in any form — not as a fresh question, not as a\n' +
480
+ 'confirmation, and not as a set of choices. Offering options for a settled\n' +
481
+ 'slot is re-asking it.\n' +
482
+ 'Ask in your own words, as one short question in prose. Do not name the\n' +
483
+ 'slot list, do not say what is missing or how much is left, and do not\n' +
484
+ 'count off what you still need.\n';
485
+ }
486
+ else {
487
+ block +=
488
+ '\nEverything required is settled. Ask no further question about the brief.\n' +
489
+ 'Send the summary card and the two buttons, and say in one line that they\n' +
490
+ 'can change anything before you create it.\n';
491
+ }
492
+ block +=
493
+ '\nIf the client asks to change one of these, update it and acknowledge the\n' +
494
+ 'change in half a sentence. Never restart the brief.\n';
495
+ return block;
496
+ }
497
+ languageInstruction(state) {
498
+ const msg = state.userMessage || '';
499
+ const hasArabic = /[\u0600-\u06FF\u0750-\u077F]/.test(msg);
500
+ const hasLatin = /[A-Za-z]{2,}/.test(msg);
501
+ const uiArabic = /arab|ar\b/i.test(state.contextParams?.ui_language || '');
502
+ const arabic = hasArabic || (!hasLatin && uiArabic);
503
+ const lang = arabic ? 'Arabic' : 'English';
504
+ return (`\n- WRITE THIS ENTIRE REPLY IN ${lang.toUpperCase()}. Not only the message: ` +
505
+ `every suggestion chip, every button label, and every card label and value ` +
506
+ `must be in ${lang} too. Do not mix languages and do not translate ` +
507
+ `alongside. Only English or Arabic is ever allowed.` +
508
+ (arabic
509
+ ? '\n- Proper nouns the client wrote in Latin script — a brand or product ' +
510
+ 'name — stay exactly as they wrote them. Everything else is Arabic.'
511
+ : ''));
512
+ }
513
+ staleAmount(reply, userMessage) {
514
+ if (!userMessage)
515
+ return null;
516
+ const asked = /\b(?:change|make|set|update|reduce|increase|lower|raise)\b[^.!?]{0,40}?\b(?:prize|prizes|pool|budget)\b[^.!?]{0,30}?\b(\d[\d,\.]{1,12})\b/i.exec(userMessage) ||
517
+ /\b(?:prize|prizes|pool|budget)\b[^.!?]{0,25}?\b(?:to|of|at)\s+(\d[\d,\.]{1,12})\b/i.exec(userMessage);
518
+ if (!asked)
519
+ return null;
520
+ const wanted = parseInt(asked[1].replace(/[,\s.]/g, ''), 10);
521
+ if (!Number.isFinite(wanted) || wanted <= 0)
522
+ return null;
523
+ const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
524
+ if (!block)
525
+ return null;
526
+ const budget = /"prize_budget"\s*:\s*(\d+)/.exec(block[1]);
527
+ if (!budget)
528
+ return null;
529
+ const shown = parseInt(budget[1], 10);
530
+ if (shown === wanted)
531
+ return null;
532
+ return `The client asked for a prize total of ${wanted.toLocaleString('en-US')}, ` +
533
+ `but the brief still says ${shown.toLocaleString('en-US')}.`;
534
+ }
535
+ foreignScript(prose, userMessage) {
536
+ const mine = new Set((userMessage.match(/[A-Za-z][A-Za-z0-9'-]*/g) ?? []).map(w => w.toLowerCase()));
537
+ const found = [];
538
+ const OTHER_SCRIPTS = /[\u4E00-\u9FFF\u3040-\u30FF\u0400-\u04FF\u0900-\u097F\u0590-\u05FF]+/g;
539
+ for (const run of prose.match(OTHER_SCRIPTS) ?? []) {
540
+ found.push(run);
541
+ }
542
+ for (const w of prose.match(/[A-Za-z]{3,}/g) ?? []) {
543
+ if (!mine.has(w.toLowerCase()))
544
+ found.push(w);
545
+ }
546
+ return [...new Set(found)].slice(0, 12);
547
+ }
548
+ prizeSumMismatch(reply) {
549
+ const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
550
+ if (!block)
551
+ return null;
552
+ const body = block[1];
553
+ const budgetM = /"prize_budget"\s*:\s*(\d+)/.exec(body);
554
+ if (!budgetM)
555
+ return null;
556
+ const budget = parseInt(budgetM[1], 10);
557
+ if (!Number.isFinite(budget) || budget <= 0)
558
+ return null;
559
+ const prizes = /"prizes"\s*:\s*\[([\s\S]*?)\]/.exec(body);
560
+ if (!prizes)
561
+ return null;
562
+ const values = [...prizes[1].matchAll(/"value"\s*:\s*(\d+)/g)]
563
+ .map(m => parseInt(m[1], 10))
564
+ .filter(Number.isFinite);
565
+ if (values.length < 1)
566
+ return null;
567
+ const sum = values.reduce((a, b) => a + b, 0);
568
+ if (sum === budget)
569
+ return null;
570
+ return `The prize total says ${budget.toLocaleString('en-US')} but the ` +
571
+ `${values.length} prizes add up to ${sum.toLocaleString('en-US')} ` +
572
+ `(${values.join(' + ')}).`;
573
+ }
574
+ uiBlockFault(reply, ledger) {
575
+ const block = reply.match(/```(?:chatbolt-ui|chatbolt_ui)\s*([\s\S]*?)```/i);
576
+ const body = block ? block[1] : '';
577
+ const settledNow = (key) => {
578
+ if (typeof ledger?.[key] === 'string' && ledger[key].trim())
579
+ return true;
580
+ const m = new RegExp(`"${key}"\\s*:\\s*"([^"]*)"`).exec(body);
581
+ return !!(m && m[1].trim());
582
+ };
583
+ const complete = ChatGraphService_1.BRIEF_SLOTS
584
+ .filter(s => !s.optional)
585
+ .every(s => settledNow(s.key));
586
+ if (!block)
587
+ return complete ? 'missing_create' : 'missing';
588
+ if (/["']?create_contest["']?/i.test(body))
589
+ return null;
590
+ const OFFERS_CREATE = /"[^"]*\b(?:confirm and create|create (?:this|the|my) contest|create it|proceed with (?:the )?(?:contest )?creation|go ahead and create|yes,? create)\b[^"]*"/i;
591
+ const suggestions = body.match(/"suggestions"\s*:\s*\[([\s\S]*?)\]/i);
592
+ if (suggestions && OFFERS_CREATE.test(suggestions[1]))
593
+ return 'create_as_chip';
594
+ if (complete)
595
+ return 'missing_create';
596
+ return null;
597
+ }
598
  async directResponse(state) {
599
  if (process.env.DEBUG_MODE === 'true')
600
  debugger;
 
619
  '- Be helpful, friendly, human-like — not robotic.\n' +
620
  '- Add 2-3 follow-up suggestions (•).';
621
  }
622
+ const langLine = this.languageInstruction(state);
623
  const systemContent = (state.chatPrompt || state.resolvedPrompt) +
624
  (state.knowledgeContext || '') +
625
+ (state.conversational ? this.renderBriefLedger(state.briefLedger) : '') +
626
  '\n\n### No SQL Needed\n' + instruction +
627
+ langLine +
628
  '\n- NEVER mention SQL, database, queries, or internal tools.' +
629
  '\n- ABSOLUTELY NO EMOJIS. Do NOT use any emoji, pictograph, smiley, tick, warning sign, colored dot, heart, or decorative unicode symbol. Plain text only.';
630
  const messages = [
 
642
  this.logger.log(`[GRAPH:direct_response] ${result.tokens_used} tokens`);
643
  let reply = this.stripEmojis(result.reply);
644
  let tokens = result.tokens_used;
645
+ const stale = state.conversational
646
+ ? (this.staleAmount(reply, state.userMessage) ?? this.prizeSumMismatch(reply))
647
+ : null;
648
+ const fault = state.conversational
649
+ ? (stale ? 'stale_amount' : this.uiBlockFault(reply, state.briefLedger))
650
+ : null;
651
+ if (stale)
652
+ this.logger.warn(`[GRAPH:direct_response] brief disagrees — ${stale}`);
653
+ for (let attempt = 0; fault && attempt < 2; attempt++) {
654
  try {
655
+ const terse = attempt > 0;
656
  const repair = await this.llmService.chat({
657
  provider: state.aiProvider || 'groq',
658
  apiKey: state.aiApiKey,
 
660
  messages: [
661
  {
662
  role: 'system',
663
+ content: (terse ? '' : systemContent) +
664
  '\n\n### Output the ui block only\n' +
665
+ (fault === 'stale_amount'
666
+ ? `${stale}\n` +
667
+ 'The card is built from the brief, so the client is looking at a figure ' +
668
+ 'that does not match, and the prize values are what reach the contest.\n' +
669
+ 'Send the block again with the total the client asked for, and rebuild ' +
670
+ 'the individual prizes so their values add up to it **exactly** — same ' +
671
+ 'number of prizes and same shape of split unless they asked to change ' +
672
+ 'that too. Add them up before you send. Every other value in the brief ' +
673
+ 'stays as it was.\n'
674
+ : fault === 'create_as_chip'
675
+ ? 'You offered to create the contest as a suggestion chip. A chip only ' +
676
+ 'sends its text back to you as a message — it cannot create anything, ' +
677
+ 'and you cannot create a contest yourself. The client ends up with no ' +
678
+ 'way to press Create.\n' +
679
+ 'Send the block again with the summary card and exactly two entries in ' +
680
+ '"actions": the primary one carrying "action": "create_contest" with its ' +
681
+ 'full payload (prompt and brief, every value taken from what the client ' +
682
+ 'actually agreed), and a secondary "Change something" using "send". ' +
683
+ 'No "suggestions" on this turn.\n'
684
+ : fault === 'missing_create'
685
+ ? 'The brief is complete and the client has no way to build it. Only the ' +
686
+ 'Create button creates a contest — you cannot, and saying it is done ' +
687
+ 'does not make it so.\n' +
688
+ 'Send the summary card and exactly two entries in "actions": the primary ' +
689
+ 'one carrying "action": "create_contest" with its full payload (prompt ' +
690
+ 'and brief), and a secondary "Change something" using "send". No ' +
691
+ '"suggestions" on this turn.\n' +
692
+ 'Every value in the brief must be one the client actually agreed — copy ' +
693
+ 'them from the settled list. Do not invent a name, a prize split, or a ' +
694
+ 'date, and do not change a figure they already gave.\n'
695
+ : 'Your previous reply left out the required chatbolt-ui block. Send it now ' +
696
+ 'and nothing else: no prose, no explanation, no apology.\n') +
697
  'Reply with exactly one fenced block, starting ```chatbolt-ui and ending ```.\n' +
698
+ 'Base it on the conversation and on the reply you just gave.' +
699
+ (terse
700
+ ? '\nOutput the fenced block and NOTHING else. No sentence before it, ' +
701
+ 'none after it. Your last answer had no block in it at all.'
702
+ : ''),
703
  },
704
+ ...(terse
705
+ ? []
706
+ : windowedHistory.map(m => ({ role: m.role, content: m.content }))),
707
  { role: 'user', content: state.userMessage },
708
  { role: 'assistant', content: reply },
709
  ],
710
+ max_tokens: 4000,
711
  });
712
  const block = (repair.reply || '').match(/```(?:chatbolt[-_]ui)[\s\S]*?```/i);
713
+ const FENCE = /```(?:chatbolt-ui|chatbolt_ui)\s*[\s\S]*?```/i;
714
  if (block) {
715
+ if (FENCE.test(reply)) {
716
+ reply = reply.replace(FENCE, block[0]);
717
+ this.logger.log(`[GRAPH:direct_response] ui block replaced (${fault})`);
718
+ }
719
+ else {
720
+ reply = `${reply}\n\n${block[0]}`;
721
+ this.logger.log(`[GRAPH:direct_response] ui block recovered on retry (${fault})`);
722
+ }
723
+ tokens += repair.tokens_used ?? 0;
724
+ break;
725
  }
726
+ this.logger.warn(`[GRAPH:direct_response] retry ${attempt + 1} produced no ui block (${fault})`);
727
  tokens += repair.tokens_used ?? 0;
728
  }
729
  catch (err) {
730
  this.logger.warn(`[GRAPH:direct_response] ui repair failed: ${err?.message ?? err}`);
731
+ break;
732
+ }
733
+ }
734
+ if (/IN ARABIC/.test(langLine)) {
735
+ const FENCE = /```(?:chatbolt-ui|chatbolt_ui)\s*[\s\S]*?```/i;
736
+ const prose = reply.replace(FENCE, '').trim();
737
+ const strays = this.foreignScript(prose, state.userMessage);
738
+ if (strays.length && prose) {
739
+ this.logger.warn(`[GRAPH:direct_response] Arabic reply carried ${strays.length} foreign ` +
740
+ `word(s): ${strays.join(', ')} — asking for a rewrite`);
741
+ try {
742
+ const fix = await this.llmService.chat({
743
+ provider: state.aiProvider || 'groq',
744
+ apiKey: state.aiApiKey,
745
+ model: state.model,
746
+ messages: [
747
+ {
748
+ role: 'system',
749
+ content: 'Rewrite the message below in Arabic only.\n' +
750
+ 'Keep the meaning, the length and the tone exactly. Change nothing else.\n' +
751
+ `Remove every word that is not Arabic — these do not belong: ${strays.join(', ')}.\n` +
752
+ 'Numbers and currency stay as digits. A brand or product name the client ' +
753
+ 'wrote in Latin letters stays as they wrote it.\n' +
754
+ 'Reply with the rewritten message and nothing else — no preamble, no ' +
755
+ 'explanation, no quotation marks.',
756
+ },
757
+ { role: 'user', content: prose },
758
+ ],
759
+ max_tokens: 2000,
760
+ });
761
+ const clean = this.stripEmojis((fix.reply || '').trim());
762
+ const left = this.foreignScript(clean, state.userMessage);
763
+ if (clean && left.length < strays.length) {
764
+ const block = reply.match(FENCE);
765
+ reply = block ? `${clean}\n\n${block[0]}` : clean;
766
+ this.logger.log(left.length
767
+ ? `[GRAPH:direct_response] Arabic rewrite left ${left.length}: ${left.join(', ')}`
768
+ : '[GRAPH:direct_response] Arabic rewrite clean');
769
+ }
770
+ else {
771
+ this.logger.warn('[GRAPH:direct_response] Arabic rewrite was no better — kept the original');
772
+ }
773
+ tokens += fix.tokens_used ?? 0;
774
+ }
775
+ catch (err) {
776
+ this.logger.warn(`[GRAPH:direct_response] Arabic rewrite failed: ${err?.message ?? err}`);
777
+ }
778
  }
779
  }
780
  return {
 
808
  }
809
  };
810
  exports.ChatGraphService = ChatGraphService;
811
+ ChatGraphService.BRIEF_SLOTS = [
812
+ { key: 'theme', label: 'Theme / objective' },
813
+ { key: 'levels', label: 'Levels' },
814
+ { key: 'prizes', label: 'Prizes' },
815
+ { key: 'duration', label: 'Duration' },
816
+ { key: 'audience', label: 'Audience', optional: true },
817
+ { key: 'draw_type', label: 'Draw type', optional: true },
818
+ ];
819
  exports.ChatGraphService = ChatGraphService = ChatGraphService_1 = __decorate([
820
  (0, common_1.Injectable)(),
821
  __param(0, (0, common_1.Inject)(shared_1.SERVICES.DB_CONNECTOR)),
apps/agent-service/apps/agent-service/src/agent/chat-graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat-graph.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/chat-graph.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4D;AAC5D,yDAAoD;AACpD,+BAAsC;AACtC,oDAA0E;AAC1E,8DAA6D;AAC7D,+CAA2C;AAC3C,uEAAkE;AAClE,qDAAiE;AACjE,qEAAgE;AAEhE,uEAA8E;AAI9E,MAAM,UAAU,GAAG,sBAAU,CAAC,IAAI,CAAC;IAEjC,WAAW,EAAK,CAAA,sBAAkB,CAAA;IAClC,OAAO,EAAS,CAAA,sBAAkB,CAAA;IAClC,KAAK,EAAW,CAAA,sBAAkB,CAAA;IAClC,UAAU,EAAM,CAAA,sBAAkB,CAAA;IAClC,QAAQ,EAAQ,CAAA,sBAAkB,CAAA;IAClC,gBAAgB,EAAE,CAAA,sBAAkB,CAAA;IACpC,OAAO,EAAS,CAAA,sBAA4B,CAAA;IAC5C,aAAa,EAAG,CAAA,sBAA8B,CAAA;IAC9C,aAAa,EAAG,CAAA,sBAAkC,CAAA;IAClD,YAAY,EAAI,CAAA,sBAAe,CAAA;IAC/B,aAAa,EAAG,CAAA,sBAAmB,CAAA;IACnC,eAAe,EAAE,CAAA,sBAA8G,CAAA;IAC/H,UAAU,EAAM,CAAA,sBAAkB,CAAA;IAClC,WAAW,EAAK,CAAA,sBAAkB,CAAA;IAGlC,YAAY,EAAI,CAAA,sBAA2C,CAAA;IAC3D,QAAQ,EAAQ,CAAA,sBAAsB,CAAA;IAGtC,cAAc,EAAE,CAAA,sBAAmB,CAAA;IACnC,cAAc,EAAE,CAAA,sBAAkB,CAAA;IAIlC,SAAS,EAAO,CAAA,sBAAkB,CAAA;IAClC,UAAU,EAAM,CAAA,sBAAkB,CAAA;IAClC,gBAAgB,EAAE,CAAA,sBAAkB,CAAA;IACpC,GAAG,EAAa,CAAA,sBAAyB,CAAA;IACzC,UAAU,EAAM,CAAA,sBAAkB,CAAA;IAClC,WAAW,EAAK,CAAA,sBAAe,CAAA;IAC/B,UAAU,EAAM,CAAA,sBAAyB,CAAA;IACzC,SAAS,EAAO,CAAA,sBAAkB,CAAA;IAClC,MAAM,EAAU,CAAA,sBAAkC,CAAA;IAClD,gBAAgB,EAAE,CAAA,sBAAkB,CAAA;IAGpC,KAAK,EAAW,CAAA,sBAAkB,CAAA;IAClC,UAAU,EAAM,CAAA,sBAAkB,CAAA;IAClC,SAAS,EAAO,CAAA,sBAAkB,CAAA;CACnC,CAAC,CAAC;AAOI,IAAM,gBAAgB,wBAAtB,MAAM,gBAAgB;IAI3B,YACiC,iBAA+C,EAC1C,eAA6C,EAChE,UAAsB,EACtB,cAAqC,EACrC,MAAqB,EACrB,aAAmC,EACnC,cAAqC;QANN,sBAAiB,GAAjB,iBAAiB,CAAa;QACzB,oBAAe,GAAf,eAAe,CAAa;QAChE,eAAU,GAAV,UAAU,CAAY;QACtB,mBAAc,GAAd,cAAc,CAAuB;QACrC,WAAM,GAAN,MAAM,CAAe;QACrB,kBAAa,GAAb,aAAa,CAAsB;QACnC,mBAAc,GAAd,cAAc,CAAuB;QAVvC,WAAM,GAAG,IAAI,eAAM,CAAC,kBAAgB,CAAC,IAAI,CAAC,CAAC;QACpD,UAAK,GAA8C,IAAI,CAAC;IAU7D,CAAC;IAKJ,KAAK,CAAC,GAAG,CAAC,KAeT;QAEC,MAAM,QAAQ,GAAG,IAAI,CAAC,gBAAgB,EAAE,CAAC;QAEzC,MAAM,MAAM,GAAG,MAAM,QAAQ,CAAC,MAAM,CAAC;YACnC,GAAG,KAAK;YACR,eAAe,EAAE,KAAK,CAAC,UAAU;YACjC,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,EAAE;YAClC,WAAW,EAAE,KAAK,CAAC,WAAW,IAAI,EAAE;YACpC,YAAY,EAAE,MAAe;YAC7B,QAAQ,EAAE,EAAgB;YAC1B,cAAc,EAAE,EAAE;YAClB,SAAS,EAAE,EAAE;YACb,UAAU,EAAE,EAAE;YACd,GAAG,EAAE,IAAI;YACT,UAAU,EAAE,CAAC;YACb,gBAAgB,EAAE,EAAE;YACpB,WAAW,EAAE,IAAI;YACjB,UAAU,EAAE,IAAI;YAChB,SAAS,EAAE,EAAE;YACb,MAAM,EAAE,SAAS;YACjB,gBAAgB,EAAE,EAAE;YACpB,KAAK,EAAE,EAAE;YACT,UAAU,EAAE,CAAC;YACb,SAAS,EAAE,KAAK,CAAC,KAAK;SACvB,CAAC,CAAC;QAEH,OAAO;YACL,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,WAAW,EAAE,MAAM,CAAC,UAAU;YAC9B,UAAU,EAAE,MAAM,CAAC,SAAS;YAC5B,MAAM,EAAE,MAAM,CAAC,MAAM;YAGrB,cAAc,EAAE,CAAC,CAAC,MAAM,CAAC,cAAc;SACxC,CAAC;IACJ,CAAC;IAIO,gBAAgB;QACtB,IAAI,CAAC,IAAI,CAAC,KAAK;YAAE,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC,KAAK,CAAC;IACpB,CAAC;IAEO,UAAU;QAChB,MAAM,KAAK,GAAG,IAAI,sBAAU,CAAC,UAAU,CAAC;aAGrC,OAAO,CAAC,gBAAgB,EAAK,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;aAC1E,OAAO,CAAC,kBAAkB,EAAG,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;aAC5E,OAAO,CAAC,UAAU,EAAW,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC;aACrE,OAAO,CAAC,cAAc,EAAO,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;aACxE,OAAO,CAAC,aAAa,EAAQ,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;aACvE,OAAO,CAAC,YAAY,EAAS,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC;aACtE,OAAO,CAAC,SAAS,EAAY,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC;aACnE,OAAO,CAAC,iBAAiB,EAAI,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;aAC3E,OAAO,CAAC,iBAAiB,EAAI,CAAC,CAAiB,EAAE,EAAE,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC;aAI3E,OAAO,CAAC,iBAAK,EAAE,gBAAgB,CAAC;aAChC,OAAO,CAAC,gBAAgB,EAAE,kBAAkB,CAAC;aAC7C,OAAO,CAAC,kBAAkB,EAAE,UAAU,CAAC;aAGvC,mBAAmB,CAAC,UAAU,EAAE,CAAC,CAAiB,EAAE,EAAE;YACrD,IAAI,CAAC,CAAC,YAAY,KAAK,UAAU,IAAI,CAAC,CAAC,YAAY,KAAK,SAAS;gBAAE,OAAO,iBAAiB,CAAC;YAC5F,OAAO,cAAc,CAAC;QACxB,CAAC,CAAC;aAGD,mBAAmB,CAAC,cAAc,EAAE,CAAC,CAAiB,EAAE,EAAE;YACzD,IAAI,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC,GAAG,KAAK,eAAe;gBAAE,OAAO,iBAAiB,CAAC;YAClE,OAAO,aAAa,CAAC;QACvB,CAAC,CAAC;aASD,mBAAmB,CAAC,aAAa,EAAE,CAAC,CAAiB,EAAE,EAAE;YACxD,IAAI,CAAC,CAAC,UAAU,IAAI,CAAC,CAAC,UAAU,GAAG,CAAC;gBAAE,OAAO,SAAS,CAAC;YACvD,IAAI,CAAC,CAAC,UAAU;gBAAE,OAAO,YAAY,CAAC;YACtC,OAAO,iBAAiB,CAAC;QAC3B,CAAC,CAAC;aAGD,OAAO,CAAC,SAAS,EAAE,aAAa,CAAC;aAGjC,OAAO,CAAC,YAAY,EAAE,eAAG,CAAC;aAC1B,OAAO,CAAC,iBAAiB,EAAE,eAAG,CAAC;aAC/B,OAAO,CAAC,iBAAiB,EAAE,eAAG,CAAC,CAAC;QAEnC,OAAO,KAAK,CAAC,OAAO,EAAE,CAAC;IACzB,CAAC;IAYO,KAAK,CAAC,aAAa,CAAC,KAAqB;QAC/C,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAGhD,IAAI,KAAK,CAAC,aAAa,IAAI,KAAK,CAAC,eAAe,EAAE,MAAM,EAAE,CAAC;YACzD,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,eAAe,CAC1D,KAAK,CAAC,WAAW,EACjB,KAAK,CAAC,eAAe,EACrB,EAAE,QAAQ,EAAE,KAAK,CAAC,UAAU,EAAE,MAAM,EAAE,KAAK,CAAC,QAAQ,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,EAC1E,KAAK,CAAC,OAAO,IAAI,EAAE,CACpB,CAAC;YAKF,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAClE,UAAU,EACV,KAAK,CAAC,eAAe,EACrB,KAAK,CAAC,aAAa,IAAI,EAAE,EACzB,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAuB,CACtD,CAAC;YAKF,MAAM,cAAc,GAAG,+GAA+G,CAAC;YACvI,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAClD,MAAM,YAAY,GAAwB,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,MAAM,CAAC;YAW1E,MAAM,oBAAoB,GAAG,UAAU,CAAC;YACxC,MAAM,gBAAgB,GAAG,oBAAoB,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC;YAE/D,MAAM,WAAW,GAAG,KAAK,CAAC,eAAe,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,UAAU,CAAC,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;YACvG,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,GAAG,IAAI,CAAC,cAAc,CAAC,kBAAkB,CACnE,WAAW,CAAC,IAAI,EAChB,CAAC,EAAE,GAAG,WAAW,EAAE,MAAM,EAAE,gBAAgB,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,EACxE,KAAK,CAAC,aAAa,IAAI,EAAE,EACzB,gBAAgB;gBACd,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;gBAClC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE,WAAW,EAAE,KAAK,CAAC,WAAW,EAAE,CACrE,CAAC;YAEF,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,2CAA2C,UAAU,aAAa,SAAS,CAAC,MAAM,GAAG;gBACrF,aAAa,UAAU,CAAC,MAAM,SAAS,YAAY,GAAG,gBAAgB,CAAC,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC,EAAE,EAAE,CAClG,CAAC;YACF,OAAO;gBACL,cAAc,EAAE,SAAS;gBACzB,SAAS;gBACT,UAAU;gBACV,QAAQ,EAAE,EAAgB;gBAC1B,YAAY;gBACZ,cAAc,EAAE,gBAAgB;aACjC,CAAC;QACJ,CAAC;QAGD,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAChD,KAAK,CAAC,gBAAgB,IAAI,EAAE,EAC5B,KAAK,CAAC,aAAa,CACpB,CAAC;QACF,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,4EAA4E,QAAQ,CAAC,MAAM,GAAG,CAC/F,CAAC;QACF,OAAO;YACL,cAAc,EAAE,QAAQ;YACxB,SAAS,EAAE,QAAQ;YACnB,UAAU,EAAE,QAAQ;YACpB,QAAQ,EAAE,EAAgB;YAC1B,YAAY,EAAE,MAAM;SACrB,CAAC;IACJ,CAAC;IAMO,KAAK,CAAC,eAAe,CAAC,KAAqB;QACjD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAGhD,IAAI,KAAK,CAAC,YAAY,KAAK,MAAM,EAAE,CAAC;YAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kDAAkD,KAAK,CAAC,YAAY,GAAG,CAAC,CAAC;YACzF,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;QAClC,CAAC;QAGD,MAAM,aAAa,GAAG,KAAK,CAAC;QAC5B,MAAM,EAAE,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACtB,IAAI,CAAC;YACH,MAAM,OAAO,GAAG,MAAM,OAAO,CAAC,IAAI,CAAC;gBACjC,IAAA,qBAAc,EACZ,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,YAAG,CAAC,gBAAgB,EAAE;oBAC9C,OAAO,EAAE,KAAK,CAAC,OAAO;oBACtB,KAAK,EAAE,KAAK,CAAC,WAAW;oBACxB,KAAK,EAAE,CAAC;iBACT,CAAC,CACH;gBACD,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE,CAC/B,UAAU,CAAC,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,CAAC,oBAAoB,aAAa,IAAI,CAAC,CAAC,EAAE,aAAa,CAAC,CAC1F;aACF,CAAC,CAAC;YAEH,IAAK,OAAe,EAAE,OAAO,EAAE,MAAM,GAAG,CAAC,EAAE,CAAC;gBAC1C,MAAM,OAAO,GAAI,OAAe,CAAC,OAAO,CAAC,GAAG,CAC1C,CAAC,IAAS,EAAE,CAAS,EAAE,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC,KAAK,KAAK,IAAI,CAAC,OAAO,EAAE,CAC5E,CAAC;gBACF,MAAM,gBAAgB,GAAG,kCAAkC,GAAG,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;gBACnF,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,kCAAmC,OAAe,CAAC,OAAO,CAAC,MAAM,gBAAgB,IAAI,CAAC,GAAG,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvH,OAAO,EAAE,gBAAgB,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAElB,IAAI,GAAG,EAAE,OAAO,EAAE,QAAQ,CAAC,SAAS,CAAC,EAAE,CAAC;gBACtC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,kDAAkD,CAAC,CAAC;YACvE,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,wCAAwC,CAAC,CAAC;QAC1D,OAAO,EAAE,gBAAgB,EAAE,EAAE,EAAE,CAAC;IAClC,CAAC;IAMO,KAAK,CAAC,QAAQ,CAAC,KAAqB;QAC1C,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,MAAM,aAAa,GAAG;YACpB,iDAAiD;YACjD,wCAAwC;YACxC,0BAA0B;YAC1B,MAAM;SACP,CAAC;QACF,IAAI,aAAa,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC;YACvD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC;YACrE,OAAO,EAAE,YAAY,EAAE,SAAS,EAAE,CAAC;QACrC,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CACb,6BAA6B,KAAK,CAAC,QAAQ,MAAM,KAAK,CAAC,YAAY,gBAAgB,CACpF,CAAC;QACF,OAAO,EAAE,YAAY,EAAE,KAAK,CAAC,YAAY,EAAE,CAAC;IAC9C,CAAC;IAOO,KAAK,CAAC,WAAW,CAAC,KAAqB;QAC7C,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,EAAE,CAAC,CAAC,CAAC,CAAC;QACtC,IAAI,CAAC,IAAI,EAAE,CAAC;YACV,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,sDAAsD,CAAC,CAAC;YACzE,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,CAAC;QACvB,CAAC;QAGD,IAAI,aAAa,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,cAAc,EAAE,MAAM,IAAI,IAAI,CAAC,YAAY,CAAC;QAChE,IAAI,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;YAC3B,MAAM,MAAM,GAAG,CAAC,IAAI,CAAC,cAAc,EAAE,MAAM,EAAE,MAAM,CAAC;gBAClD,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,IAAI,CAAC,cAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC;gBAChF,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC;YAElB,aAAa,GAAG,wBAAwB,GAAG,MAAM,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE;gBAC/D,MAAM,IAAI,GAAG,CAAC,CAAC,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CAAC,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACjF,OAAO,SAAS,CAAC,CAAC,IAAI,KAAK,IAAI,GAAG,CAAC;YACrC,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAChB,CAAC;QAGD,MAAM,aAAa,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAClE,MAAM,cAAc,GAAG,aAAa,CAAC,MAAM,GAAG,CAAC;YAC7C,CAAC,CAAC,4BAA4B,GAAG,IAAI,CAAC,MAAM,CAAC,kBAAkB,CAAC,aAAa,CAAC;YAC9E,CAAC,CAAC,EAAE,CAAC;QAGP,MAAM,WAAW,GAAsE;YACrF;gBACE,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE;;;EAGf,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,cAAc;EACvC,aAAa;EACb,KAAK,CAAC,gBAAgB,IAAI,EAAE;;;;;;;;;wFAS0D;aACjF;SACF,CAAC;QAGF,KAAK,MAAM,GAAG,IAAI,aAAa,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;YAC1C,WAAW,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,GAAG,CAAC,IAA4B,EAAE,OAAO,EAAE,GAAG,CAAC,OAAO,EAAE,CAAC,CAAC;QACrF,CAAC;QAED,WAAW,CAAC,IAAI,CAAC;YACf,IAAI,EAAE,MAAM;YACZ,OAAO,EAAE,GAAG,KAAK,CAAC,WAAW,wEAAwE;SACtG,CAAC,CAAC;QAEH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,QAAQ,EAAE,KAAK,CAAC,UAAU;YAC1B,MAAM,EAAE,KAAK,CAAC,QAAQ;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE,WAAW;YACrB,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QAEH,IAAI,GAAG,GAAkB,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAEjG,IAAI,gBAAgB,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC/B,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,+CAA+C,CAAC,CAAC;YACjE,OAAO,EAAE,GAAG,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QAC5F,CAAC;QAGD,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,4BAA4B,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QAE3D,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YAC5B,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;YACvF,GAAG,GAAG,IAAI,CAAC;QACb,CAAC;aAAM,CAAC;YACN,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,6BAA6B,GAAG,CAAC,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QACxE,CAAC;QAED,OAAO,EAAE,GAAG,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;IAC3E,CAAC;IAKO,KAAK,CAAC,UAAU,CAAC,KAAqB;QAC5C,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,IAAI,CAAC,KAAK,CAAC,GAAG,IAAI,KAAK,CAAC,GAAG,KAAK,eAAe,EAAE,CAAC;YAChD,OAAO,EAAE,WAAW,EAAE,IAAI,EAAE,CAAC;QAC/B,CAAC;QAED,MAAM,IAAI,GAAG,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC;QACpC,IAAI,CAAC;YAEH,MAAM,gBAAgB,GAAG,KAAK,CAAC,gBAAgB;mBAC1C,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC;YACpD,MAAM,MAAM,GAAG,MAAM,IAAA,qBAAc,EACjC,IAAI,CAAC,iBAAiB,CAAC,IAAI,CAAC,YAAG,CAAC,cAAc,EAAE;gBAC9C,iBAAiB,EAAE,gBAAgB;gBACnC,OAAO,EAAE,IAAI,CAAC,OAAO;gBACrB,GAAG,EAAE,KAAK,CAAC,GAAG;aACf,CAAC,CACH,CAAC;YAEF,IAAI,MAAM,EAAE,KAAK,EAAE,CAAC;gBAClB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,iCAAiC,MAAM,CAAC,KAAK,EAAE,CAAC,CAAC;gBAClE,OAAO,EAAE,UAAU,EAAE,MAAM,CAAC,KAAK,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,gBAAgB,EAAE,CAAC;YACjG,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,4BAA4B,MAAM,EAAE,IAAI,EAAE,MAAM,IAAI,CAAC,EAAE,CAAC,CAAC;YAGzE,IAAI,SAAS,GAAG,EAAE,CAAC;YACnB,MAAM,IAAI,GAAG,MAAM,EAAE,IAAI,IAAI,EAAE,CAAC;YAEhC,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBACpB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CACtC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAC5D,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;gBAEd,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAM,EAAE,EAAE,CACpC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CACpE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBAEb,SAAS,GAAG,4BAA4B,SAAS,IAAI;oBACnD,8BAA8B,WAAW,QAAQ;oBACjD,uFAAuF,CAAC;gBAG1F,IAAI,MAA8B,CAAC;gBACnC,IAAI,IAAI,CAAC,aAAa,CAAC,aAAa,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC3C,MAAM,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,EAAE,KAAK,CAAC,WAAW,CAAC,CAAC;oBACvE,IAAI,MAAM;wBAAE,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,gBAAgB,EAAE,CAAC;gBACpG,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,SAAS,GAAG,4EAA4E;oBACtF,2DAA2D,CAAC;YAChE,CAAC;YAED,OAAO,EAAE,WAAW,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,EAAE,gBAAgB,EAAE,CAAC;QAChF,CAAC;QAAC,OAAO,GAAQ,EAAE,CAAC;YAClB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,8BAA8B,GAAG,EAAE,OAAO,EAAE,CAAC,CAAC;YAChE,OAAO,EAAE,UAAU,EAAE,GAAG,EAAE,OAAO,IAAI,eAAe,EAAE,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC;QAClG,CAAC;IACH,CAAC;IAKO,KAAK,CAAC,MAAM,CAAC,KAAqB;QACxC,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yBAAyB,KAAK,CAAC,UAAU,eAAe,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,EAAE,CAAC,CAAC;QAE/G,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,QAAQ,EAAE,KAAK,CAAC,UAAU;YAC1B,MAAM,EAAE,KAAK,CAAC,QAAQ;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ,EAAE;gBACR;oBACE,IAAI,EAAE,QAAQ;oBACd,OAAO,EAAE,uEAAuE,KAAK,CAAC,SAAS,IAAI,KAAK,CAAC,cAAc,EAAE;iBAC1H;gBACD,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,kBAAkB,KAAK,CAAC,GAAG,eAAe,KAAK,CAAC,UAAU,4CAA4C,EAAE;aAClI;YACD,WAAW,EAAE,CAAC;YACd,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QAEH,IAAI,QAAQ,GAAkB,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,WAAW,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,IAAI,EAAE,CAAC;QACtG,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,QAAQ,CAAC;YAAE,QAAQ,GAAG,IAAI,CAAC;QAElD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,8BAA8B,QAAQ,EAAE,SAAS,CAAC,CAAC,EAAE,GAAG,CAAC,IAAI,QAAQ,EAAE,CAAC,CAAC;QAEzF,OAAO;YACL,GAAG,EAAE,QAAQ,IAAI,KAAK,CAAC,GAAG;YAC1B,UAAU,EAAE,IAAI;YAChB,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;SACzD,CAAC;IACJ,CAAC;IAUO,KAAK,CAAC,SAAS,CAAC,KAAqB;QAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,+CAA+C,KAAK,CAAC,UAAU,uBAAuB,KAAK,CAAC,UAAU,EAAE,CACzG,CAAC;QAEF,MAAM,QAAQ,GAAG,iBAAiB,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,QAAQ;YACpB,CAAC,CAAC,4GAA4G;YAC9G,CAAC,CAAC,mHAAmH,CAAC;QAExH,OAAO,EAAE,KAAK,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,IAAI,CAAC,EAAE,SAAS,EAAE,YAAY,EAAE,CAAC;IAC/E,CAAC;IAMO,KAAK,CAAC,cAAc,CAAC,KAAqB;QAChD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAEhD,MAAM,IAAI,GAAG,KAAK,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC;QAC3C,MAAM,OAAO,GAAG,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC;QAE3C,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAErE,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,cAAc,CAAC;YAC9D,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC;YAC9B,CAAC,KAAK,CAAC,SAAS,IAAI,EAAE,CAAC;YACvB,oCAAoC;YACpC,sFAAsF;YACtF,+EAA+E;YAC/E,8EAA8E;YAC9E,6CAA6C;YAC7C,CAAC,OAAO;gBACN,CAAC,CAAC,sLAAsL;gBACxL,CAAC,CAAC,qFAAqF,CAAC;YAC1F,qDAAqD;YACrD,uBAAuB;YACvB,2DAA2D;YAC3D,8DAA8D;YAC9D,4DAA4D;YAC5D,wEAAwE;YACxE,gFAAgF;YAChF,wCAAwC;YACxC,gFAAgF;YAChF,6LAA6L,CAAC;QAEhM,MAAM,QAAQ,GAAsE;YAClF,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;YAC1C,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAA4B,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3F,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE;SAC7C,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,QAAQ,EAAE,KAAK,CAAC,UAAU,IAAI,MAAM;YACpC,MAAM,EAAE,KAAK,CAAC,QAAQ;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ;YACR,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QAGH,IAAI,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QACzB,IAAI,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;YAC3C,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,uDAAuD,CAAC,CAAC;YAC1E,MAAM,KAAK,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;gBACvC,QAAQ,EAAE,KAAK,CAAC,UAAU,IAAI,MAAM;gBACpC,MAAM,EAAE,KAAK,CAAC,QAAQ;gBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;gBAClB,QAAQ,EAAE;oBACR,GAAG,QAAQ;oBACX,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE;oBACrC,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,oHAAoH,EAAE;iBAChJ;gBACD,UAAU,EAAE,KAAK;aAClB,CAAC,CAAC;YACH,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,CAAC;gBAClD,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC;YACtB,CAAC;QACH,CAAC;QAED,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,WAAW,SAAS,CAAC,CAAC;QAExE,OAAO;YACL,KAAK,EAAE,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC;YAC9B,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM,CAAC,WAAW;YACxD,SAAS,EAAE,MAAM,CAAC,UAAU;SAC7B,CAAC;IACJ,CAAC;IAMO,KAAK,CAAC,cAAc,CAAC,KAAqB;QAChD,IAAI,OAAO,CAAC,GAAG,CAAC,UAAU,KAAK,MAAM;YAAE,QAAQ,CAAC;QAChD,MAAM,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;QAErE,IAAI,WAAmB,CAAC;QACxB,IAAI,KAAK,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACrC,WAAW,GAAG,0DAA0D;gBACtE,gGAAgG,CAAC;QACrG,CAAC;aAAM,IAAI,KAAK,CAAC,cAAc,EAAE,CAAC;YAQhC,WAAW,GAAG,uDAAuD;gBACnE,6DAA6D;gBAC7D,kEAAkE;gBAClE,mDAAmD,CAAC;QACxD,CAAC;aAAM,CAAC;YACN,WAAW,GAAG,4EAA4E;gBACxF,wDAAwD;gBACxD,uFAAuF;gBACvF,wDAAwD;gBACxD,4DAA4D;gBAC5D,qDAAqD;gBACrD,sCAAsC,CAAC;QAC3C,CAAC;QAED,MAAM,aAAa,GAAG,CAAC,KAAK,CAAC,UAAU,IAAI,KAAK,CAAC,cAAc,CAAC;YAC9D,CAAC,KAAK,CAAC,gBAAgB,IAAI,EAAE,CAAC;YAC9B,yBAAyB,GAAG,WAAW;YACvC,wCAAwC;YACxC,8DAA8D;YAC9D,4JAA4J,CAAC;QAE/J,MAAM,QAAQ,GAAsE;YAClF,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;YAC1C,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAA4B,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;YAC3F,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE;SAC7C,CAAC;QAEF,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YACxC,QAAQ,EAAE,KAAK,CAAC,UAAU,IAAI,MAAM;YACpC,MAAM,EAAE,KAAK,CAAC,QAAQ;YACtB,KAAK,EAAE,KAAK,CAAC,KAAK;YAClB,QAAQ;YACR,UAAU,EAAE,KAAK;SAClB,CAAC,CAAC;QAEH,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,2BAA2B,MAAM,CAAC,WAAW,SAAS,CAAC,CAAC;QAExE,IAAI,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAC3C,IAAI,MAAM,GAAG,MAAM,CAAC,WAAW,CAAC;QAOhC,IAAI,KAAK,CAAC,cAAc,IAAI,CAAC,wBAAwB,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC;YAClE,IAAI,CAAC;gBACH,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;oBACxC,QAAQ,EAAE,KAAK,CAAC,UAAU,IAAI,MAAM;oBACpC,MAAM,EAAE,KAAK,CAAC,QAAQ;oBACtB,KAAK,EAAE,KAAK,CAAC,KAAK;oBAClB,QAAQ,EAAE;wBACR;4BACE,IAAI,EAAE,QAAQ;4BACd,OAAO,EACL,aAAa;gCACb,oCAAoC;gCACpC,2EAA2E;gCAC3E,2DAA2D;gCAC3D,gFAAgF;gCAChF,6DAA6D;yBAChE;wBACD,GAAG,eAAe,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,IAA4B,EAAE,OAAO,EAAE,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC;wBAC3F,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,KAAK,CAAC,WAAW,EAAE;wBAC5C,EAAE,IAAI,EAAE,WAAW,EAAE,OAAO,EAAE,KAAK,EAAE;qBACtC;oBACD,UAAU,EAAE,IAAI;iBACjB,CAAC,CAAC;gBACH,MAAM,KAAK,GAAG,CAAC,MAAM,CAAC,KAAK,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,mCAAmC,CAAC,CAAC;gBAC9E,IAAI,KAAK,EAAE,CAAC;oBACV,KAAK,GAAG,GAAG,KAAK,OAAO,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;oBAClC,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,qDAAqD,CAAC,CAAC;gBACzE,CAAC;qBAAM,CAAC;oBACN,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,oDAAoD,CAAC,CAAC;gBACzE,CAAC;gBACD,MAAM,IAAI,MAAM,CAAC,WAAW,IAAI,CAAC,CAAC;YACpC,CAAC;YAAC,OAAO,GAAQ,EAAE,CAAC;gBAGlB,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,6CAA6C,GAAG,EAAE,OAAO,IAAI,GAAG,EAAE,CAAC,CAAC;YACvF,CAAC;QACH,CAAC;QAED,OAAO;YACL,KAAK;YACL,UAAU,EAAE,CAAC,KAAK,CAAC,UAAU,IAAI,CAAC,CAAC,GAAG,MAAM;YAC5C,SAAS,EAAE,MAAM,CAAC,UAAU;SAC7B,CAAC;IACJ,CAAC;IASO,WAAW,CAAC,IAAY;QAC9B,IAAI,CAAC,IAAI;YAAE,OAAO,IAAI,CAAC;QACvB,OAAO,IAAI;aAER,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;aACtC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;aACtC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,yBAAyB,EAAE,EAAE,CAAC;aACtC,OAAO,CAAC,uBAAuB,EAAE,EAAE,CAAC;aACpC,OAAO,CAAC,cAAc,EAAE,EAAE,CAAC;aAE3B,OAAO,CAAC,YAAY,EAAE,GAAG,CAAC;aAC1B,OAAO,CAAC,eAAe,EAAE,IAAI,CAAC,CAAC;IACpC,CAAC;IAEO,OAAO,CAAC,SAAiB;QAC/B,MAAM,MAAM,GAAG,OAAO,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC,cAAc,IAAI,EAAE,CAAC;QAC7C,MAAM,CAAC,KAAK,EAAE,GAAG,CAAC,GAAG,SAAS,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAC1C,MAAM,EAAE,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC;QACrC,MAAM,QAAQ,GAAG,MAAM,CAAC,gBAAgB,CAAC,aAAa,EAAE,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QACtG,OAAO,QAAQ,CAAC,MAAM,CAAC,GAAG,EAAE,KAAK,EAAE,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;IACtE,CAAC;CACF,CAAA;AAztBY,4CAAgB;2BAAhB,gBAAgB;IAD5B,IAAA,mBAAU,GAAE;IAMR,WAAA,IAAA,eAAM,EAAC,iBAAQ,CAAC,YAAY,CAAC,CAAA;IAC7B,WAAA,IAAA,eAAM,EAAC,iBAAQ,CAAC,iBAAiB,CAAC,CAAA;qCADgC,2BAAW;QACR,2BAAW;QACpD,wBAAU;QACN,+CAAqB;QAC7B,8BAAa;QACN,6CAAoB;QACnB,+CAAqB;GAX7C,gBAAgB,CAytB5B"}
 
1
+ {"version":3,"file":"chat-graph.js","sourceRoot":"","sources":["../../../../../../../apps/agent-service/src/agent/chat-graph.ts"],"names":[],"mappings":"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"}
apps/agent-service/tsconfig.app.tsbuildinfo CHANGED
The diff for this file is too large to render. See raw diff
 
apps/api-gateway/apps/api-gateway/src/chat/chat.service.d.ts CHANGED
@@ -56,6 +56,14 @@ export declare class ChatService {
56
  session_id: string;
57
  }>;
58
  private extractChatUi;
 
 
 
 
 
 
 
 
59
  private getOptimizedHistory;
60
  private summarizeConversationBackground;
61
  private decrypt;
 
56
  session_id: string;
57
  }>;
58
  private extractChatUi;
59
+ private static readonly CARD_TEXT;
60
+ private cardLang;
61
+ private static readonly EXCLUSION;
62
+ private reconcileBriefWithRequest;
63
+ private static readonly SLOT_KEYS;
64
+ private readSlots;
65
+ private slotsFromBrief;
66
+ private mergeBriefLedger;
67
  private getOptimizedHistory;
68
  private summarizeConversationBackground;
69
  private decrypt;
apps/api-gateway/apps/api-gateway/src/chat/chat.service.js CHANGED
@@ -150,11 +150,12 @@ let ChatService = ChatService_1 = class ChatService {
150
  categories: fullAgent.categories,
151
  corePrompt: fullAgent.core_prompt ?? '',
152
  stylePrompt: fullAgent.style_prompt ?? '',
 
153
  }));
154
  this.logger.log(`[TIMING] agent-service replied (${ms()})`);
155
  this.logger.log(`[AI RESPONSE] session=${sessionId} model=${response.model_used} total_tokens=${response.tokens_used}`);
156
  const conversational = !!response.conversational;
157
- const { text: replyText, ui } = this.extractChatUi(response.reply, conversational);
158
  this.logger.log(`[CHAT_UI] conversational=${conversational} replyChars=${replyText.length}`);
159
  const saved = await this.msgRepo.save(this.msgRepo.create({
160
  conversation_id: conversation.id,
@@ -170,9 +171,15 @@ let ChatService = ChatService_1 = class ChatService {
170
  model_used: response.model_used,
171
  });
172
  const newCount = (conversation.message_count ?? 0) + 2;
173
- await this.convRepo.update(conversation.id, {
174
- message_count: newCount,
175
- });
 
 
 
 
 
 
176
  if (newCount > 0 && newCount % 10 === 0) {
177
  this.summarizeConversationBackground(conversation, fullAgent, aiApiKey).catch(() => { });
178
  }
@@ -186,9 +193,14 @@ let ChatService = ChatService_1 = class ChatService {
186
  version: process.env.CHAT_VERSION || '1.0.0',
187
  };
188
  }
189
- stripDetailsBesideCard(text) {
190
- if (!text)
191
- return text;
 
 
 
 
 
192
  const LABELS = [
193
  'contest name', 'name', 'theme', 'objective', 'description',
194
  'levels', 'level', 'number of levels',
@@ -321,7 +333,8 @@ let ChatService = ChatService_1 = class ChatService {
321
  this.logger.warn(`[CHAT_UI] malformed ui block ignored - first 200 chars: ${raw.slice(0, 200).replace(/\s+/g, ' ')}`);
322
  return null;
323
  }
324
- buildCardFromBrief(ui) {
 
325
  const action = Array.isArray(ui?.actions)
326
  ? ui.actions.find((a) => a?.action === 'create_contest')
327
  : null;
@@ -335,7 +348,16 @@ let ChatService = ChatService_1 = class ChatService {
335
  }
336
  if (typeof brief.country === 'string' &&
337
  /\b(except|excluding|all countries|everywhere|worldwide|globally)\b/i.test(brief.country)) {
338
- this.logger.warn(`[CHAT_UI] unstorable country targeting cleared: "${brief.country}"`);
 
 
 
 
 
 
 
 
 
339
  brief.country = '';
340
  }
341
  if (!String(brief.description ?? '').trim()) {
@@ -350,48 +372,62 @@ let ChatService = ChatService_1 = class ChatService {
350
  if (levels.length) {
351
  const byType = new Map();
352
  for (const l of levels) {
353
- const t = String(l?.type ?? '').replace(/_/g, ' ').trim() || 'level';
 
354
  byType.set(t, (byType.get(t) ?? 0) + 1);
355
  }
356
  const summary = [...byType.entries()]
357
  .map(([t, n]) => (n > 1 ? `${n} ${t}` : t))
358
  .join(', ');
359
- fields.push({ label: 'Levels', value: `${levels.length} — ${summary}` });
360
  }
361
  const prizes = Array.isArray(brief.prizes) ? brief.prizes : [];
362
  if (prizes.length) {
363
  const total = prizes.reduce((sum, p) => sum + (Number(p?.value) || 0), 0);
364
  const budget = Number(brief.prize_budget) || total;
365
  fields.push({
366
- label: 'Prizes',
367
- value: budget > 0 ? `${prizes.length} — ${budget.toLocaleString('en-US')} total` : String(prizes.length),
 
 
368
  });
369
  }
370
  if (brief.start_date && brief.end_date) {
371
- fields.push({ label: 'Dates', value: `${brief.start_date} → ${brief.end_date}` });
372
  }
373
  else if (Number(brief.duration_days) > 0) {
374
  const d = Number(brief.duration_days);
375
- fields.push({ label: 'Duration', value: d % 7 === 0 ? `${d / 7} week(s)` : `${d} days` });
 
 
 
376
  }
377
  if (typeof brief.audience === 'string' && brief.audience.trim()) {
378
- fields.push({ label: 'Audience', value: brief.audience.trim() });
379
  }
380
  if (typeof brief.country === 'string' && brief.country.trim()) {
381
- fields.push({ label: 'Where', value: brief.country.trim() });
 
 
 
 
 
 
382
  }
383
  if (Number(brief.number_of_winners) > 0) {
384
- fields.push({ label: 'Winners', value: String(Number(brief.number_of_winners)) });
385
  }
386
  if (typeof brief.draw_type === 'string' && brief.draw_type.trim()) {
387
- fields.push({ label: 'Draw', value: brief.draw_type.replace(/_/g, ' ') });
 
388
  }
389
  if (typeof brief.type === 'string' && brief.type.trim()) {
390
- fields.push({ label: 'Contest type', value: brief.type });
 
391
  }
392
  if (!fields.length)
393
  return;
394
- const title = String(brief.name ?? '').trim() || ui.card?.title || 'Your contest';
395
  const subtitle = String(brief.description ?? '').trim() || ui.card?.subtitle;
396
  ui.card = {
397
  title,
@@ -447,13 +483,22 @@ let ChatService = ChatService_1 = class ChatService {
447
  tokens_used: 0,
448
  model_used: 'host-note',
449
  }));
450
- await this.convRepo.update(conversation.id, {
451
  message_count: (conversation.message_count ?? 0) + 1,
452
- });
 
 
 
 
 
 
 
 
 
453
  this.logger.log(`[CHAT_NOTE] session=${sessionId} chars=${text.length}`);
454
  return { saved: true, message_id: saved.id, session_id: sessionId };
455
  }
456
- extractChatUi(reply, conversational = false) {
457
  if (!reply || !/chatbolt[-_]ui/i.test(reply)) {
458
  return { text: conversational ? this.stripDetailsBesideCard(reply) : reply };
459
  }
@@ -499,8 +544,12 @@ let ChatService = ChatService_1 = class ChatService {
499
  }))
500
  .slice(0, 4);
501
  }
 
 
502
  this.gateIncompleteCreateAction(clean);
503
- this.buildCardFromBrief(clean);
 
 
504
  let text = reply.replace(fence, '').trim();
505
  if (clean.card || conversational)
506
  text = this.stripDetailsBesideCard(text);
@@ -509,7 +558,140 @@ let ChatService = ChatService_1 = class ChatService {
509
  this.logger.log(`[CHAT_UI] attached ${clean.actions?.length ?? 0} action(s), ` +
510
  `${clean.suggestions?.length ?? 0} suggestion(s)${clean.card ? ', card' : ''}`);
511
  }
512
- return { text, ui: hasUi ? clean : undefined };
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
513
  }
514
  async getOptimizedHistory(conversationId, conversation, maxMessages) {
515
  const recentMessages = await this.msgRepo.find({
@@ -559,6 +741,43 @@ let ChatService = ChatService_1 = class ChatService {
559
  }
560
  };
561
  exports.ChatService = ChatService;
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
562
  exports.ChatService = ChatService = ChatService_1 = __decorate([
563
  (0, common_1.Injectable)(),
564
  __param(0, (0, typeorm_1.InjectRepository)(shared_1.Agent)),
 
150
  categories: fullAgent.categories,
151
  corePrompt: fullAgent.core_prompt ?? '',
152
  stylePrompt: fullAgent.style_prompt ?? '',
153
+ briefLedger: (conversation.metadata?.contest_brief ?? null),
154
  }));
155
  this.logger.log(`[TIMING] agent-service replied (${ms()})`);
156
  this.logger.log(`[AI RESPONSE] session=${sessionId} model=${response.model_used} total_tokens=${response.tokens_used}`);
157
  const conversational = !!response.conversational;
158
+ const { text: replyText, ui, slots } = this.extractChatUi(response.reply, conversational, dto.message);
159
  this.logger.log(`[CHAT_UI] conversational=${conversational} replyChars=${replyText.length}`);
160
  const saved = await this.msgRepo.save(this.msgRepo.create({
161
  conversation_id: conversation.id,
 
171
  model_used: response.model_used,
172
  });
173
  const newCount = (conversation.message_count ?? 0) + 2;
174
+ const ledger = this.mergeBriefLedger(conversation.metadata?.contest_brief, slots);
175
+ const convUpdate = { message_count: newCount };
176
+ if (ledger) {
177
+ const metadata = { ...(conversation.metadata ?? {}), contest_brief: ledger };
178
+ convUpdate.metadata = metadata;
179
+ conversation.metadata = metadata;
180
+ this.logger.log(`[BRIEF] settled: ${Object.keys(ledger).join(', ')}`);
181
+ }
182
+ await this.convRepo.update(conversation.id, convUpdate);
183
  if (newCount > 0 && newCount % 10 === 0) {
184
  this.summarizeConversationBackground(conversation, fullAgent, aiApiKey).catch(() => { });
185
  }
 
193
  version: process.env.CHAT_VERSION || '1.0.0',
194
  };
195
  }
196
+ stripDetailsBesideCard(input) {
197
+ if (!input)
198
+ return input;
199
+ const LEDGER_LEAK = /(?:^|(?<=[.!?]\s)|(?<=\n))[ \t]*(?:still[ \t]+missing|not[ \t]+yet[ \t]+settled|still[ \t]+needed|remaining|outstanding|missing)[ \t]*(?:slots?|items?|details?|fields?)?[ \t]*:[^\n.!?]*[.!?]?/gi;
200
+ let text = input.replace(LEDGER_LEAK, ' ').replace(/[ \t]{2,}/g, ' ');
201
+ if (text.length !== input.length) {
202
+ this.logger.warn('[CHAT_UI] internal slot checklist removed from the reply');
203
+ }
204
  const LABELS = [
205
  'contest name', 'name', 'theme', 'objective', 'description',
206
  'levels', 'level', 'number of levels',
 
333
  this.logger.warn(`[CHAT_UI] malformed ui block ignored - first 200 chars: ${raw.slice(0, 200).replace(/\s+/g, ' ')}`);
334
  return null;
335
  }
336
+ buildCardFromBrief(ui, lang = 'en') {
337
+ const T = ChatService_1.CARD_TEXT[lang];
338
  const action = Array.isArray(ui?.actions)
339
  ? ui.actions.find((a) => a?.action === 'create_contest')
340
  : null;
 
348
  }
349
  if (typeof brief.country === 'string' &&
350
  /\b(except|excluding|all countries|everywhere|worldwide|globally)\b/i.test(brief.country)) {
351
+ const after = brief.country.split(/\b(?:except|excluding|apart from|other than|but not)\b/i)[1];
352
+ const names = String(after ?? '')
353
+ .split(/\s*(?:,|and|or|\/)\s*/i)
354
+ .map((c) => c.trim().replace(/[.,;]+$/, ''))
355
+ .filter((c) => /^[A-Za-z][A-Za-z '-]{2,}$/.test(c));
356
+ this.logger.warn(`[CHAT_UI] unstorable country targeting "${brief.country}" — ` +
357
+ (names.length ? `kept as country_exclude=${names.join(', ')}` : 'cleared'));
358
+ if (names.length && !String(brief.country_exclude ?? '').trim()) {
359
+ brief.country_exclude = names.join(', ');
360
+ }
361
  brief.country = '';
362
  }
363
  if (!String(brief.description ?? '').trim()) {
 
372
  if (levels.length) {
373
  const byType = new Map();
374
  for (const l of levels) {
375
+ const raw = String(l?.type ?? '').trim();
376
+ const t = T.levelTypes[raw] || raw.replace(/_/g, ' ') || 'level';
377
  byType.set(t, (byType.get(t) ?? 0) + 1);
378
  }
379
  const summary = [...byType.entries()]
380
  .map(([t, n]) => (n > 1 ? `${n} ${t}` : t))
381
  .join(', ');
382
+ fields.push({ label: T.levels, value: `${levels.length} — ${summary}` });
383
  }
384
  const prizes = Array.isArray(brief.prizes) ? brief.prizes : [];
385
  if (prizes.length) {
386
  const total = prizes.reduce((sum, p) => sum + (Number(p?.value) || 0), 0);
387
  const budget = Number(brief.prize_budget) || total;
388
  fields.push({
389
+ label: T.prizes,
390
+ value: budget > 0
391
+ ? `${prizes.length} — ${budget.toLocaleString('en-US')} ${T.total}`
392
+ : String(prizes.length),
393
  });
394
  }
395
  if (brief.start_date && brief.end_date) {
396
+ fields.push({ label: T.dates, value: `${brief.start_date} → ${brief.end_date}` });
397
  }
398
  else if (Number(brief.duration_days) > 0) {
399
  const d = Number(brief.duration_days);
400
+ fields.push({
401
+ label: T.duration,
402
+ value: d % 7 === 0 ? `${d / 7} ${T.week}` : `${d} ${T.days}`,
403
+ });
404
  }
405
  if (typeof brief.audience === 'string' && brief.audience.trim()) {
406
+ fields.push({ label: T.audience, value: brief.audience.trim() });
407
  }
408
  if (typeof brief.country === 'string' && brief.country.trim()) {
409
+ fields.push({ label: T.where, value: brief.country.trim() });
410
+ }
411
+ else if (typeof brief.country_exclude === 'string' && brief.country_exclude.trim()) {
412
+ fields.push({
413
+ label: T.where,
414
+ value: T.everywhereExcept(brief.country_exclude.trim()),
415
+ });
416
  }
417
  if (Number(brief.number_of_winners) > 0) {
418
+ fields.push({ label: T.winners, value: String(Number(brief.number_of_winners)) });
419
  }
420
  if (typeof brief.draw_type === 'string' && brief.draw_type.trim()) {
421
+ const d = brief.draw_type.trim();
422
+ fields.push({ label: T.draw, value: T.draws[d] || d.replace(/_/g, ' ') });
423
  }
424
  if (typeof brief.type === 'string' && brief.type.trim()) {
425
+ const t = brief.type.trim();
426
+ fields.push({ label: T.contestType, value: T.types[t] || t });
427
  }
428
  if (!fields.length)
429
  return;
430
+ const title = String(brief.name ?? '').trim() || ui.card?.title || T.fallbackTitle;
431
  const subtitle = String(brief.description ?? '').trim() || ui.card?.subtitle;
432
  ui.card = {
433
  title,
 
483
  tokens_used: 0,
484
  model_used: 'host-note',
485
  }));
486
+ const noteUpdate = {
487
  message_count: (conversation.message_count ?? 0) + 1,
488
+ };
489
+ if (/\b(created|is live|has been created|contest id)\b/i.test(text)) {
490
+ const metadata = { ...(conversation.metadata ?? {}) };
491
+ if (metadata.contest_brief) {
492
+ delete metadata.contest_brief;
493
+ noteUpdate.metadata = metadata;
494
+ this.logger.log('[BRIEF] contest created — ledger cleared for the next one');
495
+ }
496
+ }
497
+ await this.convRepo.update(conversation.id, noteUpdate);
498
  this.logger.log(`[CHAT_NOTE] session=${sessionId} chars=${text.length}`);
499
  return { saved: true, message_id: saved.id, session_id: sessionId };
500
  }
501
+ extractChatUi(reply, conversational = false, userMessage = '') {
502
  if (!reply || !/chatbolt[-_]ui/i.test(reply)) {
503
  return { text: conversational ? this.stripDetailsBesideCard(reply) : reply };
504
  }
 
544
  }))
545
  .slice(0, 4);
546
  }
547
+ const bare = reply.replace(fence, '').trim();
548
+ const lang = this.cardLang(bare, userMessage);
549
  this.gateIncompleteCreateAction(clean);
550
+ this.reconcileBriefWithRequest(clean, userMessage);
551
+ this.buildCardFromBrief(clean, lang);
552
+ const slots = this.readSlots(ui, clean);
553
  let text = reply.replace(fence, '').trim();
554
  if (clean.card || conversational)
555
  text = this.stripDetailsBesideCard(text);
 
558
  this.logger.log(`[CHAT_UI] attached ${clean.actions?.length ?? 0} action(s), ` +
559
  `${clean.suggestions?.length ?? 0} suggestion(s)${clean.card ? ', card' : ''}`);
560
  }
561
+ return { text, ui: hasUi ? clean : undefined, slots };
562
+ }
563
+ cardLang(replyText, userMessage) {
564
+ const ARABIC = /[؀-ۿ]/;
565
+ if (ARABIC.test(replyText))
566
+ return 'ar';
567
+ if (!/[A-Za-z]{2,}/.test(replyText) && ARABIC.test(userMessage))
568
+ return 'ar';
569
+ return 'en';
570
+ }
571
+ reconcileBriefWithRequest(ui, userMessage) {
572
+ const action = Array.isArray(ui?.actions)
573
+ ? ui.actions.find((a) => a?.action === 'create_contest')
574
+ : null;
575
+ const brief = action?.payload?.brief;
576
+ if (!brief || typeof brief !== 'object' || !userMessage)
577
+ return;
578
+ const m = ChatService_1.EXCLUSION.exec(userMessage);
579
+ const excludedRaw = m ? (m[1] ?? m[2] ?? '') : '';
580
+ if (excludedRaw) {
581
+ const FILLER = /\s+(?:please|pls|thanks|thank you|only|just|too|as well|also|for now|though|ok|okay|country|countries|region|market|markets)$/i;
582
+ const excluded = excludedRaw
583
+ .split(/\s*(?:,|and|or|\/)\s*/i)
584
+ .map(c => {
585
+ let s = c.trim().replace(/[.,;!?]+$/, '');
586
+ for (let i = 0; i < 3 && FILLER.test(s); i++)
587
+ s = s.replace(FILLER, '');
588
+ return s.trim();
589
+ })
590
+ .filter(c => /^[A-Za-z][A-Za-z '-]{2,}$/.test(c));
591
+ if (excluded.length) {
592
+ const country = String(brief.country ?? '').trim();
593
+ const named = excluded.filter(c => new RegExp(`\\b${c.replace(/[.*+?^${}()|[\]\\]/g, '\\$&')}\\b`, 'i').test(country));
594
+ if (named.length || !country) {
595
+ brief.country = '';
596
+ brief.country_exclude = excluded.join(', ');
597
+ this.logger.warn(`[BRIEF] "${excludedRaw.trim()}" was excluded but the brief said ` +
598
+ `"${country || '(empty)'}" — kept as country_exclude=${brief.country_exclude}`);
599
+ }
600
+ }
601
+ }
602
+ const race = /\bfirst\s+(\d{1,5}|one|two|three|four|five|six|seven|eight|nine|ten)\b[^.!?]{0,60}?\b(?:to\s+)?(?:complete|finish|finishes|completes|done|solve)\b/i
603
+ .exec(userMessage);
604
+ if (race) {
605
+ if (brief.draw_type !== 'first_to_complete') {
606
+ this.logger.warn(`[BRIEF] "first ${race[1]} to complete" but draw_type was ` +
607
+ `"${brief.draw_type ?? '(none)'}" — corrected to first_to_complete`);
608
+ brief.draw_type = 'first_to_complete';
609
+ }
610
+ const WORDS = {
611
+ one: 1, two: 2, three: 3, four: 4, five: 5,
612
+ six: 6, seven: 7, eight: 8, nine: 9, ten: 10,
613
+ };
614
+ const n = WORDS[race[1].toLowerCase()] ?? parseInt(race[1], 10);
615
+ if (Number.isFinite(n) && n > 0 && Number(brief.number_of_winners) !== n) {
616
+ this.logger.warn(`[BRIEF] winners was ${brief.number_of_winners ?? '(none)'} but the client ` +
617
+ `said the first ${n} — corrected`);
618
+ brief.number_of_winners = n;
619
+ }
620
+ }
621
+ }
622
+ readSlots(ui, clean) {
623
+ const out = {};
624
+ const raw = ui?.slots;
625
+ if (raw && typeof raw === 'object' && !Array.isArray(raw)) {
626
+ for (const key of ChatService_1.SLOT_KEYS) {
627
+ const v = raw[key];
628
+ if (typeof v === 'string' && v.trim())
629
+ out[key] = v.trim().slice(0, 300);
630
+ else if (typeof v === 'number')
631
+ out[key] = String(v);
632
+ }
633
+ }
634
+ const brief = Array.isArray(clean?.actions)
635
+ ? clean.actions.find((a) => a?.action === 'create_contest')?.payload?.brief
636
+ : null;
637
+ if (brief && typeof brief === 'object') {
638
+ const derived = this.slotsFromBrief(brief);
639
+ for (const [k, v] of Object.entries(derived))
640
+ if (v)
641
+ out[k] = v;
642
+ }
643
+ return Object.keys(out).length ? out : undefined;
644
+ }
645
+ slotsFromBrief(brief) {
646
+ const out = {};
647
+ const str = (v) => (typeof v === 'string' ? v.trim() : '');
648
+ if (str(brief.name))
649
+ out.name = str(brief.name);
650
+ if (str(brief.description))
651
+ out.theme = str(brief.description);
652
+ if (Array.isArray(brief.levels) && brief.levels.length) {
653
+ const types = brief.levels
654
+ .map((l) => str(l?.type))
655
+ .filter(Boolean);
656
+ const counts = types.reduce((acc, t) => {
657
+ acc[t] = (acc[t] ?? 0) + 1;
658
+ return acc;
659
+ }, {});
660
+ const parts = Object.entries(counts).map(([t, n]) => `${n} ${t}`);
661
+ out.levels = `${brief.levels.length} levels` +
662
+ (parts.length ? ` — ${parts.join(', ')}` : '');
663
+ }
664
+ if (Array.isArray(brief.prizes) && brief.prizes.length) {
665
+ const total = Number(brief.prize_budget) ||
666
+ brief.prizes.reduce((s, p) => s + (Number(p?.value) || 0), 0);
667
+ out.prizes = `${brief.prizes.length} prize(s)` +
668
+ (total ? `, ${total.toLocaleString('en-US')} total` : '');
669
+ }
670
+ else if (Number(brief.prize_budget)) {
671
+ out.prizes = `${Number(brief.prize_budget).toLocaleString('en-US')} total`;
672
+ }
673
+ const days = Number(brief.duration_days);
674
+ if (days)
675
+ out.duration = `${days} days`;
676
+ else if (str(brief.start_date) && str(brief.end_date)) {
677
+ out.duration = `${str(brief.start_date)} to ${str(brief.end_date)}`;
678
+ }
679
+ const audience = [str(brief.audience), str(brief.country)].filter(Boolean).join(', ');
680
+ if (audience)
681
+ out.audience = audience;
682
+ if (str(brief.draw_type))
683
+ out.draw_type = str(brief.draw_type);
684
+ return out;
685
+ }
686
+ mergeBriefLedger(previous, incoming) {
687
+ if (!incoming || !Object.keys(incoming).length)
688
+ return previous ?? null;
689
+ const merged = { ...(previous ?? {}) };
690
+ for (const [k, v] of Object.entries(incoming)) {
691
+ if (typeof v === 'string' && v.trim())
692
+ merged[k] = v.trim();
693
+ }
694
+ return merged;
695
  }
696
  async getOptimizedHistory(conversationId, conversation, maxMessages) {
697
  const recentMessages = await this.msgRepo.find({
 
741
  }
742
  };
743
  exports.ChatService = ChatService;
744
+ ChatService.CARD_TEXT = {
745
+ en: {
746
+ levels: 'Levels', prizes: 'Prizes', dates: 'Dates', duration: 'Duration',
747
+ audience: 'Audience', where: 'Where', winners: 'Winners', draw: 'Draw',
748
+ contestType: 'Contest type', fallbackTitle: 'Your contest',
749
+ total: 'total', week: 'week(s)', days: 'days',
750
+ everywhereExcept: (c) => `Everywhere except ${c}`,
751
+ draws: {
752
+ random_draw: 'random draw', first_to_complete: 'first to complete',
753
+ top_points: 'top points', instant_result: 'instant result',
754
+ },
755
+ types: { public: 'public', private: 'private' },
756
+ levelTypes: {},
757
+ },
758
+ ar: {
759
+ levels: 'المراحل', prizes: 'الجوائز', dates: 'التواريخ', duration: 'المدة',
760
+ audience: 'الجمهور', where: 'النطاق', winners: 'الفائزون', draw: 'طريقة الاختيار',
761
+ contestType: 'نوع المسابقة', fallbackTitle: 'مسابقتك',
762
+ total: 'الإجمالي', week: 'أسبوع', days: 'يوم',
763
+ everywhereExcept: (c) => `كل الدول ما عدا ${c}`,
764
+ draws: {
765
+ random_draw: 'سحب عشوائي', first_to_complete: 'الأسرع في الإكمال',
766
+ top_points: 'أعلى النقاط', instant_result: 'نتيجة فورية',
767
+ },
768
+ types: { public: 'عامة', private: 'خاصة' },
769
+ levelTypes: {
770
+ qr: 'مسح QR', image: 'رفع صورة', text: 'إجابة نصية', quiz: 'اختبار',
771
+ survey: 'استبيان', link_task: 'مهمة رابط', geolocation: 'تحديد موقع',
772
+ luqta_weebhook: 'ويب هوك لقطة', client_webhook: 'ويب هوك العميل',
773
+ client_qr_completion: 'إكمال QR للعميل',
774
+ },
775
+ },
776
+ };
777
+ ChatService.EXCLUSION = /\b(?:every ?where|all countries|any ?where|all over|globally|worldwide|all markets)\b[^.!?]{0,30}\b(?:except|excluding|apart from|other than|but not|but)\b\s+([^.!?;]{2,80})|\b(?:except|excluding|apart from|other than|not)\s+(?:in\s+|for\s+)?([A-Z][\w'-]*(?:\s+[A-Z][\w'-]*)*)/;
778
+ ChatService.SLOT_KEYS = [
779
+ 'name', 'theme', 'levels', 'prizes', 'duration', 'audience', 'draw_type',
780
+ ];
781
  exports.ChatService = ChatService = ChatService_1 = __decorate([
782
  (0, common_1.Injectable)(),
783
  __param(0, (0, typeorm_1.InjectRepository)(shared_1.Agent)),
apps/api-gateway/apps/api-gateway/src/chat/chat.service.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../../apps/api-gateway/src/chat/chat.service.ts"],"names":[],"mappings":"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"}
 
1
+ {"version":3,"file":"chat.service.js","sourceRoot":"","sources":["../../../../../../../apps/api-gateway/src/chat/chat.service.ts"],"names":[],"mappings":"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"}
apps/api-gateway/tsconfig.app.tsbuildinfo CHANGED
The diff for this file is too large to render. See raw diff