Skip to content

Commit 103405c

Browse files
committed
doc: update ADR
1 parent e36fde1 commit 103405c

1 file changed

Lines changed: 31 additions & 0 deletions

File tree

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# ZKGM Receive Handling Update
2+
3+
## Context
4+
5+
Some receive paths did not handle retry-required outcomes consistently, which could cause packet processing results to be recorded differently than intended in certain situations.
6+
7+
In addition, malformed response data could affect downstream acknowledgement processing.
8+
9+
## Decision
10+
11+
The receive handling logic was aligned so that retry-required outcomes abort processing and remain eligible for retry.
12+
13+
Acknowledgement handling was also updated to treat malformed responses as failures, ensuring downstream processing behaves consistently.
14+
15+
Existing error propagation behavior for internal handlers remains unchanged.
16+
17+
## Alternatives Considered
18+
19+
Modifying only lower-level execution helpers was rejected because it would reduce consistency across the overall processing flow.
20+
21+
Limiting the change to a subset of receive paths was also rejected because it would not fully address the issue.
22+
23+
Ignoring all acknowledgement errors was rejected because some errors indicate invariant violations that should continue to surface.
24+
25+
## Consequences
26+
27+
Retry-required outcomes no longer result in finalized processing and can be retried safely.
28+
29+
Malformed responses are handled consistently, improving the robustness of acknowledgement processing.
30+
31+
The behavior of lower-level execution helpers remains unchanged, preserving compatibility with existing logic and tests.

0 commit comments

Comments
 (0)