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 核心。