fix(server): state literal args of the plan-issue read calls #278

Merged
lucas merged 1 commit from agent/issue-273-plan-issue-literal-args into main 2026-11-13 15:19:18 +01:00
Collaborator

Plan-issue sessions kept calling forgejo_read_issue / forgejo_list_issue_comments with GitHub's issue_number, because discoverable tools contribute only a catalog line to the prompt — their parameter schema is never shown, so the shape is guessed from priors.

Both prompts that start a plan-issue flow already know the issue number, so they now state the argument objects verbatim:

  • planIssueSystemContext issue seed: forgejo_read_issue ({"number": N}), then forgejo_list_issue_comments ({"number": N, "page": 1}, paging on).
  • .omp/commands/plan-issue.md step 1 #N bullet: same shape, with N symbolic.
  • New test pinning that the number is interpolated into both argument objects.

The tool schema is deliberately untouched: no issue_number alias, numberedParams/foldIndexAlias keep number + index as they are.

Verified from apps/server: bun test src/forgejo/plan-issue.test.ts (18 pass) and bun run typecheck clean. The end-to-end check (a real plan-issue session's first call succeeding without a validation retry) needs the deck UI and is left to review.

Closes: #273

Plan-issue sessions kept calling `forgejo_read_issue` / `forgejo_list_issue_comments` with GitHub's `issue_number`, because discoverable tools contribute only a catalog line to the prompt — their parameter schema is never shown, so the shape is guessed from priors. Both prompts that start a plan-issue flow already know the issue number, so they now state the argument objects verbatim: - `planIssueSystemContext` issue seed: `forgejo_read_issue` (`{"number": N}`), then `forgejo_list_issue_comments` (`{"number": N, "page": 1}`, paging on). - `.omp/commands/plan-issue.md` step 1 `#N` bullet: same shape, with `N` symbolic. - New test pinning that the number is interpolated into both argument objects. The tool schema is deliberately untouched: no `issue_number` alias, `numberedParams`/`foldIndexAlias` keep `number` + `index` as they are. Verified from `apps/server`: `bun test src/forgejo/plan-issue.test.ts` (18 pass) and `bun run typecheck` clean. The end-to-end check (a real plan-issue session's first call succeeding without a validation retry) needs the deck UI and is left to review. Closes: #273
Forgejo tools are mounted as discoverable devices, so their JSON
schema never reaches the prompt and agents fill the gap from training
priors — calling the two issue read tools with GitHub's `issue_number`
instead of `number`. The plan-issue steering and the `/plan-issue`
command already know the issue number, so they now spell out the
argument objects verbatim instead of leaving the shape to be guessed.

The tool schema is unchanged: no new alias, `numberedParams` keeps
`number` plus the existing `index` alias for other workflows.

Co-Authored-By: Claude Opus 5 via omp-deck
lucas approved these changes 2026-11-13 15:19:12 +01:00
lucas merged commit 65532744af into main 2026-11-13 15:19:18 +01:00
lucas deleted branch agent/issue-273-plan-issue-literal-args 2026-11-13 15:19:18 +01:00
Sign in to join this conversation.
No reviewers
No milestone
No project
No assignees
2 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
lucas/omp-deck!278
No description provided.