@tx5dr/contracts 1.7.2 → 1.7.3

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 (57) hide show
  1. package/dist/index.d.ts +1 -0
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +1 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/schema/__tests__/audio.schema.test.js +4 -0
  6. package/dist/schema/__tests__/audio.schema.test.js.map +1 -1
  7. package/dist/schema/__tests__/operator.schema.test.d.ts +2 -0
  8. package/dist/schema/__tests__/operator.schema.test.d.ts.map +1 -0
  9. package/dist/schema/__tests__/operator.schema.test.js +23 -0
  10. package/dist/schema/__tests__/operator.schema.test.js.map +1 -0
  11. package/dist/schema/__tests__/process-monitor.schema.test.d.ts +2 -0
  12. package/dist/schema/__tests__/process-monitor.schema.test.d.ts.map +1 -0
  13. package/dist/schema/__tests__/process-monitor.schema.test.js +139 -0
  14. package/dist/schema/__tests__/process-monitor.schema.test.js.map +1 -0
  15. package/dist/schema/api-response.schema.d.ts +2 -2
  16. package/dist/schema/audio.schema.d.ts +369 -0
  17. package/dist/schema/audio.schema.d.ts.map +1 -1
  18. package/dist/schema/audio.schema.js +3 -0
  19. package/dist/schema/audio.schema.js.map +1 -1
  20. package/dist/schema/logbook.schema.d.ts +2 -2
  21. package/dist/schema/operator.schema.d.ts +10 -10
  22. package/dist/schema/operator.schema.d.ts.map +1 -1
  23. package/dist/schema/operator.schema.js +6 -1
  24. package/dist/schema/operator.schema.js.map +1 -1
  25. package/dist/schema/plugin.schema.d.ts +16 -16
  26. package/dist/schema/process-monitor.schema.d.ts +1373 -0
  27. package/dist/schema/process-monitor.schema.d.ts.map +1 -1
  28. package/dist/schema/process-monitor.schema.js +43 -0
  29. package/dist/schema/process-monitor.schema.js.map +1 -1
  30. package/dist/schema/radio-capability.schema.d.ts +6 -6
  31. package/dist/schema/radio.schema.d.ts +6 -6
  32. package/dist/schema/slot-info.schema.d.ts +136 -0
  33. package/dist/schema/slot-info.schema.d.ts.map +1 -1
  34. package/dist/schema/slot-info.schema.js +27 -2
  35. package/dist/schema/slot-info.schema.js.map +1 -1
  36. package/dist/schema/spectrum.schema.d.ts +24 -24
  37. package/dist/schema/voice-keyer.schema.d.ts +2 -2
  38. package/dist/schema/websocket.schema.d.ts +363 -139
  39. package/dist/schema/websocket.schema.d.ts.map +1 -1
  40. package/dist/schema/websocket.schema.js +4 -2
  41. package/dist/schema/websocket.schema.js.map +1 -1
  42. package/dist/utils/callsign.d.ts +2 -0
  43. package/dist/utils/callsign.d.ts.map +1 -0
  44. package/dist/utils/callsign.js +8 -0
  45. package/dist/utils/callsign.js.map +1 -0
  46. package/package.json +1 -1
  47. package/src/index.ts +1 -0
  48. package/src/schema/__tests__/audio.schema.test.ts +4 -0
  49. package/src/schema/__tests__/operator.schema.test.ts +29 -0
  50. package/src/schema/__tests__/process-monitor.schema.test.ts +146 -0
  51. package/src/schema/audio.schema.ts +3 -0
  52. package/src/schema/operator.schema.ts +7 -1
  53. package/src/schema/process-monitor.schema.ts +51 -0
  54. package/src/schema/slot-info.schema.ts +33 -2
  55. package/src/schema/websocket.schema.ts +16 -2
  56. package/src/utils/callsign.ts +9 -0
  57. package/test/decode-request-schema.test.ts +48 -0
