Subcommand dispatch: runParent and runSub are copied in five dispatchers #755

Open
opened 2026-10-08 02:50:39 +00:00 by claude · 3 comments
Member

Found during IW-682 (port allocation for worktrees). IW-744 covers the parent-level handler but was analysed before PortSlotCommand existed. Follow-up, verbatim:

  • runParent is copied in five dispatchers — core/commands/Config.scala:131, GateCommand.scala:139, Server.scala:186, Service.scala:165, PortSlotCommand.scala; runSub in Server.scala, Service.scala and PortSlotCommand.scala. One shared helper would replace them.
Found during IW-682 (port allocation for worktrees). IW-744 covers the parent-level handler but was analysed before `PortSlotCommand` existed. Follow-up, verbatim: - [ ] `runParent` is copied in five dispatchers — core/commands/Config.scala:131, GateCommand.scala:139, Server.scala:186, Service.scala:165, PortSlotCommand.scala; `runSub` in Server.scala, Service.scala and PortSlotCommand.scala. One shared helper would replace them.
Author
Member

Intake: agent-ready
Workflow: waterfall
Reason: all gates passed
Analysis: project-management/issues/IW-755/analysis.md on branch IW-755

Intake: agent-ready Workflow: waterfall Reason: all gates passed Analysis: project-management/issues/IW-755/analysis.md on branch IW-755
Author
Member

Implement: needs-human
Reason: batch-implement exit 1 — the kanon plugin command did not compile against the iw-cli core of this branch, so no phase ran. ForgeCatchUp.scala expects Either[String, …] from fetchPullRequestForBranch, and core now returns Either[TrackerError, …] (#778, #780). The kanon plugin must be updated to TrackerError; the issue itself is not at fault. batch-implement.log was not written; the lines below are the command output.

[warn]  Using directives detected in multiple files:
- /home/mph/.local/share/iw/plugins/kanon/lib/deps.scala:1:1-7:41
It is recommended to keep them centralized in the /home/mph/Devel/iw/iw-cli-IW-755/core/project.scala file.

[error] /home/mph/.local/share/iw/plugins/kanon/lib/batch/ForgeCatchUp.scala:143:7
[error] Found:    Either[iw.core.model.TrackerError, Option[batch.ForgeState]]
[error] Required: Either[String, Option[batch.ForgeState]]
Compilation failed
Implement: needs-human Reason: batch-implement exit 1 — the kanon plugin command did not compile against the iw-cli core of this branch, so no phase ran. ForgeCatchUp.scala expects Either[String, …] from fetchPullRequestForBranch, and core now returns Either[TrackerError, …] (#778, #780). The kanon plugin must be updated to TrackerError; the issue itself is not at fault. batch-implement.log was not written; the lines below are the command output. ``` [warn] Using directives detected in multiple files: - /home/mph/.local/share/iw/plugins/kanon/lib/deps.scala:1:1-7:41 It is recommended to keep them centralized in the /home/mph/Devel/iw/iw-cli-IW-755/core/project.scala file. [error] /home/mph/.local/share/iw/plugins/kanon/lib/batch/ForgeCatchUp.scala:143:7 [error] Found: Either[iw.core.model.TrackerError, Option[batch.ForgeState]] [error] Required: Either[String, Option[batch.ForgeState]] Compilation failed ```
Author
Member

Release: the implement loop failed this issue for a reason outside it. The kanon plugin did not compile against iw-cli main, because the tracker port now returns TrackerError (iw-cli #778). The plugin fix is dev-docs #484, and iw-cli 0.22.1 carries the core change. The issue goes back to the implement loop.

Release: the implement loop failed this issue for a reason outside it. The kanon plugin did not compile against iw-cli main, because the tracker port now returns TrackerError (iw-cli #778). The plugin fix is dev-docs #484, and iw-cli 0.22.1 carries the core change. The issue goes back to the implement loop.
Sign in to join this conversation.
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
iterative-works/iw-cli#755
No description provided.