@waiaas/daemon 2.9.1-rc → 2.10.0-rc

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 (163) hide show
  1. package/dist/api/middleware/master-auth.d.ts +3 -0
  2. package/dist/api/middleware/master-auth.d.ts.map +1 -1
  3. package/dist/api/middleware/master-auth.js +14 -0
  4. package/dist/api/middleware/master-auth.js.map +1 -1
  5. package/dist/api/routes/admin.d.ts +4 -0
  6. package/dist/api/routes/admin.d.ts.map +1 -1
  7. package/dist/api/routes/admin.js +186 -1
  8. package/dist/api/routes/admin.js.map +1 -1
  9. package/dist/api/routes/audit-logs.d.ts +15 -0
  10. package/dist/api/routes/audit-logs.d.ts.map +1 -0
  11. package/dist/api/routes/audit-logs.js +119 -0
  12. package/dist/api/routes/audit-logs.js.map +1 -0
  13. package/dist/api/routes/index.d.ts +2 -1
  14. package/dist/api/routes/index.d.ts.map +1 -1
  15. package/dist/api/routes/index.js +2 -1
  16. package/dist/api/routes/index.js.map +1 -1
  17. package/dist/api/routes/openapi-schemas.d.ts +324 -6
  18. package/dist/api/routes/openapi-schemas.d.ts.map +1 -1
  19. package/dist/api/routes/openapi-schemas.js +76 -0
  20. package/dist/api/routes/openapi-schemas.js.map +1 -1
  21. package/dist/api/routes/sessions.d.ts +2 -0
  22. package/dist/api/routes/sessions.d.ts.map +1 -1
  23. package/dist/api/routes/sessions.js +21 -0
  24. package/dist/api/routes/sessions.js.map +1 -1
  25. package/dist/api/routes/transactions.d.ts +2 -1
  26. package/dist/api/routes/transactions.d.ts.map +1 -1
  27. package/dist/api/routes/transactions.js +72 -1
  28. package/dist/api/routes/transactions.js.map +1 -1
  29. package/dist/api/routes/wallets.d.ts.map +1 -1
  30. package/dist/api/routes/wallets.js +25 -0
  31. package/dist/api/routes/wallets.js.map +1 -1
  32. package/dist/api/routes/webhooks.d.ts +17 -0
  33. package/dist/api/routes/webhooks.d.ts.map +1 -0
  34. package/dist/api/routes/webhooks.js +218 -0
  35. package/dist/api/routes/webhooks.js.map +1 -0
  36. package/dist/api/server.d.ts +27 -0
  37. package/dist/api/server.d.ts.map +1 -1
  38. package/dist/api/server.js +31 -5
  39. package/dist/api/server.js.map +1 -1
  40. package/dist/index.d.ts +3 -0
  41. package/dist/index.d.ts.map +1 -1
  42. package/dist/index.js +2 -0
  43. package/dist/index.js.map +1 -1
  44. package/dist/infrastructure/backup/backup-format.d.ts +107 -0
  45. package/dist/infrastructure/backup/backup-format.d.ts.map +1 -0
  46. package/dist/infrastructure/backup/backup-format.js +134 -0
  47. package/dist/infrastructure/backup/backup-format.js.map +1 -0
  48. package/dist/infrastructure/backup/encrypted-backup-service.d.ts +56 -0
  49. package/dist/infrastructure/backup/encrypted-backup-service.d.ts.map +1 -0
  50. package/dist/infrastructure/backup/encrypted-backup-service.js +269 -0
  51. package/dist/infrastructure/backup/encrypted-backup-service.js.map +1 -0
  52. package/dist/infrastructure/backup/index.d.ts +3 -0
  53. package/dist/infrastructure/backup/index.d.ts.map +1 -1
  54. package/dist/infrastructure/backup/index.js +2 -0
  55. package/dist/infrastructure/backup/index.js.map +1 -1
  56. package/dist/infrastructure/config/loader.d.ts +23 -0
  57. package/dist/infrastructure/config/loader.d.ts.map +1 -1
  58. package/dist/infrastructure/config/loader.js +8 -0
  59. package/dist/infrastructure/config/loader.js.map +1 -1
  60. package/dist/infrastructure/database/audit-helper.d.ts +29 -0
  61. package/dist/infrastructure/database/audit-helper.d.ts.map +1 -0
  62. package/dist/infrastructure/database/audit-helper.js +30 -0
  63. package/dist/infrastructure/database/audit-helper.js.map +1 -0
  64. package/dist/infrastructure/database/index.d.ts +2 -0
  65. package/dist/infrastructure/database/index.d.ts.map +1 -1
  66. package/dist/infrastructure/database/index.js +1 -0
  67. package/dist/infrastructure/database/index.js.map +1 -1
  68. package/dist/infrastructure/database/migrate.d.ts +1 -1
  69. package/dist/infrastructure/database/migrate.d.ts.map +1 -1
  70. package/dist/infrastructure/database/migrate.js +83 -2
  71. package/dist/infrastructure/database/migrate.js.map +1 -1
  72. package/dist/infrastructure/database/schema.d.ts +343 -1
  73. package/dist/infrastructure/database/schema.d.ts.map +1 -1
  74. package/dist/infrastructure/database/schema.js +41 -1
  75. package/dist/infrastructure/database/schema.js.map +1 -1
  76. package/dist/infrastructure/metrics/in-memory-counter.d.ts +34 -0
  77. package/dist/infrastructure/metrics/in-memory-counter.d.ts.map +1 -0
  78. package/dist/infrastructure/metrics/in-memory-counter.js +88 -0
  79. package/dist/infrastructure/metrics/in-memory-counter.js.map +1 -0
  80. package/dist/infrastructure/settings/hot-reload.d.ts +1 -0
  81. package/dist/infrastructure/settings/hot-reload.d.ts.map +1 -1
  82. package/dist/infrastructure/settings/hot-reload.js +23 -2
  83. package/dist/infrastructure/settings/hot-reload.js.map +1 -1
  84. package/dist/infrastructure/settings/setting-keys.d.ts.map +1 -1
  85. package/dist/infrastructure/settings/setting-keys.js +4 -0
  86. package/dist/infrastructure/settings/setting-keys.js.map +1 -1
  87. package/dist/infrastructure/telegram/telegram-bot-service.d.ts.map +1 -1
  88. package/dist/infrastructure/telegram/telegram-bot-service.js +32 -19
  89. package/dist/infrastructure/telegram/telegram-bot-service.js.map +1 -1
  90. package/dist/lifecycle/daemon.d.ts +8 -1
  91. package/dist/lifecycle/daemon.d.ts.map +1 -1
  92. package/dist/lifecycle/daemon.js +103 -1
  93. package/dist/lifecycle/daemon.js.map +1 -1
  94. package/dist/pipeline/dry-run.d.ts +68 -0
  95. package/dist/pipeline/dry-run.d.ts.map +1 -0
  96. package/dist/pipeline/dry-run.js +426 -0
  97. package/dist/pipeline/dry-run.js.map +1 -0
  98. package/dist/pipeline/index.d.ts +1 -0
  99. package/dist/pipeline/index.d.ts.map +1 -1
  100. package/dist/pipeline/index.js +2 -0
  101. package/dist/pipeline/index.js.map +1 -1
  102. package/dist/pipeline/pipeline.d.ts +18 -1
  103. package/dist/pipeline/pipeline.d.ts.map +1 -1
  104. package/dist/pipeline/pipeline.js +38 -0
  105. package/dist/pipeline/pipeline.js.map +1 -1
  106. package/dist/pipeline/stages.d.ts +31 -1
  107. package/dist/pipeline/stages.d.ts.map +1 -1
  108. package/dist/pipeline/stages.js +120 -22
  109. package/dist/pipeline/stages.js.map +1 -1
  110. package/dist/services/admin-stats-service.d.ts +48 -0
  111. package/dist/services/admin-stats-service.d.ts.map +1 -0
  112. package/dist/services/admin-stats-service.js +182 -0
  113. package/dist/services/admin-stats-service.js.map +1 -0
  114. package/dist/services/autostop/autostop-service.d.ts +83 -0
  115. package/dist/services/autostop/autostop-service.d.ts.map +1 -0
  116. package/dist/services/autostop/autostop-service.js +252 -0
  117. package/dist/services/autostop/autostop-service.js.map +1 -0
  118. package/dist/services/autostop/index.d.ts +15 -0
  119. package/dist/services/autostop/index.d.ts.map +1 -0
  120. package/dist/services/autostop/index.js +11 -0
  121. package/dist/services/autostop/index.js.map +1 -0
  122. package/dist/services/autostop/rule-registry.d.ts +42 -0
  123. package/dist/services/autostop/rule-registry.d.ts.map +1 -0
  124. package/dist/services/autostop/rule-registry.js +54 -0
  125. package/dist/services/autostop/rule-registry.js.map +1 -0
  126. package/dist/services/autostop/rules/consecutive-failures.rule.d.ts +38 -0
  127. package/dist/services/autostop/rules/consecutive-failures.rule.d.ts.map +1 -0
  128. package/dist/services/autostop/rules/consecutive-failures.rule.js +75 -0
  129. package/dist/services/autostop/rules/consecutive-failures.rule.js.map +1 -0
  130. package/dist/services/autostop/rules/idle-timeout.rule.d.ts +43 -0
  131. package/dist/services/autostop/rules/idle-timeout.rule.d.ts.map +1 -0
  132. package/dist/services/autostop/rules/idle-timeout.rule.js +128 -0
  133. package/dist/services/autostop/rules/idle-timeout.rule.js.map +1 -0
  134. package/dist/services/autostop/rules/unusual-activity.rule.d.ts +33 -0
  135. package/dist/services/autostop/rules/unusual-activity.rule.d.ts.map +1 -0
  136. package/dist/services/autostop/rules/unusual-activity.rule.js +73 -0
  137. package/dist/services/autostop/rules/unusual-activity.rule.js.map +1 -0
  138. package/dist/services/autostop/types.d.ts +49 -0
  139. package/dist/services/autostop/types.d.ts.map +1 -0
  140. package/dist/services/autostop/types.js +10 -0
  141. package/dist/services/autostop/types.js.map +1 -0
  142. package/dist/services/autostop-rules.d.ts +11 -74
  143. package/dist/services/autostop-rules.d.ts.map +1 -1
  144. package/dist/services/autostop-rules.js +9 -169
  145. package/dist/services/autostop-rules.js.map +1 -1
  146. package/dist/services/autostop-service.d.ts +6 -77
  147. package/dist/services/autostop-service.d.ts.map +1 -1
  148. package/dist/services/autostop-service.js +5 -212
  149. package/dist/services/autostop-service.js.map +1 -1
  150. package/dist/services/kill-switch-service.d.ts.map +1 -1
  151. package/dist/services/kill-switch-service.js +36 -21
  152. package/dist/services/kill-switch-service.js.map +1 -1
  153. package/dist/services/webhook-delivery-queue.d.ts +53 -0
  154. package/dist/services/webhook-delivery-queue.d.ts.map +1 -0
  155. package/dist/services/webhook-delivery-queue.js +118 -0
  156. package/dist/services/webhook-delivery-queue.js.map +1 -0
  157. package/dist/services/webhook-service.d.ts +46 -0
  158. package/dist/services/webhook-service.d.ts.map +1 -0
  159. package/dist/services/webhook-service.js +160 -0
  160. package/dist/services/webhook-service.js.map +1 -0
  161. package/package.json +5 -5
  162. package/public/admin/assets/{index-CBU6NfOH.js → index-RagPnRU1.js} +2 -2
  163. package/public/admin/index.html +1 -1
