fluxmail 0.11.2 → 0.13.0

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 (60) hide show
  1. package/README.md +1 -1
  2. package/dist/accounts/registry.d.ts.map +1 -1
  3. package/dist/accounts/registry.js +4 -1
  4. package/dist/accounts/registry.js.map +1 -1
  5. package/dist/cli.d.ts.map +1 -1
  6. package/dist/cli.js +85 -16
  7. package/dist/cli.js.map +1 -1
  8. package/dist/cliInstances.d.ts.map +1 -1
  9. package/dist/cliInstances.js +24 -10
  10. package/dist/cliInstances.js.map +1 -1
  11. package/dist/cliMail.d.ts.map +1 -1
  12. package/dist/cliMail.js +1 -1
  13. package/dist/cliMail.js.map +1 -1
  14. package/dist/cliStartupDiagnostics.d.ts +12 -0
  15. package/dist/cliStartupDiagnostics.d.ts.map +1 -0
  16. package/dist/cliStartupDiagnostics.js +47 -0
  17. package/dist/cliStartupDiagnostics.js.map +1 -0
  18. package/dist/context.d.ts +1 -1
  19. package/dist/context.d.ts.map +1 -1
  20. package/dist/context.js +15 -16
  21. package/dist/context.js.map +1 -1
  22. package/dist/http/app.d.ts.map +1 -1
  23. package/dist/http/app.js +10 -6
  24. package/dist/http/app.js.map +1 -1
  25. package/dist/licensing/refresher.d.ts +1 -1
  26. package/dist/licensing/refresher.d.ts.map +1 -1
  27. package/dist/licensing/refresher.js +5 -2
  28. package/dist/licensing/refresher.js.map +1 -1
  29. package/dist/lifecycle.d.ts +28 -0
  30. package/dist/lifecycle.d.ts.map +1 -0
  31. package/dist/lifecycle.js +115 -0
  32. package/dist/lifecycle.js.map +1 -0
  33. package/dist/mcp/buildServer.d.ts.map +1 -1
  34. package/dist/mcp/buildServer.js +21 -5
  35. package/dist/mcp/buildServer.js.map +1 -1
  36. package/dist/scheduler/sendScheduler.d.ts +8 -15
  37. package/dist/scheduler/sendScheduler.d.ts.map +1 -1
  38. package/dist/scheduler/sendScheduler.js +96 -69
  39. package/dist/scheduler/sendScheduler.js.map +1 -1
  40. package/dist/service/deliveryCoordinator.d.ts +1 -1
  41. package/dist/service/deliveryCoordinator.d.ts.map +1 -1
  42. package/dist/service/deliveryCoordinator.js +3 -1
  43. package/dist/service/deliveryCoordinator.js.map +1 -1
  44. package/dist/service/emailService.d.ts +1 -1
  45. package/dist/service/emailService.d.ts.map +1 -1
  46. package/dist/service/emailService.js +4 -2
  47. package/dist/service/emailService.js.map +1 -1
  48. package/dist/storage/db.d.ts +19 -2
  49. package/dist/storage/db.d.ts.map +1 -1
  50. package/dist/storage/db.js +6 -1
  51. package/dist/storage/db.js.map +1 -1
  52. package/dist/storage/scheduledSends.d.ts +6 -1
  53. package/dist/storage/scheduledSends.d.ts.map +1 -1
  54. package/dist/storage/scheduledSends.js +36 -19
  55. package/dist/storage/scheduledSends.js.map +1 -1
  56. package/dist/telemetry.d.ts +1 -1
  57. package/dist/telemetry.d.ts.map +1 -1
  58. package/dist/telemetry.js +37 -5
  59. package/dist/telemetry.js.map +1 -1
  60. package/package.json +9 -9
package/README.md CHANGED
@@ -31,4 +31,4 @@ Fluxmail supports stdio for local MCP clients. Its HTTP server provides Streamab
31
31
 
32
32
  ## License
33
33
 
