@sfmc-bds/management 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/LICENSE +663 -0
  2. package/dist/index.d.ts +10 -0
  3. package/dist/index.d.ts.map +1 -0
  4. package/dist/index.js +10 -0
  5. package/dist/index.js.map +7 -0
  6. package/dist/node/client.d.ts +16 -0
  7. package/dist/node/client.d.ts.map +1 -0
  8. package/dist/node/client.js +82 -0
  9. package/dist/node/client.js.map +7 -0
  10. package/dist/node/index.d.ts +3 -0
  11. package/dist/node/index.d.ts.map +1 -0
  12. package/dist/node/index.js +3 -0
  13. package/dist/node/index.js.map +7 -0
  14. package/dist/node/maintenance-lock.d.ts +4 -0
  15. package/dist/node/maintenance-lock.d.ts.map +1 -0
  16. package/dist/node/maintenance-lock.js +46 -0
  17. package/dist/node/maintenance-lock.js.map +7 -0
  18. package/dist/protocol/errors.d.ts +43 -0
  19. package/dist/protocol/errors.d.ts.map +1 -0
  20. package/dist/protocol/errors.js +18 -0
  21. package/dist/protocol/errors.js.map +7 -0
  22. package/dist/protocol/frames.d.ts +59 -0
  23. package/dist/protocol/frames.d.ts.map +1 -0
  24. package/dist/protocol/frames.js +21 -0
  25. package/dist/protocol/frames.js.map +7 -0
  26. package/dist/protocol/handshake.d.ts +35 -0
  27. package/dist/protocol/handshake.d.ts.map +1 -0
  28. package/dist/protocol/handshake.js +1 -0
  29. package/dist/protocol/handshake.js.map +7 -0
  30. package/dist/protocol/logs.d.ts +33 -0
  31. package/dist/protocol/logs.d.ts.map +1 -0
  32. package/dist/protocol/logs.js +1 -0
  33. package/dist/protocol/logs.js.map +7 -0
  34. package/dist/protocol/methods.d.ts +101 -0
  35. package/dist/protocol/methods.d.ts.map +1 -0
  36. package/dist/protocol/methods.js +1 -0
  37. package/dist/protocol/methods.js.map +7 -0
  38. package/dist/protocol/metrics.d.ts +41 -0
  39. package/dist/protocol/metrics.d.ts.map +1 -0
  40. package/dist/protocol/metrics.js +1 -0
  41. package/dist/protocol/metrics.js.map +7 -0
  42. package/dist/protocol/operations.d.ts +62 -0
  43. package/dist/protocol/operations.d.ts.map +1 -0
  44. package/dist/protocol/operations.js +1 -0
  45. package/dist/protocol/operations.js.map +7 -0
  46. package/dist/protocol/services.d.ts +49 -0
  47. package/dist/protocol/services.d.ts.map +1 -0
  48. package/dist/protocol/services.js +1 -0
  49. package/dist/protocol/services.js.map +7 -0
  50. package/dist/protocol/version.d.ts +9 -0
  51. package/dist/protocol/version.d.ts.map +1 -0
  52. package/dist/protocol/version.js +5 -0
  53. package/dist/protocol/version.js.map +7 -0
  54. package/package.json +57 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"methods.d.ts","sourceRoot":"","sources":["../../src/protocol/methods.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=methods.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,41 @@
1
+ /** 平台运行指标。TPS 为墙钟采样速率,不能当作单 tick 执行耗时(MSPT)。 */
2
+ export interface MetricsSample {
3
+ recordedAt: number;
4
+ bootId: string;
5
+ tps: number | null;
6
+ onlineCount: number;
7
+ entities: Record<string, number | null>;
8
+ entitiesUpdatedAt: number | null;
9
+ chunkEstimate: number | null;
10
+ }
11
+ export interface ProcessResources {
12
+ pid: number;
13
+ running: boolean;
14
+ memoryMb: number | null;
15
+ /** 累计 CPU 秒数;不是 CPU 百分比。 */
16
+ cpuSeconds: number | null;
17
+ }
18
+ export interface MetricsResult {
19
+ fresh: boolean;
20
+ updatedAt: number | null;
21
+ current: MetricsSample | null;
22
+ history: MetricsSample[];
23
+ host: {
24
+ memory: {
25
+ totalMb: number;
26
+ usedMb: number;
27
+ usedPercent: number;
28
+ };
29
+ cpu: {
30
+ cores: number;
31
+ model: string;
32
+ };
33
+ } | null;
34
+ processes: {
35
+ db: ProcessResources;
36
+ bds: ProcessResources | null;
37
+ } | null;
38
+ resourcesUpdatedAt: number | null;
39
+ note?: string;
40
+ }
41
+ //# sourceMappingURL=metrics.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"metrics.d.ts","sourceRoot":"","sources":["../../src/protocol/metrics.ts"],"names":[],"mappings":"AAAA,gDAAgD;AAChD,MAAM,WAAW,aAAa;IAC5B,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IACf,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC,CAAC;IACxC,iBAAiB,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAC;CAC9B;AACD,MAAM,WAAW,gBAAgB;IAC/B,GAAG,EAAE,MAAM,CAAC;IACZ,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4BAA4B;IAC5B,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;CAC3B;AACD,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,OAAO,CAAC;IACf,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,OAAO,EAAE,aAAa,GAAG,IAAI,CAAC;IAC9B,OAAO,EAAE,aAAa,EAAE,CAAC;IACzB,IAAI,EAAE;QACJ,MAAM,EAAE;YAAE,OAAO,EAAE,MAAM,CAAC;YAAC,MAAM,EAAE,MAAM,CAAC;YAAC,WAAW,EAAE,MAAM,CAAA;SAAE,CAAC;QACjE,GAAG,EAAE;YAAE,KAAK,EAAE,MAAM,CAAC;YAAC,KAAK,EAAE,MAAM,CAAA;SAAE,CAAC;KACvC,GAAG,IAAI,CAAC;IACT,SAAS,EAAE;QAAE,EAAE,EAAE,gBAAgB,CAAC;QAAC,GAAG,EAAE,gBAAgB,GAAG,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;IACzE,kBAAkB,EAAE,MAAM,GAAG,IAAI,CAAC;IAClC,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=metrics.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,62 @@
1
+ /**
2
+ * operations.ts — 后台任务(耗时操作)的协议类型
3
+ *
4
+ * 使用场景:安装/更新/启停等耗时写操作返回 OperationAccepted,
5
+ * 客户端经 operation 事件或 operations.get 跟踪进度;
6
+ * 连接中断后用 operations.list/get 查询原任务,禁止自动重发写请求。
7
+ * 任务记录由守护进程持久化在 `<SFMC_ROOT>/.sfmc/operations/`。
8
+ */
9
+ import type { ManagementError } from "./errors.js";
10
+ /** 任务状态机:queued → running → succeeded / failed;异常退出恢复为 interrupted */
11
+ export type OperationStatus = "queued" | "running" | "succeeded" | "failed" | "interrupted";
12
+ /** 任务阶段(维护顺序:准备→停服→备份→执行→验证→恢复,由执行器按场景裁剪) */
13
+ export interface OperationPhase {
14
+ /** 阶段标识(机器可读,如 "prepare" / "stop-services" / "backup" / "execute" / "verify" / "restore") */
15
+ name: string;
16
+ status: "pending" | "running" | "done" | "failed" | "skipped";
17
+ /** 阶段说明或失败原因(诊断文案) */
18
+ message?: string;
19
+ startedAt?: string;
20
+ finishedAt?: string;
21
+ }
22
+ /** 持久化任务记录(operations.list / operations.get 的结果元素,亦是 operation 事件载荷) */
23
+ export interface OperationRecord {
24
+ /** 任务标识(服务端生成) */
25
+ id: string;
26
+ /** 任务种类(机器可读,如 "module.install" / "updates.run" / "services.stop") */
27
+ kind: string;
28
+ /** 人类可读标题(诊断展示用) */
29
+ title: string;
30
+ status: OperationStatus;
31
+ phases: OperationPhase[];
32
+ createdAt: string;
33
+ updatedAt: string;
34
+ /** 成功时的结构化结果(按 kind 而定) */
35
+ result?: unknown;
36
+ /** 失败时的错误信封 */
37
+ error?: ManagementError;
38
+ }
39
+ /** 耗时写操作的统一受理应答(LSP:所有异步写方法返回同一信封) */
40
+ export interface OperationAccepted {
41
+ operationId: string;
42
+ }
43
+ /** operations.list 参数 */
44
+ export interface OperationsListParams {
45
+ /** 仅包含这些状态;缺省为全部 */
46
+ statuses?: OperationStatus[];
47
+ /** 仅保留最近 N 条;缺省由服务端给上限 */
48
+ limit?: number;
49
+ }
50
+ /** operations.list 结果 */
51
+ export interface OperationsListResult {
52
+ operations: OperationRecord[];
53
+ }
54
+ /** operations.get 参数 */
55
+ export interface OperationsGetParams {
56
+ operationId: string;
57
+ }
58
+ /** operations.get 结果 */
59
+ export interface OperationsGetResult {
60
+ operation: OperationRecord;
61
+ }
62
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.d.ts","sourceRoot":"","sources":["../../src/protocol/operations.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAEnD,sEAAsE;AACtE,MAAM,MAAM,eAAe,GACvB,QAAQ,GACR,SAAS,GACT,WAAW,GACX,QAAQ,GACR,aAAa,CAAC;AAElB,6CAA6C;AAC7C,MAAM,WAAW,cAAc;IAC7B,6FAA6F;IAC7F,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,MAAM,GAAG,QAAQ,GAAG,SAAS,CAAC;IAC9D,sBAAsB;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,wEAAwE;AACxE,MAAM,WAAW,eAAe;IAC9B,kBAAkB;IAClB,EAAE,EAAE,MAAM,CAAC;IACX,sEAAsE;IACtE,IAAI,EAAE,MAAM,CAAC;IACb,oBAAoB;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,eAAe,CAAC;IACxB,MAAM,EAAE,cAAc,EAAE,CAAC;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,eAAe;IACf,KAAK,CAAC,EAAE,eAAe,CAAC;CACzB;AAED,sCAAsC;AACtC,MAAM,WAAW,iBAAiB;IAChC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACnC,oBAAoB;IACpB,QAAQ,CAAC,EAAE,eAAe,EAAE,CAAC;IAC7B,0BAA0B;IAC1B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,yBAAyB;AACzB,MAAM,WAAW,oBAAoB;IACnC,UAAU,EAAE,eAAe,EAAE,CAAC;CAC/B;AAED,wBAAwB;AACxB,MAAM,WAAW,mBAAmB;IAClC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,wBAAwB;AACxB,MAAM,WAAW,mBAAmB;IAClC,SAAS,EAAE,eAAe,CAAC;CAC5B"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,49 @@
1
+ /**
2
+ * services.ts — 服务总览与服务控制的协议类型
3
+ *
4
+ * 使用场景:桌面端服务总览页(services.list)与启停/重启操作
5
+ * (services.start / services.stop / services.restart,写操作返回 OperationAccepted)。
6
+ * 与 CLI 内部 ServiceStatus 结构对齐,但本文件是线缆契约的唯一权威(DRY)。
7
+ */
8
+ /** 受管服务名(与 CLI ServiceName 对齐) */
9
+ export type ManagedServiceName = "bds" | "db" | "tunnel" | "qq" | "llbot";
10
+ /** 单服务运行态行(services.list 结果元素与 serviceState 事件载荷) */
11
+ export interface ServiceStatusRow {
12
+ name: ManagedServiceName;
13
+ /** 展示名(如 "BDS" / "DB Server") */
14
+ title: string;
15
+ running: boolean;
16
+ pid: number;
17
+ /** 运行时长的人性化文本(如 "2h 5m";未运行为 "—") */
18
+ uptime: string;
19
+ /** 进程归属:managed=守护进程拉起;external=外部已存在进程 */
20
+ ownership?: "managed" | "external";
21
+ }
22
+ /** services.list 结果 */
23
+ export interface ServicesListResult {
24
+ rows: ServiceStatusRow[];
25
+ }
26
+ /** services.start / stop / restart 参数 */
27
+ export interface ServiceActionParams {
28
+ /** 目标服务;特殊值 "all" 表示批量(仅 start/stop/restart 支持) */
29
+ name: ManagedServiceName | "all";
30
+ }
31
+ /** 服务启停状态推送(event: "serviceState") */
32
+ export interface ServiceStateChanged {
33
+ name: ManagedServiceName;
34
+ running: boolean;
35
+ pid: number;
36
+ }
37
+ /** services.send 参数:向服务 stdin 写入一行命令 */
38
+ export interface ServiceSendParams {
39
+ name: ManagedServiceName;
40
+ message: string;
41
+ }
42
+ /** services.send 结果 */
43
+ export interface ServiceSendResult {
44
+ /** 是否已写入 stdin(外部进程无 stdin 时为 false) */
45
+ delivered: boolean;
46
+ /** 未投递时的原因说明(诊断文案) */
47
+ reason?: string;
48
+ }
49
+ //# sourceMappingURL=services.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"services.d.ts","sourceRoot":"","sources":["../../src/protocol/services.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,kCAAkC;AAClC,MAAM,MAAM,kBAAkB,GAAG,KAAK,GAAG,IAAI,GAAG,QAAQ,GAAG,IAAI,GAAG,OAAO,CAAC;AAE1E,qDAAqD;AACrD,MAAM,WAAW,gBAAgB;IAC/B,IAAI,EAAE,kBAAkB,CAAC;IACzB,iCAAiC;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;IACZ,qCAAqC;IACrC,MAAM,EAAE,MAAM,CAAC;IACf,2CAA2C;IAC3C,SAAS,CAAC,EAAE,SAAS,GAAG,UAAU,CAAC;CACpC;AAED,uBAAuB;AACvB,MAAM,WAAW,kBAAkB;IACjC,IAAI,EAAE,gBAAgB,EAAE,CAAC;CAC1B;AAED,yCAAyC;AACzC,MAAM,WAAW,mBAAmB;IAClC,mDAAmD;IACnD,IAAI,EAAE,kBAAkB,GAAG,KAAK,CAAC;CAClC;AAED,sCAAsC;AACtC,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,GAAG,EAAE,MAAM,CAAC;CACb;AAED,wCAAwC;AACxC,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,kBAAkB,CAAC;IACzB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED,uBAAuB;AACvB,MAAM,WAAW,iBAAiB;IAChC,wCAAwC;IACxC,SAAS,EAAE,OAAO,CAAC;IACnB,sBAAsB;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=services.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,9 @@
1
+ /**
2
+ * version.ts — 管理协议版本常量
3
+ *
4
+ * 使用场景:握手(handshake)时服务端返回本版本,桌面端据此判断协议兼容性。
5
+ * 协议出现不兼容变更(帧结构、方法语义、结果信封)时递增;
6
+ * 仅新增方法/能力(OCP 扩展)不需要递增,由 capabilities 列表表达。
7
+ */
8
+ export declare const MANAGEMENT_PROTOCOL_VERSION = 1;
9
+ //# sourceMappingURL=version.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../../src/protocol/version.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AACH,eAAO,MAAM,2BAA2B,IAAI,CAAC"}
@@ -0,0 +1,5 @@
1
+ const MANAGEMENT_PROTOCOL_VERSION = 1;
2
+ export {
3
+ MANAGEMENT_PROTOCOL_VERSION
4
+ };
5
+ //# sourceMappingURL=version.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/protocol/version.ts"],
4
+ "sourcesContent": ["/**\n * version.ts \u2014 \u7BA1\u7406\u534F\u8BAE\u7248\u672C\u5E38\u91CF\n *\n * \u4F7F\u7528\u573A\u666F\uFF1A\u63E1\u624B\uFF08handshake\uFF09\u65F6\u670D\u52A1\u7AEF\u8FD4\u56DE\u672C\u7248\u672C\uFF0C\u684C\u9762\u7AEF\u636E\u6B64\u5224\u65AD\u534F\u8BAE\u517C\u5BB9\u6027\u3002\n * \u534F\u8BAE\u51FA\u73B0\u4E0D\u517C\u5BB9\u53D8\u66F4\uFF08\u5E27\u7ED3\u6784\u3001\u65B9\u6CD5\u8BED\u4E49\u3001\u7ED3\u679C\u4FE1\u5C01\uFF09\u65F6\u9012\u589E\uFF1B\n * \u4EC5\u65B0\u589E\u65B9\u6CD5/\u80FD\u529B\uFF08OCP \u6269\u5C55\uFF09\u4E0D\u9700\u8981\u9012\u589E\uFF0C\u7531 capabilities \u5217\u8868\u8868\u8FBE\u3002\n */\nexport const MANAGEMENT_PROTOCOL_VERSION = 1;\n"],
5
+ "mappings": "AAOO,MAAM,8BAA8B;",
6
+ "names": []
7
+ }
package/package.json ADDED
@@ -0,0 +1,57 @@
1
+ {
2
+ "name": "@sfmc-bds/management",
3
+ "version": "0.2.0",
4
+ "description": "SFMC management protocol — shared types, handshake/capability discovery and client connection interface (used by CLI and the desktop app)",
5
+ "author": "Shiroha7z",
6
+ "license": "AGPL-3.0-only",
7
+ "type": "module",
8
+ "homepage": "https://github.com/DogeLakeDev/ScriptsForMinecraftServer/tree/main/packages/management#readme",
9
+ "repository": {
10
+ "type": "git",
11
+ "url": "git+https://github.com/DogeLakeDev/ScriptsForMinecraftServer.git",
12
+ "directory": "packages/management"
13
+ },
14
+ "bugs": {
15
+ "url": "https://github.com/DogeLakeDev/ScriptsForMinecraftServer/issues"
16
+ },
17
+ "keywords": [
18
+ "cli",
19
+ "management",
20
+ "minecraft-bedrock",
21
+ "scriptsforminecraftserver",
22
+ "sfmc"
23
+ ],
24
+ "engines": {
25
+ "node": ">=22.13.0"
26
+ },
27
+ "main": "dist/index.js",
28
+ "types": "dist/index.d.ts",
29
+ "exports": {
30
+ ".": {
31
+ "types": "./dist/index.d.ts",
32
+ "import": "./dist/index.js",
33
+ "default": "./dist/index.js"
34
+ },
35
+ "./node": {
36
+ "types": "./dist/node/index.d.ts",
37
+ "import": "./dist/node/index.js",
38
+ "default": "./dist/node/index.js"
39
+ },
40
+ "./package.json": "./package.json"
41
+ },
42
+ "files": [
43
+ "dist",
44
+ "README.md"
45
+ ],
46
+ "devDependencies": {
47
+ "@sfmc-bds/tools": "0.2.5"
48
+ },
49
+ "publishConfig": {
50
+ "access": "public",
51
+ "registry": "https://registry.npmjs.org/"
52
+ },
53
+ "scripts": {
54
+ "build": "sfmc-esbuild-transpile --dts",
55
+ "typecheck": "tsc7 --noEmit -p tsconfig.json"
56
+ }
57
+ }