BaseService::handlingMessageErrors | Error and message object - {"error":{"statusCode":403,"requestU
Service
cupixworks-capture-preprocessor-agent
Occurrences
5
Status
Reported
Confidence
85%
Actionability
44%
Cluster ID
49f94e56-841d-4f20-a338-bcd361e2e225
First Seen
2026-06-24 05:57 UTC
Last Seen
2026-07-27 03:01 UTC
Actions
BaseService::handlingMessageErrors | Error and message object - {"error":{"statusCode":403,"requestU
What Happened#
2026-06-24 14:57:34 KST에 cupixworks-capture-preprocessor-agent가 SQS 메시지를 처리하며 capture 720817을 조회하려다 cupixworks-api로부터 403 / ENT4000 (Capture not found) 응답을 받았다. 사용자가 동일 capture에 대해 같은 SQS 작업이 enqueue된 직후 PUT /captures/720817/trash 호출로 capture를 휴지통으로 보냈고, 약 4분 뒤 agent가 이미 in-flight였던 메시지를 꺼내어 처리하던 중 발생한 race condition이다.
Quick Facts#
| Field | Value |
|---|---|
| exception.class | Cupix::Errors::NotFound |
| exception.code | ENT4000 |
| exception.message | Capture not found |
| http.status | 403 |
| top_frame | packages/base/src/base-service.ts:311 (BaseService::handlingMessageErrors) |
| api endpoint | GET /api/v1/captures/720817 |
| env | production, us-west-2, tenant cupix, team updatedemo |
Affected Teams#
| Team / Domain | Error Count | Impact |
|---|---|---|
| updatedemo (capture 720817) | 1 | 사용자가 직접 trash한 capture의 잔여 preprocessor job 1건이 실패로 마감 (SQS 메시지 삭제됨). 사용자 영향 없음. |
| 다른 팀 (24h 같은 패턴) | 6 | 74587, 74567, 74547, 74440, 44706, 74417 — 모두 동일한 403/ENT4000 시그니처. 별도 클러스터로 추적되지 않은 같은 race condition 사례. |
Timeline#
- 2026-06-24 14:52:44 KST — capture 720817 생성 (
created_at: 2026-06-24T05:52:44.682Z, Kibana) - 2026-06-24 14:52:59 KST —
[200] PUT /api/v1/captures/720817(update),[200] GET /api/v1/captures/720817— preprocessor job이 enqueue됨 - 2026-06-24 14:53:37 KST —
[204] PUT /api/v1/captures/720817/trash— 사용자가 capture를 휴지통으로 이동 - 2026-06-24 14:57:34 KST — agent가 SQS 메시지(
d8014f41-..., ApproximateReceiveCount=1)를 dequeue,GET /api/v1/captures/720817호출 →[403] ENT4000 Capture not found응답 - 2026-06-24 14:57:34 KST —
getApiErrorToDeleteMessage가 statusCode 403을 deletable error로 분류, SQS 메시지 삭제 + error 레벨 로그 출력
Scoring#
Confidence 85% · Actionability 44%
Confidence#
| Dimension | Score | Detail |
|---|---|---|
| Evidence completeness | 5/5 | 19 code refs, 5 log queries |
| Code path explicitness | 3/3 | 19 file:line refs |
| Log evidence | 3/3 | section, query, pattern |
| RCA structure | 3/3 | 3/3 sections |
| Revision history | 0/3 | 0 revision(s) |
| Agent execution | 3/3 | success |
Actionability#
| Dimension | Score | Detail |
|---|---|---|
| Fix complexity | 5/5 | trivial |
| Affected files | 1/5 | 14 file(s) |
| Single repo | 1/3 | 6 service(s) |
| Immediate actions | 0/3 | absent |
| Testability | 0/3 | no test info |
| External dependency | 1/3 | external deps found |
| Data migration | 3/3 | no migration |