Commit Graph

59 Commits

Author SHA1 Message Date
蒋天翔 b094cac5df merge: 合并远程 master,解决 register_test.go 冲突(保留 capability 模块) 2026-06-04 15:47:35 +08:00
wyxfzgg fad02b9f66 fix: 修复 gofmt 格式化问题
- 所有文件从 CRLF 转为 LF 换行
- issue.go: 修正 journals/series-update 条目缩进
- register_test.go: 修正 expectedGroups 缩进
- ci.yml: 恢复格式化检查模式
2026-06-04 15:23:15 +08:00
蒋天翔 72055f3aad 更改部分 2026-06-04 15:13:01 +08:00
蒋天翔 a8e67fc32e feat: add repo +delete-file shortcut and convert Skills from raw API to shortcut commands
- Add repo +delete-file shortcut command in shortcuts/repo/repo.go
- Add comprehensive unit tests for create-file, update-file, delete-file
  (15 new test cases covering happy paths, optional params, missing args,
  and HTTP error handling)
- Update gitlink-notification-digest Skill to v3.0.0 using notification
  +list/+read/+read-all/+watch shortcuts
- Update gitlink-pm Skill to v1.1.0 using pm +dashboards/+sprints/+weekly
  shortcuts
- Fix gitlink-shared/SKILL.md Raw API example (user +me → api GET /users/me)
- Update api-reference.md examples to use notification shortcuts
- Update gitlink-contributor-insight examples to reflect current
  command availability
- Update CI config branch from wyx_branch to master

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 11:34:08 +08:00
蒋天翔 298c29795e feat: merge jtx_branch unique commands into master
- ci: add activate, deactivate, authorize commands; fix indentation
- org: add teams, create-team, remove-user commands; fix indentation
- search: add code, issues commands; fix indentation and cleanup
- repo: add raw, activity, compare, create-file, update-file commands
- notification: add watch command
- label: add clone command
- register_test: fix expected group count

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-04 08:33:04 +08:00
wyxfzgg 2cc0e5c08b feat: 新建 export 模块,添加 3 条数据导出命令 (issues/prs/contributors)
- 新增 shortcuts/export/export.go: 3 条 Shortcut 命令,支持 CSV/JSON 格式导出
- 新增 shortcuts/export/export_test.go: 7 个测试函数
- 修改 shortcuts/register.go: 注册 export 模块,修复重复 webhook import

关联 Issue: #15
2026-06-03 12:00:04 +08:00
wyxfzgg 6bcd8b65d2 feat: 新建 wiki 模块,添加 5 条 Wiki 管理命令 (pages/get/create/update/delete)
- 新增 shortcuts/wiki/wiki.go: 5 条 Shortcut 命令
- 新增 shortcuts/wiki/wiki_test.go: 9 个测试函数,覆盖正常/异常/缺少参数场景
- 修改 shortcuts/register.go: 注册 wiki 模块

关联 Issue: #13
2026-06-03 11:39:55 +08:00
wyxfzgg b4cfdb753e feat: 新建 pm 模块,添加 6 条项目管理命令 (dashboards/sprints/weekly/tags/pipelines/runs)
- 新增 shortcuts/pm/pm.go: 6 条 Shortcut 命令
- 新增 shortcuts/pm/pm_test.go: 单元测试覆盖
- 修改 shortcuts/register.go: 注册 pm 模块
- 修复 register.go 中 milestone 描述缺少逗号的语法问题

关联 Issue: #12
2026-06-03 11:27:44 +08:00
林迪文 b748a95511 feat: 新建 notification 模块并注册
- notification +list: 列出通知(支持已读/参与过滤)
- notification +read: 标记单条通知为已读
- notification +read-all: 标记所有通知为已读
- register.go: 添加 notification 模块的 import、groups、descriptions

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 09:19:18 +08:00
林迪文 0017147cbd feat: org +teams/+create-team/+remove-user, search +code/+issues
- org +teams: 列出组织下的所有团队
- org +create-team: 在组织下创建新团队
- org +remove-user: 从组织中移除成员
- search +code: 在仓库中搜索代码
- search +issues: 搜索 Issue(支持状态/标签/作者过滤)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 09:14:57 +08:00
林迪文 691961072a feat: issue +journals/+series-update, ci +activate/+deactivate/+authorize
- issue +journals: 查看 Issue 活动日志
- issue +series-update: 批量更新 Issue 状态
- ci +activate: 激活 CI/CD
- ci +deactivate: 停用 CI/CD
- ci +authorize: 检查 CI/CD 授权状态

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-03 09:02:06 +08:00
林迪文 9b08029643 merge: resolve client.go conflict, keep XML declaration fix 2026-06-03 08:58:40 +08:00
蒋天翔 70476a3a2a feat: add heatmap, stats, trends shortcuts to user module
- heatmap: show user contribution heatmap with optional --year flag
- stats: show user development statistics with optional --start-time/--end-time
- trends: show user project trends
- includes 11 new unit tests covering normal paths, parameter validation, and HTTP error handling

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-03 00:21:02 +08:00
蒋天翔 fd2517f2f8 feat: add pr commits/branches/check-merge shortcuts with tests
Add three new shortcuts to the pr module:
- commits: list commits in a pull request (v1 API)
- branches: list branches for PR creation
- check-merge: check if two branches can be merged

