Quellcode durchsuchen

test(training): preserve bridge model and v2 narration acceptance

main
leiyun vor 4 Tagen
Ursprung
Commit
bd9f847056
100 geänderte Dateien mit 15097 neuen und 0 gelöschten Zeilen
  1. +3
    -0
      .gitignore
  2. BIN
     
  3. BIN
     
  4. BIN
     
  5. BIN
     
  6. BIN
     
  7. BIN
     
  8. BIN
     
  9. BIN
     
  10. +43
    -0
      reports/bridge-3d-only-20260914/acceptance.json
  11. +25
    -0
      reports/bridge-3d-only-20260914/cleanup.json
  12. +93
    -0
      reports/bridge-3d-only-20260914/final-state.json
  13. +1
    -0
      reports/bridge-3d-only-20260914/index.html
  14. +17
    -0
      reports/bridge-3d-only-20260914/migration-after-applied.json
  15. +16
    -0
      reports/bridge-3d-only-20260914/migration-after-check.json
  16. +20
    -0
      reports/bridge-3d-only-20260914/migration-before-applied.json
  17. +22
    -0
      reports/bridge-3d-only-20260914/migration-before-check.json
  18. +23
    -0
      reports/bridge-3d-only-20260914/migration-legacy-v1-source-applied.json
  19. +16
    -0
      reports/bridge-3d-only-20260914/migration-legacy-v1-source-check.json
  20. +18
    -0
      reports/bridge-3d-only-20260914/migration-v1-history-applied.json
  21. +16
    -0
      reports/bridge-3d-only-20260914/migration-v1-history-check.json
  22. +50
    -0
      reports/bridge-3d-only-20260914/registered.json
  23. +25
    -0
      reports/bridge-3d-only-20260914/run-fixtures.json
  24. BIN
     
  25. +2363
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-before.json
  26. +95
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-binding.json
  27. BIN
     
  28. BIN
     
  29. BIN
     
  30. BIN
     
  31. BIN
     
  32. BIN
     
  33. +2355
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-before.json
  34. +129
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-binding.json
  35. BIN
     
  36. BIN
     
  37. BIN
     
  38. BIN
     
  39. BIN
     
  40. BIN
     
  41. BIN
     
  42. BIN
     
  43. +3323
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-before.json
  44. +197
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-binding.json
  45. BIN
     
  46. BIN
     
  47. BIN
     
  48. BIN
     
  49. BIN
     
  50. BIN
     
  51. BIN
     
  52. BIN
     
  53. BIN
     
  54. BIN
     
  55. BIN
     
  56. BIN
     
  57. +4651
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-before.json
  58. +282
    -0
      reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-binding.json
  59. BIN
     
  60. BIN
     
  61. BIN
     
  62. BIN
     
  63. BIN
     
  64. BIN
     
  65. BIN
     
  66. BIN
     
  67. BIN
     
  68. BIN
     
  69. BIN
     
  70. BIN
     
  71. BIN
     
  72. BIN
     
  73. BIN
     
  74. BIN
     
  75. BIN
     
  76. +671
    -0
      reports/bridge-digital-video-20260914/generation.json
  77. +22
    -0
      reports/bridge-digital-video-20260914/health.json
  78. +1
    -0
      reports/bridge-digital-video-20260914/index.html
  79. +14
    -0
      reports/bridge-digital-video-20260914/lan-result.json
  80. +38
    -0
      reports/bridge-digital-video-20260914/live-result.json
  81. +31
    -0
      reports/bridge-digital-video-20260914/run-assets.json
  82. BIN
     
  83. BIN
     
  84. BIN
     
  85. +320
    -0
      reports/bridge-digital-video-20260914/verification.json
  86. +15
    -0
      reports/bridge-digital-video-aspect-20260915/index.html
  87. BIN
     
  88. BIN
     
  89. BIN
     
  90. BIN
     
  91. BIN
     
  92. BIN
     
  93. BIN
     
  94. BIN
     
  95. +125
    -0
      reports/bridge-digital-video-aspect-20260915/result.json
  96. +1
    -0
      reports/bridge-digital-video-label-20260915/index.html
  97. BIN
     
  98. BIN
     
  99. +17
    -0
      reports/bridge-digital-video-label-20260915/result.json
  100. +59
    -0
      reports/bridge-digital-video-static-20260915/ACCEPTANCE.md

+ 3
- 0
.gitignore Datei anzeigen

@@ -3,6 +3,9 @@ node_modules/
.env.*
!.env.example
reports/**/build.log
reports/**/*.log
reports/**/capture.webm
**/__pycache__/
reports/**/.last-run.json
artifacts/html-report/
artifacts/test-results/










+ 43
- 0
reports/bridge-3d-only-20260914/acceptance.json Datei anzeigen

@@ -0,0 +1,43 @@
{
"pass": true,
"checks": [
"正式列表仅四条原任务,005 v2 三维 / 006–008 v3 三维,均为已发布普通训练",
"真实内容接口拒绝旧文字版本,返回 400",
"TASK-VIRTUAL-005 原任务 86 局域网预览加载三维模型与完整工具栏",
"TASK-VIRTUAL-006 原任务 87 局域网预览加载三维模型与完整工具栏",
"TASK-VIRTUAL-007 原任务 88 局域网预览加载三维模型与完整工具栏",
"TASK-VIRTUAL-008 原任务 89 局域网预览加载三维模型与完整工具栏",
"TASK-VIRTUAL-005 刷新恢复服务端步骤及拆装状态",
"TASK-VIRTUAL-005 5 步完成、提交、评定 85 分与统计通过",
"正式 006 保存失败不推进,重试后才保存",
"TASK-VIRTUAL-006 刷新恢复服务端步骤及拆装状态",
"TASK-VIRTUAL-006 7 步完成、提交、评定 85 分与统计通过",
"TASK-VIRTUAL-007 刷新恢复服务端步骤及拆装状态",
"TASK-VIRTUAL-007 11 步完成、提交、评定 85 分与统计通过",
"TASK-VIRTUAL-008 刷新恢复服务端步骤及拆装状态",
"TASK-VIRTUAL-008 16 步完成、提交、评定 85 分与统计通过"
],
"errors": [],
"runs": [
{
"taskId": "86",
"runId": "111",
"code": "TASK-VIRTUAL-005"
},
{
"taskId": "87",
"runId": "112",
"code": "TASK-VIRTUAL-006"
},
{
"taskId": "88",
"runId": "113",
"code": "TASK-VIRTUAL-007"
},
{
"taskId": "89",
"runId": "114",
"code": "TASK-VIRTUAL-008"
}
]
}

+ 25
- 0
reports/bridge-3d-only-20260914/cleanup.json Datei anzeigen

@@ -0,0 +1,25 @@
{
"pass": true,
"removedTestRunIds": [
111,
112,
113,
114
],
"removedTestMemberUserId": "175",
"keptTaskIds": [
86,
87,
88,
89
],
"otherRunsUnchanged": true,
"counts": {
"ut_teaching_command_receipt": 149,
"ut_teaching_event": 153,
"ut_teaching_member": 4,
"ut_teaching_run": 4,
"ut_teaching_run_member": 4,
"ut_teaching_step_run": 39
}
}

+ 93
- 0
reports/bridge-3d-only-20260914/final-state.json Datei anzeigen

@@ -0,0 +1,93 @@
{
"pass": true,
"tasks": [
{
"id": "86",
"code": "TASK-VIRTUAL-005",
"contentVersionId": "515",
"runtime": {
"startMode": "practice",
"offline": true,
"teacherEnabled": true,
"teacherVoiceEnabled": true,
"actionSoundEnabled": true,
"showStepPanel": true,
"showProgress": true,
"allowReplay": true,
"language": "zh-CN",
"definitionSource": "SCRIPT",
"scriptId": "bridge-pump-switch",
"scriptVersion": "2"
}
},
{
"id": "87",
"code": "TASK-VIRTUAL-006",
"contentVersionId": "530",
"runtime": {
"startMode": "practice",
"offline": true,
"teacherEnabled": true,
"teacherVoiceEnabled": true,
"actionSoundEnabled": true,
"showStepPanel": true,
"showProgress": true,
"allowReplay": true,
"language": "zh-CN",
"definitionSource": "SCRIPT",
"scriptId": "bridge-pump-substitute",
"scriptVersion": "3"
}
},
{
"id": "88",
"code": "TASK-VIRTUAL-007",
"contentVersionId": "531",
"runtime": {
"startMode": "practice",
"offline": true,
"teacherEnabled": true,
"teacherVoiceEnabled": true,
"actionSoundEnabled": true,
"showStepPanel": true,
"showProgress": true,
"allowReplay": true,
"language": "zh-CN",
"definitionSource": "SCRIPT",
"scriptId": "bridge-pump-replace",
"scriptVersion": "3"
}
},
{
"id": "89",
"code": "TASK-VIRTUAL-008",
"contentVersionId": "526",
"runtime": {
"startMode": "practice",
"offline": true,
"teacherEnabled": true,
"teacherVoiceEnabled": true,
"actionSoundEnabled": true,
"showStepPanel": true,
"showProgress": true,
"allowReplay": true,
"language": "zh-CN",
"definitionSource": "SCRIPT",
"scriptId": "bridge-balance-valve-swap",
"scriptVersion": "3"
}
}
],
"activeContentVersionIds": [
"515",
"526",
"530",
"531"
],
"activeRunIds": [
"101"
],
"invalidTextVersionsActive": 0,
"probeProjectRemoved": true,
"temporaryUserRemoved": true
}

+ 1
- 0
reports/bridge-3d-only-20260914/index.html
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 17
- 0
reports/bridge-3d-only-20260914/migration-after-applied.json Datei anzeigen

@@ -0,0 +1,17 @@
{
"pass": true,
"phase": "after",
"mode": "applied",
"removedInvalidRunIds": [],
"preservedTaskIds": [
86,
87,
88,
89
],
"protectedRunsUnchanged": true,
"file": "20260914_042_remove_bridge_text_runs.sql",
"sha256": "dc99112fc5a1a4d255ace2070f78f1fa5d22727834940eb771eb8caed25eb956",
"backupSha256": "d4682145e2c889a374e615fb0373d0044858bb371a033a72cd06f069ad05362d",
"time": "2026-09-14T14:18:50.392498+00:00"
}

+ 16
- 0
reports/bridge-3d-only-20260914/migration-after-check.json Datei anzeigen

