Original Review Suggestion
submitRouting currently mutates hierarchyAssignments/pendingRouting but does not update the RPG graph structure (high-level nodes / functional edges) to reflect routing moves. Since persistGraph() serializes the RPG, routing decisions won't be represented in the persisted .rpg/graph.json. Consider applying the routing change to the graph as well (e.g., ensure the target hierarchy nodes exist + add/remove the appropriate functional edge(s); this may require adding a supported functional-edge removal API in RepositoryPlanningGraph).
Reviewer: @copilot-pull-request-reviewer
PR: #44
File: src/mcp/interactive/encoder.ts:793
Comment: #44 (comment)
Status
Decision: Needs Discussion
Reason: Requires new API design (RepositoryPlanningGraph.removeFunctionalEdge()) and architectural decisions about when/how routing changes should be reflected in the graph structure.
Considerations
RepositoryPlanningGraph currently only supports addFunctionalEdge — no removal API exists
- Creating target hierarchy nodes during routing could conflict with the
submitHierarchy workflow
- Need to decide if routing is a "draft" operation (committed later) or immediate graph mutation
Action Items
Original Review Suggestion
Reviewer: @copilot-pull-request-reviewer
PR: #44
File:
src/mcp/interactive/encoder.ts:793Comment: #44 (comment)
Status
Decision: Needs Discussion
Reason: Requires new API design (
RepositoryPlanningGraph.removeFunctionalEdge()) and architectural decisions about when/how routing changes should be reflected in the graph structure.Considerations
RepositoryPlanningGraphcurrently only supportsaddFunctionalEdge— no removal API existssubmitHierarchyworkflowAction Items
RepositoryPlanningGraph.removeFunctionalEdge()APIsubmitRoutingformovedecisions