Bootstrap review report — d3_wd25_san_luis_creek
Generated 2026-08-13 22:35 UTC for Division 3 / Water District 25.
This is a review checklist, not a finished config. Everything below is a suggestion from live DWR data — confirm or correct each section in config.yaml before running this basin for real.
1. Stream-name patterns
Assumed mainstem pattern: SAN LUIS CREEK (highest-count waterSource value). Candidates below by structure count — decide which are real tributaries worth their own centerline vs. noise, and add them to longitudinal.tributary_stream_patterns in priority order (more-specific names, e.g. "WEST FORK X", must precede substrings of themselves, e.g. "X").
| waterSource | structure count |
|---|---|
| SAN LUIS CREEK (assumed mainstem) | 34 |
| KERBER CREEK | 24 |
| NORTH CRESTONE CREEK | 13 |
| CLOVER CREEK | 10 |
| RITO ALTO CREEK | 9 |
| SPRING CREEK | 6 |
| COTTONWOOD CREEK | 5 |
| SAN ISABEL CREEK | 5 |
| ALDER CREEK | 4 |
| BROOK CREEK | 3 |
| SILVER CREEK | 3 |
2. Diversion / return classification
Auto-classified from structureType + name patterns: 140 diversions, 0 returns, 165 unclassified (neither pattern matched — these render as neither on the schematic unless added to return_flow_wdids/force_diversion_wdids or a type is added to the diversion/return type lists).
This layer needs the least manual work — it's the same heuristic the engine uses at runtime. Spot-check a sample rather than reviewing every row; if you have a water-year accounting spreadsheet for this basin, cross-reference it against the 'other' bucket specifically (that's where a real augmentation return with an unusual DWR structureType will hide).
2b. Cross-checked against decreed water rights (CDSS)
45 structure(s) have a decreed water right (CDSS waterrights/netamount) that disagrees with the structureType/name-pattern classification above. Same-agency evidence (DWR/HydroBase), not independent of DWR the way the NLDI topology check is — worth a glance, not an automatic correction.
| wdid | structure | currently | decreed uses suggest | decreed uses |
|---|---|---|---|---|
| 2505000 | W0041 WELL NO 01 | other | diversion | Irrigation |
| 2505001 | W0041 WELL NO 02 | other | diversion | Irrigation |
| 2505005 | W2399 WELL NO 03 | other | diversion | Domestic, Fire, Municipal |
| 2505006 | W0625 WELL NO 01 | other | diversion | Irrigation |
| 2505013 | W3528 WELL NO 01 | other | diversion | Irrigation |
| 2505014 | W3528 WELL NO 02 | other | diversion | Irrigation |
| 2505015 | W3528 WELL NO 03 | other | diversion | Irrigation |
| 2505017 | W0886 WELL NO 01 | other | diversion | Irrigation |
| 2505018 | W0886 WELL NO 02 | other | diversion | Irrigation |
| 2505019 | 84CW108 WELL NO 02 | other | diversion | Irrigation |
| 2505020 | 84CW108 WELL NO 03 | other | diversion | Irrigation |
| 2505022 | W3202 WELL NO 01 | other | diversion | Irrigation |
| 2505029 | W3202 WELL NO 05R | other | diversion | Irrigation, Stock |
| 2505030 | W3202 WELL NO 06R | other | diversion | Irrigation, Stock |
| 2505031 | W3202 WELL NO 01A | other | diversion | Irrigation, Stock |
| 2505032 | W3202 WELL NO 02A | other | diversion | Irrigation, Stock |
| 2505033 | W3202 WELL NO 03A | other | diversion | Irrigation, Stock |
| 2505034 | W3202 WELL NO 06A | other | diversion | Irrigation, Stock |
| 2505035 | W-3202 #7A | other | diversion | Irrigation, Stock |
| 2505036 | W3202 WELL NO 02AA | other | diversion | Irrigation, Stock |
| 2505038 | 86CW004 WELL NO 01A | other | diversion | Irrigation |
| 2505043 | W2997 WELL NO 27 | other | diversion | Fire, Industrial, Irrigation, Municipal, Recreation |
| 2505044 | W3370 WELL NO 02A | other | diversion | Irrigation |
| 2505045 | W3370 WELL NO 02B | other | diversion | Irrigation |
| 2505056 | 90CW037 WELL NO 01R | other | diversion | Irrigation |
| 2505057 | 90CW037 WELL NO 02R | other | diversion | Irrigation |
| 2505058 | 90CW037 WELL NO 03R | other | diversion | Irrigation |
| 2505059 | 90CW037 WELL NO 04A | other | diversion | Irrigation |
| 2505060 | 90CW037 WELL NO 04R | other | diversion | Irrigation |
| 2505061 | 90CW037 WELL NO 07R | other | diversion | Irrigation |
| 2505063 | 92CW005 WELL NO 01R | other | diversion | Irrigation |
| 2505073 | W0007 WELL NO 01 | other | diversion | Irrigation |
| 2505074 | W0015 WELL NO 01 | other | diversion | Irrigation |
| 2505075 | W0015 WELL NO 02 | other | diversion | Irrigation |
| 2505076 | W0015 WELL NO 03 | other | diversion | Irrigation |
| 2505077 | W0015 WELL NO 08 | other | diversion | Irrigation |
| 2505078 | W0017 WELL NO 01 | other | diversion | Irrigation |
| 2505079 | W0069 WELL NO 01 | other | diversion | Irrigation |
| 2505083 | W0074 WELL NO 01 | other | diversion | Irrigation |
| 2505084 | W0155 WELL NO 01 | other | diversion | Irrigation |
| 2505085 | W0155 WELL NO 02 | other | diversion | Irrigation |
| 2505092 | W0190 WELL NO PUMP 01 | other | diversion | Irrigation |
| 2505093 | W0206 WELL NO 01 | other | diversion | Commercial, Irrigation |
| 2505099 | W0290 WELL NO PUMP 01 | other | diversion | Irrigation |
| 2505104 | W0440 WELL NO 01 | other | diversion | Irrigation, Stock |
3. Suspected nested tributaries
Still need a human decision — these tributary pairs are comparably close to EACH OTHER as to the mainstem — one may actually join the other rather than the mainstem directly (like Leavenworth Creek -> South Clear Creek in the Clear Creek basin). NLDI couldn't resolve these (no nearby flowline, or ambiguous/no downstream overlap within range) — if you know the real topology, set it in longitudinal.tributary_parent_overrides.
| tributary | possible parent | dist to possible parent (mi) | dist to mainstem (mi) | NLDI result |
|---|---|---|---|---|
| RITO ALTO CREEK | COTTONWOOD CREEK | 1.9 | 2.24 | NLDI check failed: 429 Client Error: Too Many Requests for url: https://api.water.usgs.gov/nldi/linked-data/comid/position?f=json&coords=POINT%28-105.671705+37.924063%29 |
| NORTH CRESTONE CREEK | COTTONWOOD CREEK | 0.03 | 7.24 | NLDI check failed: 429 Client Error: Too Many Requests for url: https://api.water.usgs.gov/nldi/linked-data/comid/position?f=json&coords=POINT%28-105.739806+37.984128%29 |
| BROOK CREEK | SPRING CREEK | 0.85 | 0.91 | NLDI check failed: 429 Client Error: Too Many Requests for url: https://api.water.usgs.gov/nldi/linked-data/comid/17887134/navigation/DM/flowlines?f=json&distance=40 |
| COTTONWOOD CREEK | KERBER CREEK | 0.27 | 4.88 | NLDI check failed: 429 Client Error: Too Many Requests for url: https://api.water.usgs.gov/nldi/linked-data/comid/position?f=json&coords=POINT%28-106.020331+38.231659%29 |
| SAN ISABEL CREEK | COTTONWOOD CREEK | 2.17 | 3.31 | NLDI check failed: 429 Client Error: Too Many Requests for url: https://api.water.usgs.gov/nldi/linked-data/comid/position?f=json&coords=POINT%28-105.671705+37.924063%29 |
4. Gage placement risk
3 gage(s) would currently fail placement (> 2.5mi from the nearest centerline anchor — same failure mode as the Clear Creek at Derby bug). Options: raise the cutoff (check it doesn't sweep in an unrelated stream first — see the Little Dry Creek case), or add a manual override.
| gage | name | nearest stream | distance (mi) |
|---|---|---|---|
| DEDMOUCO | DEADMAN CREEK AT MOUTH OF CANYON NEAR CRESTONE, CO | COTTONWOOD CREEK | 3.33 |
| COCRMICO | COTTON CREEK NEAR MINERAL HOT SPRINGS, CO. | MAINSTEM | 3.15 |
| DEDCRECO | DEADMAN CREEK NEAR CRESTONE | COTTONWOOD CREEK | 3.03 |
17 more gage(s) pass but are within 2x the cutoff distance — worth a glance if the structure dataset changes later.
Next steps
- Fill in
tributary_stream_patternsfrom section 1. - Resolve section 3's flags (or confirm none apply).
- Resolve section 4's at-risk gages.
- Cross-reference
return_flow_wdids/force_diversion_wdidsagainst any local accounting source you have for this basin. - Review the rendered schematic for this district before relying on it.
Evolution of the network
Computed 2026-08-20 08:51 from 20 gage(s) with cached period-of-record data. Statistical tests (Mann-Kendall trend, Pettitt changepoint) require at least 8 years spanning at least 10 years of record -- gages below that report no signal, not "no change."
Data provenance & quality
Where these numbers come from and how far they can be trusted. Grade C (3/6 points) — the components below are the finding; the letter alone is not. Sources: DWR HydroBase snapshot HydroBase_CO_20260707 (imported 2026-08-19) for history, plus the CDSS REST API for current conditions.
| Check | State | What was measured |
|---|---|---|
| gage freshness | stale | newest gage reading is 45 day(s) old (target 7) |
| diversion record | expected-lag | newest diversion record is 293 day(s) old (DWR publishes ~1 year in arrears) |
| structure coverage | sparse | 12% of schematic structures have data |
Independent check: PASS — 100.0000% agreement across 102,978 stored values re-checked against DWR's authoritative record (HydroBase_CO_20260707), over 20 structures. 0 disagreement(s) beyond a 0.01 cfs tolerance. Checked 2026-08-19; a rotating sample covers the whole basin across successive runs, and the structures this report cites are checked every time.
Federal cross-check: PASS — 100.00% day-level agreement with USGS's own published records for the same gages, across 8 co-listed station(s) and 47,071 overlapping days (within max(2%, 0.5 cfs) daily). Pre-1950 records at some gages carry known between-agency day-stamp and transcription differences — scored at each year's best ±1-day alignment; residual disagreement is real historical divergence, flagged for review.
20 gage(s) / 185,633 daily values (1923-06-01–2026-07-06); 203 structure(s) with diversion records; 847 with decreed rights. Methodology has not yet had independent expert review — treat every figure as an advisory screen, not an administrative or legal conclusion.
Read this first: the measurement network itself evolved
This basin was not always measured the way it is today — the API-era record is dense and recent, the early record sparse. 14 gage(s) and 99 structure(s) report in 2026, but structure reporting only reached half its modern level around ~1969. Every historical claim below is checked against this: long-term shifts that co-move with the growth of the network carry an explicit measurement-evolution caution, and abandonment screens whose idleness begins before the modern reporting era are flagged †.
| Decade | Gages with data (median yr) | Structures reporting (median yr) |
|---|---|---|
| 1920s | 1 | 0 |
| 1930s | 2 | 0 |
| 1940s | 2 | 0 |
| 1950s | 2 | 44 |
| 1960s | 2 | 56 |
| 1970s | 2 | 74 |
| 1980s | 4 | 95 |
| 1990s | 2 | 74 |
| 2000s | 13 | 116 |
| 2010s | 14 | 118 |
| 2020s | 13 | 99 |
Gage flow trend & changepoints
Every located gage with a period of record — dot size scales with the strength of its flow trend (|Sen slope| in %/decade, the same statistic as the table below), color with direction. An amber ring marks a detected Pettitt changepoint. Click a gage to chart its trend and shift.
| Gage | Trend | Change / decade | Significance | Years | Changepoint |
|---|---|---|---|---|---|
|
▸
MAJOR CREEK NEAR VILLA GROVE MAJVILCO |
no clear trend | +16.5% | p=0.119 | 28 | ~2006 |
|
▸
COTTONWOOD CREEK NEAR CRESTONE, CO. COCRESCO |
↓ decreasing | -7.5% | p=0.012 | 32 | — |
|
▸
KERBER CREEK NEAR VILLA GROVE KERVILCO |
↓ decreasing | -4.8% | p=0.001 | 84 | ~1999 |
|
▸
CRESTONE CREEK, NORTH NEAR CRESTONE NOCRESCO |
no clear trend | -2.5% | p=0.074 | 91 | ~1999 |
16 other gage(s) show no significant trend or changepoint (not shown).
Mass-balance (network closure) trend
Structure divrec-history backfill coverage as of the last check: 12% of 273 schematic-relevant structures. 0 year(s) clear the 30% coverage gate so far -- the trend activates automatically once qualifying years span a full decade. No action needed; the nightly backfill keeps extending the record.
Reach gain/loss shifts (1951–2026)
Mass-balance kinks computed for every summer month back to 1951 (479 reach-snapshots) — which reaches gain or lose water, and how that has shifted across decades. Each shift is cross-checked against the observation record above: as more diversions became metered, "unaccounted" water shrinks mechanically, which can masquerade as a hydrologic shift.
No reach shows a statistically significant long-term gain/loss shift.
Groundwater now has its own tab: 206 monitored well(s), water-table trends, stream corridors, and the advisory depletion screen.
Cross-gage pattern fingerprint
Over the 28-year window with full coverage (1999–2026), the dominant shared pattern across 11 gage(s) explains 50% of year-to-year variance (almost certainly a basin-wide climate/snowpack driver).
CHECRECO, COCRESCO, GARVILCO, MAJVILCO, SPACRECO don't move with that shared pattern -- a real, localized signal (a new diversion, land-use change, or a gage-specific data problem) worth a closer look, not necessarily noise.
The basin's aquifer story, from 19,132 water-level measurements across 206 monitored well(s) (70 alluvial, 62 bedrock, rest unclassified) — plus 1 administered well(s) reporting metered pumping through diversion records. Observation wells and pumping wells are different populations and are never conflated. Click a well to chart its record.
Well map
Every monitored well with a location — hover for identity, click to chart its water-level record below. ● alluvial ● bedrock / confined (Denver Basin, High Plains, etc. — one-way, no human-timescale recharge) ● unclassified — marker size scales with the strength of the well's water-level trend (|Sen slope| in ft/decade — the same Mann-Kendall/Sen statistic as the trends table below); the smallest, faintest dots have too little record to test.
3D aquifer x-ray
Every aquifer unit as its own 3D head surface — alluvial water table on top, Denver Basin members (Dawson, Denver, Arapahoe, Laramie–Fox Hills) stacked beneath where measured — interpolated from measured water levels and animated through time. Units are never mixed; surfaces exist only inside each unit's well coverage (no extrapolation); thin epochs are suppressed with their reason shown. Vertical scale exaggerated for readability; z is head elevation in feet. Advisory — measured heads, not a calibrated model.
Water-table trends
Of 71 well(s) with enough record for a trend test: 41 declining, 6 rising.
| Fastest-declining wells | Setting | ft / decade | Span | p |
|---|---|---|---|---|
| ▸ NA04101003AAA2 EW-46C | alluvial | -7.66 | 11 yr | 0.002 |
| ▸ NA04001106DAD EW-71C | alluvial | -4.27 | 26 yr | 0.0145 |
| ▸ BACA-2 | unknown | -4.16 | 19 yr | 0.0 |
| ▸ NA04201027DAD2 EW-52C | alluvial | -3.94 | 11 yr | 0.0049 |
| ▸ NA04501007CCA RG02 | unknown | -3.26 | 46 yr | 0.0 |
| ▸ NA04101013ABD1 EW-79C | alluvial | -3.25 | 35 yr | 0.0001 |
| ▸ NA04301028BBB2 EW-62C | unknown | -2.83 | 11 yr | 0.0001 |
| ▸ NA04101002ABA RG24A | alluvial | -2.81 | 45 yr | 0.0 |
Wells labeled by administrative world before anything else is said about them: tributary alluvium participates in the priority system; designated-basin and Denver Basin bedrock aquifers are governed differently and are excluded from stream-connection reasoning. Read bedrock declines differently too: deep bedrock aquifers recharge negligibly on human timescales, so a falling bedrock level is storage mining — effectively permanent — not a drought response that a wet year undoes. All screens advisory.
Decrees, seniority, and administrative calls connected to this basin's flow network. Advisory reading aids on public DWR data — not administrative or legal conclusions. Rights on file: 1024 across 847 structure(s); 41 structure(s) carry 0 court-case references.
Abandonment radar (25 screens)
Absolute rights with 10+ years of no recorded diversions. Screens only — storage, alternate points, and plan operations can explain nonuse lawfully. And diversion REPORTING itself only reached its modern level ~1969 — idleness that begins before then may be unreported use, not nonuse (flagged † below).
- BARSCH D 1 (2500528) (1881-04-15, 1.6 cfs decreed): last active 1961 — 64 years idle † predates modern reporting era — last recorded activity predates this basin's modern reporting era (~1969) -- early absence of record is weak evidence of nonuse
- HOFFMAN D 2 (2500604) (1875-05-01, 0.9 cfs decreed): last active 1961 — 64 years idle † predates modern reporting era — last recorded activity predates this basin's modern reporting era (~1969) -- early absence of record is weak evidence of nonuse
- BACA GRANT 4 IRR D 19 (2500518) (1870-05-10, 39.8 cfs decreed): last active 1968 — 57 years idle † predates modern reporting era — last recorded activity predates this basin's modern reporting era (~1969) -- early absence of record is weak evidence of nonuse
- BRALEY D (2500530) (1886-05-09, 1.4 cfs decreed): last active 1973 — 52 years idle
- JOHN DECAMP D B (2500610) (1884-06-01, 0.6 cfs decreed): last active 1975 — 50 years idle
- KAUFMAN D (2500611) (1883-05-10, 1.0 cfs decreed): last active 1980 — 45 years idle
- DRISCOLL D (2500565) (1908-09-28, 1.8 cfs decreed): last active 1984 — 41 years idle
- CEDAR CR D (2500533) (1910-03-01, 2.0 cfs decreed): last active 1986 — 39 years idle
- NORTH,MIDDLE & TOP SPGS (2500743) (1871-05-01, 1.0 cfs decreed): last active 1989 — 36 years idle
- DRISCOLL D 2 (2500566) (1909-04-15, 3.0 cfs decreed): last active 1990 — 35 years idle
Compliance screens (107 advisory flags)
Screened 145 of 847 structures with rights (151 have diversion history on file). A flag is a lead for expert review — augmentation plans, exchanges, and free-river conditions can make over-decree diversions lawful and are deliberately not modeled.
- BACA GRANT 4 IRR D 9 (2500513): Observed p99 daily rate 70.0 cfs (max 90.6) exceeds total decreed absolute 39.0 cfs across 10906 recorded day(s).
- BACA GRANT 4 IRR D 10 (2500514): Observed p99 daily rate 41.0 cfs (max 41.0) exceeds total decreed absolute 39.4 cfs across 1308 recorded day(s).
- WALES SHELLABARGER D 2 (2500678): Observed p99 daily rate 37.5 cfs (max 54.0) exceeds total decreed absolute 37.0 cfs across 23396 recorded day(s).
- SHELLABARGER HOME D 2 (2500651): Observed p99 daily rate 28.0 cfs (max 28.8) exceeds total decreed absolute 3.0 cfs across 476 recorded day(s).
- STEEL D 2 (2500661): Observed p99 daily rate 21.5 cfs (max 37.8) exceeds total decreed absolute 7.6 cfs across 28637 recorded day(s).
- BACA GRANT 4 IRR D 3 (2500507): Observed p99 daily rate 20.0 cfs (max 30.0) exceeds total decreed absolute 4.0 cfs across 5374 recorded day(s).
- SAN ISABEL D (2500640): Observed p99 daily rate 20.0 cfs (max 35.0) exceeds total decreed absolute 19.8 cfs across 5168 recorded day(s).
- BACA GRANT 4 IRR D 5 (2500509): Observed p99 daily rate 18.0 cfs (max 29.0) exceeds total decreed absolute 5.8 cfs across 3798 recorded day(s).
- PETERSON D 1 (2500628): Observed p99 daily rate 18.0 cfs (max 50.0) exceeds total decreed absolute 14.9 cfs across 15772 recorded day(s).
- BACA GRANT 4 IRR D 4 (2500508): Observed p99 daily rate 15.0 cfs (max 22.0) exceeds total decreed absolute 7.0 cfs across 8360 recorded day(s).
Seniority (top structures by decreed rate)
| Structure | Senior priority date | Rights | Decreed abs (cfs) | Decreed abs (AF) | Conditional? |
|---|---|---|---|---|---|
| COTTONWOOD CR D (2500550) | 1870-05-10 | 1 | 94.4 | 0 | — |
| USFS QP55A1 (2500920) | 1902-04-11 | 1 | 90.2 | 0 | — |
| HOFFMAN NEIDHARDT D (2500698) | 1868-03-15 | 12 | 69.1 | 0 | — |
| WILLOW CR D (2500684) | 1870-05-10 | 1 | 69.0 | 0 | — |
| BACA GRANT 4 IRR D 12 (2500516) | 1870-05-01 | 6 | 44.2 | 0 | — |
| BACA GRANT 4 IRR D 19 (2500518) | 1870-05-10 | 1 | 39.8 | 0 | — |
| BACA GRANT 4 IRR D 10 (2500514) | 1870-07-01 | 2 | 39.4 | 0 | — |
| BACA GRANT 4 IRR D 9 (2500513) | 1870-05-01 | 2 | 39.0 | 0 | — |
| BACA GRANT 4 IRR D 24 (2500520) | 1870-05-10 | 2 | 39.0 | 0 | — |
| WALES SHELLABARGER D 2 (2500678) | 1870-07-01 | 6 | 37.0 | 0 | — |
| USFS QP53H2 (2500915) | 1902-04-11 | 1 | 30.6 | 0 | — |
| USFS QP53G6 (2500913) | 1902-04-11 | 1 | 28.8 | 0 | — |
| ARTHUR YOUNG D (2500505) | 1876-04-01 | 2 | 28.0 | 0 | — |
| JK HR COLE DR SPG WW D 1 (2500734) | 1952-08-20 | 1 | 25.7 | 0 | — |
| BACA GRANT 4 IRR D 25 (2500521) | 1870-05-10 | 1 | 24.0 | 0 | — |
No inventory or legal-document changes detected since the daily watch began.
If a call were placed at a given seniority, which structures in this basin would be out of priority, and how much of their decreed rate would be curtailed? Computed from this basin's cached decrees.
What this does and doesn't model. Seniority arithmetic only: every right junior to the call is treated as curtailed. It does not model reach applicability — structures downstream of the calling point are not administered by it — and it applies no futile-call judgment. Read it as “who is junior to this date, and by how much,” not as a prediction of what the Division Engineer would actually order.
Pick a calling right
Real decrees from this basin, ordered by administration number — that is, by actual seniority. The years will look out of order, and that is correct: an administration number encodes the adjudication date as well as the appropriation date, so a right appropriated in 1970 can be administered ahead of one from 1950. A senior call curtails almost everything; a junior one curtails almost nothing.
Or enter an administration number directly
DWR administration numbers encode appropriation and adjudication dates; lower is more senior.