dialog-survey 1.11.0 → 1.11.3

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.
Files changed (39) hide show
  1. package/README.md +17 -4
  2. package/README.zh-CN.md +15 -4
  3. package/VERSION +1 -0
  4. package/dist/src/api/health.d.ts.map +1 -1
  5. package/dist/src/api/health.js +25 -5
  6. package/dist/src/api/health.js.map +1 -1
  7. package/dist/src/integrations/llm/openai-compatible.d.ts +16 -0
  8. package/dist/src/integrations/llm/openai-compatible.d.ts.map +1 -1
  9. package/dist/src/integrations/llm/openai-compatible.js +35 -2
  10. package/dist/src/integrations/llm/openai-compatible.js.map +1 -1
  11. package/dist/src/repositories/interview-plan.repository.d.ts +1 -1
  12. package/dist/src/repositories/template.repository.d.ts +3 -3
  13. package/dist/src/server-entry.d.ts +2 -0
  14. package/dist/src/server-entry.d.ts.map +1 -0
  15. package/dist/src/server-entry.js +31 -0
  16. package/dist/src/server-entry.js.map +1 -0
  17. package/dist/src/server.d.ts.map +1 -1
  18. package/dist/src/server.js +28 -5
  19. package/dist/src/server.js.map +1 -1
  20. package/dist/src/services/interview-plan-base.service.d.ts +6 -6
  21. package/dist/src/services/template-dimension.service.d.ts +2 -2
  22. package/dist/src/utils/app-version.d.ts +13 -0
  23. package/dist/src/utils/app-version.d.ts.map +1 -0
  24. package/dist/src/utils/app-version.js +59 -0
  25. package/dist/src/utils/app-version.js.map +1 -0
  26. package/dist/tests/cli.test.js +382 -3
  27. package/dist/tests/cli.test.js.map +1 -1
  28. package/dist/tests/e2e/cli-install.e2e.test.js +81 -0
  29. package/dist/tests/e2e/cli-install.e2e.test.js.map +1 -1
  30. package/dist/tests/openai-compatible.test.js +24 -1
  31. package/dist/tests/openai-compatible.test.js.map +1 -1
  32. package/dist/tests/readme-deployment.test.d.ts +2 -0
  33. package/dist/tests/readme-deployment.test.d.ts.map +1 -0
  34. package/dist/tests/readme-deployment.test.js +94 -0
  35. package/dist/tests/readme-deployment.test.js.map +1 -0
  36. package/ecosystem.config.cjs +1 -1
  37. package/package.json +4 -2
  38. package/scripts/cli.mjs +674 -64
  39. package/scripts/deploy.sh +24 -11
package/README.md CHANGED
@@ -138,7 +138,7 @@ Key environment variables (see `.env.example` for the full list):
138
138
  | Variable | Description | Example |
139
139
  |----------|-------------|---------|
140
140
  | `DATABASE_URL` | PostgreSQL connection string | `postgresql://user:pass@localhost:5432/dialog_survey` |
141
- | `LLM_BASE_URL` | LLM endpoint (OpenAI-compatible) | `http://localhost:11434/v1` |
141
+ | `LLM_BASE_URL` | LLM endpoint (OpenAI-compatible) — MUST be the full chat completions URL | `http://localhost:11434/v1/chat/completions` |
142
142
  | `LLM_MODEL` | Model name | `qwen2.5` |
143
143
  | `DINGTALK_CLIENT_ID` | DingTalk Client ID | From DingTalk Open Platform |
144
144
  | `DINGTALK_CLIENT_SECRET` | DingTalk Client Secret | From DingTalk Open Platform |
@@ -146,7 +146,8 @@ Key environment variables (see `.env.example` for the full list):
146
146
  | `DISABLE_STARTUP_RESEND` | Skip the startup resend of unsent messages (`1`/`true`/`yes`) | `1` |
147
147
  | `ADMIN_API_KEY` | Admin panel API key | Your custom key |
148
148
 
149
- > Leave `LLM_API_KEY` empty to use a local LLM at `http://localhost:11434/v1`.
149
+ > Leave `LLM_API_KEY` empty to use a local LLM at `http://localhost:11434/v1/chat/completions`.
150
+ > `LLM_BASE_URL` must be the COMPLETE chat completions endpoint (…/v1/chat/completions), not a gateway base — a base URL makes `/health` and every LLM call return HTTP 404.
150
151
  > Without `DINGTALK_CLIENT_ID`/`DINGTALK_CLIENT_SECRET` the server boots read-only (no Stream connection, no outbound messages). Startup resend additionally requires `DINGTALK_AGENT_ID`.
151
152
 
152
153
  ---
@@ -230,14 +231,14 @@ curl -H "X-Admin-Key: <admin-api-key>" http://localhost:3001/admin
230
231
  **Linux / macOS** (PM2):
231
232
  ```bash
232
233
  npm run build
233
- pm2 start dist/src/server.js --name dialog-survey
234
+ pm2 start dist/src/server-entry.js --name dialog-survey
234
235
  pm2 save && pm2 startup
235
236
  ```
236
237
 
237
238
  **Windows** (direct node):
238
239
  ```bash
239
240
  npm run build
240
- node dist/src/server.js
241
+ node dist/src/server-entry.js
241
242
  ```
