Your browser sucks, JavaScript disabled! Gunnar's console needs JavaScript and WebAssembly. Git over SSH on port 2222 does not.

nordisk/facett

facett-brokkr/Cargo.toml

[package]
name = "facett-brokkr"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
description = "brokkr CI/build-pipeline builder facet — author a `brokkr.toml` pipeline two ways: TEXT (edit the raw TOML with live parse + validation) or CLICK (add/remove stages, steps, triggers structurally), the two kept in sync, with a topo-ordered stage/step DAG preview. Emits valid `brokkr.toml` text a host parses with brokkr's real parser; pure editor, no async/network, no nornir dependency edge."

[dependencies]
facett-flow = { path = "../facett-flow", version = "0.2.0", features = ["host", "labels", "boxes", "arrows", "status", "hit-test"] }
facett-core = { path = "../facett-core", version = "0.3.0" }
egui = { workspace = true }
serde = { version = "1", features = ["derive"] }
serde_json = { workspace = true }
# Round-trip the `brokkr.toml` document in TEXT mode: parse the user's TOML back
# into the model. Emission is a hand-written serializer (matches the exact shape
# brokkr's descriptor parser accepts), so this is the parse direction only.
toml = "1"

[dev-dependencies]
# CPU render-proof (AccessKit tree) via the kittest harness — the `ui()` render
# path (the TEXT editor, the CLICK builder rows + buttons, and the DAG painter)
# the inline unit tests never execute.
egui_kittest = { version = "0.36", features = ["snapshot"] }
# The shared robot-UI harness with its live WATCH backend: `tests/robot.rs`
# drives the builder headless and fills the matrix; `examples/brokkr_watch.rs`
# replays the SAME scenario in a REAL eframe window (feature `watch` pulls
# eframe/winit/glow). Path dep on the sibling nornir checkout — the same edge
# facett-graphnav already uses, so no source clash.
nornir-robotui = { version = "0.4.0" }
# The watch example uses anyhow::Result for main + serde_json for scenario asserts.
anyhow = "1"

[features]
wgpu = ["facett-flow/wgpu"]
default = []
# L4: functional-status emitter passthrough (see facett-core). No-op in release.
testmatrix = ["facett-core/testmatrix"]
facett = []

[[example]]
name = "brokkr_watch"
path = "examples/brokkr_watch.rs"