aglinxinyuan opened a new issue, #4955:
URL: https://github.com/apache/texera/issues/4955

   `amber/src/main/scala/org/apache/texera/workflow/LogicalLink.scala` is the 
case class describing an edge in the user-facing logical workflow graph. It has 
two construction paths and ships across the wire / persisted in saved 
workflows, but it has no unit test today:
   
   | Surface | Need to pin |
   | --- | --- |
   | Primary constructor | `(OperatorIdentity, PortIdentity, OperatorIdentity, 
PortIdentity)` round-trips into the four fields. |
   | Secondary `@JsonCreator` constructor | `(String, PortIdentity, String, 
PortIdentity)` wraps each string in `OperatorIdentity(...)` — this is the 
Jackson deserialization path, used to read user-saved workflow JSON. |
   | Case-class `equals` / `hashCode` | Structural equality across the four 
fields. |
   | Jackson round-trip | A `LogicalLink` written by 
`objectMapper.writeValueAsString` and read back via the 
`@JsonProperty(\"fromOpId\") / @JsonProperty(\"toOpId\")` mappings yields an 
equal value. |
   | `@JsonProperty` field naming | The on-the-wire key for `fromOpId` is 
`\"fromOpId\"` (and same for `toOpId`) — pin so a renamed Scala field doesn't 
silently break saved workflows. |
   
   ### Priority
   P3 - Low
   
   ### Task Type
   - [x] Testing / QA


-- 
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

To unsubscribe, e-mail: [email protected]

For queries about this service, please contact Infrastructure at:
[email protected]

Reply via email to