Guth
NewsDocs
Page actions
View as Markdown ↗
Explore MCP tools ↗

instrument implementation / implementation-contract

Subnet Splitter / VLSM Planner implementation

A source-bound implementation contract for Subnet Splitter / VLSM Planner; deployment and executable qualification remain separate.

Status: VERIFIED_CLEANLifecycle: implementation-contract

Binding contract

This record describes what an executable surface must bind and validate. It does not claim that a public calculator, package, or production route is deployed.

Record owner
Guth Instruments
Lifecycle
verified-clean
Evidence ID
t4-004
Effect
Computation or source lookup only

Input and validation requirements

The specification gives no stated validation behavior for negative host counts, so an input of -2 reaches log2(0), an undefined result. It also leaves host-count and /31 network conventions ambiguous.

Required corrections

No binding erratum is attached to this unique-name record. Implementers must still preserve the declared units, domain, and failure behavior.

Inspectable interface fixture

The sample below is evidence for interface and validation tests, not a production implementation.

{
  "inputs": {
    "base_network": "192.168.10.0/24",
    "required_hosts": [
      100,
      50,
      10
    ]
  },
  "expected_outputs": {
    "allocations": [
      {
        "required_hosts": 100,
        "cidr": "192.168.10.0/25",
        "mask": "255.255.255.128",
        "address_range": "192.168.10.0-192.168.10.127",
        "usable_range": "192.168.10.1-192.168.10.126"
      },
      {
        "required_hosts": 50,
        "cidr": "192.168.10.128/26",
        "mask": "255.255.255.192",
        "address_range": "192.168.10.128-192.168.10.191",
        "usable_range": "192.168.10.129-192.168.10.190"
      },
      {
        "required_hosts": 10,
        "cidr": "192.168.10.192/28",
        "mask": "255.255.255.240",
        "address_range": "192.168.10.192-192.168.10.207",
        "usable_range": "192.168.10.193-192.168.10.206"
      }
    ]
  },
  "working": "100+2=102; ceil(log2(102))=7; block=2^7=128 addresses; prefix=32-7=/25. 50+2=52; ceil(log2(52))=6; block=2^6=64; prefix=/26. 10+2=12; ceil(log2(12))=4; block=2^4=16; prefix=/28. Starting at .0, the /25 consumes .0-.127; the next aligned /26 starts at .128 and consumes .128-.191; the next aligned /28 starts at .192 and consumes .192-.207."
}

Other records

Sources and evidence

These pointers bind the page to evidence. They do not grant authority or collapse verification into deployment.

  • VERIFIED_LEDGER.json
  • evidence-tranche4/tranche4-results.json