refactor(workflows): move core_adapter contents up one level

Promote graph, lifecycle, and node_handler to top-level modules,
removing the unnecessary core_adapter grouping layer.

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
Bryan Helmkamp 2026-03-25 10:36:26 -04:00
parent 1921f5f84e
commit c4fda9d7d2
No known key found for this signature in database
14 changed files with 27 additions and 30 deletions

View file

@ -1,7 +0,0 @@
pub mod graph;
pub mod handler;
pub mod lifecycle;
pub use graph::{WorkflowEdge, WorkflowGraph, WorkflowNode};
pub use handler::WorkflowNodeHandler;
pub use lifecycle::WorkflowLifecycle;

View file

@ -95,7 +95,9 @@ pub mod checkpoint;
pub mod conclusion;
pub mod condition;
pub mod context;
pub mod core_adapter;
pub mod graph;
pub mod lifecycle;
pub mod node_handler;
pub mod cost;
pub mod devcontainer_bridge;
pub mod error;

View file

@ -8,8 +8,8 @@ use fabro_core::lifecycle::{AttemptContext, AttemptResultContext, RunLifecycle};
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::artifact::{offload_large_values, sync_artifacts_to_env, ArtifactStore};
use crate::event::{EventEmitter, RunNoticeLevel, WorkflowRunEvent};
use crate::outcome::StageUsage;

View file

@ -4,8 +4,8 @@ use fabro_core::lifecycle::RunLifecycle;
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::outcome::{StageStatus, StageUsage};
type WfRunState = RunState<Option<StageUsage>>;

View file

@ -8,8 +8,8 @@ use fabro_core::lifecycle::{EdgeContext, EdgeDecision, RunLifecycle};
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::error::{FailureCategory, FailureSignature};
use crate::graph_ops::classify_outcome;
use crate::outcome::{OutcomeExt, StageStatus, StageUsage};

View file

@ -8,8 +8,8 @@ use fabro_core::lifecycle::RunLifecycle;
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use super::circuit_breaker::CircuitBreakerLifecycle;
use crate::checkpoint::Checkpoint;
use crate::event::{EventEmitter, RunNoticeLevel, WorkflowRunEvent};

View file

@ -8,8 +8,8 @@ use fabro_core::lifecycle::{AttemptContext, AttemptResultContext, EdgeContext, R
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use super::git::GitCheckpointResult;
use crate::artifact::ArtifactStore;
use crate::event::{EventEmitter, WorkflowRunEvent};

View file

@ -6,8 +6,8 @@ use fabro_core::graph::NodeSpec;
use fabro_core::lifecycle::{EdgeContext, NodeDecision, RunLifecycle};
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::context::keys;
use crate::graph_ops::{resolve_fidelity, resolve_thread_id};
use crate::outcome::StageUsage;

View file

@ -9,8 +9,8 @@ use fabro_core::lifecycle::RunLifecycle;
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::artifact::ArtifactStore;
use crate::event::{EventEmitter, RunNoticeLevel, WorkflowRunEvent};
use crate::outcome::{Outcome, StageStatus, StageUsage};

View file

@ -10,8 +10,8 @@ use fabro_core::lifecycle::{
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::super::graph::WorkflowGraph;
use super::super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::graph_ops::set_hook_node;
use crate::outcome::{Outcome, OutcomeExt, StageStatus, StageUsage};
use fabro_hooks::{HookContext, HookDecision, HookEvent, HookRunner};

View file

@ -23,8 +23,8 @@ use fabro_core::lifecycle::{
use fabro_core::outcome::NodeResult;
use fabro_core::state::RunState;
use super::graph::WorkflowGraph;
use super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::artifact::ArtifactStore;
use crate::context;
use crate::event::EventEmitter;

View file

@ -12,8 +12,8 @@ use fabro_core::retry::RetryPolicy as CoreRetryPolicy;
use crate::context::Context;
use super::graph::WorkflowGraph;
use super::WorkflowNode;
use crate::graph::WorkflowGraph;
use crate::graph::WorkflowNode;
use crate::handler::{format_panic_message, EngineServices};
use crate::outcome::{Outcome, StageStatus};
use crate::{graph_ops, run_dir};
@ -147,7 +147,7 @@ mod tests {
use fabro_graphviz::graph::types::{Edge, Graph, Node};
use fabro_graphviz::graph::AttrValue;
use super::super::graph::WorkflowGraph;
use crate::graph::WorkflowGraph;
use super::*;
/// Minimal spike handler that always succeeds — proves the trait plumbing.

View file

@ -6,7 +6,9 @@ use fabro_core::state::RunState;
use tokio_util::sync::CancellationToken;
use crate::context::{self, Context};
use crate::core_adapter::{WorkflowGraph, WorkflowLifecycle, WorkflowNodeHandler};
use crate::graph::WorkflowGraph;
use crate::lifecycle::WorkflowLifecycle;
use crate::node_handler::WorkflowNodeHandler;
use crate::error::FabroError;
use crate::handler::EngineServices;
use crate::outcome::{Outcome, StageStatus};