cleanup: remove /api/config handler (extraction #2 shadow) (#10)

* cleanup: remove /api/config handler (extraction #2 shadow)

recon's /api/config Flask handler (lib/api.py) is edge-shadowed since
extraction #2 — navi-config (:8422) serves the route via nginx on
navi.echo6.co. The recon-side handler is dead at the edge; remove it.

lib/deployment_config.py is KEPT: get_deployment_config() still has many
in-process consumers (lib/api.py:1237 /api/landclass has_landclass gate,
google_places.py, place_detail.py x4, offroute/router.py). Only the
/api/config HTTP handler is removed; the import at api.py:27 stays.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

* cleanup: refresh deployment_config docstring (drop /api/config reference)

The module docstring still said get_deployment_config() was "for use by the
/api/config endpoint" — that handler was removed in the parent commit. Rewrite
to reflect the actual 5 in-process consumers (landclass gate, google_places,
place_detail ×4, offroute/router.py profile.offroute.*).

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: zvx-echo6 <mj@k7zvx.com>
Co-authored-by: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
malice 2026-05-23 00:08:48 -06:00 committed by GitHub
commit ed36eec85e
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
2 changed files with 9 additions and 10 deletions

View file

@ -1263,15 +1263,6 @@ def api_landclass():
}) })
@app.route('/api/config')
def api_config():
"""Return deployment profile config for frontend consumption."""
config = get_deployment_config()
resp = jsonify(config)
resp.headers['Cache-Control'] = 'public, max-age=300'
return resp
@app.route('/api/health') @app.route('/api/health')
def api_health(): def api_health():
"""Health check endpoint for monitoring.""" """Health check endpoint for monitoring."""

View file

@ -3,7 +3,15 @@ Deployment profile loader.
Reads RECON_PROFILE env var (default: "home"), loads the matching YAML Reads RECON_PROFILE env var (default: "home"), loads the matching YAML
from config/profiles/<profile>.yaml, and caches the parsed dict in memory. from config/profiles/<profile>.yaml, and caches the parsed dict in memory.
Provides get_deployment_config() for use by the /api/config endpoint.
Provides get_deployment_config() for in-process consumers of the profile:
- lib/api.py:api_landclass the has_landclass feature-flag gate
- lib/google_places.py Google Places enrichment config
- lib/place_detail.py place-detail enrichment config (×4 call sites)
- lib/offroute/router.py profile.offroute.* (osm_pbf_path / postgis_dsn /
densify_interval_m)
(The former /api/config HTTP endpoint that served this dict to the frontend was
removed once navi-config (:8422) took over that route.)
""" """
import os import os
import yaml import yaml