34
- Fluxmail is source available under the [Elastic License 2.0](https://github.com/churichard/fluxmail/blob/main/LICENSE.md). You may use, modify, create derivative works, and redistribute it subject to that license. The Personal plan supports three mailboxes and one member without a paid key. Official Pro, Business, and Enterprise entitlements require a valid Fluxmail license key.
34
+ Fluxmail is source available under the [Elastic License 2.0](https://github.com/fluxmailai/fluxmail/blob/main/LICENSE.md). You may use, modify, create derivative works, and redistribute it subject to that license. The Personal plan supports three mailboxes and one member without a paid key. Official Pro, Business, and Enterprise entitlements require a valid Fluxmail license key.
@@ -1 +1 @@
1
- {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/accounts/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.d.ts","sourceRoot":"","sources":["../../src/accounts/registry.ts"],"names":[],"mappings":"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"}
@@ -25,7 +25,10 @@ export class AccountRegistry {
25
25
  async close() {
26
26
  const providers = [...this.providers.values()].map(({ provider }) => provider);
27
27
  this.providers.clear();
28
- await Promise.all(providers.map((provider) => provider.close?.()));
28
+ const results = await Promise.allSettled(providers.map((provider) => provider.close?.()));
29
+ const failure = results.find((result) => result.status === 'rejected');
30
+ if (failure?.status === 'rejected')
31
+ throw failure.reason;
29
32
  }
30
33
  evictProvider(accountId) {
31
34
  const cached = this.providers.get(accountId)?.provider;
@@ -1 +1 @@
1
- {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/accounts/registry.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/accounts/registry.ts"],"names":[],"mappings":"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"}
package/dist/cli.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA0B1C,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAapE,OAAO,EAQL,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAQL,KAAK,SAAS,EAEf,MAAM,gBAAgB,CAAC;AA0BxB,OAAO,EAAmD,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AA4CrH,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAcD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,UAAQ,GAAG,gBAAgB,CAwB/G;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,GAC9C,gBAAgB,CAQlB;AAwKD,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,qBAAqB,CAAC,EAAE,wBAAwB,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACrD;AA6FD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;CACnD;AAUD,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAQjE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAExE;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAqwDzE;AAED,wBAAsB,MAAM,CAAC,IAAI,GAAE,SAAS,MAAM,EAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF"}
1
+ {"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAOA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AACpC,OAAO,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AA2B1C,OAAO,EAAe,KAAK,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAapE,OAAO,EAQL,KAAK,gBAAgB,EACtB,MAAM,kBAAkB,CAAC;AAC1B,OAAO,EAQL,KAAK,SAAS,EAEf,MAAM,gBAAgB,CAAC;AA2BxB,OAAO,EAAmD,KAAK,wBAAwB,EAAE,MAAM,qBAAqB,CAAC;AA4CrH,UAAU,iBAAiB;IACzB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,EAAE,MAAM,EAAE,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAC;CAClB;AAcD,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,iBAAiB,EAAE,gBAAgB,UAAQ,GAAG,gBAAgB,CAwB/G;AAED,wBAAgB,yBAAyB,CACvC,IAAI,EAAE,iBAAiB,EACvB,QAAQ,EAAE,IAAI,CAAC,UAAU,EAAE,mBAAmB,CAAC,GAC9C,gBAAgB,CAQlB;AAwKD,MAAM,WAAW,iBAAiB;IAChC,SAAS,CAAC,EAAE,SAAS,CAAC;IACtB,qBAAqB,CAAC,EAAE,wBAAwB,CAAC;IACjD,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;CACrD;AA2GD,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,UAAU,CAAC,OAAO,KAAK,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC,CAatF;AAED,UAAU,cAAc;IACtB,IAAI,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC;CACnD;AAUD,wBAAsB,2BAA2B,IAAI,OAAO,CAAC,IAAI,CAAC,CAQjE;AAED,wBAAgB,2BAA2B,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAExE;AAED,mFAAmF;AACnF,wBAAgB,gBAAgB,CAAC,OAAO,GAAE,iBAAsB,GAAG,OAAO,CAm0DzE;AAED,wBAAsB,MAAM,CAAC,IAAI,GAAE,SAAS,MAAM,EAAiB,GAAG,OAAO,CAAC,IAAI,CAAC,CAQlF"}
package/dist/cli.js CHANGED
@@ -10,6 +10,7 @@ import { serve } from '@hono/node-server';
10
10
  import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
11
11
  import { EmailError, isEmailError } from '@fluxmail/core';
12
12
  import { createContext } from './context.js';
13
+ import { RuntimeLifecycle } from './lifecycle.js';
13
14
  import { configTomlPath, createConfigurationService, deploymentToml, readLoggingSettings, resolveDataDir, resolveStoreLocation, writeDeploymentConfig, } from './config.js';
14
15
  import { migrateConfigurationFile, parseEnvContent, recognizedMigrationSettings } from './configMigration.js';
15
16
  import { createApp } from './http/app.js';
@@ -27,6 +28,7 @@ import { customPermissionPolicy, ADMIN_CAPABILITIES, FULL_PERMISSION_POLICY, isN
27
28
  import { captureOperation, getTelemetry, installTelemetryStreamEndHandler, isTelemetryEnabled, setTelemetryEnabled, shutdownTelemetry, telemetryDisabledInAnyEnvironment, } from './telemetry.js';
28
29
  import { apiErrorCode, apiRequestId, clearSessionToken, instanceClient, loadInstanceConfig, removeInstance, resolveInstance, resolveStdioInstance, saveLocalInstance, saveRemoteInstance, saveSessionToken, setRequestDeadlineMs, useInstance, } from './cliInstances.js';
29
30
  import { cliExitCode, parseOutputFormat, printOutput } from './cliOutput.js';
31
+ import { CliStartupError, cliStartupDiagnostics } from './cliStartupDiagnostics.js';
30
32
  import { authenticateBearer, isBootstrapComplete, normalizeAndValidatePassword, recoverAdminPassword, setupInitialAdmin, } from './auth.js';
31
33
  import { recordAdminAuditEvent } from './storage/adminAudit.js';
32
34
  import { canManageOwnedAccount } from './authorization.js';
@@ -263,8 +265,21 @@ function finishCliOperation(program, outcome, errorCode, error) {
263
265
  if (!active)
264
266
  return;
265
267
  activeCliOperations.delete(program);
268
+ const startupProperties = active.operation === 'stdio' && outcome === 'error'
269
+ ? {
270
+ startup_phase: active.properties?.startup_phase,
271
+ startup_data_dir_source: active.properties?.startup_data_dir_source,
272
+ startup_instance_selection: active.properties?.startup_instance_selection,
273
+ ...cliStartupDiagnostics(error),
274
+ }
275
+ : {};
266
276
  if (outcome === 'error') {
267
- const context = { productSurface: 'cli', operation: active.operation, skipConsole: true };
277
+ const context = {
278
+ productSurface: 'cli',
279
+ operation: active.operation,
280
+ skipConsole: true,
281
+ ...(active.operation === 'stdio' ? { details: startupProperties } : {}),
282
+ };
268
283
  if (error !== undefined)
269
284
  logFailure(active.logger, 'cli.operation_failed', error, context);
270
285
  else
@@ -276,7 +291,7 @@ function finishCliOperation(program, outcome, errorCode, error) {
276
291
  outcome,
277
292
  durationMs: performance.now() - active.startedAt,
278
293
  errorCode,
279
- ...(active.properties ? { properties: active.properties } : {}),
294
+ properties: { ...active.properties, ...startupProperties },
280
295
  });
281
296
  }
282
297
  /** End a failed command with the error's own telemetry code instead of a generic one. */
@@ -446,7 +461,7 @@ export function createCliProgram(options = {}) {
446
461
  const alreadyStructured = ['folders', 'labels', 'emails', 'threads', 'drafts', 'scheduled', 'attachments'].includes(group ?? '') ||
447
462
  command === 'accounts list' ||
448
463
  command === 'status';
449
- const interactive = ['setup', 'login', 'serve', 'stdio'].includes(command) ||
464
+ const interactive = ['setup', 'login', 'serve', 'stdio', 'scheduled run'].includes(command) ||
450
465
  group === 'auth' ||
451
466
  command === 'accounts add' ||
452
467
  command === 'accounts configure' ||
@@ -487,7 +502,9 @@ export function createCliProgram(options = {}) {
487
502
  process.exitCode !== 0;
488
503
  finishCliOperation(program, failed ? 'error' : 'success', failed ? 'command_failed' : undefined);
489
504
  try {
490
- if (actionCommand.name() !== 'serve' && actionCommand.name() !== 'stdio') {
505
+ if (actionCommand.name() !== 'serve' &&
506
+ actionCommand.name() !== 'stdio' &&
507
+ commandPath(actionCommand) !== 'scheduled run') {
491
508
  await Promise.all([options.telemetry ? Promise.resolve() : shutdownTelemetry(), shutdownLogging()]);
492
509
  }
493
510
  }
@@ -717,11 +734,22 @@ export function createCliProgram(options = {}) {
717
734
  .command('serve')
718
735
  .description('Run the HTTP server (MCP at /mcp and REST at /api/v1)')
719
736
  .action(async () => {
720
- installTelemetrySignalHandlers();
721
- const ctx = createContext();
722
- const app = createApp(ctx);
723
- ctx.scheduler.start();
724
- const server = serve({ fetch: app.fetch, port: ctx.config.port }, () => {
737
+ let lifecycle;
738
+ try {
739
+ const ctx = createContext();
740
+ lifecycle = new RuntimeLifecycle(ctx, shutdownTelemetryAndLogging);
741
+ const app = createApp(ctx);
742
+ const runtime = lifecycle;
743
+ const server = serve({
744
+ fetch: (request, env) => runtime.stopping
745
+ ? new Response('Server is shutting down.', { status: 503 })
746
+ : runtime.request(() => app.fetch(request, env)),
747
+ port: ctx.config.port,
748
+ });
749
+ lifecycle.attachServer(server);
750
+ await waitForServerListening(server);
751
+ if (lifecycle.stopping)
752
+ return;
725
753
  ctx.logger.info('server.started', 'Fluxmail HTTP server started', {
726
754
  details: { port: ctx.config.port },
727
755
  skipConsole: true,
@@ -750,8 +778,13 @@ export function createCliProgram(options = {}) {
750
778
  console.log(` Plan: ${planLine(getEntitlements(ctx.db))}`);
751
779
  warnLicense(ctx.db, console.log);
752
780
  ctx.licenseController.start();
753
- });
754
- await waitForServerListening(server);
781
+ ctx.scheduler.start();
782
+ }
783
+ catch (error) {
784
+ finishCliOperation(program, 'error', apiErrorCode(error), error);
785
+ await lifecycle?.close();
786
+ throw error;
787
+ }
755
788
  });
756
789
  program
757
790
  .command('stdio')
@@ -764,19 +797,23 @@ export function createCliProgram(options = {}) {
764
797
  let ctx;
765
798
  let server;
766
799
  try {
800
+ recordCliOperationProperties(program, {
801
+ startup_data_dir_source: process.env.FLUXMAIL_DATA_DIR ? 'environment' : 'default',
802
+ startup_instance_selection: selectedInstance() === undefined ? 'automatic' : 'explicit',
803
+ });
767
804
  startupPhase('permissions');
768
805
  const permissions = permissionPolicyFromOptions(opts);
769
806
  startupPhase('instance');
770
807
  const selected = resolveStdioInstance(selectedInstance());
771
808
  startupPhase('authentication');
772
809
  if (!selected.token)
773
- throw new EmailError('permission_denied', 'Log in to the local instance before starting stdio MCP. Run "fluxmail --instance local login".');
810
+ throw new CliStartupError('permission_denied', `Log in to the local instance before starting stdio MCP. Run "fluxmail --instance ${selected.name} login".`, 'session_missing');
774
811
  startupPhase('context');
775
812
  ctx = createContext();
776
813
  startupPhase('authentication');
777
814
  const principal = authenticateBearer(ctx.db, selected.token);
778
815
  if (!principal || principal.kind !== 'session')
779
- throw new EmailError('permission_denied', 'The local CLI session has expired. Run "fluxmail --instance local login".');
816
+ throw new CliStartupError('permission_denied', `The local CLI session has expired. Run "fluxmail --instance ${selected.name} login".`, 'session_invalid');
780
817
  startupPhase('account_scope');
781
818
  const accountIds = accountIdsFromRefs(ctx, opts.account);
782
819
  const scopedService = ctx.service.withPrincipal({ ...principal, accountIds });
@@ -791,7 +828,6 @@ export function createCliProgram(options = {}) {
791
828
  installTelemetrySignalHandlers();
792
829
  installStdioShutdownHandler(process.stdin);
793
830
  await server.connect(new StdioServerTransport());
794
- ctx.scheduler.start();
795
831
  ctx.telemetry.capture('mcp server started', {
796
832
  ...instanceUsageProperties(ctx.db),
797
833
  product_surface: 'mcp',
@@ -806,9 +842,11 @@ export function createCliProgram(options = {}) {
806
842
  ctx.licenseController.start();
807
843
  console.error('Fluxmail MCP server running on stdio');
808
844
  warnLicense(ctx.db);
809
- const pending = scopedService.listScheduled().filter((send) => send.status === 'pending').length;
845
+ const pending = permissions.capabilities.includes('mail.read')
846
+ ? scopedService.listScheduled().filter((send) => send.status === 'pending').length
847
+ : 0;
810
848
  if (pending > 0)
811
- console.error(`Scheduled sends pending: ${pending}`);
849
+ console.error(`Scheduled sends pending: ${pending}. Delivery requires "fluxmail serve" or "fluxmail scheduled run" using the same data directory.`);
812
850
  startupPhase('ready');
813
851
  }
814
852
  catch (error) {
@@ -1872,6 +1910,37 @@ export function createCliProgram(options = {}) {
1872
1910
  process.exitCode = cliExitCode(code);
1873
1911
  },
1874
1912
  });
1913
+ program.commands
1914
+ .find((command) => command.name() === 'scheduled')
1915
+ .command('run')
1916
+ .description('Run scheduled delivery for this local instance without HTTP or MCP')
1917
+ .action(async () => {
1918
+ let lifecycle;
1919
+ try {
1920
+ if (selectedAccount() !== undefined) {
1921
+ throw new EmailError('invalid_request', 'scheduled run processes the whole instance; omit --mail-account.');
1922
+ }
1923
+ const name = selectedInstance();
1924
+ if (name !== undefined) {
1925
+ const profile = loadInstanceConfig().instances[name];
1926
+ if (!profile)
1927
+ throw new EmailError('not_found', `No CLI instance named "${name}".`);
1928
+ if (profile.kind !== 'local') {
1929
+ throw new EmailError('invalid_request', 'scheduled run requires a local instance. Run it on the host that stores the schedules.');
1930
+ }
1931
+ }
1932
+ const ctx = createContext();
1933
+ lifecycle = new RuntimeLifecycle(ctx, shutdownTelemetryAndLogging);
1934
+ ctx.licenseController.start();
1935
+ ctx.scheduler.start();
1936
+ console.log('Fluxmail scheduled delivery running. Press Ctrl-C to stop.');
1937
+ }
1938
+ catch (error) {
1939
+ finishCliOperation(program, 'error', apiErrorCode(error), error);
1940
+ await lifecycle?.close();
1941
+ throw error;
1942
+ }
1943
+ });
1875
1944
  program
1876
1945
  .command('status')
1877
1946
  .description('Show mailbox and provider status for the selected instance')