@@ -0,0 +1,16 @@
{
"pass": true,
"phase": "after",
"mode": "isolated-check",
"invalidTaskIds": [],
"invalidRunIds": [],
"checks": [
"isolated first execution",
"full rerun",
"transaction rollback and retry"
],
"file": "20260914_042_remove_bridge_text_runs.sql",
"sha256": "dc99112fc5a1a4d255ace2070f78f1fa5d22727834940eb771eb8caed25eb956",
"backupSha256": "d4682145e2c889a374e615fb0373d0044858bb371a033a72cd06f069ad05362d",
"time": "2026-09-14T14:18:44.736410+00:00"
}

+ 20
- 0
reports/bridge-3d-only-20260914/migration-before-applied.json Datei anzeigen

@@ -0,0 +1,20 @@
{
"pass": true,
"phase": "before",
"mode": "applied",
"removedInvalidRunIds": [
102,
103
],
"preservedTaskIds": [
86,
87,
88,
89
],
"protectedRunsUnchanged": true,
"file": "20260914_042_remove_bridge_text_runs.sql",
"sha256": "dc99112fc5a1a4d255ace2070f78f1fa5d22727834940eb771eb8caed25eb956",
"backupSha256": "8ee6a6757265a1d57f94898e1b71df2b3b79ecaadbb496d3217bd75a57243889",
"time": "2026-09-14T14:15:32.943690+00:00"
}

+ 22
- 0
reports/bridge-3d-only-20260914/migration-before-check.json Datei anzeigen

@@ -0,0 +1,22 @@
{
"pass": true,
"phase": "before",
"mode": "isolated-check",
"invalidTaskIds": [
87,
88
],
"invalidRunIds": [
102,
103
],
"checks": [
"isolated first execution",
"full rerun",
"transaction rollback and retry"
],
"file": "20260914_042_remove_bridge_text_runs.sql",
"sha256": "dc99112fc5a1a4d255ace2070f78f1fa5d22727834940eb771eb8caed25eb956",
"backupSha256": "8ee6a6757265a1d57f94898e1b71df2b3b79ecaadbb496d3217bd75a57243889",
"time": "2026-09-14T14:14:37.792217+00:00"
}

+ 23
- 0
reports/bridge-3d-only-20260914/migration-legacy-v1-source-applied.json Datei anzeigen

@@ -0,0 +1,23 @@
{
"pass": true,
"phase": "legacy-v1-source",
"mode": "applied",
"removedInvalidRunIds": [],
"removedInvalidVersionIds": [
507,
508,
509,
510
],
"preservedTaskIds": [
86,
87,
88,
89
],
"protectedRunsUnchanged": true,
"file": "20260914_044_remove_legacy_bridge_v1_versions.sql",
"sha256": "8ac8b12f9dd35905fb02e5d106e05330a7f3d62adcc16b61bbfe45f8c2971061",
"backupSha256": "fc626af1b43911aad50190504e29b5b1b2694ca0c96e968bad2e776afdb5d139",
"time": "2026-09-14T14:28:55.461264+00:00"
}

+ 16
- 0
reports/bridge-3d-only-20260914/migration-legacy-v1-source-check.json Datei anzeigen

@@ -0,0 +1,16 @@
{
"pass": true,
"phase": "legacy-v1-source",
"mode": "isolated-check",
"invalidTaskIds": [],
"invalidRunIds": [],
"checks": [
"isolated first execution",
"full rerun",
"transaction rollback and retry"
],
"file": "20260914_044_remove_legacy_bridge_v1_versions.sql",
"sha256": "8ac8b12f9dd35905fb02e5d106e05330a7f3d62adcc16b61bbfe45f8c2971061",
"backupSha256": "fc626af1b43911aad50190504e29b5b1b2694ca0c96e968bad2e776afdb5d139",
"time": "2026-09-14T14:28:49.412219+00:00"
}

+ 18
- 0
reports/bridge-3d-only-20260914/migration-v1-history-applied.json Datei anzeigen

@@ -0,0 +1,18 @@
{
"pass": true,
"phase": "v1-history",
"mode": "applied",
"removedInvalidRunIds": [],
"removedInvalidVersionIds": [],
"preservedTaskIds": [
86,
87,
88,
89
],
"protectedRunsUnchanged": true,
"file": "20260914_043_remove_bridge_v1_text_versions.sql",
"sha256": "c3c91a1357b1e630413592009835010534549f54b174adc59ab43e247d2c5c88",
"backupSha256": "5faeb80539526b9577255487205a16d758dc9d0b9644309e7265e3e329d38c44",
"time": "2026-09-14T14:27:26.804217+00:00"
}

+ 16
- 0
reports/bridge-3d-only-20260914/migration-v1-history-check.json Datei anzeigen

@@ -0,0 +1,16 @@
{
"pass": true,
"phase": "v1-history",
"mode": "isolated-check",
"invalidTaskIds": [],
"invalidRunIds": [],
"checks": [
"isolated first execution",
"full rerun",
"transaction rollback and retry"
],
"file": "20260914_043_remove_bridge_v1_text_versions.sql",
"sha256": "c3c91a1357b1e630413592009835010534549f54b174adc59ab43e247d2c5c88",
"backupSha256": "5faeb80539526b9577255487205a16d758dc9d0b9644309e7265e3e329d38c44",
"time": "2026-09-14T14:27:16.874458+00:00"
}

+ 50
- 0
reports/bridge-3d-only-20260914/registered.json Datei anzeigen

@@ -0,0 +1,50 @@
[
{
"code": "TASK-VIRTUAL-005",
"id": "86",
"projectId": "438",
"versionId": "515",
"name": "重型支援桥液压泵应急切换",
"scriptId": "bridge-pump-switch",
"scriptVersion": "2",
"steps": 5,
"previewUrl": "/teaching/virtual-training/preview/86",
"presentation": "original-3d"
},
{
"code": "TASK-VIRTUAL-006",
"id": "87",
"projectId": "439",
"versionId": "530",
"name": "重型支援桥液压泵应急替代",
"scriptId": "bridge-pump-substitute",
"scriptVersion": "3",
"steps": 7,
"previewUrl": "/teaching/virtual-training/preview/87",
"presentation": "original-3d"
},
{
"code": "TASK-VIRTUAL-007",
"id": "88",
"projectId": "440",
"versionId": "531",
"name": "重型支援桥前泵换件修复",
"scriptId": "bridge-pump-replace",
"scriptVersion": "3",
"steps": 11,
"previewUrl": "/teaching/virtual-training/preview/88",
"presentation": "original-3d"
},
{
"code": "TASK-VIRTUAL-008",
"id": "89",
"projectId": "441",
"versionId": "526",
"name": "重型支援桥平衡阀拆拼互换",
"scriptId": "bridge-balance-valve-swap",
"scriptVersion": "3",
"steps": 16,
"previewUrl": "/teaching/virtual-training/preview/89",
"presentation": "original-3d"
}
]

+ 25
- 0
reports/bridge-3d-only-20260914/run-fixtures.json Datei anzeigen

@@ -0,0 +1,25 @@
{
"userId": "175",
"runs": [
{
"taskId": "86",
"runId": "111",
"code": "TASK-VIRTUAL-005"
},
{
"taskId": "87",
"runId": "112",
"code": "TASK-VIRTUAL-006"
},
{
"taskId": "88",
"runId": "113",
"code": "TASK-VIRTUAL-007"
},
{
"taskId": "89",
"runId": "114",
"code": "TASK-VIRTUAL-008"
}
]
}


+ 2363
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-before.json
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 95
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-binding.json Datei anzeigen

@@ -0,0 +1,95 @@
{
"code": "TASK-VIRTUAL-005",
"taskId": "86",
"contentVersionId": "533",
"clips": [
{
"stepCode": "front-pump-step-01",
"videoAssetCode": "DH_FF17FDE117E94B80BB30DF3E058821FD"
},
{
"stepCode": "front-pump-step-02",
"videoAssetCode": "DH_6E75DADE9D0649DCA16A2499D1EE8776"
},
{
"stepCode": "front-pump-step-03",
"videoAssetCode": "DH_9A4629F90E614E60835441B5D0AAE86C"
},
{
"stepCode": "front-pump-step-04",
"videoAssetCode": "DH_DA42FE5C995F4C67A559E6E94DB1C440"
},
{
"stepCode": "front-pump-step-05",
"videoAssetCode": "DH_D85C34259BB34E0C966C5A79569DBF10"
}
],
"runsUnchanged": true,
"assets": [
{
"sourceProjectId": "438",
"sourceVersionId": "533",
"assetCode": "DH_FF17FDE117E94B80BB30DF3E058821FD",
"name": "重型支援桥液压泵应急切换 · 1 根据故障现象确定是哪一个液压泵发生故障",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/f14a6784aeb6457a16f86387b4e701d2.mp4",
"mimeType": "video/mp4",
"sizeBytes": 202274,
"sha256": "d5c992479f2893d3efbe20921dab1f82fcc8ab4c4f512477fe4e0ea636e8fb7f",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/86/assets/533/DH_FF17FDE117E94B80BB30DF3E058821FD/content"
},
{
"sourceProjectId": "438",
"sourceVersionId": "533",
"assetCode": "DH_6E75DADE9D0649DCA16A2499D1EE8776",
"name": "重型支援桥液压泵应急切换 · 2 断开架桥车取力器",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/57c38aeae43b965404d45bb45824588e.mp4",
"mimeType": "video/mp4",
"sizeBytes": 172936,
"sha256": "69ae89ec5e3d4a5ccd3efce23f33707ee4b3a236b398235ad133ee34f793a9ba",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/86/assets/533/DH_6E75DADE9D0649DCA16A2499D1EE8776/content"
},
{
"sourceProjectId": "438",
"sourceVersionId": "533",
"assetCode": "DH_9A4629F90E614E60835441B5D0AAE86C",
"name": "重型支援桥液压泵应急切换 · 3 将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/1a7dfbfaefc3cb5859287a953de92d89.mp4",
"mimeType": "video/mp4",
"sizeBytes": 587353,
"sha256": "c9ac26a8d58e52d7dc57c28b1c6f9134de780f65b29e1eef1e8351eb51753758",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/86/assets/533/DH_9A4629F90E614E60835441B5D0AAE86C/content"
},
{
"sourceProjectId": "438",
"sourceVersionId": "533",
"assetCode": "DH_DA42FE5C995F4C67A559E6E94DB1C440",
"name": "重型支援桥液压泵应急切换 · 4 重新联通取力器",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/024978af4939a2adbd3be834ef62e29b.mp4",
"mimeType": "video/mp4",
"sizeBytes": 162678,
"sha256": "383d1fe0a6a80112c7b8868ae1edfdbeadbc86c13ce6feec1a9721ba3d9881fe",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/86/assets/533/DH_DA42FE5C995F4C67A559E6E94DB1C440/content"
},
{
"sourceProjectId": "438",
"sourceVersionId": "533",
"assetCode": "DH_D85C34259BB34E0C966C5A79569DBF10",
"name": "重型支援桥液压泵应急切换 · 5 打开辅助控制盒内的“互救”开关",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/2c20f201cb7c9663b751e485990de355.mp4",
"mimeType": "video/mp4",
"sizeBytes": 285991,
"sha256": "2d53c0bef4d8aa71d8b8535de676d2d8485929de06534ce3aab677805bc8eef3",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/86/assets/533/DH_D85C34259BB34E0C966C5A79569DBF10/content"
}
]
}







