Source: https://guthlabs.ai/docs/instruments/composite-section-builder/implementation/

instrument implementation / implementation-contract

# Composite Section Builder implementation

A source-bound implementation contract for Composite Section Builder; deployment and executable qualification remain separate.

Status: **VERIFIED_WITH_ERRATA**Lifecycle: **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-with-binding-errata

**Evidence ID**: t4-022

**Effect**: Computation or source lookup only

## Input and validation requirements

An all-zero assembled section creates ΣA=0 and produces an undefined centroid and section modulus; the builder must reject it. Degenerate zero-dimension shapes also require an explicit acceptance or rejection policy. In addition, the single S output is convention-sensitive unless the instrument clearly defines the reference extreme fiber and the positive-y direction.

## Required corrections

````
[
  {
    "vector": 1,
    "field": "I_x_mm4 / S_mm3",
    "wrong": "24,643,809.5 / 196,030.3",
    "correct": "22,643,809.5 / 180,121.2",
    "cause": "final addition dropped 2,000,000 exactly — all four component terms in her working are correct"
  }
]
````

## Inspectable interface fixture

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

````
{
  "inputs": {
    "units": "mm",
    "axis": "horizontal centroidal x-axis",
    "shapes": [
      {
        "type": "rectangle",
        "width": 20,
        "height": 180,
        "y_bottom": 0,
        "area_sign": 1
      },
      {
        "type": "rectangle",
        "width": 100,
        "height": 20,
        "y_bottom": 180,
        "area_sign": 1
      }
    ]
  },
  "expected_outputs": {
    "A_mm2": 5600,
    "y_bar_mm": 125.7142857143,
    "I_x_mm4": 24643809.5238,
    "S_mm3": 196030.3030303
  },
  "working": "Web: A1=20×180=3600 mm²; y1=0+180/2=90 mm; Ic1=20×180³/12=9,720,000 mm⁴. Flange: A2=100×20=2000 mm²; y2=180+20/2=190 mm; Ic2=100×20³/12=66,666.6667 mm⁴. Total area: A=3600+2000=5600 mm². Centroid: y-bar=(3600×90+2000×190)/5600=(324,000+380,000)/5600=125.7142857 mm. Offsets: d1=90−125.7142857=−35.7142857 mm; d2=190−125.7142857=64.2857143 mm. Inertia: I=[9,720,000+3600×(35.7142857)²]+[66,666.6667+2000×(64.2857143)²]=[9,720,000+4,591,836.7347]+[66,666.6667+8,265,306.1224]=24,643,809.5238 mm⁴. Extreme distances: bottom c_bottom=125.7142857 mm; top c_top=200−125.7142857=74.2857143 mm; use c=max=125.7142857 mm. S=24,643,809.5238/125.7142857=196,030.3030 mm³."
}
````

## Other records

[01**Overview**](<https://guthlabs.ai/docs/instruments/composite-section-builder/>)[02**Mechanism**](<https://guthlabs.ai/docs/instruments/composite-section-builder/mechanism/>)[04**Qualification**](<https://guthlabs.ai/docs/instruments/composite-section-builder/qualification/>)

## 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`

- `tranche errata record`
