2026年5月5日,Simon Willison 釋出了 Datasette 生態的新外掛 datasette-referrer-policy 0.1,用於解決其全球發電廠演示頁面中 OpenStreetMap 瓦片無法正常顯示的問題。經過排查,發現該問題由兩個獨立的 bug 引起。
第一個 bug 與幾周前新增的 CAPTCHA 驗證有關。該驗證使用 Cloudflare Turnstile 服務,本意是防止爬蟲,但卻錯誤地攔截了地圖外掛發出的 .json 請求。由於這些請求不是 HTML 格式,使用者不會收到驗證提示,導致請求被靜默丟棄。作者已經提交修復,確保 CAPTCHA 只對 HTML 請求觸發。
第二個 bug 更為隱蔽。OpenStreetMap 明確拒絕來自設定 Referrer-Policy: no-referrer 頭的站點的塊請求,而 Datasette 預設使用 no-referrer 策略以增強隱私。為了不破壞現有使用者的配置,作者沒有修改 Datasette 的預設行為,而是利用 AI 工具 Codex 和 GPT-5.5 輔助編寫了一個新外掛。該外掛允許管理員將 Referrer-Policy 設定為其他值,如 strict-origin-when-cross-origin,從而相容 OpenStreetMap 的要求。
datasette-referrer-policy 0.1 是首個版本,提供了簡單的配置介面,使用者可以在 datasette.yml 中設定 referrer_policy 引數。作者強調,雖然程式碼由 AI 生成,但經過人工審查和測試,確保安全可靠。該外掛的釋出不僅解決了特定問題,也為 Datasette 使用者提供了更靈活的 HTTP 標頭控制能力。未來,作者計劃繼續最佳化外掛,並考慮將其功能整合到 Datasette 核心。