@legioncodeinc/hive 0.1.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 (190) hide show
  1. package/LICENSE +661 -0
  2. package/README.md +262 -0
  3. package/dist/cli-commands.d.ts +41 -0
  4. package/dist/cli-commands.js +76 -0
  5. package/dist/cli-commands.js.map +1 -0
  6. package/dist/cli.d.ts +2 -0
  7. package/dist/cli.js +46 -0
  8. package/dist/cli.js.map +1 -0
  9. package/dist/daemon/dashboard/app.js +118 -0
  10. package/dist/daemon/dashboard/host.d.ts +90 -0
  11. package/dist/daemon/dashboard/host.js +172 -0
  12. package/dist/daemon/dashboard/host.js.map +1 -0
  13. package/dist/daemon/dashboard/web-assets.d.ts +88 -0
  14. package/dist/daemon/dashboard/web-assets.js +195 -0
  15. package/dist/daemon/dashboard/web-assets.js.map +1 -0
  16. package/dist/daemon/fleet-status.d.ts +15 -0
  17. package/dist/daemon/fleet-status.js +56 -0
  18. package/dist/daemon/fleet-status.js.map +1 -0
  19. package/dist/daemon/gate.d.ts +55 -0
  20. package/dist/daemon/gate.js +128 -0
  21. package/dist/daemon/gate.js.map +1 -0
  22. package/dist/daemon/proxy.d.ts +38 -0
  23. package/dist/daemon/proxy.js +126 -0
  24. package/dist/daemon/proxy.js.map +1 -0
  25. package/dist/daemon/registry.d.ts +31 -0
  26. package/dist/daemon/registry.js +120 -0
  27. package/dist/daemon/registry.js.map +1 -0
  28. package/dist/daemon/server.d.ts +41 -0
  29. package/dist/daemon/server.js +126 -0
  30. package/dist/daemon/server.js.map +1 -0
  31. package/dist/daemon/setup-auth.d.ts +37 -0
  32. package/dist/daemon/setup-auth.js +51 -0
  33. package/dist/daemon/setup-auth.js.map +1 -0
  34. package/dist/daemon/telemetry-proxy.d.ts +47 -0
  35. package/dist/daemon/telemetry-proxy.js +63 -0
  36. package/dist/daemon/telemetry-proxy.js.map +1 -0
  37. package/dist/dashboard/contracts.d.ts +235 -0
  38. package/dist/dashboard/contracts.js +43 -0
  39. package/dist/dashboard/contracts.js.map +1 -0
  40. package/dist/dashboard/web/app.d.ts +44 -0
  41. package/dist/dashboard/web/app.js +179 -0
  42. package/dist/dashboard/web/app.js.map +1 -0
  43. package/dist/dashboard/web/boot-route.d.ts +23 -0
  44. package/dist/dashboard/web/boot-route.js +29 -0
  45. package/dist/dashboard/web/boot-route.js.map +1 -0
  46. package/dist/dashboard/web/build-graph-button.d.ts +46 -0
  47. package/dist/dashboard/web/build-graph-button.js +81 -0
  48. package/dist/dashboard/web/build-graph-button.js.map +1 -0
  49. package/dist/dashboard/web/buzzing-screen.d.ts +30 -0
  50. package/dist/dashboard/web/buzzing-screen.js +135 -0
  51. package/dist/dashboard/web/buzzing-screen.js.map +1 -0
  52. package/dist/dashboard/web/folder-picker.d.ts +54 -0
  53. package/dist/dashboard/web/folder-picker.js +125 -0
  54. package/dist/dashboard/web/folder-picker.js.map +1 -0
  55. package/dist/dashboard/web/graph-layout.d.ts +101 -0
  56. package/dist/dashboard/web/graph-layout.js +0 -0
  57. package/dist/dashboard/web/graph-layout.js.map +1 -0
  58. package/dist/dashboard/web/harness-strip.d.ts +38 -0
  59. package/dist/dashboard/web/harness-strip.js +65 -0
  60. package/dist/dashboard/web/harness-strip.js.map +1 -0
  61. package/dist/dashboard/web/health-rail.d.ts +26 -0
  62. package/dist/dashboard/web/health-rail.js +61 -0
  63. package/dist/dashboard/web/health-rail.js.map +1 -0
  64. package/dist/dashboard/web/main.d.ts +22 -0
  65. package/dist/dashboard/web/main.js +51 -0
  66. package/dist/dashboard/web/main.js.map +1 -0
  67. package/dist/dashboard/web/needs-project.d.ts +51 -0
  68. package/dist/dashboard/web/needs-project.js +69 -0
  69. package/dist/dashboard/web/needs-project.js.map +1 -0
  70. package/dist/dashboard/web/page-frame.d.ts +95 -0
  71. package/dist/dashboard/web/page-frame.js +98 -0
  72. package/dist/dashboard/web/page-frame.js.map +1 -0
  73. package/dist/dashboard/web/pages/coming-soon.d.ts +23 -0
  74. package/dist/dashboard/web/pages/coming-soon.js +19 -0
  75. package/dist/dashboard/web/pages/coming-soon.js.map +1 -0
  76. package/dist/dashboard/web/pages/dashboard.d.ts +32 -0
  77. package/dist/dashboard/web/pages/dashboard.js +205 -0
  78. package/dist/dashboard/web/pages/dashboard.js.map +1 -0
  79. package/dist/dashboard/web/pages/graph.d.ts +72 -0
  80. package/dist/dashboard/web/pages/graph.js +362 -0
  81. package/dist/dashboard/web/pages/graph.js.map +1 -0
  82. package/dist/dashboard/web/pages/harnesses.d.ts +65 -0
  83. package/dist/dashboard/web/pages/harnesses.js +210 -0
  84. package/dist/dashboard/web/pages/harnesses.js.map +1 -0
  85. package/dist/dashboard/web/pages/health.d.ts +22 -0
  86. package/dist/dashboard/web/pages/health.js +91 -0
  87. package/dist/dashboard/web/pages/health.js.map +1 -0
  88. package/dist/dashboard/web/pages/lifecycle-panel.d.ts +60 -0
  89. package/dist/dashboard/web/pages/lifecycle-panel.js +187 -0
  90. package/dist/dashboard/web/pages/lifecycle-panel.js.map +1 -0
  91. package/dist/dashboard/web/pages/logs.d.ts +55 -0
  92. package/dist/dashboard/web/pages/logs.js +311 -0
  93. package/dist/dashboard/web/pages/logs.js.map +1 -0
  94. package/dist/dashboard/web/pages/memories.d.ts +35 -0
  95. package/dist/dashboard/web/pages/memories.js +439 -0
  96. package/dist/dashboard/web/pages/memories.js.map +1 -0
  97. package/dist/dashboard/web/pages/projects.d.ts +38 -0
  98. package/dist/dashboard/web/pages/projects.js +325 -0
  99. package/dist/dashboard/web/pages/projects.js.map +1 -0
  100. package/dist/dashboard/web/pages/roi-chart.d.ts +52 -0
  101. package/dist/dashboard/web/pages/roi-chart.js +133 -0
  102. package/dist/dashboard/web/pages/roi-chart.js.map +1 -0
  103. package/dist/dashboard/web/pages/roi.d.ts +93 -0
  104. package/dist/dashboard/web/pages/roi.js +375 -0
  105. package/dist/dashboard/web/pages/roi.js.map +1 -0
  106. package/dist/dashboard/web/pages/settings.d.ts +103 -0
  107. package/dist/dashboard/web/pages/settings.js +420 -0
  108. package/dist/dashboard/web/pages/settings.js.map +1 -0
  109. package/dist/dashboard/web/pages/sync.d.ts +59 -0
  110. package/dist/dashboard/web/pages/sync.js +280 -0
  111. package/dist/dashboard/web/pages/sync.js.map +1 -0
  112. package/dist/dashboard/web/panels.d.ts +178 -0
  113. package/dist/dashboard/web/panels.js +471 -0
  114. package/dist/dashboard/web/panels.js.map +1 -0
  115. package/dist/dashboard/web/primitives.d.ts +80 -0
  116. package/dist/dashboard/web/primitives.js +208 -0
  117. package/dist/dashboard/web/primitives.js.map +1 -0
  118. package/dist/dashboard/web/readiness-splash.d.ts +39 -0
  119. package/dist/dashboard/web/readiness-splash.js +201 -0
  120. package/dist/dashboard/web/readiness-splash.js.map +1 -0
  121. package/dist/dashboard/web/registry.d.ts +96 -0
  122. package/dist/dashboard/web/registry.js +99 -0
  123. package/dist/dashboard/web/registry.js.map +1 -0
  124. package/dist/dashboard/web/router.d.ts +48 -0
  125. package/dist/dashboard/web/router.js +76 -0
  126. package/dist/dashboard/web/router.js.map +1 -0
  127. package/dist/dashboard/web/scope-context.d.ts +155 -0
  128. package/dist/dashboard/web/scope-context.js +266 -0
  129. package/dist/dashboard/web/scope-context.js.map +1 -0
  130. package/dist/dashboard/web/service-icons.d.ts +33 -0
  131. package/dist/dashboard/web/service-icons.js +80 -0
  132. package/dist/dashboard/web/service-icons.js.map +1 -0
  133. package/dist/dashboard/web/setup-gate.d.ts +116 -0
  134. package/dist/dashboard/web/setup-gate.js +272 -0
  135. package/dist/dashboard/web/setup-gate.js.map +1 -0
  136. package/dist/dashboard/web/sidebar.d.ts +63 -0
  137. package/dist/dashboard/web/sidebar.js +91 -0
  138. package/dist/dashboard/web/sidebar.js.map +1 -0
  139. package/dist/dashboard/web/use-fleet-telemetry.d.ts +111 -0
  140. package/dist/dashboard/web/use-fleet-telemetry.js +278 -0
  141. package/dist/dashboard/web/use-fleet-telemetry.js.map +1 -0
  142. package/dist/dashboard/web/wire.d.ts +1937 -0
  143. package/dist/dashboard/web/wire.js +1837 -0
  144. package/dist/dashboard/web/wire.js.map +1 -0
  145. package/dist/errors.d.ts +5 -0
  146. package/dist/errors.js +11 -0
  147. package/dist/errors.js.map +1 -0
  148. package/dist/install/registry.d.ts +35 -0
  149. package/dist/install/registry.js +110 -0
  150. package/dist/install/registry.js.map +1 -0
  151. package/dist/lock.d.ts +10 -0
  152. package/dist/lock.js +87 -0
  153. package/dist/lock.js.map +1 -0
  154. package/dist/service/commands.d.ts +15 -0
  155. package/dist/service/commands.js +49 -0
  156. package/dist/service/commands.js.map +1 -0
  157. package/dist/service/index.d.ts +38 -0
  158. package/dist/service/index.js +174 -0
  159. package/dist/service/index.js.map +1 -0
  160. package/dist/service/platform.d.ts +37 -0
  161. package/dist/service/platform.js +67 -0
  162. package/dist/service/platform.js.map +1 -0
  163. package/dist/service/templates.d.ts +10 -0
  164. package/dist/service/templates.js +120 -0
  165. package/dist/service/templates.js.map +1 -0
  166. package/dist/shared/constants.d.ts +15 -0
  167. package/dist/shared/constants.js +19 -0
  168. package/dist/shared/constants.js.map +1 -0
  169. package/dist/shared/daemon-routing.d.ts +11 -0
  170. package/dist/shared/daemon-routing.js +38 -0
  171. package/dist/shared/daemon-routing.js.map +1 -0
  172. package/dist/shared/fleet-readiness.d.ts +18 -0
  173. package/dist/shared/fleet-readiness.js +9 -0
  174. package/dist/shared/fleet-readiness.js.map +1 -0
  175. package/dist/shared/fleet-telemetry.d.ts +68 -0
  176. package/dist/shared/fleet-telemetry.js +61 -0
  177. package/dist/shared/fleet-telemetry.js.map +1 -0
  178. package/dist/shared/lifecycle-flags.d.ts +34 -0
  179. package/dist/shared/lifecycle-flags.js +39 -0
  180. package/dist/shared/lifecycle-flags.js.map +1 -0
  181. package/dist/shared/memory-types.d.ts +55 -0
  182. package/dist/shared/memory-types.js +75 -0
  183. package/dist/shared/memory-types.js.map +1 -0
  184. package/dist/shared/service-status.d.ts +82 -0
  185. package/dist/shared/service-status.js +97 -0
  186. package/dist/shared/service-status.js.map +1 -0
  187. package/dist/telemetry/emit.d.ts +197 -0
  188. package/dist/telemetry/emit.js +196 -0
  189. package/dist/telemetry/emit.js.map +1 -0
  190. package/package.json +50 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"wire.js","sourceRoot":"","sources":["../../../src/dashboard/web/wire.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ export declare class DaemonAlreadyRunningError extends Error {
2
+ readonly pid: number;
3
+ readonly lockFilePath: string;
4
+ constructor(pid: number, lockFilePath: string);
5
+ }
package/dist/errors.js ADDED
@@ -0,0 +1,11 @@
1
+ export class DaemonAlreadyRunningError extends Error {
2
+ pid;
3
+ lockFilePath;
4
+ constructor(pid, lockFilePath) {
5
+ super(`hive is already running (pid ${pid}) and holds lock ${lockFilePath}`);
6
+ this.name = "DaemonAlreadyRunningError";
7
+ this.pid = pid;
8
+ this.lockFilePath = lockFilePath;
9
+ }
10
+ }
11
+ //# sourceMappingURL=errors.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"errors.js","sourceRoot":"","sources":["../src/errors.ts"],"names":[],"mappings":"AAAA,MAAM,OAAO,yBAA0B,SAAQ,KAAK;IACzC,GAAG,CAAS;IACZ,YAAY,CAAS;IAE9B,YAAY,GAAW,EAAE,YAAoB;QAC3C,KAAK,CAAC,gCAAgC,GAAG,oBAAoB,YAAY,EAAE,CAAC,CAAC;QAC7E,IAAI,CAAC,IAAI,GAAG,2BAA2B,CAAC;QACxC,IAAI,CAAC,GAAG,GAAG,GAAG,CAAC;QACf,IAAI,CAAC,YAAY,GAAG,YAAY,CAAC;IACnC,CAAC;CACF"}
@@ -0,0 +1,35 @@
1
+ export declare const DOCTOR_REGISTRY_PATH: string;
2
+ export declare const HIVE_REGISTRY_NAME: "hive";
3
+ export declare const HIVE_REGISTRY_HEALTH_URL: "http://127.0.0.1:3853/health";
4
+ export declare const HIVE_REGISTRY_PID_PATH: "~/.honeycomb/hive.pid";
5
+ export declare const HIVE_REGISTRY_PROBE_INTERVAL_MS: 30000;
6
+ export declare const HIVE_REGISTRY_STARTUP_GRACE_MS: 60000;
7
+ export declare const HIVE_REGISTRY_RESTART_GIVE_UP_THRESHOLD: 3;
8
+ export declare const HIVE_REGISTRY_RESTART_COOLDOWN_MS: 5000;
9
+ export interface RegistryFs {
10
+ readFile(path: string): string;
11
+ mkdirp(path: string): void;
12
+ writeFile(path: string, content: string): void;
13
+ rename(from: string, to: string): void;
14
+ removeFile(path: string): void;
15
+ }
16
+ export interface RegistryUpsertOptions {
17
+ readonly registryPath?: string;
18
+ readonly fs?: RegistryFs;
19
+ }
20
+ export interface RegistryUpsertResult {
21
+ readonly registryPath: string;
22
+ readonly updatedExistingEntry: boolean;
23
+ }
24
+ export type RegistryDaemonEntry = Record<string, unknown> & {
25
+ readonly name: string;
26
+ readonly healthUrl: string;
27
+ readonly pidPath: string;
28
+ readonly probeIntervalMs: number;
29
+ readonly startupGraceMs: number;
30
+ readonly restartGiveUpThreshold: number;
31
+ readonly restartCooldownMs: number;
32
+ };
33
+ export declare function createNodeRegistryFs(): RegistryFs;
34
+ export declare function buildHiveRegistryEntry(): RegistryDaemonEntry;
35
+ export declare function registerHiveWithDoctor(options?: RegistryUpsertOptions): RegistryUpsertResult;
@@ -0,0 +1,110 @@
1
+ import { mkdirSync, readFileSync, renameSync, rmSync, writeFileSync } from "node:fs";
2
+ import { dirname, join } from "node:path";
3
+ import { HONEYCOMB_HOME_DIR } from "../shared/constants.js";
4
+ export const DOCTOR_REGISTRY_PATH = join(HONEYCOMB_HOME_DIR, "doctor.daemons.json");
5
+ export const HIVE_REGISTRY_NAME = "hive";
6
+ export const HIVE_REGISTRY_HEALTH_URL = "http://127.0.0.1:3853/health";
7
+ export const HIVE_REGISTRY_PID_PATH = "~/.honeycomb/hive.pid";
8
+ export const HIVE_REGISTRY_PROBE_INTERVAL_MS = 30_000;
9
+ export const HIVE_REGISTRY_STARTUP_GRACE_MS = 60_000;
10
+ export const HIVE_REGISTRY_RESTART_GIVE_UP_THRESHOLD = 3;
11
+ export const HIVE_REGISTRY_RESTART_COOLDOWN_MS = 5_000;
12
+ export function createNodeRegistryFs() {
13
+ return {
14
+ readFile(path) {
15
+ return readFileSync(path, "utf8");
16
+ },
17
+ mkdirp(path) {
18
+ mkdirSync(path, { recursive: true });
19
+ },
20
+ writeFile(path, content) {
21
+ writeFileSync(path, content, "utf8");
22
+ },
23
+ rename(from, to) {
24
+ renameSync(from, to);
25
+ },
26
+ removeFile(path) {
27
+ rmSync(path, { force: true });
28
+ }
29
+ };
30
+ }
31
+ function asObject(value) {
32
+ if (typeof value === "object" && value !== null && !Array.isArray(value))
33
+ return value;
34
+ return null;
35
+ }
36
+ function parseRegistryDocument(raw) {
37
+ let parsed;
38
+ try {
39
+ parsed = JSON.parse(raw);
40
+ }
41
+ catch {
42
+ return { root: {}, daemons: [] };
43
+ }
44
+ const root = asObject(parsed);
45
+ if (root === null)
46
+ return { root: {}, daemons: [] };
47
+ const rawDaemons = root["daemons"];
48
+ const daemons = Array.isArray(rawDaemons)
49
+ ? rawDaemons
50
+ .map((entry) => asObject(entry))
51
+ .filter((entry) => entry !== null)
52
+ : [];
53
+ return { root, daemons };
54
+ }
55
+ export function buildHiveRegistryEntry() {
56
+ return {
57
+ name: HIVE_REGISTRY_NAME,
58
+ healthUrl: HIVE_REGISTRY_HEALTH_URL,
59
+ pidPath: HIVE_REGISTRY_PID_PATH,
60
+ probeIntervalMs: HIVE_REGISTRY_PROBE_INTERVAL_MS,
61
+ startupGraceMs: HIVE_REGISTRY_STARTUP_GRACE_MS,
62
+ restartGiveUpThreshold: HIVE_REGISTRY_RESTART_GIVE_UP_THRESHOLD,
63
+ restartCooldownMs: HIVE_REGISTRY_RESTART_COOLDOWN_MS
64
+ };
65
+ }
66
+ function readRegistryDocument(path, fs) {
67
+ try {
68
+ return parseRegistryDocument(fs.readFile(path));
69
+ }
70
+ catch (error) {
71
+ const code = error.code;
72
+ if (code === "ENOENT")
73
+ return { root: {}, daemons: [] };
74
+ throw error;
75
+ }
76
+ }
77
+ function nextTempPath(registryPath) {
78
+ return `${registryPath}.tmp-${process.pid}-${Date.now()}`;
79
+ }
80
+ export function registerHiveWithDoctor(options = {}) {
81
+ const registryPath = options.registryPath ?? DOCTOR_REGISTRY_PATH;
82
+ const fs = options.fs ?? createNodeRegistryFs();
83
+ const parsed = readRegistryDocument(registryPath, fs);
84
+ const nextDaemons = [...parsed.daemons];
85
+ const hiveEntry = buildHiveRegistryEntry();
86
+ const index = nextDaemons.findIndex((entry) => entry["name"] === HIVE_REGISTRY_NAME);
87
+ if (index >= 0) {
88
+ nextDaemons[index] = { ...nextDaemons[index], ...hiveEntry };
89
+ }
90
+ else {
91
+ nextDaemons.push(hiveEntry);
92
+ }
93
+ const nextRoot = { ...parsed.root, daemons: nextDaemons };
94
+ const serialized = `${JSON.stringify(nextRoot, null, 2)}\n`;
95
+ const tempPath = nextTempPath(registryPath);
96
+ fs.mkdirp(dirname(registryPath));
97
+ fs.writeFile(tempPath, serialized);
98
+ try {
99
+ fs.rename(tempPath, registryPath);
100
+ }
101
+ catch (error) {
102
+ fs.removeFile(tempPath);
103
+ throw error;
104
+ }
105
+ return {
106
+ registryPath,
107
+ updatedExistingEntry: index >= 0
108
+ };
109
+ }
110
+ //# sourceMappingURL=registry.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"registry.js","sourceRoot":"","sources":["../../src/install/registry.ts"],"names":[],"mappings":"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"}
package/dist/lock.d.ts ADDED
@@ -0,0 +1,10 @@
1
+ export interface LockPaths {
2
+ readonly lockFilePath: string;
3
+ readonly pidFilePath: string;
4
+ }
5
+ export declare function resolveLockPaths(paths?: Partial<LockPaths>): LockPaths;
6
+ export declare function isPidAlive(pid: number): boolean;
7
+ export declare function readPidFile(path: string): number | null;
8
+ export declare function acquireSingleInstanceLock(paths?: Partial<LockPaths>): LockPaths;
9
+ export declare function releaseSingleInstanceLock(paths?: Partial<LockPaths>): void;
10
+ export declare function isLockHeldByLiveDaemon(paths?: Partial<LockPaths>): boolean;
package/dist/lock.js ADDED
@@ -0,0 +1,87 @@
1
+ import { closeSync, existsSync, mkdirSync, openSync, readFileSync, rmSync, writeFileSync, writeSync } from "node:fs";
2
+ import { dirname } from "node:path";
3
+ import { DaemonAlreadyRunningError } from "./errors.js";
4
+ import { HIVE_LOCK_PATH, HIVE_PID_PATH } from "./shared/constants.js";
5
+ export function resolveLockPaths(paths = {}) {
6
+ return {
7
+ lockFilePath: paths.lockFilePath ?? HIVE_LOCK_PATH,
8
+ pidFilePath: paths.pidFilePath ?? HIVE_PID_PATH
9
+ };
10
+ }
11
+ export function isPidAlive(pid) {
12
+ if (!Number.isInteger(pid) || pid <= 0)
13
+ return false;
14
+ try {
15
+ process.kill(pid, 0);
16
+ return true;
17
+ }
18
+ catch (error) {
19
+ const code = error.code;
20
+ if (code === "EPERM")
21
+ return true;
22
+ return false;
23
+ }
24
+ }
25
+ export function readPidFile(path) {
26
+ try {
27
+ const raw = readFileSync(path, "utf8").trim();
28
+ if (raw === "")
29
+ return null;
30
+ const pid = Number.parseInt(raw, 10);
31
+ return Number.isInteger(pid) && pid > 0 ? pid : null;
32
+ }
33
+ catch {
34
+ return null;
35
+ }
36
+ }
37
+ export function acquireSingleInstanceLock(paths = {}) {
38
+ const resolved = resolveLockPaths(paths);
39
+ mkdirSync(dirname(resolved.lockFilePath), { recursive: true });
40
+ const pid = String(process.pid);
41
+ for (let attempt = 0; attempt < 2; attempt += 1) {
42
+ let fd;
43
+ try {
44
+ fd = openSync(resolved.lockFilePath, "wx");
45
+ }
46
+ catch (error) {
47
+ const code = error.code;
48
+ if (code !== "EEXIST")
49
+ throw error;
50
+ const existingPid = readPidFile(resolved.lockFilePath);
51
+ if (existingPid !== null && isPidAlive(existingPid)) {
52
+ throw new DaemonAlreadyRunningError(existingPid, resolved.lockFilePath);
53
+ }
54
+ rmSync(resolved.lockFilePath, { force: true });
55
+ continue;
56
+ }
57
+ try {
58
+ writeSync(fd, pid);
59
+ }
60
+ finally {
61
+ closeSync(fd);
62
+ }
63
+ try {
64
+ writeFileSync(resolved.pidFilePath, pid, "utf8");
65
+ }
66
+ catch (error) {
67
+ rmSync(resolved.lockFilePath, { force: true });
68
+ throw error;
69
+ }
70
+ return resolved;
71
+ }
72
+ const racedPid = readPidFile(resolved.lockFilePath);
73
+ throw new DaemonAlreadyRunningError(racedPid ?? -1, resolved.lockFilePath);
74
+ }
75
+ export function releaseSingleInstanceLock(paths = {}) {
76
+ const resolved = resolveLockPaths(paths);
77
+ rmSync(resolved.lockFilePath, { force: true });
78
+ rmSync(resolved.pidFilePath, { force: true });
79
+ }
80
+ export function isLockHeldByLiveDaemon(paths = {}) {
81
+ const resolved = resolveLockPaths(paths);
82
+ if (!existsSync(resolved.lockFilePath))
83
+ return false;
84
+ const pid = readPidFile(resolved.lockFilePath);
85
+ return pid !== null && isPidAlive(pid);
86
+ }
87
+ //# sourceMappingURL=lock.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"lock.js","sourceRoot":"","sources":["../src/lock.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,15 @@
1
+ import { type ServicePlan } from "./platform.js";
2
+ export interface ServiceCommand {
3
+ readonly command: string;
4
+ readonly args: readonly string[];
5
+ }
6
+ export declare function launchdDomainTarget(uid: number): string;
7
+ export declare function launchdServiceTarget(plan: ServicePlan, uid: number): string;
8
+ export declare function installCommands(plan: ServicePlan, uid: number): readonly ServiceCommand[];
9
+ export declare function uninstallCommands(plan: ServicePlan, uid: number): readonly ServiceCommand[];
10
+ /**
11
+ * The argv to deregister the PRE-decision-#32 unit names (`thehive` / `thehive.service`).
12
+ * Run best-effort at the start of every install so a re-run migrates a legacy unit;
13
+ * when no legacy unit exists these commands fail harmlessly and the install proceeds.
14
+ */
15
+ export declare function legacyUninstallCommands(plan: ServicePlan, uid: number): readonly ServiceCommand[];
@@ -0,0 +1,49 @@
1
+ import { LEGACY_SERVICE_LABEL, LEGACY_SYSTEMD_UNIT_NAME, LEGACY_WINDOWS_TASK_NAME, SYSTEMD_UNIT_NAME, WINDOWS_TASK_NAME } from "./platform.js";
2
+ export function launchdDomainTarget(uid) {
3
+ return `gui/${uid}`;
4
+ }
5
+ export function launchdServiceTarget(plan, uid) {
6
+ return `${launchdDomainTarget(uid)}/${plan.label}`;
7
+ }
8
+ export function installCommands(plan, uid) {
9
+ switch (plan.manager) {
10
+ case "launchd":
11
+ return [
12
+ { command: "launchctl", args: ["bootstrap", launchdDomainTarget(uid), plan.unitPath] },
13
+ { command: "launchctl", args: ["kickstart", "-k", launchdServiceTarget(plan, uid)] }
14
+ ];
15
+ case "systemd":
16
+ return [{ command: "systemctl", args: ["--user", "enable", "--now", SYSTEMD_UNIT_NAME] }];
17
+ case "schtasks":
18
+ return [
19
+ { command: "schtasks", args: ["/Create", "/XML", plan.unitPath, "/TN", WINDOWS_TASK_NAME, "/F"] },
20
+ { command: "schtasks", args: ["/Run", "/TN", WINDOWS_TASK_NAME] }
21
+ ];
22
+ }
23
+ }
24
+ export function uninstallCommands(plan, uid) {
25
+ switch (plan.manager) {
26
+ case "launchd":
27
+ return [{ command: "launchctl", args: ["bootout", launchdServiceTarget(plan, uid)] }];
28
+ case "systemd":
29
+ return [{ command: "systemctl", args: ["--user", "disable", "--now", SYSTEMD_UNIT_NAME] }];
30
+ case "schtasks":
31
+ return [{ command: "schtasks", args: ["/Delete", "/TN", WINDOWS_TASK_NAME, "/F"] }];
32
+ }
33
+ }
34
+ /**
35
+ * The argv to deregister the PRE-decision-#32 unit names (`thehive` / `thehive.service`).
36
+ * Run best-effort at the start of every install so a re-run migrates a legacy unit;
37
+ * when no legacy unit exists these commands fail harmlessly and the install proceeds.
38
+ */
39
+ export function legacyUninstallCommands(plan, uid) {
40
+ switch (plan.manager) {
41
+ case "launchd":
42
+ return [{ command: "launchctl", args: ["bootout", `${launchdDomainTarget(uid)}/${LEGACY_SERVICE_LABEL}`] }];
43
+ case "systemd":
44
+ return [{ command: "systemctl", args: ["--user", "disable", "--now", LEGACY_SYSTEMD_UNIT_NAME] }];
45
+ case "schtasks":
46
+ return [{ command: "schtasks", args: ["/Delete", "/TN", LEGACY_WINDOWS_TASK_NAME, "/F"] }];
47
+ }
48
+ }
49
+ //# sourceMappingURL=commands.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"commands.js","sourceRoot":"","sources":["../../src/service/commands.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,38 @@
1
+ import { type ServiceEnvironment } from "./platform.js";
2
+ export interface CommandResult {
3
+ readonly ok: boolean;
4
+ readonly code: number | null;
5
+ readonly stdout: string;
6
+ readonly stderr: string;
7
+ readonly detail?: string;
8
+ }
9
+ export interface CommandRunner {
10
+ run(command: string, args: readonly string[], options?: {
11
+ readonly timeoutMs?: number;
12
+ }): Promise<CommandResult>;
13
+ }
14
+ export interface ServiceFs {
15
+ mkdirp(path: string): void;
16
+ writeFile(path: string, content: string): void;
17
+ removeFile(path: string): void;
18
+ }
19
+ export interface ServiceResult {
20
+ readonly ok: boolean;
21
+ readonly message: string;
22
+ }
23
+ export interface ServiceModule {
24
+ install(): Promise<ServiceResult>;
25
+ uninstall(): Promise<ServiceResult>;
26
+ }
27
+ export interface ServiceModuleDeps {
28
+ readonly execPath: string;
29
+ readonly runner?: CommandRunner;
30
+ readonly fs?: ServiceFs;
31
+ readonly uid?: number;
32
+ readonly environment?: ServiceEnvironment;
33
+ }
34
+ export declare function createExecFileRunner(): CommandRunner;
35
+ export declare function createNodeServiceFs(): ServiceFs;
36
+ export declare function createServiceModule(deps: ServiceModuleDeps): ServiceModule;
37
+ export { resolveServiceContext, resolveServicePlan } from "./platform.js";
38
+ export type { ServiceEnvironment, ServicePlan } from "./platform.js";