ES /docs

SiliteService::updateSiLiteState | failed - captureId: 736992, state: processing, error: {"stack":"H

Summary: SiliteService::updateSiLiteState — 403 ENT4000 on trashed capture

결과#

cupixworks-si-lite-agentSiliteService.run 을 재정렬해 fetch/validate 를 먼저 수행하고, trash 된 capture (HTTP 403 + ENT4000) 는 warn 한 줄로 skip 하도록 변경. sibling 클러스터 ab8a602b (state:error) 와 23a74e95 (handlingMessageErrors) 도 동일 흐름으로 해소.

Pull Requests#

변경 내용#

  • applications/agents/packages/cupix-si-lite-agent/src/silite-service.ts
    • 순수 함수 isTrashNotFoundError(error) 추가 (Tesla API 응답에서 body.result.code === 'ENT4000' 감지).
    • run 재정렬: fetchAndValidateCapture 를 먼저 호출. ENT4000 이면 warn 로그 후 정상 종료. 그 외 fetch/validate 실패는 updateSiLiteState(Error) 후 rethrow.
    • updateSiLiteState catch 블록: ENT4000 → logger.warn, 그 외 → 기존 logger.error. rethrow 는 두 경로 동일.
  • applications/agents/packages/cupix-si-lite-agent/test/silite-service.spec.ts
    • 신규 describe run - trashed capture handling (2 cases): ENT4000 skip 경로 + PERM10000 propagate.
    • 신규 describe updateSiLiteState - ENT4000 downgrade (2 cases): warn/error 분기.
    • 기존 validation-error 스펙 갱신 (Processing → ErrorError 만 1회).

Validation#

Blind validator subagent 1회 통과 (APPROVED). 6개 plan item / 5개 acceptance criterion 모두 PASS.

Tests#

  • pnpm exec eslint packages/cupix-si-lite-agent/{src,test}/silite-service.{ts,spec.ts} — clean
  • pnpm exec nx run cupix-si-lite-agent:test — 58 tests pass, silite-service.ts coverage 91.81%

Cleanup#

bash
cd /home/ec2-user/repos/cupixworks
git worktree remove /home/ec2-user/error-sweeper/.worktrees/619a1e49-2136-4247-8cac-4648f3a586f2/cupixworks