feat(issue): 新增 issue +delete 单议题删除(--yes 确认,作者可按网页编号删除) #412

Closed
Taoyouce wants to merge 0 commits from Taoyouce/gitlink-cli:feat/issue-delete into master
Contributor

背景

议题删除目前只有 issue +batch-delete,它有两个门槛:

  1. 需要仓库管理员权限(作者删除自己的议题也会被 [403] 您没有权限进行该操作 拒绝);
  2. 只接受全局数据库 ID,而非网页 URL 中的议题编号。

而平台 v1 接口 DELETE /api/v1/:owner/:repo/issues/:number 支持议题作者按编号删除自己的议题(已生产实测)。

变更

  • 新增 issue +delete:按 --number(或兼容别名 --id)删除单个议题;
  • 破坏性操作保护:不带 --yes 时拒绝执行并提示;
  • en-US / zh-CN i18n 键;README / README.zh-CN 示例;
  • 2 个单测(端点路径断言 + 未确认拒绝执行)。

生产验证(gitlink.org.cn)

$ gitlink-cli issue +create --owner Taoyouce --repo gitlink-cli --title probe ...   # 创建 #5
$ gitlink-cli issue +delete --owner Taoyouce --repo gitlink-cli --number 5
delete is destructive; pass --yes to confirm deleting issue #5
$ gitlink-cli issue +delete --owner Taoyouce --repo gitlink-cli --number 5 --yes
{"ok": true, "data": {"message": "success", "status": 0}}
$ gitlink-cli issue +view --owner Taoyouce --repo gitlink-cli --number 5
[404] 疑修不存在!

go test / go vet / gofmt 全绿。

## 背景 议题删除目前只有 `issue +batch-delete`,它有两个门槛: 1. 需要仓库管理员权限(作者删除自己的议题也会被 `[403] 您没有权限进行该操作` 拒绝); 2. 只接受全局数据库 ID,而非网页 URL 中的议题编号。 而平台 v1 接口 `DELETE /api/v1/:owner/:repo/issues/:number` 支持议题作者按编号删除自己的议题(已生产实测)。 ## 变更 - 新增 `issue +delete`:按 `--number`(或兼容别名 `--id`)删除单个议题; - 破坏性操作保护:不带 `--yes` 时拒绝执行并提示; - en-US / zh-CN i18n 键;README / README.zh-CN 示例; - 2 个单测(端点路径断言 + 未确认拒绝执行)。 ## 生产验证(gitlink.org.cn) ``` $ gitlink-cli issue +create --owner Taoyouce --repo gitlink-cli --title probe ... # 创建 #5 $ gitlink-cli issue +delete --owner Taoyouce --repo gitlink-cli --number 5 delete is destructive; pass --yes to confirm deleting issue #5 $ gitlink-cli issue +delete --owner Taoyouce --repo gitlink-cli --number 5 --yes {"ok": true, "data": {"message": "success", "status": 0}} $ gitlink-cli issue +view --owner Taoyouce --repo gitlink-cli --number 5 [404] 疑修不存在! ``` go test / go vet / gofmt 全绿。
Taoyouce added 1 commit 2026-07-10 19:41:43 +08:00
a36e9c92c3 feat(issue): add issue +delete with --yes confirmation
Single-issue deletion via DELETE /api/v1/:owner/:repo/issues/:number.
The existing +batch-delete requires repo manager permissions and global
database IDs; +delete works for the issue author using the web issue
number. Destructive, so it refuses to run without --yes.

Includes en/zh i18n keys, README examples, and unit tests.
Production-verified on gitlink.org.cn (create -> delete -> 404 view).
wbtiger closed this pull request 2026-07-14 22:03:48 +08:00
wbtiger reopened this pull request 2026-07-14 23:03:31 +08:00
wbtiger closed this pull request 2026-07-14 23:09:03 +08:00

Pull request closed

Sign in to join this conversation.
No reviewers
No Label
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
The due date is invalid or out of range. Please use the format 'yyyy-mm-dd'.

No due date set.

Dependencies

No dependencies set.

Reference: Gitlink/gitlink-cli#412
No description provided.