bobbai00 opened a new pull request, #6009:
URL: https://github.com/apache/texera/pull/6009

   ### What changes were proposed in this PR?
   
   Restructures the per-operator summary the sync-execution backend returns and 
the agent-service / frontend consume, for a leaner, consistent wire contract. 
This is a focused re-do of #5927 cut directly from `main` (no foundation 
stack): it changes only the execution result/error model and its consumers.
   
   - Replace the flat `OperatorInfo` with `OperatorExecutionSummary` 
(orthogonal sub-summaries: `state`, `errorMessages`, `resultSummary?`, 
`consoleLogsSummary?`); rename `SyncExecutionResult` → 
`WorkflowExecutionSummary`.
   - `resultSummary.sampleTuples` is now `SampleRow[]` (`{ rowIndex, tuple }`) 
instead of JSON rows with an embedded `__row_index__`; drop the table-shape 
types (the agent derives input-port shapes from the DAG).
   - Move `WorkflowFatalError` into `types/execution.ts` and reuse it for 
per-operator errors — the same type the workflow-compiling service returns for 
compilation errors, so compile and execution errors share one wire shape; 
`api/compile-api.ts` re-exports it so its existing importers are unchanged.
   - `errorMessages` / `errors` are non-optional (empty = none); drop 
`compilationErrors`; collapse the console-message types and derive warnings 
from `WARNING:`-titled messages.
   - Operator results are still pulled on demand via `GET 
/agents/:id/operator-results` (transport unchanged); that REST payload now 
carries the canonical `OperatorExecutionSummary`, and the frontend maps it to 
its flat display type (re-flattening `sampleTuples` so the display components 
are unchanged).
   
   Touches the Scala producer (`SyncExecutionResource`), the agent-service 
consumers (`result-formatting`, `workflow-execution-tools`, 
`workflow-result-state`, `server`), and the frontend mapping. 
Representation/type-level; behavior preserved (input-port shape lines are now 
derived rather than explicitly rendered).
   
   ### Any related issues, documentation, discussions?
   
   Closes #5750
   Part of #5747.
   Supersedes #5927.
   
   ### How was this PR tested?
   
   - agent-service: `tsc --noEmit` clean, `bun test` 110/110 pass, `prettier 
--check` clean.
   - The Scala producer (`SyncExecutionResource`) is unchanged from #5927, 
which verified it via `sbt WorkflowExecutionService/compile` and a full-stack 
end-to-end run (a Claude Haiku 4.5 agent built and executed a CSV workflow; 
`/operator-results` returned the new shape — `resultSummary.sampleTuples: [{ 
rowIndex, tuple }]`, `errorMessages: []`).
   
   ### Was this PR authored or co-authored using generative AI tooling?
   
   Generated-by: Claude Opus 4.8 (1M context)
   


-- 
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