Co-authored-by: genichin <4282227+genichin@users.noreply.github.com>
1.3 KiB
1.3 KiB
id, status
| id | status |
|---|---|
| ac-0021 | active |
skipped-ledger 알림과 해결 이벤트
Criterion
unresolved ledger_skip 레코드는 best-effort·non-blocking 방식으로 deduplicated trex.alerts 이벤트를 발행해야 하며, notifier 부재나 transport 오류가 fill lifecycle을 막아서는 안 된다. 동일 unresolved event는 중복 알림 없이 1회만 알리고, 이후 정상 ledger delivery가 성공하거나 operator가 명시적으로 reconcile/resolve 하면 해당 ledger_skip 레코드는 resolved 상태로 전이되고 distinct resolved alert event를 발행해야 한다.
Verification
- 성공 조건: 새로운 unresolved skip 1건은
trex.alerts에ledger_skip_unresolvedalarm 1건을 만들고, manual backfill 또는 operator resolve 후에는 동일 skip에 대해ledger_skip_resolvedalarm이 별도로 발행된다. 알림 publish 실패는 swallow되며 durable state 전이는 유지된다. - 실패·경계 조건: unresolved skip마다 중복 알림이 반복 발행됨, resolved 전이가 알림 없이 묵살됨, alert publish failure가 fill/backfill/resolve 경로를 abort시킴은 FAIL이다.
- 검사 방법: in-memory alarm transport tests, CLI ledger backfill resolution tests, skipped-ledger resolve command tests, PostgreSQL resolution-state verification을 실행한다.