+ 2355
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-before.json
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 129
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-binding.json Datei anzeigen

@@ -0,0 +1,129 @@
{
"code": "TASK-VIRTUAL-006",
"taskId": "87",
"contentVersionId": "534",
"clips": [
{
"stepCode": "BRIDGE-STEP-1",
"videoAssetCode": "DH_5AEA5274E6664D43B8C53F55859D5717"
},
{
"stepCode": "BRIDGE-STEP-2",
"videoAssetCode": "DH_B9F2CBFE36274528825899153DB98195"
},
{
"stepCode": "BRIDGE-STEP-3",
"videoAssetCode": "DH_983218ACA84345B5B032A5DFA8F08E4E"
},
{
"stepCode": "BRIDGE-STEP-4",
"videoAssetCode": "DH_AC0F121CD04B44B5A373BE82D5083AE1"
},
{
"stepCode": "BRIDGE-STEP-5",
"videoAssetCode": "DH_774F7400E0B54F4696EBDAD800A289C3"
},
{
"stepCode": "BRIDGE-STEP-6",
"videoAssetCode": "DH_64D9ECF315DA41568D936CFEBF28E403"
},
{
"stepCode": "BRIDGE-STEP-7",
"videoAssetCode": "DH_356ADFCC874448D28ADB2DF8067582E8"
}
],
"runsUnchanged": true,
"assets": [
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_5AEA5274E6664D43B8C53F55859D5717",
"name": "重型支援桥液压泵应急替代 · 1 保持架桥车运行并断开取力器",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/75748c295407bd0768e760d4593dbdee.mp4",
"mimeType": "video/mp4",
"sizeBytes": 554961,
"sha256": "d82bb8354acfca494e2ff515e5ef79887fb9d1f929a62779119d136857944ba6",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_5AEA5274E6664D43B8C53F55859D5717/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_B9F2CBFE36274528825899153DB98195",
"name": "重型支援桥液压泵应急替代 · 2 连接两车液压软管",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/d4c77791615f95ed57751597446e35c5.mp4",
"mimeType": "video/mp4",
"sizeBytes": 400318,
"sha256": "8791296620dbb4cc823bab5f24af07b8b48d510292b4baf966598b0b0351e4f9",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_B9F2CBFE36274528825899153DB98195/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_983218ACA84345B5B032A5DFA8F08E4E",
"name": "重型支援桥液压泵应急替代 · 3 打开支援车回油截止阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/0fbe417a88b14dc657256c924e8ba532.mp4",
"mimeType": "video/mp4",
"sizeBytes": 224021,
"sha256": "f78a59ebddcd35e937ce42910aed82fcaf9b49c07be4e1d460fc701e666d3d29",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_983218ACA84345B5B032A5DFA8F08E4E/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_AC0F121CD04B44B5A373BE82D5083AE1",
"name": "重型支援桥液压泵应急替代 · 4 打开互救作业开关",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/0e886b5158602172fb149cb7bb4c07cc.mp4",
"mimeType": "video/mp4",
"sizeBytes": 332829,
"sha256": "a784a79790a96f486eb6be917fa879db7071813a31f461f5d95d31c754ce3f46",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_AC0F121CD04B44B5A373BE82D5083AE1/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_774F7400E0B54F4696EBDAD800A289C3",
"name": "重型支援桥液压泵应急替代 · 5 打开滤油器出口连通球阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/3a57549a9c62a2faa19f4a9af7740193.mp4",
"mimeType": "video/mp4",
"sizeBytes": 241632,
"sha256": "db5c8f4a531e958712d309f25f9c51a145f717e4687893fcc41b65e2c8242175",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_774F7400E0B54F4696EBDAD800A289C3/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_64D9ECF315DA41568D936CFEBF28E403",
"name": "重型支援桥液压泵应急替代 · 6 接通支援车液压取力器",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/34657e7ed592e7d7a987f90e0f0188ba.mp4",
"mimeType": "video/mp4",
"sizeBytes": 401336,
"sha256": "05ffeff41d2cf4162b6e8181d4d002ba3f12531589a25d31bac76c69f5dea6bb",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_64D9ECF315DA41568D936CFEBF28E403/content"
},
{
"sourceProjectId": "439",
"sourceVersionId": "534",
"assetCode": "DH_356ADFCC874448D28ADB2DF8067582E8",
"name": "重型支援桥液压泵应急替代 · 7 按正常步骤操作架桥车",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/715a4ac02abad5bf00d7a0a1bd0edb15.mp4",
"mimeType": "video/mp4",
"sizeBytes": 762615,
"sha256": "7b85bbf9c21adc74b56a26f6d92db1448f9f565101da6feba7ca9ad4cdd137f7",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/87/assets/534/DH_356ADFCC874448D28ADB2DF8067582E8/content"
}
]
}









+ 3323
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-before.json
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 197
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-binding.json Datei anzeigen

@@ -0,0 +1,197 @@
{
"code": "TASK-VIRTUAL-007",
"taskId": "88",
"contentVersionId": "535",
"clips": [
{
"stepCode": "BRIDGE-STEP-1",
"videoAssetCode": "DH_1CE71ECA76194F06B098A012B360BB06"
},
{
"stepCode": "BRIDGE-STEP-2",
"videoAssetCode": "DH_34129B61FA1F4E628AF295E3EF714364"
},
{
"stepCode": "BRIDGE-STEP-3",
"videoAssetCode": "DH_533EAE94D45D49A2BECD7E24E48835E6"
},
{
"stepCode": "BRIDGE-STEP-4",
"videoAssetCode": "DH_787B4C212CF644AE9A3D8D49DEDCB65E"
},
{
"stepCode": "BRIDGE-STEP-5",
"videoAssetCode": "DH_5672FD367E8F41A5A026E3C68E8C8726"
},
{
"stepCode": "BRIDGE-STEP-6",
"videoAssetCode": "DH_C0E73EC20FD44C608A795A03DE4F7401"
},
{
"stepCode": "BRIDGE-STEP-7",
"videoAssetCode": "DH_17FAC41643804A22A8B71A2FF8DCBC28"
},
{
"stepCode": "BRIDGE-STEP-8",
"videoAssetCode": "DH_2284ABD91F544E2EB7799E9FA1C4BCF6"
},
{
"stepCode": "BRIDGE-STEP-9",
"videoAssetCode": "DH_BF468C49DDCB462E8E2C75CF8C6BD172"
},
{
"stepCode": "BRIDGE-STEP-10",
"videoAssetCode": "DH_88908FEBE6054EE99087F8653A8C5FAA"
},
{
"stepCode": "BRIDGE-STEP-11",
"videoAssetCode": "DH_4D873387CF324AAF9C6D3BE1A72C247E"
}
],
"runsUnchanged": true,
"assets": [
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_1CE71ECA76194F06B098A012B360BB06",
"name": "重型支援桥前泵换件修复 · 1 停机并初裁牛皮纸",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/d8b3e011ed5bc1f41090d77dda7a8e72.mp4",
"mimeType": "video/mp4",
"sizeBytes": 448340,
"sha256": "22c92b853a9460ee67c7ae80d5bc203ff8aba07b32e148659b13f0637fb2c372",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_1CE71ECA76194F06B098A012B360BB06/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_34129B61FA1F4E628AF295E3EF714364",
"name": "重型支援桥前泵换件修复 · 2 关闭液压油箱出油口一号球阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/777c7c6f21c1108b1cf6a3e4681a7728.mp4",
"mimeType": "video/mp4",
"sizeBytes": 266042,
"sha256": "eab74c71b3be41e3c7563a4a36c75e3f61e5ad4a5ca032eab051844ca10943fe",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_34129B61FA1F4E628AF295E3EF714364/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_533EAE94D45D49A2BECD7E24E48835E6",
"name": "重型支援桥前泵换件修复 · 3 拆开并包扎进出油管",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/d974de975087ad6848689f4de8bb8597.mp4",
"mimeType": "video/mp4",
"sizeBytes": 474207,
"sha256": "63765c1da028750da4063a9d27c2211e592325165213d667c6592890cde982f0",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_533EAE94D45D49A2BECD7E24E48835E6/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_787B4C212CF644AE9A3D8D49DEDCB65E",
"name": "重型支援桥前泵换件修复 · 4 拆下四个安装螺栓",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/b8fee91715ad1fa277e03a460825ec01.mp4",
"mimeType": "video/mp4",
"sizeBytes": 275821,
"sha256": "e5b743ebe6fad8f7b614b11aea9d611fda877b02d9c31a8d67cabd41249327fe",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_787B4C212CF644AE9A3D8D49DEDCB65E/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_5672FD367E8F41A5A026E3C68E8C8726",
"name": "重型支援桥前泵换件修复 · 5 取下旧前泵",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/c3ef57b3d671acb6cfb0e7e039e86652.mp4",
"mimeType": "video/mp4",
"sizeBytes": 109215,
"sha256": "25ce8b12c5e17a2029d04a20fd53d270eed3904f50a4d7ea63bc83e33e18bd51",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_5672FD367E8F41A5A026E3C68E8C8726/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_C0E73EC20FD44C608A795A03DE4F7401",
"name": "重型支援桥前泵换件修复 · 6 修裁牛皮纸",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/7cc90bc260c6e4be30daaea3d9dfc446.mp4",
"mimeType": "video/mp4",
"sizeBytes": 246468,
"sha256": "db8bae8bfbde4f6e6dacb645eb2652f355f3b754a73012aaec3afee0e62ab9e8",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_C0E73EC20FD44C608A795A03DE4F7401/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_17FAC41643804A22A8B71A2FF8DCBC28",
"name": "重型支援桥前泵换件修复 · 7 放置牛皮纸垫",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/37e9c868094f42d56db8540f01317bf2.mp4",
"mimeType": "video/mp4",
"sizeBytes": 203299,
"sha256": "56ece26b2bab4af67bd59f88a3f4d1b08bfcdd083f423300d8d88f4ff4cae84b",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_17FAC41643804A22A8B71A2FF8DCBC28/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_2284ABD91F544E2EB7799E9FA1C4BCF6",
"name": "重型支援桥前泵换件修复 · 8 安装新液压泵",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/8f14a7af1d794cef6f9858e8244e75a5.mp4",
"mimeType": "video/mp4",
"sizeBytes": 191600,
"sha256": "1b8f68d21c2300b2bba451f5e22cbaafd6f2dcd0bf0d213c05a4caad53ce0ef0",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_2284ABD91F544E2EB7799E9FA1C4BCF6/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_BF468C49DDCB462E8E2C75CF8C6BD172",
"name": "重型支援桥前泵换件修复 · 9 向新泵加注液压油",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/363657dd4bc2b0e2809cd52faca8458c.mp4",
"mimeType": "video/mp4",
"sizeBytes": 443419,
"sha256": "095363c1f6be506fa3377330abbf88050dc9ffdd8dac07eb2c5476ea4ec32abe",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_BF468C49DDCB462E8E2C75CF8C6BD172/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_88908FEBE6054EE99087F8653A8C5FAA",
"name": "重型支援桥前泵换件修复 · 10 恢复进出油管连接",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/afe798b60bdea1f35f5b09d104205bad.mp4",
"mimeType": "video/mp4",
"sizeBytes": 219713,
"sha256": "eba4316082aa74841fe07f82c644484630efac95228a9b919b1d5348f76d06d8",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_88908FEBE6054EE99087F8653A8C5FAA/content"
},
{
"sourceProjectId": "440",
"sourceVersionId": "535",
"assetCode": "DH_4D873387CF324AAF9C6D3BE1A72C247E",
"name": "重型支援桥前泵换件修复 · 11 启动设备试验",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/56a8a5cabf17265e7e64243e25e20dc5.mp4",
"mimeType": "video/mp4",
"sizeBytes": 246099,
"sha256": "4fed628e2847089de8882bb29da648f5aa3c00acf696123c11e5e6c3d54a48bb",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/88/assets/535/DH_4D873387CF324AAF9C6D3BE1A72C247E/content"
}
]
}













