@amalgm/shell 0.1.162 → 0.1.163

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 (89) hide show
  1. package/PURPOSE.md +98 -14
  2. package/README.md +16 -0
  3. package/dist/authorization/recovery-host.d.ts +1 -0
  4. package/dist/authorization/recovery-host.js +2 -3
  5. package/dist/authorization/recovery-host.js.map +1 -1
  6. package/dist/cli-arguments.d.ts +8 -0
  7. package/dist/cli-arguments.js +47 -0
  8. package/dist/cli-arguments.js.map +1 -0
  9. package/dist/cli.d.ts +6 -4
  10. package/dist/cli.js +85 -73
  11. package/dist/cli.js.map +1 -1
  12. package/dist/compose.js +4 -3
  13. package/dist/compose.js.map +1 -1
  14. package/dist/development/profile.d.ts +27 -0
  15. package/dist/development/profile.js +142 -0
  16. package/dist/development/profile.js.map +1 -0
  17. package/dist/files-register-host.d.ts +1 -0
  18. package/dist/files-register-host.js +1 -0
  19. package/dist/files-register-host.js.map +1 -1
  20. package/dist/installation/environment.d.ts +30 -0
  21. package/dist/installation/environment.js +28 -0
  22. package/dist/installation/environment.js.map +1 -0
  23. package/dist/installation/lease.d.ts +6 -0
  24. package/dist/installation/lease.js +28 -0
  25. package/dist/installation/lease.js.map +1 -0
  26. package/dist/installation/ownership.d.ts +30 -0
  27. package/dist/installation/ownership.js +156 -0
  28. package/dist/installation/ownership.js.map +1 -0
  29. package/dist/installation/selection.d.ts +8 -0
  30. package/dist/installation/selection.js +29 -0
  31. package/dist/installation/selection.js.map +1 -0
  32. package/dist/machine-host.d.ts +26 -5
  33. package/dist/machine-host.js +192 -69
  34. package/dist/machine-host.js.map +1 -1
  35. package/dist/main.js +56 -2
  36. package/dist/main.js.map +1 -1
  37. package/dist/platform-product-host.d.ts +9 -9
  38. package/dist/platform-product-host.js +17 -17
  39. package/dist/platform-product-host.js.map +1 -1
  40. package/dist/platform-tools.d.ts +4 -3
  41. package/dist/platform-tools.js +34 -37
  42. package/dist/platform-tools.js.map +1 -1
  43. package/dist/process-lifecycle.d.ts +8 -0
  44. package/dist/process-lifecycle.js +32 -0
  45. package/dist/process-lifecycle.js.map +1 -0
  46. package/dist/runtime-command-host.d.ts +7 -0
  47. package/dist/runtime-command-host.js +49 -13
  48. package/dist/runtime-command-host.js.map +1 -1
  49. package/dist/service/adapter.d.ts +36 -0
  50. package/dist/service/adapter.js +24 -0
  51. package/dist/service/adapter.js.map +1 -0
  52. package/dist/service/cli.d.ts +8 -0
  53. package/dist/service/cli.js +196 -0
  54. package/dist/service/cli.js.map +1 -0
  55. package/dist/service/control.d.ts +29 -0
  56. package/dist/service/control.js +68 -0
  57. package/dist/service/control.js.map +1 -0
  58. package/dist/service/index.d.ts +9 -0
  59. package/dist/service/index.js +10 -0
  60. package/dist/service/index.js.map +1 -0
  61. package/dist/service/keepalive.d.ts +11 -0
  62. package/dist/service/keepalive.js +180 -0
  63. package/dist/service/keepalive.js.map +1 -0
  64. package/dist/service/launchd.d.ts +9 -0
  65. package/dist/service/launchd.js +105 -0
  66. package/dist/service/launchd.js.map +1 -0
  67. package/dist/service/owner.d.ts +4 -0
  68. package/dist/service/owner.js +14 -0
  69. package/dist/service/owner.js.map +1 -0
  70. package/dist/service/portable.d.ts +10 -0
  71. package/dist/service/portable.js +32 -0
  72. package/dist/service/portable.js.map +1 -0
  73. package/dist/service/registration.d.ts +82 -0
  74. package/dist/service/registration.js +114 -0
  75. package/dist/service/registration.js.map +1 -0
  76. package/dist/service/systemd.d.ts +9 -0
  77. package/dist/service/systemd.js +94 -0
  78. package/dist/service/systemd.js.map +1 -0
  79. package/dist/service/windows-task.d.ts +16 -0
  80. package/dist/service/windows-task.js +82 -0
  81. package/dist/service/windows-task.js.map +1 -0
  82. package/dist/service/windows.d.ts +2 -0
  83. package/dist/service/windows.js +65 -0
  84. package/dist/service/windows.js.map +1 -0
  85. package/dist/user-ground-host.d.ts +3 -0
  86. package/dist/user-ground-host.js +13 -0
  87. package/dist/user-ground-host.js.map +1 -1
  88. package/npm-shrinkwrap.json +49 -83
  89. package/package.json +9 -9
