Skip to content

Commit d7e011a

Browse files
linsamtwclaude
andcommitted
fix(openapi): dataset 改自由字串,解除 GPT 只能查 17 個 dataset 的限制
問題:chatgpt/openapi.yaml 的 queryDataset,dataset 參數寫死成只有 17 個的 enum。ChatGPT 把 enum 當白名單驗證,導致 Custom GPT 實際上只能查這 17 個, 但 FinMind 走 /api/v4/data 的 dataset 有 87 個(datasets.md 共 90,其中 3 個 走專屬 endpoint)。knowledge bundle 已完整列出 90 個含參數/層級,GPT「知道」 卻被 action 擋住。enum 是早期 17 MVP 的殘留,與已擴充到 90 的知識包 drift。 修正:移除 dataset 的 enum,改為自由字串(仍 required),描述指向 knowledge bundle、要求只用 bundle 列出的名稱。87 個 /data dataset 全可查、未來新增 dataset 不需再改 openapi。 註:MCP server 的 query_dataset 工具本來就是自由字串、無此限制,故此修正 僅動 chatgpt/openapi.yaml(GPT-only)。3 個專屬 endpoint dataset 仍未提供 對應 action,本次不在範圍。 驗證:openapi 解析通過(dataset 無 enum、type=string、required)、32 tests passed、build_instructions 7986/8000。 Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
1 parent 1bd98e3 commit d7e011a

1 file changed

Lines changed: 5 additions & 19 deletions

File tree

chatgpt/openapi.yaml

Lines changed: 5 additions & 19 deletions
Original file line numberDiff line numberDiff line change
@@ -17,27 +17,13 @@ paths:
1717
- name: dataset
1818
in: query
1919
required: true
20-
description: Dataset 名稱(見 enum)
20+
description: >-
21+
FinMind dataset 名稱(例如 TaiwanStockPrice、TaiwanStockMonthRevenue、
22+
TaiwanFuturesDaily)。FinMind 支援約 90 個走本通用端點的 dataset;
23+
完整清單與每個 dataset 的必填參數、會員層級,請參考已上傳的
24+
knowledge bundle,並只使用其中列出的名稱,不要自行編造。
2125
schema:
2226
type: string
23-
enum:
24-
- TaiwanStockPrice
25-
- TaiwanStockMonthRevenue
26-
- TaiwanStockFinancialStatements
27-
- TaiwanStockDividend
28-
- TaiwanStockDividendResult
29-
- TaiwanStockInstitutionalInvestorsBuySell
30-
- TaiwanStockShareholding
31-
- TaiwanStockMarginPurchaseShortSale
32-
- TaiwanStockPER
33-
- TaiwanFuturesDaily
34-
- TaiwanOptionDaily
35-
- TaiwanFuturesInstitutionalInvestors
36-
- TaiwanExchangeRate
37-
- InterestRate
38-
- GoldPrice
39-
- USStockPrice
40-
- TaiwanStockInfo
4127
- name: data_id
4228
in: query
4329
required: false

0 commit comments

Comments
 (0)