# Vault & History

View previous detections and industrial reports.

@if (viewMode === 'local' && localHistoryRecords.length > 0) {
} @if (viewMode === 'remote' && remoteHistoryRecords.length > 0) {
}
@if (surveillance.nestStatus() === 'OFFLINE') {
⚠ NestJS Offline — Industrial Cloud (API) is unavailable. Browser Cache only.
}
@if (loading) {

Synchronizing vault data...

} @if (!loading && viewMode === 'local') { @if (localHistoryRecords.length === 0) {
📭

Your browser cache is empty. Run a local analysis to save records.

} @if (localHistoryRecords.length > 0) {
@for (record of localHistoryRecords; track record.timestamp + record.filename) {
{{ record.timestamp }} {{ record.filename }} {{ record.engine }}
@for (badge of getSummaryBadge(record.industrial_summary || record.summary); track badge) { {{ badge }} }
{{ isExpanded(record.timestamp, record.filename) ? '▾' : '▸' }}
@if (isExpanded(record.timestamp, record.filename)) {

@if (record.imageData) {
@for (det of record.detections; track $index) {
}
} @if (!record.imageData) {

No preview available

}

### Industrial Metrics

- Total Bunches: {{ record.detections.length }}
- Archive ID: {{ record.archive_id || 'LOCAL_ONLY' }}
- Inference: {{ record.inference_ms }} ms
- Processing: {{ (record.processing_ms || 0).toFixed(1) }} ms

}
}
} } @if (!loading && viewMode === 'remote') { @if (batchGroups.length === 0) {
📭

No industrial records found on the server.

} @if (batchGroups.length > 0) {
@for (group of batchGroups; track group.batch_id) {
{{ group.label }} {{ group.timestamp }}
@for (badge of getGroupSummary(group); track badge) { {{ badge }} }
{{ group.expanded ? '▾' : '▸' }}
@if (group.expanded) {
@for (record of group.records; track record.archive_id) {
@if (record.imageData) { @for (det of record.detections; track $index) {
} } @else {
No img
}
{{ record.filename }} {{ record.total_count }} bunches
}
}
}
} }