Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

fix(web): API key settings follow-ups (error handling, CSRF origin check, empty scopes label)

已关闭
#79 0 条评论 0 个 reaction 已指派 1 人 在 GitHub 查看

维护者通常 1 天内回复

@mrgoonie 已经在做这个了。

开始于 2026年10月14日。

  • #96 来自 @mrgoonie —— 已合并

评估

这个 Issue 还没有评估数据。

描述

Follow-up from the independent review of #77 (scoped publishing keys in Settings). All low severity; none block.

  • apps/web/app/routes/api.user-api-keys.ts DELETE with a malformed JSON body returns 500 instead of 400 (POST got the guard).
  • apps/web/app/routes/settings.tsx the create dialog closes before the server responds; on 400/403 the user loses the name and selected publishers.
  • apps/web/app/components/settings/api-keys-table.tsx a key whose stored scopes parse to [] shows an empty Access cell instead of "No access".
  • api.user-api-keys.ts scopes: null returns 400 while docs only describe omitting the field (fails safe; document or accept null as omitted).
  • The route has no Origin/CSRF check and relies on the session cookie's default SameSite=Lax; a sibling subdomain could send cookie-bearing requests. Pre-existing; consider an Origin check on mutating auth routes.
  • settings.tsx after Done the plaintext key stays in the in-memory action result until the next navigation (not re-shown).
  • Separate: the api.skill-favorite client chunk contains the key_hash column name (no data); check that no server-only module is imported client-side there.
主要语言
TypeScript
星标
189
派生
40
平均合并
7 小时 31 分钟
30 天内合并 PR
43

环境准备

这个项目没有提供开发容器、Dockerfile 或贡献指南,环境需要你自己搭建:先看它的 README,通用步骤见我们的新手贡献指南。

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

nextlevelbuilder/skillx 的其他 Issue

查看 nextlevelbuilder/skillx 的全部 Issue

相似的 Issue

更多 TypeScript Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。