Add Qingdao to the tradable city network
Qingdao needs the same airport-settlement path as the other Wunderground-backed APAC cities, so the registry, aliases, timezone, prewarm, official links, market focus, and tests now point to ZSQD / Qingdao Jiaodong International Airport. Constraint: User supplied Wunderground Qingdao/ZSQD settlement URL. Rejected: Add a partial registry-only entry | it would show in APIs without frontend links, prewarm coverage, or alias support. Confidence: high Scope-risk: narrow Reversibility: clean Tested: pytest tests/test_country_networks.py tests/test_web_observability.py::test_cities_endpoint_includes_new_wunderground_cities -q Tested: npm run build Not-tested: Live Wunderground fetch for ZSQD in production.
This commit is contained in:
@@ -41,6 +41,7 @@ const CITY_NAME_ZH: Record<string, string> = {
|
||||
Panama: "巴拿马城",
|
||||
"Panama City": "巴拿马城",
|
||||
Paris: "巴黎",
|
||||
Qingdao: "青岛",
|
||||
"Sao Paulo": "圣保罗",
|
||||
"São Paulo": "圣保罗",
|
||||
Seattle: "西雅图",
|
||||
@@ -91,6 +92,7 @@ const AIRPORT_NAME_ZH: Record<string, string> = {
|
||||
"New York": "拉瓜迪亚机场",
|
||||
"Panama City": "托库门国际机场",
|
||||
Paris: "戴高乐机场",
|
||||
Qingdao: "青岛胶东国际机场",
|
||||
"Sao Paulo": "瓜鲁柳斯国际机场",
|
||||
"São Paulo": "瓜鲁柳斯国际机场",
|
||||
Seattle: "西雅图-塔科马国际机场",
|
||||
|
||||
@@ -617,6 +617,23 @@ const CITY_SPECIFIC_SOURCES: Record<string, OfficialSourceLink[]> = {
|
||||
kind: "metar",
|
||||
},
|
||||
],
|
||||
qingdao: [
|
||||
{
|
||||
label: "Wunderground ZSQD",
|
||||
href: "https://www.wunderground.com/history/daily/cn/qingdao/ZSQD",
|
||||
kind: "agency",
|
||||
},
|
||||
{
|
||||
label: "青岛胶东国际机场",
|
||||
href: "https://www.qdairport.com/",
|
||||
kind: "airport",
|
||||
},
|
||||
{
|
||||
label: "ZSQD METAR",
|
||||
href: "https://aviationweather.gov/data/metar/?id=ZSQD&decoded=1&taf=1",
|
||||
kind: "metar",
|
||||
},
|
||||
],
|
||||
"kuala lumpur": [
|
||||
{
|
||||
label: "Wunderground WMKK",
|
||||
|
||||
@@ -25,6 +25,7 @@ const CITY_TO_MARKET_SLUG: Record<string, string> = {
|
||||
munich: "munich",
|
||||
"new york": "nyc",
|
||||
paris: "paris",
|
||||
qingdao: "qingdao",
|
||||
"san francisco": "san-francisco",
|
||||
"sao paulo": "sao-paulo",
|
||||
seattle: "seattle",
|
||||
|
||||
@@ -107,6 +107,7 @@ const CITY_REGION_FALLBACK: Record<string, MarketRegionKey> = {
|
||||
chongqing: "asia_pacific",
|
||||
shenzhen: "asia_pacific",
|
||||
guangzhou: "asia_pacific",
|
||||
qingdao: "asia_pacific",
|
||||
beijing: "asia_pacific",
|
||||
wuhan: "asia_pacific",
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user