Skip to content

Advertise the adjunct queue; drop dead Batch links (closes #899) - #1238

Draft
tomcrane wants to merge 1 commit into
developfrom
hygiene/xc-13-advertise-reachable
Draft

Advertise the adjunct queue; drop dead Batch links (closes #899)#1238
tomcrane wants to merge 1 commit into
developfrom
hygiene/xc-13-advertise-reachable

Conversation

@tomcrane

@tomcrane tomcrane commented Aug 5, 2026

Copy link
Copy Markdown
Contributor

What does this change?

The inverse direction of #1237's rule (hygiene-sprint session 0, 2026-08-06: the model advertises exactly the reachable surface) — three places where Hydra models under- or mis-advertise what actually exists:

  • Customer gains the adjunctQueue link. GET/POST /customers/{id}/adjunctQueue have existed since the adjunct-queue API landed (Add additional query endpoints for adjunct batches #1228), but the model never advertised them, so hypermedia navigation couldn't find the adjunct queue. Includes vocab operations (new CustomerAdjunctQueueClass.GetSpecialAdjunctQueueOperations(), mirroring the queue link's pattern).
  • AdjunctBatch reinstates its currentAdjuncts and adjuncts links. They were commented out with a "not implemented yet" TODO that predates the routes — batches/{id}/current and batches/{id}/adjuncts both exist. currentAdjuncts is SetManually because auto-generation would emit {@id}/currentAdjuncts, which doesn't match the /current route; the converter sets it explicitly.
  • Batch drops the completedImages and errorImages links (and their vocab operations). No such routes exist — these are the named examples in Invalid hypermedia links in responses #899 — and batches/{id}/images already supports the full asset-query syntax for filtering.

Note

Behaviour change for release notes: Batch responses no longer contain the completedImages / errorImages links (both only ever led to 404s). Customer responses gain adjunctQueue; AdjunctBatch responses gain currentAdjuncts and adjuncts.

With the dead-link removals in #1237, this should complete #899 ("Invalid hypermedia links in responses") — its two named examples are resolved here. Closes #899. Refs #1166.

Also observed, not changed here (flagged for the register): AdjunctBatch's [HydraClass] attribute references typeof(AdjunctBatch) (itself) rather than a Class-derived vocab type — the same defect class as the QueueSummary fix in #1235.

Merge-order note: #1236 and #1237 also touch Customer.cs in nearby regions; whichever merges last may see a trivial adjacent-line conflict.

Builds clean; DLCS.Hydra.Tests 19/19; AdjunctBatchConverter unit tests 4/4. The docs-side twin (removing the two phantom links from batch.mdx's example) is in dlcs/public-docs#9.

🤖 Generated with Claude Code

Session-0 ruling (hygiene sprint, 2026-08-06), the inverse direction of
the rule applied in the unreachable-links PR:

- Customer gains the adjunctQueue link - GET/POST routes have existed
  since the adjunct-queue API landed, but the model never advertised
  them
- AdjunctBatch reinstates its currentAdjuncts and adjuncts links; the
  stale "not implemented yet" TODO predated the routes. currentAdjuncts
  is SetManually because the route is /current, not /currentAdjuncts -
  the converter sets it explicitly
- Batch drops the completedImages and errorImages links (and their
  vocab operations): no such routes exist - these are the named
  examples in #899 - and batches/{id}/images already supports the full
  asset-query syntax

BREAKING (minor): Batch responses no longer contain the completedImages
and errorImages links; both only ever led to 404s.

Closes #899. Refs #1166.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Invalid hypermedia links in responses

1 participant