+ 4651
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-before.json
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 282
- 0
reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-binding.json Datei anzeigen

@@ -0,0 +1,282 @@
{
"code": "TASK-VIRTUAL-008",
"taskId": "89",
"contentVersionId": "536",
"clips": [
{
"stepCode": "BRIDGE-STEP-1",
"videoAssetCode": "DH_76F80444AA9C4C3183A0EEDF6E655C25"
},
{
"stepCode": "BRIDGE-STEP-2",
"videoAssetCode": "DH_EAF5F0A89D454E6FBAFB061C93D2F760"
},
{
"stepCode": "BRIDGE-STEP-3",
"videoAssetCode": "DH_981034D69E3047C6B9D1DAE9BBF4F7D4"
},
{
"stepCode": "BRIDGE-STEP-4",
"videoAssetCode": "DH_60D40306A9E74E96ADD7641932934BE4"
},
{
"stepCode": "BRIDGE-STEP-5",
"videoAssetCode": "DH_A6EFEC7D339E4BA8994C525CA3709E2E"
},
{
"stepCode": "BRIDGE-STEP-6",
"videoAssetCode": "DH_D9E1BAFBD89D48019B9445B2A5752E68"
},
{
"stepCode": "BRIDGE-STEP-7",
"videoAssetCode": "DH_E83DDAB19F774A418C82EBA7E8EDCF8A"
},
{
"stepCode": "BRIDGE-STEP-8",
"videoAssetCode": "DH_4FE31068F3EB410BAC72E19F1D1BAF49"
},
{
"stepCode": "BRIDGE-STEP-9",
"videoAssetCode": "DH_D0A3CAC5278C4A57AC9BEF13DA2690BC"
},
{
"stepCode": "BRIDGE-STEP-10",
"videoAssetCode": "DH_0F40DAF3E28F4FA088EA943D9470CAA7"
},
{
"stepCode": "BRIDGE-STEP-11",
"videoAssetCode": "DH_F6427532AF5F40348CEB154F031F2AED"
},
{
"stepCode": "BRIDGE-STEP-12",
"videoAssetCode": "DH_F601DB08C8D44934AD3A1B1582E804DB"
},
{
"stepCode": "BRIDGE-STEP-13",
"videoAssetCode": "DH_B1BBA42CE5F346228B6B39A51F190CB3"
},
{
"stepCode": "BRIDGE-STEP-14",
"videoAssetCode": "DH_2BCD762C693242FF8DA420BD9A5D4DF9"
},
{
"stepCode": "BRIDGE-STEP-15",
"videoAssetCode": "DH_5F8309BF74344C568C2C9EEFDD9E74BF"
},
{
"stepCode": "BRIDGE-STEP-16",
"videoAssetCode": "DH_D525E35EDA12402DA13302C2B3874CC3"
}
],
"runsUnchanged": true,
"assets": [
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_76F80444AA9C4C3183A0EEDF6E655C25",
"name": "重型支援桥平衡阀拆拼互换 · 1 清洗小腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/bbb7cb4c0937594e06facdeb4265bdfb.mp4",
"mimeType": "video/mp4",
"sizeBytes": 380363,
"sha256": "2e71eb4894d380917abb95245d3299e7c0b345c76a0a1df92610ba97c9d95e91",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_76F80444AA9C4C3183A0EEDF6E655C25/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_EAF5F0A89D454E6FBAFB061C93D2F760",
"name": "重型支援桥平衡阀拆拼互换 · 2 拆开小腔控制油口管路",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/2b3185dc7f0d5cb857c3682ab7773aa1.mp4",
"mimeType": "video/mp4",
"sizeBytes": 286904,
"sha256": "a1abca193097f47595f32b71a02f4101a02005d0ff67cd4932fa728403d1235b",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_EAF5F0A89D454E6FBAFB061C93D2F760/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_981034D69E3047C6B9D1DAE9BBF4F7D4",
"name": "重型支援桥平衡阀拆拼互换 · 3 拆下小腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/a9d362f15a10a6ec05d43bfc37dfc142.mp4",
"mimeType": "video/mp4",
"sizeBytes": 386424,
"sha256": "46f07ce2308478ba60b58d4f6ec600773632193ffaa83f42ed52c71b660d4da5",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_981034D69E3047C6B9D1DAE9BBF4F7D4/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_60D40306A9E74E96ADD7641932934BE4",
"name": "重型支援桥平衡阀拆拼互换 · 4 封堵小腔油口",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/7315f5118bd573be864686aa786cf458.mp4",
"mimeType": "video/mp4",
"sizeBytes": 348426,
"sha256": "7fdab9117f713bd3e01aa1d956bfdbc4601df9f5b166b4a05488c1181ba12211",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_60D40306A9E74E96ADD7641932934BE4/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_A6EFEC7D339E4BA8994C525CA3709E2E",
"name": "重型支援桥平衡阀拆拼互换 · 5 清洗大腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/c7e7402995b868a26a11f04255624ac9.mp4",
"mimeType": "video/mp4",
"sizeBytes": 242429,
"sha256": "5a2649d18c9cef179863c09cf8179668b34f1d253d1b340b3775509bdd057433",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_A6EFEC7D339E4BA8994C525CA3709E2E/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_D9E1BAFBD89D48019B9445B2A5752E68",
"name": "重型支援桥平衡阀拆拼互换 · 6 拆开大腔控制油口管路",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/d56936153f2455950a527c7b1b193cc1.mp4",
"mimeType": "video/mp4",
"sizeBytes": 299444,
"sha256": "8c3679991ac10e63383a40c2deffb1a9fdb5b79cbb692db64fda410e2b13b923",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_D9E1BAFBD89D48019B9445B2A5752E68/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_E83DDAB19F774A418C82EBA7E8EDCF8A",
"name": "重型支援桥平衡阀拆拼互换 · 7 拆下大腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/84a9178a525514f108f353c518765957.mp4",
"mimeType": "video/mp4",
"sizeBytes": 241834,
"sha256": "d8e749aee075d99707af8b1a6b9a6700f7b0349c19e9bbd5957f55f43e9c50af",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_E83DDAB19F774A418C82EBA7E8EDCF8A/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_4FE31068F3EB410BAC72E19F1D1BAF49",
"name": "重型支援桥平衡阀拆拼互换 · 8 封堵大腔油口",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/323c01c7d4438be382e33b72c1acfdef.mp4",
"mimeType": "video/mp4",
"sizeBytes": 208428,
"sha256": "3d3c67dfa76d776bcafee0e35412de7c44190b74776f93d426e6d9947fd7bb2c",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_4FE31068F3EB410BAC72E19F1D1BAF49/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_D0A3CAC5278C4A57AC9BEF13DA2690BC",
"name": "重型支援桥平衡阀拆拼互换 · 9 准备安装大腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/f76860dcb1df69933366b58a0a4acf49.mp4",
"mimeType": "video/mp4",
"sizeBytes": 241840,
"sha256": "bd890674565a670e7994a60be84847b692a8b4820995c3063a497d8cc7eddf7e",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_D0A3CAC5278C4A57AC9BEF13DA2690BC/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_0F40DAF3E28F4FA088EA943D9470CAA7",
"name": "重型支援桥平衡阀拆拼互换 · 10 安装大腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/679a321b725c5069ff3c279bdb5d4e74.mp4",
"mimeType": "video/mp4",
"sizeBytes": 503224,
"sha256": "ed2ee749404179d67831c8f0c46cae21643c97700f431b5cb089f99644fb7d27",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_0F40DAF3E28F4FA088EA943D9470CAA7/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_F6427532AF5F40348CEB154F031F2AED",
"name": "重型支援桥平衡阀拆拼互换 · 11 核对大腔控制油口管路连接",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/ff6024de51727d348cfb8d889bea860e.mp4",
"mimeType": "video/mp4",
"sizeBytes": 689467,
"sha256": "e90845dc69d890c341d682f5d36b8880e83fe26bdad34fd8573ee0560d36d287",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_F6427532AF5F40348CEB154F031F2AED/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_F601DB08C8D44934AD3A1B1582E804DB",
"name": "重型支援桥平衡阀拆拼互换 · 12 紧固大腔阀体连接螺栓",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/bd49e1bbbbd6ad7f351cf2c6912934ff.mp4",
"mimeType": "video/mp4",
"sizeBytes": 360250,
"sha256": "133f1f65d5d88040d4ce758fdb7c0512c44d32f2affc5b0ce09f402f9fd687a5",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_F601DB08C8D44934AD3A1B1582E804DB/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_B1BBA42CE5F346228B6B39A51F190CB3",
"name": "重型支援桥平衡阀拆拼互换 · 13 准备安装小腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/f6fdebd35ca690c3d05b74f55bd65605.mp4",
"mimeType": "video/mp4",
"sizeBytes": 242849,
"sha256": "7cf538b8754ccb0ada36395919cb9653d804717ec6a4d339dc8c62572697f27a",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_B1BBA42CE5F346228B6B39A51F190CB3/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_2BCD762C693242FF8DA420BD9A5D4DF9",
"name": "重型支援桥平衡阀拆拼互换 · 14 安装小腔平衡阀",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/f7cce5ab61c4458386a86729a97637a9.mp4",
"mimeType": "video/mp4",
"sizeBytes": 318525,
"sha256": "456843aa826f489cde689a55d4ffb3e3759b7f7464cc1fbdde6d7d7d216ef31f",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_2BCD762C693242FF8DA420BD9A5D4DF9/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_5F8309BF74344C568C2C9EEFDD9E74BF",
"name": "重型支援桥平衡阀拆拼互换 · 15 核对小腔控制油口管路连接",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/c65892e63c10c2d1283cfab5c2e83481.mp4",
"mimeType": "video/mp4",
"sizeBytes": 1093064,
"sha256": "2a47835ce52868b09ecec6fe380098b412d29a8c2806519a54d15396e3473b57",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_5F8309BF74344C568C2C9EEFDD9E74BF/content"
},
{
"sourceProjectId": "441",
"sourceVersionId": "536",
"assetCode": "DH_D525E35EDA12402DA13302C2B3874CC3",
"name": "重型支援桥平衡阀拆拼互换 · 16 紧固小腔阀体连接螺栓",
"type": "VIDEO",
"contentUri": "fsvc://unreal-tran/video/2026/09/14/f13bb21ae4e501ce3546122f2412f2aa.mp4",
"mimeType": "video/mp4",
"sizeBytes": 216175,
"sha256": "2e22f597ff2808e1b9e600c46c319f82cd91e2be0063bfc817c94d672c786213",
"downloadable": true,
"downloadUrl": "/api/tran/v1/teaching/assignments/89/assets/536/DH_D525E35EDA12402DA13302C2B3874CC3/content"
}
]
}


















