whitaker-common 0.2.6

Internal common utilities for Whitaker lints
Documentation
Feature: Decomposition adjacency construction
  The adjacency builder preserves valid similarity edges, keeps neighbour
  indices in bounds, and produces symmetric adjacency lists.

  Scenario: Valid edges produce symmetric neighbour lists
    Given a graph with 4 nodes
    And an edge from 0 to 1 with weight 5
    And an edge from 2 to 3 with weight 9
    When adjacency is built
    Then the adjacency is symmetric
    And all neighbour indices are in bounds

  Scenario: Edges not in canonical order (left < right) are rejected
    Given a graph with 3 nodes
    And an edge from 2 to 1 with weight 5
    When adjacency is built
    Then the build is rejected

  Scenario: Isolated nodes have empty neighbour lists
    Given a graph with 4 nodes
    And an edge from 0 to 2 with weight 7
    When adjacency is built
    Then node 1 has no neighbours
    And node 3 has no neighbours

  Scenario: Multiple neighbours appear in sorted order
    Given a graph with 4 nodes
    And an edge from 0 to 3 with weight 3
    And an edge from 0 to 1 with weight 5
    And an edge from 0 to 2 with weight 8
    When adjacency is built
    Then the neighbours of node 0 are sorted