@cleocode/mcp-server 0.86.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.
- package/LICENSE +21 -0
- package/README.md +306 -0
- package/dist/domains/index.d.ts +16 -0
- package/dist/domains/index.d.ts.map +1 -0
- package/dist/domains/index.js +16 -0
- package/dist/domains/index.js.map +1 -0
- package/dist/domains/lifecycle.d.ts +147 -0
- package/dist/domains/lifecycle.d.ts.map +1 -0
- package/dist/domains/lifecycle.js +452 -0
- package/dist/domains/lifecycle.js.map +1 -0
- package/dist/domains/orchestrate.d.ts +133 -0
- package/dist/domains/orchestrate.d.ts.map +1 -0
- package/dist/domains/orchestrate.js +465 -0
- package/dist/domains/orchestrate.js.map +1 -0
- package/dist/domains/release.d.ts +109 -0
- package/dist/domains/release.d.ts.map +1 -0
- package/dist/domains/release.js +400 -0
- package/dist/domains/release.js.map +1 -0
- package/dist/domains/research.d.ts +139 -0
- package/dist/domains/research.d.ts.map +1 -0
- package/dist/domains/research.js +606 -0
- package/dist/domains/research.js.map +1 -0
- package/dist/domains/session.d.ts +129 -0
- package/dist/domains/session.d.ts.map +1 -0
- package/dist/domains/session.js +433 -0
- package/dist/domains/session.js.map +1 -0
- package/dist/domains/system.d.ts +92 -0
- package/dist/domains/system.d.ts.map +1 -0
- package/dist/domains/system.js +473 -0
- package/dist/domains/system.js.map +1 -0
- package/dist/domains/tasks.d.ts +180 -0
- package/dist/domains/tasks.d.ts.map +1 -0
- package/dist/domains/tasks.js +704 -0
- package/dist/domains/tasks.js.map +1 -0
- package/dist/domains/validate.d.ts +150 -0
- package/dist/domains/validate.d.ts.map +1 -0
- package/dist/domains/validate.js +568 -0
- package/dist/domains/validate.js.map +1 -0
- package/dist/gateways/mutate.d.ts +100 -0
- package/dist/gateways/mutate.d.ts.map +1 -0
- package/dist/gateways/mutate.js +937 -0
- package/dist/gateways/mutate.js.map +1 -0
- package/dist/gateways/query.d.ts +91 -0
- package/dist/gateways/query.d.ts.map +1 -0
- package/dist/gateways/query.js +245 -0
- package/dist/gateways/query.js.map +1 -0
- package/dist/index.d.ts +21 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +299 -0
- package/dist/index.js.map +1 -0
- package/dist/lib/audit.d.ts +118 -0
- package/dist/lib/audit.d.ts.map +1 -0
- package/dist/lib/audit.js +311 -0
- package/dist/lib/audit.js.map +1 -0
- package/dist/lib/background-jobs.d.ts +86 -0
- package/dist/lib/background-jobs.d.ts.map +1 -0
- package/dist/lib/background-jobs.js +183 -0
- package/dist/lib/background-jobs.js.map +1 -0
- package/dist/lib/cache.d.ts +78 -0
- package/dist/lib/cache.d.ts.map +1 -0
- package/dist/lib/cache.js +204 -0
- package/dist/lib/cache.js.map +1 -0
- package/dist/lib/command-builder.d.ts +52 -0
- package/dist/lib/command-builder.d.ts.map +1 -0
- package/dist/lib/command-builder.js +280 -0
- package/dist/lib/command-builder.js.map +1 -0
- package/dist/lib/config.d.ts +42 -0
- package/dist/lib/config.d.ts.map +1 -0
- package/dist/lib/config.js +248 -0
- package/dist/lib/config.js.map +1 -0
- package/dist/lib/defaults.d.ts +115 -0
- package/dist/lib/defaults.d.ts.map +1 -0
- package/dist/lib/defaults.js +61 -0
- package/dist/lib/defaults.js.map +1 -0
- package/dist/lib/error-handler.d.ts +101 -0
- package/dist/lib/error-handler.d.ts.map +1 -0
- package/dist/lib/error-handler.js +277 -0
- package/dist/lib/error-handler.js.map +1 -0
- package/dist/lib/executor.d.ts +110 -0
- package/dist/lib/executor.d.ts.map +1 -0
- package/dist/lib/executor.js +362 -0
- package/dist/lib/executor.js.map +1 -0
- package/dist/lib/exit-codes.d.ts +190 -0
- package/dist/lib/exit-codes.d.ts.map +1 -0
- package/dist/lib/exit-codes.js +1027 -0
- package/dist/lib/exit-codes.js.map +1 -0
- package/dist/lib/formatter.d.ts +196 -0
- package/dist/lib/formatter.d.ts.map +1 -0
- package/dist/lib/formatter.js +260 -0
- package/dist/lib/formatter.js.map +1 -0
- package/dist/lib/gate-validators.d.ts +103 -0
- package/dist/lib/gate-validators.d.ts.map +1 -0
- package/dist/lib/gate-validators.js +689 -0
- package/dist/lib/gate-validators.js.map +1 -0
- package/dist/lib/manifest-parser.d.ts +61 -0
- package/dist/lib/manifest-parser.d.ts.map +1 -0
- package/dist/lib/manifest-parser.js +338 -0
- package/dist/lib/manifest-parser.js.map +1 -0
- package/dist/lib/manifest.d.ts +177 -0
- package/dist/lib/manifest.d.ts.map +1 -0
- package/dist/lib/manifest.js +301 -0
- package/dist/lib/manifest.js.map +1 -0
- package/dist/lib/protocol-enforcement.d.ts +105 -0
- package/dist/lib/protocol-enforcement.d.ts.map +1 -0
- package/dist/lib/protocol-enforcement.js +331 -0
- package/dist/lib/protocol-enforcement.js.map +1 -0
- package/dist/lib/protocol-rules.d.ts +55 -0
- package/dist/lib/protocol-rules.d.ts.map +1 -0
- package/dist/lib/protocol-rules.js +760 -0
- package/dist/lib/protocol-rules.js.map +1 -0
- package/dist/lib/rate-limiter.d.ts +110 -0
- package/dist/lib/rate-limiter.d.ts.map +1 -0
- package/dist/lib/rate-limiter.js +208 -0
- package/dist/lib/rate-limiter.js.map +1 -0
- package/dist/lib/router.d.ts +126 -0
- package/dist/lib/router.d.ts.map +1 -0
- package/dist/lib/router.js +276 -0
- package/dist/lib/router.js.map +1 -0
- package/dist/lib/schema.d.ts +55 -0
- package/dist/lib/schema.d.ts.map +1 -0
- package/dist/lib/schema.js +70 -0
- package/dist/lib/schema.js.map +1 -0
- package/dist/lib/security.d.ts +156 -0
- package/dist/lib/security.d.ts.map +1 -0
- package/dist/lib/security.js +347 -0
- package/dist/lib/security.js.map +1 -0
- package/dist/lib/verification-gates.d.ts +287 -0
- package/dist/lib/verification-gates.d.ts.map +1 -0
- package/dist/lib/verification-gates.js +548 -0
- package/dist/lib/verification-gates.js.map +1 -0
- package/dist/types/domain.d.ts +29 -0
- package/dist/types/domain.d.ts.map +1 -0
- package/dist/types/domain.js +7 -0
- package/dist/types/domain.js.map +1 -0
- package/dist/types/error.d.ts +101 -0
- package/dist/types/error.d.ts.map +1 -0
- package/dist/types/error.js +61 -0
- package/dist/types/error.js.map +1 -0
- package/dist/types/gateway.d.ts +78 -0
- package/dist/types/gateway.d.ts.map +1 -0
- package/dist/types/gateway.js +7 -0
- package/dist/types/gateway.js.map +1 -0
- package/dist/types/index.d.ts +21 -0
- package/dist/types/index.d.ts.map +1 -0
- package/dist/types/index.js +11 -0
- package/dist/types/index.js.map +1 -0
- package/dist/types/operations/lifecycle.d.ts +140 -0
- package/dist/types/operations/lifecycle.d.ts.map +1 -0
- package/dist/types/operations/lifecycle.js +8 -0
- package/dist/types/operations/lifecycle.js.map +1 -0
- package/dist/types/operations/orchestrate.d.ts +140 -0
- package/dist/types/operations/orchestrate.d.ts.map +1 -0
- package/dist/types/operations/orchestrate.js +8 -0
- package/dist/types/operations/orchestrate.js.map +1 -0
- package/dist/types/operations/release.d.ts +97 -0
- package/dist/types/operations/release.d.ts.map +1 -0
- package/dist/types/operations/release.js +7 -0
- package/dist/types/operations/release.js.map +1 -0
- package/dist/types/operations/research.d.ts +122 -0
- package/dist/types/operations/research.d.ts.map +1 -0
- package/dist/types/operations/research.js +8 -0
- package/dist/types/operations/research.js.map +1 -0
- package/dist/types/operations/session.d.ts +108 -0
- package/dist/types/operations/session.d.ts.map +1 -0
- package/dist/types/operations/session.js +8 -0
- package/dist/types/operations/session.js.map +1 -0
- package/dist/types/operations/system.d.ts +147 -0
- package/dist/types/operations/system.d.ts.map +1 -0
- package/dist/types/operations/system.js +8 -0
- package/dist/types/operations/system.js.map +1 -0
- package/dist/types/operations/tasks.d.ts +186 -0
- package/dist/types/operations/tasks.d.ts.map +1 -0
- package/dist/types/operations/tasks.js +8 -0
- package/dist/types/operations/tasks.js.map +1 -0
- package/dist/types/operations/validate.d.ts +170 -0
- package/dist/types/operations/validate.d.ts.map +1 -0
- package/dist/types/operations/validate.js +8 -0
- package/dist/types/operations/validate.js.map +1 -0
- package/package.json +67 -0
- package/schemas/IMPLEMENTATION-SUMMARY.md +250 -0
- package/schemas/README.md +284 -0
- package/schemas/common/error.schema.json +54 -0
- package/schemas/common/meta.schema.json +39 -0
- package/schemas/common/pagination.schema.json +32 -0
- package/schemas/index.json +159 -0
- package/schemas/requests/lifecycle/check.schema.json +20 -0
- package/schemas/requests/lifecycle/gate.fail.schema.json +25 -0
- package/schemas/requests/lifecycle/gate.pass.schema.json +28 -0
- package/schemas/requests/lifecycle/gates.schema.json +15 -0
- package/schemas/requests/lifecycle/history.schema.json +15 -0
- package/schemas/requests/lifecycle/prerequisites.schema.json +15 -0
- package/schemas/requests/lifecycle/progress.schema.json +29 -0
- package/schemas/requests/lifecycle/reset.schema.json +25 -0
- package/schemas/requests/lifecycle/skip.schema.json +25 -0
- package/schemas/requests/lifecycle/status.schema.json +23 -0
- package/schemas/requests/orchestrate/analyze.schema.json +15 -0
- package/schemas/requests/orchestrate/context.schema.json +13 -0
- package/schemas/requests/orchestrate/next.schema.json +15 -0
- package/schemas/requests/orchestrate/parallel.end.schema.json +20 -0
- package/schemas/requests/orchestrate/parallel.start.schema.json +20 -0
- package/schemas/requests/orchestrate/ready.schema.json +15 -0
- package/schemas/requests/orchestrate/skill.list.schema.json +13 -0
- package/schemas/requests/orchestrate/spawn.schema.json +25 -0
- package/schemas/requests/orchestrate/startup.schema.json +15 -0
- package/schemas/requests/orchestrate/status.schema.json +15 -0
- package/schemas/requests/orchestrate/validate.schema.json +15 -0
- package/schemas/requests/orchestrate/waves.schema.json +15 -0
- package/schemas/requests/release/changelog.schema.json +23 -0
- package/schemas/requests/release/commit.schema.json +22 -0
- package/schemas/requests/release/gates.run.schema.json +17 -0
- package/schemas/requests/release/prepare.schema.json +20 -0
- package/schemas/requests/release/push.schema.json +20 -0
- package/schemas/requests/release/rollback.schema.json +20 -0
- package/schemas/requests/release/tag.schema.json +19 -0
- package/schemas/requests/research/inject.schema.json +24 -0
- package/schemas/requests/research/link.schema.json +25 -0
- package/schemas/requests/research/list.schema.json +19 -0
- package/schemas/requests/research/manifest.append.schema.json +20 -0
- package/schemas/requests/research/manifest.archive.schema.json +19 -0
- package/schemas/requests/research/manifest.read.schema.json +21 -0
- package/schemas/requests/research/pending.schema.json +14 -0
- package/schemas/requests/research/query.schema.json +21 -0
- package/schemas/requests/research/show.schema.json +14 -0
- package/schemas/requests/research/stats.schema.json +14 -0
- package/schemas/requests/session/end.schema.json +13 -0
- package/schemas/requests/session/focus.clear.schema.json +7 -0
- package/schemas/requests/session/focus.get.schema.json +7 -0
- package/schemas/requests/session/focus.set.schema.json +15 -0
- package/schemas/requests/session/gc.schema.json +14 -0
- package/schemas/requests/session/history.schema.json +16 -0
- package/schemas/requests/session/list.schema.json +13 -0
- package/schemas/requests/session/resume.schema.json +14 -0
- package/schemas/requests/session/show.schema.json +14 -0
- package/schemas/requests/session/start.schema.json +23 -0
- package/schemas/requests/session/status.schema.json +7 -0
- package/schemas/requests/session/suspend.schema.json +13 -0
- package/schemas/requests/system/backup.schema.json +19 -0
- package/schemas/requests/system/cleanup.schema.json +20 -0
- package/schemas/requests/system/config.get.schema.json +14 -0
- package/schemas/requests/system/config.set.schema.json +24 -0
- package/schemas/requests/system/context.schema.json +7 -0
- package/schemas/requests/system/doctor.schema.json +7 -0
- package/schemas/requests/system/init.schema.json +18 -0
- package/schemas/requests/system/migrate.schema.json +19 -0
- package/schemas/requests/system/restore.schema.json +14 -0
- package/schemas/requests/system/stats.schema.json +7 -0
- package/schemas/requests/system/sync.schema.json +15 -0
- package/schemas/requests/system/version.schema.json +7 -0
- package/schemas/requests/tasks/analyze.schema.json +14 -0
- package/schemas/requests/tasks/archive.schema.json +19 -0
- package/schemas/requests/tasks/blockers.schema.json +15 -0
- package/schemas/requests/tasks/complete.schema.json +24 -0
- package/schemas/requests/tasks/create.schema.json +48 -0
- package/schemas/requests/tasks/delete.schema.json +20 -0
- package/schemas/requests/tasks/deps.schema.json +21 -0
- package/schemas/requests/tasks/exists.schema.json +15 -0
- package/schemas/requests/tasks/find.schema.json +22 -0
- package/schemas/requests/tasks/get.schema.json +15 -0
- package/schemas/requests/tasks/list.schema.json +26 -0
- package/schemas/requests/tasks/next.schema.json +21 -0
- package/schemas/requests/tasks/promote.schema.json +15 -0
- package/schemas/requests/tasks/reopen.schema.json +15 -0
- package/schemas/requests/tasks/reorder.schema.json +20 -0
- package/schemas/requests/tasks/reparent.schema.json +20 -0
- package/schemas/requests/tasks/tree.schema.json +21 -0
- package/schemas/requests/tasks/unarchive.schema.json +15 -0
- package/schemas/requests/tasks/update.schema.json +41 -0
- package/schemas/requests/validate/compliance.record.schema.json +20 -0
- package/schemas/requests/validate/compliance.summary.schema.json +18 -0
- package/schemas/requests/validate/compliance.violations.schema.json +19 -0
- package/schemas/requests/validate/manifest.schema.json +23 -0
- package/schemas/requests/validate/output.schema.json +19 -0
- package/schemas/requests/validate/protocol.schema.json +20 -0
- package/schemas/requests/validate/schema.schema.json +19 -0
- package/schemas/requests/validate/task.schema.json +21 -0
- package/schemas/requests/validate/test.coverage.schema.json +14 -0
- package/schemas/requests/validate/test.run.schema.json +22 -0
- package/schemas/requests/validate/test.status.schema.json +14 -0
- package/schemas/responses/common-error.schema.json +20 -0
- package/schemas/responses/common-success.schema.json +21 -0
- package/schemas/responses/lifecycle/check.schema.json +18 -0
- package/schemas/responses/lifecycle/gate.fail.schema.json +18 -0
- package/schemas/responses/lifecycle/gate.pass.schema.json +18 -0
- package/schemas/responses/lifecycle/gates.schema.json +18 -0
- package/schemas/responses/lifecycle/history.schema.json +18 -0
- package/schemas/responses/lifecycle/prerequisites.schema.json +18 -0
- package/schemas/responses/lifecycle/progress.schema.json +18 -0
- package/schemas/responses/lifecycle/reset.schema.json +18 -0
- package/schemas/responses/lifecycle/skip.schema.json +18 -0
- package/schemas/responses/lifecycle/status.schema.json +18 -0
- package/schemas/responses/orchestrate/analyze.schema.json +18 -0
- package/schemas/responses/orchestrate/context.schema.json +18 -0
- package/schemas/responses/orchestrate/next.schema.json +18 -0
- package/schemas/responses/orchestrate/parallel.end.schema.json +18 -0
- package/schemas/responses/orchestrate/parallel.start.schema.json +18 -0
- package/schemas/responses/orchestrate/ready.schema.json +18 -0
- package/schemas/responses/orchestrate/skill.list.schema.json +18 -0
- package/schemas/responses/orchestrate/spawn.schema.json +18 -0
- package/schemas/responses/orchestrate/startup.schema.json +18 -0
- package/schemas/responses/orchestrate/status.schema.json +18 -0
- package/schemas/responses/orchestrate/validate.schema.json +18 -0
- package/schemas/responses/orchestrate/waves.schema.json +18 -0
- package/schemas/responses/release/changelog.schema.json +18 -0
- package/schemas/responses/release/commit.schema.json +18 -0
- package/schemas/responses/release/gates.run.schema.json +18 -0
- package/schemas/responses/release/prepare.schema.json +18 -0
- package/schemas/responses/release/push.schema.json +18 -0
- package/schemas/responses/release/rollback.schema.json +18 -0
- package/schemas/responses/release/tag.schema.json +18 -0
- package/schemas/responses/research/inject.schema.json +18 -0
- package/schemas/responses/research/link.schema.json +18 -0
- package/schemas/responses/research/list.schema.json +18 -0
- package/schemas/responses/research/manifest.append.schema.json +18 -0
- package/schemas/responses/research/manifest.archive.schema.json +18 -0
- package/schemas/responses/research/manifest.read.schema.json +18 -0
- package/schemas/responses/research/pending.schema.json +18 -0
- package/schemas/responses/research/query.schema.json +18 -0
- package/schemas/responses/research/show.schema.json +18 -0
- package/schemas/responses/research/stats.schema.json +18 -0
- package/schemas/responses/session/end.schema.json +18 -0
- package/schemas/responses/session/focus.clear.schema.json +18 -0
- package/schemas/responses/session/focus.get.schema.json +18 -0
- package/schemas/responses/session/focus.set.schema.json +18 -0
- package/schemas/responses/session/gc.schema.json +18 -0
- package/schemas/responses/session/history.schema.json +18 -0
- package/schemas/responses/session/list.schema.json +18 -0
- package/schemas/responses/session/resume.schema.json +18 -0
- package/schemas/responses/session/show.schema.json +18 -0
- package/schemas/responses/session/start.schema.json +18 -0
- package/schemas/responses/session/status.schema.json +18 -0
- package/schemas/responses/session/suspend.schema.json +18 -0
- package/schemas/responses/system/backup.schema.json +18 -0
- package/schemas/responses/system/cleanup.schema.json +18 -0
- package/schemas/responses/system/config.get.schema.json +18 -0
- package/schemas/responses/system/config.set.schema.json +18 -0
- package/schemas/responses/system/context.schema.json +18 -0
- package/schemas/responses/system/doctor.schema.json +18 -0
- package/schemas/responses/system/init.schema.json +18 -0
- package/schemas/responses/system/migrate.schema.json +18 -0
- package/schemas/responses/system/restore.schema.json +18 -0
- package/schemas/responses/system/stats.schema.json +18 -0
- package/schemas/responses/system/sync.schema.json +18 -0
- package/schemas/responses/system/version.schema.json +18 -0
- package/schemas/responses/tasks/analyze.schema.json +18 -0
- package/schemas/responses/tasks/archive.schema.json +18 -0
- package/schemas/responses/tasks/blockers.schema.json +18 -0
- package/schemas/responses/tasks/complete.schema.json +18 -0
- package/schemas/responses/tasks/create.schema.json +18 -0
- package/schemas/responses/tasks/delete.schema.json +18 -0
- package/schemas/responses/tasks/deps.schema.json +18 -0
- package/schemas/responses/tasks/exists.schema.json +18 -0
- package/schemas/responses/tasks/find.schema.json +18 -0
- package/schemas/responses/tasks/get.schema.json +87 -0
- package/schemas/responses/tasks/list.schema.json +18 -0
- package/schemas/responses/tasks/next.schema.json +18 -0
- package/schemas/responses/tasks/promote.schema.json +18 -0
- package/schemas/responses/tasks/reopen.schema.json +18 -0
- package/schemas/responses/tasks/reorder.schema.json +18 -0
- package/schemas/responses/tasks/reparent.schema.json +18 -0
- package/schemas/responses/tasks/tree.schema.json +18 -0
- package/schemas/responses/tasks/unarchive.schema.json +18 -0
- package/schemas/responses/tasks/update.schema.json +18 -0
- package/schemas/responses/validate/compliance.record.schema.json +18 -0
- package/schemas/responses/validate/compliance.summary.schema.json +18 -0
- package/schemas/responses/validate/compliance.violations.schema.json +18 -0
- package/schemas/responses/validate/manifest.schema.json +18 -0
- package/schemas/responses/validate/output.schema.json +18 -0
- package/schemas/responses/validate/protocol.schema.json +18 -0
- package/schemas/responses/validate/schema.schema.json +18 -0
- package/schemas/responses/validate/task.schema.json +18 -0
- package/schemas/responses/validate/test.coverage.schema.json +18 -0
- package/schemas/responses/validate/test.run.schema.json +18 -0
- package/schemas/responses/validate/test.status.schema.json +18 -0
- package/server.json +53 -0
|
@@ -0,0 +1,129 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Domain Handler
|
|
3
|
+
*
|
|
4
|
+
* Implements all 17 session operations for CLEO MCP server:
|
|
5
|
+
* - Query (7): status, list, show, focus-show, focus.get, history, stats
|
|
6
|
+
* - Mutate (10): start, end, resume, switch, focus-set, focus.set, focus-clear, focus.clear, archive, cleanup, suspend, gc
|
|
7
|
+
*
|
|
8
|
+
* Each operation maps to corresponding CLEO CLI commands with proper
|
|
9
|
+
* parameter validation and error handling.
|
|
10
|
+
*
|
|
11
|
+
* @task T2930
|
|
12
|
+
*/
|
|
13
|
+
import { DomainHandler, DomainResponse } from '../lib/router.js';
|
|
14
|
+
import { CLIExecutor } from '../lib/executor.js';
|
|
15
|
+
/**
|
|
16
|
+
* Session domain handler implementation
|
|
17
|
+
*/
|
|
18
|
+
export declare class SessionHandler implements DomainHandler {
|
|
19
|
+
private executor?;
|
|
20
|
+
constructor(executor?: CLIExecutor | undefined);
|
|
21
|
+
/**
|
|
22
|
+
* Query operations (read-only)
|
|
23
|
+
*/
|
|
24
|
+
query(operation: string, params?: Record<string, unknown>): Promise<DomainResponse>;
|
|
25
|
+
/**
|
|
26
|
+
* Mutate operations (write)
|
|
27
|
+
*/
|
|
28
|
+
mutate(operation: string, params?: Record<string, unknown>): Promise<DomainResponse>;
|
|
29
|
+
/**
|
|
30
|
+
* Get supported operations
|
|
31
|
+
*/
|
|
32
|
+
getSupportedOperations(): {
|
|
33
|
+
query: string[];
|
|
34
|
+
mutate: string[];
|
|
35
|
+
};
|
|
36
|
+
/**
|
|
37
|
+
* status - Get current session status
|
|
38
|
+
* CLI: cleo session status
|
|
39
|
+
*/
|
|
40
|
+
private queryStatus;
|
|
41
|
+
/**
|
|
42
|
+
* list - List all sessions
|
|
43
|
+
* CLI: cleo session list [--active]
|
|
44
|
+
*/
|
|
45
|
+
private queryList;
|
|
46
|
+
/**
|
|
47
|
+
* show - Show session details
|
|
48
|
+
* CLI: cleo session show <sessionId>
|
|
49
|
+
*/
|
|
50
|
+
private queryShow;
|
|
51
|
+
/**
|
|
52
|
+
* focus-show - Get current focused task
|
|
53
|
+
* CLI: cleo focus show
|
|
54
|
+
*/
|
|
55
|
+
private queryFocusShow;
|
|
56
|
+
/**
|
|
57
|
+
* history - Session history
|
|
58
|
+
* CLI: cleo session history [--limit <n>]
|
|
59
|
+
*/
|
|
60
|
+
private queryHistory;
|
|
61
|
+
/**
|
|
62
|
+
* stats - Session statistics
|
|
63
|
+
* CLI: cleo session stats [<sessionId>]
|
|
64
|
+
*/
|
|
65
|
+
private queryStats;
|
|
66
|
+
/**
|
|
67
|
+
* start - Start new session
|
|
68
|
+
* CLI: cleo session start --scope <scope> [--name <name>] [--auto-focus] [--focus <id>]
|
|
69
|
+
*/
|
|
70
|
+
private mutateStart;
|
|
71
|
+
/**
|
|
72
|
+
* end - End current session
|
|
73
|
+
* CLI: cleo session end [--note <note>]
|
|
74
|
+
*/
|
|
75
|
+
private mutateEnd;
|
|
76
|
+
/**
|
|
77
|
+
* resume - Resume existing session
|
|
78
|
+
* CLI: cleo session resume <sessionId>
|
|
79
|
+
*/
|
|
80
|
+
private mutateResume;
|
|
81
|
+
/**
|
|
82
|
+
* switch - Switch to different session
|
|
83
|
+
* CLI: cleo session switch <sessionId>
|
|
84
|
+
*/
|
|
85
|
+
private mutateSwitch;
|
|
86
|
+
/**
|
|
87
|
+
* focus-set - Set focused task
|
|
88
|
+
* CLI: cleo focus set <taskId>
|
|
89
|
+
*/
|
|
90
|
+
private mutateFocusSet;
|
|
91
|
+
/**
|
|
92
|
+
* focus-clear - Clear focused task
|
|
93
|
+
* CLI: cleo focus clear
|
|
94
|
+
*/
|
|
95
|
+
private mutateFocusClear;
|
|
96
|
+
/**
|
|
97
|
+
* archive - Archive old sessions
|
|
98
|
+
* CLI: cleo session archive [--older-than <date>]
|
|
99
|
+
*/
|
|
100
|
+
private mutateArchive;
|
|
101
|
+
/**
|
|
102
|
+
* cleanup - Clean up ended sessions
|
|
103
|
+
* CLI: cleo session cleanup [--older-than <date>]
|
|
104
|
+
*/
|
|
105
|
+
private mutateCleanup;
|
|
106
|
+
/**
|
|
107
|
+
* suspend - Suspend current session
|
|
108
|
+
* CLI: cleo session suspend [--notes "..."]
|
|
109
|
+
*/
|
|
110
|
+
private mutateSuspend;
|
|
111
|
+
/**
|
|
112
|
+
* gc - Garbage collect old sessions
|
|
113
|
+
* CLI: cleo session gc [--older-than N]
|
|
114
|
+
*/
|
|
115
|
+
private mutateGc;
|
|
116
|
+
/**
|
|
117
|
+
* Wrap executor result in DomainResponse format
|
|
118
|
+
*/
|
|
119
|
+
private wrapExecutorResult;
|
|
120
|
+
/**
|
|
121
|
+
* Create error response
|
|
122
|
+
*/
|
|
123
|
+
private createErrorResponse;
|
|
124
|
+
/**
|
|
125
|
+
* Handle unexpected errors
|
|
126
|
+
*/
|
|
127
|
+
private handleError;
|
|
128
|
+
}
|
|
129
|
+
//# sourceMappingURL=session.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.d.ts","sourceRoot":"","sources":["../../src/domains/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAgDjD;;GAEG;AACH,qBAAa,cAAe,YAAW,aAAa;IACtC,OAAO,CAAC,QAAQ,CAAC;gBAAT,QAAQ,CAAC,EAAE,WAAW,YAAA;IAE1C;;OAEG;IACG,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IA8CzF;;OAEG;IACG,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAwD1F;;OAEG;IACH,sBAAsB,IAAI;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAe/D;;;OAGG;YACW,WAAW;IAYzB;;;OAGG;YACW,SAAS;IAevB;;;OAGG;YACW,SAAS;IAwBvB;;;OAGG;YACW,cAAc;IAY5B;;;OAGG;YACW,YAAY;IAe1B;;;OAGG;YACW,UAAU;IAexB;;;OAGG;YACW,WAAW;IAgCzB;;;OAGG;YACW,SAAS;IAevB;;;OAGG;YACW,YAAY;IAwB1B;;;OAGG;YACW,YAAY;IAwB1B;;;OAGG;YACW,cAAc;IAwB5B;;;OAGG;YACW,gBAAgB;IAY9B;;;OAGG;YACW,aAAa;IAe3B;;;OAGG;YACW,aAAa;IAe3B;;;OAGG;YACW,aAAa;IAe3B;;;OAGG;YACW,QAAQ;IAiBtB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAsC1B;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAyB3B;;OAEG;IACH,OAAO,CAAC,WAAW;CAgBpB"}
|
|
@@ -0,0 +1,433 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Session Domain Handler
|
|
3
|
+
*
|
|
4
|
+
* Implements all 17 session operations for CLEO MCP server:
|
|
5
|
+
* - Query (7): status, list, show, focus-show, focus.get, history, stats
|
|
6
|
+
* - Mutate (10): start, end, resume, switch, focus-set, focus.set, focus-clear, focus.clear, archive, cleanup, suspend, gc
|
|
7
|
+
*
|
|
8
|
+
* Each operation maps to corresponding CLEO CLI commands with proper
|
|
9
|
+
* parameter validation and error handling.
|
|
10
|
+
*
|
|
11
|
+
* @task T2930
|
|
12
|
+
*/
|
|
13
|
+
/**
|
|
14
|
+
* Session domain handler implementation
|
|
15
|
+
*/
|
|
16
|
+
export class SessionHandler {
|
|
17
|
+
executor;
|
|
18
|
+
constructor(executor) {
|
|
19
|
+
this.executor = executor;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Query operations (read-only)
|
|
23
|
+
*/
|
|
24
|
+
async query(operation, params) {
|
|
25
|
+
const startTime = Date.now();
|
|
26
|
+
// Require executor for all operations
|
|
27
|
+
if (!this.executor) {
|
|
28
|
+
return this.createErrorResponse('cleo_query', 'session', operation, 'E_NOT_INITIALIZED', 'Session handler not initialized with executor', startTime);
|
|
29
|
+
}
|
|
30
|
+
try {
|
|
31
|
+
switch (operation) {
|
|
32
|
+
case 'status':
|
|
33
|
+
return await this.queryStatus(params);
|
|
34
|
+
case 'list':
|
|
35
|
+
return await this.queryList(params);
|
|
36
|
+
case 'show':
|
|
37
|
+
return await this.queryShow(params);
|
|
38
|
+
case 'focus-show':
|
|
39
|
+
return await this.queryFocusShow(params);
|
|
40
|
+
case 'focus.get':
|
|
41
|
+
return await this.queryFocusShow(params);
|
|
42
|
+
case 'history':
|
|
43
|
+
return await this.queryHistory(params);
|
|
44
|
+
case 'stats':
|
|
45
|
+
return await this.queryStats(params);
|
|
46
|
+
default:
|
|
47
|
+
return this.createErrorResponse('cleo_query', 'session', operation, 'E_INVALID_OPERATION', `Unknown query operation: ${operation}`, startTime);
|
|
48
|
+
}
|
|
49
|
+
}
|
|
50
|
+
catch (error) {
|
|
51
|
+
return this.handleError('cleo_query', 'session', operation, error, startTime);
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* Mutate operations (write)
|
|
56
|
+
*/
|
|
57
|
+
async mutate(operation, params) {
|
|
58
|
+
const startTime = Date.now();
|
|
59
|
+
// Require executor for all operations
|
|
60
|
+
if (!this.executor) {
|
|
61
|
+
return this.createErrorResponse('cleo_mutate', 'session', operation, 'E_NOT_INITIALIZED', 'Session handler not initialized with executor', startTime);
|
|
62
|
+
}
|
|
63
|
+
try {
|
|
64
|
+
switch (operation) {
|
|
65
|
+
case 'start':
|
|
66
|
+
return await this.mutateStart(params);
|
|
67
|
+
case 'end':
|
|
68
|
+
return await this.mutateEnd(params);
|
|
69
|
+
case 'resume':
|
|
70
|
+
return await this.mutateResume(params);
|
|
71
|
+
case 'switch':
|
|
72
|
+
return await this.mutateSwitch(params);
|
|
73
|
+
case 'focus-set':
|
|
74
|
+
return await this.mutateFocusSet(params);
|
|
75
|
+
case 'focus-clear':
|
|
76
|
+
return await this.mutateFocusClear(params);
|
|
77
|
+
case 'archive':
|
|
78
|
+
return await this.mutateArchive(params);
|
|
79
|
+
case 'cleanup':
|
|
80
|
+
return await this.mutateCleanup(params);
|
|
81
|
+
case 'suspend':
|
|
82
|
+
return await this.mutateSuspend(params);
|
|
83
|
+
case 'gc':
|
|
84
|
+
return await this.mutateGc(params);
|
|
85
|
+
case 'focus.set':
|
|
86
|
+
return await this.mutateFocusSet(params);
|
|
87
|
+
case 'focus.clear':
|
|
88
|
+
return await this.mutateFocusClear(params);
|
|
89
|
+
default:
|
|
90
|
+
return this.createErrorResponse('cleo_mutate', 'session', operation, 'E_INVALID_OPERATION', `Unknown mutate operation: ${operation}`, startTime);
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
catch (error) {
|
|
94
|
+
return this.handleError('cleo_mutate', 'session', operation, error, startTime);
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
/**
|
|
98
|
+
* Get supported operations
|
|
99
|
+
*/
|
|
100
|
+
getSupportedOperations() {
|
|
101
|
+
return {
|
|
102
|
+
query: ['status', 'list', 'show', 'focus-show', 'focus.get', 'history', 'stats'],
|
|
103
|
+
mutate: [
|
|
104
|
+
'start', 'end', 'resume', 'switch',
|
|
105
|
+
'focus-set', 'focus.set',
|
|
106
|
+
'focus-clear', 'focus.clear',
|
|
107
|
+
'archive', 'cleanup',
|
|
108
|
+
'suspend', 'gc',
|
|
109
|
+
],
|
|
110
|
+
};
|
|
111
|
+
}
|
|
112
|
+
// ===== Query Operations =====
|
|
113
|
+
/**
|
|
114
|
+
* status - Get current session status
|
|
115
|
+
* CLI: cleo session status
|
|
116
|
+
*/
|
|
117
|
+
async queryStatus(params) {
|
|
118
|
+
const startTime = Date.now();
|
|
119
|
+
const result = await this.executor.execute({
|
|
120
|
+
domain: 'session',
|
|
121
|
+
operation: 'status',
|
|
122
|
+
flags: { json: true },
|
|
123
|
+
});
|
|
124
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'status', startTime);
|
|
125
|
+
}
|
|
126
|
+
/**
|
|
127
|
+
* list - List all sessions
|
|
128
|
+
* CLI: cleo session list [--active]
|
|
129
|
+
*/
|
|
130
|
+
async queryList(params) {
|
|
131
|
+
const startTime = Date.now();
|
|
132
|
+
const flags = { json: true };
|
|
133
|
+
if (params?.active !== undefined)
|
|
134
|
+
flags.active = params.active;
|
|
135
|
+
const result = await this.executor.execute({
|
|
136
|
+
domain: 'session',
|
|
137
|
+
operation: 'list',
|
|
138
|
+
flags,
|
|
139
|
+
});
|
|
140
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'list', startTime);
|
|
141
|
+
}
|
|
142
|
+
/**
|
|
143
|
+
* show - Show session details
|
|
144
|
+
* CLI: cleo session show <sessionId>
|
|
145
|
+
*/
|
|
146
|
+
async queryShow(params) {
|
|
147
|
+
const startTime = Date.now();
|
|
148
|
+
if (!params?.sessionId) {
|
|
149
|
+
return this.createErrorResponse('cleo_query', 'session', 'show', 'E_INVALID_INPUT', 'sessionId is required', startTime);
|
|
150
|
+
}
|
|
151
|
+
const result = await this.executor.execute({
|
|
152
|
+
domain: 'session',
|
|
153
|
+
operation: 'show',
|
|
154
|
+
args: [params.sessionId],
|
|
155
|
+
flags: { json: true },
|
|
156
|
+
});
|
|
157
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'show', startTime);
|
|
158
|
+
}
|
|
159
|
+
/**
|
|
160
|
+
* focus-show - Get current focused task
|
|
161
|
+
* CLI: cleo focus show
|
|
162
|
+
*/
|
|
163
|
+
async queryFocusShow(params) {
|
|
164
|
+
const startTime = Date.now();
|
|
165
|
+
const result = await this.executor.execute({
|
|
166
|
+
domain: 'focus',
|
|
167
|
+
operation: 'show',
|
|
168
|
+
flags: { json: true },
|
|
169
|
+
});
|
|
170
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'focus-show', startTime);
|
|
171
|
+
}
|
|
172
|
+
/**
|
|
173
|
+
* history - Session history
|
|
174
|
+
* CLI: cleo session history [--limit <n>]
|
|
175
|
+
*/
|
|
176
|
+
async queryHistory(params) {
|
|
177
|
+
const startTime = Date.now();
|
|
178
|
+
const flags = { json: true };
|
|
179
|
+
if (params?.limit)
|
|
180
|
+
flags.limit = params.limit;
|
|
181
|
+
const result = await this.executor.execute({
|
|
182
|
+
domain: 'session',
|
|
183
|
+
operation: 'history',
|
|
184
|
+
flags,
|
|
185
|
+
});
|
|
186
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'history', startTime);
|
|
187
|
+
}
|
|
188
|
+
/**
|
|
189
|
+
* stats - Session statistics
|
|
190
|
+
* CLI: cleo session stats [<sessionId>]
|
|
191
|
+
*/
|
|
192
|
+
async queryStats(params) {
|
|
193
|
+
const startTime = Date.now();
|
|
194
|
+
const result = await this.executor.execute({
|
|
195
|
+
domain: 'session',
|
|
196
|
+
operation: 'stats',
|
|
197
|
+
args: params?.sessionId ? [params.sessionId] : [],
|
|
198
|
+
flags: { json: true },
|
|
199
|
+
});
|
|
200
|
+
return this.wrapExecutorResult(result, 'cleo_query', 'session', 'stats', startTime);
|
|
201
|
+
}
|
|
202
|
+
// ===== Mutate Operations =====
|
|
203
|
+
/**
|
|
204
|
+
* start - Start new session
|
|
205
|
+
* CLI: cleo session start --scope <scope> [--name <name>] [--auto-focus] [--focus <id>]
|
|
206
|
+
*/
|
|
207
|
+
async mutateStart(params) {
|
|
208
|
+
const startTime = Date.now();
|
|
209
|
+
if (!params?.scope) {
|
|
210
|
+
return this.createErrorResponse('cleo_mutate', 'session', 'start', 'E_INVALID_INPUT', 'scope is required', startTime);
|
|
211
|
+
}
|
|
212
|
+
const flags = {
|
|
213
|
+
json: true,
|
|
214
|
+
scope: params.scope,
|
|
215
|
+
};
|
|
216
|
+
if (params?.name)
|
|
217
|
+
flags.name = params.name;
|
|
218
|
+
if (params?.autoFocus)
|
|
219
|
+
flags['auto-focus'] = true;
|
|
220
|
+
if (params?.focus)
|
|
221
|
+
flags.focus = params.focus;
|
|
222
|
+
const result = await this.executor.execute({
|
|
223
|
+
domain: 'session',
|
|
224
|
+
operation: 'start',
|
|
225
|
+
flags,
|
|
226
|
+
});
|
|
227
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'start', startTime);
|
|
228
|
+
}
|
|
229
|
+
/**
|
|
230
|
+
* end - End current session
|
|
231
|
+
* CLI: cleo session end [--note <note>]
|
|
232
|
+
*/
|
|
233
|
+
async mutateEnd(params) {
|
|
234
|
+
const startTime = Date.now();
|
|
235
|
+
const flags = { json: true };
|
|
236
|
+
if (params?.notes)
|
|
237
|
+
flags.note = params.notes;
|
|
238
|
+
const result = await this.executor.execute({
|
|
239
|
+
domain: 'session',
|
|
240
|
+
operation: 'end',
|
|
241
|
+
flags,
|
|
242
|
+
});
|
|
243
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'end', startTime);
|
|
244
|
+
}
|
|
245
|
+
/**
|
|
246
|
+
* resume - Resume existing session
|
|
247
|
+
* CLI: cleo session resume <sessionId>
|
|
248
|
+
*/
|
|
249
|
+
async mutateResume(params) {
|
|
250
|
+
const startTime = Date.now();
|
|
251
|
+
if (!params?.sessionId) {
|
|
252
|
+
return this.createErrorResponse('cleo_mutate', 'session', 'resume', 'E_INVALID_INPUT', 'sessionId is required', startTime);
|
|
253
|
+
}
|
|
254
|
+
const result = await this.executor.execute({
|
|
255
|
+
domain: 'session',
|
|
256
|
+
operation: 'resume',
|
|
257
|
+
args: [params.sessionId],
|
|
258
|
+
flags: { json: true },
|
|
259
|
+
});
|
|
260
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'resume', startTime);
|
|
261
|
+
}
|
|
262
|
+
/**
|
|
263
|
+
* switch - Switch to different session
|
|
264
|
+
* CLI: cleo session switch <sessionId>
|
|
265
|
+
*/
|
|
266
|
+
async mutateSwitch(params) {
|
|
267
|
+
const startTime = Date.now();
|
|
268
|
+
if (!params?.sessionId) {
|
|
269
|
+
return this.createErrorResponse('cleo_mutate', 'session', 'switch', 'E_INVALID_INPUT', 'sessionId is required', startTime);
|
|
270
|
+
}
|
|
271
|
+
const result = await this.executor.execute({
|
|
272
|
+
domain: 'session',
|
|
273
|
+
operation: 'switch',
|
|
274
|
+
args: [params.sessionId],
|
|
275
|
+
flags: { json: true },
|
|
276
|
+
});
|
|
277
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'switch', startTime);
|
|
278
|
+
}
|
|
279
|
+
/**
|
|
280
|
+
* focus-set - Set focused task
|
|
281
|
+
* CLI: cleo focus set <taskId>
|
|
282
|
+
*/
|
|
283
|
+
async mutateFocusSet(params) {
|
|
284
|
+
const startTime = Date.now();
|
|
285
|
+
if (!params?.taskId) {
|
|
286
|
+
return this.createErrorResponse('cleo_mutate', 'session', 'focus-set', 'E_INVALID_INPUT', 'taskId is required', startTime);
|
|
287
|
+
}
|
|
288
|
+
const result = await this.executor.execute({
|
|
289
|
+
domain: 'focus',
|
|
290
|
+
operation: 'set',
|
|
291
|
+
args: [params.taskId],
|
|
292
|
+
flags: { json: true },
|
|
293
|
+
});
|
|
294
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'focus-set', startTime);
|
|
295
|
+
}
|
|
296
|
+
/**
|
|
297
|
+
* focus-clear - Clear focused task
|
|
298
|
+
* CLI: cleo focus clear
|
|
299
|
+
*/
|
|
300
|
+
async mutateFocusClear(params) {
|
|
301
|
+
const startTime = Date.now();
|
|
302
|
+
const result = await this.executor.execute({
|
|
303
|
+
domain: 'focus',
|
|
304
|
+
operation: 'clear',
|
|
305
|
+
flags: { json: true },
|
|
306
|
+
});
|
|
307
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'focus-clear', startTime);
|
|
308
|
+
}
|
|
309
|
+
/**
|
|
310
|
+
* archive - Archive old sessions
|
|
311
|
+
* CLI: cleo session archive [--older-than <date>]
|
|
312
|
+
*/
|
|
313
|
+
async mutateArchive(params) {
|
|
314
|
+
const startTime = Date.now();
|
|
315
|
+
const flags = { json: true };
|
|
316
|
+
if (params?.olderThan)
|
|
317
|
+
flags['older-than'] = params.olderThan;
|
|
318
|
+
const result = await this.executor.execute({
|
|
319
|
+
domain: 'session',
|
|
320
|
+
operation: 'archive',
|
|
321
|
+
flags,
|
|
322
|
+
});
|
|
323
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'archive', startTime);
|
|
324
|
+
}
|
|
325
|
+
/**
|
|
326
|
+
* cleanup - Clean up ended sessions
|
|
327
|
+
* CLI: cleo session cleanup [--older-than <date>]
|
|
328
|
+
*/
|
|
329
|
+
async mutateCleanup(params) {
|
|
330
|
+
const startTime = Date.now();
|
|
331
|
+
const flags = { json: true };
|
|
332
|
+
if (params?.olderThan)
|
|
333
|
+
flags['older-than'] = params.olderThan;
|
|
334
|
+
const result = await this.executor.execute({
|
|
335
|
+
domain: 'session',
|
|
336
|
+
operation: 'cleanup',
|
|
337
|
+
flags,
|
|
338
|
+
});
|
|
339
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'cleanup', startTime);
|
|
340
|
+
}
|
|
341
|
+
/**
|
|
342
|
+
* suspend - Suspend current session
|
|
343
|
+
* CLI: cleo session suspend [--notes "..."]
|
|
344
|
+
*/
|
|
345
|
+
async mutateSuspend(params) {
|
|
346
|
+
const startTime = Date.now();
|
|
347
|
+
const flags = { json: true };
|
|
348
|
+
if (params?.notes)
|
|
349
|
+
flags.notes = params.notes;
|
|
350
|
+
const result = await this.executor.execute({
|
|
351
|
+
domain: 'session',
|
|
352
|
+
operation: 'suspend',
|
|
353
|
+
flags,
|
|
354
|
+
});
|
|
355
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'suspend', startTime);
|
|
356
|
+
}
|
|
357
|
+
/**
|
|
358
|
+
* gc - Garbage collect old sessions
|
|
359
|
+
* CLI: cleo session gc [--older-than N]
|
|
360
|
+
*/
|
|
361
|
+
async mutateGc(params) {
|
|
362
|
+
const startTime = Date.now();
|
|
363
|
+
const flags = { json: true };
|
|
364
|
+
if (params?.olderThan)
|
|
365
|
+
flags['older-than'] = params.olderThan;
|
|
366
|
+
const result = await this.executor.execute({
|
|
367
|
+
domain: 'session',
|
|
368
|
+
operation: 'gc',
|
|
369
|
+
flags,
|
|
370
|
+
});
|
|
371
|
+
return this.wrapExecutorResult(result, 'cleo_mutate', 'session', 'gc', startTime);
|
|
372
|
+
}
|
|
373
|
+
// ===== Helper Methods =====
|
|
374
|
+
/**
|
|
375
|
+
* Wrap executor result in DomainResponse format
|
|
376
|
+
*/
|
|
377
|
+
wrapExecutorResult(result, gateway, domain, operation, startTime) {
|
|
378
|
+
const duration_ms = Date.now() - startTime;
|
|
379
|
+
if (result.success) {
|
|
380
|
+
return {
|
|
381
|
+
_meta: {
|
|
382
|
+
gateway,
|
|
383
|
+
domain,
|
|
384
|
+
operation,
|
|
385
|
+
version: '1.0.0',
|
|
386
|
+
timestamp: new Date().toISOString(),
|
|
387
|
+
duration_ms,
|
|
388
|
+
},
|
|
389
|
+
success: true,
|
|
390
|
+
data: result.data,
|
|
391
|
+
};
|
|
392
|
+
}
|
|
393
|
+
return {
|
|
394
|
+
_meta: {
|
|
395
|
+
gateway,
|
|
396
|
+
domain,
|
|
397
|
+
operation,
|
|
398
|
+
version: '1.0.0',
|
|
399
|
+
timestamp: new Date().toISOString(),
|
|
400
|
+
duration_ms,
|
|
401
|
+
},
|
|
402
|
+
success: false,
|
|
403
|
+
error: result.error,
|
|
404
|
+
};
|
|
405
|
+
}
|
|
406
|
+
/**
|
|
407
|
+
* Create error response
|
|
408
|
+
*/
|
|
409
|
+
createErrorResponse(gateway, domain, operation, code, message, startTime) {
|
|
410
|
+
return {
|
|
411
|
+
_meta: {
|
|
412
|
+
gateway,
|
|
413
|
+
domain,
|
|
414
|
+
operation,
|
|
415
|
+
version: '1.0.0',
|
|
416
|
+
timestamp: new Date().toISOString(),
|
|
417
|
+
duration_ms: Date.now() - startTime,
|
|
418
|
+
},
|
|
419
|
+
success: false,
|
|
420
|
+
error: {
|
|
421
|
+
code,
|
|
422
|
+
message,
|
|
423
|
+
},
|
|
424
|
+
};
|
|
425
|
+
}
|
|
426
|
+
/**
|
|
427
|
+
* Handle unexpected errors
|
|
428
|
+
*/
|
|
429
|
+
handleError(gateway, domain, operation, error, startTime) {
|
|
430
|
+
return this.createErrorResponse(gateway, domain, operation, 'E_INTERNAL_ERROR', error instanceof Error ? error.message : String(error), startTime);
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
//# sourceMappingURL=session.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"session.js","sourceRoot":"","sources":["../../src/domains/session.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAmDH;;GAEG;AACH,MAAM,OAAO,cAAc;IACL;IAApB,YAAoB,QAAsB;QAAtB,aAAQ,GAAR,QAAQ,CAAc;IAAG,CAAC;IAE9C;;OAEG;IACH,KAAK,CAAC,KAAK,CAAC,SAAiB,EAAE,MAAgC;QAC7D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,sCAAsC;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,YAAY,EACZ,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,+CAA+C,EAC/C,SAAS,CACV,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,QAAQ,SAAS,EAAE,CAAC;gBAClB,KAAK,QAAQ;oBACX,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAwC,CAAC,CAAC;gBAC1E,KAAK,MAAM;oBACT,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,MAAsC,CAAC,CAAC;gBACtE,KAAK,MAAM;oBACT,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,MAAsC,CAAC,CAAC;gBACtE,KAAK,YAAY;oBACf,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,MAA0C,CAAC,CAAC;gBAC/E,KAAK,WAAW;oBACd,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,MAA0C,CAAC,CAAC;gBAC/E,KAAK,SAAS;oBACZ,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAyC,CAAC,CAAC;gBAC5E,KAAK,OAAO;oBACV,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,MAAuC,CAAC,CAAC;gBACxE;oBACE,OAAO,IAAI,CAAC,mBAAmB,CAC7B,YAAY,EACZ,SAAS,EACT,SAAS,EACT,qBAAqB,EACrB,4BAA4B,SAAS,EAAE,EACvC,SAAS,CACV,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,WAAW,CAAC,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QAChF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CAAC,SAAiB,EAAE,MAAgC;QAC9D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,sCAAsC;QACtC,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,SAAS,EACT,mBAAmB,EACnB,+CAA+C,EAC/C,SAAS,CACV,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,QAAQ,SAAS,EAAE,CAAC;gBAClB,KAAK,OAAO;oBACV,OAAO,MAAM,IAAI,CAAC,WAAW,CAAC,MAAuC,CAAC,CAAC;gBACzE,KAAK,KAAK;oBACR,OAAO,MAAM,IAAI,CAAC,SAAS,CAAC,MAAqC,CAAC,CAAC;gBACrE,KAAK,QAAQ;oBACX,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAwC,CAAC,CAAC;gBAC3E,KAAK,QAAQ;oBACX,OAAO,MAAM,IAAI,CAAC,YAAY,CAAC,MAAwC,CAAC,CAAC;gBAC3E,KAAK,WAAW;oBACd,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,MAA0C,CAAC,CAAC;gBAC/E,KAAK,aAAa;oBAChB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAA4C,CAAC,CAAC;gBACnF,KAAK,SAAS;oBACZ,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAoC,CAAC,CAAC;gBACxE,KAAK,SAAS;oBACZ,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAoC,CAAC,CAAC;gBACxE,KAAK,SAAS;oBACZ,OAAO,MAAM,IAAI,CAAC,aAAa,CAAC,MAAyC,CAAC,CAAC;gBAC7E,KAAK,IAAI;oBACP,OAAO,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAoC,CAAC,CAAC;gBACnE,KAAK,WAAW;oBACd,OAAO,MAAM,IAAI,CAAC,cAAc,CAAC,MAA0C,CAAC,CAAC;gBAC/E,KAAK,aAAa;oBAChB,OAAO,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAA4C,CAAC,CAAC;gBACnF;oBACE,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,SAAS,EACT,qBAAqB,EACrB,6BAA6B,SAAS,EAAE,EACxC,SAAS,CACV,CAAC;YACN,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,IAAI,CAAC,WAAW,CAAC,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED;;OAEG;IACH,sBAAsB;QACpB,OAAO;YACL,KAAK,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,YAAY,EAAE,WAAW,EAAE,SAAS,EAAE,OAAO,CAAC;YAChF,MAAM,EAAE;gBACN,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ;gBAClC,WAAW,EAAE,WAAW;gBACxB,aAAa,EAAE,aAAa;gBAC5B,SAAS,EAAE,SAAS;gBACpB,SAAS,EAAE,IAAI;aAChB;SACF,CAAC;IACJ,CAAC;IAED,+BAA+B;IAE/B;;;OAGG;IACK,KAAK,CAAC,WAAW,CAAC,MAA2B;QACnD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAsB;YAC/D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,QAAQ;YACnB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,SAAS,CAAC,MAAyB;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,MAAM,KAAK,SAAS;YAAE,KAAK,CAAC,MAAM,GAAG,MAAM,CAAC,MAAM,CAAC;QAE/D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAoB;YAC7D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,MAAM;YACjB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,SAAS,CAAC,MAAyB;QAC/C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,YAAY,EACZ,SAAS,EACT,MAAM,EACN,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAoB;YAC7D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,MAAM;YACjB,IAAI,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,MAA6B;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAwB;YACjE,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,MAAM;YACjB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,YAAY,EAAE,SAAS,CAAC,CAAC;IAC3F,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,MAA4B;QACrD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,KAAK;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAuB;YAChE,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,UAAU,CAAC,MAA0B;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAe;YACxD,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,OAAO;YAClB,IAAI,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,EAAE;YACjD,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACtF,CAAC;IAED,gCAAgC;IAEhC;;;OAGG;IACK,KAAK,CAAC,WAAW,CAAC,MAA0B;QAClD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,EAAE,KAAK,EAAE,CAAC;YACnB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,OAAO,EACP,iBAAiB,EACjB,mBAAmB,EACnB,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,KAAK,GAA4B;YACrC,IAAI,EAAE,IAAI;YACV,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;QAEF,IAAI,MAAM,EAAE,IAAI;YAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;QAC3C,IAAI,MAAM,EAAE,SAAS;YAAE,KAAK,CAAC,YAAY,CAAC,GAAG,IAAI,CAAC;QAClD,IAAI,MAAM,EAAE,KAAK;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAqB;YAC9D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,OAAO;YAClB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,CAAC;IACvF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,SAAS,CAAC,MAAwB;QAC9C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,KAAK;YAAE,KAAK,CAAC,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC;QAE7C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAmB;YAC5D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,KAAK;YAChB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,KAAK,EAAE,SAAS,CAAC,CAAC;IACrF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,MAA2B;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAsB;YAC/D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,YAAY,CAAC,MAA2B;QACpD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC;YACvB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,QAAQ,EACR,iBAAiB,EACjB,uBAAuB,EACvB,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAU;YACnD,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,QAAQ;YACnB,IAAI,EAAE,CAAC,MAAM,CAAC,SAAS,CAAC;YACxB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;IACxF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,cAAc,CAAC,MAA6B;QACxD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,IAAI,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC;YACpB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,aAAa,EACb,SAAS,EACT,WAAW,EACX,iBAAiB,EACjB,oBAAoB,EACpB,SAAS,CACV,CAAC;QACJ,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAwB;YACjE,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,KAAK;YAChB,IAAI,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC;YACrB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,SAAS,CAAC,CAAC;IAC3F,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,gBAAgB,CAAC,MAA+B;QAC5D,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAA0B;YACnE,MAAM,EAAE,OAAO;YACf,SAAS,EAAE,OAAO;YAClB,KAAK,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE;SACtB,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;IAC7F,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CAAC,MAAuB;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,SAAS;YAAE,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAkB;YAC3D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CAAC,MAAuB;QACjD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,SAAS;YAAE,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAkB;YAC3D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,aAAa,CAAC,MAA4B;QACtD,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,KAAK;YAAE,KAAK,CAAC,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC;QAE9C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAuB;YAChE,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,SAAS;YACpB,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,SAAS,EAAE,SAAS,CAAC,CAAC;IACzF,CAAC;IAED;;;OAGG;IACK,KAAK,CAAC,QAAQ,CAAC,MAAuB;QAC5C,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QAE7B,MAAM,KAAK,GAA4B,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;QACtD,IAAI,MAAM,EAAE,SAAS;YAAE,KAAK,CAAC,YAAY,CAAC,GAAG,MAAM,CAAC,SAAS,CAAC;QAE9D,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,QAAS,CAAC,OAAO,CAAkB;YAC3D,MAAM,EAAE,SAAS;YACjB,SAAS,EAAE,IAAI;YACf,KAAK;SACN,CAAC,CAAC;QAEH,OAAO,IAAI,CAAC,kBAAkB,CAAC,MAAM,EAAE,aAAa,EAAE,SAAS,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC;IACpF,CAAC;IAED,6BAA6B;IAE7B;;OAEG;IACK,kBAAkB,CACxB,MAAW,EACX,OAAe,EACf,MAAc,EACd,SAAiB,EACjB,SAAiB;QAEjB,MAAM,WAAW,GAAG,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS,CAAC;QAE3C,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnB,OAAO;gBACL,KAAK,EAAE;oBACL,OAAO;oBACP,MAAM;oBACN,SAAS;oBACT,OAAO,EAAE,OAAO;oBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;oBACnC,WAAW;iBACZ;gBACD,OAAO,EAAE,IAAI;gBACb,IAAI,EAAE,MAAM,CAAC,IAAI;aAClB,CAAC;QACJ,CAAC;QAED,OAAO;YACL,KAAK,EAAE;gBACL,OAAO;gBACP,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,WAAW;aACZ;YACD,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,MAAM,CAAC,KAAK;SACpB,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,mBAAmB,CACzB,OAAe,EACf,MAAc,EACd,SAAiB,EACjB,IAAY,EACZ,OAAe,EACf,SAAiB;QAEjB,OAAO;YACL,KAAK,EAAE;gBACL,OAAO;gBACP,MAAM;gBACN,SAAS;gBACT,OAAO,EAAE,OAAO;gBAChB,SAAS,EAAE,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE;gBACnC,WAAW,EAAE,IAAI,CAAC,GAAG,EAAE,GAAG,SAAS;aACpC;YACD,OAAO,EAAE,KAAK;YACd,KAAK,EAAE;gBACL,IAAI;gBACJ,OAAO;aACR;SACF,CAAC;IACJ,CAAC;IAED;;OAEG;IACK,WAAW,CACjB,OAAe,EACf,MAAc,EACd,SAAiB,EACjB,KAAc,EACd,SAAiB;QAEjB,OAAO,IAAI,CAAC,mBAAmB,CAC7B,OAAO,EACP,MAAM,EACN,SAAS,EACT,kBAAkB,EAClB,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EACtD,SAAS,CACV,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* System Domain Handler
|
|
3
|
+
*
|
|
4
|
+
* Implements all 21 system operations for CLEO MCP server:
|
|
5
|
+
* - Query (12): context, metrics, health, config, diagnostics, version, help, doctor, config.get, stats, job.status, job.list
|
|
6
|
+
* - Mutate (9): backup, restore, migrate, cleanup, audit, init, config.set, sync, job.cancel
|
|
7
|
+
*
|
|
8
|
+
* Each operation maps to corresponding CLEO CLI commands for system management,
|
|
9
|
+
* health checks, configuration, and maintenance operations.
|
|
10
|
+
*
|
|
11
|
+
* @task T2935
|
|
12
|
+
*/
|
|
13
|
+
import { DomainHandler, DomainResponse } from '../lib/router.js';
|
|
14
|
+
import { CLIExecutor } from '../lib/executor.js';
|
|
15
|
+
import { BackgroundJobManager } from '../lib/background-jobs.js';
|
|
16
|
+
export declare class SystemHandler implements DomainHandler {
|
|
17
|
+
private executor?;
|
|
18
|
+
private jobManager?;
|
|
19
|
+
constructor(executor?: CLIExecutor | undefined, jobManager?: BackgroundJobManager);
|
|
20
|
+
/**
|
|
21
|
+
* Set the background job manager (allows post-construction injection)
|
|
22
|
+
*/
|
|
23
|
+
setJobManager(jobManager: BackgroundJobManager): void;
|
|
24
|
+
/**
|
|
25
|
+
* Get the background job manager
|
|
26
|
+
*/
|
|
27
|
+
getJobManager(): BackgroundJobManager | undefined;
|
|
28
|
+
query(operation: string, params?: Record<string, unknown>): Promise<DomainResponse>;
|
|
29
|
+
mutate(operation: string, params?: Record<string, unknown>): Promise<DomainResponse>;
|
|
30
|
+
getSupportedOperations(): {
|
|
31
|
+
query: string[];
|
|
32
|
+
mutate: string[];
|
|
33
|
+
};
|
|
34
|
+
/**
|
|
35
|
+
* QUERY OPERATIONS
|
|
36
|
+
*/
|
|
37
|
+
private getContext;
|
|
38
|
+
private getMetrics;
|
|
39
|
+
private checkHealth;
|
|
40
|
+
private getConfig;
|
|
41
|
+
private runDiagnostics;
|
|
42
|
+
private getVersion;
|
|
43
|
+
private getHelp;
|
|
44
|
+
/**
|
|
45
|
+
* MUTATE OPERATIONS
|
|
46
|
+
*/
|
|
47
|
+
private createBackup;
|
|
48
|
+
private restoreBackup;
|
|
49
|
+
private runMigrations;
|
|
50
|
+
private cleanup;
|
|
51
|
+
private runAudit;
|
|
52
|
+
/**
|
|
53
|
+
* init - Initialize CLEO project
|
|
54
|
+
* CLI: cleo init [--project-type X] [--detect]
|
|
55
|
+
*/
|
|
56
|
+
private mutateInit;
|
|
57
|
+
/**
|
|
58
|
+
* config.set - Set configuration value
|
|
59
|
+
* CLI: cleo config set <key> <value>
|
|
60
|
+
*/
|
|
61
|
+
private mutateConfigSet;
|
|
62
|
+
/**
|
|
63
|
+
* sync - Sync with external systems
|
|
64
|
+
* CLI: cleo sync [--direction up|down]
|
|
65
|
+
*/
|
|
66
|
+
private mutateSync;
|
|
67
|
+
/**
|
|
68
|
+
* JOB QUERY OPERATIONS
|
|
69
|
+
*/
|
|
70
|
+
/**
|
|
71
|
+
* job.status - Get a specific background job's status
|
|
72
|
+
*/
|
|
73
|
+
private queryJobStatus;
|
|
74
|
+
/**
|
|
75
|
+
* job.list - List all background jobs, optionally filtered by status
|
|
76
|
+
*/
|
|
77
|
+
private queryJobList;
|
|
78
|
+
/**
|
|
79
|
+
* JOB MUTATE OPERATIONS
|
|
80
|
+
*/
|
|
81
|
+
/**
|
|
82
|
+
* job.cancel - Cancel a running background job
|
|
83
|
+
*/
|
|
84
|
+
private mutateJobCancel;
|
|
85
|
+
/**
|
|
86
|
+
* Helper methods
|
|
87
|
+
*/
|
|
88
|
+
private wrapExecutorResult;
|
|
89
|
+
private createErrorResponse;
|
|
90
|
+
private handleError;
|
|
91
|
+
}
|
|
92
|
+
//# sourceMappingURL=system.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"system.d.ts","sourceRoot":"","sources":["../../src/domains/system.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,MAAM,kBAAkB,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AA+NjE,qBAAa,aAAc,YAAW,aAAa;IAGrC,OAAO,CAAC,QAAQ,CAAC;IAF7B,OAAO,CAAC,UAAU,CAAC,CAAuB;gBAEtB,QAAQ,CAAC,EAAE,WAAW,YAAA,EAAE,UAAU,CAAC,EAAE,oBAAoB;IAI7E;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,oBAAoB,GAAG,IAAI;IAIrD;;OAEG;IACH,aAAa,IAAI,oBAAoB,GAAG,SAAS;IAI3C,KAAK,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAuDnF,MAAM,CAAC,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,OAAO,CAAC,cAAc,CAAC;IAiD1F,sBAAsB,IAAI;QAAE,KAAK,EAAE,MAAM,EAAE,CAAC;QAAC,MAAM,EAAE,MAAM,EAAE,CAAA;KAAE;IAO/D;;OAEG;YAEW,UAAU;YAUV,UAAU;YAcV,WAAW;YAaX,SAAS;YAoCT,cAAc;YAad,UAAU;YAUV,OAAO;IAarB;;OAEG;YAEW,YAAY;YAeZ,aAAa;YAyBb,aAAa;YAeb,OAAO;YAwDP,QAAQ;IAetB;;;OAGG;YACW,UAAU;IAcxB;;;OAGG;YACW,eAAe;IAsB7B;;;OAGG;YACW,UAAU;IAaxB;;OAEG;IAEH;;OAEG;IACH,OAAO,CAAC,cAAc;IAmCtB;;OAEG;IACH,OAAO,CAAC,YAAY;IAsBpB;;OAEG;IAEH;;OAEG;IACH,OAAO,CAAC,eAAe;IAmCvB;;OAEG;IAEH,OAAO,CAAC,kBAAkB;IAyC1B,OAAO,CAAC,mBAAmB;IAyB3B,OAAO,CAAC,WAAW;CAgBpB"}
|