- 자동 재수집 리스너(AutoRetryJobExecutionListener) 및 비동기 트리거 서비스 추가 - 실패 레코드 최대 재시도 횟수(3회) 제한으로 무한 루프 방지 - 전용 스레드 풀(autoRetryExecutor) 분리 - last_success_date 복원 시 경합 조건 보호 - 재수집 이력 N+1 쿼리 해결 (벌크 조회) - 실패 레코드 일괄 RESOLVED 처리 API 추가 - 재수집 이력 CSV 내보내기 API 추가 (UTF-8 BOM) - 프론트엔드 공유 컴포넌트 추출 (StatCard, CopyButton, ApiLogSection, InfoItem) - 대시보드 재수집 통계 위젯 추가 - 실행 이력 미해결 건수 COMPLETED 상태만 표시 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
16 lines
405 B
TypeScript
16 lines
405 B
TypeScript
interface InfoItemProps {
|
|
label: string;
|
|
value: string;
|
|
}
|
|
|
|
export default function InfoItem({ label, value }: InfoItemProps) {
|
|
return (
|
|
<div>
|
|
<dt className="text-xs font-medium text-wing-muted uppercase tracking-wide">
|
|
{label}
|
|
</dt>
|
|
<dd className="mt-1 text-sm text-wing-text break-words">{value || '-'}</dd>
|
|
</div>
|
|
);
|
|
}
|