Dependencies and Adjacencies¶
bijux-cli depends on libraries for parsing, serialization, schema generation,
error handling, and semver compatibility logic. It also has adjacency contracts
with other workspace handbooks that should remain explicit.
Visual Summary¶
flowchart TD
cli["bijux-cli"] --> clap["clap parser model"]
cli --> serde["serde and serde_json"]
cli --> schemars["JSON schema generation"]
cli --> semver["plugin compatibility checks"]
cli --> anyhow["handler-level error plumbing"]
cli --> thiserror["typed route and parse errors"]
Runtime Dependencies with Contract Pressure¶
clap: defines command grammar and help/usage behaviorserdeandserde_json: define payload and contract serialization behaviorschemars: emits schema assets for envelope and manifest contractssemver: validates plugin compatibility ranges against host versionsthiserrorandanyhow: shape internal/runtime-facing errors
Adjacent Package Boundaries¶
- DAG runtime behavior and proofs stay in
bijux-dag - repository-level governance and docs topology stay in
bijux-core - maintainer automation and gate orchestration stay in
bijux-dev
Code Anchors¶
crates/bijux-cli/Cargo.tomlcrates/bijux-cli/src/contracts/schema.rscrates/bijux-cli/src/contracts/plugin.rscrates/bijux-cli/src/interface/cli/dispatch/help.rs
Dependency Review Rule¶
Any dependency update that changes parser grammar, payload encoding, schema shape, or semver comparison behavior requires targeted tests and handbook updates in the same pull request.