Find the cast and crew shared by two movies or TV shows crosscredit.haltcase.dev

Find indirect connections through a bridge title #8

Open haltcase.dev
targeting main from feat/indirect-connections
Open opened by and assigned to haltcase.dev
targeting main from feat/indirect-connections

When two titles have no shared people, an optional Find a connection action searches for title → person → bridge title → person → title. Results show both people's original and bridge roles, including guest episodes and merged jobs. Each bridge can replace either comparison side using the normal shareable URL.

The initial budget is four people per side (billing then person ID), ten upstream requests including original credits, two concurrent requests, and a shared 12-second abort deadline. Validated lookups reuse the bounded Worker cache. The UI reports sampling, failed/timed-out lookups, and truncation to five distinct bridge titles; it makes no global shortest-path or exhaustive-search claim. No automatic retries, database, or background jobs.

Implements https://tangled.org/haltcase.dev/crosscredit/issues/4

Branched directly from main at b277c8a, independently of PR #7 for issue #6. No drawer commits or dependencies are included. Bridge modules and UI are separate; only the existing server API/cache and empty-results integration are extended.

Validation: pnpm check, pnpm typecheck, pnpm test (110 tests), and pnpm build passed. Regression coverage includes role/job merging, one-episode guests, person identity, movie/TV ID collisions, endpoint exclusion, request and concurrency caps, shared deadline, partial failure, result truncation, malformed responses, and cache reuse. Build emits the existing CSS sourcemap warning.

Interactive browser verification was unavailable because local browser use is disabled in Work settings. Preview checklist: choose a pair without direct matches, request a bridge, inspect roles and search limits, try each Compare with action and check the URL, then try a narrow viewport. Keep this conservative budget until hosted Worker performance has been measured.

Hosted verification: preview CI passed. The deployed bridge endpoint returned HTTP 200 with five bridge titles, eight people searched, no incomplete lookups, and explicit result truncation for The Shawshank Redemption × Mean Girls. Two measured hosted requests took 429 ms and 176 ms (warm cache); a local cold-upstream smoke search took 657 ms. These are smoke measurements, not a Worker CPU/quota benchmark. The preview page also returned HTTP 200 with noindex. Confirmed this pair has zero direct shared people.

Try it: https://pr-feat-indirect-connection-840784c4bfcf-crosscredit.haltcase.workers.dev/?left=movie-278&right=movie-10625 — select Find a connection.

Commits 0