242
243
 
243
244
  **Docker**:
@@ -248,6 +249,18 @@ docker compose logs -f app
248
249
 
249
250
  Health check: `curl http://localhost:3001/health`
250
251
 
252
+ > **Security note**: `pm2 save` persists the full process environment to
253
+ > `~/.pm2/dump.pm2` (mode follows umask — usually 0644, world-readable). The
254
+ > installer and `npx dialog-survey start` scrub secrets from the PM2 child
255
+ > environment and refresh it with `--update-env` on every start (issue #193) —
256
+ > but a plain `pm2 restart dialog-survey` does **not** refresh the environment.
257
+ > If you have ever run `pm2 save` from a shell that had secrets exported,
258
+ > tighten the file now, restart with `pm2 restart dialog-survey --update-env`,
259
+ > and rotate those secrets:
260
+ > ```bash
261
+ > chmod 700 ~/.pm2 && chmod 600 ~/.pm2/dump.pm2
262
+ > ```
263
+
251
264
  ---
252
265
 
253
266
  ### Development Commands
package/README.zh-CN.md CHANGED
@@ -138,7 +138,7 @@ npx dialog-survey help # 查看所有命令
138
138
  | 变量 | 说明 | 示例 |
139
139
  |------|------|------|
140
140
  | `DATABASE_URL` | PostgreSQL 连接串 | `postgresql://user:pass@localhost:5432/dialog_survey` |
141
- | `LLM_BASE_URL` | LLM 服务地址(OpenAI 兼容) | `http://localhost:11434/v1` |
141
+ | `LLM_BASE_URL` | LLM 服务地址(OpenAI 兼容)—— 必须是完整的 chat completions 端点 | `http://localhost:11434/v1/chat/completions` |
142
142
  | `LLM_MODEL` | 模型名称 | `qwen2.5` |
143
143
  | `DINGTALK_CLIENT_ID` | 钉钉 Client ID | 从钉钉开放平台获取 |
144
144
  | `DINGTALK_CLIENT_SECRET` | 钉钉 Client Secret | 从钉钉开放平台获取 |
@@ -146,7 +146,8 @@ npx dialog-survey help # 查看所有命令
146
146
  | `DISABLE_STARTUP_RESEND` | 跳过启动时未发消息补发(`1`/`true`/`yes`) | `1` |
147
147
  | `ADMIN_API_KEY` | 管理后台 API Key | 自定义密钥 |
148
148
 
149
- > 留空 `LLM_API_KEY` 则默认使用本地 LLM (`http://localhost:11434/v1`)。
149
+ > 留空 `LLM_API_KEY` 则默认使用本地 LLM(`http://localhost:11434/v1/chat/completions`)。
150
+ > `LLM_BASE_URL` 必须是**完整的** chat completions 端点(`…/v1/chat/completions`),而非网关基址——填基址会让 `/health` 和每次 LLM 调用返回 HTTP 404。
150
151
  > 未配置 `DINGTALK_CLIENT_ID`/`DINGTALK_CLIENT_SECRET` 时服务以只读模式启动(不建立 Stream 连接、不发送任何出站消息);启动补发还需 `DINGTALK_AGENT_ID`。
151
152
 
152
153
  ---
@@ -156,14 +157,14 @@ npx dialog-survey help # 查看所有命令
156
157
  **Linux / macOS** (PM2):
157
158
  ```bash
158
159
  npm run build
159
- pm2 start dist/src/server.js --name dialog-survey
160
+ pm2 start dist/src/server-entry.js --name dialog-survey
160
161
  pm2 save && pm2 startup
161
162
  ```
162
163
 
163
164
  **Windows**(直接 node 启动):
164
165
  ```bash
165
166
  npm run build
166
- node dist/src/server.js
167
+ node dist/src/server-entry.js
167
168
  ```
168
169
 
169
170
  **Docker**:
@@ -174,6 +175,16 @@ docker compose logs -f app
174
175
 
175
176
  健康检查:`curl http://localhost:3001/health`
176
177
 
178
+ > **安全提示**: `pm2 save` 会把进程的完整环境变量持久化到 `~/.pm2/dump.pm2`
179
+ > (权限跟随 umask,通常为 0644,全局可读)。安装器与 `npx dialog-survey start`
180
+ > 会在每次启动时剥离密钥并用 `--update-env` 刷新 PM2 子进程环境(#193)——
181
+ > 但裸的 `pm2 restart dialog-survey` **不会**刷新环境变量。如果你曾在导出着
182
+ > 密钥的 shell 里执行过 `pm2 save`,请立即收紧权限、用
183
+ > `pm2 restart dialog-survey --update-env` 重启,并轮换相关密钥:
184
+ > ```bash
185
+ > chmod 700 ~/.pm2 && chmod 600 ~/.pm2/dump.pm2
186
+ > ```
187
+
177
188
  ---
178
189
 
179
190
  ### 开发命令
package/VERSION ADDED
@@ -0,0 +1 @@
1
+ 1.11.3
@@ -1 +1 @@
1
- {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../../src/api/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAC/C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AA2G9F,wBAAsB,YAAY,CAChC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE;IAAE,cAAc,EAAE,wBAAwB,CAAA;CAAE,iBAqCnD"}
1
+ {"version":3,"file":"health.d.ts","sourceRoot":"","sources":["../../../src/api/health.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE/C,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,+CAA+C,CAAC;AAqI9F,wBAAsB,YAAY,CAChC,OAAO,EAAE,eAAe,EACxB,IAAI,EAAE;IAAE,cAAc,EAAE,wBAAwB,CAAA;CAAE,iBAsCnD"}
@@ -1,3 +1,5 @@
1
+ import { normalizeLlmBaseUrl } from '../integrations/llm/openai-compatible.js';
2
+ import { getAppVersion } from '../utils/app-version.js';
1
3
  import { error, info } from '../utils/logger.js';
2
4
  let llmCacheTime = null;
3
5
  async function checkLLM() {
@@ -9,12 +11,13 @@ async function checkLLM() {
9
11
  if (!apiKey) {
10
12
  return { status: 'degraded', error: 'API key not configured' };
11
13
  }
12
- const baseUrl = process.env['LLM_BASE_URL'] ||
14
+ const rawBaseUrl = process.env['LLM_BASE_URL'] ||
13
15
  process.env['VOLCENGINE_BASE_URL'] ||
14
- 'https://ark.cn-beijing.volces.com/api/coding';
16
+ 'https://ark.cn-beijing.volces.com/api/coding/v1/chat/completions';
17
+ const baseUrl = normalizeLlmBaseUrl(rawBaseUrl);
15
18
  const model = process.env['LLM_MODEL'] || process.env['VOLCENGINE_MODEL'];
16
19
  if (!model) {
17
- return { status: 'degraded', error: 'LLM model not configured' };
20
+ return { status: 'degraded', error: 'LLM model not configured', endpoint: baseUrl };
18
21
  }
19
22
  const start = Date.now();
20
23
  const response = await fetch(baseUrl, {
@@ -33,13 +36,29 @@ async function checkLLM() {
33
36
  const latencyMs = Date.now() - start;
34
37
  if (response.ok) {
35
38
  llmCacheTime = Date.now();
36
- return { status: 'ok', latencyMs };
39
+ return { status: 'ok', latencyMs, endpoint: baseUrl };
37
40
  }
38
- return {
41
+ // Surface the target URL and a short response-body snippet so operators can
42
+ // tell a misconfigured URL (e.g. a gateway base instead of the full
43
+ // endpoint) from an auth/quota failure at a glance (issue #189).
44
+ let detail;
45
+ try {
46
+ const snippet = await response.text();
47
+ if (snippet)
48
+ detail = snippet.slice(0, 200);
49
+ }
50
+ catch {
51
+ // ignore — detail is best-effort
52
+ }
53
+ const result = {
39
54
  status: 'degraded',
40
55
  latencyMs,
41
56
  error: `HTTP ${response.status}`,
57
+ endpoint: baseUrl,
42
58
  };
59
+ if (detail)
60
+ result.detail = detail;
61
+ return result;
43
62
  }
44
63
  catch (e) {
45
64
  const errMsg = e instanceof Error ? e.message : 'Unknown error';
@@ -92,6 +111,7 @@ export async function healthRoutes(fastify, opts) {
92
111
  }
93
112
  const response = {
94
113
  status,
114
+ version: getAppVersion(),
95
115
  timestamp: new Date().toISOString(),
96
116
  checks: {
97
117
  db: dbCheck,
@@ -1 +1 @@
1
- {"version":3,"file":"health.js","sourceRoot":"","sources":["../../../src/api/health.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"health.js","sourceRoot":"","sources":["../../../src/api/health.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,21 @@
1
1
  import type { LLMOptions, LLMRequest, LLMResponse, LLMService } from './base.js';
2
2
  export declare const DEFAULT_MODEL = "deepseek-v3.2";
3
+ /**
4
+ * Normalize an LLM base URL into a COMPLETE chat completions endpoint.
5
+ *
6
+ * Both the client (chat()) and the /health probe fetch() the URL directly as
7
+ * the request target, so it must be the full endpoint (…/v1/chat/completions),
8
+ * not a gateway base (…/v1). Historically README and the CLI suggested the base
9
+ * form, which produced a permanent HTTP 404 at /health and on every LLM call
10
+ * (issue #189).
11
+ *
12
+ * Rules:
13
+ * - empty input is returned unchanged (constructor falls back to the default)
14
+ * - surrounding whitespace is trimmed
15
+ * - a single trailing slash is stripped
16
+ * - if the path does not already end with /chat/completions, it is appended
17
+ */
18
+ export declare function normalizeLlmBaseUrl(raw: string | undefined): string;
3
19
  export declare class OpenAICompatibleLLM implements LLMService {
4
20
  private apiKey;
5
21
  private baseUrl;
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../../../src/integrations/llm/openai-compatible.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIjF,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAE7C,qBAAa,mBAAoB,YAAW,UAAU;IACpD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;gBAEV,OAAO,EAAE,UAAU;IAOzB,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAgF/C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKlD,MAAM,CAAC,OAAO,IAAI,mBAAmB;CAsBtC"}
1
+ {"version":3,"file":"openai-compatible.d.ts","sourceRoot":"","sources":["../../../../src/integrations/llm/openai-compatible.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAIjF,eAAO,MAAM,aAAa,kBAAkB,CAAC;AAI7C;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,mBAAmB,CAAC,GAAG,EAAE,MAAM,GAAG,SAAS,GAAG,MAAM,CAUnE;AAED,qBAAa,mBAAoB,YAAW,UAAU;IACpD,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,KAAK,CAAS;gBAEV,OAAO,EAAE,UAAU;IAQzB,IAAI,CAAC,OAAO,EAAE,UAAU,GAAG,OAAO,CAAC,WAAW,CAAC;IAgF/C,UAAU,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;IAKlD,MAAM,CAAC,OAAO,IAAI,mBAAmB;CA2BtC"}
@@ -3,6 +3,34 @@ import { RetryError } from '../../utils/retry.js';
3
3
  // 支持的模型列表:doubao-seed-2.0-code, doubao-seed-2.0-pro, doubao-seed-2.0-lite,
4
4
  // doubao-seed-code, minimax-m2.5, glm-4.7, deepseek-v3.2, kimi-k2.5
5
5
  export const DEFAULT_MODEL = 'deepseek-v3.2';
6
+ const CHAT_COMPLETIONS_SUFFIX = '/chat/completions';
7
+ /**
8
+ * Normalize an LLM base URL into a COMPLETE chat completions endpoint.
9
+ *
10
+ * Both the client (chat()) and the /health probe fetch() the URL directly as
11
+ * the request target, so it must be the full endpoint (…/v1/chat/completions),
12
+ * not a gateway base (…/v1). Historically README and the CLI suggested the base
13
+ * form, which produced a permanent HTTP 404 at /health and on every LLM call
14
+ * (issue #189).
15
+ *
16
+ * Rules:
17
+ * - empty input is returned unchanged (constructor falls back to the default)
18
+ * - surrounding whitespace is trimmed
19
+ * - a single trailing slash is stripped
20
+ * - if the path does not already end with /chat/completions, it is appended
21
+ */
22
+ export function normalizeLlmBaseUrl(raw) {
23
+ if (!raw)
24
+ return raw ?? '';
25
+ let url = raw.trim();
26
+ if (url.endsWith('/')) {
27
+ url = url.slice(0, -1);
28
+ }
29
+ if (!url.toLowerCase().endsWith(CHAT_COMPLETIONS_SUFFIX)) {
30
+ url = `${url}${CHAT_COMPLETIONS_SUFFIX}`;
31
+ }
32
+ return url;
33
+ }
6
34
  export class OpenAICompatibleLLM {
7
35
  apiKey;
8
36
  baseUrl;
@@ -10,7 +38,8 @@ export class OpenAICompatibleLLM {
10
38
  constructor(options) {
11
39
  this.apiKey = options.apiKey;
12
40
  this.baseUrl =
13
- options.baseUrl || 'https://ark.cn-beijing.volces.com/api/coding/v1/chat/completions';
41
+ normalizeLlmBaseUrl(options.baseUrl) ||
42
+ 'https://ark.cn-beijing.volces.com/api/coding/v1/chat/completions';
14
43
  this.model = options.model || DEFAULT_MODEL;
15
44
  }
16
45
  async chat(request) {
@@ -80,13 +109,17 @@ export class OpenAICompatibleLLM {
80
109
  process.env['VOLCENGINE_API_KEY'] ||
81
110
  process.env['ANTHROPIC_AUTH_TOKEN'] ||
82
111
  '';
83
- const baseUrl = process.env['LLM_BASE_URL'] ||
112
+ const rawBaseUrl = process.env['LLM_BASE_URL'] ||
84
113
  process.env['VOLCENGINE_BASE_URL'] ||
85
114
  'https://ark.cn-beijing.volces.com/api/coding/v1/chat/completions';
86
115
  const model = process.env['LLM_MODEL'] || process.env['VOLCENGINE_MODEL'] || DEFAULT_MODEL;
87
116
  if (!apiKey) {
88
117
  throw new Error('LLM_API_KEY or VOLCENGINE_API_KEY or ANTHROPIC_AUTH_TOKEN not configured');
89
118
  }
119
+ const baseUrl = normalizeLlmBaseUrl(rawBaseUrl);
120
+ if (baseUrl !== rawBaseUrl) {
121
+ info('LLM_BASE_URL normalized', { from: rawBaseUrl, to: baseUrl });
122
+ }
90
123
  return new OpenAICompatibleLLM({
91
124
  apiKey,
92
125
  baseUrl,
@@ -1 +1 @@
1
- {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../../src/integrations/llm/openai-compatible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,2EAA2E;AAC3E,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,OAAO,mBAAmB;IACtB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,KAAK,CAAS;IAEtB,YAAY,OAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO;YACV,OAAO,CAAC,OAAO,IAAI,kEAAkE,CAAC;QACxF,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAmB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE9E,IAAI,CAAC,aAAa,EAAE;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;YAClC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YACrC,SAAS;SACV,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAElE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;oBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,GAAG;oBACvC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;iBACvC,CAAC;gBACF,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACtC,KAAK,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBACnE,MAAM,IAAI,UAAU,CAClB,kBAAkB,QAAQ,CAAC,MAAM,MAAM,OAAO,EAAE,EAChD,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAClD,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CASlC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,MAAM,EAAE,aAAa,IAAI,MAAM,CAAC;YAErD,IAAI,CAAC,cAAc,EAAE;gBACnB,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,YAAY;gBACZ,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO;gBACP,YAAY;gBACZ,KAAK,EAAE;oBACL,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC;oBAC5C,gBAAgB,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,IAAI,CAAC;iBACrD;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACzD,KAAK,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,MAAM,IAAI,UAAU,CAAC,6BAA6B,SAAS,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;YACnC,EAAE,CAAC;QACL,MAAM,OAAO,GACX,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAClC,kEAAkE,CAAC;QACrE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,aAAa,CAAC;QAE3F,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAC9F,CAAC;QAED,OAAO,IAAI,mBAAmB,CAAC;YAC7B,MAAM;YACN,OAAO;YACP,KAAK;SACN,CAAC,CAAC;IACL,CAAC;CACF"}
1
+ {"version":3,"file":"openai-compatible.js","sourceRoot":"","sources":["../../../../src/integrations/llm/openai-compatible.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,IAAI,EAAE,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,2EAA2E;AAC3E,oEAAoE;AACpE,MAAM,CAAC,MAAM,aAAa,GAAG,eAAe,CAAC;AAE7C,MAAM,uBAAuB,GAAG,mBAAmB,CAAC;AAEpD;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,mBAAmB,CAAC,GAAuB;IACzD,IAAI,CAAC,GAAG;QAAE,OAAO,GAAG,IAAI,EAAE,CAAC;IAC3B,IAAI,GAAG,GAAG,GAAG,CAAC,IAAI,EAAE,CAAC;IACrB,IAAI,GAAG,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACtB,GAAG,GAAG,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;IACzB,CAAC;IACD,IAAI,CAAC,GAAG,CAAC,WAAW,EAAE,CAAC,QAAQ,CAAC,uBAAuB,CAAC,EAAE,CAAC;QACzD,GAAG,GAAG,GAAG,GAAG,GAAG,uBAAuB,EAAE,CAAC;IAC3C,CAAC;IACD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,OAAO,mBAAmB;IACtB,MAAM,CAAS;IACf,OAAO,CAAS;IAChB,KAAK,CAAS;IAEtB,YAAY,OAAmB;QAC7B,IAAI,CAAC,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;QAC7B,IAAI,CAAC,OAAO;YACV,mBAAmB,CAAC,OAAO,CAAC,OAAO,CAAC;gBACpC,kEAAkE,CAAC;QACrE,IAAI,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAAC;IAC9C,CAAC;IAED,KAAK,CAAC,IAAI,CAAC,OAAmB;QAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC;QACzB,MAAM,SAAS,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC,CAAC;QAE9E,IAAI,CAAC,aAAa,EAAE;YAClB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;YAClC,YAAY,EAAE,OAAO,CAAC,QAAQ,CAAC,MAAM;YACrC,SAAS;SACV,CAAC,CAAC;QAEH,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;QACzC,MAAM,SAAS,GAAG,UAAU,CAAC,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,EAAE,SAAS,CAAC,CAAC;QAElE,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE;gBAChC,MAAM,EAAE,MAAM;gBACd,OAAO,EAAE;oBACP,aAAa,EAAE,UAAU,IAAI,CAAC,MAAM,EAAE;oBACtC,cAAc,EAAE,kBAAkB;iBACnC;gBACD,IAAI,EAAE,IAAI,CAAC,SAAS,CAAC;oBACnB,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK;oBAClC,QAAQ,EAAE,OAAO,CAAC,QAAQ;oBAC1B,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,GAAG;oBACvC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,IAAI;iBACvC,CAAC;gBACF,MAAM,EAAE,UAAU,CAAC,MAAM;aAC1B,CAAC,CAAC;YAEH,YAAY,CAAC,SAAS,CAAC,CAAC;YAExB,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;gBACjB,MAAM,OAAO,GAAG,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAC;gBACtC,KAAK,CAAC,eAAe,EAAE,EAAE,MAAM,EAAE,QAAQ,CAAC,MAAM,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC,CAAC;gBACnE,MAAM,IAAI,UAAU,CAClB,kBAAkB,QAAQ,CAAC,MAAM,MAAM,OAAO,EAAE,EAChD,QAAQ,CAAC,MAAM,EACf,QAAQ,CAAC,MAAM,IAAI,GAAG,IAAI,QAAQ,CAAC,MAAM,KAAK,GAAG,CAClD,CAAC;YACJ,CAAC;YAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CASlC,CAAC;YAEF,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC,CAAC;YACjC,MAAM,OAAO,GAAG,MAAM,EAAE,OAAO,EAAE,OAAO,IAAI,EAAE,CAAC;YAC/C,MAAM,YAAY,GAAG,MAAM,EAAE,aAAa,IAAI,MAAM,CAAC;YAErD,IAAI,CAAC,cAAc,EAAE;gBACnB,aAAa,EAAE,OAAO,CAAC,MAAM;gBAC7B,YAAY;gBACZ,KAAK,EAAE,IAAI,CAAC,KAAK;aAClB,CAAC,CAAC;YAEH,OAAO;gBACL,OAAO;gBACP,YAAY;gBACZ,KAAK,EAAE;oBACL,YAAY,EAAE,IAAI,CAAC,KAAK,EAAE,aAAa,IAAI,CAAC;oBAC5C,gBAAgB,EAAE,IAAI,CAAC,KAAK,EAAE,iBAAiB,IAAI,CAAC;iBACrD;aACF,CAAC;QACJ,CAAC;QAAC,OAAO,CAAC,EAAE,CAAC;YACX,YAAY,CAAC,SAAS,CAAC,CAAC;YACxB,IAAI,CAAC,YAAY,YAAY,IAAI,CAAC,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;gBACzD,KAAK,CAAC,qBAAqB,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,CAAC,KAAK,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC,CAAC;gBAChF,MAAM,IAAI,UAAU,CAAC,6BAA6B,SAAS,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;YAC/E,CAAC;YACD,MAAM,CAAC,CAAC;QACV,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,KAAa;QAC5B,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACxC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;IACpD,CAAC;IAED,MAAM,CAAC,OAAO;QACZ,MAAM,MAAM,GACV,OAAO,CAAC,GAAG,CAAC,aAAa,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,oBAAoB,CAAC;YACjC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC;YACnC,EAAE,CAAC;QACL,MAAM,UAAU,GACd,OAAO,CAAC,GAAG,CAAC,cAAc,CAAC;YAC3B,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC;YAClC,kEAAkE,CAAC;QACrE,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,OAAO,CAAC,GAAG,CAAC,kBAAkB,CAAC,IAAI,aAAa,CAAC;QAE3F,IAAI,CAAC,MAAM,EAAE,CAAC;YACZ,MAAM,IAAI,KAAK,CAAC,0EAA0E,CAAC,CAAC;QAC9F,CAAC;QAED,MAAM,OAAO,GAAG,mBAAmB,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;YAC3B,IAAI,CAAC,yBAAyB,EAAE,EAAE,IAAI,EAAE,UAAU,EAAE,EAAE,EAAE,OAAO,EAAE,CAAC,CAAC;QACrE,CAAC;QAED,OAAO,IAAI,mBAAmB,CAAC;YAC7B,MAAM;YACN,OAAO;YACP,KAAK;SACN,CAAC,CAAC;IACL,CAAC;CACF"}
@@ -9,8 +9,8 @@ export declare class InterviewPlanRepository {
9
9
  /** Full row lookup — previously `prisma.interviewPlan.findUnique({ where: { id } })`. */
10
10
  findById(id: string): import("../generated/prisma/models.js").Prisma__InterviewPlanClient<{
11
11
  id: string;
12
- name: string;
13
12
  createdAt: Date;
13
+ name: string;
14
14
  description: string | null;
15
15
  templateId: string;
16
16
  targetDate: Date | null;
@@ -37,9 +37,9 @@ export declare class TemplateRepository {
37
37
  }>): Promise<Template>;
38
38
  findAllForAdminTree(): Promise<{
39
39
  id: string;
40
+ createdAt: Date;
40
41
  name: string;
41
42
  version: number;
42
- createdAt: Date;
43
43
  description: string | null;
44
44
  status: TemplateStatus;
45
45
  _count: {
@@ -48,8 +48,8 @@ export declare class TemplateRepository {
48
48
  };
49
49
  interviewPlans: {
50
50
  id: string;
51
- name: string;
52
51
  createdAt: Date;
52
+ name: string;
53
53
  description: string | null;
54
54
  status: import("../utils/prisma-client.js").PlanStatus;
55
55
  sentCount: number;
@@ -71,9 +71,9 @@ export declare class TemplateRepository {
71
71
  }>>;
72
72
  findByIdWithCounts(id: string): Promise<{
73
73
  id: string;
74
+ createdAt: Date;
74
75
  name: string;
75
76
  version: number;
76
- createdAt: Date;
77
77
  content: string;
78
78
  description: string | null;
79
79
  status: TemplateStatus;
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=server-entry.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-entry.d.ts","sourceRoot":"","sources":["../../src/server-entry.ts"],"names":[],"mappings":""}
@@ -0,0 +1,31 @@
1
+ import { startServer } from './server.js';
2
+ import { error as logError } from './utils/logger.js';
3
+ /**
4
+ * Canonical published entry point.
5
+ *
6
+ * This file exists so the process is launched reliably regardless of HOW it is
7
+ * started:
8
+ * - `node dist/src/server-entry.js` (direct)
9
+ * - PM2 fork mode (child_process.fork of
10
+ * ProcessContainerFork.js, where the argv-based self-start guard in
11
+ * src/server.ts cannot detect a direct launch)
12
+ * - container CMD, systemd, etc.
13
+ *
14
+ * Calling startServer() explicitly avoids two bugs that shipped in 1.11.0:
15
+ * - issue #186: ecosystem.config.cjs pointed at `dist/server.js`, a path that
16
+ * does not exist once tsc preserves the `src/` directory layout.
17
+ * - issue #187: under PM2 fork mode the argv === import.meta.url self-start
18
+ * guard is never true, so startServer() was never called and the process
19
+ * exited silently with code 0 in an infinite restart loop with an empty
20
+ * error log.
21
+ */
22
+ void startServer().catch((err) => {
23
+ // Surface startup failures to the error log (which PM2 captures) instead of
24
+ // exiting silently with code 0, which previously produced an undiagnosable
25
+ // restart loop (issue #187).
26
+ logError('Server failed to start', {
27
+ error: err instanceof Error ? err.stack || err.message : err,
28
+ });
29
+ process.exitCode = 1;
30
+ });
31
+ //# sourceMappingURL=server-entry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"server-entry.js","sourceRoot":"","sources":["../../src/server-entry.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC1C,OAAO,EAAE,KAAK,IAAI,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;;;;;;;;;;;;;GAkBG;AACH,KAAK,WAAW,EAAE,CAAC,KAAK,CAAC,CAAC,GAAY,EAAE,EAAE;IACxC,4EAA4E;IAC5E,2EAA2E;IAC3E,6BAA6B;IAC7B,QAAQ,CAAC,wBAAwB,EAAE;QACjC,KAAK,EAAE,GAAG,YAAY,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,IAAI,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG;KAC7D,CAAC,CAAC;IACH,OAAO,CAAC,QAAQ,GAAG,CAAC,CAAC;AACvB,CAAC,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAWA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAe7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAgChF,KAAK,eAAe,GAAG;IACrB,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,eAAe,CAAC;IAC7E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,YAAY,CAAC;CAC7C,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAE5E;AAED,wBAAsB,uBAAuB,CAC3C,aAAa,GAAE,MAAM,YAAiC,GACrD,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAwID,wBAAsB,QAAQ,CAAC,OAAO,GAAE,eAAoB;;;;;4BAqIhC,oBAAoB;;GAY/C;AAED,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAsFzD,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EAAE,GAAG,EACZ,SAAS,EACT,MAAM,GACP,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BtD;AASD,wBAAsB,WAAW,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,CAuBvE"}
1
+ {"version":3,"file":"server.d.ts","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"AAWA,OAAO,OAAO,MAAM,SAAS,CAAC;AAC9B,OAAO,KAAK,EAAE,eAAe,EAAE,oBAAoB,EAAE,MAAM,SAAS,CAAC;AAErE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,0BAA0B,CAAC;AAmB7D,OAAO,EAAE,oBAAoB,EAAE,MAAM,0CAA0C,CAAC;AAiChF,KAAK,eAAe,GAAG;IACrB,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,oBAAoB,KAAK,eAAe,CAAC;IAC7E,QAAQ,CAAC,aAAa,CAAC,EAAE,MAAM,YAAY,CAAC;CAC7C,CAAC;AAEF,wBAAgB,aAAa,CAAC,OAAO,EAAE,oBAAoB,GAAG,eAAe,CAE5E;AAED,wBAAsB,uBAAuB,CAC3C,aAAa,GAAE,MAAM,YAAiC,GACrD,OAAO,CAAC,OAAO,CAAC,CAwBlB;AAwID,wBAAsB,QAAQ,CAAC,OAAO,GAAE,eAAoB;;;;;4BAqIhC,oBAAoB;;GAY/C;AAED,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AAsFzD,wBAAsB,oBAAoB,CAAC,EACzC,OAAO,EAAE,GAAG,EACZ,SAAS,EACT,MAAM,GACP,EAAE,OAAO,CAAC,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CA+BtD;AASD,wBAAsB,WAAW,IAAI,OAAO,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,CAAC,CAwBvE"}
@@ -1,4 +1,4 @@
1
- import { dirname, normalize } from 'node:path';
1
+ import { basename, dirname, normalize } from 'node:path';
2
2
  import { fileURLToPath, pathToFileURL } from 'node:url';
3
3
  import cors from '@fastify/cors';
4
4
  import csrfProtection from '@fastify/csrf-protection';
@@ -12,9 +12,13 @@ import dotenv from 'dotenv';
12
12
  import Fastify from 'fastify';
13
13
  import nunjucks from 'nunjucks';
14
14
  import { createPrismaClient } from './utils/prisma-factory.js';
15
- // Load .env early but explicitly (not via side-effect import).
16
- // Use override only outside tests so vi.stubEnv() controls env in test runs.
17
- dotenv.config({ override: process.env['NODE_ENV'] !== 'test' });
15
+ // Load .env for DEFAULTS only. Process-injected environment variables
16
+ // (PM2 env_production/env_staging, container env, systemd EnvironmentFile, CI)
17
+ // MUST win over values in .env, so .env never overrides keys that already
18
+ // exist. The previous `override: true` silently discarded PM2-injected
19
+ // PORT/NODE_ENV and secrets, making the documented staging/second-instance
20
+ // deployment impossible (issue #192).
21
+ dotenv.config({ override: false });
18
22
  import cron from 'node-cron';
19
23
  import { adminTemplatesRoutes } from './api/admin-templates.js';
20
24
  import { analysisRoutes } from './api/analysis.js';
@@ -39,6 +43,7 @@ import { ExportService } from './services/export.service.js';
39
43
  import { InterviewPlanService } from './services/interview-plan.service.js';
40
44
  import { processStreamMessage } from './services/stream-message.service.js';
41
45
  import { TemplateDimensionService } from './services/template-dimension.service.js';
46
+ import { getAppVersion } from './utils/app-version.js';
42
47
  import { error, info, warn } from './utils/logger.js';
43
48
  import { renderMarkdown } from './utils/markdown.js';
44
49
  import { resolveAssetRoots } from './utils/path-resolver.js';
@@ -408,6 +413,7 @@ function buildListenOptions() {
408
413
  };
409
414
  }
410
415
  export async function startServer() {
416
+ info('dialog-survey starting', { version: getAppVersion() });
411
417
  const dbOk = await checkDatabaseConnection();
412
418
  if (!dbOk) {
413
419
  throw new Error('Database connection check failed');
@@ -431,8 +437,25 @@ export async function startServer() {
431
437
  throw startupError;
432
438
  }
433
439
  }
440
+ // Self-start guard (issues #187 / #194). startServer() runs when THIS module is
441
+ // the process entry point:
442
+ // 1. direct invocation (`node dist/src/server.js`, `tsx src/server.ts`) —
443
+ // argv[1] resolves to this file;
444
+ // 2. PM2 fork mode with this file as the script — argv[1] is PM2's
445
+ // ProcessContainerFork.js, so the URL check alone never fires and the
446
+ // process would exit 0 without ever listening: the "online but dead" trap
447
+ // of #187. PM2 exposes the forked script as `pm_exec_path`; the supported
448
+ // entry dist/src/server-entry.js starts unconditionally and is excluded
449
+ // here, so the supported path never double-starts.
434
450
  const normalizedArg = normalize(process.argv[1]);
435
- if (import.meta.url === pathToFileURL(normalizedArg).href) {
451
+ const pmScriptName = process.env['pm_exec_path'] ? basename(process.env['pm_exec_path']) : '';
452
+ const isProcessEntryPoint = import.meta.url === pathToFileURL(normalizedArg).href || pmScriptName === 'server.js';
453
+ if (isProcessEntryPoint) {
454
+ if (pmScriptName === 'server.js') {
455
+ // The safety net fired — surface it so operators notice they are on the
456
+ // legacy entry instead of the supported server-entry.js (review finding).
457
+ warn('Booted via the legacy dist/src/server.js entry (PM2 fork safety net). Prefer dist/src/server-entry.js — see issues #186/#187/#194.');
458
+ }
436
459
  startServer().catch(() => {
437
460
  process.exitCode = 1;
438
461
  });
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../../src/server.ts"],"names":[],"mappings":"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"}
@@ -28,9 +28,9 @@ export declare class InterviewPlanServiceBase {
28
28
  }[];
29
29
  template: {
30
30
  id: string;
31
+ createdAt: Date;
31
32
  name: string;
32
33
  version: number;
33
- createdAt: Date;
34
34
  content: string;
35
35
  description: string | null;
36
36
  status: import("../utils/prisma-client.js").TemplateStatus;
@@ -42,8 +42,8 @@ export declare class InterviewPlanServiceBase {
42
42
  };
43
43
  } & {
44
44
  id: string;
45
- name: string;
46
45
  createdAt: Date;
46
+ name: string;
47
47
  description: string | null;
48
48
  templateId: string;
49
49
  targetDate: Date | null;
@@ -72,8 +72,8 @@ export declare class InterviewPlanServiceBase {
72
72
  };
73
73
  } & {
74
74
  id: string;
75
- name: string;
76
75
  createdAt: Date;
76
+ name: string;
77
77
  description: string | null;
78
78
  templateId: string;
79
79
  targetDate: Date | null;
@@ -105,8 +105,8 @@ export declare class InterviewPlanServiceBase {
105
105
  };
106
106
  } & {
107
107
  id: string;
108
- name: string;
109
108
  createdAt: Date;
109
+ name: string;
110
110
  description: string | null;
111
111
  templateId: string;
112
112
  targetDate: Date | null;
@@ -143,8 +143,8 @@ export declare class InterviewPlanServiceBase {
143
143
  };
144
144
  } & {
145
145
  id: string;
146
- name: string;
147
146
  createdAt: Date;
147
+ name: string;
148
148
  description: string | null;
149
149
  templateId: string;
150
150
  targetDate: Date | null;
@@ -168,8 +168,8 @@ export declare class InterviewPlanServiceBase {
168
168
  };
169
169
  } & {
170
170
  id: string;
171
- name: string;
172
171
  createdAt: Date;
172
+ name: string;
173
173
  description: string | null;
174
174
  templateId: string;
175
175
  targetDate: Date | null;
@@ -6,9 +6,9 @@ export declare function updateTemplateDimensions(prisma: PrismaClient, templateI
6
6
  keywords?: string[];
7
7
  }[]): Promise<{
8
8
  id: string;
9
+ createdAt: Date;
9
10
  name: string;
10
11
  version: number;
11
- createdAt: Date;
12
12
  content: string;
13
13
  description: string | null;
14
14
  status: import("../utils/prisma-client.js").TemplateStatus;
@@ -32,9 +32,9 @@ export declare class TemplateDimensionService {
32
32
  keywords?: string[];
33
33
  }[]): Promise<{
34
34
  id: string;
35
+ createdAt: Date;
35
36
  name: string;
36
37
  version: number;
37
- createdAt: Date;
38
38
  content: string;
39
39
  description: string | null;
40
40
  status: import("../utils/prisma-client.js").TemplateStatus;