snss-types 1.0.6 → 1.0.7

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.
@@ -45,11 +45,11 @@ interface SceneItemMeta {
45
45
  satellites_json?: SceneSatellitesData;
46
46
  nodes_json?: SceneNodesData;
47
47
  links_json?: SceneLinksData;
48
+ metrics_json?: SceneMetricsData;
49
+ evaluation_json?: SceneEvaluationData;
48
50
  tasks_json?: SceneTasksData;
49
51
  flows_json?: SceneFlowsData;
50
52
  timeline_json?: SceneTimelineData;
51
- metrics_json?: SceneMetricsData;
52
- evaluation_json?: SceneEvaluationData;
53
53
  }
54
54
  /**
55
55
  * 场景角色类型
@@ -215,6 +215,135 @@ type SceneLinkType = 'ISL' | 'IOL' | 'GSL' | 'BACKHAUL';
215
215
  * 节点类型
216
216
  */
217
217
  type SceneLinkNodeType = 'satellite' | 'gateway' | 'user_terminal' | 'control_center' | 'other';
218
+ /**
219
+ * 概要统计
220
+ */
221
+ interface SceneMetricsSummary {
222
+ active_flow_total: number;
223
+ high_priority_flow_total: number;
224
+ avg_delay_ms: number;
225
+ avg_loss_rate: number;
226
+ avg_throughput_mbps: number;
227
+ congested_link_total: number;
228
+ }
229
+ /**
230
+ * 时序数据点
231
+ */
232
+ interface SceneTimeseriesPoint {
233
+ timestamp_s: number;
234
+ active_flow_count: number;
235
+ network_throughput_mbps: number;
236
+ avg_delay_ms: number;
237
+ avg_loss_rate: number;
238
+ congested_link_count: number;
239
+ }
240
+ /**
241
+ * 图表配置
242
+ */
243
+ interface SceneChartConfig {
244
+ chart_id: string;
245
+ chart_name: string;
246
+ chart_type: string;
247
+ x_field: string;
248
+ y_fields: string[];
249
+ unit: string;
250
+ }
251
+ /**
252
+ * 图表资源
253
+ */
254
+ interface SceneFigureAsset {
255
+ figure_id: string;
256
+ figure_name: string;
257
+ figure_type: string;
258
+ file_path: string;
259
+ description: string;
260
+ }
261
+ /**
262
+ * 指标数据
263
+ */
264
+ interface SceneMetricsData {
265
+ summary: SceneMetricsSummary;
266
+ timeseries: SceneTimeseriesPoint[];
267
+ charts: SceneChartConfig[];
268
+ figure_assets: SceneFigureAsset[];
269
+ }
270
+ /**
271
+ * 评估方法类型
272
+ */
273
+ type SceneEvaluationMethod = 'AHP_ENTROPY';
274
+ /**
275
+ * 指标方向类型
276
+ */
277
+ type SceneMetricDirection = 'benefit' | 'cost';
278
+ /**
279
+ * 评估模型
280
+ */
281
+ interface SceneEvaluationModel {
282
+ method: SceneEvaluationMethod;
283
+ }
284
+ /**
285
+ * 细分指标
286
+ */
287
+ interface SceneMetric {
288
+ metric_id: string;
289
+ metric_name: string;
290
+ direction: SceneMetricDirection;
291
+ value: number;
292
+ normalized_value: number;
293
+ unit: string;
294
+ }
295
+ /**
296
+ * 评估维度
297
+ */
298
+ interface SceneEvaluationDimension {
299
+ dimension_id: string;
300
+ dimension_name: string;
301
+ score: number;
302
+ ahp_weight: number;
303
+ entropy_weight: number;
304
+ combined_weight: number;
305
+ metrics: SceneMetric[];
306
+ }
307
+ /**
308
+ * 最终得分
309
+ */
310
+ interface SceneFinalScore {
311
+ score: number;
312
+ score_scale: string;
313
+ }
314
+ /**
315
+ * 评估图表配置
316
+ */
317
+ interface SceneEvaluationChart {
318
+ chart_id: string;
319
+ chart_name: string;
320
+ chart_type: string;
321
+ label_field: string;
322
+ value_field: string;
323
+ unit: string;
324
+ }
325
+ /**
326
+ * 评估图表资源
327
+ */
328
+ interface SceneEvaluationFigureAsset {
329
+ figure_id: string;
330
+ figure_name: string;
331
+ figure_type: string;
332
+ file_path: string;
333
+ description: string;
334
+ }
335
+ /**
336
+ * 评估结果
337
+ */
338
+ interface SceneEvaluationData {
339
+ scene_id: string;
340
+ scene_name: string;
341
+ evaluation_model: SceneEvaluationModel;
342
+ dimensions: SceneEvaluationDimension[];
343
+ final_score: SceneFinalScore;
344
+ charts: SceneEvaluationChart[];
345
+ figure_assets: SceneEvaluationFigureAsset[];
346
+ }
218
347
  /**
219
348
  * 任务列表
220
349
  */
@@ -347,158 +476,725 @@ interface SceneTaskState {
347
476
  active_flow_ids: string[];
348
477
  }
349
478
  /**
350
- * 概要统计
479
+ * 场景任务实体(querySceneTasks 返回的列表项)
351
480
  */
