codingbuddy 0.0.0-canary.20260111062813.g9379c9e → 0.0.0-canary.20260111071720.g94c22a7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -29,4 +29,5 @@ export declare class ModeHandler extends AbstractHandler {
29
29
  private handleSessionCreationError;
30
30
  private generateSessionTitle;
31
31
  private persistModeState;
32
+ private autoAddModeSection;
32
33
  }
@@ -23,6 +23,7 @@ const language_service_1 = require("../../shared/language.service");
23
23
  const response_utils_1 = require("../response.utils");
24
24
  const model_1 = require("../../model");
25
25
  const validation_constants_1 = require("../../shared/validation.constants");
26
+ const slug_utils_1 = require("../../shared/slug.utils");
26
27
  const session_service_1 = require("../../session/session.service");
27
28
  const state_service_1 = require("../../state/state.service");
28
29
  const SESSION_TITLE_MAX_LENGTH = 50;
@@ -87,6 +88,12 @@ let ModeHandler = ModeHandler_1 = class ModeHandler extends abstract_handler_1.A
87
88
  const languageInstructionResult = this.languageService.getLanguageInstruction(language || 'en');
88
89
  const resolvedModel = await this.modelResolverService.resolveForMode(result.agent);
89
90
  const sessionInfo = await this.handleAutoSession(result.mode, result.originalPrompt);
91
+ if (sessionInfo.autoSession?.sessionId && result.agent) {
92
+ await this.autoAddModeSection(sessionInfo.autoSession.sessionId, result.mode, result.agent, result.originalPrompt, result.recommended_act_agent);
93
+ }
94
+ else if (sessionInfo.autoSession?.sessionId && !result.agent) {
95
+ this.logger.debug(`Skipping auto-add section: agent is undefined for mode ${result.mode}`);
96
+ }
90
97
  await this.persistModeState(result.mode, sessionInfo.autoSession?.sessionId);
91
98
  return (0, response_utils_1.createJsonResponse)({
92
99
  ...result,
@@ -201,13 +208,8 @@ let ModeHandler = ModeHandler_1 = class ModeHandler extends abstract_handler_1.A
201
208
  };
202
209
  }
203
210
  generateSessionTitle(prompt) {
204
- const truncated = prompt.slice(0, SESSION_TITLE_MAX_LENGTH).trim();
205
- const slug = truncated
206
- .toLowerCase()
207
- .replace(/[^a-z0-9가-힣\s-]/g, '')
208
- .replace(/\s+/g, '-')
209
- .replace(/^-|-$/g, '');
210
- return slug || 'untitled-session';
211
+ const slug = (0, slug_utils_1.generateSlug)(prompt, SESSION_TITLE_MAX_LENGTH);
212
+ return slug === 'untitled' ? 'untitled-session' : slug;
211
213
  }
212
214
  async persistModeState(mode, sessionId) {
213
215
  try {
@@ -221,6 +223,25 @@ let ModeHandler = ModeHandler_1 = class ModeHandler extends abstract_handler_1.A
221
223
  this.logger.warn(`Failed to persist mode state: ${error instanceof Error ? error.message : 'Unknown error'}`);
222
224
  }
223
225
  }
226
+ async autoAddModeSection(sessionId, mode, primaryAgent, task, recommendedActAgent) {
227
+ try {
228
+ await this.sessionService.updateSession({
229
+ sessionId,
230
+ section: {
231
+ mode,
232
+ primaryAgent,
233
+ task,
234
+ recommendedActAgent: recommendedActAgent?.agentName,
235
+ recommendedActAgentConfidence: recommendedActAgent?.confidence,
236
+ status: 'in_progress',
237
+ },
238
+ });
239
+ this.logger.debug(`Auto-added ${mode} section to session ${sessionId}`);
240
+ }
241
+ catch (error) {
242
+ this.logger.warn(`Failed to auto-add mode section: ${error instanceof Error ? error.message : 'Unknown error'}`);
243
+ }
244
+ }
224
245
  };
225
246
  exports.ModeHandler = ModeHandler;
