Dependency Direction¶
Dependency direction is part of DAG correctness. It prevents semantic logic from absorbing runtime side effects and prevents CLI wrappers from owning core rules.
Visual Summary¶
flowchart TD
dag_cli["dag-cli"] --> dag_app["dag-app"]
dag_app --> dag_core["dag-core"]
dag_app --> dag_runtime["dag-runtime"]
dag_runtime --> dag_artifacts["dag-artifacts"]
dag_runtime --> dag_core
Direction Rules¶
dag-coremust not depend on runtime, app, or cli layers.dag-runtimemay depend on core and artifacts only.dag-apporchestrates runtime/core/artifacts, but owns no core semantics.dag-cliremains thin and delegates behavior to app commands.
Guardrails¶
- no direct filesystem/process/env reads inside pure core semantics paths
- no app-level response formatting logic inside runtime execution modules
- no artifact schema rewrites outside
dag-artifacts
Code Anchors¶
crates/bijux-dag-core/CONTRACT.mdcrates/bijux-dag-runtime/CONTRACT.mdcrates/bijux-dag-app/CONTRACT.mdcrates/bijux-dag-cli/src/main.rs