352
- interface SceneMetricsSummary {
353
- active_flow_total: number;
354
- high_priority_flow_total: number;
355
- avg_delay_ms: number;
356
- avg_loss_rate: number;
357
- avg_throughput_mbps: number;
358
- congested_link_total: number;
481
+ interface SceneTaskEntityData {
482
+ /** 案例ID */
483
+ case_id: string;
484
+ /** 场景ID */
485
+ scene_id: string;
486
+ /** 任务ID */
487
+ task_id: string;
488
+ /** 任务名称 */
489
+ task_name: string;
490
+ /** 任务类型 */
491
+ task_type: string;
492
+ /** 优先级 */
493
+ priority: string;
494
+ /** 关联的业务流ID列表(逗号分隔) */
495
+ flow_ids: string;
496
+ /** 开始时间(秒) */
497
+ start_time_s: number;
498
+ /** 结束时间(秒) */
499
+ end_time_s: number;
359
500
  }
360
501
  /**
361
- * 时序数据点
502
+ * 场景任务实体(querySceneTasks 返回的列表项)
362
503
  */
363
- interface SceneTimeseriesPoint {
364
- timestamp_s: number;
365
- active_flow_count: number;
366
- network_throughput_mbps: number;
367
- avg_delay_ms: number;
368
- avg_loss_rate: number;
369
- congested_link_count: number;
504
+ interface SceneTaskEntityData {
505
+ /** 案例ID */
506
+ case_id: string;
507
+ /** 场景ID */
508
+ scene_id: string;
509
+ /** 任务ID */
510
+ task_id: string;
511
+ /** 任务名称 */
512
+ task_name: string;
513
+ /** 任务类型 */
514
+ task_type: string;
515
+ /** 优先级 */
516
+ priority: string;
517
+ /** 关联的业务流ID列表(逗号分隔) */
518
+ flow_ids: string;
519
+ /** 开始时间(秒) */
520
+ start_time_s: number;
521
+ /** 结束时间(秒) */
522
+ end_time_s: number;
370
523
  }
371
524
  /**
372
- * 图表配置
525
+ * 场景任务实体(querySceneTasks 返回的列表项)
373
526
  */
374
- interface SceneChartConfig {
375
- chart_id: string;
376
- chart_name: string;
377
- chart_type: string;
378
- x_field: string;
379
- y_fields: string[];
380
- unit: string;
527
+ interface SceneTaskEntityData {
528
+ /** 案例ID */
529
+ case_id: string;
530
+ /** 场景ID */
531
+ scene_id: string;
532
+ /** 任务ID */
533
+ task_id: string;
534
+ /** 任务名称 */
535
+ task_name: string;
536
+ /** 任务类型 */
537
+ task_type: string;
538
+ /** 优先级 */
539
+ priority: string;
540
+ /** 关联的业务流ID列表(逗号分隔) */
541
+ flow_ids: string;
542
+ /** 开始时间(秒) */
543
+ start_time_s: number;
544
+ /** 结束时间(秒) */
545
+ end_time_s: number;
381
546
  }
382
547
  /**
383
- * 图表资源
548
+ * 场景任务实体(querySceneTasks 返回的列表项)
384
549
  */
385
- interface SceneFigureAsset {
386
- figure_id: string;
387
- figure_name: string;
388
- figure_type: string;
389
- file_path: string;
390
- description: string;
550
+ interface SceneTaskEntityData {
551
+ /** 案例ID */
552
+ case_id: string;
553
+ /** 场景ID */
554
+ scene_id: string;
555
+ /** 任务ID */
556
+ task_id: string;
557
+ /** 任务名称 */
558
+ task_name: string;
559
+ /** 任务类型 */
560
+ task_type: string;
561
+ /** 优先级 */
562
+ priority: string;
563
+ /** 关联的业务流ID列表(逗号分隔) */
564
+ flow_ids: string;
565
+ /** 开始时间(秒) */
566
+ start_time_s: number;
567
+ /** 结束时间(秒) */
568
+ end_time_s: number;
391
569
  }
392
570
  /**
393
- * 指标数据
571
+ * 场景任务实体(querySceneTasks 返回的列表项)
394
572
  */
395
- interface SceneMetricsData {
396
- summary: SceneMetricsSummary;
397
- timeseries: SceneTimeseriesPoint[];
398
- charts: SceneChartConfig[];
399
- figure_assets: SceneFigureAsset[];
573
+ interface SceneTaskEntityData {
574
+ /** 案例ID */
575
+ case_id: string;
576
+ /** 场景ID */
577
+ scene_id: string;
578
+ /** 任务ID */
579
+ task_id: string;
580
+ /** 任务名称 */
581
+ task_name: string;
582
+ /** 任务类型 */
583
+ task_type: string;
584
+ /** 优先级 */
585
+ priority: string;
586
+ /** 关联的业务流ID列表(逗号分隔) */
587
+ flow_ids: string;
588
+ /** 开始时间(秒) */
589
+ start_time_s: number;
590
+ /** 结束时间(秒) */
591
+ end_time_s: number;
400
592
  }
401
593
  /**
402
- * 评估方法类型
594
+ * 场景任务实体(querySceneTasks 返回的列表项)
403
595
  */
404
- type SceneEvaluationMethod = 'AHP_ENTROPY';
596
+ interface SceneTaskEntityData {
597
+ /** 案例ID */
598
+ case_id: string;
599
+ /** 场景ID */
600
+ scene_id: string;
601
+ /** 任务ID */
602
+ task_id: string;
603
+ /** 任务名称 */
604
+ task_name: string;
605
+ /** 任务类型 */
606
+ task_type: string;
607
+ /** 优先级 */
608
+ priority: string;
609
+ /** 关联的业务流ID列表(逗号分隔) */
610
+ flow_ids: string;
611
+ /** 开始时间(秒) */
612
+ start_time_s: number;
613
+ /** 结束时间(秒) */
614
+ end_time_s: number;
615
+ }
405
616
  /**
406
- * 指标方向类型
617
+ * 场景任务实体(querySceneTasks 返回的列表项)
407
618
  */
408
- type SceneMetricDirection = 'benefit' | 'cost';
619
+ interface SceneTaskEntityData {
620
+ /** 案例ID */
621
+ case_id: string;
622
+ /** 场景ID */
623
+ scene_id: string;
624
+ /** 任务ID */
625
+ task_id: string;
626
+ /** 任务名称 */
627
+ task_name: string;
628
+ /** 任务类型 */
629
+ task_type: string;
630
+ /** 优先级 */
631
+ priority: string;
632
+ /** 关联的业务流ID列表(逗号分隔) */
633
+ flow_ids: string;
634
+ /** 开始时间(秒) */
635
+ start_time_s: number;
636
+ /** 结束时间(秒) */
637
+ end_time_s: number;
638
+ }
409
639
  /**
410
- * 评估模型
640
+ * 场景任务实体(querySceneTasks 返回的列表项)
411
641
  */
412
- interface SceneEvaluationModel {
413
- method: SceneEvaluationMethod;
642
+ interface SceneTaskEntityData {
643
+ /** 案例ID */
644
+ case_id: string;
645
+ /** 场景ID */
646
+ scene_id: string;
647
+ /** 任务ID */
648
+ task_id: string;
649
+ /** 任务名称 */
650
+ task_name: string;
651
+ /** 任务类型 */
652
+ task_type: string;
653
+ /** 优先级 */
654
+ priority: string;
655
+ /** 关联的业务流ID列表(逗号分隔) */
656
+ flow_ids: string;
657
+ /** 开始时间(秒) */
658
+ start_time_s: number;
659
+ /** 结束时间(秒) */
660
+ end_time_s: number;
414
661
  }
415
662
  /**
416
- * 细分指标
663
+ * 场景任务实体(querySceneTasks 返回的列表项)
417
664
  */
418
- interface SceneMetric {
419
- metric_id: string;
420
- metric_name: string;
421
- direction: SceneMetricDirection;
422
- value: number;
423
- normalized_value: number;
424
- unit: string;
665
+ interface SceneTaskEntityData {
666
+ /** 案例ID */
667
+ case_id: string;
668
+ /** 场景ID */
669
+ scene_id: string;
670
+ /** 任务ID */
671
+ task_id: string;
672
+ /** 任务名称 */
673
+ task_name: string;
674
+ /** 任务类型 */
675
+ task_type: string;
676
+ /** 优先级 */
677
+ priority: string;
678
+ /** 关联的业务流ID列表(逗号分隔) */
679
+ flow_ids: string;
680
+ /** 开始时间(秒) */
681
+ start_time_s: number;
682
+ /** 结束时间(秒) */
683
+ end_time_s: number;
425
684
  }
426
685
  /**
427
- * 评估维度
686
+ * 场景任务实体(querySceneTasks 返回的列表项)
428
687
  */
429
- interface SceneEvaluationDimension {
430
- dimension_id: string;
431
- dimension_name: string;
432
- score: number;
433
- ahp_weight: number;
434
- entropy_weight: number;
435
- combined_weight: number;
436
- metrics: SceneMetric[];
688
+ interface SceneTaskEntityData {
689
+ /** 案例ID */
690
+ case_id: string;
691
+ /** 场景ID */
692
+ scene_id: string;
693
+ /** 任务ID */
694
+ task_id: string;
695
+ /** 任务名称 */
696
+ task_name: string;
697
+ /** 任务类型 */
698
+ task_type: string;
699
+ /** 优先级 */
700
+ priority: string;
701
+ /** 关联的业务流ID列表(逗号分隔) */
702
+ flow_ids: string;
703
+ /** 开始时间(秒) */
704
+ start_time_s: number;
705
+ /** 结束时间(秒) */
706
+ end_time_s: number;
437
707
  }
438
708
  /**
439
- * 最终得分
709
+ * 场景任务实体(querySceneTasks 返回的列表项)
440
710
  */
441
- interface SceneFinalScore {
442
- score: number;
443
- score_scale: string;
711
+ interface SceneTaskEntityData {
712
+ /** 案例ID */
713
+ case_id: string;
714
+ /** 场景ID */
715
+ scene_id: string;
716
+ /** 任务ID */
717
+ task_id: string;
718
+ /** 任务名称 */
719
+ task_name: string;
720
+ /** 任务类型 */
721
+ task_type: string;
722
+ /** 优先级 */
723
+ priority: string;
724
+ /** 关联的业务流ID列表(逗号分隔) */
725
+ flow_ids: string;
726
+ /** 开始时间(秒) */
727
+ start_time_s: number;
728
+ /** 结束时间(秒) */
729
+ end_time_s: number;
444
730
  }
445
731
  /**
446
- * 评估图表配置
732
+ * 场景业务流实体(querySceneFlows 返回的列表项)
447
733
  */
448
- interface SceneEvaluationChart {
449
- chart_id: string;
450
- chart_name: string;
451
- chart_type: string;
452
- label_field: string;
453
- value_field: string;
454
- unit: string;
734
+ interface SceneFlowEntityData {
735
+ /** 案例ID */
736
+ case_id: string;
737
+ /** 场景ID */
738
+ scene_id: string;
739
+ /** 所属任务ID */
740
+ task_id: string;
741
+ /** 业务流ID */
742
+ flow_id: string;
743
+ /** 业务流名称 */
744
+ flow_name: string;
745
+ /** 业务类型 */
746
+ service_type: string;
747
+ /** 优先级 */
748
+ priority: string;
749
+ /** 源节点ID */
750
+ src_node_id: string;
751
+ /** 目标节点ID */
752
+ dst_node_id: string;
753
+ /** 开始时间(秒) */
754
+ start_time_s: number;
755
+ /** 结束时间(秒) */
756
+ end_time_s: number;
455
757
  }
456
758
  /**
457
- * 评估图表资源
759
+ * 场景业务流实体(querySceneFlows 返回的列表项)
458
760
  */
459
- interface SceneEvaluationFigureAsset {
460
- figure_id: string;
461
- figure_name: string;
462
- figure_type: string;
463
- file_path: string;
464
- description: string;
761
+ interface SceneFlowEntityData {
762
+ /** 案例ID */
763
+ case_id: string;
764
+ /** 场景ID */
765
+ scene_id: string;
766
+ /** 所属任务ID */
767
+ task_id: string;
768
+ /** 业务流ID */
769
+ flow_id: string;
770
+ /** 业务流名称 */
771
+ flow_name: string;
772
+ /** 业务类型 */
773
+ service_type: string;
774
+ /** 优先级 */
775
+ priority: string;
776
+ /** 源节点ID */
777
+ src_node_id: string;
778
+ /** 目标节点ID */
779
+ dst_node_id: string;
780
+ /** 开始时间(秒) */
781
+ start_time_s: number;
782
+ /** 结束时间(秒) */
783
+ end_time_s: number;
465
784
  }
466
785
  /**
467
- * 评估结果
786
+ * 场景业务流实体(querySceneFlows 返回的列表项)
468
787
  */
469
- interface SceneEvaluationData {
788
+ interface SceneFlowEntityData {
789
+ /** 案例ID */
790
+ case_id: string;
791
+ /** 场景ID */
470
792
  scene_id: string;
471
- scene_name: string;
472
- evaluation_model: SceneEvaluationModel;
473
- dimensions: SceneEvaluationDimension[];
474
- final_score: SceneFinalScore;
475
- charts: SceneEvaluationChart[];
476
- figure_assets: SceneEvaluationFigureAsset[];
793
+ /** 所属任务ID */
794
+ task_id: string;
795
+ /** 业务流ID */
796
+ flow_id: string;
797
+ /** 业务流名称 */
798
+ flow_name: string;
799
+ /** 业务类型 */
800
+ service_type: string;
801
+ /** 优先级 */
802
+ priority: string;
803
+ /** 源节点ID */
804
+ src_node_id: string;
805
+ /** 目标节点ID */
806
+ dst_node_id: string;
807
+ /** 开始时间(秒) */
808
+ start_time_s: number;
809
+ /** 结束时间(秒) */
810
+ end_time_s: number;
477
811
  }
478
-
479
812
  /**
480
- * 案例类型
813
+ * 场景业务流实体(querySceneFlows 返回的列表项)
481
814
  */
482
- type CaseType = 'architecture_optimization';
815
+ interface SceneFlowEntityData {
816
+ /** 案例ID */
817
+ case_id: string;
818
+ /** 场景ID */
819
+ scene_id: string;
820
+ /** 所属任务ID */
821
+ task_id: string;
822
+ /** 业务流ID */
823
+ flow_id: string;
824
+ /** 业务流名称 */
825
+ flow_name: string;
826
+ /** 业务类型 */
827
+ service_type: string;
828
+ /** 优先级 */
829
+ priority: string;
830
+ /** 源节点ID */
831
+ src_node_id: string;
832
+ /** 目标节点ID */
833
+ dst_node_id: string;
834
+ /** 开始时间(秒) */
835
+ start_time_s: number;
836
+ /** 结束时间(秒) */
837
+ end_time_s: number;
838
+ }
483
839
  /**
484
- * 优化评估案例
840
+ * 场景业务流实体(querySceneFlows 返回的列表项)
485
841
  */
486
- interface CaseJsonData {
487
- /** 案例唯一标识 */
842
+ interface SceneFlowEntityData {
843
+ /** 案例ID */
488
844
  case_id: string;
489
- /** 案例名称 */
490
- case_name: string;
491
- /** 案例类型 */
492
- case_type: CaseType;
493
- /** 案例描述 */
494
- description: string;
495
- /** 默认展示的场景ID */
496
- default_scene_id: string;
497
- /** 场景顺序列表(按迭代顺序排列的 scene_id 数组) */
498
- scene_order: string[];
499
- /** 场景详情列表 */
500
- scenes: CaseSceneInfo[];
845
+ /** 场景ID */
846
+ scene_id: string;
847
+ /** 所属任务ID */
848
+ task_id: string;
849
+ /** 业务流ID */
850
+ flow_id: string;
851
+ /** 业务流名称 */
852
+ flow_name: string;
853
+ /** 业务类型 */
854
+ service_type: string;
855
+ /** 优先级 */
856
+ priority: string;
857
+ /** 源节点ID */
858
+ src_node_id: string;
859
+ /** 目标节点ID */
860
+ dst_node_id: string;
861
+ /** 开始时间(秒) */
862
+ start_time_s: number;
863
+ /** 结束时间(秒) */
864
+ end_time_s: number;
865
+ }
866
+ /**
867
+ * 场景业务流实体(querySceneFlows 返回的列表项)
868
+ */
869
+ interface SceneFlowEntityData {
870
+ /** 案例ID */
871
+ case_id: string;
872
+ /** 场景ID */
873
+ scene_id: string;
874
+ /** 所属任务ID */
875
+ task_id: string;
876
+ /** 业务流ID */
877
+ flow_id: string;
878
+ /** 业务流名称 */
879
+ flow_name: string;
880
+ /** 业务类型 */
881
+ service_type: string;
882
+ /** 优先级 */
883
+ priority: string;
884
+ /** 源节点ID */
885
+ src_node_id: string;
886
+ /** 目标节点ID */
887
+ dst_node_id: string;
888
+ /** 开始时间(秒) */
889
+ start_time_s: number;
890
+ /** 结束时间(秒) */
891
+ end_time_s: number;
892
+ }
893
+ /**
894
+ * 场景业务流实体(querySceneFlows 返回的列表项)
895
+ */
896
+ interface SceneFlowEntityData {
897
+ /** 案例ID */
898
+ case_id: string;
899
+ /** 场景ID */
900
+ scene_id: string;
901
+ /** 所属任务ID */
902
+ task_id: string;
903
+ /** 业务流ID */
904
+ flow_id: string;
905
+ /** 业务流名称 */
906
+ flow_name: string;
907
+ /** 业务类型 */
908
+ service_type: string;
909
+ /** 优先级 */
910
+ priority: string;
911
+ /** 源节点ID */
912
+ src_node_id: string;
913
+ /** 目标节点ID */
914
+ dst_node_id: string;
915
+ /** 开始时间(秒) */
916
+ start_time_s: number;
917
+ /** 结束时间(秒) */
918
+ end_time_s: number;
919
+ }
920
+ /**
921
+ * 场景业务流实体(querySceneFlows 返回的列表项)
922
+ */
923
+ interface SceneFlowEntityData {
924
+ /** 案例ID */
925
+ case_id: string;
926
+ /** 场景ID */
927
+ scene_id: string;
928
+ /** 所属任务ID */
929
+ task_id: string;
930
+ /** 业务流ID */
931
+ flow_id: string;
932
+ /** 业务流名称 */
933
+ flow_name: string;
934
+ /** 业务类型 */
935
+ service_type: string;
936
+ /** 优先级 */
937
+ priority: string;
938
+ /** 源节点ID */
939
+ src_node_id: string;
940
+ /** 目标节点ID */
941
+ dst_node_id: string;
942
+ /** 开始时间(秒) */
943
+ start_time_s: number;
944
+ /** 结束时间(秒) */
945
+ end_time_s: number;
946
+ }
947
+ /**
948
+ * 场景业务流实体(querySceneFlows 返回的列表项)
949
+ */
950
+ interface SceneFlowEntityData {
951
+ /** 案例ID */
952
+ case_id: string;
953
+ /** 场景ID */
954
+ scene_id: string;
955
+ /** 所属任务ID */
956
+ task_id: string;
957
+ /** 业务流ID */
958
+ flow_id: string;
959
+ /** 业务流名称 */
960
+ flow_name: string;
961
+ /** 业务类型 */
962
+ service_type: string;
963
+ /** 优先级 */
964
+ priority: string;
965
+ /** 源节点ID */
966
+ src_node_id: string;
967
+ /** 目标节点ID */
968
+ dst_node_id: string;
969
+ /** 开始时间(秒) */
970
+ start_time_s: number;
971
+ /** 结束时间(秒) */
972
+ end_time_s: number;
501
973
  }
974
+ /**
975
+ * 场景业务流实体(querySceneFlows 返回的列表项)
976
+ */
977
+ interface SceneFlowEntityData {
978
+ /** 案例ID */
979
+ case_id: string;
980
+ /** 场景ID */
981
+ scene_id: string;
982
+ /** 所属任务ID */
983
+ task_id: string;
984
+ /** 业务流ID */
985
+ flow_id: string;
986
+ /** 业务流名称 */
987
+ flow_name: string;
988
+ /** 业务类型 */
989
+ service_type: string;
990
+ /** 优先级 */
991
+ priority: string;
992
+ /** 源节点ID */
993
+ src_node_id: string;
994
+ /** 目标节点ID */
995
+ dst_node_id: string;
996
+ /** 开始时间(秒) */
997
+ start_time_s: number;
998
+ /** 结束时间(秒) */
999
+ end_time_s: number;
1000
+ }
1001
+ /**
1002
+ * 场景业务流实体(querySceneFlows 返回的列表项)
1003
+ */
1004
+ interface SceneFlowEntityData {
1005
+ /** 案例ID */
1006
+ case_id: string;
1007
+ /** 场景ID */
1008
+ scene_id: string;
1009
+ /** 所属任务ID */
1010
+ task_id: string;
1011
+ /** 业务流ID */
1012
+ flow_id: string;
1013
+ /** 业务流名称 */
1014
+ flow_name: string;
1015
+ /** 业务类型 */
1016
+ service_type: string;
1017
+ /** 优先级 */
1018
+ priority: string;
1019
+ /** 源节点ID */
1020
+ src_node_id: string;
1021
+ /** 目标节点ID */
1022
+ dst_node_id: string;
1023
+ /** 开始时间(秒) */
1024
+ start_time_s: number;
1025
+ /** 结束时间(秒) */
1026
+ end_time_s: number;
1027
+ }
1028
+ /**
1029
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1030
+ */
1031
+ interface SceneTimelineEntityData {
1032
+ /** 案例ID */
1033
+ case_id: string;
1034
+ /** 场景ID */
1035
+ scene_id: string;
1036
+ /** 帧号 */
1037
+ frame_no: number;
1038
+ /** 时间戳(秒) */
1039
+ timestamp_s: number;
1040
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1041
+ json_str: string;
1042
+ }
1043
+ /**
1044
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1045
+ */
1046
+ interface SceneTimelineEntityData {
1047
+ /** 案例ID */
1048
+ case_id: string;
1049
+ /** 场景ID */
1050
+ scene_id: string;
1051
+ /** 帧号 */
1052
+ frame_no: number;
1053
+ /** 时间戳(秒) */
1054
+ timestamp_s: number;
1055
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1056
+ json_str: string;
1057
+ }
1058
+ /**
1059
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1060
+ */
1061
+ interface SceneTimelineEntityData {
1062
+ /** 案例ID */
1063
+ case_id: string;
1064
+ /** 场景ID */
1065
+ scene_id: string;
1066
+ /** 帧号 */
1067
+ frame_no: number;
1068
+ /** 时间戳(秒) */
1069
+ timestamp_s: number;
1070
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1071
+ json_str: string;
1072
+ }
1073
+ /**
1074
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1075
+ */
1076
+ interface SceneTimelineEntityData {
1077
+ /** 案例ID */
1078
+ case_id: string;
1079
+ /** 场景ID */
1080
+ scene_id: string;
1081
+ /** 帧号 */
1082
+ frame_no: number;
1083
+ /** 时间戳(秒) */
1084
+ timestamp_s: number;
1085
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1086
+ json_str: string;
1087
+ }
1088
+ /**
1089
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1090
+ */
1091
+ interface SceneTimelineEntityData {
1092
+ /** 案例ID */
1093
+ case_id: string;
1094
+ /** 场景ID */
1095
+ scene_id: string;
1096
+ /** 帧号 */
1097
+ frame_no: number;
1098
+ /** 时间戳(秒) */
1099
+ timestamp_s: number;
1100
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1101
+ json_str: string;
1102
+ }
1103
+ /**
1104
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1105
+ */
1106
+ interface SceneTimelineEntityData {
1107
+ /** 案例ID */
1108
+ case_id: string;
1109
+ /** 场景ID */
1110
+ scene_id: string;
1111
+ /** 帧号 */
1112
+ frame_no: number;
1113
+ /** 时间戳(秒) */
1114
+ timestamp_s: number;
1115
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1116
+ json_str: string;
1117
+ }
1118
+ /**
1119
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1120
+ */
1121
+ interface SceneTimelineEntityData {
1122
+ /** 案例ID */
1123
+ case_id: string;
1124
+ /** 场景ID */
1125
+ scene_id: string;
1126
+ /** 帧号 */
1127
+ frame_no: number;
1128
+ /** 时间戳(秒) */
1129
+ timestamp_s: number;
1130
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1131
+ json_str: string;
1132
+ }
1133
+ /**
1134
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1135
+ */
1136
+ interface SceneTimelineEntityData {
1137
+ /** 案例ID */
1138
+ case_id: string;
1139
+ /** 场景ID */
1140
+ scene_id: string;
1141
+ /** 帧号 */
1142
+ frame_no: number;
1143
+ /** 时间戳(秒) */
1144
+ timestamp_s: number;
1145
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1146
+ json_str: string;
1147
+ }
1148
+ /**
1149
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1150
+ */
1151
+ interface SceneTimelineEntityData {
1152
+ /** 案例ID */
1153
+ case_id: string;
1154
+ /** 场景ID */
1155
+ scene_id: string;
1156
+ /** 帧号 */
1157
+ frame_no: number;
1158
+ /** 时间戳(秒) */
1159
+ timestamp_s: number;
1160
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1161
+ json_str: string;
1162
+ }
1163
+ /**
1164
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1165
+ */
1166
+ interface SceneTimelineEntityData {
1167
+ /** 案例ID */
1168
+ case_id: string;
1169
+ /** 场景ID */
1170
+ scene_id: string;
1171
+ /** 帧号 */
1172
+ frame_no: number;
1173
+ /** 时间戳(秒) */
1174
+ timestamp_s: number;
1175
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1176
+ json_str: string;
1177
+ }
1178
+ /**
1179
+ * 场景时间轴实体(querySceneTimelines 返回的列表项)
1180
+ */
1181
+ interface SceneTimelineEntityData {
1182
+ /** 案例ID */
1183
+ case_id: string;
1184
+ /** 场景ID */
1185
+ scene_id: string;
1186
+ /** 帧号 */
1187
+ frame_no: number;
1188
+ /** 时间戳(秒) */
1189
+ timestamp_s: number;
1190
+ /** JSON 字符串,可解析为 SceneTimelineFrame */
1191
+ json_str: string;
1192
+ }
1193
+
1194
+ /**
1195
+ * 案例类型
1196
+ */
1197
+ type CaseType = 'architecture_optimization';
502
1198
  /**
503
1199
  * 案例库树结构对象
504
1200
  */
@@ -517,6 +1213,28 @@ interface CaseItem {
517
1213
  interface CaseItemMeta {
518
1214
  case_json?: CaseJsonData;
519
1215
  evaluation_summary_json?: CaseEvaluationSummaryJsonData;
1216
+ optimization_trace_json?: OptimizationTraceJsonData;
1217
+ }
1218
+ /**
1219
+ * 优化评估案例
1220
+ */
1221
+ interface CaseJsonData {
1222
+ /** 案例唯一标识 */
1223
+ case_id: string;
1224
+ /** 案例名称 */
1225
+ case_name: string;
1226
+ /** 案例类型 */
1227
+ case_type: CaseType;
1228
+ /** 案例描述 */
1229
+ description: string;
1230
+ /** 默认展示的场景ID */
1231
+ default_scene_id: string;
1232
+ /** 是否为实时模式 */
1233
+ is_realtime_mode: boolean;
1234
+ /** 场景顺序列表(按迭代顺序排列的 scene_id 数组) */
1235
+ scene_order: string[];
1236
+ /** 场景详情列表 */
1237
+ scenes: CaseSceneInfo[];
520
1238
  }
521
1239
  /**
522
1240
  * 案例库多维度评估结果
@@ -556,6 +1274,91 @@ interface CaseSceneDimensionScore {
556
1274
  network_complexity: number;
557
1275
  [x: string]: number;
558
1276
  }
1277
+ /**
1278
+ * 网络架构优化搜索过程记录(case 级文件 optimization_trace.json)
1279
+ */
1280
+ interface OptimizationTraceJsonData {
1281
+ /** 案例唯一标识 */
1282
+ case_id: string;
1283
+ /** 优化终止目标 */
1284
+ optimization_goal: OptimizationGoal;
1285
+ /** 前端主线展示的场景序列(仅包含初始场景和每轮被选中的最优场景) */
1286
+ main_scene_path: string[];
1287
+ /** 逐轮优化记录 */
1288
+ rounds: OptimizationRound[];
1289
+ /** 最终优化得到的场景编号 */
1290
+ final_selected_scene_id: string;
1291
+ /** 优化停止原因 */
1292
+ stop_reason: string;
1293
+ }
1294
+ /**
1295
+ * 优化目标
1296
+ */
1297
+ interface OptimizationGoal {
1298
+ /** 目标类型,如 "completed_task_count" */
1299
+ goal_type: string;
1300
+ /** 目标任务完成数量 */
1301
+ target_completed_task_count?: number;
1302
+ /** 目标任务完成率 */
1303
+ target_completion_rate?: number;
1304
+ }
1305
+ /**
1306
+ * 单轮优化记录
1307
+ */
1308
+ interface OptimizationRound {
1309
+ /** 优化轮次编号 */
1310
+ round_id: string;
1311
+ /** 优化轮次序号(从 1 开始) */
1312
+ round_index: number;
1313
+ /** 本轮候选方案列表 */
1314
+ candidate_results: OptimizationCandidate[];
1315
+ /** 本轮起点场景 ID */
1316
+ base_scene_id: string;
1317
+ /** 本轮起点场景的评估结果 */
1318
+ base_result: OptimizationEvaluationResult;
1319
+ /** 本轮最终选中的优化方向 */
1320
+ selected_action_direction_id: string;
1321
+ /** 本轮最优方案落成后的主线场景编号 */
1322
+ selected_next_scene_id: string;
1323
+ /** 选择该候选方案的原因 */
1324
+ selection_reason: string;
1325
+ /** 选中该候选方案后是否已满足优化目标 */
1326
+ is_goal_satisfied_after_selection: boolean;
1327
+ }
1328
+ /**
1329
+ * 候选优化方案
1330
+ */
1331
+ interface OptimizationCandidate {
1332
+ /** 候选方案名称 */
1333
+ candidate_scene_name: string;
1334
+ /** 优化方向编号 */
1335
+ action_direction_id: string;
1336
+ /** 优化方向名称 */
1337
+ action_direction_name: string;
1338
+ /** 相对本轮起点场景的主要配置变化摘要 */
1339
+ change_summary: string;
1340
+ /** 该候选方案的评估结果 */
1341
+ evaluation_result: OptimizationEvaluationResult;
1342
+ /** 本轮排名 */
1343
+ rank: number;
1344
+ /** 是否被选为本轮最优方案 */
1345
+ is_selected: boolean;
1346
+ }
1347
+ /**
1348
+ * 优化轮次中的评估结果(起点场景或候选方案的评估摘要)
1349
+ */
1350
+ interface OptimizationEvaluationResult {
1351
+ /** 综合最终得分 */
1352
+ final_score: number;
1353
+ /** 各维度得分详情 */
1354
+ dimension_scores: CaseSceneDimensionScore;
1355
+ /** 完成的任务数量 */
1356
+ completed_task_count: number;
1357
+ /** 任务完成率 */
1358
+ task_completion_rate: number;
1359
+ /** 有效服务容量(Mbps) */
1360
+ effective_service_capacity_mbps: number;
1361
+ }
559
1362
 
560
1363
  declare class DirPathDto {
561
1364
  dir: string;
@@ -581,11 +1384,11 @@ declare class SendMessageDto {
581
1384
  * 基础响应结构
582
1385
  * 所有 API 响应的通用格式
583
1386
  */
584
- interface BaseResponse {
1387
+ interface BaseResponse<T = any> {
585
1388
  /** 状态码,通常 200 表示成功,其他表示错误 */
586
1389
  code: number;
587
1390
  /** 响应数据,可选 */
588
- data?: any;
1391
+ data?: T;
589
1392
  /** 响应消息或错误描述 */
590
1393
  message: string;
591
1394
  }
@@ -644,4 +1447,4 @@ interface FigureAssetsImageResponseData {
644
1447
  fileName: string;
645
1448
  }
646
1449
 
647
- export { type BaseResponse, type CaseEvaluationSummaryJsonData, type CaseItem, type CaseItemMeta, type CaseJsonData, type CaseSceneDimensionScore, type CaseSceneEvaluation, type CaseSceneInfo, type CaseTreeResponse, type CaseType, DirPathDto, type FigureAssetsImageResponse, type FigureAssetsImageResponseData, InitCaseCacheDto, ModelDto, ModelEntity, type ModelResponse, type SceneBulkConfigRule, type SceneChartConfig, type SceneConstellation, type SceneConstellationType, type SceneConstellationsData, type SceneEvaluationChart, type SceneEvaluationData, type SceneEvaluationDimension, type SceneEvaluationFigureAsset, type SceneEvaluationMethod, type SceneEvaluationModel, type SceneFigureAsset, type SceneFinalScore, type SceneFlow, type SceneFlowPriority, type SceneFlowState, type SceneFlowsData, type SceneGeoPosition, type SceneItem, type SceneItemMeta, type SceneItemMetaResponse, type SceneLink, type SceneLinkNodeType, type SceneLinkState, type SceneLinkType, type SceneLinksData, type SceneManifestData, type SceneManifestTime, type SceneMetric, type SceneMetricDirection, type SceneMetricsData, type SceneMetricsSummary, type SceneNode, type SceneNodeDisplayOptions, type SceneNodeGatewayCapacity, type SceneNodeMobilityModel, type SceneNodeTerminalType, type SceneNodeType, type SceneNodesData, type SceneRole, type SceneSatellite, type SceneSatelliteTLE, type SceneSatelliteType, type SceneSatellitesData, type SceneServiceType, type SceneTask, type SceneTaskPriority, type SceneTaskState, type SceneTaskType, type SceneTasksData, type SceneTimelineData, type SceneTimelineFrame, type SceneTimeseriesPoint, type SceneUserState, type SceneVelocityWGS, SendMessageDto, type UploadFileResponse, type UploadFileResponseData };
1450
+ export { type BaseResponse, type CaseEvaluationSummaryJsonData, type CaseItem, type CaseItemMeta, type CaseJsonData, type CaseSceneDimensionScore, type CaseSceneEvaluation, type CaseSceneInfo, type CaseTreeResponse, type CaseType, DirPathDto, type FigureAssetsImageResponse, type FigureAssetsImageResponseData, InitCaseCacheDto, ModelDto, ModelEntity, type ModelResponse, type OptimizationCandidate, type OptimizationEvaluationResult, type OptimizationGoal, type OptimizationRound, type OptimizationTraceJsonData, type SceneBulkConfigRule, type SceneChartConfig, type SceneConstellation, type SceneConstellationType, type SceneConstellationsData, type SceneEvaluationChart, type SceneEvaluationData, type SceneEvaluationDimension, type SceneEvaluationFigureAsset, type SceneEvaluationMethod, type SceneEvaluationModel, type SceneFigureAsset, type SceneFinalScore, type SceneFlow, type SceneFlowEntityData, type SceneFlowPriority, type SceneFlowState, type SceneFlowsData, type SceneGeoPosition, type SceneItem, type SceneItemMeta, type SceneItemMetaResponse, type SceneLink, type SceneLinkNodeType, type SceneLinkState, type SceneLinkType, type SceneLinksData, type SceneManifestData, type SceneManifestTime, type SceneMetric, type SceneMetricDirection, type SceneMetricsData, type SceneMetricsSummary, type SceneNode, type SceneNodeDisplayOptions, type SceneNodeGatewayCapacity, type SceneNodeMobilityModel, type SceneNodeTerminalType, type SceneNodeType, type SceneNodesData, type SceneRole, type SceneSatellite, type SceneSatelliteTLE, type SceneSatelliteType, type SceneSatellitesData, type SceneServiceType, type SceneTask, type SceneTaskEntityData, type SceneTaskPriority, type SceneTaskState, type SceneTaskType, type SceneTasksData, type SceneTimelineData, type SceneTimelineEntityData, type SceneTimelineFrame, type SceneTimeseriesPoint, type SceneUserState, type SceneVelocityWGS, SendMessageDto, type UploadFileResponse, type UploadFileResponseData };