Files
open-design/packages
lefarcen 5e4dedb7df fix(host): drop the index signatures that broke the web production build
The workspace-context pass-through type carried `[key: string]: unknown` on both
levels so callers could hand over their richer context object. That is wrong for
this case: a TypeScript interface never satisfies an index signature, and
`WorkspaceCollabContext` / `WorkspacePermissions` are interfaces, so the very
callers it was meant to admit were rejected. `next build` caught it in the
Docker image job:

  Type 'WorkspaceCollabContext' is not assignable to type
  'OpenDesignHostWorkspaceContext' … Index signature for type 'string' is
  missing in type 'WorkspacePermissions'.

`pnpm --filter @open-design/web typecheck` had missed it because `tsc -b` is
incremental and considered the project up to date; `tsc -b --force` reproduces.

A plain structural subset is what this needs — real call sites pass a variable,
so excess-property checking never applies. The one place it did apply was the
desktop test's inline fixture; hoisting that to a variable keeps the fixture
faithfully wide while letting the narrow bridge type stay strict.
2026-07-28 12:30:49 +08:00
..