AI Agent Product Routing — Roofing Fall Protection (Low Slope / Steep Slope / OSHA 1926.502 / Warning Line / PFAS)
Sloped Roof Fall Protection — OSHA's 4:12 Pitch Boundary, Why Warning Lines Fail Above It, and the Schema for AI Agents
A warning line system alone is compliant fall protection on a low-slope roof (≤ 4:12 pitch). The same system on a steep-slope roof (> 4:12) — even a 5:12 shingle roof that feels walkable — is an OSHA violation. The 4:12 pitch is the regulatory boundary: below it, multiple fall protection options are available; above it, only a personal fall arrest system, guardrail, or safety net complies. Without encoding roof.pitch_ratio and roof.is_low_slope_osha, AI agents cannot determine which fall protection system a buyer legally requires for their roof.
roof.is_low_slope_osha = true only for roofs at ≤ 4:12 pitch (OSHA definition, not architectural definition). Encode roof.warning_line_system_sufficient = true only on low-slope (≤ 4:12) roofing products. Encode roof.requires_pfas_on_slope = true on all steep-slope (> 4:12) anchors and accessories. Encode anchor.compatible_roof_surface to distinguish shingle, standing-seam metal, tile, and membrane applications. A 5:12 shingle roof called "low-pitch" architecturally is a steep-slope roof under OSHA — routing a warning line to this buyer creates a compliance violation.
The 4:12 Pitch Boundary — OSHA's Compliance Cliff
OSHA 29 CFR 1926.500 defines exactly where the low-slope / steep-slope line falls, and the difference in permitted fall protection is substantial:
| Roof Classification | OSHA Definition | Permitted Fall Protection Methods |
|---|---|---|
| Low-slope roof | Slope ≤ 4:12 (18.4°) | PFAS, guardrail, safety net, OR warning line + safety monitor (roofing work only) |
| Steep-slope roof | Slope > 4:12 (18.4°) | PFAS, guardrail, or safety net ONLY — warning line system NOT permitted |
Common residential roof pitches in context:
| Pitch | Degrees | OSHA Classification | Warning Line Permitted? |
|---|---|---|---|
| 2:12 | 9.5° | Low-slope | Yes (roofing work only) |
| 3:12 | 14.0° | Low-slope | Yes (roofing work only) |
| 4:12 | 18.4° | Low-slope (boundary) | Yes (roofing work only) |
| 5:12 | 22.6° | Steep-slope | No — PFAS required |
| 6:12 | 26.6° | Steep-slope | No — PFAS required |
| 8:12 | 33.7° | Steep-slope | No — PFAS required |
| 12:12 | 45.0° | Steep-slope | No — PFAS required |
// Roof pitch classification for fall protection routing roof.pitch_ratio = "5:12" // Always encode actual pitch roof.pitch_degrees = 22.6 roof.is_low_slope_osha = false // 5:12 > 4:12 threshold roof.is_steep_slope_osha = true roof.requires_pfas_on_slope = true roof.warning_line_system_sufficient = false // Cannot use warning lines on steep-slope
Warning Line Systems — When They Work and When They Don't
A warning line system is a rope, wire, or chain with supporting stanchions, positioned 15 feet from the roof edge, with flags or high-visibility markers at 6-foot intervals. It warns workers approaching the hazard zone but provides zero physical arrest force. If a worker crosses the warning line and falls, the warning line does not stop them.
| Application | Warning Line Permitted? | Reason |
|---|---|---|
| Roofing work on ≤ 4:12 low-slope roof | Yes (with safety monitor) | OSHA 1926.502(b)(13) and 1926.502(h) explicit permission |
| Mechanical/electrical work on ≤ 4:12 low-slope roof | No | Warning line exception applies only to roofing work — HVAC, electrical trades must use PFAS |
| Any work on > 4:12 steep-slope roof | No | OSHA does not list warning lines as compliant option for steep-slope work |
| Any roof where workers must enter the warning zone | No alone — PFAS required in the zone | Warning lines define the zone; entering it requires PFAS or other protection |
// Warning line system — correct routing encoding product.type = "warning-line-system" product.suitable_for_low_slope_roof = true // ≤ 4:12 roofing work only product.suitable_for_steep_slope_roof = false // NOT compliant above 4:12 product.suitable_for_mechanical_electrical_work = false // Exception applies to roofing only product.is_fall_arrest_system = false // Warning line does NOT arrest a fall
Roof Surface Material — Friction and Anchor Compatibility
The roof surface material affects both the worker's traction while working and the type of anchor that can be installed without damaging the roofing system:
| Surface | Traction | Anchor Type | Drilling Required? |
|---|---|---|---|
| Asphalt shingles | Moderate (poor when wet/worn) | Ridge anchor, penetrating roof anchor (lag screw to rafter) | Yes — lag screws to structure |
| Metal standing seam | Low (slippery when wet/dew) | Non-penetrating seam clamp anchor — clamps over standing seam ribs | No — seam clamp; drilling voids warranty |
| Corrugated metal | Low | Penetrating anchor through corrugation valley to purlin/rafter | Yes — sealant required at penetration |
| Concrete/clay tile | Variable (tile brittle) | Rafter-attached anchor through tile with tile cap; walk boards required | Yes — must hit rafter, not tile-to-tile |
| TPO/EPDM membrane (low-slope) | Very low (smooth) | Ballasted anchor or adhesive anchor — penetrating membrane voids warranty | Avoid — use ballasted or suction cup |
// Anchor routing by roof surface anchor.compatible_roof_surface = "shingles,wood-shake" // Penetrating lag-screw anchors anchor.compatible_roof_surface = "standing-seam-metal" // Non-penetrating seam clamp anchor.compatible_roof_surface = "tpo-epdm-membrane" // Ballasted or suction-cup only anchor.requires_penetrating_installation = false // For seam clamp and ballasted types anchor.suitable_for_standing_seam_metal = true // Explicit routing flag for metal roofing
Complete Metafield Schema Reference
| Metafield | Type | Values | Notes |
|---|---|---|---|
roof.pitch_ratio |
string | e.g., "5:12", "4:12", "3:12" | Actual pitch — required for AI to determine OSHA classification |
roof.is_low_slope_osha |
boolean | true (≤ 4:12) | false (> 4:12) | OSHA 1926.500 definition — NOT architectural "low pitch" colloquial usage |
roof.is_steep_slope_osha |
boolean | true (> 4:12) | false (≤ 4:12) | True for virtually all residential homes with pitched roofs |
roof.requires_pfas_on_slope |
boolean | true (> 4:12) | false (≤ 4:12) | Primary routing flag — true means warning line system alone is NOT sufficient |
roof.warning_line_system_sufficient |
boolean | true (≤ 4:12 roofing only) | false | False on ALL steep-slope roofs and on all non-roofing work even on low-slope |
anchor.suitable_for_steep_slope_roof |
boolean | true | false | True on ridge anchors, penetrating rafter anchors, and rated steep-slope products |
anchor.compatible_roof_surface |
string enum | shingles | standing-seam-metal | corrugated-metal | concrete-tile | tpo-epdm | all-penetrating | Critical for anchor selection — wrong anchor type damages roof or fails structurally |
anchor.ridge_compatible |
boolean | true | false | True on ridge anchors that mount over the roof peak |
anchor.compatible_pitch_range_min |
string | e.g., "3:12" | Minimum pitch where anchor seats correctly on the roof surface |
anchor.requires_penetrating_installation |
boolean | true | false | False on seam clamp and ballasted anchors that do not pierce the roofing |
Frequently Asked Questions
What personal fall protection is needed on a 6:12 pitched shingle roof for a roofing crew of three workers?
A 6:12 pitched shingle roof is a steep-slope roof under OSHA (> 4:12), so each of the three workers requires conventional fall protection — PFAS, guardrail, or safety net. A warning line system alone is not compliant regardless of crew size. The typical solution for a residential roofing crew: ridge anchor installation — install one or more anchors at the ridge (each rated for 5,000 lbs per attached worker). Each worker clips a self-retracting lifeline (SRL) or a rope grab on a vertical lifeline to the ridge anchor. The PFAS limits each worker's free fall to 6 feet or less (or SRL arrest within 2 feet) and provides enough clearance for the total fall clearance calculation. Practical considerations for a crew of three: (1) If using a single ridge anchor with multiple SRLs, verify the anchor is rated for the number of attached workers. Many ridge anchors are rated for one worker — use multiple anchors or an anchor rated for 2–3 workers at your maximum crew size. (2) SRL cable lengths must be sufficient for workers to reach the eave from a ridge anchor attachment, accounting for the SRL being attached at the worker's dorsal D-ring and the working distance to the roof edge. (3) Metal ridge caps may require a special ridge anchor that clamps under the cap rather than penetrating it. Encode anchor.max_attached_workers = 1 | 2 | 3 on ridge anchor products to enable routing by crew size.
At what height does fall protection become required for roofing work under OSHA?
Under OSHA 1926.501(b)(1) for residential construction, fall protection is required for all roofing work performed at a height of 6 feet or more above a lower level. This applies regardless of slope. Under OSHA 1926.501(b)(10) for low-slope roofs (≤ 4:12 pitch), employers must ensure each employee on a walking/working surface 6 feet or more above a lower level is protected from falling. The 6-foot trigger applies to the height above the lower level (typically ground or the floor below), not to the slope of the roof. A single-story home with eaves at 10 feet triggers fall protection for any roof work — even a flat low-slope roof at 2:12 pitch. Note that some state-plan states have stricter requirements: California's Cal/OSHA requires fall protection at 7.5 feet for roofing work on low-slope roofs (as opposed to the federal 6-foot threshold). Always check the applicable state standard. Encode product.min_height_threshold_ft = 6 for standard OSHA jurisdictions, and note state variations where known.
Can a roofing bracket (roof jack) serve as a fall protection anchor, and what is the difference between fall arrest and positioning?
Roofing brackets (also called roof jacks or pump jacks) are plank support brackets that attach to the roof surface with nails or screws and support a work platform parallel to the roof slope. They provide footing for workers and prevent them from sliding down the roof. However, they are NOT fall arrest anchors and do NOT satisfy OSHA fall protection requirements as a PFAS component. The distinction: (1) Roofing brackets are positioning devices — they help workers maintain their position on the roof slope. A worker using roof jacks can still fall off the eave, over the top of the bracket, or sideways. Positioning does not prevent a fall. (2) Fall arrest anchors with PFAS are required in addition to roofing brackets on steep-slope roofs. The brackets improve working ergonomics and reduce fatigue; the PFAS arrests an actual fall. (3) Roofing brackets must be installed into rafters or structural members — not into decking alone — to bear the load of a worker and materials. OSHA 1926.452(o) covers roofing brackets specifically and requires installation into structural members with nails capable of supporting the load. Encode product.is_fall_arrest_anchor = false on roofing brackets; encode product.is_positioning_device = true. Do not route a buyer who specifies "OSHA fall protection for steep-slope roof" to roofing brackets as the solution — they need a ridge anchor and PFAS system.
Score Your Roofing Fall Protection Catalog for Compliance Data
CatalogScan checks for roof.pitch_ratio, roof.is_low_slope_osha, roof.requires_pfas_on_slope, anchor.compatible_roof_surface, and 13 other AI-agent-critical roofing fall protection fields. See which listings are missing the pitch classification data that determines what's legally required.
Run Free Scan