Skip to content

merge execution#214

Open
raphael-goetz wants to merge 5 commits into
mainfrom
#207-merge-execution
Open

merge execution#214
raphael-goetz wants to merge 5 commits into
mainfrom
#207-merge-execution

Conversation

@raphael-goetz
Copy link
Copy Markdown
Member

Resolves: #207

Copilot AI review requested due to automatic review settings June 5, 2026 12:29
@github-actions
Copy link
Copy Markdown

github-actions Bot commented Jun 5, 2026

GitLab Pipeline Action

General information

Link to pipeline: https://gitlab.com/code0-tech/development/taurus/-/pipelines/2579329966

Status: Passed
Duration: 1 minutes

Job summaries

docs:preview

Documentation preview available at https://code0-tech.gitlab.io/-/development/telescopium/-/jobs/14713744584/artifacts/out/index.html

Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR merges the previous “test execution” path into the normal execution pipeline and adds end-to-end reporting so Taurus can transmit a completed ExecutionResult (including per-node results) to Aquila after each flow run (dynamic mode).

Changes:

  • Remove the separate test_execution.* NATS request/reply path and standardize on execution.* consumption.
  • Add an Aquila execution gRPC client and send ExecutionResult updates after each execution.
  • Extend taurus-core to produce execution reports containing per-node results (including parameter results), and bump tucana to support the new result shapes.

Reviewed changes

Copilot reviewed 12 out of 13 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
README.md Updates the high-level Taurus description to include execution result transmission.
docs/errors.md Updates T-TAURUS-000001 description to reflect unified execution subject/payload.
docs/dev.md Documents execution-result transmission behavior in dynamic mode.
crates/taurus/src/client/runtime_execution.rs Adds Aquila execution gRPC client for pushing ExecutionResult.
crates/taurus/src/client/mod.rs Exposes the new runtime execution client module.
crates/taurus/src/app/worker.rs Removes test execution subscription and sends execution results to Aquila after runs.
crates/taurus/src/app/mod.rs Wires the new execution client into dynamic-mode startup and the worker.
crates/taurus-manual/src/main.rs Adds CLI option to enqueue an execution on a running Taurus via NATS.
crates/taurus-core/src/runtime/execution/value_store.rs Stores/returns per-node execution results with parameter result support.
crates/taurus-core/src/runtime/engine/executor.rs Captures parameter results and propagates them into stored node results.
crates/taurus-core/src/runtime/engine.rs Introduces EngineExecutionReport and report-returning execution APIs.
Cargo.toml Bumps tucana workspace dependency version.
Cargo.lock Updates lockfile for tucana version bump.

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment on lines +27 to +31
log::info!("Updating the current Runtime Execution!");
log::debug!(
"ExecutionResult payload sent to execution service: {:?}",
runtime_execution
);
Comment on lines +124 to +132
let execution_result = build_execution_result(
run_result.execution_id,
run_result.flow_id,
run_result.started_at,
run_result.finished_at,
run_result.input.clone(),
run_result.node_execution_results,
run_result.signal.clone(),
);
Comment on lines +244 to +253
let result = match &node.execution_target {
NodeExecutionTarget::Local => {
let signal = self.execute_local_node(node, value_store, frame_id);
self.commit_result(node.id, signal, value_store)
}
NodeExecutionTarget::Remote { service } => {
self.execute_remote_node(node, service, value_store, frame_id)
let executed = self.execute_local_node(node, value_store, frame_id);
let parameter_results = executed.parameter_results;
let signal = self.commit_result(
node.id,
executed.signal,
parameter_results.clone(),
value_store,
);
Comment on lines +62 to 66
let report = self.execute_flow_with_execution_id_report(
ExecutionId::new_v4(),
flow,
remote,
respond_emitter,
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Merge Test & Normal Execution to push every Execution Result

2 participants