The GitHub Actions job "Required Checks" on texera.git/gh-readonly-queue/main/pr-5845-6d31f46ecfe894fb04f783972c8f9566afb5a16b has succeeded. Run started by GitHub user xuang7 (triggered by xuang7).
Head commit for run: 58824343dfd0f25ba9b79f34017743d6b3cdcdf3 / Xinyuan Lin <[email protected]> test(workflow-operator): add unit test coverage for IntervalJoin, JoinUtils, and OperatorGroupConstants (#5845) ### What changes were proposed in this PR? Pin behavior of three join/utility classes in `common/workflow-operator/`. No production-code changes. | Spec | Source class | Tests | | --- | --- | --- | | `IntervalJoinOpDescSpec` | `IntervalJoinOpDesc` | 5 | | `JoinUtilsSpec` | `JoinUtils` (object) | 3 | | `OperatorGroupConstantsSpec` | `OperatorGroupConstants` (object) | 4 | **Behavior pinned — `IntervalJoinOpDesc`** | Surface | Contract | | --- | --- | | `operatorInfo` | `Interval Join`, JOIN_GROUP; two ordered inputs (`left table` at `PortIdentity()`, `right table` at `PortIdentity(1)` depending on the left); one output | | Field defaults | join-key attrs `null`; `constant == 10`; `includeLeftBound`/`includeRightBound == true` | | `getPhysicalOp` | wires `IntervalJoinOpExec`; port identities carried; `HashPartition` requirement on each join key | | Schema propagation | merges left ⧺ right schemas, suffixing a conflicting attribute with `#@1` | **Behavior pinned — `JoinUtils.joinTuples`** | Surface | Contract | | --- | --- | | Concatenation | left + right fields merged | | Skip | the named join-key attribute is dropped from the right side | | Conflict rename | a right-side name collision is renamed with a `#@1` suffix | **Behavior pinned — `OperatorGroupConstants`** | Surface | Contract | | --- | --- | | Constant values | the canonical group-name strings (`Data Input`, `Join`, `Set`, … `Control Block`) | | `OperatorGroupOrderList` | starts at `Data Input`, ends at `Control Block`; relational subgroups (Join/Set/Aggregate/Sort) nested under `Data Cleaning`; visualization subgroups nested under `Visualization` in panel order | ### Any related issues, documentation, discussions? Closes #5840. ### How was this PR tested? - `sbt "WorkflowOperator/testOnly org.apache.texera.amber.operator.intervalJoin.IntervalJoinOpDescSpec org.apache.texera.amber.operator.hashJoin.JoinUtilsSpec org.apache.texera.amber.operator.metadata.OperatorGroupConstantsSpec"` — 12 tests, all green - `sbt "WorkflowOperator/Test/scalafmtCheck"` and `sbt "WorkflowOperator/Test/scalafix --check"` — clean - CI to confirm ### Was this PR authored or co-authored using generative AI tooling? Generated-by: Claude Code (Opus 4.8 [1M context]) Report URL: https://github.com/apache/texera/actions/runs/27896423694 With regards, GitHub Actions via GitBox
