feat(capability-requests): add routing dispute & reroute workflow (CUST-WP-0027)
Adds a structured dispute mechanism when capability request routing is wrong:
- New `routing_disputed` status with four DB columns (dispute_reason, disputed_by,
dispute_suggested_domain, disputed_at) via Alembic migration m0h1i2j3k4l5
- POST /capability-requests/{id}/dispute — any party can flag misrouting with a reason
and optional suggested domain; notifies custodian + current fulfilling domain
- POST /capability-requests/{id}/reroute — custodian re-routes to correct domain via
catalog_entry_id or direct slug; appends audit trail to routing_note; resets to requested
- Two new MCP tools: dispute_capability_routing and reroute_capability_request
- Dashboard: amber disputed-banner at top of Summary, routing_disputed Kanban column,
dispute details (reason, suggested domain, raised-by) shown on disputed cards
Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -4,7 +4,7 @@ type: workplan
|
||||
title: "Capability Request Dispute & Negotiation"
|
||||
domain: custodian
|
||||
repo: the-custodian
|
||||
status: active
|
||||
status: done
|
||||
owner: custodian
|
||||
topic_slug: custodian
|
||||
created: "2026-03-21"
|
||||
@@ -101,7 +101,7 @@ _VALID_TRANSITIONS = {
|
||||
|
||||
```task
|
||||
id: CUST-WP-0027-T01
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "41357812-9791-488d-883b-75cb07ae4c90"
|
||||
```
|
||||
@@ -123,7 +123,7 @@ Gate: `make migrate` runs cleanly; `make test` passes.
|
||||
|
||||
```task
|
||||
id: CUST-WP-0027-T02
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "39429f29-cf3a-440c-aca7-5b9e3b31b2d0"
|
||||
```
|
||||
@@ -145,7 +145,7 @@ fulfilling domain receive notifications.
|
||||
|
||||
```task
|
||||
id: CUST-WP-0027-T03
|
||||
status: todo
|
||||
status: done
|
||||
priority: high
|
||||
state_hub_task_id: "94ede349-ddd1-4572-bb18-43cb2e67326b"
|
||||
```
|
||||
@@ -168,7 +168,7 @@ Gate: full dispute→reroute→accept round-trip passes in tests.
|
||||
|
||||
```task
|
||||
id: CUST-WP-0027-T04
|
||||
status: todo
|
||||
status: done
|
||||
priority: medium
|
||||
state_hub_task_id: "e8d1e24e-8ec7-4c4a-b2b5-f6072ab7582c"
|
||||
```
|
||||
@@ -192,7 +192,7 @@ pattern (route → dispute → reroute → accept).
|
||||
|
||||
```task
|
||||
id: CUST-WP-0027-T05
|
||||
status: todo
|
||||
status: done
|
||||
priority: low
|
||||
state_hub_task_id: "a40b6a57-2cfd-4e09-ac00-3d4d2920eb7a"
|
||||
```
|
||||
|
||||
Reference in New Issue
Block a user