1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# bb-ops — concrete components home for the bytesandbrains framework.
#
# Every concrete component the framework ships lives here. Library
# authors adding a new syscall / backend kernel / role implementation
# / protocol touch one file in `bb-ops/src/<category>/<component>/mod.rs`
# containing the `(domain, op_type)` constants, the DSL recording
# helper, the runtime invoke fn, the `inventory::submit!`
# self-registration, and sibling tests. The framework crates
# (bb-ir, bb-dsl, bb-compiler, bb-runtime) keep only abstractions
# and remain component-agnostic.
#
# Depends on: bb-ir (foundation), bb-dsl (Module + Graph + Output
# + Contract traits), bb-runtime (Engine + RuntimeResourceRef +
# OpRegistration framework), bb-derive (proc-macros for derived
# components).
[]
= "bb-ops"
= "Canonical concrete components for the bytesandbrains framework — syscalls, wire transport, backends, protocols, role implementations."
= true
= true
= true
= true
= true
= true
= true
= true
= true
[]
# docs.rs builds with all features enabled so feature-gated symbols
# (cpu-backend, test-components) render in the published doc set.
[]
= true
= ["--cfg", "docsrs"]
[]
= ["cpu-backend"]
# Pure-Rust reference CPU backend at `bb_ops::backends::cpu`.
= ["dep:ndarray"]
# Test-only components (KademliaHand).
[]
= { = "../bb-ir", = "0.3.2" }
= { = "../bb-dsl", = "0.3.2" }
= { = "../bb-runtime", = "0.3.2", = false }
= { = "../bb-derive", = "0.3.2" }
= { = true }
= { = true }
= { = true }
= { = true }
= "0.3"
# ndarray backs the reference `CpuBackend` kernels + graph walker;
# gated behind the `cpu-backend` feature so consumers wiring a
# different backend (cuda, metal, etc.) don't pull it in
# transitively.
= { = true, = true }