BC_INVERSION: Negative Correlation in cobra's Command Architecture
cobra (the Go CLI framework behind kubectl, Hugo, and dozens of major projects) produces r = −0.862 (p = 0.014). The declared hub is the least behaviorally active node. This is BC_INVERSION: fan-out with leaf clustering — and it is structurally distinct from BC_RADIAL.
The cobra result
- r(d1 ↔ d2) = −0.862
- p = 0.014
- Var(d2): well above the BC_RADIAL threshold of 0.714
cobra is the Go CLI framework used by kubectl, Hugo, gh, and dozens of other major projects. The IRDME analysis produced:
Pre-registration hash: c00ebfa4. The result was determined against a pre-registered hypothesis before the data was inspected.
A negative r means the files that are most important in the declared architecture (d1: directory structure and import graph) are among the least important in the behavioral layer (d2: co-change history). Hub identity has inverted, not collapsed.
The structural mechanism
cobra implements a command-object pattern. The root command is the declared architectural hub — it registers all subcommands and coordinates the execution dispatch. This is what d1 sees: one root, many children registered to it.
In d2 (co-change), the dominant hubs are the leaf command files — the concrete command implementations that different contributors extend, fix, and iterate on over time. The root command is stable; once established, it changes rarely. The leaf commands accumulate co-change signal proportionally to the number of contributors working on each subcommand's feature area.
The leaves also tend to co-change with each other — contributors working on create and delete subcommands often touch both, because they share patterns, error handling, and flag conventions. This leaf clustering further reinforces the leaf hubs in d2 while the root remains static.
Result: the nodes that share structure with each other (leaves, grouped by feature area) become the d2 hubs, displacing the d1 hub. This is BC_INVERSION: fan-out with leaf clustering.
Distinguishing BC_INVERSION from BC_RADIAL
- Both produce near-zero or negative r. The diagnostic is Var(d2):
- BC_RADIAL: Var(d2) < 0.714. The d2 vector is near-constant; r is undefined or near zero. No meaningful hub structure in d2.
- BC_INVERSION: Var(d2) ≥ 0.714, r < 0. The d2 vector has full structure — the variance is present — but the hub identity is inverted relative to d1.
BC_INVERSION is not a degenerate case. It requires a rich behavioral signal. The variance is there; the direction is wrong.
What it means for the structural law
The Functional Proximity Law predicts confirmation when the organizing principle of d1 is reflected in d2. It does not predict confirmation universally.
BC_INVERSION identifies the precise structural condition under which the reflection inverts: a declared hierarchy that concentrates at the top (root command, stable entry point) while behavioral development concentrates at the leaves (feature commands, iteratively extended by contributors). The functional similarity between d1 and d2 is low — not because the layers are measuring different things, but because their hub-ordering actively disagrees.
A negative r is not a measurement error. It is a precise structural finding: the most structurally declared hub is the least behaviorally active node in the system. In the case of cobra, the root is declared as the hub of everything, but in practice it is the quietest file in the repository.