---
title: Carry player outcomes across simulated weeks
type: task
status: cancelled
description: >-
  Add a season-level player adjustment drawn once per simulated season so a breakout or slump
  persists across weeks. Requires index-aligned week draws in the season forecast.
base_uri: user:task/league/carry-player-outcomes-across-simulated-weeks.md
created_at: '2026-09-27T00:27:25.810Z'
entity_id: 38cc4831-cb37-4f89-8c32-300ce2fcc300
finished_at: '2026-09-30T15:19:53.758Z'
observations:
  - ████████████████████████████████████████████████
owner_identity_uri: █████████████████████████
priority: Medium
public_read: true
relations:
  - blocked_by [[█████████████████████████-██████-██████████-██████████████]]
  - relates [[user:text/league/season-forecast-modeling-contract.md]]
  - blocked_by [[█████████████████████████-██████-████████-████-██-█████-██-███████]]
  - relates [[██████████████████████-██████████-███████████-██-█████████████]]
tags:
  - user:tag/league-xo-football.md
updated_at: '2026-09-30T15:19:53.758Z'
visibility_analyzed_at: '2026-11-05T23:48:29.378Z'
---

# Carry player outcomes across simulated weeks

## Problem

The season forecast draws an independent index per week (`libs-server/simulation/simulate-season-forecast.mjs`, the per-week `draw_index()` in the Monte Carlo loop). Nothing persists within one simulated season — a breakout, a lost role or a slump in week 5 has no bearing on week 6. The spread of season totals, and therefore of playoff odds, is understated.

## Intent

- Draw a season-level adjustment per player (and possibly per NFL offense) once per simulated season and apply it to every remaining week.
- Size the adjustment from how much weekly residuals actually persist in historical data.

## Structural cost

Weeks are built as independent score vectors and resampled with a fresh index each week. A shared season-level factor requires index-aligned weeks (draw i in week w and week w+1 belong to the same simulated season), which changes the build and the "one draw per week" wording in [[user:text/league/season-forecast-modeling-contract.md]].

Gate: must beat the baseline from the calibration backtest, specifically on season-level odds.