226
247
  exports.ModeHandler = ModeHandler = ModeHandler_1 = __decorate([
@@ -1 +1 @@
1
- {"version":3,"file":"mode.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/mode.handler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mode.handler.js","sourceRoot":"","sources":["../../../../src/mcp/handlers/mode.handler.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,2CAA4D;AAG5D,yDAAqD;AACrD,mEAA+D;AAC/D,iEAA+D;AAC/D,gEAA4D;AAC5D,oEAAgE;AAChE,sDAA4E;AAC5E,uCAAmD;AACnD,4EAA0E;AAC1E,wDAAuD;AACvD,mEAA+D;AAC/D,6DAAyD;AAQzD,MAAM,wBAAwB,GAAG,EAAE,CAAC;AAGpC,MAAM,mBAAmB,GAAG,4BAA4B,CAAC;AAGzD,MAAM,iBAAiB,GAAG,CAAC,MAAM,EAAE,MAAM,CAAU,CAAC;AAKpD,MAAM,gBAAgB,GAAG;IACvB,iBAAiB,EACf,8GAA8G;IAChH,sBAAsB,EACpB,4EAA4E;IAC9E,uBAAuB,EACrB,wEAAwE;IAC1E,kCAAkC,EAAE,CAAC,KAAa,EAAE,EAAE,CACpD,qCAAqC,KAAK,wCAAwC;CAC5E,CAAC;AAsBJ,IAAM,WAAW,mBAAjB,MAAM,WAAY,SAAQ,kCAAe;IAG9C,YAC2B,cAA+C,EACvD,aAA4B,EAC5B,eAAgC,EAChC,oBAA0C,EAC1C,cAA8B,EAC9B,YAA0B;QAE3C,KAAK,EAAE,CAAC;QAPkC,mBAAc,GAAd,cAAc,CAAgB;QACvD,kBAAa,GAAb,aAAa,CAAe;QAC5B,oBAAe,GAAf,eAAe,CAAiB;QAChC,yBAAoB,GAApB,oBAAoB,CAAsB;QAC1C,mBAAc,GAAd,cAAc,CAAgB;QAC9B,iBAAY,GAAZ,YAAY,CAAc;QAR5B,WAAM,GAAG,IAAI,eAAM,CAAC,aAAW,CAAC,IAAI,CAAC,CAAC;QAkHtC,uBAAkB,GAAkB,EAAE,CAAC;IAvGxD,CAAC;IAES,eAAe;QACvB,OAAO,CAAC,YAAY,CAAC,CAAC;IACxB,CAAC;IAED,kBAAkB;QAChB,OAAO;YACL;gBACE,IAAI,EAAE,YAAY;gBAClB,WAAW,EACT,yZAAyZ;gBAC3Z,WAAW,EAAE;oBACX,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,MAAM,EAAE;4BACN,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,uDAAuD;yBAC1D;wBACD,iBAAiB,EAAE;4BACjB,IAAI,EAAE,QAAQ;4BACd,WAAW,EACT,qJAAqJ;yBACxJ;qBACF;oBACD,QAAQ,EAAE,CAAC,QAAQ,CAAC;iBACrB;aACF;SACF,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,UAAU,CACxB,QAAgB,EAChB,IAAyC;QAEzC,MAAM,MAAM,GAAG,IAAA,4CAAqB,EAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QACrD,IAAI,MAAM,KAAK,IAAI,EAAE,CAAC;YACpB,OAAO,IAAA,oCAAmB,EAAC,oCAAoC,CAAC,CAAC;QACnE,CAAC;QAGD,MAAM,gBAAgB,GACpB,IAAA,4CAAqB,EAAC,IAAI,EAAE,mBAAmB,CAAC,IAAI,SAAS,CAAC;QAEhE,IAAI,CAAC;YAGH,MAAM,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,CAAC;YAElC,MAAM,OAAO,GAAG,gBAAgB;gBAC9B,CAAC,CAAC,EAAE,mBAAmB,EAAE,gBAAgB,EAAE;gBAC3C,CAAC,CAAC,SAAS,CAAC;YACd,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;YACpE,MAAM,QAAQ,GAAG,MAAM,IAAI,CAAC,aAAa,CAAC,WAAW,EAAE,CAAC;YACxD,MAAM,yBAAyB,GAC7B,IAAI,CAAC,eAAe,CAAC,sBAAsB,CAAC,QAAQ,IAAI,IAAI,CAAC,CAAC;YAChE,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAClE,MAAM,CAAC,KAAK,CACb,CAAC;YAGF,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,iBAAiB,CAC9C,MAAM,CAAC,IAAI,EACX,MAAM,CAAC,cAAc,CACtB,CAAC;YAGF,IAAI,WAAW,CAAC,WAAW,EAAE,SAAS,IAAI,MAAM,CAAC,KAAK,EAAE,CAAC;gBACvD,MAAM,IAAI,CAAC,kBAAkB,CAC3B,WAAW,CAAC,WAAW,CAAC,SAAS,EACjC,MAAM,CAAC,IAAY,EACnB,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,cAAc,EACrB,MAAM,CAAC,qBAAqB,CAC7B,CAAC;YACJ,CAAC;iBAAM,IAAI,WAAW,CAAC,WAAW,EAAE,SAAS,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;gBAC/D,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,0DAA0D,MAAM,CAAC,IAAI,EAAE,CACxE,CAAC;YACJ,CAAC;YAGD,MAAM,IAAI,CAAC,gBAAgB,CACzB,MAAM,CAAC,IAAI,EACX,WAAW,CAAC,WAAW,EAAE,SAAS,CACnC,CAAC;YAEF,OAAO,IAAA,mCAAkB,EAAC;gBACxB,GAAG,MAAM;gBACT,QAAQ;gBACR,mBAAmB,EAAE,yBAAyB,CAAC,WAAW;gBAC1D,aAAa;gBACb,GAAG,WAAW;aACf,CAAC,CAAC;QACL,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAA,oCAAmB,EACxB,yBAAyB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CACpF,CAAC;QACJ,CAAC;IACH,CAAC;IASO,KAAK,CAAC,iBAAiB,CAC7B,IAAY,EACZ,cAAsB;QAGtB,IACE,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAA0C,CAAC,EACvE,CAAC;YACD,OAAO,IAAI,CAAC,mCAAmC,CAAC,IAAI,CAAC,CAAC;QACxD,CAAC;QAED,IAAI,CAAC;YACH,OAAO,MAAM,IAAI,CAAC,qBAAqB,CAAC,cAAc,CAAC,CAAC;QAC1D,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,0BAA0B,CAAC,KAAK,CAAC,CAAC;QAChD,CAAC;IACH,CAAC;IAMO,KAAK,CAAC,mCAAmC,CAC/C,IAAY;QAEZ,IAAI,IAAI,KAAK,KAAK,IAAI,IAAI,KAAK,MAAM,EAAE,CAAC;YACtC,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC;YACnE,IAAI,CAAC,aAAa,EAAE,CAAC;gBACnB,OAAO;oBACL,cAAc,EAAE,gBAAgB,CAAC,iBAAiB;iBACnD,CAAC;YACJ,CAAC;YAED,OAAO;gBACL,WAAW,EAAE;oBACX,SAAS,EAAE,aAAa,CAAC,QAAQ,CAAC,EAAE;oBACpC,QAAQ,EAAE,GAAG,mBAAmB,GAAG,aAAa,CAAC,QAAQ,CAAC,EAAE,KAAK;oBACjE,OAAO,EAAE,KAAK;iBACf;gBACD,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC;aACxD,CAAC;QACJ,CAAC;QACD,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAMO,mBAAmB,CAAC,OAAwB;QAClD,MAAM,YAAY,GAAa,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAa,EAAE,CAAC;QAG9B,KAAK,MAAM,OAAO,IAAI,OAAO,CAAC,QAAQ,EAAE,CAAC;YACvC,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;gBACtB,YAAY,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC;YAC1C,CAAC;YACD,IAAI,OAAO,CAAC,KAAK,EAAE,CAAC;gBAClB,QAAQ,CAAC,IAAI,CAAC,GAAG,OAAO,CAAC,KAAK,CAAC,CAAC;YAClC,CAAC;QACH,CAAC;QAGD,MAAM,WAAW,GAAG,OAAO,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,KAAK,MAAM,CAAC,CAAC;QAClE,MAAM,mBAAmB,GACvB,WAAW,EAAE,mBAAmB;YAChC,WAAW,CAAC,6BAA6B;YACvC,CAAC,CAAC;gBACE,KAAK,EAAE,WAAW,CAAC,mBAAmB;gBACtC,UAAU,EAAE,WAAW,CAAC,6BAA6B;aACtD;YACH,CAAC,CAAC,SAAS,CAAC;QAEhB,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;YAC9B,KAAK,EAAE,OAAO,CAAC,QAAQ,CAAC,KAAK;YAC7B,gBAAgB,EAAE,OAAO,CAAC,QAAQ;YAClC,mBAAmB;YACnB,YAAY;YACZ,QAAQ;SACT,CAAC;IACJ,CAAC;IAKO,KAAK,CAAC,qBAAqB,CACjC,cAAsB;QAGtB,MAAM,eAAe,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,gBAAgB,EAAE,CAAC;QACrE,IAAI,eAAe,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,qBAAqB,CAAC,eAAe,CAAC,CAAC;QACrD,CAAC;QAGD,MAAM,KAAK,GAAG,IAAI,CAAC,oBAAoB,CAAC,cAAc,CAAC,CAAC;QACxD,OAAO,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACtC,CAAC;IAMO,KAAK,CAAC,qBAAqB,CACjC,OAAwB;QAExB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,kCAAkC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC,CAAC;QAC3E,OAAO;YACL,WAAW,EAAE;gBACX,SAAS,EAAE,OAAO,CAAC,QAAQ,CAAC,EAAE;gBAC9B,QAAQ,EAAE,GAAG,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC,EAAE,KAAK;gBAC3D,OAAO,EAAE,KAAK;aACf;YACD,cAAc,EAAE,gBAAgB,CAAC,sBAAsB;YACvD,cAAc,EAAE,IAAI,CAAC,mBAAmB,CAAC,OAAO,CAAC;SAClD,CAAC;IACJ,CAAC;IAKO,KAAK,CAAC,gBAAgB,CAAC,KAAa;QAC1C,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC,EAAE,KAAK,EAAE,CAAC,CAAC;QAExE,IAAI,YAAY,CAAC,OAAO,IAAI,YAAY,CAAC,SAAS,EAAE,CAAC;YACnD,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,yBAAyB,YAAY,CAAC,SAAS,EAAE,CAAC,CAAC;YACnE,OAAO;gBACL,WAAW,EAAE;oBACX,SAAS,EAAE,YAAY,CAAC,SAAS;oBACjC,QAAQ,EAAE,YAAY,CAAC,QAAQ,IAAI,EAAE;oBACrC,OAAO,EAAE,IAAI;iBACd;aACF,CAAC;QACJ,CAAC;QAED,OAAO;YACL,cAAc,EAAE,gBAAgB,CAAC,kCAAkC,CACjE,YAAY,CAAC,KAAK,IAAI,eAAe,CACtC;SACF,CAAC;IACJ,CAAC;IAKO,0BAA0B,CAAC,KAAc;QAC/C,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,kCAAkC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC7F,CAAC;QACF,OAAO;YACL,cAAc,EAAE,gBAAgB,CAAC,uBAAuB;SACzD,CAAC;IACJ,CAAC;IAKO,oBAAoB,CAAC,MAAc;QACzC,MAAM,IAAI,GAAG,IAAA,yBAAY,EAAC,MAAM,EAAE,wBAAwB,CAAC,CAAC;QAE5D,OAAO,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,kBAAkB,CAAC,CAAC,CAAC,IAAI,CAAC;IACzD,CAAC;IAMO,KAAK,CAAC,gBAAgB,CAC5B,IAAY,EACZ,SAAkB;QAElB,IAAI,CAAC;YAEH,MAAM,IAAI,CAAC,YAAY,CAAC,cAAc,CACpC,IAAwC,CACzC,CAAC;YAGF,IAAI,SAAS,EAAE,CAAC;gBACd,MAAM,IAAI,CAAC,YAAY,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC;YACvD,CAAC;YAED,IAAI,CAAC,MAAM,CAAC,KAAK,CACf,8BAA8B,IAAI,eAAe,SAAS,IAAI,MAAM,EAAE,CACvE,CAAC;QACJ,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,iCAAiC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC5F,CAAC;QACJ,CAAC;IACH,CAAC;IAOO,KAAK,CAAC,kBAAkB,CAC9B,SAAiB,EACjB,IAAU,EACV,YAAoB,EACpB,IAAY,EACZ,mBAA+D;QAE/D,IAAI,CAAC;YACH,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CAAC;gBACtC,SAAS;gBACT,OAAO,EAAE;oBACP,IAAI;oBACJ,YAAY;oBACZ,IAAI;oBACJ,mBAAmB,EAAE,mBAAmB,EAAE,SAAS;oBACnD,6BAA6B,EAAE,mBAAmB,EAAE,UAAU;oBAC9D,MAAM,EAAE,aAAa;iBACtB;aACF,CAAC,CAAC;YAEH,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,cAAc,IAAI,uBAAuB,SAAS,EAAE,CAAC,CAAC;QAC1E,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YAEf,IAAI,CAAC,MAAM,CAAC,IAAI,CACd,oCAAoC,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAC/F,CAAC;QACJ,CAAC;IACH,CAAC;CACF,CAAA;AA7VY,kCAAW;sBAAX,WAAW;IADvB,IAAA,mBAAU,GAAE;IAKR,WAAA,IAAA,eAAM,EAAC,gCAAe,CAAC,CAAA;qCAAkC,gCAAc;QACxC,8BAAa;QACX,kCAAe;QACV,4BAAoB;QAC1B,gCAAc;QAChB,4BAAY;GATlC,WAAW,CA6VvB"}
@@ -16,7 +16,10 @@ const fs = require("fs/promises");
16
16
  const fs_1 = require("fs");
17
17
  const path = require("path");
18
18
  const config_service_1 = require("../config/config.service");
19
+ const slug_utils_1 = require("../shared/slug.utils");
20
+ const async_utils_1 = require("../shared/async.utils");
19
21
  const SESSIONS_DIR_NAME = 'docs/codingbuddy/sessions';
22
+ const SESSION_FILE_TIMEOUT_MS = 5000;
20
23
  const MARKDOWN = {
21
24
  SESSION_HEADER: '# Session:',
22
25
  CREATED_PREFIX: '**Created**:',
@@ -71,6 +74,19 @@ const LOCALIZED_LABELS = {
71
74
  DECISIONS_HEADER: '### 决策',
72
75
  NOTES_HEADER: '### 备注',
73
76
  },
77
+ es: {
78
+ SESSION_HEADER: '# Sesión:',
79
+ CREATED_PREFIX: '**Creado**:',
80
+ UPDATED_PREFIX: '**Actualizado**:',
81
+ STATUS_PREFIX: '**Estado**:',
82
+ PRIMARY_AGENT_PREFIX: '**Agente Principal**:',
83
+ RECOMMENDED_ACT_AGENT_PREFIX: '**Agente ACT Recomendado**:',
84
+ SPECIALISTS_PREFIX: '**Especialistas**:',
85
+ SECTION_SEPARATOR: '---',
86
+ TASK_HEADER: '### Tarea',
87
+ DECISIONS_HEADER: '### Decisiones',
88
+ NOTES_HEADER: '### Notas',
89
+ },
74
90
  };
75
91
  function getLocalizedLabels(language) {
76
92
  return LOCALIZED_LABELS[language] || LOCALIZED_LABELS.en;
@@ -118,6 +134,13 @@ const MAX_CACHE_SIZE = 100;
118
134
  const VALID_SESSION_STATUSES = ['active', 'completed', 'archived'];
119
135
  const VALID_SECTION_STATUSES = ['in_progress', 'completed', 'blocked'];
120
136
  const SECTION_HEADER_PATTERN = /^## (PLAN|ACT|EVAL|AUTO) \((.+)\)$/;
137
+ const LANGUAGE_TO_LOCALE = {
138
+ en: 'en-US',
139
+ ko: 'ko-KR',
140
+ ja: 'ja-JP',
141
+ zh: 'zh-CN',
142
+ es: 'es-ES',
143
+ };
121
144
  function isValidSessionStatus(value) {
122
145
  return VALID_SESSION_STATUSES.includes(value);
123
146
  }
@@ -333,11 +356,7 @@ let SessionService = SessionService_1 = class SessionService {
333
356
  }
334
357
  generateFilename(title) {
335
358
  const date = new Date().toISOString().split('T')[0];
336
- const slug = title
337
- .toLowerCase()
338
- .replace(/[^a-z0-9가-힣]+/g, '-')
339
- .replace(/^-|-$/g, '')
340
- .slice(0, MAX_SLUG_LENGTH);
359
+ const slug = (0, slug_utils_1.generateSlug)(title, MAX_SLUG_LENGTH);
341
360
  return `${date}-${slug}.md`;
342
361
  }
343
362
  async createSession(options) {
@@ -371,7 +390,10 @@ let SessionService = SessionService_1 = class SessionService {
371
390
  };
372
391
  const language = (await this.configService.getLanguage()) || 'en';
373
392
  const content = this.serializeDocument(document, language);
374
- await fs.writeFile(filePath, content, 'utf-8');
393
+ await (0, async_utils_1.withTimeout)(fs.writeFile(filePath, content, 'utf-8'), {
394
+ timeoutMs: SESSION_FILE_TIMEOUT_MS,
395
+ operationName: 'write session file',
396
+ });
375
397
  this.activeSessionId = null;
376
398
  this.activeSessionTimestamp = 0;
377
399
  this.logger.log(`Created session: ${filename}`);
@@ -406,7 +428,10 @@ let SessionService = SessionService_1 = class SessionService {
406
428
  this.logger.debug(`Session not found: ${sessionId}`);
407
429
  return null;
408
430
  }
409
- const content = await fs.readFile(filePath, 'utf-8');
431
+ const content = await (0, async_utils_1.withTimeout)(fs.readFile(filePath, 'utf-8'), {
432
+ timeoutMs: SESSION_FILE_TIMEOUT_MS,
433
+ operationName: 'read session file',
434
+ });
410
435
  const session = this.parseDocument(content, sessionId);
411
436
  this.addToCache(sessionId, session);
412
437
  return session;
@@ -462,7 +487,9 @@ let SessionService = SessionService_1 = class SessionService {
462
487
  };
463
488
  }
464
489
  const now = new Date().toISOString();
465
- const timestamp = new Date().toLocaleString('ko-KR', {
490
+ const language = (await this.configService.getLanguage()) || 'en';
491
+ const locale = LANGUAGE_TO_LOCALE[language] || 'en-US';
492
+ const timestamp = new Date().toLocaleString(locale, {
466
493
  hour: '2-digit',
467
494
  minute: '2-digit',
468
495
  hour12: false,
@@ -487,9 +514,11 @@ let SessionService = SessionService_1 = class SessionService {
487
514
  error: `Invalid session ID: ${options.sessionId}`,
488
515
  };
489
516
  }
490
- const language = (await this.configService.getLanguage()) || 'en';
491
517
  const content = this.serializeDocument(session, language);
492
- await fs.writeFile(filePath, content, 'utf-8');
518
+ await (0, async_utils_1.withTimeout)(fs.writeFile(filePath, content, 'utf-8'), {
519
+ timeoutMs: SESSION_FILE_TIMEOUT_MS,
520
+ operationName: 'update session file',
521
+ });
493
522
  this.invalidateSession(options.sessionId);
494
523
  this.logger.log(`Updated session ${options.sessionId}: ${options.section.mode} section`);
495
524
  return {
@@ -1 +1 @@
1
- {"version":3,"file":"session.service.js","sourceRoot":"","sources":["../../../src/session/session.service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"session.service.js","sourceRoot":"","sources":["../../../src/session/session.service.ts"],"names":[],"mappings":"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"}
@@ -6,3 +6,15 @@ export interface AsyncWithFallbackOptions<T> {
6
6
  logger?: Logger;
7
7
  }
8
8
  export declare function asyncWithFallback<T>(options: AsyncWithFallbackOptions<T>): Promise<T>;
9
+ export declare function getConfiguredTimeout(): number;
10
+ export declare function resetTimeoutCache(): void;
11
+ export declare class TimeoutError extends Error {
12
+ readonly operationName: string;
13
+ readonly timeoutMs: number;
14
+ constructor(message: string, operationName?: string, timeoutMs?: number);
15
+ }
16
+ export interface WithTimeoutOptions {
17
+ timeoutMs?: number;
18
+ operationName?: string;
19
+ }
20
+ export declare function withTimeout<T>(promise: Promise<T>, options?: WithTimeoutOptions): Promise<T>;
@@ -1,6 +1,10 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.TimeoutError = void 0;
3
4
  exports.asyncWithFallback = asyncWithFallback;
5
+ exports.getConfiguredTimeout = getConfiguredTimeout;
6
+ exports.resetTimeoutCache = resetTimeoutCache;
7
+ exports.withTimeout = withTimeout;
4
8
  async function asyncWithFallback(options) {
5
9
  const { fn, fallback, errorMessage, logger } = options;
6
10
  try {
@@ -15,4 +19,50 @@ async function asyncWithFallback(options) {
15
19
  return fallback;
16
20
  }
17
21
  }
22
+ const DEFAULT_FILE_OPERATION_TIMEOUT_MS = 5000;
23
+ const MAX_TIMEOUT_MS = 300000;
24
+ let cachedTimeout = null;
25
+ function getConfiguredTimeout() {
26
+ if (cachedTimeout !== null) {
27
+ return cachedTimeout;
28
+ }
29
+ const envTimeout = process.env.CODINGBUDDY_FILE_TIMEOUT_MS;
30
+ if (envTimeout) {
31
+ const parsed = parseInt(envTimeout, 10);
32
+ if (!isNaN(parsed) && parsed > 0 && parsed <= MAX_TIMEOUT_MS) {
33
+ cachedTimeout = parsed;
34
+ return cachedTimeout;
35
+ }
36
+ }
37
+ cachedTimeout = DEFAULT_FILE_OPERATION_TIMEOUT_MS;
38
+ return cachedTimeout;
39
+ }
40
+ function resetTimeoutCache() {
41
+ cachedTimeout = null;
42
+ }
43
+ class TimeoutError extends Error {
44
+ constructor(message, operationName, timeoutMs) {
45
+ super(message);
46
+ this.name = 'TimeoutError';
47
+ this.operationName = operationName || 'unknown';
48
+ this.timeoutMs = timeoutMs || 0;
49
+ }
50
+ }
51
+ exports.TimeoutError = TimeoutError;
52
+ async function withTimeout(promise, options = {}) {
53
+ const configuredTimeout = getConfiguredTimeout();
54
+ const { timeoutMs = configuredTimeout, operationName = 'operation' } = options;
55
+ let timeoutId;
56
+ const timeoutPromise = new Promise((_, reject) => {
57
+ timeoutId = setTimeout(() => {
58
+ reject(new TimeoutError(`${operationName} timed out after ${timeoutMs}ms`, operationName, timeoutMs));
59
+ }, timeoutMs);
60
+ });
61
+ try {
62
+ return await Promise.race([promise, timeoutPromise]);
63
+ }
64
+ finally {
65
+ clearTimeout(timeoutId);
66
+ }
67
+ }
18
68
  //# sourceMappingURL=async.utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"async.utils.js","sourceRoot":"","sources":["../../../src/shared/async.utils.ts"],"names":[],"mappings":";;AA8CA,8CAiBC;AAjBM,KAAK,UAAU,iBAAiB,CACrC,OAAoC;IAEpC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEvD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAC3E,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAE5D,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"async.utils.js","sourceRoot":"","sources":["../../../src/shared/async.utils.ts"],"names":[],"mappings":";;;AA8CA,8CAiBC;AAkBD,oDAgBC;AAOD,8CAEC;AAiDD,kCA2BC;AAxIM,KAAK,UAAU,iBAAiB,CACrC,OAAoC;IAEpC,MAAM,EAAE,EAAE,EAAE,QAAQ,EAAE,YAAY,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC;IAEvD,IAAI,CAAC;QACH,OAAO,MAAM,EAAE,EAAE,CAAC;IACpB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,SAAS,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;QAC3E,MAAM,OAAO,GAAG,YAAY,CAAC,OAAO,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QAE5D,IAAI,MAAM,EAAE,CAAC;YACX,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QACxB,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;AACH,CAAC;AAGD,MAAM,iCAAiC,GAAG,IAAI,CAAC;AAG/C,MAAM,cAAc,GAAG,MAAM,CAAC;AAG9B,IAAI,aAAa,GAAkB,IAAI,CAAC;AASxC,SAAgB,oBAAoB;IAClC,IAAI,aAAa,KAAK,IAAI,EAAE,CAAC;QAC3B,OAAO,aAAa,CAAC;IACvB,CAAC;IAED,MAAM,UAAU,GAAG,OAAO,CAAC,GAAG,CAAC,2BAA2B,CAAC;IAC3D,IAAI,UAAU,EAAE,CAAC;QACf,MAAM,MAAM,GAAG,QAAQ,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;QACxC,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC,IAAI,MAAM,GAAG,CAAC,IAAI,MAAM,IAAI,cAAc,EAAE,CAAC;YAC7D,aAAa,GAAG,MAAM,CAAC;YACvB,OAAO,aAAa,CAAC;QACvB,CAAC;IACH,CAAC;IAED,aAAa,GAAG,iCAAiC,CAAC;IAClD,OAAO,aAAa,CAAC;AACvB,CAAC;AAOD,SAAgB,iBAAiB;IAC/B,aAAa,GAAG,IAAI,CAAC;AACvB,CAAC;AAMD,MAAa,YAAa,SAAQ,KAAK;IAMrC,YAAY,OAAe,EAAE,aAAsB,EAAE,SAAkB;QACrE,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,cAAc,CAAC;QAC3B,IAAI,CAAC,aAAa,GAAG,aAAa,IAAI,SAAS,CAAC;QAChD,IAAI,CAAC,SAAS,GAAG,SAAS,IAAI,CAAC,CAAC;IAClC,CAAC;CACF;AAZD,oCAYC;AA+BM,KAAK,UAAU,WAAW,CAC/B,OAAmB,EACnB,UAA8B,EAAE;IAEhC,MAAM,iBAAiB,GAAG,oBAAoB,EAAE,CAAC;IACjD,MAAM,EAAE,SAAS,GAAG,iBAAiB,EAAE,aAAa,GAAG,WAAW,EAAE,GAClE,OAAO,CAAC;IAEV,IAAI,SAAwC,CAAC;IAE7C,MAAM,cAAc,GAAG,IAAI,OAAO,CAAQ,CAAC,CAAC,EAAE,MAAM,EAAE,EAAE;QACtD,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE;YAC1B,MAAM,CACJ,IAAI,YAAY,CACd,GAAG,aAAa,oBAAoB,SAAS,IAAI,EACjD,aAAa,EACb,SAAS,CACV,CACF,CAAC;QACJ,CAAC,EAAE,SAAS,CAAC,CAAC;IAChB,CAAC,CAAC,CAAC;IAEH,IAAI,CAAC;QACH,OAAO,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC,OAAO,EAAE,cAAc,CAAC,CAAC,CAAC;IACvD,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,SAAU,CAAC,CAAC;IAC3B,CAAC;AACH,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function generateSlug(text: string, maxLength?: number): string;
2
+ export declare function generateSessionTitle(text: string, maxLength?: number): string;
@@ -0,0 +1,20 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.generateSlug = generateSlug;
4
+ exports.generateSessionTitle = generateSessionTitle;
5
+ const DEFAULT_MAX_LENGTH = 50;
6
+ function generateSlug(text, maxLength = DEFAULT_MAX_LENGTH) {
7
+ const truncated = text.slice(0, maxLength).trim();
8
+ const slug = truncated
9
+ .toLowerCase()
10
+ .replace(/[^a-z0-9\p{Script=Han}\p{Script=Hangul}\p{Script=Hiragana}\p{Script=Katakana}\u30FC\s-]/gu, '')
11
+ .replace(/\s+/g, '-')
12
+ .replace(/^-+|-+$/g, '');
13
+ return slug || 'untitled';
14
+ }
15
+ function generateSessionTitle(text, maxLength = DEFAULT_MAX_LENGTH) {
16
+ const datePrefix = new Date().toISOString().slice(0, 10);
17
+ const slug = generateSlug(text, maxLength);
18
+ return `${datePrefix}-${slug}`;
19
+ }
20
+ //# sourceMappingURL=slug.utils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"slug.utils.js","sourceRoot":"","sources":["../../../src/shared/slug.utils.ts"],"names":[],"mappings":";;AAoCA,oCAqBC;AAeD,oDAOC;AArED,MAAM,kBAAkB,GAAG,EAAE,CAAC;AA0B9B,SAAgB,YAAY,CAC1B,IAAY,EACZ,YAAoB,kBAAkB;IAGtC,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,CAAC,CAAC,IAAI,EAAE,CAAC;IAGlD,MAAM,IAAI,GAAG,SAAS;SACnB,WAAW,EAAE;SAEb,OAAO,CACN,2FAA2F,EAC3F,EAAE,CACH;SAEA,OAAO,CAAC,MAAM,EAAE,GAAG,CAAC;SAEpB,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC,CAAC;IAE3B,OAAO,IAAI,IAAI,UAAU,CAAC;AAC5B,CAAC;AAeD,SAAgB,oBAAoB,CAClC,IAAY,EACZ,YAAoB,kBAAkB;IAEtC,MAAM,UAAU,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;IACzD,MAAM,IAAI,GAAG,YAAY,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAC3C,OAAO,GAAG,UAAU,IAAI,IAAI,EAAE,CAAC;AACjC,CAAC"}