One row per stint. Evaluates pit strategy: what was the optimal pit lap vs actual? The argmin of int_pit_strategy_cost_curve’s Total_Cost(L) over every candidate lap in the horizon, replacing the “first lap where expected wear exceeds 0.5 s” threshold that stood here until 2026-08-23 and had no pit-loss term in it. That threshold returned ‘optimal’ on 8 stints of 7,129 and ‘unknown’ on 2,231; the argmin returns 715 and 266. Two horizons are reported. The verdict follows the two-stint window (this stint’s first lap through the next stint’s last), the only framing well posed for the 61% of stints in a 2-stop or longer race; the race-remainder optimum is carried alongside as a diagnostic. opportunity_cost_s is now Total_Cost(actual) - Total_Cost(optimal), so pitting early carries a cost too, which the overrun-only definition could not express. Pit-loss is per circuit from int_pit_loss_circuit’s empirical, EB-shrunk estimate (19.3–29.6 s over the 147 races that resolve one), falling back to the circuit_reference seed and then 21.0 s; pit_loss_source records which was used.
Optimal pit lap number (absolute race lap) - the lap the car enters the pit lane, i.e. one after the last lap run on the set, matching stg_pits.pit_in_lap_number. NULL when the compound has no fitted curve to minimise over.
optimal_pit_lap_in_stint
Yes
Optimal laps to run on the set before boxing, counted in VALID laps. Not a chronological lap_in_stint: SC and pit laps do not age a tyre the way a racing lap does, and the cost curve is indexed on tyre age.
actual_pit_lap
Yes
The stop that ended this stint: stg_pits.pit_in_lap_number, the latest pit-in inside the stint’s full chronological span (its first lap of any validity through end_lap_number). Non-NULL on every stint that ended in a stop, whatever flag was out (assert_pit_ended_stints_have_stop, T23). A stint that did not end in a stop (the driver’s last stint, or a retirement) is NULL unless a pit-in falls inside its span: a retirement into the pit lane, or, on 2 stints, a stop bronze did not split the stint at (2018_15 MAG lap 48; 2022_8 LEC lap 20). Until WI-13 (F31) the stop was looked for only up to the stint’s last VALID lap + 1, which missed it after a run of SC/VSC/red-flag or other invalid laps: 418 pit-ended stints (107 of 116 red-flag-ended, 194 of 653 SC-ended) came out NULL and were graded as if they never stopped. It is a window, not equality with end_lap_number: on 13 stints bronze puts the stint boundary a lap or two after the in-lap (2018_2 VET: pit-in lap 17, stint’s last lap 18).
The lap the stint ended on, of any validity (int_stint_end_regime.end_lap_number): the in-lap, or up to two laps after it, for a stint that ended in a stop; the chequered flag or the retirement lap for one that did not. Not the stint’s last valid lap. The app’s pit-strategy Gantt orders stints on it and ends a bar with no stop here, where it used to fall back to the race’s last valid lap and drew those bars to the flag (WI-13).
overrun_laps
Yes
Actual laps run on the set minus optimal, in valid laps. Negative = pitted early. Compared as offsets rather than lap numbers so an invalid lap before the stop cannot skew it. NULL when either side is NULL. Median -3 valid laps per stint across 2018-2025 (n = 4,905 stints with both an actual stop and a model optimum; per-season medians -1 to -4): teams stop earlier than a degradation-only optimum, which is what track position buys.
Total_Cost(actual) - Total_Cost(optimal), in seconds. Non-negative by construction: the optimum is a minimum over the same curve. Zero for a stint that never stopped, which had no pit decision to grade. Median 5.5 s, p95 83 s.
How sharply identified the optimum is: the share of candidate laps whose total cost is more than a second worse than it. 1.0 = one lap stands out; near 0 = the curve is flat and the exact lap barely matters. 0.0 where no curve exists. Replaces the 0.0/0.1/0.8 sentinel ladder, which encoded whether cliff onset was NULL rather than anything about the estimate.
Pit-lane loss used for this stint’s undercut-threat scan, in seconds. Empirical where int_pit_loss_circuit resolves the venue, else the circuit_reference seed, else 21.0.
Which horizon the verdict’s argmin used - two_stint (4,014 stints) or the race_remainder fallback for a stint with no successor (2,642). NULL where no fitted compound curve exists to minimise over (473).
horizon_laps
Yes
Length of that horizon in valid laps.
optimal_pit_lap_race_in_stint
Yes
The race-remainder optimum, in valid laps on the set. Diagnostic: asks the harsher unconditional question “if they had stopped only once more all race, when?” rather than grading the stop inside the strategy the team actually ran.
optimal_pit_lap_race
Yes
Absolute race lap for optimal_pit_lap_race_in_stint.
The same actual-minus-optimal difference measured on the race-remainder horizon. Systematically larger than opportunity_cost_s for a 2-stopper, because a one-stop counterfactual charges them for a stop they were never going to skip.
⌘I
{"docsConfig":{"theme":"luma","$schema":"https://mintlify.com/docs.json","name":"Off The Pace • docs","colors":{"primary":"#e40404"},"logo":{"light":"https://media.brand.dev/ac2251a0-45a7-490a-8cdc-9a56a531fba3.svg","dark":"https://media.brand.dev/ac2251a0-45a7-490a-8cdc-9a56a531fba3.svg"},"appearance":{"default":"dark"},"icons":{"library":"lucide"},"styling":{"latex":true},"navigation":{"global":{"anchors":[{"anchor":"Launch App","icon":"gauge","href":"https://off-the-pace.web.app"},{"anchor":"Docs","icon":"book","href":"https://offthepace.mintlify.app/"},{"anchor":"GitHub Repository","icon":{"name":"github","library":"fontawesome"},"href":"https://github.com/JustinClarke/off-the-pace"}]},"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"offthepace","hasAudioNarration":false,"actualSubdomain":"offthepace","customDomains":[],"gitSource":{"type":"github","owner":"justinclarke","repo":"off-the-pace","deployBranch":"main","contentDirectory":"docs","isPrivate":true,"mountPath":"","label":""},"entitlements":{"AI_CHAT":{"status":"DISABLED"}},"buildId":"6af0d1536412adac01294931","clientVersion":"0.0.4088","searchFilterCounts":[{"language":"default","tag":"Transform","count":140},{"language":"default","tag":"Model Reference","count":95},{"language":"default","tag":"Intermediate","count":53},{"language":"default","tag":"App","count":44},{"language":"default","tag":"Macros","count":26},{"language":"default","tag":"Data","count":20},{"language":"default","tag":"Start Here","count":17},{"language":"default","tag":"Marts","count":17},{"language":"default","tag":"Staging","count":17},{"language":"default","tag":"Machine Learning","count":15}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableContextualStarterQuestions":false,"enableAskAiSearchBar":true,"deflection":{"enabled":true,"email":"justinsavioclarke@outlook.com","showHelpButton":true}},"basePath":"","hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"rbac-expansion","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"full-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-sso-scim","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-signup","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-dual-write","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-enabled","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"approve-review-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-metadata","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"sso-setup-deadline-banner","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"turbopuffer-serve","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"live-agents","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"comment-mode","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"googleFontsInlined":false},"customCss":[{"filePath":"custom.css","content":"@media (max-width: 639px){.mobile-grid>div{grid-template-columns:repeat(2, minmax(0, 1fr))!important;gap:0.5rem!important}.mobile-grid>div>a,.mobile-grid>div>div{padding:0.75rem!important;min-height:auto!important}.mobile-grid>div h2,.mobile-grid>div h3,.mobile-grid>div .font-semibold{font-size:0.875rem!important;line-height:1.25rem!important}.mobile-grid>div p{font-size:0.75rem!important;line-height:1rem!important;margin-top:0.25rem!important}.mobile-grid>div svg{width:1.25rem!important;height:1.25rem!important;margin-bottom:0.5rem!important}}"}],"page":{"pagePath":"reference/models/int/int_pit_strategy_value","slug":"/reference/models/int/int_pit_strategy_value","pageMetadata":{"title":"int_pit_strategy_value","sidebarTitle":"int_pit_strategy_value","description":"One row per stint.","href":"/reference/models/int/int_pit_strategy_value"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"One row per stint.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx,jsxs:_jsxs}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){const _components={a:`a`,code:`code`,p:`p`,strong:`strong`,tbody:`tbody`,td:`td`,th:`th`,thead:`thead`,tr:`tr`,..._provideComponents(),...props.components},{Heading,Mermaid,Note,Table}=_components;if(!Heading)_missingMdxReference(`Heading`,true);if(!Mermaid)_missingMdxReference(`Mermaid`,true);if(!Note)_missingMdxReference(`Note`,true);if(!Table)_missingMdxReference(`Table`,true);return _jsxs(_Fragment,{children:[_jsxs(Note,{children:[`Part of the `,_jsx(_components.a,{href:`/transform/families/strategy`,children:`Strategy`}),` family.`]}),`\n`,_jsx(_components.p,{children:`One row per stint. Evaluates pit strategy: what was the optimal pit lap vs actual? The argmin of int_pit_strategy_cost_curve’s Total_Cost(L) over every candidate lap in the horizon, replacing the “first lap where expected wear exceeds 0.5 s” threshold that stood here until 2026-08-23 and had no pit-loss term in it. That threshold returned ‘optimal’ on 8 stints of 7,129 and ‘unknown’ on 2,231; the argmin returns 715 and 266. Two horizons are reported. The verdict follows the two-stint window (this stint’s first lap through the next stint’s last), the only framing well posed for the 61% of stints in a 2-stop or longer race; the race-remainder optimum is carried alongside as a diagnostic. opportunity_cost_s is now Total_Cost(actual) - Total_Cost(optimal), so pitting early carries a cost too, which the overrun-only definition could not express. Pit-loss is per circuit from int_pit_loss_circuit’s empirical, EB-shrunk estimate (19.3–29.6 s over the 147 races that resolve one), falling back to the circuit_reference seed and then 21.0 s; pit_loss_source records which was used.`}),`\n`,_jsx(Heading,{level:`2`,id:`lineage`,children:`Lineage`}),`\n`,_jsx(Mermaid,{chart:`flowchart LR\n int_compound_cliff_predicted --> int_pit_strategy_value\n int_lap_air_state --> int_pit_strategy_value\n int_pit_loss_circuit --> int_pit_strategy_value\n int_pit_strategy_cost_curve --> int_pit_strategy_value\n int_stint_end_regime --> int_pit_strategy_value\n int_stint_geometry --> int_pit_strategy_value\n stg_lap_tyre_qa --> int_pit_strategy_value\n stg_pits --> int_pit_strategy_value\n int_pit_strategy_value --> fct_driver_isolation_stint\n int_pit_strategy_value --> fct_stint_features\n style int_pit_strategy_value fill:#e40404,stroke:#e40404,color:#fff`}),`\n`,_jsx(Heading,{level:`2`,id:`overview`,children:`Overview`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Property`}),_jsx(_components.th,{children:`Value`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Layer`}),_jsx(_components.td,{children:_jsx(_components.code,{children:`intermediate`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Family`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/families/strategy`,children:`Strategy`})})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Contract enforced`}),_jsx(_components.td,{children:`No`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Tags`}),_jsxs(_components.td,{children:[_jsx(_components.code,{children:`simulation`}),`, `,_jsx(_components.code,{children:`strategy`})]})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:`Upstream`}),_jsxs(_components.td,{children:[_jsx(_components.a,{href:`/reference/models/int/int_stint_geometry`,children:_jsx(_components.code,{children:`int_stint_geometry`})}),`, `,_jsx(_components.a,{href:`/reference/models/int/int_compound_cliff_predicted`,children:_jsx(_components.code,{children:`int_compound_cliff_predicted`})}),`, `,_jsx(_components.a,{href:`/reference/models/int/int_pit_loss_circuit`,children:_jsx(_components.code,{children:`int_pit_loss_circuit`})}),`, `,_jsx(_components.a,{href:`/reference/models/stg/stg_pits`,children:_jsx(_components.code,{children:`stg_pits`})}),`, `,_jsx(_components.a,{href:`/reference/models/int/int_lap_air_state`,children:_jsx(_components.code,{children:`int_lap_air_state`})}),`, `,_jsx(_components.a,{href:`/reference/models/int/int_pit_strategy_cost_curve`,children:_jsx(_components.code,{children:`int_pit_strategy_cost_curve`})}),`, `,_jsx(_components.a,{href:`/reference/models/stg/stg_lap_tyre_qa`,children:_jsx(_components.code,{children:`stg_lap_tyre_qa`})}),`, `,_jsx(_components.a,{href:`/reference/models/int/int_stint_end_regime`,children:_jsx(_components.code,{children:`int_stint_end_regime`})})]})]})]})]}),`\n`,_jsxs(_components.p,{children:[_jsx(_components.strong,{children:`15 tests`}),` `,_jsx(_components.a,{href:`/transform/ci/overview`,children:`guard`}),` this model - 13 generic, 2 singular.`]}),`\n`,_jsx(Heading,{level:`2`,id:`columns`,children:`Columns`}),`\n`,_jsxs(Table,{children:[_jsx(_components.thead,{children:_jsxs(_components.tr,{children:[_jsx(_components.th,{children:`Column`}),_jsx(_components.th,{children:`Type`}),_jsx(_components.th,{children:`Nullable`}),_jsx(_components.th,{children:`Tests`}),_jsx(_components.th,{children:`Description`})]})}),_jsxs(_components.tbody,{children:[_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`stint_id`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsxs(_components.td,{children:[_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`not_null`})}),`, `,_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`unique`})})]}),_jsx(_components.td,{children:`PK, FK to int_stint_geometry`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`optimal_pit_lap`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Optimal pit lap number (absolute race lap) - the lap the car enters the pit lane, i.e. one after the last lap run on the set, matching stg_pits.pit_in_lap_number. NULL when the compound has no fitted curve to minimise over.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`optimal_pit_lap_in_stint`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Optimal laps to run on the set before boxing, counted in VALID laps. Not a chronological lap_in_stint: SC and pit laps do not age a tyre the way a racing lap does, and the cost curve is indexed on tyre age.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`actual_pit_lap`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`The stop that ended this stint: stg_pits.pit_in_lap_number, the latest pit-in inside the stint’s full chronological span (its first lap of any validity through end_lap_number). Non-NULL on every stint that ended in a stop, whatever flag was out (assert_pit_ended_stints_have_stop, T23). A stint that did not end in a stop (the driver’s last stint, or a retirement) is NULL unless a pit-in falls inside its span: a retirement into the pit lane, or, on 2 stints, a stop bronze did not split the stint at (2018_15 MAG lap 48; 2022_8 LEC lap 20). Until WI-13 (F31) the stop was looked for only up to the stint’s last VALID lap + 1, which missed it after a run of SC/VSC/red-flag or other invalid laps: 418 pit-ended stints (107 of 116 red-flag-ended, 194 of 653 SC-ended) came out NULL and were graded as if they never stopped. It is a window, not equality with end_lap_number: on 13 stints bronze puts the stint boundary a lap or two after the in-lap (2018_2 VET: pit-in lap 17, stint’s last lap 18).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`end_lap_number`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`not_null`})})}),_jsx(_components.td,{children:`The lap the stint ended on, of any validity (int_stint_end_regime.end_lap_number): the in-lap, or up to two laps after it, for a stint that ended in a stop; the chequered flag or the retirement lap for one that did not. Not the stint’s last valid lap. The app’s pit-strategy Gantt orders stints on it and ends a bar with no stop here, where it used to fall back to the race’s last valid lap and drew those bars to the flag (WI-13).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`overrun_laps`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Actual laps run on the set minus optimal, in valid laps. Negative = pitted early. Compared as offsets rather than lap numbers so an invalid lap before the stop cannot skew it. NULL when either side is NULL. Median -3 valid laps per stint across 2018-2025 (n = 4,905 stints with both an actual stop and a model optimum; per-season medians -1 to -4): teams stop earlier than a degradation-only optimum, which is what track position buys.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`opportunity_cost_s`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`expect_column_values_to_be_between`})})}),_jsx(_components.td,{children:`Total_Cost(actual) - Total_Cost(optimal), in seconds. Non-negative by construction: the optimum is a minimum over the same curve. Zero for a stint that never stopped, which had no pit decision to grade. Median 5.5 s, p95 83 s.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`strategy_verdict`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`accepted_values`})})}),_jsx(_components.td,{children:`Strategy classification.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`optimal_pit_lap_confidence`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`expect_column_values_to_be_between`})})}),_jsx(_components.td,{children:`How sharply identified the optimum is: the share of candidate laps whose total cost is more than a second worse than it. 1.0 = one lap stands out; near 0 = the curve is flat and the exact lap barely matters. 0.0 where no curve exists. Replaces the 0.0/0.1/0.8 sentinel ladder, which encoded whether cliff onset was NULL rather than anything about the estimate.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pit_lane_loss_s`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsxs(_components.td,{children:[_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`not_null`})}),`, `,_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`expect_column_values_to_be_between`})})]}),_jsx(_components.td,{children:`Pit-lane loss used for this stint’s undercut-threat scan, in seconds. Empirical where int_pit_loss_circuit resolves the venue, else the circuit_reference seed, else 21.0.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pit_loss_source`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsxs(_components.td,{children:[_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`not_null`})}),`, `,_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`accepted_values`})})]}),_jsx(_components.td,{children:`Which pit-loss estimate this row used - empirical / seed / default.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`pit_loss_imputed_flag`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/structural`,children:_jsx(_components.code,{children:`not_null`})})}),_jsx(_components.td,{children:`TRUE when nothing was measured on either side - no empirical stops resolved and the seed row was itself a guess.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`horizon_source`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`accepted_values`})})}),_jsx(_components.td,{children:`Which horizon the verdict’s argmin used - two_stint (4,014 stints) or the race_remainder fallback for a stint with no successor (2,642). NULL where no fitted compound curve exists to minimise over (473).`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`horizon_laps`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Length of that horizon in valid laps.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`optimal_pit_lap_race_in_stint`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`The race-remainder optimum, in valid laps on the set. Diagnostic: asks the harsher unconditional question “if they had stopped only once more all race, when?” rather than grading the stop inside the strategy the team actually ran.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`optimal_pit_lap_race`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Absolute race lap for optimal_pit_lap_race_in_stint.`})]}),_jsxs(_components.tr,{children:[_jsx(_components.td,{children:_jsx(_components.code,{children:`opportunity_cost_race_s`})}),_jsx(_components.td,{}),_jsx(_components.td,{children:`Yes`}),_jsx(_components.td,{children:_jsx(_components.a,{href:`/transform/ci/range-and-domain`,children:_jsx(_components.code,{children:`expect_column_values_to_be_between`})})}),_jsx(_components.td,{children:`The same actual-minus-optimal difference measured on the race-remainder horizon. Systematically larger than opportunity_cost_s for a 2-stopper, because a one-stop counterfactual charges them for a stop they were never going to skip.`})]})]})]})]})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent};function _missingMdxReference(id,component){throw new Error(`Expected `+(component?`component`:`object`)+\" `\"+id+\"` to be defined: you likely forgot to import, pass, or provide it.\")}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"title":"int_pit_strategy_value","sidebarTitle":"int_pit_strategy_value","description":"One row per stint.","href":"/reference/models/int/int_pit_strategy_value"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[{"title":"Lineage","slug":"lineage","depth":2,"children":[]},{"title":"Overview","slug":"overview","depth":2,"children":[]},{"title":"Columns","slug":"columns","depth":2,"children":[]}],"codeExamples":{}},"jsLinks":[],"subdomain":"offthepace","siteName":"Off The Pace • docs","title":"int_pit_strategy_value - Off The Pace • docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-11-08T19:45:31.259Z","originalFileLocation":"reference/models/int/int_pit_strategy_value.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"dark\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"One row per stint.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Off The Pace • docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/offthepace/_generated/favicon/apple-touch-icon.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/offthepace/_generated/favicon/favicon-32x32.png?v=3\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/offthepace/_generated/favicon/favicon-16x16.png?v=3\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"https://mintlify.s3.us-west-1.amazonaws.com/offthepace/_generated/favicon/favicon.ico?v=3\">\u003cmeta data-mint-head property=\"og:title\" content=\"int_pit_strategy_value - Off The Pace • docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"One row per stint.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Off The Pace • docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://offthepace.mintlify.site/_mintlify/api/og/v2?division=Intermediate\u0026amp;title=int_pit_strategy_value\u0026amp;description=One+row+per+stint.\u0026amp;theme=fd3b448b0951ec74ec361b01\u0026amp;signature=3d8d1a15fd0d784f35b063a0b6cc96c28e31135a97c100e4301b75d6a42a2979\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"int_pit_strategy_value - Off The Pace • docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"One row per stint.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://offthepace.mintlify.site/_mintlify/api/og/v2?division=Intermediate\u0026amp;title=int_pit_strategy_value\u0026amp;description=One+row+per+stint.\u0026amp;theme=fd3b448b0951ec74ec361b01\u0026amp;signature=3d8d1a15fd0d784f35b063a0b6cc96c28e31135a97c100e4301b75d6a42a2979\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"https://mintlify.s3.us-west-1.amazonaws.com/offthepace/_generated/favicon/browserconfig.xml?v=3\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Off The Pace • docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#e40404\">\u003clink data-mint-head rel=\"canonical\" href=\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/reference/models/int/int_pit_strategy_value.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://offthepace.mintlify.app/#organization\",\"name\":\"Off The Pace • docs\",\"url\":\"https://offthepace.mintlify.app\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://media.brand.dev/ac2251a0-45a7-490a-8cdc-9a56a531fba3.svg\"}},{\"@type\":\"WebSite\",\"@id\":\"https://offthepace.mintlify.app#website\",\"name\":\"Off The Pace • docs\",\"url\":\"https://offthepace.mintlify.app\",\"publisher\":{\"@id\":\"https://offthepace.mintlify.app/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value#webpage\",\"url\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value\",\"name\":\"int_pit_strategy_value\",\"description\":\"One row per stint.\",\"dateModified\":\"2026-11-08T19:45:31.259Z\",\"isPartOf\":{\"@id\":\"https://offthepace.mintlify.app#website\"},\"breadcrumb\":{\"@id\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Model Reference\",\"item\":\"https://offthepace.mintlify.app/reference/models/index\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Intermediate\",\"item\":\"https://offthepace.mintlify.app/reference/models/int/int_cell_power_law_fit\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"int_pit_strategy_value\",\"item\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value\"}]},{\"@type\":[\"Article\",\"TechArticle\"],\"@id\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value#article\",\"headline\":\"int_pit_strategy_value\",\"name\":\"int_pit_strategy_value\",\"description\":\"One row per stint.\",\"url\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value\",\"mainEntityOfPage\":{\"@id\":\"https://offthepace.mintlify.app/reference/models/int/int_pit_strategy_value#webpage\"},\"dateModified\":\"2026-11-08T19:45:31.259Z\",\"publisher\":{\"@id\":\"https://offthepace.mintlify.app/#organization\"},\"isPartOf\":{\"@id\":\"https://offthepace.mintlify.app#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Off The Pace • docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Off The Pace • docs","nav":{"global":{"anchors":[{"anchor":"Launch App","icon":"gauge","href":"https://off-the-pace.web.app"},{"anchor":"Docs","icon":"book","href":"https://offthepace.mintlify.app/"},{"anchor":"GitHub Repository","icon":{"name":"github","library":"fontawesome"},"href":"https://github.com/JustinClarke/off-the-pace"}]},"tabs":[{"tab":"Start Here","icon":"compass","pages":[{"title":"Start Here","href":""}]},{"tab":"Data","icon":"table","pages":[{"title":"Data","href":"/data/overview"}]},{"tab":"Transform","icon":"layers","groups":[{"group":"Concepts","icon":"calculator","pages":[{"title":"Transform layer overview: the model DAG and the eight families","sidebarTitle":"Transform Layer","href":"/transform/overview"},{"title":"The additive lap decomposition identity explained","sidebarTitle":"Additive Identity","href":"/decomposition/additive-identity"},{"title":"How lap time components are identified and estimated","sidebarTitle":"Methodology","href":"/decomposition/methodology"},{"title":"Understanding and predicting tyre cliff onset with ML","sidebarTitle":"Tyre Cliff","href":"/decomposition/tyre-cliff"},{"title":"Driver isolation: pure pace and relative pace","sidebarTitle":"Driver isolation","href":"/decomposition/driver-isolation"},{"title":"Known limitations of the lap decomposition pipeline","sidebarTitle":"Limitations","href":"/decomposition/limitations"}]},{"group":"How the Layer Works","icon":"workflow","pages":[{"title":"Staging family: Bronze Parquet to typed views","sidebarTitle":"Staging","href":"/transform/families/staging"},{"title":"Reference family: seed-backed and laps-derived dimensions","sidebarTitle":"Reference","href":"/transform/families/reference"},{"title":"Physics family: deterministic and EMA lap state","sidebarTitle":"Physics","href":"/transform/families/physics"},{"title":"Pace Baselines family: the curves every lap is measured against","sidebarTitle":"Pace Baselines","href":"/transform/families/pace-baselines"},{"title":"Skill family: de-biasing the car to leave the driver","sidebarTitle":"Skill","href":"/transform/families/skill"},{"title":"Residual Decomposition family: the additive identity and what it leaves over","sidebarTitle":"Residual","href":"/transform/families/residual"},{"title":"Strategy family: pit-stop and safety-car decision support","sidebarTitle":"Strategy","href":"/transform/families/strategy"},{"title":"Feature Marts family: the gold layer","sidebarTitle":"Marts","href":"/transform/families/marts"}]},{"group":"Model Reference","icon":"database","pages":[{"title":"dbt Models","href":"/reference/models/index"},{"group":"Staging","expanded":false,"pages":[{"title":"stg_circuit_info","sidebarTitle":"stg_circuit_info","href":"/reference/models/stg/stg_circuit_info"},{"title":"stg_events","sidebarTitle":"stg_events","href":"/reference/models/stg/stg_events"},{"title":"stg_lap_tyre_qa","sidebarTitle":"stg_lap_tyre_qa","href":"/reference/models/stg/stg_lap_tyre_qa"},{"title":"stg_laps","sidebarTitle":"stg_laps","href":"/reference/models/stg/stg_laps"},{"title":"stg_laps_qualifying","sidebarTitle":"stg_laps_qualifying","href":"/reference/models/stg/stg_laps_qualifying"},{"title":"stg_pits","sidebarTitle":"stg_pits","href":"/reference/models/stg/stg_pits"},{"title":"stg_race_control","sidebarTitle":"stg_race_control","href":"/reference/models/stg/stg_race_control"},{"title":"stg_results","sidebarTitle":"stg_results","href":"/reference/models/stg/stg_results"},{"title":"stg_results_qualifying","sidebarTitle":"stg_results_qualifying","href":"/reference/models/stg/stg_results_qualifying"},{"title":"stg_sector_times","sidebarTitle":"stg_sector_times","href":"/reference/models/stg/stg_sector_times"},{"title":"stg_session_status","sidebarTitle":"stg_session_status","href":"/reference/models/stg/stg_session_status"},{"title":"stg_session_status_qualifying","sidebarTitle":"stg_session_status_qualifying","href":"/reference/models/stg/stg_session_status_qualifying"},{"title":"stg_telemetry","sidebarTitle":"stg_telemetry","href":"/reference/models/stg/stg_telemetry"},{"title":"stg_telemetry_position","sidebarTitle":"stg_telemetry_position","href":"/reference/models/stg/stg_telemetry_position"},{"title":"stg_track_status","sidebarTitle":"stg_track_status","href":"/reference/models/stg/stg_track_status"},{"title":"stg_tyre_allocations","sidebarTitle":"stg_tyre_allocations","href":"/reference/models/stg/stg_tyre_allocations"},{"title":"stg_weather","sidebarTitle":"stg_weather","href":"/reference/models/stg/stg_weather"}]},{"group":"Intermediate","expanded":false,"pages":[{"title":"int_cell_power_law_fit","sidebarTitle":"int_cell_power_law_fit","href":"/reference/models/int/int_cell_power_law_fit"},{"title":"int_circuit_x_constructor_interaction","sidebarTitle":"int_circuit_x_constructor_interaction","href":"/reference/models/int/int_circuit_x_constructor_interaction"},{"title":"int_compound_cliff_predicted","sidebarTitle":"int_compound_cliff_predicted","href":"/reference/models/int/int_compound_cliff_predicted"},{"title":"int_constructor_car_fe","sidebarTitle":"int_constructor_car_fe","href":"/reference/models/int/int_constructor_car_fe"},{"title":"int_constructor_car_fe_isolation","sidebarTitle":"int_constructor_car_fe_isolation","href":"/reference/models/int/int_constructor_car_fe_isolation"},{"title":"int_constructor_deg_sensitivity","sidebarTitle":"int_constructor_deg_sensitivity","href":"/reference/models/int/int_constructor_deg_sensitivity"},{"title":"int_constructor_structural_pace","sidebarTitle":"int_constructor_structural_pace","href":"/reference/models/int/int_constructor_structural_pace"},{"title":"int_constructor_structural_pace_qualifying","sidebarTitle":"int_constructor_structural_pace_qualifying","href":"/reference/models/int/int_constructor_structural_pace_qualifying"},{"title":"int_corner_drift_from_early_stint","sidebarTitle":"int_corner_drift_from_early_stint","href":"/reference/models/int/int_corner_drift_from_early_stint"},{"title":"int_corner_metrics","sidebarTitle":"int_corner_metrics","href":"/reference/models/int/int_corner_metrics"},{"title":"int_corner_skill_residuals","sidebarTitle":"int_corner_skill_residuals","href":"/reference/models/int/int_corner_skill_residuals"},{"title":"int_dirty_air_tax_component","sidebarTitle":"int_dirty_air_tax_component","href":"/reference/models/int/int_dirty_air_tax_component"},{"title":"int_driver_circuit_affinity","sidebarTitle":"int_driver_circuit_affinity","href":"/reference/models/int/int_driver_circuit_affinity"},{"title":"int_driver_circuit_era_affinity","sidebarTitle":"int_driver_circuit_era_affinity","href":"/reference/models/int/int_driver_circuit_era_affinity"},{"title":"int_driver_isolation_lap_pace","sidebarTitle":"int_driver_isolation_lap_pace","href":"/reference/models/int/int_driver_isolation_lap_pace"},{"title":"int_driver_isolation_lap_panel","sidebarTitle":"int_driver_isolation_lap_panel","href":"/reference/models/int/int_driver_isolation_lap_panel"},{"title":"int_driver_isolation_lap_values","sidebarTitle":"int_driver_isolation_lap_values","href":"/reference/models/int/int_driver_isolation_lap_values"},{"title":"int_driver_isolation_stint_tyre","sidebarTitle":"int_driver_isolation_stint_tyre","href":"/reference/models/int/int_driver_isolation_stint_tyre"},{"title":"int_driver_race_skill_loro","sidebarTitle":"int_driver_race_skill_loro","href":"/reference/models/int/int_driver_race_skill_loro"},{"title":"int_driver_season_ratings","sidebarTitle":"int_driver_season_ratings","href":"/reference/models/int/int_driver_season_ratings"},{"title":"int_era_normalized_driver_rating","sidebarTitle":"int_era_normalized_driver_rating","href":"/reference/models/int/int_era_normalized_driver_rating"},{"title":"int_event_corrections","sidebarTitle":"int_event_corrections","href":"/reference/models/int/int_event_corrections"},{"title":"int_field_pace_curve","sidebarTitle":"int_field_pace_curve","href":"/reference/models/int/int_field_pace_curve"},{"title":"int_lap_air_state","sidebarTitle":"int_lap_air_state","href":"/reference/models/int/int_lap_air_state"},{"title":"int_lap_anomaly_flags","sidebarTitle":"int_lap_anomaly_flags","href":"/reference/models/int/int_lap_anomaly_flags"},{"title":"int_lap_corner_drift","sidebarTitle":"int_lap_corner_drift","href":"/reference/models/int/int_lap_corner_drift"},{"title":"int_lap_corner_inputs","sidebarTitle":"int_lap_corner_inputs","href":"/reference/models/int/int_lap_corner_inputs"},{"title":"int_lap_fuel_state","sidebarTitle":"int_lap_fuel_state","href":"/reference/models/int/int_lap_fuel_state"},{"title":"int_lap_fuel_state_qualifying","sidebarTitle":"int_lap_fuel_state_qualifying","href":"/reference/models/int/int_lap_fuel_state_qualifying"},{"title":"int_lap_normalized_pace","sidebarTitle":"int_lap_normalized_pace","href":"/reference/models/int/int_lap_normalized_pace"},{"title":"int_lap_proximity","sidebarTitle":"int_lap_proximity","href":"/reference/models/int/int_lap_proximity"},{"title":"int_lap_residual_decomposed","sidebarTitle":"int_lap_residual_decomposed","href":"/reference/models/int/int_lap_residual_decomposed"},{"title":"int_lap_residual_decomposed_qualifying","sidebarTitle":"int_lap_residual_decomposed_qualifying","href":"/reference/models/int/int_lap_residual_decomposed_qualifying"},{"title":"int_lap_residual_stint_detrend","sidebarTitle":"int_lap_residual_stint_detrend","href":"/reference/models/int/int_lap_residual_stint_detrend"},{"title":"int_lap_telemetry_aggregates","sidebarTitle":"int_lap_telemetry_aggregates","href":"/reference/models/int/int_lap_telemetry_aggregates"},{"title":"int_lap_thermal_proxy","sidebarTitle":"int_lap_thermal_proxy","href":"/reference/models/int/int_lap_thermal_proxy"},{"title":"int_pit_loss_circuit","sidebarTitle":"int_pit_loss_circuit","href":"/reference/models/int/int_pit_loss_circuit"},{"title":"int_pit_strategy_cost_curve","sidebarTitle":"int_pit_strategy_cost_curve","description":"One row per (stint_id, horizon_scope, candidate_pit_lap_offset): the Total_Cost(L) surface int_pit_strategy_value's header described for two years and never computed.","href":"/reference/models/int/int_pit_strategy_cost_curve"},{"title":"int_pit_strategy_value","sidebarTitle":"int_pit_strategy_value","href":"/reference/models/int/int_pit_strategy_value"},{"title":"int_power_law_lap","sidebarTitle":"int_power_law_lap","description":"WI-17: the one lap set every power-law fit, the Step-0 identification check (ml/src/powerlaw_ceiling.py) and the held-out grading in ml/src/powerlaw.py read.","href":"/reference/models/int/int_power_law_lap"},{"title":"int_qualifying_decomposed","sidebarTitle":"int_qualifying_decomposed","href":"/reference/models/int/int_qualifying_decomposed"},{"title":"int_qualifying_driver_summary","sidebarTitle":"int_qualifying_driver_summary","href":"/reference/models/int/int_qualifying_driver_summary"},{"title":"int_qualifying_push_laps","sidebarTitle":"int_qualifying_push_laps","href":"/reference/models/int/int_qualifying_push_laps"},{"title":"int_qualifying_segments","sidebarTitle":"int_qualifying_segments","href":"/reference/models/int/int_qualifying_segments"},{"title":"int_sc_hazard_history","sidebarTitle":"int_sc_hazard_history","href":"/reference/models/int/int_sc_hazard_history"},{"title":"int_sector_residual_decomposed","sidebarTitle":"int_sector_residual_decomposed","href":"/reference/models/int/int_sector_residual_decomposed"},{"title":"int_stint_end_regime","sidebarTitle":"int_stint_end_regime","href":"/reference/models/int/int_stint_end_regime"},{"title":"int_stint_geometry","sidebarTitle":"int_stint_geometry","href":"/reference/models/int/int_stint_geometry"},{"title":"int_stint_power_law_fit","sidebarTitle":"int_stint_power_law_fit","href":"/reference/models/int/int_stint_power_law_fit"},{"title":"int_synthetic_teammate","sidebarTitle":"int_synthetic_teammate","href":"/reference/models/int/int_synthetic_teammate"},{"title":"int_track_evolution","sidebarTitle":"int_track_evolution","href":"/reference/models/int/int_track_evolution"},{"title":"int_track_geometry","sidebarTitle":"int_track_geometry","href":"/reference/models/int/int_track_geometry"},{"title":"int_tyre_surface_vs_bulk_decoupling","sidebarTitle":"int_tyre_surface_vs_bulk_decoupling","href":"/reference/models/int/int_tyre_surface_vs_bulk_decoupling"}]},{"group":"Marts","expanded":false,"pages":[{"title":"fct_cliff_prediction_features","sidebarTitle":"fct_cliff_prediction_features","href":"/reference/models/fct/fct_cliff_prediction_features"},{"title":"fct_driver_isolation_lap","sidebarTitle":"fct_driver_isolation_lap","href":"/reference/models/fct/fct_driver_isolation_lap"},{"title":"fct_driver_isolation_pair_lap","sidebarTitle":"fct_driver_isolation_pair_lap","href":"/reference/models/fct/fct_driver_isolation_pair_lap"},{"title":"fct_driver_isolation_race","sidebarTitle":"fct_driver_isolation_race","href":"/reference/models/fct/fct_driver_isolation_race"},{"title":"fct_driver_isolation_stint","sidebarTitle":"fct_driver_isolation_stint","href":"/reference/models/fct/fct_driver_isolation_stint"},{"title":"fct_driver_skill_features","sidebarTitle":"fct_driver_skill_features","href":"/reference/models/fct/fct_driver_skill_features"},{"title":"fct_ghost_car_pace","sidebarTitle":"fct_ghost_car_pace","href":"/reference/models/fct/fct_ghost_car_pace"},{"title":"fct_ghost_race_finish","sidebarTitle":"fct_ghost_race_finish","href":"/reference/models/fct/fct_ghost_race_finish"},{"title":"fct_lap_residuals","sidebarTitle":"fct_lap_residuals","href":"/reference/models/fct/fct_lap_residuals"},{"title":"fct_power_law_training","sidebarTitle":"fct_power_law_training","href":"/reference/models/fct/fct_power_law_training"},{"title":"fct_stint_features","sidebarTitle":"fct_stint_features","href":"/reference/models/fct/fct_stint_features"},{"title":"fct_telemetry_deltas","sidebarTitle":"fct_telemetry_deltas","href":"/reference/models/fct/fct_telemetry_deltas"},{"title":"mart_corner_skill_driver","sidebarTitle":"mart_corner_skill_driver","href":"/reference/models/fct/mart_corner_skill_driver"},{"title":"mart_degradation_history_envelope","sidebarTitle":"mart_degradation_history_envelope","href":"/reference/models/fct/mart_degradation_history_envelope"},{"title":"mart_driver_season_summary","sidebarTitle":"mart_driver_season_summary","href":"/reference/models/fct/mart_driver_season_summary"},{"title":"mart_metric_benchmark","sidebarTitle":"mart_metric_benchmark","href":"/reference/models/fct/mart_metric_benchmark"},{"title":"mart_race_driver_summary","sidebarTitle":"mart_race_driver_summary","href":"/reference/models/fct/mart_race_driver_summary"}]},{"group":"Dimensions","expanded":false,"pages":[{"title":"dim_circuits","sidebarTitle":"dim_circuits","href":"/reference/models/dim/dim_circuits"},{"title":"dim_compounds_season","sidebarTitle":"dim_compounds_season","href":"/reference/models/dim/dim_compounds_season"},{"title":"dim_constructors","sidebarTitle":"dim_constructors","href":"/reference/models/dim/dim_constructors"},{"title":"dim_corners","sidebarTitle":"dim_corners","href":"/reference/models/dim/dim_corners"},{"title":"dim_drivers","sidebarTitle":"dim_drivers","href":"/reference/models/dim/dim_drivers"},{"title":"dim_driver_seasons","sidebarTitle":"dim_driver_seasons","href":"/reference/models/dim/dim_driver_seasons"}]}]},{"group":"The CI Contract","icon":"shield-check","pages":[{"title":"The CI Contract: how the transform layer's test suite keeps the DAG honest","sidebarTitle":"Overview","href":"/transform/ci/overview"},{"title":"Structural tests: grain and completeness across every model","sidebarTitle":"Structural","href":"/transform/ci/structural"},{"title":"Range \u0026 domain tests: plausibility, enums, and monotonicity","sidebarTitle":"Range \u0026 Domain","href":"/transform/ci/range-and-domain"},{"title":"Identity-closure tests: the additive identities, enforced","sidebarTitle":"Identity-Closure","href":"/transform/ci/identity-closure"},{"title":"Domain-constraint tests: physical and statistical invariants","sidebarTitle":"Domain Constraints","href":"/transform/ci/domain-constraints"},{"title":"Regression gates: baseline comparison, lint, and byte-stability","sidebarTitle":"Regression Gates","href":"/transform/ci/regression-gates"}]},{"group":"Macros","icon":"code","pages":[{"title":"Macros: the seven reusable building blocks","sidebarTitle":"Overview","href":"/transform/macros"},{"title":"dbt Macros","href":"/reference/macros/index"},{"title":"assert_additive_identity","sidebarTitle":"assert_additive_identity","href":"/reference/macros/assert_additive_identity"},{"title":"bayesian_shrinkage","sidebarTitle":"bayesian_shrinkage","href":"/reference/macros/bayesian_shrinkage"},{"title":"circuit_id_from_name","sidebarTitle":"circuit_id_from_name","href":"/reference/macros/circuit_id_from_name"},{"title":"clamp_or_null","sidebarTitle":"clamp_or_null","href":"/reference/macros/clamp_or_null"},{"title":"clean_lap_filter","sidebarTitle":"clean_lap_filter","href":"/reference/macros/clean_lap_filter"},{"title":"cliff_plateau_s","sidebarTitle":"cliff_plateau_s","href":"/reference/macros/cliff_plateau_s"},{"title":"cliff_ramp_frac","sidebarTitle":"cliff_ramp_frac","href":"/reference/macros/cliff_ramp_frac"},{"title":"cliff_ramp_slope_s_per_lap","sidebarTitle":"cliff_ramp_slope_s_per_lap","href":"/reference/macros/cliff_ramp_slope_s_per_lap"},{"title":"cliff_severity_span","sidebarTitle":"cliff_severity_span","href":"/reference/macros/cliff_severity_span"},{"title":"cliff_severity_term","sidebarTitle":"cliff_severity_term","href":"/reference/macros/cliff_severity_term"},{"title":"compound_cliff_wear_s","sidebarTitle":"compound_cliff_wear_s","href":"/reference/macros/compound_cliff_wear_s"},{"title":"driver_isolation_identity_terms","sidebarTitle":"driver_isolation_identity_terms","href":"/reference/macros/driver_isolation_identity_terms"},{"title":"driver_isolation_pure_season_offset","sidebarTitle":"driver_isolation_pure_season_offset","href":"/reference/macros/driver_isolation_pure_season_offset"},{"title":"driver_isolation_reliability","sidebarTitle":"driver_isolation_reliability","href":"/reference/macros/driver_isolation_reliability"},{"title":"fuel_regulatory_max_kg","sidebarTitle":"fuel_regulatory_max_kg","href":"/reference/macros/fuel_regulatory_max_kg"},{"title":"normal_cdf","sidebarTitle":"normal_cdf","href":"/reference/macros/normal_cdf"},{"title":"normalize_compound","sidebarTitle":"normalize_compound","href":"/reference/macros/normalize_compound"},{"title":"posterior_variance","sidebarTitle":"posterior_variance","href":"/reference/macros/posterior_variance"},{"title":"power_law_beta_grid","sidebarTitle":"power_law_beta_grid","href":"/reference/macros/power_law_beta_grid"},{"title":"trailing_median","sidebarTitle":"trailing_median","href":"/reference/macros/trailing_median"},{"title":"trailing_observation_count","sidebarTitle":"trailing_observation_count","href":"/reference/macros/trailing_observation_count"},{"title":"trailing_sum","sidebarTitle":"trailing_sum","href":"/reference/macros/trailing_sum"},{"title":"trailing_value_expr","sidebarTitle":"trailing_value_expr","href":"/reference/macros/trailing_value_expr"},{"title":"trailing_window_frame","sidebarTitle":"trailing_window_frame","href":"/reference/macros/trailing_window_frame"}]}]},{"tab":"Machine Learning","icon":"brain","pages":[{"title":"Machine Learning","href":"/ml/overview"}]},{"tab":"App","icon":"layout-dashboard","pages":[{"title":"App","href":"/app/overview"}]}]},"basePath":"","title":"int_pit_strategy_value - Off The Pace • docs","buildId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","deploymentId":"dpl_DTau1J5HqS9UTgVSDwGksstFWtPa","dynamics":[],"chunks":[]}