Each shortcut includes unit tests covering both success and HTTP error paths.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 23:47:59 +08:00
wbtiger 9843fc7ceb Merge PR #57: feat(issue): support metadata fields
Resolved conflicts with i18n infrastructure from PR #95 and metadata
lookup shortcuts from PR #43.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 22:46:34 +08:00
wbtiger 8e558cceca Merge pull request 'feat(issue): add metadata lookup shortcuts' (#43) from wangyue111/gitlink-cli:feat/issue-metadata-shortcuts into master 2026-06-02 22:30:26 +08:00
wbtiger 49240b3c02 Merge pull request 'fix: pr +review now posts a journal comment alongside the formal review' (#98) from fix/pr-review-journal-sync into master 2026-06-02 22:08:07 +08:00
wbtiger edf2fc30b8 fix: pr +review now posts a journal comment alongside the formal review
The GitLink API has two separate systems for PR feedback:
- POST /pulls/:id/reviews creates a formal review (approve/reject/comment)
  that only appears in the "Reviews" panel
- POST /issues/:issueID/journals creates a comment visible in the main
  PR conversation tab

Previously, `pr +review` only called the reviews API, so the review
content was invisible to the contributor in the main PR conversation.
Now it also posts a journal summary so the review is visible where
contributors expect to see it.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 22:03:04 +08:00
蒋天翔 9106be35d4 feat: add repo languages/contributors/files/tags/commits shortcuts with tests
Add 5 new repo shortcuts:
- languages: show language breakdown
- contributors: list contributors with pagination
- files: list directory contents with ref/path filters
- tags: list tags with pagination
- commits: list commits with sha/path filters

Include 13 unit tests covering normal paths and HTTP error paths.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-02 17:18:23 +08:00
wangyue789 34be160d96 feat(issue): add metadata lookup shortcuts 2026-06-02 12:45:30 +08:00
wangyue789 89d5321713 feat(issue): support metadata fields and id alias 2026-06-02 12:42:34 +08:00
whzy 37dfd2e2e2 feat(i18n): add CLI localization foundation 2026-06-01 17:33:10 +08:00
wbtiger e393484dc9 fix: update TestRegisterAll expected groups for label and pipeline
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-06-01 01:18:36 +08:00
wbtiger fb847bf13f Merge remote-tracking branch 'wangyue111/feat/pipeline-openapi-shortcuts' into _test_68_int 2026-06-01 01:17:23 +08:00
wbtiger 18975162a1 fix(issue): treat view id as issue number
Support --id as alias for --number in issue +view command.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-31 23:52:55 +08:00
wbtiger a91d553130 Merge pull request 'feat(label): add issue label shortcuts' (#89) from recorder/gitlink-cli:feat/label-shortcuts into master 2026-05-31 23:41:27 +08:00
wbtiger 1bf16d31db chore: fix CI workflow, golangci-lint config, and minor lint/format issues
- Add checkout and setup-go steps to Gitea CI workflow, use make targets
- Exclude errcheck for test files in golangci-lint config
- Fix staticcheck QF1002 (tagged switch) in repo_test.go
- Fix gofmt trailing newline in triage_rules_test.go

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-31 22:45:17 +08:00
wbtiger 0170b5b063 test: add comprehensive test coverage across all packages (88.5% → 90.3%)
Add 18 new test files covering formatter, envelope, config, auth,
client, context, register, and all shortcut group packages.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-31 15:41:54 +08:00
wbtiger f7263cc466 chore: add golangci-lint config and fix lint issues
- Add .golangci.yml with 8 essential linters (errcheck, govet,
  ineffassign, staticcheck, unused, errorlint, gosec, misspell)
- Fix real bugs: errors.As, %w wrapping, nil map check, dead code,
  unnecessary conversion, unused parameters
- Add `make lint` target, include it in `make check` pipeline
- Update pre-commit hook to run lint step

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-31 00:37:45 +08:00
何开元 cca3d019fe feat(label): add issue label shortcuts
Add a `label` shortcut group wrapping the GitLink issue_tags (项目标记) API
with +list / +create / +update / +delete, plus the gitlink-label Skill,
bilingual README usage, and a changelog entry.

- +list supports keyword filter, only-name, and sort options
- +create defaults color to #1E90FF and validates hex client-side
- +update fetches current values and merges, preserving unspecified fields
- unit tests cover HTTP method, path, query, payload, color validation, id coercion
- ignore the local `gitlink-cli` build artifact (.gitignore previously only
  ignored the Windows .exe)

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-05-30 06:38:39 -07:00
wbtiger 4631b81e5c style: fix gofmt alignment in root.go and register.go 2026-05-29 23:59:40 +08:00
wangyue789 41a2666c5b feat(pipeline): add OpenAPI shortcuts 2026-05-27 22:20:18 +08:00
wbtiger 2f8b987c2c Merge pull request 'feat(issue): add user lookup shortcuts' (#44) from wangyue111/gitlink-cli:feat/issue-user-shortcuts into master 2026-05-27 01:14:31 +08:00
wbtiger 5369ce65bb Merge pull request 'fix(pr): include closed time in view output' (#49) from dtwdtw/gitlink-cli:fix/issue-14-pr-closed-at into master 2026-05-27 00:52:20 +08:00
wbtiger 898b7f59d1 feat: add milestone, compare, pr reopen shortcuts and api enhancements (#45)
- milestone shortcuts: list, create, view, update, delete, close, reopen
- compare shortcuts: view, files (compare branches/tags/commits)
- pr +reopen: reopen closed pull requests
- api: add --body-file and --body-stdin for reading JSON from file/stdin
- comprehensive tests for all new shortcuts

Co-authored-by: wangyue111 <wangyue111>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 00:44:39 +08:00
wbtiger 36249f3087 feat: add PR closed time and repo README shortcuts (#49, #52)
PR #49 (dtwdtw): enrich PR view with closed_at from issue journals
- Fetches close timestamp for closed/rejected PRs
- Skips extra API call for open PRs
- 2 new tests

PR #52 (dtwdtw): add repo +readme shortcut
- Fetches README content with optional --ref and --path params
- normalizeAPIPath prevents duplicate /api prefix in client
- 4 new tests (3 client + 1 repo)

Co-authored-by: dtwdtw <dtwdtw>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 00:35:31 +08:00
wbtiger 7bcba5aed8 feat(member): add repository member shortcuts (#46)
Add member command group with 8 shortcuts:
- +list, +add, +batch-add, +remove, +role
- +invite-link, +invite-info, +accept-invite

Batch add supports --dry-run, CSV file input, and partial failure
reporting. 12 tests included.

Co-authored-by: Jiachen Li (puygob236) <noreply@gitlink.org.cn>
Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-27 00:24:15 +08:00
fsafasff 7f0f332f77 fix(pr): include closed time in view output 2026-05-26 17:11:33 +08:00
wbtiger 6b355e19e2 fix(workflow): improve input mode detection and error hint
- hasLocalTriageInput now also detects triage-specific flags (--body,
  --number, --author, --url, --labels) to enter local input mode.
- hasLocalHealthInput now checks all health-related flags to prevent
  invalid values like --open-issues=abc from silently falling through
  to remote fetch instead of being validated.
- Remote fetch failure in +triage now includes a hint suggesting
  --title or --from for local analysis.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-26 16:28:28 +08:00
whzy a904f48099 Add workflow repo-report command 2026-05-26 16:28:28 +08:00
whzy 7730347253 Add workflow pr-summary command 2026-05-26 16:28:00 +08:00
whzy 5673a109a4 Add workflow agent triage and health commands 2026-05-26 16:28:00 +08:00
wangyue789 23a478bd69 feat(issue): add authors shortcut 2026-05-25 08:50:47 +08:00
wangyue789 9638d279d3 feat(issue): add assigners shortcut 2026-05-25 08:49:41 +08:00
Tiger 64c0ff3cb5 Normalize issue +list output to use project-level issue numbers
The API returns both "id" (global database PK) and "project_issues_index"
(per-project sequential number). The +list JSON output was a raw API
pass-through, making the database ID the most prominent identifier.

This change normalizes each issue in the list:
- Add "number" field from project_issues_index (matches the web URL)
- Rename "id" to "database_id" to prevent confusion

The "number" field now matches the --number flag used by +view, +close,
+update, and +comment commands.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-24 01:00:31 +08:00
Tiger 4bfbfc6e8f Replace PR #20 webhook with PR #22 improved implementation
- Use v1 API paths for all webhook endpoints (fixes view/test returning HTML/404)
- Add +tasks command for listing webhook delivery tasks
- Add webhook event validation (10-event whitelist)
- Add webhook type validation (10-type whitelist)
- Add content-type and http-method validation
- Fix update to preserve unspecified fields via fetch-and-merge
- Add event deduplication in parseWebhookEvents
- Add 9 comprehensive unit tests (up from 3)
- Use --http-method flag (maintains backward compatibility with PR #20)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 22:45:34 +08:00
Tiger 49cd590227 Merge PR #26: feat(pr): add review shortcuts
Resolved conflicts between PR #24 (+versions, +version-diff) and PR #26
(+reviews, +review). Unified prReviewsPath() to use existing prV1Path() helper.

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-23 22:12:01 +08:00
wbtiger 2b64b8efa7 Merge pull request 'feat(pr): add patchset version shortcuts' (#24) from wangyue111/gitlink-cli:feat/pr-patchset-versions into master 2026-05-23 21:45:41 +08:00
wangyue789 fbea42ecce feat(pr): add review shortcuts 2026-05-21 17:20:15 +08:00
wangyue789 e85dd367d8 feat(pr): add patchset version shortcuts 2026-05-21 11:58:47 +08:00