Source: https://guthlabs.ai/docs/instruments/fence-materials-calculator/

instrument / verified-clean

# Fence Materials Calculator

The current ledger marks this instrument verified clean within the source-bound verification corpus.

Status: **VERIFIED_CLEAN**Lifecycle: **verified-clean**

## Inspectable records

[01**Overview**Purpose and lifecycle](<https://guthlabs.ai/docs/instruments/fence-materials-calculator/>)[02**Mechanism**Method and assumptions](<https://guthlabs.ai/docs/instruments/fence-materials-calculator/mechanism/>)[03**Implementation**Binding and validation](<https://guthlabs.ai/docs/instruments/fence-materials-calculator/implementation/>)[04**Qualification**Evidence and errata](<https://guthlabs.ai/docs/instruments/fence-materials-calculator/qualification/>)

## Ledger state

The current ledger marks this instrument verified clean within the source-bound verification corpus.

**Area**: Everyday & Life

**Tranche**: tranche-4

**Evidence ID**: t4-067

**Ledger rows**: 1

No ledger note is attached.

## Review findings

The instrument is not ready for an honest production label. It currently supports only basic post and picket estimates under explicit straight-run and unit-consistency assumptions; rail, concrete, panel, and gate-aware outputs are unspecified.

### Formula and scope findings

- The post formula is valid only for a straight, continuous fence run with posts at both ends and post_spacing treated as the maximum allowable spacing: ceil(total_length/post_spacing)+1.

- The picket formula is valid only when picket_width_spacing means the center-to-center coverage of one picket plus its gap. It does not account for endpoint conventions, gate openings, corners, or partial-width finishing pieces.

- gate_count is listed as an input but is unused. Gate openings should normally reduce panel/picket coverage, while gate structures may require additional posts.

- The specification promises rail/concrete estimates but provides no formulas for rail count, concrete volume, or concrete bag count.

- The specification claims panels/pickets, but no panel-count formula is provided and panel dimensions are not defined.

### Unit assumptions

- total_length and post_spacing must use the same length unit before division.

- total_length and picket_width_spacing must use the same length unit before division; mixed units require explicit conversion.

- post_spacing is assumed to be a maximum spacing, not a nominal target that may be exceeded.

- picket_width_spacing is assumed to be picket width plus gap, measured as coverage per picket.

- The post formula assumes one post at each end and no separate treatment for gates, corners, or transitions.

## Boundary hardening

**BREAK_CLAIMED** · SELF_FLAGGED

Zero post spacing or zero picket width-plus-gap produces undefined divisions, so the calculator must reject those inputs. The specification also lacks a formula for rail/concrete estimates and does not define how gate_count affects material counts.

## Errata and corrections

No applied erratum is attached to this unique-name record.

## Inspectable example

4 review vectors are recorded. One source-bound sample is shown below.

````
{
  "inputs": {
    "total_length": 120,
    "post_spacing": 8,
    "picket_width_spacing": 0.5,
    "length_unit": "ft",
    "gate_count": 1
  },
  "expected_outputs": {
    "post_count": 16,
    "picket_count": 240
  },
  "working": "Posts: 120 / 8 = 15; ceil(15) = 15; 15 + 1 = 16. Pickets: 120 / 0.5 = 240; ceil(240) = 240. gate_count is not used by the supplied formulas."
}
````

## Related workflows

[Home Renovation Estimatoryard](<https://guthlabs.ai/docs/instrument-workflows/home-reno/>)

## Sources and evidence

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

- `VERIFIED_LEDGER.json · VERIFIED_CLEAN`

- `evidence-tranche4/tranche4-results.json`

- `BOUNDARY_HAZARD_CATALOG.json`