+ 671
- 0
reports/bridge-digital-video-20260914/generation.json Datei anzeigen

@@ -0,0 +1,671 @@
{
"avatarId": "55",
"avatarName": "教员1",
"voiceId": "49",
"voiceName": "温和男声",
"clips": [
{
"key": "bridge-pump-switch:2:front-pump-step-01",
"code": "TASK-VIRTUAL-005",
"projectId": "438",
"assignmentId": "86",
"stepCode": "front-pump-step-01",
"number": 1,
"title": "重型支援桥液压泵应急切换 · 1 根据故障现象确定是哪一个液压泵发生故障",
"text": "第1步,确定故障液压泵。根据故障现象确定发生故障的液压泵。",
"jobId": "4",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "53",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-step-01.mp4"
},
{
"key": "bridge-pump-switch:2:front-pump-step-02",
"code": "TASK-VIRTUAL-005",
"projectId": "438",
"assignmentId": "86",
"stepCode": "front-pump-step-02",
"number": 2,
"title": "重型支援桥液压泵应急切换 · 2 断开架桥车取力器",
"text": "第2步,断开架桥车取力器。将架桥车取力器断开。",
"jobId": "5",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "54",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-step-02.mp4"
},
{
"key": "bridge-pump-switch:2:front-pump-step-03",
"code": "TASK-VIRTUAL-005",
"projectId": "438",
"assignmentId": "86",
"stepCode": "front-pump-step-03",
"number": 3,
"title": "重型支援桥液压泵应急切换 · 3 将架桥车备胎斜上方链接两个红色滤油器的球阀打开",
"text": "第3步,打开互救球阀。打开备胎上方两个红色滤油器之间的连通球阀,手柄由垂直管道转为平行管道。",
"jobId": "6",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "55",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-step-03.mp4"
},
{
"key": "bridge-pump-switch:2:front-pump-step-04",
"code": "TASK-VIRTUAL-005",
"projectId": "438",
"assignmentId": "86",
"stepCode": "front-pump-step-04",
"number": 4,
"title": "重型支援桥液压泵应急切换 · 4 重新联通取力器",
"text": "第4步,重新接通取力器。将架桥车取力器重新接通。",
"jobId": "7",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "56",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-step-04.mp4"
},
{
"key": "bridge-pump-switch:2:front-pump-step-05",
"code": "TASK-VIRTUAL-005",
"projectId": "438",
"assignmentId": "86",
"stepCode": "front-pump-step-05",
"number": 5,
"title": "重型支援桥液压泵应急切换 · 5 打开辅助控制盒内的“互救”开关",
"text": "第5步,打开辅助控制盒互救开关。打开辅助控制盒盖,再打开互救开关,进入单泵作业状态。",
"jobId": "8",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "57",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-005-step-05.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-1",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-1",
"number": 1,
"title": "重型支援桥液压泵应急替代 · 1 保持架桥车运行并断开取力器",
"text": "第1步,保持架桥车运行并断开取力器。保持架桥车发动机运转,确保架桥车取力器处于断开状态。",
"jobId": "9",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "58",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-01.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-2",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-2",
"number": 2,
"title": "重型支援桥液压泵应急替代 · 2 连接两车液压软管",
"text": "第2步,连接两车液压软管。连接支援车与架桥车液压软管。架桥车快接接头位于液压油箱右侧;支援车快接接头位于驾驶室外右下方。",
"jobId": "10",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "59",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-02.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-3",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-3",
"number": 3,
"title": "重型支援桥液压泵应急替代 · 3 打开支援车回油截止阀",
"text": "第3步,打开支援车回油截止阀。打开支援车液压油箱快接接头处的回油截止阀。",
"jobId": "11",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "60",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-03.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-4",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-4",
"number": 4,
"title": "重型支援桥液压泵应急替代 · 4 打开互救作业开关",
"text": "第4步,打开互救作业开关。打开辅助控制盒上的“互救作业”开关。",
"jobId": "12",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "61",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-04.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-5",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-5",
"number": 5,
"title": "重型支援桥液压泵应急替代 · 5 打开滤油器出口连通球阀",
"text": "第5步,打开滤油器出口连通球阀。打开两个输油滤油器出口处的连通球阀。",
"jobId": "13",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "62",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-05.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-6",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-6",
"number": 6,
"title": "重型支援桥液压泵应急替代 · 6 接通支援车液压取力器",
"text": "第6步,接通支援车液压取力器。接通支援车液压系统取力器,向架桥车供油。",
"jobId": "14",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "63",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-06.mp4"
},
{
"key": "bridge-pump-substitute:3:BRIDGE-STEP-7",
"code": "TASK-VIRTUAL-006",
"projectId": "439",
"assignmentId": "87",
"stepCode": "BRIDGE-STEP-7",
"number": 7,
"title": "重型支援桥液压泵应急替代 · 7 按正常步骤操作架桥车",
"text": "第7步,按正常步骤操作架桥车。原图只概括“按正常操作步骤操作架桥车”,没有展开后续作业。该项为原稿概括项,本预演不代表后续正常作业已经完成。",
"jobId": "15",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "64",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-006-step-07.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-1",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-1",
"number": 1,
"title": "重型支援桥前泵换件修复 · 1 停机并初裁牛皮纸",
"text": "第1步,停机并初裁牛皮纸。架桥车熄火;按液压泵与取力器结合面形状初步裁剪牛皮纸。",
"jobId": "16",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "65",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-01.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-2",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-2",
"number": 2,
"title": "重型支援桥前泵换件修复 · 2 关闭液压油箱出油口一号球阀",
"text": "第2步,关闭液压油箱出油口一号球阀。将一号球阀手柄从平行管道转到垂直管道。",
"jobId": "17",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "66",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-02.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-3",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-3",
"number": 3,
"title": "重型支援桥前泵换件修复 · 3 拆开并包扎进出油管",
"text": "第3步,拆开并包扎进出油管。用大活动扳手拆开液压泵进、出油管接头,用塑料袋包扎管口。",
"jobId": "18",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "67",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-03.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-4",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-4",
"number": 4,
"title": "重型支援桥前泵换件修复 · 4 拆下四个安装螺栓",
"text": "第4步,拆下四个安装螺栓。用开口扳手拆下液压泵与取力器之间的四个安装螺栓。",
"jobId": "19",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "68",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-04.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-5",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-5",
"number": 5,
"title": "重型支援桥前泵换件修复 · 5 取下旧前泵",
"text": "第5步,取下旧前泵。取下原前泵。",
"jobId": "20",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "69",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-05.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-6",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-6",
"number": 6,
"title": "重型支援桥前泵换件修复 · 6 修裁牛皮纸",
"text": "第6步,修裁牛皮纸。进一步裁剪牛皮纸,使其与液压泵安装面及取力器结合面吻合。",
"jobId": "21",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "70",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-06.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-7",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-7",
"number": 7,
"title": "重型支援桥前泵换件修复 · 7 放置牛皮纸垫",
"text": "第7步,放置牛皮纸垫。将裁好的牛皮纸放在取力器接口处。",
"jobId": "22",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "71",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-07.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-8",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-8",
"number": 8,
"title": "重型支援桥前泵换件修复 · 8 安装新液压泵",
"text": "第8步,安装新液压泵。安装新的液压泵。原稿没有给出拧紧力矩。",
"jobId": "23",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "72",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-08.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-9",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-9",
"number": 9,
"title": "重型支援桥前泵换件修复 · 9 向新泵加注液压油",
"text": "第9步,向新泵加注液压油。打开新液压泵加油口,加注液压油。原稿没有给出定量值。",
"jobId": "24",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "73",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-09.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-10",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-10",
"number": 10,
"title": "重型支援桥前泵换件修复 · 10 恢复进出油管连接",
"text": "第10步,恢复进出油管连接。用大活动扳手连接并拧紧液压泵进、出油管。",
"jobId": "25",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "74",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-10.mp4"
},
{
"key": "bridge-pump-replace:3:BRIDGE-STEP-11",
"code": "TASK-VIRTUAL-007",
"projectId": "440",
"assignmentId": "88",
"stepCode": "BRIDGE-STEP-11",
"number": 11,
"title": "重型支援桥前泵换件修复 · 11 启动设备试验",
"text": "第11步,启动设备试验。启动设备进行试验。原稿没有展开具体试验项目和判定数值。",
"jobId": "26",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "75",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-007-step-11.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-1",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-1",
"number": 1,
"title": "重型支援桥平衡阀拆拼互换 · 1 清洗小腔平衡阀",
"text": "第1步,清洗小腔平衡阀。用清洗剂清洗平衡阀和管接头,并用抹布擦净。",
"jobId": "27",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "76",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-01.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-2",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-2",
"number": 2,
"title": "重型支援桥平衡阀拆拼互换 · 2 拆开小腔控制油口管路",
"text": "第2步,拆开小腔控制油口管路。用十九号开口扳手拆开控制油口管路,用塑料袋包扎管口。",
"jobId": "28",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "77",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-02.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-3",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-3",
"number": 3,
"title": "重型支援桥平衡阀拆拼互换 · 3 拆下小腔平衡阀",
"text": "第3步,拆下小腔平衡阀。用八号内六角扳手拆下安装螺栓,取下平衡阀。",
"jobId": "29",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "78",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-03.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-4",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-4",
"number": 4,
"title": "重型支援桥平衡阀拆拼互换 · 4 封堵小腔油口",
"text": "第4步,封堵小腔油口。用两个油堵封住两个油口,擦净阀座结合面。",
"jobId": "30",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "79",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-04.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-5",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-5",
"number": 5,
"title": "重型支援桥平衡阀拆拼互换 · 5 清洗大腔平衡阀",
"text": "第5步,清洗大腔平衡阀。用清洗剂清洗平衡阀和管接头,并用抹布擦净。",
"jobId": "31",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "80",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-05.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-6",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-6",
"number": 6,
"title": "重型支援桥平衡阀拆拼互换 · 6 拆开大腔控制油口管路",
"text": "第6步,拆开大腔控制油口管路。用十九号开口扳手拆开控制油口管路,用塑料袋包扎管口。",
"jobId": "32",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "81",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-06.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-7",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-7",
"number": 7,
"title": "重型支援桥平衡阀拆拼互换 · 7 拆下大腔平衡阀",
"text": "第7步,拆下大腔平衡阀。用八号内六角扳手拆下安装螺栓,取下平衡阀。",
"jobId": "33",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "82",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-07.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-8",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-8",
"number": 8,
"title": "重型支援桥平衡阀拆拼互换 · 8 封堵大腔油口",
"text": "第8步,封堵大腔油口。用两个油堵封住两个油口,擦净阀座结合面。",
"jobId": "34",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "83",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-08.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-9",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-9",
"number": 9,
"title": "重型支援桥平衡阀拆拼互换 · 9 准备安装大腔平衡阀",
"text": "第9步,准备安装大腔平衡阀。擦净平衡阀及阀座结合面,取下两个油堵。",
"jobId": "35",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "84",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-09.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-10",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-10",
"number": 10,
"title": "重型支援桥平衡阀拆拼互换 · 10 安装大腔平衡阀",
"text": "第10步,安装大腔平衡阀。将平衡阀放置于阀座上,用八号内六角扳手安装四个安装螺栓。",
"jobId": "36",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "85",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-10.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-11",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-11",
"number": 11,
"title": "重型支援桥平衡阀拆拼互换 · 11 核对大腔控制油口管路连接",
"text": "第11步,核对大腔控制油口管路连接。原稿先写“拆下包扎袋,连接并拧紧管路”,随后又出现“用十九号开口扳手拆开管路并包扎”的相反描述。请记录采用的处理方式及依据,随训练记录提交教员核对;系统不自动判定该项操作正确。",
"jobId": "37",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "86",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-11.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-12",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-12",
"number": 12,
"title": "重型支援桥平衡阀拆拼互换 · 12 紧固大腔阀体连接螺栓",
"text": "第12步,紧固大腔阀体连接螺栓。用内六角扳手拧紧四个阀体连接螺栓。",
"jobId": "38",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "87",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-12.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-13",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-13",
"number": 13,
"title": "重型支援桥平衡阀拆拼互换 · 13 准备安装小腔平衡阀",
"text": "第13步,准备安装小腔平衡阀。擦净平衡阀及阀座结合面,取下两个油堵。",
"jobId": "39",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "88",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-13.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-14",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-14",
"number": 14,
"title": "重型支援桥平衡阀拆拼互换 · 14 安装小腔平衡阀",
"text": "第14步,安装小腔平衡阀。将平衡阀放置于阀座上,用八号内六角扳手安装四个安装螺栓。",
"jobId": "40",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "89",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-14.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-15",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-15",
"number": 15,
"title": "重型支援桥平衡阀拆拼互换 · 15 核对小腔控制油口管路连接",
"text": "第15步,核对小腔控制油口管路连接。原稿先写“拆下包扎袋,连接并拧紧管路”,随后又出现“用十九号开口扳手拆开管路并包扎”的相反描述。请记录采用的处理方式及依据,随训练记录提交教员核对;系统不自动判定该项操作正确。",
"jobId": "41",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "90",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-15.mp4"
},
{
"key": "bridge-balance-valve-swap:3:BRIDGE-STEP-16",
"code": "TASK-VIRTUAL-008",
"projectId": "441",
"assignmentId": "89",
"stepCode": "BRIDGE-STEP-16",
"number": 16,
"title": "重型支援桥平衡阀拆拼互换 · 16 紧固小腔阀体连接螺栓",
"text": "第16步,紧固小腔阀体连接螺栓。用内六角扳手拧紧四个阀体连接螺栓。",
"jobId": "42",
"appId": "AP_238179E0A10F97927EA49FA3",
"status": "SUCCEEDED",
"stage": "成片已保存",
"videoId": "91",
"errorMessage": "",
"previewFile": "reports/bridge-digital-video-20260914/TASK-VIRTUAL-008-step-16.mp4"
}
]
}

