You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
link builds crossings from primitives itself — lnk_pipeline_crossings → .lnk_crossings_union (PSCIS snap/score/xref + fresh.modelled_stream_crossings + CABD), re-implementing bcfp's crossings assembly (02_pscis_streams_150m.sql + 04_pscis.sql). Because we reproduce that logic instead of consuming bcfp's output, we should confirm link's built <schema>.crossings is equivalent to bcfp's complete crossings table (bcfishpass.crossings / crossings_vw).
bcfp's complete crossings table carries a lot of derived info and is built by many scripts — it's the natural parity reference for validating our primitives-build, now and as bcfp evolves. (The newgraph crossings.csv we dumped is NOT a model input — the models build from primitives — but this complete table is our parity yardstick.)
Scope
Compare link <schema>.crossings vs bcfishpass.crossings_vw on a sample of WSGs: row coverage, per-branch counts (PSCIS / modelled / CABD), barrier_status, network positions (blue_line_key + downstream_route_measure). Quantify divergence.
Make it a repeatable parity check, alongside the existing mapping_code / accessible_km cross-sections.
Related / context
Supersedes the misdirected Consume weekly crossings.csv; repoint pipeline off fresh #231 (which assumed the pipeline consumes fresh's crossings.csv — it doesn't). Lessons + full trace archived at planning/archive/2026-07-issue-231-crossings-from-primitives/.
Freshness: primitives are loaded manually by data-raw/snapshot_bcfp.sh (last modelled-crossings load ~2026-05-26). Automating that refresh weekly is a related follow-up (may split into its own issue).
db_newgraph#16 tracks reconsidering the now-model-unneeded crossings.csv dump.
link builds crossings from primitives itself —
lnk_pipeline_crossings→.lnk_crossings_union(PSCIS snap/score/xref +fresh.modelled_stream_crossings+ CABD), re-implementing bcfp's crossings assembly (02_pscis_streams_150m.sql+04_pscis.sql). Because we reproduce that logic instead of consuming bcfp's output, we should confirm link's built<schema>.crossingsis equivalent to bcfp's complete crossings table (bcfishpass.crossings/crossings_vw).bcfp's complete crossings table carries a lot of derived info and is built by many scripts — it's the natural parity reference for validating our primitives-build, now and as bcfp evolves. (The newgraph
crossings.csvwe dumped is NOT a model input — the models build from primitives — but this complete table is our parity yardstick.)Scope
<schema>.crossingsvsbcfishpass.crossings_vwon a sample of WSGs: row coverage, per-branch counts (PSCIS / modelled / CABD),barrier_status, network positions (blue_line_key+downstream_route_measure). Quantify divergence.Related / context
crossings.csv— it doesn't). Lessons + full trace archived atplanning/archive/2026-07-issue-231-crossings-from-primitives/.data-raw/snapshot_bcfp.sh(last modelled-crossings load ~2026-05-26). Automating that refresh weekly is a related follow-up (may split into its own issue).crossings.csvdump.