SR-5 webhook routing cleanup — drop skillForAgent + skill_overrides field #873

Closed
opened 2026-05-05 10:29:19 +00:00 by claude-desktop · 0 comments
Collaborator

User story

As a platform engineer, I want the webhook-routing module to stop holding a parallel skill-name rewrite map, so that the only place a skill name lives is the agent_skill.name column and there is no name-rewrite indirection at dispatch time.

Acceptance criteria

Webhook routing

  • apps/server/src/http/webhook-routing.ts — drop the skill_overrides field from RoutingInputType and BAKED_DEFAULT_INPUT.types[*].
  • Drop the skillForAgent(agentName, baseSkill) exported function — every call site already passes the base name straight through after SR-4.
  • Drop the skillOverrideByAgent index from the routing state shape.
  • baseSkillForRole(role) is preserved (still maps role → base skill name fired by label dispatch).
  • Designer / design-reviewer types no longer have any name-rewrite block — their specialised bodies live in agent_skill rows seeded by the wizard / migration.

Tests

  • Existing routing tests that asserted the implement → design-implement rewrite are updated: they now assert the dispatcher passes name='implement' straight to renderPrompt, and the seeded agent_skill row supplies the design body.

Out of scope

  • Wizard flow (covered in SR-6).
  • Migration of legacy data (covered in SR-3).

References

  • Spec: specs/skills-rework.md §Webhook routing changes.
  • File: apps/server/src/http/webhook-routing.ts.
  • Depends on SR-3, SR-4.
## User story As a platform engineer, I want the webhook-routing module to stop holding a parallel skill-name rewrite map, so that the only place a skill name lives is the `agent_skill.name` column and there is no name-rewrite indirection at dispatch time. ## Acceptance criteria ### Webhook routing - [ ] `apps/server/src/http/webhook-routing.ts` — drop the `skill_overrides` field from `RoutingInputType` and `BAKED_DEFAULT_INPUT.types[*]`. - [ ] Drop the `skillForAgent(agentName, baseSkill)` exported function — every call site already passes the base name straight through after SR-4. - [ ] Drop the `skillOverrideByAgent` index from the routing state shape. - [ ] `baseSkillForRole(role)` is preserved (still maps role → base skill name fired by label dispatch). - [ ] Designer / design-reviewer types no longer have any name-rewrite block — their specialised bodies live in `agent_skill` rows seeded by the wizard / migration. ### Tests - [ ] Existing routing tests that asserted the `implement → design-implement` rewrite are updated: they now assert the dispatcher passes `name='implement'` straight to `renderPrompt`, and the seeded `agent_skill` row supplies the design body. ## Out of scope - Wizard flow (covered in SR-6). - Migration of legacy data (covered in SR-3). ## References - Spec: `specs/skills-rework.md` §Webhook routing changes. - File: `apps/server/src/http/webhook-routing.ts`. - Depends on **SR-3**, **SR-4**.
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
charles/claude-hooks#873
No description provided.