18: Add forgejo_label_create tool #33

Merged
david merged 2 commits from feature/issue-18/add-forgejo-label-create-tool into main 2026-08-18 07:46:29 +00:00
Owner

18: Add forgejo_label_create tool

Implements 18.

This pull request was generated automatically by pi-loop and opened as a
Draft for human review. Do not merge without reviewing the changes.

Generated in 8m 23s.

Review findings

The working tree is clean with Stage 1 changes already committed. Let me examine the files referenced by the findings.Now let me check the exact line references and any other places that reference tool counts.Now I have the full picture. Let me look at the README table lines and the exact line references in the source.All fixes identified. Let me check the test file for any assertions on prompt guidelines or the section heading that could be affected.Tests only assert guidelines exist as an array, so my changes are safe. Now let me apply all fixes in a single pass.All edits applied. Now let me discover the build/test commands and run the gates.Commands discovered: npm run build (tsc), npm run check (tsc --noEmit), npm test (jest) in extensions/forgejo. Running the gates now.All gates pass. Let me verify the final diff of the remediation changes.All gates pass and the remediation diff is minimal and targeted. Here is the final report.

Review Findings — 18

Summary

Remediated 4 of 5 findings in a single pass. Added the missing forgejo_label_create row to the README Issues table and the DESIGN.md tool matrix (with the ### Issues (13) count bump), renamed the misleading source heading to Issues + Labels, and referenced the new tool from forgejo_list_labels's prompt guidelines. The one remaining finding (commit-message convention) is unresolvable in this stage: renaming commit d5f97e6 requires a commit/amend operation, which the pipeline contract forbids (no commit/stage/push; only the working-tree diff is captured). Gates re-run after remediation: npm run build (tsc) pass, npm run check (tsc --noEmit) pass, npm test (jest) pass (8 suites, 125 tests).

Critical

(none)

High

(none)

Medium

  • extensions/forgejo/README.md:56 — The new tool is missing from the README's tool table (and docs/DESIGN.md:90/:104 still says "Issues (12)" with no forgejo_label_create row). The repo's commit-docs skill emphasizes keeping docs in sync, and this README is the package's per-tool reference — without this row users/agents cannot discover the tool. Suggested fix: add a row to the README Issues table (e.g. | forgejo_label_create | Create a repo label | name, color (req); description, exclusive, is_archived |) and add the corresponding row + count bump in docs/DESIGN.md (heading ### Issues (13) and a matrix row, e.g. | forgejo_label_create | Create repo label | name, color (req), description?, exclusive?, is_archived? |).

Low

  • extensions/forgejo/src/index.ts:645 — Commit d5f97e6 "18: Add forgejo_label_create tool" deviates from the AGENTS.md commit format issue-<N>: <summary> (missing the issue- prefix). Note the repo history is mixed (29: ... vs issue-30: ...), so this is a convention nit. Suggested fix: name the merge commit issue-18: add forgejo_label_create tool.
  • extensions/forgejo/src/index.ts:304 — The tool is registered under the "/* ---------------- Issues (13) ---------------- */" heading between forgejo_list_labels and forgejo_issue_search, but it is a repo-scoped label CRUD operation (DESIGN.md:211 classifies "labels CRUD beyond list" as repo-scoped), so the section label is misleading. Suggested fix: rename the heading to "Issues + Labels" or give label tools their own section comment.
  • extensions/forgejo/src/index.ts:620 — forgejo_list_labels's promptGuidelines mention only forgejo_issue_add_labels/forgejo_issue_remove_labels; for symmetric discoverability the new create tool could be referenced too. Suggested fix: append "Use forgejo_label_create to add a new repository label." to the list_labels guidelines (optional polish).
## 18: Add forgejo_label_create tool Implements [18](https://git.excelera.net/david/pi-extensions-and-skills/issues/18). > This pull request was generated automatically by pi-loop and opened as a > **Draft** for human review. Do not merge without reviewing the changes. Generated in 8m 23s. ## Review findings The working tree is clean with Stage 1 changes already committed. Let me examine the files referenced by the findings.Now let me check the exact line references and any other places that reference tool counts.Now I have the full picture. Let me look at the README table lines and the exact line references in the source.All fixes identified. Let me check the test file for any assertions on prompt guidelines or the section heading that could be affected.Tests only assert guidelines exist as an array, so my changes are safe. Now let me apply all fixes in a single pass.All edits applied. Now let me discover the build/test commands and run the gates.Commands discovered: `npm run build` (tsc), `npm run check` (tsc --noEmit), `npm test` (jest) in `extensions/forgejo`. Running the gates now.All gates pass. Let me verify the final diff of the remediation changes.All gates pass and the remediation diff is minimal and targeted. Here is the final report. # Review Findings — 18 ## Summary Remediated 4 of 5 findings in a single pass. Added the missing `forgejo_label_create` row to the README Issues table and the DESIGN.md tool matrix (with the `### Issues (13)` count bump), renamed the misleading source heading to `Issues + Labels`, and referenced the new tool from `forgejo_list_labels`'s prompt guidelines. The one remaining finding (commit-message convention) is unresolvable in this stage: renaming commit `d5f97e6` requires a commit/amend operation, which the pipeline contract forbids (no commit/stage/push; only the working-tree diff is captured). Gates re-run after remediation: `npm run build` (tsc) **pass**, `npm run check` (tsc --noEmit) **pass**, `npm test` (jest) **pass** (8 suites, 125 tests). ## Critical (none) ## High (none) ## Medium - [x] extensions/forgejo/README.md:56 — The new tool is missing from the README's tool table (and `docs/DESIGN.md:90`/`:104` still says "Issues (12)" with no `forgejo_label_create` row). The repo's `commit-docs` skill emphasizes keeping docs in sync, and this README is the package's per-tool reference — without this row users/agents cannot discover the tool. Suggested fix: add a row to the README Issues table (e.g. `| forgejo_label_create | Create a repo label | name, color (req); description, exclusive, is_archived |`) and add the corresponding row + count bump in `docs/DESIGN.md` (heading `### Issues (13)` and a matrix row, e.g. `| forgejo_label_create | Create repo label | name, color (req), description?, exclusive?, is_archived? |`). ## Low - [ ] extensions/forgejo/src/index.ts:645 — Commit `d5f97e6 "18: Add forgejo_label_create tool"` deviates from the AGENTS.md commit format `issue-<N>: <summary>` (missing the `issue-` prefix). Note the repo history is mixed (`29: ...` vs `issue-30: ...`), so this is a convention nit. Suggested fix: name the merge commit `issue-18: add forgejo_label_create tool`. - [x] extensions/forgejo/src/index.ts:304 — The tool is registered under the "/* ---------------- Issues (13) ---------------- */" heading between `forgejo_list_labels` and `forgejo_issue_search`, but it is a repo-scoped label CRUD operation (DESIGN.md:211 classifies "labels CRUD beyond list" as repo-scoped), so the section label is misleading. Suggested fix: rename the heading to "Issues + Labels" or give label tools their own section comment. - [x] extensions/forgejo/src/index.ts:620 — `forgejo_list_labels`'s `promptGuidelines` mention only `forgejo_issue_add_labels`/`forgejo_issue_remove_labels`; for symmetric discoverability the new create tool could be referenced too. Suggested fix: append "Use forgejo_label_create to add a new repository label." to the list_labels guidelines (optional polish).
david merged commit 3bbedaee13 into main 2026-08-18 07:46:29 +00:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
1 participant
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
david/pi-extensions-and-skills!33
No description provided.