Skip to content

Adopt conservative bifurcation FACC budgets with fixed full-river area #236

Closed

Description

@jameshgrn

Adopt the validated global conservative bifurcation correction as the local working FACC authority. User approved adoption on 26 October 2026, with facc_total and SWORD widths unchanged and mapping/direction work tracked independently.

Every allocated side share now debits the main edge, including non-rejoining distributaries. The main edge receives 1 minus actual side allocations. The dynamic whole-area guard is removed; whole totals are fixed to the frozen 21 October parent. Existing SWORD characteristic widths, topology and parent source/credit rules are retained.

Validated population: 60 basins, 248,673 reaches, 11,112,454 nodes. Overbudget forks above 1 km² decrease 903 -> 0 across 2,893 forks. Source-ID terminal budget violations decrease 16,671 -> 0. All full-area endpoints and nodes match the parent; 38 focused tests and global ledger/node checks pass.

The 95th-percentile absolute source-union junction residual decreases 1,118.93 -> 892.34 km²; deficit screens decrease 1,913 -> 1,671, while positive screens increase 4,304 -> 4,328. Thus internal accounting improves, but not every discrepancy statistic improves. HydroBASINS facc_total predictions and scores remain unchanged: 5,312/6,262 within 20% (84.83%), median absolute relative error 0.961%. Improvements against original v17b in paired NA/EU/OC references precede this split-only change.

Implementation: scripts/maintenance/adopt_facc_bifurcations.py materializes the working product and config/facc_adopted.json selects it. Product: data/derived/facc/bifurcation_20261026/, with per-region reach/node Parquets and a hashed manifest. Frozen scientific source: output/facc_detection/variants/rule0021_conservative_forks_fixed_total_20261026/runs/global_candidate/.

Scope: local working product and analysis authority. Published exports, original shipped source, databases, widths, and topology remain untouched. Preserve AS edge 43308000201 -> 43309000191 as a deferred investigation. Reference mapping, native/interpolated placement and direction cases have separate follow-ups. Related validation context: #232.

Completed and verified locally. Authority: config/facc_adopted.json. Twelve materialized regional files passed manifest/hash/count readback; all 1,580 frozen candidate files matched, whole reach/node totals are unchanged, and SWORD widths/topology remain unchanged. Separate follow-ups: #233 (reference units), #234 (source placement), #235 (deferred direction case). The local adoption supersedes the earlier audit hold; published data and databases are untouched.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions