> ## Documentation Index
> Fetch the complete documentation index at: https://offthepace.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# int_lap_residual_decomposed

> One row per lap.

<Note>Part of the [Residual](/transform/families/residual) family.</Note>

> For the conceptual foundation, read [Int Lap Residual Decomposed](/decomposition/seven-term-identity).

One row per lap. 7-term decomposition: splits lap time into fuel penalty, compound degradation, track rubber evolution, ambient weather, constructor car pace, dirty-air tax, and driver skill residual. Identity: pace\_delta\_s = fuel\_component\_s + compound\_component\_s + rubber\_component\_s + ambient\_component\_s + constructor\_component\_s + dirty\_air\_tax\_s + driver\_skill\_residual\_s. Driver skill residual = what remains after removing all physics/car/strategy factors.

## Lineage

```mermaid theme={null}
flowchart LR
  int_circuit_x_constructor_interaction --> int_lap_residual_decomposed
  int_compound_cliff_predicted --> int_lap_residual_decomposed
  int_constructor_structural_pace --> int_lap_residual_decomposed
  int_dirty_air_tax_component --> int_lap_residual_decomposed
  int_event_corrections --> int_lap_residual_decomposed
  int_field_pace_curve --> int_lap_residual_decomposed
  int_lap_fuel_state --> int_lap_residual_decomposed
  int_stint_geometry --> int_lap_residual_decomposed
  int_track_evolution --> int_lap_residual_decomposed
  stg_laps --> int_lap_residual_decomposed
  int_lap_residual_decomposed --> fct_cliff_prediction_features
  int_lap_residual_decomposed --> fct_driver_skill_features
  int_lap_residual_decomposed --> fct_ghost_car_pace
  int_lap_residual_decomposed --> fct_lap_residuals
  int_lap_residual_decomposed --> fct_stint_features
  int_lap_residual_decomposed --> int_constructor_deg_sensitivity
  int_lap_residual_decomposed --> int_lap_anomaly_flags
  int_lap_residual_decomposed --> int_lap_residual_stint_detrend
  int_lap_residual_decomposed --> int_qualifying_decomposed
  int_lap_residual_decomposed --> int_sector_residual_decomposed
  int_lap_residual_decomposed --> int_tyre_surface_vs_bulk_decoupling
  int_lap_residual_decomposed --> mart_degradation_history_envelope
  style int_lap_residual_decomposed fill:#e40404,stroke:#e40404,color:#fff
```

## Overview

| Property          | Value                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                         |
| ----------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Layer             | `intermediate`                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                |
| Family            | [Residual](/transform/families/residual)                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                      |
| Contract enforced | No                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                            |
| Upstream          | [`int_field_pace_curve`](./int_field_pace_curve), [`int_lap_fuel_state`](./int_lap_fuel_state), [`int_stint_geometry`](./int_stint_geometry), [`stg_laps`](../stg/stg_laps), [`int_compound_cliff_predicted`](./int_compound_cliff_predicted), [`int_track_evolution`](./int_track_evolution), [`int_constructor_structural_pace`](./int_constructor_structural_pace), [`int_circuit_x_constructor_interaction`](./int_circuit_x_constructor_interaction), [`int_dirty_air_tax_component`](./int_dirty_air_tax_component), [`int_event_corrections`](./int_event_corrections) |

**12 tests** [guard](/transform/ci/overview) this model  -  7 generic, 5 singular.

## Columns

| Column                    | Type | Nullable | Tests                                                                                                          | Description                                                                                                                                                                                                                                                                                                                                                                                                                                                                                       |
| ------------------------- | ---- | -------- | -------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `lap_id`                  |      | Yes      | [`not_null`](/transform/ci/structural), [`unique`](/transform/ci/structural)                                   | Foreign key to stg\_laps                                                                                                                                                                                                                                                                                                                                                                                                                                                                          |
| `valid_lap_in_stint`      |      | Yes      |                                                                                                                | Passed through from int\_stint\_geometry. Ordinal among valid laps only within the stint; consumers should key position/length logic off this, not lap\_in\_stint.                                                                                                                                                                                                                                                                                                                                |
| `stint_length_valid`      |      | Yes      |                                                                                                                | Passed through from int\_stint\_geometry. Count of valid laps in the stint.                                                                                                                                                                                                                                                                                                                                                                                                                       |
| `constructor_component_s` |      | Yes      | [`not_null`](/transform/ci/structural)                                                                         | Constructor structural pace in seconds from int\_constructor\_structural\_pace. Positive = slower than field.                                                                                                                                                                                                                                                                                                                                                                                     |
| `dirty_air_tax_s`         |      | Yes      | [`not_null`](/transform/ci/structural), [`expect_column_values_to_be_between`](/transform/ci/range-and-domain) | Per-lap dirty-air slowdown cost from int\_dirty\_air\_tax\_component. Non-negative seconds. Zero when not in dirty air. Subtracted into driver\_skill\_residual\_s, so θ\_air sits inside the ML label: this column feeds DEGRADATION\_TARGET and CLIFF\_TARGET. 08q (2026-09-21) moved θ\_air from an unfitted 0.5 literal to the fitted +0.1310 s/lap, which changes this component on the \~23% of panel laps that are dirty-air laps and requires a target rebuild plus a model version bump. |
| `driver_skill_residual_s` |      | Yes      | [`not_null`](/transform/ci/structural)                                                                         | Residual after all 7 physics components. Cleaned of dirty-air signal vs pre-causal-decomposition. Positive = slower than field baseline after all adjustments.                                                                                                                                                                                                                                                                                                                                    |
| `total_explained_s`       |      | Yes      | [`not_null`](/transform/ci/structural)                                                                         | Sum of all 7 components (fuel + compound + rubber + ambient + constructor + dirty\_air\_tax)                                                                                                                                                                                                                                                                                                                                                                                                      |