+ 22
- 0
reports/bridge-digital-video-20260914/health.json Datei anzeigen

@@ -0,0 +1,22 @@
[
{
"url": "http://127.0.0.1:6100/actuator/health",
"status": 200
},
{
"url": "http://127.0.0.1:6100/api/auth/ping",
"status": 200
},
{
"url": "http://127.0.0.1:6100/api/tran/ping",
"status": 200
},
{
"url": "http://127.0.0.1:6180/",
"status": 200
},
{
"url": "http://192.168.31.168:6180/",
"status": 200
}
]

+ 1
- 0
reports/bridge-digital-video-20260914/index.html
Datei-Diff unterdrückt, da er zu groß ist
Datei anzeigen


+ 14
- 0
reports/bridge-digital-video-20260914/lan-result.json Datei anzeigen

@@ -0,0 +1,14 @@
{
"origin": "http://192.168.31.168:6180",
"results": [
{
"code": "TASK-VIRTUAL-005",
"firstAndSecondVideo": true,
"audioToggle": true,
"stopOnStepChange": true,
"errorFallback": true,
"reloadAndClose": true
}
],
"errors": []
}

+ 38
- 0
reports/bridge-digital-video-20260914/live-result.json Datei anzeigen

@@ -0,0 +1,38 @@
{
"origin": "http://127.0.0.1:6180",
"results": [
{
"code": "TASK-VIRTUAL-005",
"firstAndSecondVideo": true,
"audioToggle": true,
"stopOnStepChange": true,
"errorFallback": true,
"reloadAndClose": true
},
{
"code": "TASK-VIRTUAL-006",
"firstAndSecondVideo": true,
"audioToggle": true,
"stopOnStepChange": true,
"errorFallback": true,
"reloadAndClose": true
},
{
"code": "TASK-VIRTUAL-007",
"firstAndSecondVideo": true,
"audioToggle": true,
"stopOnStepChange": true,
"errorFallback": true,
"reloadAndClose": true
},
{
"code": "TASK-VIRTUAL-008",
"firstAndSecondVideo": true,
"audioToggle": true,
"stopOnStepChange": true,
"errorFallback": true,
"reloadAndClose": true
}
],
"errors": []
}

+ 31
- 0
reports/bridge-digital-video-20260914/run-assets.json Datei anzeigen

@@ -0,0 +1,31 @@
{
"runId": "101",
"results": [
{
"code": "DH_FF17FDE117E94B80BB30DF3E058821FD",
"status": 200,
"size": 202274
},
{
"code": "DH_6E75DADE9D0649DCA16A2499D1EE8776",
"status": 200,
"size": 172936
},
{
"code": "DH_9A4629F90E614E60835441B5D0AAE86C",
"status": 200,
"size": 587353
},
{
"code": "DH_DA42FE5C995F4C67A559E6E94DB1C440",
"status": 200,
"size": 162678
},
{
"code": "DH_D85C34259BB34E0C966C5A79569DBF10",
"status": 200,
"size": 285991
}
],
"staleVersionStatus": 409
}




+ 320
- 0
reports/bridge-digital-video-20260914/verification.json Datei anzeigen

