{
  "project": "gpu-pilot",
  "doc": "CONTINUE_6_15_2026.md",
  "title": "\u25b6 CONTINUE 6/15 (drive speedup + P&R-NEC + OTP)",
  "oneline": "Newest handoff: drive ~10x faster (res-8), drive serialization fix (res-8 output), P&R multi-seed routes via NEC, OTP-NE oracle + 19-pair validation. Two \u2b50 TODOs queued.",
  "tldr": [
    "Drive FIXED end-to-end: engine ~23s\u2192~2s (res-8 OSRM coarsening) + res-8 OUTPUT for drive-containing requests (engine._collapse_to_res8) so the adapter builds ~15K not 107K features \u2014 public drive 500@121s \u2192 200@~21s. No-modes byte-identical.",
    "P&R multi-station seeding (K=4 nearest railheads, engine._access_rail_seeds): Piscataway P&R now rides the NEC (New Brunswick/Edison ~70min) instead of nearest Dunellen Raritan Valley (~83). Validated vs OTP-NE oracle (geocoder:8091, OTP 2.6.0). World Cup ruled out (NEC identical across dates).",
    "\u2b50 DO NEXT (user-prioritized): (1) <5s ADAPTER OPTIMIZATION \u2014 cache the static H3 cell\u2192boundary ring + orjson in multimodal-adapter (the ~1ms/cell build is the remaining latency floor: drive ~21s, walk/transit ~15s). (2) ROBUST HOVER FIX \u2014 monkey-patch map.queryRenderedFeatures (onLoad) to filter missing layers; the deployed hasHex gate is only partial.",
    "GOTCHAS: purge stale res-9 drive caches on engine deploy (cache-first serves old 107K payloads); NEVER put proxy_read_timeout in the shared nginx snippet (mapnjt.conf duplicate); res-9 GeoJSON iso ~20MB EXCEEDS Mongo 16MB doc cap \u2014 store COMPACT not GeoJSON; precompute = lazy Mongo cache + warm head, NOT the full PB-scale cross-product."
  ],
  "updated": "2026-06-15 06:50",
  "sections": [
    {
      "level": 1,
      "title": "CONTINUE \u2014 2026-06-15 \u2014 MultiModal drive speedup + P&R-NEC + OTP validation"
    },
    {
      "level": 2,
      "title": "\u2b50 DO THESE NEXT (user-prioritized, 2026-06-15)"
    },
    {
      "level": 3,
      "title": "1. <5s ADAPTER OPTIMIZATION (boundary cache + orjson)"
    },
    {
      "level": 3,
      "title": "2. ROBUST HOVER FIX (kill the hisochrone-fill console error for good)"
    },
    {
      "level": 2,
      "title": "DONE this session (2026-06-14 \u2192 15) \u2014 all committed + live"
    },
    {
      "level": 2,
      "title": "OTHER PENDING (after the two \u2b50 above)"
    },
    {
      "level": 2,
      "title": "GOTCHAS (don't relearn)"
    }
  ],
  "stats": {
    "lines": 87,
    "words": 803
  },
  "html": "https://board.certihomes.com/project-docs/gpu-pilot/CONTINUE_6_15_2026.html",
  "out_name": "CONTINUE_6_15_2026.md",
  "comments_api": "https://board.certihomes.com/api/doc-comments?project=gpu-pilot&doc=CONTINUE_6_15_2026.md"
}