Skip to content

refactor(web): derive map topology from the PDL instead of hardcoded … - #36

Open
Hackatro wants to merge 2 commits into
mainfrom
25-load-supply-chain-from-pdl-and-display-it-on-world-map
Open

Hackatro wants to merge 2 commits into
mainfrom
25-load-supply-chain-from-pdl-and-display-it-on-world-map

Conversation

@Hackatro

@Hackatro Hackatro commented Aug 12, 2026

Copy link
Copy Markdown
Contributor

Rebased onto main by merging it in.

The Python half of this branch was superseded #33 and #38 landed the PDL-derived roster, the entity placement export and the port-to-port collapse of sea crossings.

The lane-node machinery this branch originally used (Edge.kind, SYNTHETIC_PLACEMENTS, splitLaneRoute) is dropped.

@Hackatro Hackatro linked an issue Aug 12, 2026 that may be closed by this pull request
…-map

Resolve every Python conflict in favour of main. #33 and #38 landed the PDL-derived roster, the entity placement export and the port-to-port collapse of sea crossings, all of which this branch predates: export_bundle.py, the topology fixtures and the export contract test take main's versions unchanged, leaving the Python tree byte-identical to main.

Keep the branch's route geometry, rebased onto main's bundle contract. gazetteer.ts gains EDGE_ROUTES, the four authored ocean routes stored as intermediate waypoints keyed by edge id with the endpoints taken from the resolved edge. The lane-node machinery the branch used to anchor them - SYNTHETIC_PLACEMENTS, splitLaneRoute, the lane-keyed waypoint table - is dropped, since main's collapsed edges make it redundant.

GlobeView.tsx renders routed edges through a pathsData layer carrying the same halo/glow/core stack and disruption lerp as the arcs; edges without a route keep their great-circle arcs. Routes are densified so long legs follow the surface instead of cutting through the globe, and routed edge labels anchor at the route midpoint rather than an arc apex.

geo.ts and tokens.ts keep the branch's densifyPolyline and path token set, which the route rendering depends on. Every other frontend file - App.tsx, types.ts, staticJsonSource.ts, source.ts, main.tsx, app.css, labels.css, dynamics.ts - takes main's version: the branch's commercial-group UI and Edge.kind have no backing in the bundle main emits, and its labels.css dropped the .sim-label--edge rule that main's edge annotations still need.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Load supply chain from PDL and display it on world map

1 participant