Skip to content

feat(swarm): GeoBridge Module #68 — Signal #21 server-side geo proximity (80 tests)#99

Open
0xultravioleta wants to merge 19 commits into
mainfrom
feat/geo-bridge-module-68
Open

feat(swarm): GeoBridge Module #68 — Signal #21 server-side geo proximity (80 tests)#99
0xultravioleta wants to merge 19 commits into
mainfrom
feat/geo-bridge-module-68

Conversation

@0xultravioleta
Copy link
Copy Markdown
Collaborator

What

GeoBridge adds server-side geo proximity intelligence to the EM swarm coordinator. This is Module #68 and the server-side counterpart to AutoJob's GeoProximityEngine (Signal #21).

Why

Signals #1-20 optimized worker routing on behavioral/reputation/motivational dimensions but completely ignored geography. For physical tasks (photo, photo_geo, video, measurement), a worker 2km away is fundamentally better than a worker 7,000km away — regardless of reputation.

Signal #21: Geo Proximity

Four sub-signals (weights sum to 1.0):

  • Haversine Proximity (50%): exp(-dist_km/10) decay from worker's last known location
  • Territory Intelligence (30%): Historical completions in nearby 1km² grid cells
  • Commute Willingness (10%): Worker avg travel distance vs 5km market median
  • Temporal Clustering (10%): Active hours overlap with task's time window

Task type routing:

  • Physical tasks (photo, photo_geo, video, measurement, etc.) → full geo signal
  • Digital tasks (text_response, screenshot, etc.) → geo_bonus = 0.0

Geo bonus range: ±0.08 max contribution to match_score.

GPS Extraction

Handles all 4 EM evidence formats (gps nested, flat, metadata, direct columns).

Tests: 80 passing

Files: mcp_server/swarm/geo_bridge.py (633 LOC), mcp_server/tests/swarm/test_geo_bridge.py (80 tests)

Loading
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.

2 participants