M4: trace API, portal embed client, EmbeddingGemma sync, release plan

This commit is contained in:
Warren
2026-05-08 01:04:23 +08:00
parent 26d9c33419
commit 6d82131589
4 changed files with 506 additions and 31 deletions

View File

@@ -146,6 +146,14 @@
</div>
</div>
</div>
<!-- Face Traces -->
<div class="bg-gray-800 rounded-lg p-6 border border-gray-700">
<FaceTraceTimeline
:file-uuid="uuid"
:total-duration="probeInfo?.format?.duration || 0"
@select="handleTraceSelect" />
</div>
</template>
<!-- 3. Generic Probe Info -->
@@ -191,6 +199,7 @@
import { ref, computed, onMounted } from 'vue'
import { useRoute, useRouter } from 'vue-router'
import { getVideos, registerVideo, unregisterVideo, processVideo } from '@/api/client'
import FaceTraceTimeline from '@/components/FaceTraceTimeline.vue'
const route = useRoute()
const router = useRouter()
@@ -310,6 +319,11 @@ async function handleProcess() {
}
}
function handleTraceSelect(traceId: number) {
// Navigate to face candidates filtered by this trace
router.push(`/faces/candidates?trace_id=${traceId}&file_uuid=${uuid}`)
}
async function loadVideoDetail() {
loading.value = true
try {