@portel/photon 1.4.1 → 1.5.1
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.
- package/README.md +287 -1160
- package/dist/auto-ui/beam.d.ts +9 -0
- package/dist/auto-ui/beam.d.ts.map +1 -0
- package/dist/auto-ui/beam.js +2381 -0
- package/dist/auto-ui/beam.js.map +1 -0
- package/dist/auto-ui/components/card.d.ts +13 -0
- package/dist/auto-ui/components/card.d.ts.map +1 -0
- package/dist/auto-ui/components/card.js +64 -0
- package/dist/auto-ui/components/card.js.map +1 -0
- package/dist/auto-ui/components/form.d.ts +15 -0
- package/dist/auto-ui/components/form.d.ts.map +1 -0
- package/dist/auto-ui/components/form.js +72 -0
- package/dist/auto-ui/components/form.js.map +1 -0
- package/dist/auto-ui/components/list.d.ts +13 -0
- package/dist/auto-ui/components/list.d.ts.map +1 -0
- package/dist/auto-ui/components/list.js +58 -0
- package/dist/auto-ui/components/list.js.map +1 -0
- package/dist/auto-ui/components/progress.d.ts +18 -0
- package/dist/auto-ui/components/progress.d.ts.map +1 -0
- package/dist/auto-ui/components/progress.js +125 -0
- package/dist/auto-ui/components/progress.js.map +1 -0
- package/dist/auto-ui/components/table.d.ts +13 -0
- package/dist/auto-ui/components/table.d.ts.map +1 -0
- package/dist/auto-ui/components/table.js +82 -0
- package/dist/auto-ui/components/table.js.map +1 -0
- package/dist/auto-ui/components/tree.d.ts +13 -0
- package/dist/auto-ui/components/tree.d.ts.map +1 -0
- package/dist/auto-ui/components/tree.js +61 -0
- package/dist/auto-ui/components/tree.js.map +1 -0
- package/dist/auto-ui/daemon-tools.d.ts +45 -0
- package/dist/auto-ui/daemon-tools.d.ts.map +1 -0
- package/dist/auto-ui/daemon-tools.js +580 -0
- package/dist/auto-ui/daemon-tools.js.map +1 -0
- package/dist/auto-ui/design-system/index.d.ts +21 -0
- package/dist/auto-ui/design-system/index.d.ts.map +1 -0
- package/dist/auto-ui/design-system/index.js +27 -0
- package/dist/auto-ui/design-system/index.js.map +1 -0
- package/dist/auto-ui/design-system/tokens.d.ts +9 -0
- package/dist/auto-ui/design-system/tokens.d.ts.map +1 -0
- package/dist/auto-ui/design-system/tokens.js +27 -0
- package/dist/auto-ui/design-system/tokens.js.map +1 -0
- package/dist/auto-ui/design-system/transaction-ui.d.ts +70 -0
- package/dist/auto-ui/design-system/transaction-ui.d.ts.map +1 -0
- package/dist/auto-ui/design-system/transaction-ui.js +982 -0
- package/dist/auto-ui/design-system/transaction-ui.js.map +1 -0
- package/dist/auto-ui/frontend/index.html +84 -0
- package/dist/auto-ui/index.d.ts +21 -0
- package/dist/auto-ui/index.d.ts.map +1 -0
- package/dist/auto-ui/index.js +25 -0
- package/dist/auto-ui/index.js.map +1 -0
- package/dist/auto-ui/openapi-generator.d.ts +71 -0
- package/dist/auto-ui/openapi-generator.d.ts.map +1 -0
- package/dist/auto-ui/openapi-generator.js +223 -0
- package/dist/auto-ui/openapi-generator.js.map +1 -0
- package/dist/auto-ui/photon-bridge.d.ts +159 -0
- package/dist/auto-ui/photon-bridge.d.ts.map +1 -0
- package/dist/auto-ui/photon-bridge.js +262 -0
- package/dist/auto-ui/photon-bridge.js.map +1 -0
- package/dist/auto-ui/photon-host.d.ts +113 -0
- package/dist/auto-ui/photon-host.d.ts.map +1 -0
- package/dist/auto-ui/photon-host.js +284 -0
- package/dist/auto-ui/photon-host.js.map +1 -0
- package/dist/auto-ui/platform-compat.d.ts +71 -0
- package/dist/auto-ui/platform-compat.d.ts.map +1 -0
- package/dist/auto-ui/platform-compat.js +574 -0
- package/dist/auto-ui/platform-compat.js.map +1 -0
- package/dist/auto-ui/playground-html.d.ts +15 -0
- package/dist/auto-ui/playground-html.d.ts.map +1 -0
- package/dist/auto-ui/playground-html.js +1113 -0
- package/dist/auto-ui/playground-html.js.map +1 -0
- package/dist/auto-ui/playground-server.d.ts +7 -0
- package/dist/auto-ui/playground-server.d.ts.map +1 -0
- package/dist/auto-ui/playground-server.js +840 -0
- package/dist/auto-ui/playground-server.js.map +1 -0
- package/dist/auto-ui/registry.d.ts +13 -0
- package/dist/auto-ui/registry.d.ts.map +1 -0
- package/dist/auto-ui/registry.js +62 -0
- package/dist/auto-ui/registry.js.map +1 -0
- package/dist/auto-ui/renderer.d.ts +14 -0
- package/dist/auto-ui/renderer.d.ts.map +1 -0
- package/dist/auto-ui/renderer.js +88 -0
- package/dist/auto-ui/renderer.js.map +1 -0
- package/dist/auto-ui/rendering/components.d.ts +29 -0
- package/dist/auto-ui/rendering/components.d.ts.map +1 -0
- package/dist/auto-ui/rendering/components.js +773 -0
- package/dist/auto-ui/rendering/components.js.map +1 -0
- package/dist/auto-ui/rendering/field-analyzer.d.ts +48 -0
- package/dist/auto-ui/rendering/field-analyzer.d.ts.map +1 -0
- package/dist/auto-ui/rendering/field-analyzer.js +270 -0
- package/dist/auto-ui/rendering/field-analyzer.js.map +1 -0
- package/dist/auto-ui/rendering/field-renderers.d.ts +64 -0
- package/dist/auto-ui/rendering/field-renderers.d.ts.map +1 -0
- package/dist/auto-ui/rendering/field-renderers.js +317 -0
- package/dist/auto-ui/rendering/field-renderers.js.map +1 -0
- package/dist/auto-ui/rendering/index.d.ts +28 -0
- package/dist/auto-ui/rendering/index.d.ts.map +1 -0
- package/dist/auto-ui/rendering/index.js +60 -0
- package/dist/auto-ui/rendering/index.js.map +1 -0
- package/dist/auto-ui/rendering/layout-selector.d.ts +48 -0
- package/dist/auto-ui/rendering/layout-selector.d.ts.map +1 -0
- package/dist/auto-ui/rendering/layout-selector.js +352 -0
- package/dist/auto-ui/rendering/layout-selector.js.map +1 -0
- package/dist/auto-ui/rendering/template-engine.d.ts +41 -0
- package/dist/auto-ui/rendering/template-engine.d.ts.map +1 -0
- package/dist/auto-ui/rendering/template-engine.js +238 -0
- package/dist/auto-ui/rendering/template-engine.js.map +1 -0
- package/dist/auto-ui/streamable-http-transport.d.ts +79 -0
- package/dist/auto-ui/streamable-http-transport.d.ts.map +1 -0
- package/dist/auto-ui/streamable-http-transport.js +1314 -0
- package/dist/auto-ui/streamable-http-transport.js.map +1 -0
- package/dist/auto-ui/types.d.ts +310 -0
- package/dist/auto-ui/types.d.ts.map +1 -0
- package/dist/auto-ui/types.js +71 -0
- package/dist/auto-ui/types.js.map +1 -0
- package/dist/beam.bundle.js +13506 -0
- package/dist/beam.bundle.js.map +7 -0
- package/dist/claude-code-plugin.d.ts.map +1 -1
- package/dist/claude-code-plugin.js +30 -30
- package/dist/claude-code-plugin.js.map +1 -1
- package/dist/cli/commands/info.d.ts +11 -0
- package/dist/cli/commands/info.d.ts.map +1 -0
- package/dist/cli/commands/info.js +313 -0
- package/dist/cli/commands/info.js.map +1 -0
- package/dist/cli/commands/marketplace.d.ts +11 -0
- package/dist/cli/commands/marketplace.d.ts.map +1 -0
- package/dist/cli/commands/marketplace.js +198 -0
- package/dist/cli/commands/marketplace.js.map +1 -0
- package/dist/cli/commands/package-app.d.ts +9 -0
- package/dist/cli/commands/package-app.d.ts.map +1 -0
- package/dist/cli/commands/package-app.js +191 -0
- package/dist/cli/commands/package-app.js.map +1 -0
- package/dist/cli/commands/package.d.ts +11 -0
- package/dist/cli/commands/package.d.ts.map +1 -0
- package/dist/cli/commands/package.js +573 -0
- package/dist/cli/commands/package.js.map +1 -0
- package/dist/cli-alias.d.ts.map +1 -1
- package/dist/cli-alias.js +30 -28
- package/dist/cli-alias.js.map +1 -1
- package/dist/cli-formatter.d.ts +8 -24
- package/dist/cli-formatter.d.ts.map +1 -1
- package/dist/cli-formatter.js +8 -325
- package/dist/cli-formatter.js.map +1 -1
- package/dist/cli.d.ts +15 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +1157 -1132
- package/dist/cli.js.map +1 -1
- package/dist/daemon/client.d.ts +79 -0
- package/dist/daemon/client.d.ts.map +1 -1
- package/dist/daemon/client.js +532 -8
- package/dist/daemon/client.js.map +1 -1
- package/dist/daemon/manager.d.ts +46 -12
- package/dist/daemon/manager.d.ts.map +1 -1
- package/dist/daemon/manager.js +102 -61
- package/dist/daemon/manager.js.map +1 -1
- package/dist/daemon/protocol.d.ts +62 -6
- package/dist/daemon/protocol.d.ts.map +1 -1
- package/dist/daemon/protocol.js +76 -1
- package/dist/daemon/protocol.js.map +1 -1
- package/dist/daemon/server.d.ts +6 -6
- package/dist/daemon/server.js +743 -133
- package/dist/daemon/server.js.map +1 -1
- package/dist/daemon/session-manager.d.ts +8 -1
- package/dist/daemon/session-manager.d.ts.map +1 -1
- package/dist/daemon/session-manager.js +32 -9
- package/dist/daemon/session-manager.js.map +1 -1
- package/dist/deploy/cloudflare.d.ts +12 -0
- package/dist/deploy/cloudflare.d.ts.map +1 -0
- package/dist/deploy/cloudflare.js +216 -0
- package/dist/deploy/cloudflare.js.map +1 -0
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/loader.d.ts +168 -21
- package/dist/loader.d.ts.map +1 -1
- package/dist/loader.js +1120 -318
- package/dist/loader.js.map +1 -1
- package/dist/markdown-utils.d.ts +8 -0
- package/dist/markdown-utils.d.ts.map +1 -0
- package/dist/markdown-utils.js +63 -0
- package/dist/markdown-utils.js.map +1 -0
- package/dist/marketplace-manager.d.ts +10 -0
- package/dist/marketplace-manager.d.ts.map +1 -1
- package/dist/marketplace-manager.js +112 -28
- package/dist/marketplace-manager.js.map +1 -1
- package/dist/mcp-client.d.ts +9 -0
- package/dist/mcp-client.d.ts.map +1 -0
- package/dist/mcp-client.js +11 -0
- package/dist/mcp-client.js.map +1 -0
- package/dist/mcp-elicitation.d.ts +32 -0
- package/dist/mcp-elicitation.d.ts.map +1 -0
- package/dist/mcp-elicitation.js +26 -0
- package/dist/mcp-elicitation.js.map +1 -0
- package/dist/path-resolver.d.ts +9 -12
- package/dist/path-resolver.d.ts.map +1 -1
- package/dist/path-resolver.js +13 -43
- package/dist/path-resolver.js.map +1 -1
- package/dist/photon-cli-runner.d.ts.map +1 -1
- package/dist/photon-cli-runner.js +202 -77
- package/dist/photon-cli-runner.js.map +1 -1
- package/dist/photon-doc-extractor.d.ts +88 -0
- package/dist/photon-doc-extractor.d.ts.map +1 -1
- package/dist/photon-doc-extractor.js +536 -27
- package/dist/photon-doc-extractor.js.map +1 -1
- package/dist/photons/maker.photon.d.ts +182 -0
- package/dist/photons/maker.photon.d.ts.map +1 -0
- package/dist/photons/maker.photon.js +504 -0
- package/dist/photons/maker.photon.js.map +1 -0
- package/dist/photons/maker.photon.ts +626 -0
- package/dist/photons/marketplace.photon.d.ts +110 -0
- package/dist/photons/marketplace.photon.d.ts.map +1 -0
- package/dist/photons/marketplace.photon.js +260 -0
- package/dist/photons/marketplace.photon.js.map +1 -0
- package/dist/photons/marketplace.photon.ts +378 -0
- package/dist/photons/tunnel.photon.d.ts +80 -0
- package/dist/photons/tunnel.photon.d.ts.map +1 -0
- package/dist/photons/tunnel.photon.js +269 -0
- package/dist/photons/tunnel.photon.js.map +1 -0
- package/dist/photons/tunnel.photon.ts +345 -0
- package/dist/security-scanner.d.ts.map +1 -1
- package/dist/security-scanner.js +18 -15
- package/dist/security-scanner.js.map +1 -1
- package/dist/serv/auth/jwt.d.ts +89 -0
- package/dist/serv/auth/jwt.d.ts.map +1 -0
- package/dist/serv/auth/jwt.js +239 -0
- package/dist/serv/auth/jwt.js.map +1 -0
- package/dist/serv/auth/oauth.d.ts +117 -0
- package/dist/serv/auth/oauth.d.ts.map +1 -0
- package/dist/serv/auth/oauth.js +395 -0
- package/dist/serv/auth/oauth.js.map +1 -0
- package/dist/serv/auth/well-known.d.ts +60 -0
- package/dist/serv/auth/well-known.d.ts.map +1 -0
- package/dist/serv/auth/well-known.js +154 -0
- package/dist/serv/auth/well-known.js.map +1 -0
- package/dist/serv/db/d1-client.d.ts +65 -0
- package/dist/serv/db/d1-client.d.ts.map +1 -0
- package/dist/serv/db/d1-client.js +137 -0
- package/dist/serv/db/d1-client.js.map +1 -0
- package/dist/serv/db/d1-stores.d.ts +62 -0
- package/dist/serv/db/d1-stores.d.ts.map +1 -0
- package/dist/serv/db/d1-stores.js +307 -0
- package/dist/serv/db/d1-stores.js.map +1 -0
- package/dist/serv/index.d.ts +114 -0
- package/dist/serv/index.d.ts.map +1 -0
- package/dist/serv/index.js +172 -0
- package/dist/serv/index.js.map +1 -0
- package/dist/serv/local.d.ts +118 -0
- package/dist/serv/local.d.ts.map +1 -0
- package/dist/serv/local.js +392 -0
- package/dist/serv/local.js.map +1 -0
- package/dist/serv/middleware/auth.d.ts +66 -0
- package/dist/serv/middleware/auth.d.ts.map +1 -0
- package/dist/serv/middleware/auth.js +178 -0
- package/dist/serv/middleware/auth.js.map +1 -0
- package/dist/serv/middleware/tenant.d.ts +94 -0
- package/dist/serv/middleware/tenant.d.ts.map +1 -0
- package/dist/serv/middleware/tenant.js +152 -0
- package/dist/serv/middleware/tenant.js.map +1 -0
- package/dist/serv/runtime/executor.d.ts +76 -0
- package/dist/serv/runtime/executor.d.ts.map +1 -0
- package/dist/serv/runtime/executor.js +105 -0
- package/dist/serv/runtime/executor.js.map +1 -0
- package/dist/serv/runtime/index.d.ts +8 -0
- package/dist/serv/runtime/index.d.ts.map +1 -0
- package/dist/serv/runtime/index.js +10 -0
- package/dist/serv/runtime/index.js.map +1 -0
- package/dist/serv/runtime/oauth-context.d.ts +121 -0
- package/dist/serv/runtime/oauth-context.d.ts.map +1 -0
- package/dist/serv/runtime/oauth-context.js +153 -0
- package/dist/serv/runtime/oauth-context.js.map +1 -0
- package/dist/serv/session/kv-store.d.ts +54 -0
- package/dist/serv/session/kv-store.d.ts.map +1 -0
- package/dist/serv/session/kv-store.js +149 -0
- package/dist/serv/session/kv-store.js.map +1 -0
- package/dist/serv/session/store.d.ts +113 -0
- package/dist/serv/session/store.d.ts.map +1 -0
- package/dist/serv/session/store.js +284 -0
- package/dist/serv/session/store.js.map +1 -0
- package/dist/serv/types/index.d.ts +147 -0
- package/dist/serv/types/index.d.ts.map +1 -0
- package/dist/serv/types/index.js +8 -0
- package/dist/serv/types/index.js.map +1 -0
- package/dist/serv/vault/token-vault.d.ts +102 -0
- package/dist/serv/vault/token-vault.d.ts.map +1 -0
- package/dist/serv/vault/token-vault.js +177 -0
- package/dist/serv/vault/token-vault.js.map +1 -0
- package/dist/server.d.ts +173 -0
- package/dist/server.d.ts.map +1 -1
- package/dist/server.js +1622 -86
- package/dist/server.js.map +1 -1
- package/dist/shared/cli-sections.d.ts +6 -0
- package/dist/shared/cli-sections.d.ts.map +1 -0
- package/dist/shared/cli-sections.js +16 -0
- package/dist/shared/cli-sections.js.map +1 -0
- package/dist/shared/cli-utils.d.ts +81 -0
- package/dist/shared/cli-utils.d.ts.map +1 -0
- package/dist/shared/cli-utils.js +174 -0
- package/dist/shared/cli-utils.js.map +1 -0
- package/dist/shared/config-docs.d.ts +6 -0
- package/dist/shared/config-docs.d.ts.map +1 -0
- package/dist/shared/config-docs.js +6 -0
- package/dist/shared/config-docs.js.map +1 -0
- package/dist/shared/error-handler.d.ts +128 -0
- package/dist/shared/error-handler.d.ts.map +1 -0
- package/dist/shared/error-handler.js +342 -0
- package/dist/shared/error-handler.js.map +1 -0
- package/dist/shared/logger.d.ts +42 -0
- package/dist/shared/logger.d.ts.map +1 -0
- package/dist/shared/logger.js +123 -0
- package/dist/shared/logger.js.map +1 -0
- package/dist/shared/performance.d.ts +65 -0
- package/dist/shared/performance.d.ts.map +1 -0
- package/dist/shared/performance.js +136 -0
- package/dist/shared/performance.js.map +1 -0
- package/dist/shared/task-runner.d.ts +2 -0
- package/dist/shared/task-runner.d.ts.map +1 -0
- package/dist/shared/task-runner.js +16 -0
- package/dist/shared/task-runner.js.map +1 -0
- package/dist/shared/validation.d.ts +6 -0
- package/dist/shared/validation.d.ts.map +1 -0
- package/dist/shared/validation.js +6 -0
- package/dist/shared/validation.js.map +1 -0
- package/dist/shared-utils.d.ts +63 -0
- package/dist/shared-utils.d.ts.map +1 -0
- package/dist/shared-utils.js +123 -0
- package/dist/shared-utils.js.map +1 -0
- package/dist/template-manager.d.ts +23 -2
- package/dist/template-manager.d.ts.map +1 -1
- package/dist/template-manager.js +175 -86
- package/dist/template-manager.js.map +1 -1
- package/dist/test-client.d.ts.map +1 -1
- package/dist/test-client.js +10 -8
- package/dist/test-client.js.map +1 -1
- package/dist/test-runner.d.ts +52 -0
- package/dist/test-runner.d.ts.map +1 -0
- package/dist/test-runner.js +785 -0
- package/dist/test-runner.js.map +1 -0
- package/dist/testing.d.ts +103 -0
- package/dist/testing.d.ts.map +1 -0
- package/dist/testing.js +163 -0
- package/dist/testing.js.map +1 -0
- package/dist/version-checker.d.ts.map +1 -1
- package/dist/version-checker.js +2 -2
- package/dist/version-checker.js.map +1 -1
- package/dist/version.d.ts +2 -0
- package/dist/version.d.ts.map +1 -0
- package/dist/version.js +5 -0
- package/dist/version.js.map +1 -0
- package/dist/watcher.d.ts +6 -3
- package/dist/watcher.d.ts.map +1 -1
- package/dist/watcher.js +49 -10
- package/dist/watcher.js.map +1 -1
- package/package.json +47 -7
- package/templates/cloudflare/worker.ts.template +381 -0
- package/templates/cloudflare/wrangler.toml.template +9 -0
- package/dist/base.d.ts +0 -58
- package/dist/base.d.ts.map +0 -1
- package/dist/base.js +0 -92
- package/dist/base.js.map +0 -1
- package/dist/dependency-manager.d.ts +0 -49
- package/dist/dependency-manager.d.ts.map +0 -1
- package/dist/dependency-manager.js +0 -165
- package/dist/dependency-manager.js.map +0 -1
- package/dist/registry-manager.d.ts +0 -76
- package/dist/registry-manager.d.ts.map +0 -1
- package/dist/registry-manager.js +0 -220
- package/dist/registry-manager.js.map +0 -1
- package/dist/schema-extractor.d.ts +0 -110
- package/dist/schema-extractor.d.ts.map +0 -1
- package/dist/schema-extractor.js +0 -727
- package/dist/schema-extractor.js.map +0 -1
- package/dist/test-marketplace-sources.d.ts +0 -5
- package/dist/test-marketplace-sources.d.ts.map +0 -1
- package/dist/test-marketplace-sources.js +0 -53
- package/dist/test-marketplace-sources.js.map +0 -1
- package/dist/types.d.ts +0 -109
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -12
- package/dist/types.js.map +0 -1
package/dist/daemon/manager.d.ts
CHANGED
|
@@ -1,32 +1,66 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Daemon Manager
|
|
3
3
|
*
|
|
4
|
-
* Manages
|
|
5
|
-
*
|
|
4
|
+
* Manages the single global Photon daemon lifecycle.
|
|
5
|
+
* The daemon handles all photons through channel-based isolation.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - Single daemon process: ~/.photon/daemon.sock
|
|
9
|
+
* - All photons communicate through the same daemon
|
|
10
|
+
* - Channels provide isolation: {photonId}:{itemId}
|
|
6
11
|
*/
|
|
7
12
|
import { DaemonStatus } from './protocol.js';
|
|
8
13
|
/**
|
|
9
|
-
* Get socket
|
|
14
|
+
* Get global socket path for the Photon daemon
|
|
15
|
+
*/
|
|
16
|
+
export declare function getGlobalSocketPath(): string;
|
|
17
|
+
/**
|
|
18
|
+
* Get socket path - now returns global socket regardless of photonName
|
|
19
|
+
* @deprecated Use getGlobalSocketPath() directly. photonName parameter is ignored.
|
|
20
|
+
*/
|
|
21
|
+
export declare function getSocketPath(_photonName?: string): string;
|
|
22
|
+
/**
|
|
23
|
+
* Check if global daemon is running
|
|
24
|
+
*/
|
|
25
|
+
export declare function isGlobalDaemonRunning(): boolean;
|
|
26
|
+
/**
|
|
27
|
+
* Check if daemon is running
|
|
28
|
+
* @deprecated Use isGlobalDaemonRunning(). photonName parameter is ignored.
|
|
10
29
|
*/
|
|
11
|
-
export declare function
|
|
30
|
+
export declare function isDaemonRunning(_photonName?: string): boolean;
|
|
12
31
|
/**
|
|
13
|
-
*
|
|
32
|
+
* Get global daemon status
|
|
14
33
|
*/
|
|
15
|
-
export declare function
|
|
34
|
+
export declare function getGlobalDaemonStatus(): DaemonStatus;
|
|
16
35
|
/**
|
|
17
36
|
* Get daemon status
|
|
37
|
+
* @deprecated Use getGlobalDaemonStatus(). photonName parameter is ignored.
|
|
38
|
+
*/
|
|
39
|
+
export declare function getDaemonStatus(_photonName?: string): DaemonStatus;
|
|
40
|
+
/**
|
|
41
|
+
* Start the global Photon daemon if not already running
|
|
42
|
+
*/
|
|
43
|
+
export declare function startGlobalDaemon(quiet?: boolean): Promise<void>;
|
|
44
|
+
/**
|
|
45
|
+
* Start daemon - ensures global daemon is running
|
|
46
|
+
* @deprecated Use startGlobalDaemon(). photonName/photonPath parameters are ignored.
|
|
47
|
+
*/
|
|
48
|
+
export declare function startDaemon(_photonName?: string, _photonPath?: string, quiet?: boolean): Promise<void>;
|
|
49
|
+
/**
|
|
50
|
+
* Ensure daemon is running, start if needed
|
|
18
51
|
*/
|
|
19
|
-
export declare function
|
|
52
|
+
export declare function ensureDaemon(quiet?: boolean): Promise<void>;
|
|
20
53
|
/**
|
|
21
|
-
*
|
|
54
|
+
* Stop the global daemon
|
|
22
55
|
*/
|
|
23
|
-
export declare function
|
|
56
|
+
export declare function stopGlobalDaemon(): void;
|
|
24
57
|
/**
|
|
25
|
-
* Stop daemon
|
|
58
|
+
* Stop daemon
|
|
59
|
+
* @deprecated Use stopGlobalDaemon(). photonName parameter is ignored.
|
|
26
60
|
*/
|
|
27
|
-
export declare function stopDaemon(
|
|
61
|
+
export declare function stopDaemon(_photonName?: string): void;
|
|
28
62
|
/**
|
|
29
|
-
* Stop all
|
|
63
|
+
* Stop all daemons (now just stops the single global daemon)
|
|
30
64
|
*/
|
|
31
65
|
export declare function stopAllDaemons(): void;
|
|
32
66
|
//# sourceMappingURL=manager.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/daemon/manager.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"manager.d.ts","sourceRoot":"","sources":["../../src/daemon/manager.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAe7C;;GAEG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,CAK5C;AAED;;;GAGG;AACH,wBAAgB,aAAa,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,MAAM,CAE1D;AAWD;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,OAAO,CAoB/C;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,OAAO,CAE7D;AAED;;GAEG;AACH,wBAAgB,qBAAqB,IAAI,YAAY,CAepD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,YAAY,CAElE;AAED;;GAEG;AACH,wBAAsB,iBAAiB,CAAC,KAAK,GAAE,OAAe,GAAG,OAAO,CAAC,IAAI,CAAC,CA0C7E;AAED;;;GAGG;AACH,wBAAsB,WAAW,CAC/B,WAAW,CAAC,EAAE,MAAM,EACpB,WAAW,CAAC,EAAE,MAAM,EACpB,KAAK,GAAE,OAAe,GACrB,OAAO,CAAC,IAAI,CAAC,CAEf;AAED;;GAEG;AACH,wBAAsB,YAAY,CAAC,KAAK,GAAE,OAAc,GAAG,OAAO,CAAC,IAAI,CAAC,CAIvE;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CA0BvC;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAErD;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,IAAI,CAErC"}
|
package/dist/daemon/manager.js
CHANGED
|
@@ -1,106 +1,131 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Daemon Manager
|
|
3
3
|
*
|
|
4
|
-
* Manages
|
|
5
|
-
*
|
|
4
|
+
* Manages the single global Photon daemon lifecycle.
|
|
5
|
+
* The daemon handles all photons through channel-based isolation.
|
|
6
|
+
*
|
|
7
|
+
* Architecture:
|
|
8
|
+
* - Single daemon process: ~/.photon/daemon.sock
|
|
9
|
+
* - All photons communicate through the same daemon
|
|
10
|
+
* - Channels provide isolation: {photonId}:{itemId}
|
|
6
11
|
*/
|
|
7
12
|
import * as fs from 'fs';
|
|
8
13
|
import * as path from 'path';
|
|
9
14
|
import * as os from 'os';
|
|
10
15
|
import { spawn } from 'child_process';
|
|
11
16
|
import { fileURLToPath } from 'url';
|
|
17
|
+
import { createLogger } from '../shared/logger.js';
|
|
18
|
+
import { getErrorMessage } from '../shared/error-handler.js';
|
|
12
19
|
// ES module equivalent of __dirname
|
|
13
20
|
const __filename = fileURLToPath(import.meta.url);
|
|
14
21
|
const __dirname = path.dirname(__filename);
|
|
15
22
|
const PHOTON_DIR = path.join(os.homedir(), '.photon');
|
|
16
|
-
const
|
|
23
|
+
const logger = createLogger({ component: 'daemon-manager', minimal: true });
|
|
24
|
+
// Global daemon paths (single daemon for all photons)
|
|
25
|
+
const GLOBAL_PID_FILE = path.join(PHOTON_DIR, 'daemon.pid');
|
|
26
|
+
const GLOBAL_LOG_FILE = path.join(PHOTON_DIR, 'daemon.log');
|
|
17
27
|
/**
|
|
18
|
-
*
|
|
28
|
+
* Get global socket path for the Photon daemon
|
|
19
29
|
*/
|
|
20
|
-
function
|
|
21
|
-
if (
|
|
22
|
-
|
|
30
|
+
export function getGlobalSocketPath() {
|
|
31
|
+
if (process.platform === 'win32') {
|
|
32
|
+
return '\\\\.\\pipe\\photon-daemon';
|
|
23
33
|
}
|
|
34
|
+
return path.join(PHOTON_DIR, 'daemon.sock');
|
|
24
35
|
}
|
|
25
36
|
/**
|
|
26
|
-
* Get
|
|
37
|
+
* Get socket path - now returns global socket regardless of photonName
|
|
38
|
+
* @deprecated Use getGlobalSocketPath() directly. photonName parameter is ignored.
|
|
27
39
|
*/
|
|
28
|
-
function
|
|
29
|
-
return
|
|
40
|
+
export function getSocketPath(_photonName) {
|
|
41
|
+
return getGlobalSocketPath();
|
|
30
42
|
}
|
|
31
43
|
/**
|
|
32
|
-
*
|
|
44
|
+
* Ensure photon directory exists
|
|
33
45
|
*/
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
return `\\\\.\\pipe\\photon-${photonName}`;
|
|
46
|
+
function ensurePhotonDir() {
|
|
47
|
+
if (!fs.existsSync(PHOTON_DIR)) {
|
|
48
|
+
fs.mkdirSync(PHOTON_DIR, { recursive: true });
|
|
38
49
|
}
|
|
39
|
-
return path.join(DAEMON_DIR, `${photonName}.sock`);
|
|
40
50
|
}
|
|
41
51
|
/**
|
|
42
|
-
* Check if daemon is running
|
|
52
|
+
* Check if global daemon is running
|
|
43
53
|
*/
|
|
44
|
-
export function
|
|
45
|
-
|
|
46
|
-
if (!fs.existsSync(pidFile)) {
|
|
54
|
+
export function isGlobalDaemonRunning() {
|
|
55
|
+
if (!fs.existsSync(GLOBAL_PID_FILE)) {
|
|
47
56
|
return false;
|
|
48
57
|
}
|
|
49
58
|
try {
|
|
50
|
-
const pid = parseInt(fs.readFileSync(
|
|
59
|
+
const pid = parseInt(fs.readFileSync(GLOBAL_PID_FILE, 'utf-8').trim(), 10);
|
|
51
60
|
// Check if process exists using kill signal 0 (doesn't actually kill)
|
|
52
61
|
process.kill(pid, 0);
|
|
53
62
|
return true;
|
|
54
63
|
}
|
|
55
|
-
catch
|
|
64
|
+
catch {
|
|
56
65
|
// Process doesn't exist or we don't have permission
|
|
57
66
|
// Clean up stale PID file
|
|
58
|
-
|
|
67
|
+
try {
|
|
68
|
+
fs.unlinkSync(GLOBAL_PID_FILE);
|
|
69
|
+
}
|
|
70
|
+
catch {
|
|
71
|
+
// Ignore cleanup errors
|
|
72
|
+
}
|
|
59
73
|
return false;
|
|
60
74
|
}
|
|
61
75
|
}
|
|
62
76
|
/**
|
|
63
|
-
*
|
|
77
|
+
* Check if daemon is running
|
|
78
|
+
* @deprecated Use isGlobalDaemonRunning(). photonName parameter is ignored.
|
|
64
79
|
*/
|
|
65
|
-
export function
|
|
66
|
-
|
|
67
|
-
|
|
80
|
+
export function isDaemonRunning(_photonName) {
|
|
81
|
+
return isGlobalDaemonRunning();
|
|
82
|
+
}
|
|
83
|
+
/**
|
|
84
|
+
* Get global daemon status
|
|
85
|
+
*/
|
|
86
|
+
export function getGlobalDaemonStatus() {
|
|
87
|
+
if (!isGlobalDaemonRunning()) {
|
|
68
88
|
return {
|
|
69
89
|
running: false,
|
|
70
|
-
photonName,
|
|
90
|
+
photonName: 'global',
|
|
71
91
|
};
|
|
72
92
|
}
|
|
73
|
-
const pid = parseInt(fs.readFileSync(
|
|
93
|
+
const pid = parseInt(fs.readFileSync(GLOBAL_PID_FILE, 'utf-8').trim(), 10);
|
|
74
94
|
return {
|
|
75
95
|
running: true,
|
|
76
96
|
pid,
|
|
77
|
-
photonName,
|
|
97
|
+
photonName: 'global',
|
|
78
98
|
};
|
|
79
99
|
}
|
|
80
100
|
/**
|
|
81
|
-
*
|
|
101
|
+
* Get daemon status
|
|
102
|
+
* @deprecated Use getGlobalDaemonStatus(). photonName parameter is ignored.
|
|
82
103
|
*/
|
|
83
|
-
export
|
|
84
|
-
|
|
85
|
-
|
|
104
|
+
export function getDaemonStatus(_photonName) {
|
|
105
|
+
return getGlobalDaemonStatus();
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Start the global Photon daemon if not already running
|
|
109
|
+
*/
|
|
110
|
+
export async function startGlobalDaemon(quiet = false) {
|
|
111
|
+
ensurePhotonDir();
|
|
112
|
+
if (isGlobalDaemonRunning()) {
|
|
86
113
|
if (!quiet) {
|
|
87
|
-
|
|
114
|
+
logger.debug('Global daemon already running');
|
|
88
115
|
}
|
|
89
116
|
return;
|
|
90
117
|
}
|
|
91
|
-
const
|
|
92
|
-
const socketPath = getSocketPath(photonName);
|
|
118
|
+
const socketPath = getGlobalSocketPath();
|
|
93
119
|
// Clean up old socket file if it exists
|
|
94
120
|
if (fs.existsSync(socketPath) && process.platform !== 'win32') {
|
|
95
121
|
fs.unlinkSync(socketPath);
|
|
96
122
|
}
|
|
97
123
|
// Spawn daemon process
|
|
98
|
-
// The daemon server will be a separate Node process running the photon
|
|
99
124
|
const daemonScript = path.join(__dirname, 'server.js');
|
|
100
125
|
// Log daemon output to file for debugging
|
|
101
|
-
const
|
|
102
|
-
|
|
103
|
-
const child = spawn(process.execPath, [daemonScript,
|
|
126
|
+
const logStream = fs.openSync(GLOBAL_LOG_FILE, 'a');
|
|
127
|
+
// Global daemon doesn't need photonName/photonPath arguments
|
|
128
|
+
const child = spawn(process.execPath, [daemonScript, socketPath], {
|
|
104
129
|
detached: true,
|
|
105
130
|
stdio: ['ignore', logStream, logStream],
|
|
106
131
|
env: { ...process.env, PHOTON_DAEMON: 'true' },
|
|
@@ -108,48 +133,64 @@ export async function startDaemon(photonName, photonPath, quiet = false) {
|
|
|
108
133
|
// Detach the child process so it can continue running independently
|
|
109
134
|
child.unref();
|
|
110
135
|
// Write PID file
|
|
111
|
-
fs.writeFileSync(
|
|
136
|
+
fs.writeFileSync(GLOBAL_PID_FILE, child.pid.toString());
|
|
112
137
|
if (!quiet) {
|
|
113
|
-
|
|
138
|
+
logger.info('Started global Photon daemon', { pid: child.pid });
|
|
114
139
|
}
|
|
115
140
|
// Wait a bit for daemon to initialize
|
|
116
|
-
await new Promise(resolve => setTimeout(resolve, 500));
|
|
141
|
+
await new Promise((resolve) => setTimeout(resolve, 500));
|
|
142
|
+
}
|
|
143
|
+
/**
|
|
144
|
+
* Start daemon - ensures global daemon is running
|
|
145
|
+
* @deprecated Use startGlobalDaemon(). photonName/photonPath parameters are ignored.
|
|
146
|
+
*/
|
|
147
|
+
export async function startDaemon(_photonName, _photonPath, quiet = false) {
|
|
148
|
+
return startGlobalDaemon(quiet);
|
|
149
|
+
}
|
|
150
|
+
/**
|
|
151
|
+
* Ensure daemon is running, start if needed
|
|
152
|
+
*/
|
|
153
|
+
export async function ensureDaemon(quiet = true) {
|
|
154
|
+
if (!isGlobalDaemonRunning()) {
|
|
155
|
+
await startGlobalDaemon(quiet);
|
|
156
|
+
}
|
|
117
157
|
}
|
|
118
158
|
/**
|
|
119
|
-
* Stop
|
|
159
|
+
* Stop the global daemon
|
|
120
160
|
*/
|
|
121
|
-
export function
|
|
122
|
-
const
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
console.error(`[daemon] No daemon running for ${photonName}`);
|
|
161
|
+
export function stopGlobalDaemon() {
|
|
162
|
+
const socketPath = getGlobalSocketPath();
|
|
163
|
+
if (!fs.existsSync(GLOBAL_PID_FILE)) {
|
|
164
|
+
logger.warn('No global daemon running');
|
|
126
165
|
return;
|
|
127
166
|
}
|
|
128
167
|
try {
|
|
129
|
-
const pid = parseInt(fs.readFileSync(
|
|
168
|
+
const pid = parseInt(fs.readFileSync(GLOBAL_PID_FILE, 'utf-8').trim(), 10);
|
|
130
169
|
// Send SIGTERM to gracefully shut down
|
|
131
170
|
process.kill(pid, 'SIGTERM');
|
|
132
171
|
// Clean up PID file
|
|
133
|
-
fs.unlinkSync(
|
|
172
|
+
fs.unlinkSync(GLOBAL_PID_FILE);
|
|
134
173
|
// Clean up socket file (Unix only)
|
|
135
174
|
if (fs.existsSync(socketPath) && process.platform !== 'win32') {
|
|
136
175
|
fs.unlinkSync(socketPath);
|
|
137
176
|
}
|
|
138
|
-
|
|
177
|
+
logger.info('Stopped global daemon', { pid });
|
|
139
178
|
}
|
|
140
179
|
catch (error) {
|
|
141
|
-
|
|
180
|
+
logger.error('Error stopping global daemon', { error: getErrorMessage(error) });
|
|
142
181
|
}
|
|
143
182
|
}
|
|
144
183
|
/**
|
|
145
|
-
* Stop
|
|
184
|
+
* Stop daemon
|
|
185
|
+
* @deprecated Use stopGlobalDaemon(). photonName parameter is ignored.
|
|
186
|
+
*/
|
|
187
|
+
export function stopDaemon(_photonName) {
|
|
188
|
+
return stopGlobalDaemon();
|
|
189
|
+
}
|
|
190
|
+
/**
|
|
191
|
+
* Stop all daemons (now just stops the single global daemon)
|
|
146
192
|
*/
|
|
147
193
|
export function stopAllDaemons() {
|
|
148
|
-
|
|
149
|
-
const pidFiles = fs.readdirSync(DAEMON_DIR).filter(f => f.endsWith('.pid'));
|
|
150
|
-
for (const pidFile of pidFiles) {
|
|
151
|
-
const photonName = pidFile.replace('.pid', '');
|
|
152
|
-
stopDaemon(photonName);
|
|
153
|
-
}
|
|
194
|
+
stopGlobalDaemon();
|
|
154
195
|
}
|
|
155
196
|
//# sourceMappingURL=manager.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/daemon/manager.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"manager.js","sourceRoot":"","sources":["../../src/daemon/manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,27 +3,46 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Defines message types for IPC communication between CLI client and daemon server
|
|
5
5
|
*/
|
|
6
|
+
import type { PhotonMCPClass } from '@portel/photon-core';
|
|
6
7
|
/**
|
|
7
8
|
* Message from CLI client to daemon server
|
|
8
9
|
*/
|
|
9
10
|
export interface DaemonRequest {
|
|
10
|
-
type: 'command' | 'ping' | 'shutdown' | 'prompt_response';
|
|
11
|
+
type: 'command' | 'ping' | 'shutdown' | 'reload' | 'prompt_response' | 'subscribe' | 'unsubscribe' | 'publish' | 'lock' | 'unlock' | 'schedule' | 'unschedule' | 'list_jobs' | 'list_locks' | 'get_events_since';
|
|
11
12
|
id: string;
|
|
13
|
+
/** Photon name for routing to correct SessionManager (required for multi-photon daemon) */
|
|
14
|
+
photonName?: string;
|
|
15
|
+
/** Path to photon file for reload command or initial photon setup */
|
|
16
|
+
photonPath?: string;
|
|
12
17
|
sessionId?: string;
|
|
13
|
-
clientType?: 'cli' | 'mcp' | 'code-mode';
|
|
18
|
+
clientType?: 'cli' | 'mcp' | 'code-mode' | 'beam';
|
|
14
19
|
method?: string;
|
|
15
|
-
args?: Record<string,
|
|
20
|
+
args?: Record<string, unknown>;
|
|
16
21
|
/** Response to a prompt request */
|
|
17
22
|
promptValue?: string | boolean | null;
|
|
23
|
+
/** Channel name for pub/sub operations */
|
|
24
|
+
channel?: string;
|
|
25
|
+
/** Message payload for publish operations */
|
|
26
|
+
message?: unknown;
|
|
27
|
+
/** Lock name for lock/unlock operations */
|
|
28
|
+
lockName?: string;
|
|
29
|
+
/** Lock timeout in ms (default: 30000) */
|
|
30
|
+
lockTimeout?: number;
|
|
31
|
+
/** Job ID for schedule operations */
|
|
32
|
+
jobId?: string;
|
|
33
|
+
/** Cron expression for scheduled jobs */
|
|
34
|
+
cron?: string;
|
|
35
|
+
/** Last event ID received by client (for replay on reconnect) */
|
|
36
|
+
lastEventId?: string;
|
|
18
37
|
}
|
|
19
38
|
/**
|
|
20
39
|
* Response from daemon server to CLI client
|
|
21
40
|
*/
|
|
22
41
|
export interface DaemonResponse {
|
|
23
|
-
type: 'result' | 'error' | 'pong' | 'prompt';
|
|
42
|
+
type: 'result' | 'error' | 'pong' | 'prompt' | 'channel_message' | 'refresh_needed';
|
|
24
43
|
id: string;
|
|
25
44
|
success?: boolean;
|
|
26
|
-
data?:
|
|
45
|
+
data?: unknown;
|
|
27
46
|
error?: string;
|
|
28
47
|
/** Prompt request details (when type === 'prompt') */
|
|
29
48
|
prompt?: {
|
|
@@ -35,6 +54,12 @@ export interface DaemonResponse {
|
|
|
35
54
|
label: string;
|
|
36
55
|
}>;
|
|
37
56
|
};
|
|
57
|
+
/** Channel name for channel_message type */
|
|
58
|
+
channel?: string;
|
|
59
|
+
/** Message payload for channel_message type */
|
|
60
|
+
message?: unknown;
|
|
61
|
+
/** Event ID for tracking (for replay support) */
|
|
62
|
+
eventId?: string;
|
|
38
63
|
}
|
|
39
64
|
/**
|
|
40
65
|
* Daemon status information
|
|
@@ -52,9 +77,40 @@ export interface DaemonStatus {
|
|
|
52
77
|
*/
|
|
53
78
|
export interface PhotonSession {
|
|
54
79
|
id: string;
|
|
55
|
-
instance:
|
|
80
|
+
instance: PhotonMCPClass;
|
|
56
81
|
createdAt: number;
|
|
57
82
|
lastActivity: number;
|
|
58
83
|
clientType?: string;
|
|
59
84
|
}
|
|
85
|
+
/**
|
|
86
|
+
* Scheduled job information
|
|
87
|
+
*/
|
|
88
|
+
export interface ScheduledJob {
|
|
89
|
+
id: string;
|
|
90
|
+
method: string;
|
|
91
|
+
args?: Record<string, unknown>;
|
|
92
|
+
cron: string;
|
|
93
|
+
lastRun?: number;
|
|
94
|
+
nextRun?: number;
|
|
95
|
+
runCount: number;
|
|
96
|
+
createdAt: number;
|
|
97
|
+
createdBy?: string;
|
|
98
|
+
}
|
|
99
|
+
/**
|
|
100
|
+
* Lock information
|
|
101
|
+
*/
|
|
102
|
+
export interface LockInfo {
|
|
103
|
+
name: string;
|
|
104
|
+
holder: string;
|
|
105
|
+
acquiredAt: number;
|
|
106
|
+
expiresAt: number;
|
|
107
|
+
}
|
|
108
|
+
/**
|
|
109
|
+
* Runtime validation for DaemonRequest
|
|
110
|
+
*/
|
|
111
|
+
export declare function isValidDaemonRequest(obj: unknown): obj is DaemonRequest;
|
|
112
|
+
/**
|
|
113
|
+
* Runtime validation for DaemonResponse
|
|
114
|
+
*/
|
|
115
|
+
export declare function isValidDaemonResponse(obj: unknown): obj is DaemonResponse;
|
|
60
116
|
//# sourceMappingURL=protocol.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/daemon/protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B,IAAI,
|
|
1
|
+
{"version":3,"file":"protocol.d.ts","sourceRoot":"","sources":["../../src/daemon/protocol.ts"],"names":[],"mappings":"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"}
|
package/dist/daemon/protocol.js
CHANGED
|
@@ -3,5 +3,80 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Defines message types for IPC communication between CLI client and daemon server
|
|
5
5
|
*/
|
|
6
|
-
|
|
6
|
+
/**
|
|
7
|
+
* Runtime validation for DaemonRequest
|
|
8
|
+
*/
|
|
9
|
+
export function isValidDaemonRequest(obj) {
|
|
10
|
+
if (typeof obj !== 'object' || obj === null)
|
|
11
|
+
return false;
|
|
12
|
+
const req = obj;
|
|
13
|
+
if (typeof req.id !== 'string')
|
|
14
|
+
return false;
|
|
15
|
+
const validTypes = [
|
|
16
|
+
'command',
|
|
17
|
+
'ping',
|
|
18
|
+
'shutdown',
|
|
19
|
+
'reload',
|
|
20
|
+
'prompt_response',
|
|
21
|
+
'subscribe',
|
|
22
|
+
'unsubscribe',
|
|
23
|
+
'publish',
|
|
24
|
+
'lock',
|
|
25
|
+
'unlock',
|
|
26
|
+
'schedule',
|
|
27
|
+
'unschedule',
|
|
28
|
+
'list_jobs',
|
|
29
|
+
'list_locks',
|
|
30
|
+
'get_events_since',
|
|
31
|
+
];
|
|
32
|
+
if (!validTypes.includes(req.type))
|
|
33
|
+
return false;
|
|
34
|
+
if (req.type === 'command') {
|
|
35
|
+
if (typeof req.method !== 'string')
|
|
36
|
+
return false;
|
|
37
|
+
}
|
|
38
|
+
// Channel operations require a channel name
|
|
39
|
+
if (['subscribe', 'unsubscribe', 'publish'].includes(req.type)) {
|
|
40
|
+
if (typeof req.channel !== 'string')
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
// Lock operations require a lock name
|
|
44
|
+
if (['lock', 'unlock'].includes(req.type)) {
|
|
45
|
+
if (typeof req.lockName !== 'string')
|
|
46
|
+
return false;
|
|
47
|
+
}
|
|
48
|
+
// Schedule operations require jobId, method, and cron
|
|
49
|
+
if (req.type === 'schedule') {
|
|
50
|
+
if (typeof req.jobId !== 'string')
|
|
51
|
+
return false;
|
|
52
|
+
if (typeof req.method !== 'string')
|
|
53
|
+
return false;
|
|
54
|
+
if (typeof req.cron !== 'string')
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
// Unschedule requires jobId
|
|
58
|
+
if (req.type === 'unschedule') {
|
|
59
|
+
if (typeof req.jobId !== 'string')
|
|
60
|
+
return false;
|
|
61
|
+
}
|
|
62
|
+
// Reload requires photonPath
|
|
63
|
+
if (req.type === 'reload') {
|
|
64
|
+
if (typeof req.photonPath !== 'string')
|
|
65
|
+
return false;
|
|
66
|
+
}
|
|
67
|
+
return true;
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Runtime validation for DaemonResponse
|
|
71
|
+
*/
|
|
72
|
+
export function isValidDaemonResponse(obj) {
|
|
73
|
+
if (typeof obj !== 'object' || obj === null)
|
|
74
|
+
return false;
|
|
75
|
+
const res = obj;
|
|
76
|
+
if (typeof res.id !== 'string')
|
|
77
|
+
return false;
|
|
78
|
+
if (!['result', 'error', 'pong', 'prompt', 'channel_message', 'refresh_needed'].includes(res.type))
|
|
79
|
+
return false;
|
|
80
|
+
return true;
|
|
81
|
+
}
|
|
7
82
|
//# sourceMappingURL=protocol.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/daemon/protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG"}
|
|
1
|
+
{"version":3,"file":"protocol.js","sourceRoot":"","sources":["../../src/daemon/protocol.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AA2HH;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAAC,GAAY;IAC/C,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,GAA6B,CAAC;IAE1C,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAE7C,MAAM,UAAU,GAAG;QACjB,SAAS;QACT,MAAM;QACN,UAAU;QACV,QAAQ;QACR,iBAAiB;QACjB,WAAW;QACX,aAAa;QACb,SAAS;QACT,MAAM;QACN,QAAQ;QACR,UAAU;QACV,YAAY;QACZ,WAAW;QACX,YAAY;QACZ,kBAAkB;KACnB,CAAC;IACF,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAc,CAAC;QAAE,OAAO,KAAK,CAAC;IAE3D,IAAI,GAAG,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;QAC3B,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IACnD,CAAC;IAED,4CAA4C;IAC5C,IAAI,CAAC,WAAW,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAc,CAAC,EAAE,CAAC;QACzE,IAAI,OAAO,GAAG,CAAC,OAAO,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IACpD,CAAC;IAED,sCAAsC;IACtC,IAAI,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAc,CAAC,EAAE,CAAC;QACpD,IAAI,OAAO,GAAG,CAAC,QAAQ,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IACrD,CAAC;IAED,sDAAsD;IACtD,IAAI,GAAG,CAAC,IAAI,KAAK,UAAU,EAAE,CAAC;QAC5B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QAChD,IAAI,OAAO,GAAG,CAAC,MAAM,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;QACjD,IAAI,OAAO,GAAG,CAAC,IAAI,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IACjD,CAAC;IAED,4BAA4B;IAC5B,IAAI,GAAG,CAAC,IAAI,KAAK,YAAY,EAAE,CAAC;QAC9B,IAAI,OAAO,GAAG,CAAC,KAAK,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IAClD,CAAC;IAED,6BAA6B;IAC7B,IAAI,GAAG,CAAC,IAAI,KAAK,QAAQ,EAAE,CAAC;QAC1B,IAAI,OAAO,GAAG,CAAC,UAAU,KAAK,QAAQ;YAAE,OAAO,KAAK,CAAC;IACvD,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,qBAAqB,CAAC,GAAY;IAChD,IAAI,OAAO,GAAG,KAAK,QAAQ,IAAI,GAAG,KAAK,IAAI;QAAE,OAAO,KAAK,CAAC;IAC1D,MAAM,GAAG,GAAG,GAA8B,CAAC;IAE3C,IAAI,OAAO,GAAG,CAAC,EAAE,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC7C,IACE,CAAC,CAAC,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAE,QAAQ,EAAE,iBAAiB,EAAE,gBAAgB,CAAC,CAAC,QAAQ,CAClF,GAAG,CAAC,IAAc,CACnB;QAED,OAAO,KAAK,CAAC;IAEf,OAAO,IAAI,CAAC;AACd,CAAC"}
|
package/dist/daemon/server.d.ts
CHANGED
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
|
-
* Daemon Server
|
|
3
|
+
* Global Photon Daemon Server
|
|
4
4
|
*
|
|
5
|
-
*
|
|
6
|
-
* -
|
|
7
|
-
* -
|
|
8
|
-
* -
|
|
9
|
-
* -
|
|
5
|
+
* Single daemon process for all photons.
|
|
6
|
+
* - Listens on global Unix socket / named pipe (~/.photon/daemon.sock)
|
|
7
|
+
* - Handles requests for multiple photons via photonName field
|
|
8
|
+
* - Lazy-initializes SessionManagers per photon on first request
|
|
9
|
+
* - Provides pub/sub, locks, scheduled jobs, and webhooks
|
|
10
10
|
*/
|
|
11
11
|
export {};
|
|
12
12
|
//# sourceMappingURL=server.d.ts.map
|