@@ -1 +1 @@
1
- {"version":3,"file":"machine-host.js","sourceRoot":"","sources":["../src/machine-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"machine-host.js","sourceRoot":"","sources":["../src/machine-host.ts"],"names":[],"mappings":"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"}
package/dist/main.js CHANGED
@@ -1,4 +1,58 @@
1
1
  #!/usr/bin/env node
2
- import { runCli } from "./cli.js";
3
- process.exitCode = await runCli();
2
+ import { processShutdown } from './process-lifecycle.js';
3
+ // Arm lifetime capture before profile inspection or any asynchronous SDK load.
4
+ const shutdown = processShutdown();
5
+ try {
6
+ let profile;
7
+ const rawArgs = process.argv.slice(2);
8
+ const profileIndex = rawArgs.findIndex((argument) => argument === '--profile' || argument.startsWith('--profile='));
9
+ if (profileIndex >= 0) {
10
+ if (rawArgs[0] !== 'dev')
11
+ throw new Error('A local source profile can only run through amalgm dev.');
12
+ const value = rawArgs[profileIndex].includes('=') ? rawArgs[profileIndex].slice('--profile='.length) : rawArgs[profileIndex + 1];
13
+ if (!value || value.startsWith('--'))
14
+ throw new Error('--profile requires a JSON file.');
15
+ const { readDevelopmentProfile, installLocalSourceResolver, developmentArguments, readDevelopmentEnvironment } = await import('./development/profile.js');
16
+ const { fileURLToPath } = await import('node:url');
17
+ profile = readDevelopmentProfile(value, fileURLToPath(new URL('../', import.meta.url)));
18
+ installLocalSourceResolver(profile);
19
+ const { localRuntimeEnvironment, validateRuntimeEndpointEnvironment } = await import('@amalgm/core/binding');
20
+ Object.assign(process.env, localRuntimeEnvironment({ runtimeLabel: 'local', branch: profile.branch,
21
+ localSession: profile.localSession }, process.env, readDevelopmentEnvironment(profile)));
22
+ validateRuntimeEndpointEnvironment(process.env);
23
+ const normalized = [...rawArgs];
24
+ if (normalized[profileIndex].includes('='))
25
+ normalized[profileIndex] = `--profile=${profile.file}`;
26
+ else
27
+ normalized[profileIndex + 1] = profile.file;
28
+ process.argv = [...process.argv.slice(0, 2), ...developmentArguments(normalized, profile)];
29
+ }
30
+ else if (rawArgs[0] === 'dev' && (['run', 'login', 'setup', 'start'].includes(rawArgs[1] || '')
31
+ || (rawArgs[1] === 'service' && ['start', 'install'].includes(rawArgs[2] || '')))) {
32
+ throw new Error('Use amalgm dev with --profile FILE to select local Core, Files and optional bricks.');
33
+ }
34
+ const { selectRuntimeInvocation } = await import('./installation/selection.js');
35
+ const invocation = selectRuntimeInvocation(process.argv.slice(2));
36
+ if (invocation.args[0] === 'service') {
37
+ const { runServiceCli } = await import('./service/cli.js');
38
+ process.exitCode = await runServiceCli(invocation.args.slice(1), invocation.runtimeLabel);
39
+ }
40
+ else if (['start', 'stop'].includes(invocation.args[0] || '')) {
41
+ const { runServiceCli } = await import('./service/cli.js');
42
+ process.exitCode = await runServiceCli(invocation.args, invocation.runtimeLabel);
43
+ }
44
+ else {
45
+ const { runCli } = await import('./cli.js');
46
+ process.exitCode = await runCli(process.argv, shutdown.signal, profile);
47
+ }
48
+ }
49
+ catch (error) {
50
+ process.stderr.write(`${error instanceof Error ? error.message : String(error)}\n`);
51
+ process.exitCode = 2;
52
+ }
53
+ finally {
54
+ shutdown.close();
55
+ if (process.connected)
56
+ process.disconnect();
57
+ }
4
58
  //# sourceMappingURL=main.js.map
package/dist/main.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":";AAEA,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAElC,OAAO,CAAC,QAAQ,GAAG,MAAM,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"main.js","sourceRoot":"","sources":["../src/main.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
- import { type AutomationProcessPort, type Json } from '@amalgm/automations';
2
- import { type Channels, type InboundMessageExecutor } from '@amalgm/channels';
1
+ import type { AutomationProcessPort, Json } from '@amalgm/automations';
2
+ import type { Channels, InboundMessageExecutor } from '@amalgm/channels';
3
3
  import type { AuthorizationAudience, AuthorizationScope } from '@amalgm/core/authorization';
4
4
  import type { Toolbox } from '@amalgm/tools';
5
5
  interface ProductAuthorizer {
@@ -15,8 +15,8 @@ interface ProductAuthorizer {
15
15
  }
16
16
  export interface PlatformProductHostOptions {
17
17
  readonly authorization: ProductAuthorizer;
18
- readonly automationsBaseUrl: string;
19
- readonly channelsBaseUrl: string;
18
+ readonly automationsBaseUrl?: string;
19
+ readonly channelsBaseUrl?: string;
20
20
  readonly fetch?: typeof globalThis.fetch;
21
21
  readonly toolbox?: Pick<Toolbox, 'call'>;
22
22
  readonly actions?: Readonly<Record<string, Action>>;
@@ -24,14 +24,14 @@ export interface PlatformProductHostOptions {
24
24
  readonly inboundExecutor?: InboundMessageExecutor;
25
25
  readonly log?: (event: string, details?: Readonly<Record<string, unknown>>) => void;
26
26
  }
27
- export declare function createPlatformProductHost(options: PlatformProductHostOptions): Readonly<{
28
- automations: import("@amalgm/automations").AutomationCrud;
29
- channels: Channels;
30
- inbox: import("@amalgm/channels").MachineInbox;
27
+ export declare function createPlatformProductHost(options: PlatformProductHostOptions): Promise<Readonly<{
28
+ automations: import("@amalgm/automations").AutomationCrud | null;
29
+ channels: Channels | null;
30
+ inbox: import("@amalgm/channels").MachineInbox | null;
31
31
  runner: Readonly<{
32
32
  start(): void;
33
33
  close(): Promise<void>;
34
34
  }>;
35
- }>;
35
+ }>>;
36
36
  type Action = (payload: Json, idempotencyKey: string, signal: AbortSignal) => Promise<Json>;
37
37
  export {};
@@ -1,45 +1,45 @@
1
- import { AutomationRunExecutor, createAutomationClient, createAutomationMachineRunner, createMachineRunsClient, } from '@amalgm/automations';
2
- import { createChannelMachineRunner, createChannelsClient, createMachineInboxClient, } from '@amalgm/channels';
3
- export function createPlatformProductHost(options) {
4
- const automations = createAutomationClient({
1
+ export async function createPlatformProductHost(options) {
2
+ const automationSdk = options.automationsBaseUrl ? await import('@amalgm/automations') : null;
3
+ const channelsSdk = options.channelsBaseUrl ? await import('@amalgm/channels') : null;
4
+ const automations = options.automationsBaseUrl ? automationSdk.createAutomationClient({
5
5
  baseUrl: options.automationsBaseUrl,
6
6
  headers: headersFor(options.authorization, 'amalgm-automations', automationScopes),
7
7
  ...(options.fetch ? { fetch: options.fetch } : {}),
8
- });
9
- const channels = createChannelsClient({
8
+ }) : null;
9
+ const channels = options.channelsBaseUrl ? channelsSdk.createChannelsClient({
10
10
  baseUrl: options.channelsBaseUrl,
11
11
  headers: headersFor(options.authorization, 'amalgm-channels', channelScopes),
12
12
  ...(options.fetch ? { fetch: options.fetch } : {}),
13
- });
14
- const runs = createMachineRunsClient({
13
+ }) : null;
14
+ const runs = options.automationsBaseUrl ? automationSdk.createMachineRunsClient({
15
15
  baseUrl: options.automationsBaseUrl,
16
16
  headers: headersFor(options.authorization, 'amalgm-automations', () => ['runs:execute']),
17
17
  ...(options.fetch ? { fetch: options.fetch } : {}),
18
- });
19
- const inbox = createMachineInboxClient({
18
+ }) : null;
19
+ const inbox = options.channelsBaseUrl ? channelsSdk.createMachineInboxClient({
20
20
  baseUrl: options.channelsBaseUrl,
21
21
  headers: headersFor(options.authorization, 'amalgm-channels', () => ['channels:receive']),
22
22
  ...(options.fetch ? { fetch: options.fetch } : {}),
23
- });
24
- const executor = new AutomationRunExecutor(runs, actionRegistry({ 'channels.notify_user': channelSend(channels), ...options.actions }, options.toolbox), options.processes ? { processes: options.processes } : {});
25
- const automationRunner = createAutomationMachineRunner({
23
+ }) : null;
24
+ const executor = runs ? new automationSdk.AutomationRunExecutor(runs, actionRegistry({ ...(channels ? { 'channels.notify_user': channelSend(channels) } : {}), ...options.actions }, options.toolbox), options.processes ? { processes: options.processes } : {}) : null;
25
+ const automationRunner = runs && executor ? automationSdk.createAutomationMachineRunner({
26
26
  runs,
27
27
  notifications: runs.notifications,
28
28
  execute: (run) => executor.execute(run),
29
29
  log: options.log,
30
- });
31
- const channelRunner = options.inboundExecutor ? createChannelMachineRunner({
30
+ }) : null;
31
+ const channelRunner = inbox && options.inboundExecutor ? channelsSdk.createChannelMachineRunner({
32
32
  inbox,
33
33
  executor: options.inboundExecutor,
34
34
  log: options.log,
35
35
  }) : null;
36
36
  const runner = Object.freeze({
37
37
  start() {
38
- automationRunner.start();
38
+ automationRunner?.start();
39
39
  channelRunner?.start();
40
40
  },
41
41
  async close() {
42
- await Promise.all([automationRunner.close(), channelRunner?.close()]);
42
+ await Promise.all([automationRunner?.close(), channelRunner?.close()]);
43
43
  },
44
44
  });
45
45
  return Object.freeze({ automations, channels, inbox, runner });
@@ -1 +1 @@
1
- {"version":3,"file":"platform-product-host.js","sourceRoot":"","sources":["../src/platform-product-host.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"platform-product-host.js","sourceRoot":"","sources":["../src/platform-product-host.ts"],"names":[],"mappings":"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"}
@@ -7,9 +7,10 @@ interface ToolServerLike {
7
7
  }[];
8
8
  }
9
9
  export interface PlatformToolDefinitionOptions {
10
- readonly agents: ToolServerLike;
11
- readonly apps: ToolServerLike;
12
- readonly browser: ToolServerLike;
10
+ readonly agents?: ToolServerLike;
11
+ readonly apps?: ToolServerLike;
12
+ readonly browser?: ToolServerLike;
13
+ readonly chat?: boolean;
13
14
  readonly products?: Readonly<{
14
15
  automations: boolean;
15
16
  channels: boolean;
@@ -1,6 +1,3 @@
1
- import { createAutomationMcpServer } from '@amalgm/automations/mcp';
2
- import { createChannelsMcpServer } from '@amalgm/channels/mcp';
3
- import { chatMcpToolDescriptors } from '@amalgm/chat/mcp';
4
1
  import { defineHostMcpTool, managementToolDescriptors, } from '@amalgm/tools';
5
2
  import { Client } from '@modelcontextprotocol/sdk/client/index.js';
6
3
  import { InMemoryTransport } from '@modelcontextprotocol/sdk/inMemory.js';
@@ -47,54 +44,54 @@ async function officialDescriptors(server) {
47
44
  export async function platformToolDefinitions(options) {
48
45
  const products = options.products ?? { automations: true, channels: true };
49
46
  return Object.freeze([
50
- platformTool({
51
- id: 'browser',
52
- name: 'Browser',
53
- description: 'Browse and operate the web in visible Electron or isolated headless Chromium sessions.',
54
- repository: 'amalgm-browser',
55
- route: '/mcp/browser',
56
- tools: descriptors(options.browser),
57
- }),
47
+ ...(options.browser ? [platformTool({
48
+ id: 'browser',
49
+ name: 'Browser',
50
+ description: 'Browse and operate the web in visible Electron or isolated headless Chromium sessions.',
51
+ repository: 'amalgm-browser',
52
+ route: '/mcp/browser',
53
+ tools: descriptors(options.browser),
54
+ })] : []),
58
55
  ...(products.automations ? [platformTool({
59
56
  id: 'automations',
60
57
  name: 'Automations',
61
58
  description: 'Create, inspect, change, and review durable Amalgm automations.',
62
59
  repository: 'amalgm-automations',
63
60
  route: '/mcp/automations',
64
- tools: await officialDescriptors(createAutomationMcpServer({})),
61
+ tools: await officialDescriptors((await import("@amalgm/automations/mcp")).createAutomationMcpServer({})),
62
+ })] : []),
63
+ ...(options.agents ? [platformTool({
64
+ id: 'agents',
65
+ name: 'Agents',
66
+ description: 'Manage Amalgm agent identities, installations, and immutable revisions.',
67
+ repository: 'amalgm-agents',
68
+ route: '/mcp/agents',
69
+ tools: descriptors(options.agents),
65
70
  })] : []),
66
- platformTool({
67
- id: 'agents',
68
- name: 'Agents',
69
- description: 'Manage Amalgm agent identities, installations, and immutable revisions.',
70
- repository: 'amalgm-agents',
71
- route: '/mcp/agents',
72
- tools: descriptors(options.agents),
73
- }),
74
71
  ...(products.channels ? [platformTool({
75
72
  id: 'channels',
76
73
  name: 'Channels',
77
74
  description: 'Deliberately send one durable message to the current Amalgm user over a selected channel.',
78
75
  repository: 'amalgm-channels',
79
76
  route: '/mcp/channels',
80
- tools: await officialDescriptors(createChannelsMcpServer({})),
77
+ tools: await officialDescriptors((await import("@amalgm/channels/mcp")).createChannelsMcpServer({})),
78
+ })] : []),
79
+ ...(options.chat !== false ? [platformTool({
80
+ id: 'chat',
81
+ name: 'Chat',
82
+ description: 'Run installed agents in new durable conversations, inspect history, and message existing conversations.',
83
+ repository: 'amalgm-chat',
84
+ route: '/mcp/chat',
85
+ tools: (await import("@amalgm/chat/mcp")).chatMcpToolDescriptors(),
86
+ })] : []),
87
+ ...(options.apps ? [platformTool({
88
+ id: 'apps',
89
+ name: 'Apps',
90
+ description: 'Validate, deploy, inspect, start, and stop versioned Amalgm applications.',
91
+ repository: 'amalgm-apps',
92
+ route: '/mcp/apps',
93
+ tools: descriptors(options.apps),
81
94
  })] : []),
82
- platformTool({
83
- id: 'chat',
84
- name: 'Chat',
85
- description: 'Run installed agents in new durable conversations, inspect history, and message existing conversations.',
86
- repository: 'amalgm-chat',
87
- route: '/mcp/chat',
88
- tools: chatMcpToolDescriptors(),
89
- }),
90
- platformTool({
91
- id: 'apps',
92
- name: 'Apps',
93
- description: 'Validate, deploy, inspect, start, and stop versioned Amalgm applications.',
94
- repository: 'amalgm-apps',
95
- route: '/mcp/apps',
96
- tools: descriptors(options.apps),
97
- }),
98
95
  platformTool({
99
96
  id: 'tools',
100
97
  name: 'Tools',
@@ -1 +1 @@
1
- {"version":3,"file":"platform-tools.js","sourceRoot":"","sources":["../src/platform-tools.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,yBAAyB,CAAC;AACpE,OAAO,EAAE,uBAAuB,EAAE,MAAM,sBAAsB,CAAC;AAC/D,OAAO,EAAE,sBAAsB,EAAE,MAAM,kBAAkB,CAAC;AAC1D,OAAO,EACL,iBAAiB,EACjB,yBAAyB,GAG1B,MAAM,eAAe,CAAC;AACvB,OAAO,EAAE,MAAM,EAAE,MAAM,2CAA2C,CAAC;AACnE,OAAO,EAAE,iBAAiB,EAAE,MAAM,uCAAuC,CAAC;AAkB1E,SAAS,WAAW,CAAC,MAAsB;IACzC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACjC,IAAI,EAAE,IAAI,CAAC,IAAI;QACf,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QAC9D,WAAW,EAAE,CAAC,IAAI,CAAC,WAAW,IAAI;YAChC,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,EAAE,EAAE,oBAAoB,EAAE,KAAK;SAC5D,CAAyC;KAC3C,CAAC,CAAC,CAAC;AACN,CAAC;AAED,SAAS,YAAY,CAAC,KAOpB;IACA,OAAO,iBAAiB,CAAC;QACvB,EAAE,EAAE,KAAK,CAAC,EAAE;QACZ,IAAI,EAAE,KAAK,CAAC,IAAI;QAChB,WAAW,EAAE,KAAK,CAAC,WAAW;QAC9B,UAAU,EAAE,KAAK,CAAC,EAAE;QACpB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,KAAK,EAAE,KAAK,CAAC,KAAK;QAClB,QAAQ,EAAE,EAAE,UAAU,EAAE,KAAK,CAAC,UAAU,EAAE;KAC3C,CAAC,CAAC;AACL,CAAC;AAED,gFAAgF;AAChF,KAAK,UAAU,mBAAmB,CAAC,MAAiB;IAClD,MAAM,MAAM,GAAG,IAAI,MAAM,CAAC,EAAE,IAAI,EAAE,8BAA8B,EAAE,OAAO,EAAE,OAAO,EAAE,CAAC,CAAC;IACtF,MAAM,CAAC,eAAe,EAAE,eAAe,CAAC,GAAG,iBAAiB,CAAC,gBAAgB,EAAE,CAAC;IAChF,IAAI,CAAC;QACH,MAAM,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACtC,MAAM,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,CAAC;QACtC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,SAAS,EAAE,CAAC;QACxC,OAAO,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;YACjC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,GAAG,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;YAC9D,WAAW,EAAE,IAAI,CAAC,WAAmD;SACtE,CAAC,CAAC,CAAC;IACN,CAAC;YAAS,CAAC;QACT,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;QAC5C,MAAM,MAAM,CAAC,KAAK,EAAE,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC;IAC9C,CAAC;AACH,CAAC;AAED,sEAAsE;AACtE,MAAM,CAAC,KAAK,UAAU,uBAAuB,CAC3C,OAAsC;IAEtC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,IAAI,EAAE,WAAW,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC;IAC3E,OAAO,MAAM,CAAC,MAAM,CAAC;QACnB,YAAY,CAAC;YACX,EAAE,EAAE,SAAS;YACb,IAAI,EAAE,SAAS;YACf,WAAW,EAAE,wFAAwF;YACrG,UAAU,EAAE,gBAAgB;YAC5B,KAAK,EAAE,cAAc;YACrB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,OAAO,CAAC;SACpC,CAAC;QACF,GAAG,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;gBACvC,EAAE,EAAE,aAAa;gBACjB,IAAI,EAAE,aAAa;gBACnB,WAAW,EAAE,iEAAiE;gBAC9E,UAAU,EAAE,oBAAoB;gBAChC,KAAK,EAAE,kBAAkB;gBACzB,KAAK,EAAE,MAAM,mBAAmB,CAAC,yBAAyB,CAAC,EAAW,CAAC,CAAC;aACzE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACT,YAAY,CAAC;YACX,EAAE,EAAE,QAAQ;YACZ,IAAI,EAAE,QAAQ;YACd,WAAW,EAAE,yEAAyE;YACtF,UAAU,EAAE,eAAe;YAC3B,KAAK,EAAE,aAAa;YACpB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,MAAM,CAAC;SACnC,CAAC;QACF,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC;gBACpC,EAAE,EAAE,UAAU;gBACd,IAAI,EAAE,UAAU;gBAChB,WAAW,EAAE,2FAA2F;gBACxG,UAAU,EAAE,iBAAiB;gBAC7B,KAAK,EAAE,eAAe;gBACtB,KAAK,EAAE,MAAM,mBAAmB,CAAC,uBAAuB,CAAC,EAAW,CAAC,CAAC;aACvE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;QACT,YAAY,CAAC;YACX,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,yGAAyG;YACtH,UAAU,EAAE,aAAa;YACzB,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,sBAAsB,EAA6B;SAC3D,CAAC;QACF,YAAY,CAAC;YACX,EAAE,EAAE,MAAM;YACV,IAAI,EAAE,MAAM;YACZ,WAAW,EAAE,2EAA2E;YACxF,UAAU,EAAE,aAAa;YACzB,KAAK,EAAE,WAAW;YAClB,KAAK,EAAE,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC;SACjC,CAAC;QACF,YAAY,CAAC;YACX,EAAE,EAAE,OAAO;YACX,IAAI,EAAE,OAAO;YACb,WAAW,EAAE,kFAAkF;YAC/F,UAAU,EAAE,cAAc;YAC1B,KAAK,EAAE,qBAAqB;YAC5B,KAAK,EAAE,yBAAyB,EAAE;SACnC,CAAC;KACH,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"platform-tools.js","sourceRoot":"","sources":["../src/platform-tools.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,8 @@
1
+ /** The controller's IPC connection is a lifetime, never durable identity.
2
+ * Remember shutdown during initialization so an orphan cannot become a
3
+ * permanent runtime after its parent has exited. */
4
+ export declare function processShutdown(): {
5
+ signal: AbortSignal;
6
+ close(): void;
7
+ };
8
+ export declare function waitForShutdown(signal: AbortSignal): Promise<void>;
@@ -0,0 +1,32 @@
1
+ /** The controller's IPC connection is a lifetime, never durable identity.
2
+ * Remember shutdown during initialization so an orphan cannot become a
3
+ * permanent runtime after its parent has exited. */
4
+ export function processShutdown() {
5
+ const controller = new AbortController();
6
+ const stop = () => controller.abort();
7
+ const message = (value) => {
8
+ if (value && typeof value === 'object' && value.type === 'amalgm-shutdown')
9
+ stop();
10
+ };
11
+ process.once('SIGINT', stop);
12
+ process.once('SIGTERM', stop);
13
+ process.once('disconnect', stop);
14
+ process.on('message', message);
15
+ if (process.connected === false)
16
+ stop();
17
+ return {
18
+ signal: controller.signal,
19
+ close() {
20
+ process.off('SIGINT', stop);
21
+ process.off('SIGTERM', stop);
22
+ process.off('disconnect', stop);
23
+ process.off('message', message);
24
+ },
25
+ };
26
+ }
27
+ export function waitForShutdown(signal) {
28
+ if (signal.aborted)
29
+ return Promise.resolve();
30
+ return new Promise((resolve) => signal.addEventListener('abort', () => resolve(), { once: true }));
31
+ }
32
+ //# sourceMappingURL=process-lifecycle.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"process-lifecycle.js","sourceRoot":"","sources":["../src/process-lifecycle.ts"],"names":[],"mappings":"AAAA;;oDAEoD;AACpD,MAAM,UAAU,eAAe;IAC7B,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,GAAG,EAAE,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC;IACtC,MAAM,OAAO,GAAG,CAAC,KAAc,EAAE,EAAE;QACjC,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAK,KAA2B,CAAC,IAAI,KAAK,iBAAiB;YAAE,IAAI,EAAE,CAAC;IAC5G,CAAC,CAAC;IACF,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;IAC7B,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;IAC9B,OAAO,CAAC,IAAI,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;IACjC,OAAO,CAAC,EAAE,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;IAC/B,IAAI,OAAO,CAAC,SAAS,KAAK,KAAK;QAAE,IAAI,EAAE,CAAC;IACxC,OAAO;QACL,MAAM,EAAE,UAAU,CAAC,MAAM;QACzB,KAAK;YACH,OAAO,CAAC,GAAG,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;YAC1D,OAAO,CAAC,GAAG,CAAC,YAAY,EAAE,IAAI,CAAC,CAAC;YAAC,OAAO,CAAC,GAAG,CAAC,SAAS,EAAE,OAAO,CAAC,CAAC;QACnE,CAAC;KACF,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,MAAmB;IACjD,IAAI,MAAM,CAAC,OAAO;QAAE,OAAO,OAAO,CAAC,OAAO,EAAE,CAAC;IAC7C,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,MAAM,CAAC,gBAAgB,CAAC,OAAO,EAAE,GAAG,EAAE,CAAC,OAAO,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC;AACrG,CAAC"}
@@ -2,9 +2,12 @@ export interface RuntimeCommandAddress {
2
2
  readonly userRoot: string;
3
3
  readonly deviceId: string;
4
4
  readonly runtimeLabel: string;
5
+ readonly branch?: string;
6
+ readonly localSession?: string;
5
7
  readonly userScope: string;
6
8
  }
7
9
  export interface RuntimeCommandPublication extends RuntimeCommandAddress {
10
+ readonly instanceId: string;
8
11
  readonly port: number;
9
12
  readonly token: string;
10
13
  }
@@ -18,6 +21,10 @@ export interface RuntimeCommandConnection {
18
21
  readonly runtimeUrl: string;
19
22
  readonly runtimeToken: string;
20
23
  }
24
+ /** Pre-controller releases did not hold an OS lease. A live process named by
25
+ * their publication therefore prevents a new writer; a PID is never authority
26
+ * to stop it. After its intentional exit, normal setup adopts durable state. */
27
+ export declare function assertRuntimeCanStart(input: RuntimeCommandAddress): void;
21
28
  /** Publish the loopback address only after the watching runtime is ready. */
22
29
  export declare function publishRuntimeCommands(input: RuntimeCommandPublication): void;
23
30
  /** Remove only the discovery document owned by this exact runtime token. */