Commit de6daa5
The producer-side other half of #3983. That PR moved the sharing plugin's routes
onto the declared envelope; this removes the compatibility shim the dispatcher
twin had been carrying BECAUSE that surface answered bare.
Create and list answered with the payload under two keys — `{ success: true,
data: link, link }` and `{ success: true, data: links, links }`. The duplicate
existed so readers predating the envelope kept working, which is why objectui's
ShareDialog reads `body.links ?? body.data`. Once #3983 made both surfaces answer
`data`, that first branch had no producer left and the duplicate had no reader in
any repo:
framework no consumer of these routes at all
objectui ShareDialog already falls through to body.data
cloud swept — it only REGISTERS SharingServicePlugin into per-environment
kernels with registerShareLinkRoutes:false so this dispatcher serves
the paths; it never calls them and never reads a body
That cloud sweep is what #4038 was waiting on, and it came back clean.
`data` is unchanged on both routes — only the duplicate key is gone, so anything
reading `body.data` or going through `unwrapResponse` sees no difference. The list
route now routes through `deps.success(...)` like the domain's other three. Create
stays hand-built because `deps.success` hardcodes status 200 and this route is a
201 — the same reason `/keys` hand-builds its own 201, and the same shape it uses.
(My own issue text said to route BOTH through the helper; that was wrong about the
status.)
`scripts/check-route-envelope.mjs` does not and cannot cover this file — it scans
route modules that write via `res.json(...)`, while dispatcher domains return
`{ status, body }` for a central sender, so the drift was invisible to it by
construction. Three tests in domain-handler-registry.test.ts cover it instead: two
per-route, plus a general one asserting no success body carries a top-level key
outside success/data/meta. Restoring the duplicates fails all three.
Not touching objectui's `body.links ?? body.data`: with both producers converged
that is version skew, not drift, and dropping it would turn "old framework" from
working into a silently empty share list. Deleting it needs a version gate, which
is a larger call than this issue.
Claude-Session: https://claude.ai/code/session_01CYbS3kS8xzsHNXFTzp4e2z
Co-authored-by: Claude <noreply@anthropic.com>
1 parent b3a2318 commit de6daa5
3 files changed
Lines changed: 126 additions & 2 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
| 16 | + | |
| 17 | + | |
| 18 | + | |
| 19 | + | |
| 20 | + | |
| 21 | + | |
| 22 | + | |
| 23 | + | |
| 24 | + | |
| 25 | + | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
| 36 | + | |
| 37 | + | |
| 38 | + | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
| 43 | + | |
| 44 | + | |
| 45 | + | |
| 46 | + | |
| 47 | + | |
| 48 | + | |
| 49 | + | |
| 50 | + | |
| 51 | + | |
| 52 | + | |
| 53 | + | |
| 54 | + | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
357 | 357 | | |
358 | 358 | | |
359 | 359 | | |
| 360 | + | |
| 361 | + | |
| 362 | + | |
| 363 | + | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
| 390 | + | |
| 391 | + | |
| 392 | + | |
| 393 | + | |
| 394 | + | |
| 395 | + | |
| 396 | + | |
| 397 | + | |
| 398 | + | |
| 399 | + | |
| 400 | + | |
| 401 | + | |
| 402 | + | |
| 403 | + | |
| 404 | + | |
| 405 | + | |
| 406 | + | |
| 407 | + | |
| 408 | + | |
| 409 | + | |
| 410 | + | |
| 411 | + | |
| 412 | + | |
| 413 | + | |
| 414 | + | |
| 415 | + | |
360 | 416 | | |
361 | 417 | | |
362 | 418 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
23 | 23 | | |
24 | 24 | | |
25 | 25 | | |
| 26 | + | |
| 27 | + | |
| 28 | + | |
| 29 | + | |
| 30 | + | |
| 31 | + | |
| 32 | + | |
| 33 | + | |
| 34 | + | |
| 35 | + | |
26 | 36 | | |
27 | 37 | | |
28 | 38 | | |
| |||
191 | 201 | | |
192 | 202 | | |
193 | 203 | | |
194 | | - | |
| 204 | + | |
| 205 | + | |
| 206 | + | |
| 207 | + | |
| 208 | + | |
195 | 209 | | |
196 | 210 | | |
197 | 211 | | |
| |||
207 | 221 | | |
208 | 222 | | |
209 | 223 | | |
210 | | - | |
| 224 | + | |
211 | 225 | | |
212 | 226 | | |
213 | 227 | | |
| |||
0 commit comments