@@ -0,0 +1,320 @@
{
"videos": 39,
"duration": 263.9451619999999,
"size": 13512813,
"preservedWavs": 42,
"verified": [
{
"code": "TASK-VIRTUAL-005",
"step": 1,
"assetCode": "DH_FF17FDE117E94B80BB30DF3E058821FD",
"sha256": "d5c992479f2893d3efbe20921dab1f82fcc8ab4c4f512477fe4e0ea636e8fb7f",
"duration": 5.08,
"size": 202274
},
{
"code": "TASK-VIRTUAL-005",
"step": 2,
"assetCode": "DH_6E75DADE9D0649DCA16A2499D1EE8776",
"sha256": "69ae89ec5e3d4a5ccd3efce23f33707ee4b3a236b398235ad133ee34f793a9ba",
"duration": 4.16,
"size": 172936
},
{
"code": "TASK-VIRTUAL-005",
"step": 3,
"assetCode": "DH_9A4629F90E614E60835441B5D0AAE86C",
"sha256": "c9ac26a8d58e52d7dc57c28b1c6f9134de780f65b29e1eef1e8351eb51753758",
"duration": 8.48,
"size": 587353
},
{
"code": "TASK-VIRTUAL-005",
"step": 4,
"assetCode": "DH_DA42FE5C995F4C67A559E6E94DB1C440",
"sha256": "383d1fe0a6a80112c7b8868ae1edfdbeadbc86c13ce6feec1a9721ba3d9881fe",
"duration": 4.24,
"size": 162678
},
{
"code": "TASK-VIRTUAL-005",
"step": 5,
"assetCode": "DH_D85C34259BB34E0C966C5A79569DBF10",
"sha256": "2d53c0bef4d8aa71d8b8535de676d2d8485929de06534ce3aab677805bc8eef3",
"duration": 6.92,
"size": 285991
},
{
"code": "TASK-VIRTUAL-006",
"step": 1,
"assetCode": "DH_5AEA5274E6664D43B8C53F55859D5717",
"sha256": "d82bb8354acfca494e2ff515e5ef79887fb9d1f929a62779119d136857944ba6",
"duration": 7.92,
"size": 554961
},
{
"code": "TASK-VIRTUAL-006",
"step": 2,
"assetCode": "DH_B9F2CBFE36274528825899153DB98195",
"sha256": "8791296620dbb4cc823bab5f24af07b8b48d510292b4baf966598b0b0351e4f9",
"duration": 10,
"size": 400318
},
{
"code": "TASK-VIRTUAL-006",
"step": 3,
"assetCode": "DH_983218ACA84345B5B032A5DFA8F08E4E",
"sha256": "f78a59ebddcd35e937ce42910aed82fcaf9b49c07be4e1d460fc701e666d3d29",
"duration": 5.72,
"size": 224021
},
{
"code": "TASK-VIRTUAL-006",
"step": 4,
"assetCode": "DH_AC0F121CD04B44B5A373BE82D5083AE1",
"sha256": "a784a79790a96f486eb6be917fa879db7071813a31f461f5d95d31c754ce3f46",
"duration": 5.08,
"size": 332829
},
{
"code": "TASK-VIRTUAL-006",
"step": 5,
"assetCode": "DH_774F7400E0B54F4696EBDAD800A289C3",
"sha256": "db5c8f4a531e958712d309f25f9c51a145f717e4687893fcc41b65e2c8242175",
"duration": 5.927333,
"size": 241632
},
{
"code": "TASK-VIRTUAL-006",
"step": 6,
"assetCode": "DH_64D9ECF315DA41568D936CFEBF28E403",
"sha256": "05ffeff41d2cf4162b6e8181d4d002ba3f12531589a25d31bac76c69f5dea6bb",
"duration": 6.04,
"size": 401336
},
{
"code": "TASK-VIRTUAL-006",
"step": 7,
"assetCode": "DH_356ADFCC874448D28ADB2DF8067582E8",
"sha256": "7b85bbf9c21adc74b56a26f6d92db1448f9f565101da6feba7ca9ad4cdd137f7",
"duration": 10.88,
"size": 762615
},
{
"code": "TASK-VIRTUAL-007",
"step": 1,
"assetCode": "DH_1CE71ECA76194F06B098A012B360BB06",
"sha256": "22c92b853a9460ee67c7ae80d5bc203ff8aba07b32e148659b13f0637fb2c372",
"duration": 6.68,
"size": 448340
},
{
"code": "TASK-VIRTUAL-007",
"step": 2,
"assetCode": "DH_34129B61FA1F4E628AF295E3EF714364",
"sha256": "eab74c71b3be41e3c7563a4a36c75e3f61e5ad4a5ca032eab051844ca10943fe",
"duration": 6.615333,
"size": 266042
},
{
"code": "TASK-VIRTUAL-007",
"step": 3,
"assetCode": "DH_533EAE94D45D49A2BECD7E24E48835E6",
"sha256": "63765c1da028750da4063a9d27c2211e592325165213d667c6592890cde982f0",
"duration": 7.04,
"size": 474207
},
{
"code": "TASK-VIRTUAL-007",
"step": 4,
"assetCode": "DH_787B4C212CF644AE9A3D8D49DEDCB65E",
"sha256": "e5b743ebe6fad8f7b614b11aea9d611fda877b02d9c31a8d67cabd41249327fe",
"duration": 6.661833,
"size": 275821
},
{
"code": "TASK-VIRTUAL-007",
"step": 5,
"assetCode": "DH_5672FD367E8F41A5A026E3C68E8C8726",
"sha256": "25ce8b12c5e17a2029d04a20fd53d270eed3904f50a4d7ea63bc83e33e18bd51",
"duration": 2.96,
"size": 109215
},
{
"code": "TASK-VIRTUAL-007",
"step": 6,
"assetCode": "DH_C0E73EC20FD44C608A795A03DE4F7401",
"sha256": "db8bae8bfbde4f6e6dacb645eb2652f355f3b754a73012aaec3afee0e62ab9e8",
"duration": 6.738333,
"size": 246468
},
{
"code": "TASK-VIRTUAL-007",
"step": 7,
"assetCode": "DH_17FAC41643804A22A8B71A2FF8DCBC28",
"sha256": "56ece26b2bab4af67bd59f88a3f4d1b08bfcdd083f423300d8d88f4ff4cae84b",
"duration": 5.04,
"size": 203299
},
{
"code": "TASK-VIRTUAL-007",
"step": 8,
"assetCode": "DH_2284ABD91F544E2EB7799E9FA1C4BCF6",
"sha256": "1b8f68d21c2300b2bba451f5e22cbaafd6f2dcd0bf0d213c05a4caad53ce0ef0",
"duration": 4.8,
"size": 191600
},
{
"code": "TASK-VIRTUAL-007",
"step": 9,
"assetCode": "DH_BF468C49DDCB462E8E2C75CF8C6BD172",
"sha256": "095363c1f6be506fa3377330abbf88050dc9ffdd8dac07eb2c5476ea4ec32abe",
"duration": 6.8,
"size": 443419
},
{
"code": "TASK-VIRTUAL-007",
"step": 10,
"assetCode": "DH_88908FEBE6054EE99087F8653A8C5FAA",
"sha256": "eba4316082aa74841fe07f82c644484630efac95228a9b919b1d5348f76d06d8",
"duration": 5.44,
"size": 219713
},
{
"code": "TASK-VIRTUAL-007",
"step": 11,
"assetCode": "DH_4D873387CF324AAF9C6D3BE1A72C247E",
"sha256": "4fed628e2847089de8882bb29da648f5aa3c00acf696123c11e5e6c3d54a48bb",
"duration": 6.346333,
"size": 246099
},
{
"code": "TASK-VIRTUAL-008",
"step": 1,
"assetCode": "DH_76F80444AA9C4C3183A0EEDF6E655C25",
"sha256": "2e71eb4894d380917abb95245d3299e7c0b345c76a0a1df92610ba97c9d95e91",
"duration": 5.84,
"size": 380363
},
{
"code": "TASK-VIRTUAL-008",
"step": 2,
"assetCode": "DH_EAF5F0A89D454E6FBAFB061C93D2F760",
"sha256": "a1abca193097f47595f32b71a02f4101a02005d0ff67cd4932fa728403d1235b",
"duration": 7.138833,
"size": 286904
},
{
"code": "TASK-VIRTUAL-008",
"step": 3,
"assetCode": "DH_981034D69E3047C6B9D1DAE9BBF4F7D4",
"sha256": "46f07ce2308478ba60b58d4f6ec600773632193ffaa83f42ed52c71b660d4da5",
"duration": 5.88,
"size": 386424
},
{
"code": "TASK-VIRTUAL-008",
"step": 4,
"assetCode": "DH_60D40306A9E74E96ADD7641932934BE4",
"sha256": "7fdab9117f713bd3e01aa1d956bfdbc4601df9f5b166b4a05488c1181ba12211",
"duration": 4.92,
"size": 348426
},
{
"code": "TASK-VIRTUAL-008",
"step": 5,
"assetCode": "DH_A6EFEC7D339E4BA8994C525CA3709E2E",
"sha256": "5a2649d18c9cef179863c09cf8179668b34f1d253d1b340b3775509bdd057433",
"duration": 5.946333,
"size": 242429
},
{
"code": "TASK-VIRTUAL-008",
"step": 6,
"assetCode": "DH_D9E1BAFBD89D48019B9445B2A5752E68",
"sha256": "8c3679991ac10e63383a40c2deffb1a9fdb5b79cbb692db64fda410e2b13b923",
"duration": 7.273833,
"size": 299444
},
{
"code": "TASK-VIRTUAL-008",
"step": 7,
"assetCode": "DH_E83DDAB19F774A418C82EBA7E8EDCF8A",
"sha256": "d8e749aee075d99707af8b1a6b9a6700f7b0349c19e9bbd5957f55f43e9c50af",
"duration": 5.870833,
"size": 241834
},
{
"code": "TASK-VIRTUAL-008",
"step": 8,
"assetCode": "DH_4FE31068F3EB410BAC72E19F1D1BAF49",
"sha256": "3d3c67dfa76d776bcafee0e35412de7c44190b74776f93d426e6d9947fd7bb2c",
"duration": 5.383333,
"size": 208428
},
{
"code": "TASK-VIRTUAL-008",
"step": 9,
"assetCode": "DH_D0A3CAC5278C4A57AC9BEF13DA2690BC",
"sha256": "bd890674565a670e7994a60be84847b692a8b4820995c3063a497d8cc7eddf7e",
"duration": 6.011833,
"size": 241840
},
{
"code": "TASK-VIRTUAL-008",
"step": 10,
"assetCode": "DH_0F40DAF3E28F4FA088EA943D9470CAA7",
"sha256": "ed2ee749404179d67831c8f0c46cae21643c97700f431b5cb089f99644fb7d27",
"duration": 7.4,
"size": 503224
},
{
"code": "TASK-VIRTUAL-008",
"step": 11,
"assetCode": "DH_F6427532AF5F40348CEB154F031F2AED",
"sha256": "e90845dc69d890c341d682f5d36b8880e83fe26bdad34fd8573ee0560d36d287",
"duration": 16.12,
"size": 689467
},
{
"code": "TASK-VIRTUAL-008",
"step": 12,
"assetCode": "DH_F601DB08C8D44934AD3A1B1582E804DB",
"sha256": "133f1f65d5d88040d4ce758fdb7c0512c44d32f2affc5b0ce09f402f9fd687a5",
"duration": 5.48,
"size": 360250
},
{
"code": "TASK-VIRTUAL-008",
"step": 13,
"assetCode": "DH_B1BBA42CE5F346228B6B39A51F190CB3",
"sha256": "7cf538b8754ccb0ada36395919cb9653d804717ec6a4d339dc8c62572697f27a",
"duration": 5.888333,
"size": 242849
},
{
"code": "TASK-VIRTUAL-008",
"step": 14,
"assetCode": "DH_2BCD762C693242FF8DA420BD9A5D4DF9",
"sha256": "456843aa826f489cde689a55d4ffb3e3759b7f7464cc1fbdde6d7d7d216ef31f",
"duration": 7.646333,
"size": 318525
},
{
"code": "TASK-VIRTUAL-008",
"step": 15,
"assetCode": "DH_5F8309BF74344C568C2C9EEFDD9E74BF",
"sha256": "2a47835ce52868b09ecec6fe380098b412d29a8c2806519a54d15396e3473b57",
"duration": 16,
"size": 1093064
},
{
"code": "TASK-VIRTUAL-008",
"step": 16,
"assetCode": "DH_D525E35EDA12402DA13302C2B3874CC3",
"sha256": "2e22f597ff2808e1b9e600c46c319f82cd91e2be0063bfc817c94d672c786213",
"duration": 5.576333,
"size": 216175
}
]
}