@@ -1 +1 @@
1
- {"version":3,"file":"process-monitor.schema.d.ts","sourceRoot":"","sources":["../../src/schema/process-monitor.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,eAAO,MAAM,mBAAmB;;;;;;;;;;;;;;;;;;EAM9B,CAAC;AAEH,eAAO,MAAM,gBAAgB;;;;;;;;;;;;;;;;;;EAM3B,CAAC;AAEH,eAAO,MAAM,aAAa;;;;;;;;;;;;EAIxB,CAAC;AAEH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;EAI/B,CAAC;AAEH,eAAO,MAAM,qBAAqB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAOhC,CAAC;AAEH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAIvC,CAAC;AAEH,MAAM,MAAM,aAAa,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,mBAAmB,CAAC,CAAC;AAChE,MAAM,MAAM,UAAU,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,gBAAgB,CAAC,CAAC;AAC1D,MAAM,MAAM,OAAO,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,aAAa,CAAC,CAAC;AACpD,MAAM,MAAM,cAAc,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,oBAAoB,CAAC,CAAC;AAClE,MAAM,MAAM,eAAe,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,qBAAqB,CAAC,CAAC;AACpE,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,4BAA4B,CAAC,CAAC"}
1
+ {"version":3,"file":"process-monitor.schema.d.ts","sourceRoot":"","sources":["../../src/schema/process-monitor.schema.ts"],"names":[],"mappings":"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"}
@@ -23,6 +23,48 @@ export const EventLoopDelaySchema = z.object({
23
23
  p50: z.number(),
24
24
  p99: z.number(),
25
25
  });
26
+ export const DecodeWorkerCurrentJobSchema = z.object({
27
+ jobId: z.number(),
28
+ slotId: z.string(),
29
+ windowIdx: z.number(),
30
+ mode: z.string(),
31
+ startedAt: z.number(),
32
+ elapsedMs: z.number(),
33
+ requestAudioDurationMs: z.number().optional(),
34
+ });
35
+ export const DecodeWorkerTelemetryWorkerSchema = z.object({
36
+ workerId: z.number(),
37
+ pid: z.number().optional(),
38
+ ready: z.boolean(),
39
+ busy: z.boolean(),
40
+ nativeThreads: z.number().int().positive(),
41
+ uptimeSeconds: z.number(),
42
+ memory: ProcessMemorySchema,
43
+ cpu: ProcessCpuSchema,
44
+ currentJob: DecodeWorkerCurrentJobSchema.optional(),
45
+ lastSeenAt: z.number(),
46
+ });
47
+ export const DecodeWorkerTelemetrySummarySchema = z.object({
48
+ status: z.enum(['stopped', 'starting', 'ready', 'degraded', 'unavailable']).optional(),
49
+ workerCount: z.number().int().nonnegative(),
50
+ desiredWorkers: z.number().int().nonnegative().optional(),
51
+ readyCount: z.number().int().nonnegative(),
52
+ busyCount: z.number().int().nonnegative(),
53
+ totalRss: z.number().nonnegative(),
54
+ totalCpu: z.number().nonnegative(),
55
+ nativeThreadsPerWorker: z.number().int().positive(),
56
+ pendingJobs: z.number().int().nonnegative(),
57
+ activeJobs: z.number().int().nonnegative(),
58
+ lastError: z.string().optional(),
59
+ lastFailureAt: z.number().optional(),
60
+ restartAttempts: z.number().int().nonnegative().optional(),
61
+ workerEntry: z.string().optional(),
62
+ workerMode: z.enum(['development', 'production']).optional(),
63
+ });
64
+ export const DecodeWorkerTelemetrySnapshotSchema = z.object({
65
+ summary: DecodeWorkerTelemetrySummarySchema,
66
+ workers: z.array(DecodeWorkerTelemetryWorkerSchema),
67
+ });
26
68
  export const ProcessSnapshotSchema = z.object({
27
69
  timestamp: z.number(),
28
70
  uptimeSeconds: z.number(),
@@ -30,6 +72,7 @@ export const ProcessSnapshotSchema = z.object({
30
72
  cpu: ProcessCpuSchema,
31
73
  hostCpu: HostCpuSchema.optional(),
32
74
  eventLoop: EventLoopDelaySchema,
75
+ decodeWorkers: DecodeWorkerTelemetrySnapshotSchema.optional(),
33
76
  });
34
77
  export const ProcessSnapshotHistorySchema = z.object({
35
78
  snapshots: z.array(ProcessSnapshotSchema),
@@ -1 +1 @@
1
- {"version":3,"file":"process-monitor.schema.js","sourceRoot":"","sources":["../../src/schema/process-monitor.schema.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,MAAM,CAAC,MAAM,mBAAmB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC1C,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;IACpB,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE;CACzB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,gBAAgB,GAAG,CAAC,CAAC,MAAM,CAAC;IACvC,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;IAClB,KAAK,EAAE,CAAC,CAAC,MAAM,EAAE;IACjB,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE,CAAC,QAAQ,EAAE;IAC1C,eAAe,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CACvC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,aAAa,GAAG,CAAC,CAAC,MAAM,CAAC;IACpC,YAAY,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACzC,oBAAoB,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,EAAE,CAAC,QAAQ,EAAE;IACjD,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,QAAQ,EAAE;CAClC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,oBAAoB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC3C,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE;IAChB,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;IACf,GAAG,EAAE,CAAC,CAAC,MAAM,EAAE;CAChB,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,qBAAqB,GAAG,CAAC,CAAC,MAAM,CAAC;IAC5C,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;IACrB,aAAa,EAAE,CAAC,CAAC,MAAM,EAAE;IACzB,MAAM,EAAE,mBAAmB;IAC3B,GAAG,EAAE,gBAAgB;IACrB,OAAO,EAAE,aAAa,CAAC,QAAQ,EAAE;IACjC,SAAS,EAAE,oBAAoB;CAChC,CAAC,CAAC;AAEH,MAAM,CAAC,MAAM,4BAA4B,GAAG,CAAC,CAAC,MAAM,CAAC;IACnD,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,qBAAqB,CAAC;IACzC,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;IACtB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE;CACvB,CAAC,CAAC"}
1
+ {"version":3,"file":"process-monitor.schema.js","sourceRoot":"","sources":["../../src/schema/process-monitor.schema.ts"],"names":[],"mappings":"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"}
@@ -302,18 +302,18 @@ export declare const CapabilityStateSchema: z.ZodObject<{
302
302
  id: string;
303
303
  supported: boolean;
304
304
  updatedAt: number;
305
+ availability?: "unknown" | "available" | "unavailable" | undefined;
305
306
  meta?: Record<string, unknown> | undefined;
306
307
  lastError?: string | undefined;
307
- availability?: "unknown" | "available" | "unavailable" | undefined;
308
308
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
309
309
  }, {
310
310
  value: string | number | boolean | null;
311
311
  id: string;
312
312
  supported: boolean;
313
313
  updatedAt: number;
314
+ availability?: "unknown" | "available" | "unavailable" | undefined;
314
315
  meta?: Record<string, unknown> | undefined;
315
316
  lastError?: string | undefined;
316
- availability?: "unknown" | "available" | "unavailable" | undefined;
317
317
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
318
318
  }>;
319
319
  export type CapabilityState = z.infer<typeof CapabilityStateSchema>;
@@ -530,18 +530,18 @@ export declare const CapabilityListSchema: z.ZodObject<{
530
530
  id: string;
531
531
  supported: boolean;
532
532
  updatedAt: number;
533
+ availability?: "unknown" | "available" | "unavailable" | undefined;
533
534
  meta?: Record<string, unknown> | undefined;
534
535
  lastError?: string | undefined;
535
- availability?: "unknown" | "available" | "unavailable" | undefined;
536
536
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
537
537
  }, {
538
538
  value: string | number | boolean | null;
539
539
  id: string;
540
540
  supported: boolean;
541
541
  updatedAt: number;
542
+ availability?: "unknown" | "available" | "unavailable" | undefined;
542
543
  meta?: Record<string, unknown> | undefined;
543
544
  lastError?: string | undefined;
544
- availability?: "unknown" | "available" | "unavailable" | undefined;
545
545
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
546
546
  }>, "many">;
547
547
  }, "strip", z.ZodTypeAny, {
@@ -550,9 +550,9 @@ export declare const CapabilityListSchema: z.ZodObject<{
550
550
  id: string;
551
551
  supported: boolean;
552
552
  updatedAt: number;
553
+ availability?: "unknown" | "available" | "unavailable" | undefined;
553
554
  meta?: Record<string, unknown> | undefined;
554
555
  lastError?: string | undefined;
555
- availability?: "unknown" | "available" | "unavailable" | undefined;
556
556
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
557
557
  }[];
558
558
  descriptors: {
@@ -597,9 +597,9 @@ export declare const CapabilityListSchema: z.ZodObject<{
597
597
  id: string;
598
598
  supported: boolean;
599
599
  updatedAt: number;
600
+ availability?: "unknown" | "available" | "unavailable" | undefined;
600
601
  meta?: Record<string, unknown> | undefined;
601
602
  lastError?: string | undefined;
602
- availability?: "unknown" | "available" | "unavailable" | undefined;
603
603
  availabilityReason?: "unknown" | "runtime_error" | "busy" | "unsupported_by_current_mode" | "radio_reported_unavailable" | undefined;
604
604
  }[];
605
605
  descriptors: {
@@ -1087,13 +1087,13 @@ export declare const TunerStatusSchema: z.ZodObject<{
1087
1087
  /** 调谐状态 */
1088
1088
  status: z.ZodOptional<z.ZodEnum<["idle", "tuning", "success", "failed"]>>;
1089
1089
  }, "strip", z.ZodTypeAny, {
1090
- enabled: boolean;
1091
1090
  active: boolean;
1091
+ enabled: boolean;
1092
1092
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1093
1093
  swr?: number | undefined;
1094
1094
  }, {
1095
- enabled: boolean;
1096
1095
  active: boolean;
1096
+ enabled: boolean;
1097
1097
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1098
1098
  swr?: number | undefined;
1099
1099
  }>;
@@ -1148,28 +1148,28 @@ export declare const TunerStatusResponseSchema: z.ZodObject<{
1148
1148
  /** 调谐状态 */
1149
1149
  status: z.ZodOptional<z.ZodEnum<["idle", "tuning", "success", "failed"]>>;
1150
1150
  }, "strip", z.ZodTypeAny, {
1151
- enabled: boolean;
1152
1151
  active: boolean;
1152
+ enabled: boolean;
1153
1153
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1154
1154
  swr?: number | undefined;
1155
1155
  }, {
1156
- enabled: boolean;
1157
1156
  active: boolean;
1157
+ enabled: boolean;
1158
1158
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1159
1159
  swr?: number | undefined;
1160
1160
  }>;
1161
1161
  }, "strip", z.ZodTypeAny, {
1162
1162
  status: {
1163
- enabled: boolean;
1164
1163
  active: boolean;
1164
+ enabled: boolean;
1165
1165
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1166
1166
  swr?: number | undefined;
1167
1167
  };
1168
1168
  success: boolean;
1169
1169
  }, {
1170
1170
  status: {
1171
- enabled: boolean;
1172
1171
  active: boolean;
1172
+ enabled: boolean;
1173
1173
  status?: "success" | "idle" | "tuning" | "failed" | undefined;
1174
1174
  swr?: number | undefined;
1175
1175
  };
@@ -1,4 +1,28 @@
1
1
  import { z } from 'zod';
2
+ /**
3
+ * Frequency context captured when a slot pack is created.
4
+ * Fields are optional so older persisted slot packs remain valid.
5
+ */
6
+ export declare const SlotPackFrequencyContextSchema: z.ZodObject<{
7
+ frequency: z.ZodOptional<z.ZodNumber>;
8
+ mode: z.ZodOptional<z.ZodString>;
9
+ band: z.ZodOptional<z.ZodString>;
10
+ radioMode: z.ZodOptional<z.ZodString>;
11
+ description: z.ZodOptional<z.ZodString>;
12
+ }, "strip", z.ZodTypeAny, {
13
+ mode?: string | undefined;
14
+ frequency?: number | undefined;
15
+ band?: string | undefined;
16
+ radioMode?: string | undefined;
17
+ description?: string | undefined;
18
+ }, {
19
+ mode?: string | undefined;
20
+ frequency?: number | undefined;
21
+ band?: string | undefined;
22
+ radioMode?: string | undefined;
23
+ description?: string | undefined;
24
+ }>;
25
+ export type SlotPackFrequencyContext = z.infer<typeof SlotPackFrequencyContextSchema>;
2
26
  /**
3
27
  * 时隙周期(偶数奇数)
4
28
  */
@@ -217,6 +241,35 @@ export declare const FrameMessageSchema: z.ZodObject<{
217
241
  } | undefined;
218
242
  }>;
219
243
  export type FrameMessage = z.infer<typeof FrameMessageSchema>;
244
+ export declare const DecodeApContextSchema: z.ZodObject<{
245
+ operatorId: z.ZodString;
246
+ myCall: z.ZodString;
247
+ myGrid: z.ZodOptional<z.ZodString>;
248
+ dxCall: z.ZodString;
249
+ dxGrid: z.ZodOptional<z.ZodString>;
250
+ frequencyHz: z.ZodNumber;
251
+ qsoProgress: z.ZodNumber;
252
+ currentSlot: z.ZodString;
253
+ }, "strip", z.ZodTypeAny, {
254
+ operatorId: string;
255
+ myCall: string;
256
+ dxCall: string;
257
+ frequencyHz: number;
258
+ qsoProgress: number;
259
+ currentSlot: string;
260
+ myGrid?: string | undefined;
261
+ dxGrid?: string | undefined;
262
+ }, {
263
+ operatorId: string;
264
+ myCall: string;
265
+ dxCall: string;
266
+ frequencyHz: number;
267
+ qsoProgress: number;
268
+ currentSlot: string;
269
+ myGrid?: string | undefined;
270
+ dxGrid?: string | undefined;
271
+ }>;
272
+ export type DecodeApContext = z.infer<typeof DecodeApContextSchema>;
220
273
  /**
221
274
  * 解码请求,用于SlotScheduler内部
222
275
  */
@@ -235,6 +288,35 @@ export declare const DecodeRequestSchema: z.ZodObject<{
235
288
  timestamp: z.ZodDefault<z.ZodNumber>;
236
289
  /** 窗口时间偏移(毫秒) */
237
290
  windowOffsetMs: z.ZodDefault<z.ZodNumber>;
291
+ /** 可选的单操作员 AP decode 上下文 */
292
+ apContext: z.ZodOptional<z.ZodObject<{
293
+ operatorId: z.ZodString;
294
+ myCall: z.ZodString;
295
+ myGrid: z.ZodOptional<z.ZodString>;
296
+ dxCall: z.ZodString;
297
+ dxGrid: z.ZodOptional<z.ZodString>;
298
+ frequencyHz: z.ZodNumber;
299
+ qsoProgress: z.ZodNumber;
300
+ currentSlot: z.ZodString;
301
+ }, "strip", z.ZodTypeAny, {
302
+ operatorId: string;
303
+ myCall: string;
304
+ dxCall: string;
305
+ frequencyHz: number;
306
+ qsoProgress: number;
307
+ currentSlot: string;
308
+ myGrid?: string | undefined;
309
+ dxGrid?: string | undefined;
310
+ }, {
311
+ operatorId: string;
312
+ myCall: string;
313
+ dxCall: string;
314
+ frequencyHz: number;
315
+ qsoProgress: number;
316
+ currentSlot: string;
317
+ myGrid?: string | undefined;
318
+ dxGrid?: string | undefined;
319
+ }>>;
238
320
  }, "strip", z.ZodTypeAny, {
239
321
  sampleRate: number;
240
322
  mode: "FT8" | "FT4";
@@ -243,6 +325,16 @@ export declare const DecodeRequestSchema: z.ZodObject<{
243
325
  pcm: ArrayBuffer;
244
326
  timestamp: number;
245
327
  windowOffsetMs: number;
328
+ apContext?: {
329
+ operatorId: string;
330
+ myCall: string;
331
+ dxCall: string;
332
+ frequencyHz: number;
333
+ qsoProgress: number;
334
+ currentSlot: string;
335
+ myGrid?: string | undefined;
336
+ dxGrid?: string | undefined;
337
+ } | undefined;
246
338
  }, {
247
339
  slotId: string;
248
340
  windowIdx: number;
@@ -251,6 +343,16 @@ export declare const DecodeRequestSchema: z.ZodObject<{
251
343
  mode?: "FT8" | "FT4" | undefined;
252
344
  timestamp?: number | undefined;
253
345
  windowOffsetMs?: number | undefined;
346
+ apContext?: {
347
+ operatorId: string;
348
+ myCall: string;
349
+ dxCall: string;
350
+ frequencyHz: number;
351
+ qsoProgress: number;
352
+ currentSlot: string;
353
+ myGrid?: string | undefined;
354
+ dxGrid?: string | undefined;
355
+ } | undefined;
254
356
  }>;
255
357
  export type DecodeRequest = z.infer<typeof DecodeRequestSchema>;
256
358
  /**
@@ -619,6 +721,26 @@ export declare const SlotPackSchema: z.ZodObject<{
619
721
  processingTimeMs: number;
620
722
  frameCount: number;
621
723
  }>, "many">>;
724
+ /** Dial/band context active when this slot was created. */
725
+ frequencyContext: z.ZodOptional<z.ZodObject<{
726
+ frequency: z.ZodOptional<z.ZodNumber>;
727
+ mode: z.ZodOptional<z.ZodString>;
728
+ band: z.ZodOptional<z.ZodString>;
729
+ radioMode: z.ZodOptional<z.ZodString>;
730
+ description: z.ZodOptional<z.ZodString>;
731
+ }, "strip", z.ZodTypeAny, {
732
+ mode?: string | undefined;
733
+ frequency?: number | undefined;
734
+ band?: string | undefined;
735
+ radioMode?: string | undefined;
736
+ description?: string | undefined;
737
+ }, {
738
+ mode?: string | undefined;
739
+ frequency?: number | undefined;
740
+ band?: string | undefined;
741
+ radioMode?: string | undefined;
742
+ description?: string | undefined;
743
+ }>>;
622
744
  }, "strip", z.ZodTypeAny, {
623
745
  startMs: number;
624
746
  slotId: string;
@@ -660,6 +782,13 @@ export declare const SlotPackSchema: z.ZodObject<{
660
782
  processingTimeMs: number;
661
783
  frameCount: number;
662
784
  }[];
785
+ frequencyContext?: {
786
+ mode?: string | undefined;
787
+ frequency?: number | undefined;
788
+ band?: string | undefined;
789
+ radioMode?: string | undefined;
790
+ description?: string | undefined;
791
+ } | undefined;
663
792
  }, {
664
793
  startMs: number;
665
794
  slotId: string;
@@ -701,6 +830,13 @@ export declare const SlotPackSchema: z.ZodObject<{
701
830
  processingTimeMs: number;
702
831
  frameCount: number;
703
832
  }[] | undefined;
833
+ frequencyContext?: {
834
+ mode?: string | undefined;
835
+ frequency?: number | undefined;
836
+ band?: string | undefined;
837
+ radioMode?: string | undefined;
838
+ description?: string | undefined;
839
+ } | undefined;
704
840
  }>;
705
841
  export type SlotPack = z.infer<typeof SlotPackSchema>;
706
842
  //# sourceMappingURL=slot-info.schema.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"slot-info.schema.d.ts","sourceRoot":"","sources":["../../src/schema/slot-info.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slot-info.schema.d.ts","sourceRoot":"","sources":["../../src/schema/slot-info.schema.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,16 @@
1
1
  import { z } from 'zod';
2
2
  import { DxccStatusSchema, SubdivisionConfidenceSchema } from './qso.schema.js';
3
+ /**
4
+ * Frequency context captured when a slot pack is created.
5
+ * Fields are optional so older persisted slot packs remain valid.
6
+ */
7
+ export const SlotPackFrequencyContextSchema = z.object({
8
+ frequency: z.number().optional(),
9
+ mode: z.string().optional(),
10
+ band: z.string().optional(),
11
+ radioMode: z.string().optional(),
12
+ description: z.string().optional(),
13
+ });
3
14
  /**
4
15
  * 时隙周期(偶数奇数)
5
16
  */
@@ -72,6 +83,16 @@ export const FrameMessageSchema = z.object({
72
83
  /** 操作员ID(可选,仅 TX 帧使用,用于多操作员覆盖识别) */
73
84
  operatorId: z.string().optional()
74
85
  });
86
+ export const DecodeApContextSchema = z.object({
87
+ operatorId: z.string(),
88
+ myCall: z.string(),
89
+ myGrid: z.string().optional(),
90
+ dxCall: z.string(),
91
+ dxGrid: z.string().optional(),
92
+ frequencyHz: z.number(),
93
+ qsoProgress: z.number(),
94
+ currentSlot: z.string(),
95
+ });
75
96
  /**
76
97
  * 解码请求,用于SlotScheduler内部
77
98
  */
@@ -89,7 +110,9 @@ export const DecodeRequestSchema = z.object({
89
110
  /** 请求时间戳 */
90
111
  timestamp: z.number().default(() => Date.now()),
91
112
  /** 窗口时间偏移(毫秒) */
92
- windowOffsetMs: z.number().default(0)
113
+ windowOffsetMs: z.number().default(0),
114
+ /** 可选的单操作员 AP decode 上下文 */
115
+ apContext: DecodeApContextSchema.optional()
93
116
  });
94
117
  /**
95
118
  * 解码结果,用于SlotScheduler内部
@@ -143,6 +166,8 @@ export const SlotPackSchema = z.object({
143
166
  timestamp: z.number(),
144
167
  frameCount: z.number(),
145
168
  processingTimeMs: z.number()
146
- })).default([])
169
+ })).default([]),
170
+ /** Dial/band context active when this slot was created. */
171
+ frequencyContext: SlotPackFrequencyContextSchema.optional()
147
172
  });
148
173
  //# sourceMappingURL=slot-info.schema.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"slot-info.schema.js","sourceRoot":"","sources":["../../src/schema/slot-info.schema.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"slot-info.schema.js","sourceRoot":"","sources":["../../src/schema/slot-info.schema.ts"],"names":[],"mappings":"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"}