@@ -24,6 +24,7 @@
24
24
  */
25
25
  import { createHash } from 'node:crypto';
26
26
  import { getMessages, SignResponseSchema, WAIaaSError } from '@waiaas/core';
27
+ import { insertAuditLog } from '../database/audit-helper.js';
27
28
  import { TelegramAuth } from './telegram-auth.js';
28
29
  import { buildConfirmKeyboard, buildWalletSelectKeyboard, buildApprovalKeyboard } from './telegram-keyboard.js';
29
30
  // ---------------------------------------------------------------------------
@@ -426,11 +427,14 @@ export class TelegramBotService {
426
427
  this.sqlite
427
428
  .prepare("UPDATE transactions SET status = 'EXECUTING' WHERE id = ? AND status = 'QUEUED'")
428
429
  .run(txId);
429
- // Audit log
430
- const now = Math.floor(Date.now() / 1000);
431
- this.sqlite
432
- .prepare('INSERT INTO audit_log (timestamp, event_type, actor, tx_id, details, severity) VALUES (?, ?, ?, ?, ?, ?)')
433
- .run(now, 'TX_APPROVED_VIA_TELEGRAM', `telegram:${chatId}`, txId, JSON.stringify({ chatId, action: 'approve' }), 'info');
430
+ // Audit log (best-effort via helper)
431
+ insertAuditLog(this.sqlite, {
432
+ eventType: 'TX_APPROVED_VIA_TELEGRAM',
433
+ actor: `telegram:${chatId}`,
434
+ txId,
435
+ details: { chatId, action: 'approve' },
436
+ severity: 'info',
437
+ });
434
438
  // Resume pipeline after successful approval (fix #246)
435
439
  this.onApproved?.(txId);
436
440
  await this.api.sendMessage(chatId, messages.telegram.bot_approve_success);
@@ -462,11 +466,14 @@ export class TelegramBotService {
462
466
  this.sqlite
463
467
  .prepare("UPDATE transactions SET status = 'CANCELLED', error = 'Rejected via Telegram' WHERE id = ? AND status = 'QUEUED'")
464
468
  .run(txId);
465
- // Audit log
466
- const now = Math.floor(Date.now() / 1000);
467
- this.sqlite
468
- .prepare('INSERT INTO audit_log (timestamp, event_type, actor, tx_id, details, severity) VALUES (?, ?, ?, ?, ?, ?)')
469
- .run(now, 'TX_REJECTED_VIA_TELEGRAM', `telegram:${chatId}`, txId, JSON.stringify({ chatId, action: 'reject' }), 'info');
469
+ // Audit log (best-effort via helper)
470
+ insertAuditLog(this.sqlite, {
471
+ eventType: 'TX_REJECTED_VIA_TELEGRAM',
472
+ actor: `telegram:${chatId}`,
473
+ txId,
474
+ details: { chatId, action: 'reject' },
475
+ severity: 'info',
476
+ });
470
477
  await this.api.sendMessage(chatId, messages.telegram.bot_reject_success);
471
478
  }
472
479
  // -----------------------------------------------------------------------
@@ -486,11 +493,14 @@ export class TelegramBotService {
486
493
  this.sqlite
487
494
  .prepare("UPDATE transactions SET status = 'CANCELLED', reserved_amount = NULL WHERE id = ? AND status = 'QUEUED'")
488
495
  .run(txId);
489
- // Audit log
490
- const now = Math.floor(Date.now() / 1000);
491
- this.sqlite
492
- .prepare('INSERT INTO audit_log (timestamp, event_type, actor, tx_id, details, severity) VALUES (?, ?, ?, ?, ?, ?)')
493
- .run(now, 'TX_CANCELLED_VIA_TELEGRAM', `telegram:${chatId}`, txId, JSON.stringify({ chatId, action: 'cancel' }), 'info');
496
+ // Audit log (best-effort via helper)
497
+ insertAuditLog(this.sqlite, {
498
+ eventType: 'TX_CANCELLED_VIA_TELEGRAM',
499
+ actor: `telegram:${chatId}`,
500
+ txId,
501
+ details: { chatId, action: 'cancel' },
502
+ severity: 'info',
503
+ });
494
504
  await this.api.sendMessage(chatId, messages.telegram.bot_cancel_success);
495
505
  }
496
506
  // -----------------------------------------------------------------------
@@ -581,10 +591,13 @@ export class TelegramBotService {
581
591
  .prepare(`INSERT INTO session_wallets (session_id, wallet_id, created_at)
582
592
  VALUES (?, ?, ?)`)
583
593
  .run(sessionId, walletId, nowSec);
584
- // Audit log
585
- this.sqlite
586
- .prepare('INSERT INTO audit_log (timestamp, event_type, actor, details, severity) VALUES (?, ?, ?, ?, ?)')
587
- .run(nowSec, 'SESSION_ISSUED_VIA_TELEGRAM', `telegram:${chatId}`, JSON.stringify({ chatId, walletId, sessionId }), 'info');
594
+ // Audit log (best-effort via helper)
595
+ insertAuditLog(this.sqlite, {
596
+ eventType: 'SESSION_ISSUED_VIA_TELEGRAM',
597
+ actor: `telegram:${chatId}`,
598
+ details: { chatId, walletId, sessionId },
599
+ severity: 'info',
600
+ });
588
601
  // Send token to user (monospace in MarkdownV2)
589
602
  const msg = msgs.telegram.bot_newsession_created.replace('{token}', token);
590
603
  await this.api.sendMessage(chatId, msg);
@@ -1 +1 @@
1
- {"version":3,"file":"telegram-bot-service.js","sourceRoot":"","sources":["../../../src/infrastructure/telegram/telegram-bot-service.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"telegram-bot-service.js","sourceRoot":"","sources":["../../../src/infrastructure/telegram/telegram-bot-service.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@
12
12
  * 4c-10. AsyncPollingService (fail-soft)
13
13
  * 4c-10.5. PositionTracker (fail-soft)
14
14
  * 4c-11. DeFiMonitorService (fail-soft)
15
+ * 4h. EncryptedBackupService (fail-soft)
16
+ * 4i. WebhookService (fail-soft)
15
17
  * 5. HTTP server start (5s, fail-fast)
16
18
  * 6. Background workers + PID (no timeout, fail-soft)
17
19
  *
@@ -20,7 +22,7 @@
20
22
  * 2-4. HTTP server close
21
23
  * 5. In-flight signing -- STUB (Phase 50-04)
22
24
  * 6. Pending queue persistence -- STUB (Phase 50-04)
23
- * 6a. Stop PositionTracker, DeFiMonitorService, TelegramBot, WcSessionService, AutoStop, BalanceMonitor, IncomingTxMonitor
25
+ * 6a. Stop PositionTracker, DeFiMonitorService, TelegramBot, WcSessionService, AutoStop, BalanceMonitor, IncomingTxMonitor, WebhookService
24
26
  * 6b. Remove all EventBus listeners
25
27
  * 7. workers.stopAll()
26
28
  * 8. WAL checkpoint(TRUNCATE)
@@ -79,6 +81,11 @@ export declare class DaemonLifecycle {
79
81
  private _asyncPollingService;
80
82
  private positionTracker;
81
83
  private defiMonitorService;
84
+ private _encryptedBackupService;
85
+ private webhookService;
86
+ private metricsCounter;
87
+ private adminStatsService;
88
+ private daemonStartTime;
82
89
  /** Whether shutdown has been initiated. */
83
90
  get isShuttingDown(): boolean;
84
91
  /** Current config (available after start). */
@@ -1 +1 @@
1
- {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lifecycle/daemon.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"daemon.d.ts","sourceRoot":"","sources":["../../src/lifecycle/daemon.ts"],"names":[],"mappings":"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"}
@@ -12,6 +12,8 @@
12
12
  * 4c-10. AsyncPollingService (fail-soft)
13
13
  * 4c-10.5. PositionTracker (fail-soft)
14
14
  * 4c-11. DeFiMonitorService (fail-soft)
15
+ * 4h. EncryptedBackupService (fail-soft)
16
+ * 4i. WebhookService (fail-soft)
15
17
  * 5. HTTP server start (5s, fail-fast)
16
18
  * 6. Background workers + PID (no timeout, fail-soft)
17
19
  *
@@ -20,7 +22,7 @@
20
22
  * 2-4. HTTP server close
21
23
  * 5. In-flight signing -- STUB (Phase 50-04)
22
24
  * 6. Pending queue persistence -- STUB (Phase 50-04)
23
- * 6a. Stop PositionTracker, DeFiMonitorService, TelegramBot, WcSessionService, AutoStop, BalanceMonitor, IncomingTxMonitor
25
+ * 6a. Stop PositionTracker, DeFiMonitorService, TelegramBot, WcSessionService, AutoStop, BalanceMonitor, IncomingTxMonitor, WebhookService
24
26
  * 6b. Remove all EventBus listeners
25
27
  * 7. workers.stopAll()
26
28
  * 8. WAL checkpoint(TRUNCATE)
@@ -30,10 +32,13 @@
30
32
  * @see docs/28-daemon-lifecycle-cli.md
31
33
  */
32
34
  import { writeFileSync, unlinkSync, existsSync, mkdirSync, readdirSync, readFileSync } from 'node:fs';
35
+ import { createRequire } from 'node:module';
33
36
  import { join, dirname } from 'node:path';
34
37
  import { WAIaaSError, getSingleNetwork, EventBus, RpcPool, BUILT_IN_RPC_DEFAULTS } from '@waiaas/core';
35
38
  import { KillSwitchService } from '../services/kill-switch-service.js';
36
39
  import { AutoStopService } from '../services/autostop-service.js';
40
+ import { InMemoryCounter } from '../infrastructure/metrics/in-memory-counter.js';
41
+ import { AdminStatsService } from '../services/admin-stats-service.js';
37
42
  import { resolveRpcUrl, resolveRpcUrlFromPool } from '../infrastructure/adapter-pool.js';
38
43
  import { createDatabase, pushSchema, checkSchemaCompatibility } from '../infrastructure/database/index.js';
39
44
  import { loadConfig } from '../infrastructure/config/index.js';
@@ -46,6 +51,7 @@ import { ApprovalWorkflow } from '../workflow/approval-workflow.js';
46
51
  import { DatabasePolicyEngine } from '../pipeline/database-policy-engine.js';
47
52
  import { JwtSecretManager } from '../infrastructure/jwt/index.js';
48
53
  import argon2 from 'argon2';
54
+ const esmRequire = createRequire(import.meta.url);
49
55
  let _lockfile = null;
50
56
  async function getLockfile() {
51
57
  if (_lockfile)
@@ -123,6 +129,11 @@ export class DaemonLifecycle {
123
129
  _asyncPollingService = null;
124
130
  positionTracker = null;
125
131
  defiMonitorService = null;
132
+ _encryptedBackupService = null;
133
+ webhookService = null;
134
+ metricsCounter = null;
135
+ adminStatsService = null;
136
+ daemonStartTime = Math.floor(Date.now() / 1000);
126
137
  /** Whether shutdown has been initiated. */
127
138
  get isShuttingDown() {
128
139
  return this._isShuttingDown;
@@ -513,6 +524,32 @@ export class DaemonLifecycle {
513
524
  this.autoStopService = null;
514
525
  }
515
526
  // ------------------------------------------------------------------
527
+ // Step 4c-3b: InMemoryCounter + AdminStatsService (fail-soft)
528
+ // ------------------------------------------------------------------
529
+ try {
530
+ if (this.sqlite) {
531
+ this.metricsCounter = new InMemoryCounter();
532
+ // v30.2: inject metricsCounter into AutoStopService (STAT-02)
533
+ if (this.autoStopService) {
534
+ this.autoStopService.setMetricsCounter(this.metricsCounter);
535
+ }
536
+ const { version: daemonVersion } = esmRequire('../../package.json');
537
+ this.adminStatsService = new AdminStatsService({
538
+ sqlite: this.sqlite,
539
+ metricsCounter: this.metricsCounter,
540
+ autoStopService: this.autoStopService ?? undefined,
541
+ startTime: this.daemonStartTime,
542
+ version: daemonVersion,
543
+ dataDir,
544
+ });
545
+ console.debug('Step 4c-3b: AdminStatsService created');
546
+ }
547
+ }
548
+ catch (err) {
549
+ console.warn('Step 4c-3b (fail-soft): AdminStatsService init warning:', err);
550
+ this.adminStatsService = null;
551
+ }
552
+ // ------------------------------------------------------------------
516
553
  // Step 4c-4: BalanceMonitorService initialization (fail-soft)
517
554
  // ------------------------------------------------------------------
518
555
  try {
@@ -1115,6 +1152,35 @@ export class DaemonLifecycle {
1115
1152
  console.debug('Step 4g: VersionCheckService created');
1116
1153
  }
1117
1154
  // ------------------------------------------------------------------
1155
+ // Step 4h: EncryptedBackupService (fail-soft)
1156
+ // ------------------------------------------------------------------
1157
+ try {
1158
+ if (this.sqlite) {
1159
+ const { isAbsolute } = await import('node:path');
1160
+ const { EncryptedBackupService } = await import('../infrastructure/backup/encrypted-backup-service.js');
1161
+ const backupDir = this._config.backup?.dir ?? 'backups';
1162
+ const backupsDir = isAbsolute(backupDir) ? backupDir : join(dataDir, backupDir);
1163
+ this._encryptedBackupService = new EncryptedBackupService(dataDir, backupsDir, this.sqlite);
1164
+ console.debug('Step 4h: EncryptedBackupService created');
1165
+ }
1166
+ }
1167
+ catch (err) {
1168
+ console.warn('Step 4h (fail-soft): EncryptedBackupService init warning:', err);
1169
+ }
1170
+ // ------------------------------------------------------------------
1171
+ // Step 4i: WebhookService (fail-soft)
1172
+ // ------------------------------------------------------------------
1173
+ try {
1174
+ if (this.sqlite && this.eventBus) {
1175
+ const { WebhookService } = await import('../services/webhook-service.js');
1176
+ this.webhookService = new WebhookService(this.sqlite, this.eventBus, () => this.masterPassword);
1177
+ console.debug('Step 4i: WebhookService created');
1178
+ }
1179
+ }
1180
+ catch (err) {
1181
+ console.warn('Step 4i (fail-soft): WebhookService init warning:', err);
1182
+ }
1183
+ // ------------------------------------------------------------------
1118
1184
  // Step 5: HTTP server start (5s, fail-fast)
1119
1185
  // ------------------------------------------------------------------
1120
1186
  await withTimeout((async () => {
@@ -1166,6 +1232,10 @@ export class DaemonLifecycle {
1166
1232
  wcSigningBridgeRef: this.wcSigningBridgeRef,
1167
1233
  approvalChannelRouter: this.approvalChannelRouter ?? undefined,
1168
1234
  versionCheckService: this._versionCheckService,
1235
+ encryptedBackupService: this._encryptedBackupService ?? undefined,
1236
+ adminStatsService: this.adminStatsService ?? undefined,
1237
+ autoStopService: this.autoStopService ?? undefined,
1238
+ metricsCounter: this.metricsCounter ?? undefined,
1169
1239
  });
1170
1240
  const hostname = this._config.daemon.hostname;
1171
1241
  const port = this._config.daemon.port;
@@ -1289,6 +1359,35 @@ export class DaemonLifecycle {
1289
1359
  else {
1290
1360
  console.debug('Step 6: Version check disabled');
1291
1361
  }
1362
+ // Register backup worker (auto-backup scheduler)
1363
+ if (this._encryptedBackupService && this._config.backup.interval > 0) {
1364
+ const backupInterval = this._config.backup.interval * 1000; // seconds -> ms
1365
+ const retentionCount = this._config.backup.retention_count;
1366
+ const backupService = this._encryptedBackupService;
1367
+ const masterPwd = this.masterPassword;
1368
+ this.workers.register('backup-worker', {
1369
+ interval: backupInterval,
1370
+ handler: async () => {
1371
+ if (this._isShuttingDown)
1372
+ return;
1373
+ try {
1374
+ const info = await backupService.createBackup(masterPwd);
1375
+ console.log(`Auto-backup created: ${info.filename} (${info.size} bytes)`);
1376
+ const pruned = backupService.pruneBackups(retentionCount);
1377
+ if (pruned > 0) {
1378
+ console.log(`Auto-backup: pruned ${pruned} old backup(s), keeping ${retentionCount}`);
1379
+ }
1380
+ }
1381
+ catch (err) {
1382
+ console.error('Auto-backup failed:', err);
1383
+ }
1384
+ },
1385
+ });
1386
+ console.debug(`Step 6: Backup worker registered (interval=${this._config.backup.interval}s, retention=${retentionCount})`);
1387
+ }
1388
+ else {
1389
+ console.debug('Step 6: Backup worker disabled (interval=0 or no backup service)');
1390
+ }
1292
1391
  this.workers.startAll();
1293
1392
  // Write PID file
1294
1393
  this.pidPath = join(dataDir, this._config.daemon.pid_file);
@@ -1391,6 +1490,9 @@ export class DaemonLifecycle {
1391
1490
  }
1392
1491
  // Clear AsyncPollingService reference (workers.stopAll() handles the timer)
1393
1492
  this._asyncPollingService = null;
1493
+ // WebhookService destroy (before removing EventBus listeners)
1494
+ this.webhookService?.destroy();
1495
+ this.webhookService = null;
1394
1496
  // Step 6b: Remove all EventBus listeners
1395
1497
  this.eventBus.removeAllListeners();
1396
1498
  // Step 7: Stop background workers