+ 15
- 0
reports/bridge-digital-video-aspect-20260915/index.html Datei anzeigen

@@ -0,0 +1,15 @@
<!doctype html>
<html lang="zh-CN">
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1">
<title>数字教员 3:4 显示框验证</title>
<style>body{margin:24px auto;padding:0 24px;max-width:1400px;font:16px/1.6 system-ui;color:#163c35;background:#f3f7f6}section{padding:20px;background:white;border:1px solid #cdded9;border-radius:12px;margin:20px 0}img{display:block;max-width:100%;height:auto}a{color:#087d66}code{background:#e8efed;padding:2px 6px}</style>
<h1>数字教员显示框:3:4</h1>
<section>
<p>2026-09-15 · 本机 127.0.0.1:6180、局域网 192.168.31.168:6180 · 内部维护账号、任务 008 教员预览。未产生测试任务或训练成绩。</p>
<p>保留原宽度适配规则,高度按 3:4 自动计算,视频使用 contain 完整显示。1920×945 下为 122×162.66;1366×768 下为 112×149.33。两个地址、两种窗口和视频/语音两种状态共 8 项尺寸检查通过,页面脚本错误为 0。</p>
<p><code>pnpm run build</code>、<code>node scripts/virtual-training-formal-route.contract.test.mjs</code> 均通过;浏览器验证使用一次性 Playwright 检查。<a href="result.json">尺寸与环境记录</a></p>
</section>
<section><h2>桌面窗口</h2><img src="local-1920-video.png" alt="桌面窗口 3:4 数字教员视频框"></section>
<section><h2>小屏窗口</h2><img src="local-1366-video.png" alt="小屏窗口 3:4 数字教员视频框"></section>
</html>









+ 125
- 0
reports/bridge-digital-video-aspect-20260915/result.json Datei anzeigen

@@ -0,0 +1,125 @@
{
"results": [
{
"origin": "http://127.0.0.1:6180",
"viewport": {
"width": 1920,
"height": 945
},
"mode": "video",
"width": 122,
"height": 162.65625,
"actorWidth": 122,
"actorHeight": 162.65625,
"videoFit": "contain",
"bottom": 824,
"viewportHeight": 945
},
{
"origin": "http://127.0.0.1:6180",
"viewport": {
"width": 1920,
"height": 945
},
"mode": "audio",
"width": 122,
"height": 162.65625,
"actorWidth": 122,
"actorHeight": 162.65625,
"videoFit": "contain",
"bottom": 824,
"viewportHeight": 945
},
{
"origin": "http://127.0.0.1:6180",
"viewport": {
"width": 1366,
"height": 768
},
"mode": "video",
"width": 112,
"height": 149.328125,
"actorWidth": 112,
"actorHeight": 149.328125,
"videoFit": "contain",
"bottom": 647,
"viewportHeight": 768
},
{
"origin": "http://127.0.0.1:6180",
"viewport": {
"width": 1366,
"height": 768
},
"mode": "audio",
"width": 112,
"height": 149.328125,
"actorWidth": 112,
"actorHeight": 149.328125,
"videoFit": "contain",
"bottom": 647,
"viewportHeight": 768
},
{
"origin": "http://192.168.31.168:6180",
"viewport": {
"width": 1920,
"height": 945
},
"mode": "video",
"width": 122,
"height": 162.65625,
"actorWidth": 122,
"actorHeight": 162.65625,
"videoFit": "contain",
"bottom": 824,
"viewportHeight": 945
},
{
"origin": "http://192.168.31.168:6180",
"viewport": {
"width": 1920,
"height": 945
},
"mode": "audio",
"width": 122,
"height": 162.65625,
"actorWidth": 122,
"actorHeight": 162.65625,
"videoFit": "contain",
"bottom": 824,
"viewportHeight": 945
},
{
"origin": "http://192.168.31.168:6180",
"viewport": {
"width": 1366,
"height": 768
},
"mode": "video",
"width": 112,
"height": 149.328125,
"actorWidth": 112,
"actorHeight": 149.328125,
"videoFit": "contain",
"bottom": 647,
"viewportHeight": 768
},
{
"origin": "http://192.168.31.168:6180",
"viewport": {
"width": 1366,
"height": 768
},
"mode": "audio",
"width": 112,
"height": 149.328125,
"actorWidth": 112,
"actorHeight": 149.328125,
"videoFit": "contain",
"bottom": 647,
"viewportHeight": 768
}
],
"errors": []
}

+ 1
- 0
reports/bridge-digital-video-label-20260915/index.html Datei anzeigen

@@ -0,0 +1 @@
<!doctype html><meta charset="utf-8"><title>Digital instructor label removal</title><style>body{font:16px system-ui;margin:32px;background:#f3f7f6}img{display:block;margin:16px 0;max-width:100%}</style><h1>Digital instructor label removed</h1><p>Local and LAN preview verified; video playback works. No training records created.</p><a href="result.json">Verification data</a><img src="local.png" alt="Local preview"><img src="lan.png" alt="LAN preview">



+ 17
- 0
reports/bridge-digital-video-label-20260915/result.json Datei anzeigen

@@ -0,0 +1,17 @@
{
"checks": [
{
"origin": "http://127.0.0.1:6180",
"labelRemoved": true,
"videoPlaying": true,
"file": "local.png"
},
{
"origin": "http://192.168.31.168:6180",
"labelRemoved": true,
"videoPlaying": true,
"file": "lan.png"
}
],
"testDataCreated": false
}

+ 59
- 0
reports/bridge-digital-video-static-20260915/ACCEPTANCE.md Datei anzeigen

@@ -0,0 +1,59 @@
# 四套桥梁流程 v2 数字人讲解验收

2026-09-15;本机 Windows,教员1 v2;使用负责人已确认的 005 第一步样片参数。

## 交付

- TASK-VIRTUAL-005:5 段;006:7 段;007:11 段;008:16 段,共 39 段。
- MP4 位于 `unreal_tran_web/public/legacy/virtual-training/videos/narration/`,已进入前端 `dist`,采用静态地址播放。
- 总时长 264.24 秒,总大小 17,727,827 字节;480×640、25 FPS、H.264/AAC。
- 005 第一步与已确认样片逐字节相同。其余步骤复用各自原讲解音轨,以同一教员1 v2 和捕获方法生成。
- 任务 86–89 的发布版本 533–536 保留;39 个服务端步骤与讲解清单匹配。本次未创建或改写任务、版本、运行或成绩。
- 原 39 个视频与 42 个 WAV 的 SHA-256 均保持一致。讲解可切回语音,视频失败自动使用保留的语音。

## 验证结果

- 所有 39 段完整解码通过,编码、尺寸、帧率和时长检查通过。
- 39 段均存在有效声音,见 `delivery-validation.json` 中音量记录。
- `public`、`dist`、本机 HTTP 下载、局域网 HTTP 下载的全部文件摘要一致;视频 Range 请求返回 206。
- 逐段预览页包含 39 个有效视频链接;每套流程抽帧检查,画面正常。
- 本机 `http://127.0.0.1:6180` 与局域网 `http://192.168.31.168:6180` 各测试四个真实任务的教员预览。页面用现有登录及教学 API,经同源 `/api` 访问配置的 Gateway 6100。
- 每套检查第一、第二步实际静态视频播放,切换语音/视频,三维操作后切步停止旧视频,损坏视频时回退 WAV,刷新后播放和关闭教员停止。两个环境均通过,页面脚本错误为 0,旧讲解资产下载为 0。
- 预览验证使用内部维护账号;未生成测试任务、学员运行或测试成绩。

## 已执行命令

在数字人 API 目录,使用既有 Python 环境:

```powershell
python ../../unreal_tran/ute2e/tools/bridge-digital-video-static-generate.py
```

在 `unreal_tran_web`:

```powershell
pnpm run build
node --test scripts/bridge-digital-video.contract.test.mjs scripts/bridge-script-narration.test.mjs
node --test scripts/bridge-scripts-3d-only.test.mjs
node scripts/virtual-training-formal-route.contract.test.mjs
```

构建成功,11 项视频/语音测试及 2 项三维脚本测试通过,正式入口契约通过。Vite 仍提示部分既有包超过 500 kB,不影响构建。

在 `ute2e`:

```powershell
node tools/bridge-digital-video-static-live.mjs
$env:BASE_URL = 'http://192.168.31.168:6180'
node tools/bridge-digital-video-static-live.mjs
node tools/bridge-digital-video-static-delivery.mjs
```

## 证据

- `index.html`:39 段视频集中预览。
- `generation.json`、`manifest.json`:素材来源、逐步对应及文件摘要。
- `delivery-validation.json`:全部视频、保留文件、构建输出和两处 HTTP 地址的验证。
- `live-result.json`、`lan-result.json`:实际页面交互结果。
- `TASK-VIRTUAL-005-video.png` 至 `TASK-VIRTUAL-008-video.png`:项目内播放截图。
- 各任务 `*-frame.jpg`:生成视频抽帧。

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.

Laden…
Abbrechen
Speichern